feat(task): add baseMixin support in TaskTypes#10495
Open
luisrosasx wants to merge 7 commits intohcengineering:developfrom
Open
feat(task): add baseMixin support in TaskTypes#10495luisrosasx wants to merge 7 commits intohcengineering:developfrom
luisrosasx wants to merge 7 commits intohcengineering:developfrom
Conversation
|
Connected to Huly®: UBERF-15459 |
- Add baseMixin field to TaskType interface (plugins/task/src/index.ts) - Add @prop decorator for baseMixin in model (models/task/src/index.ts) - Modify mixin creation logic to use baseMixin when provided (plugins/task/src/utils.ts) - Add validateMixinHierarchy function for inheritance validation - Create MixinSelector.svelte component for UI selection - Add i18n strings for BaseMixin, BaseMixinDescription, NoBaseMixin This allows TaskTypes to inherit attributes from existing mixins while maintaining backwards compatibility. Signed-off-by: Luis Rosas <luisrosasx@users.noreply.github.com>
d5b35ae to
54ce6fb
Compare
Signed-off-by: Luis Rosas <luisrosasx@users.noreply.github.com>
Signed-off-by: Luis Rosas <luisrosasx@users.noreply.github.com>
Signed-off-by: Luis Rosas <luisrosasx@users.noreply.github.com>
…tance Signed-off-by: Luis Rosas <luisrosasx@users.noreply.github.com>
Signed-off-by: Luis Rosas <luisrosasx@users.noreply.github.com>
Signed-off-by: Luis Rosas <luisrosasx@users.noreply.github.com>
| allowedAsChildOf!: Ref<TaskType>[] // In case of specified, task type is for sub-tasks | ||
|
|
||
| @Prop(TypeRef(core.class.Mixin), getEmbeddedLabel('Base Mixin')) | ||
| baseMixin?: Ref<Mixin<Task>> // Existing mixin to inherit attributes from |
Member
There was a problem hiding this comment.
Could you please fix validation errors here?
You can verify it locally by running rushx _phase:validate in the directory /models/task/.
ArtyomSavchenko
requested changes
Feb 11, 2026
| "CloneExisting": "Clone existing", | ||
| "CloneTaskTypes": "Clone", | ||
| "SelectTaskTypesToClone": "Select task types to clone", | ||
| "NoTaskTypesAvailable": "No task types available to clone", |
Member
There was a problem hiding this comment.
Could you please add translations for other languages as well?
Or I can add them later if it will be easier for you.
| // Create new targetClass (mixin) that extends the source's targetClass | ||
| const sourceClass = client.getHierarchy().getClass(source.ofClass) | ||
| const newTargetClass = await client.createDoc(core.class.Class, core.space.Model, { | ||
| extends: source.targetClass, // Inherit from source's mixin |
Member
There was a problem hiding this comment.
Have you checked what happens if you delete a source type after creating a target type?
Member
|
Hi @luisrosasx |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This allows TaskTypes to inherit attributes from existing mixins while maintaining backwards compatibility.