@masterteam/forms 0.0.68 → 0.0.70

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -110,7 +110,7 @@ class DynamicField {
110
110
  });
111
111
  }
112
112
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: DynamicField, deps: [], target: i0.ɵɵFactoryTarget.Component });
113
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: DynamicField, isStandalone: true, selector: "mt-dynamic-field", inputs: { fieldConfig: { classPropertyName: "fieldConfig", publicName: "fieldConfig", isSignal: true, isRequired: true, transformFunction: null }, fieldName: { classPropertyName: "fieldName", publicName: "fieldName", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@switch (transformedFieldConfig().type) {\r\n @case (\"text\") {\r\n <mt-text-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [type]=\"transformedFieldConfig().inputType || 'text'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"textarea\") {\r\n <mt-textarea-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [rows]=\"transformedFieldConfig().rows || 3\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"select\") {\r\n <mt-select-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [group]=\"transformedFieldConfig().group || false\"\r\n [optionGroupLabel]=\"transformedFieldConfig().optionGroupLabel || 'label'\"\r\n [optionGroupChildren]=\"\r\n transformedFieldConfig().optionGroupChildren || 'items'\r\n \"\r\n [size]=\"transformedFieldConfig().size\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [filter]=\"transformedFieldConfig().filter\"\r\n [formControlName]=\"fieldName()\"\r\n [hasPlaceholderPrefix]=\"transformedFieldConfig().hasPlaceholderPrefix\"\r\n />\r\n }\r\n @case (\"date\") {\r\n <mt-date-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n [showTime]=\"transformedFieldConfig().showTime\"\r\n />\r\n }\r\n @case (\"number\") {\r\n <mt-number-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [useGrouping]=\"transformedFieldConfig().useGrouping ?? false\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"slider\") {\r\n <mt-slider-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [min]=\"transformedFieldConfig().min ?? 0\"\r\n [max]=\"transformedFieldConfig().max ?? 100\"\r\n [step]=\"transformedFieldConfig().step\"\r\n [animate]=\"transformedFieldConfig().animate ?? false\"\r\n [unit]=\"transformedFieldConfig().unit || ''\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"multi-select\") {\r\n <mt-multi-select-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [maxSelectedLabels]=\"transformedFieldConfig().maxSelectedLabels\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"pick-list\") {\r\n <mt-pick-list-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [sourceHeader]=\"transformedFieldConfig().sourceHeader || 'Available'\"\r\n [targetHeader]=\"transformedFieldConfig().targetHeader || 'Selected'\"\r\n [showSourceControls]=\"transformedFieldConfig().showSourceControls ?? true\"\r\n [showTargetControls]=\"transformedFieldConfig().showTargetControls ?? true\"\r\n [showSourceFilter]=\"transformedFieldConfig().showSourceFilter ?? false\"\r\n [showTargetFilter]=\"transformedFieldConfig().showTargetFilter ?? false\"\r\n [filterBy]=\"transformedFieldConfig().filterBy\"\r\n [dataKey]=\"transformedFieldConfig().dataKey\"\r\n [dragdrop]=\"transformedFieldConfig().dragdrop\"\r\n [responsive]=\"transformedFieldConfig().responsive\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"user-search\") {\r\n <mt-user-search-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [hint]=\"transformedFieldConfig().hint || ''\"\r\n [apiUrl]=\"transformedFieldConfig().apiUrl || ''\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [isMultiple]=\"transformedFieldConfig().isMultiple || false\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"checkbox\") {\r\n <mt-checkbox-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"radio-button\") {\r\n <mt-radio-button-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [orientation]=\"transformedFieldConfig().orientation || 'vertical'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"radio-cards\") {\r\n <mt-radio-cards-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [size]=\"transformedFieldConfig().size || 'small'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"toggle\") {\r\n <mt-toggle-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [toggleShape]=\"transformedFieldConfig().toggleShape || 'toggle'\"\r\n [icon]=\"transformedFieldConfig().icon\"\r\n [descriptionCard]=\"transformedFieldConfig().descriptionCard\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"icon-field\") {\r\n <mt-icon-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"color-picker\") {\r\n <mt-color-picker-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n [appendTo]=\"transformedFieldConfig().appendTo\"\r\n />\r\n }\r\n @case (\"editor-field\") {\r\n <mt-editor-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"upload-file\") {\r\n <mt-upload-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [formControlName]=\"fieldName()\"\r\n [shape]=\"transformedFieldConfig().shape\"\r\n [size]=\"transformedFieldConfig().size\"\r\n [userImgClass]=\"transformedFieldConfig().userImgClass\"\r\n [multiple]=\"transformedFieldConfig().multiple\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [endPoint]=\"transformedFieldConfig().endPoint\"\r\n [accept]=\"transformedFieldConfig().accept\"\r\n [fileSizeLimit]=\"transformedFieldConfig().fileSizeLimit\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [title]=\"transformedFieldConfig().title\"\r\n [description]=\"transformedFieldConfig().description\"\r\n />\r\n }\r\n @case (\"lookup-matrix\") {\r\n <mt-lookup-matrix-field [config]=\"transformedFieldConfig()\" />\r\n }\r\n @case (\"spacer\") {\r\n <div class=\"spacer\"></div>\r\n }\r\n @case (\"schema-connection\") {\r\n <mt-schema-connection-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [configuration]=\"transformedFieldConfig().configuration\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [filter]=\"transformedFieldConfig().filter ?? true\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"predecessor\") {\r\n <mt-schedule-predecessor-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [configuration]=\"transformedFieldConfig().configuration\"\r\n [runtimeContext]=\"transformedFieldConfig().runtimeContext\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n}\r\n", styles: [":host{display:block;width:100%}\n"], dependencies: [{ kind: "component", type: TextField, selector: "mt-text-field", inputs: ["field", "hint", "label", "placeholder", "class", "type", "readonly", "pInputs", "required", "icon", "iconPosition"] }, { kind: "component", type: TextareaField, selector: "mt-textarea-field", inputs: ["field", "label", "placeholder", "class", "readonly", "noErrorStyle", "pInputs", "rows", "required"] }, { kind: "component", type: SelectField, selector: "mt-select-field", inputs: ["field", "label", "placeholder", "hasPlaceholderPrefix", "class", "readonly", "pInputs", "options", "optionValue", "optionLabel", "filter", "filterBy", "dataKey", "showClear", "clearAfterSelect", "required", "group", "size", "optionGroupLabel", "optionGroupChildren", "loading", "optionIcon", "optionIconColor", "optionIconShape", "optionAvatarShape", "optionGroupIcon", "optionGroupIconColor", "optionGroupIconShape", "optionGroupAvatarShape"], outputs: ["onChange"] }, { kind: "component", type: DateField, selector: "mt-date-field", inputs: ["field", "label", "placeholder", "class", "readonly", "showIcon", "showClear", "showTime", "pInputs", "required"] }, { kind: "component", type: NumberField, selector: "mt-number-field", inputs: ["field", "label", "placeholder", "class", "readonly", "pInputs", "format", "useGrouping", "maxFractionDigits", "min", "max", "required"] }, { kind: "component", type: SliderField, selector: "mt-slider-field", inputs: ["field", "label", "class", "min", "max", "step", "hideNumber", "unit", "readonly", "required"] }, { kind: "component", type: MultiSelectField, selector: "mt-multi-select-field", inputs: ["field", "label", "placeholder", "class", "readonly", "pInputs", "options", "optionValue", "optionLabel", "filter", "filterBy", "dataKey", "showClear", "display", "required", "maxSelectedLabels", "group", "optionGroupLabel", "optionGroupChildren", "optionIcon", "optionIconColor", "optionIconShape", "optionAvatarShape", "optionGroupIcon", "optionGroupIconColor", "optionGroupIconShape", "optionGroupAvatarShape"], outputs: ["onChange"] }, { kind: "component", type: PickListField, selector: "mt-pick-list-field", inputs: ["label", "class", "readonly", "options", "optionLabel", "optionValue", "sourceHeader", "targetHeader", "showSourceControls", "showTargetControls", "showSourceFilter", "showTargetFilter", "filterBy", "dataKey", "filterLocale", "filterMatchMode", "dragdrop", "responsive", "required"] }, { kind: "component", type: CheckboxField, selector: "mt-checkbox-field", inputs: ["label", "labelPosition", "placeholder", "readonly", "pInputs", "required"], outputs: ["onChange"] }, { kind: "component", type: ColorPickerField, selector: "mt-color-picker-field", inputs: ["label", "appendTo", "placeholder", "class", "variant", "readonly", "pInputs", "required"], outputs: ["onChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: IconField, selector: "mt-icon-field", inputs: ["label", "required"] }, { kind: "component", type: EditorField, selector: "mt-editor-field", inputs: ["label", "placeholder", "readonly", "theme", "height", "dir", "modules", "required"] }, { kind: "component", type: RadioButtonField, selector: "mt-radio-button-field", inputs: ["labelPosition", "orientation", "readonly", "pInputs", "required", "options", "size", "label"], outputs: ["onChange"] }, { kind: "component", type: RadioCardsField, selector: "mt-radio-cards-field", inputs: ["circle", "label", "readonly", "required", "color", "size", "optionLabel", "optionValue", "options"] }, { kind: "component", type: ToggleField, selector: "mt-toggle-field", inputs: ["label", "inputId", "labelPosition", "placeholder", "readonly", "pInputs", "required", "toggleShape", "size", "icon", "descriptionCard"], outputs: ["onChange"] }, { kind: "component", type: UserSearchField, selector: "mt-user-search-field", inputs: ["hint", "label", "placeholder", "class", "readonly", "required", "isMultiple", "apiUrl", "dataKey", "paramName", "context", "size"] }, { kind: "component", type: UploadField, selector: "mt-upload-field", inputs: ["label", "title", "description", "endPoint", "size", "userImgClass", "shape", "multiple", "accept", "isDragging", "fileSizeLimit", "readonly", "context"], outputs: ["isDraggingChange", "onChange"] }, { kind: "component", type: LookupMatrixField, selector: "mt-lookup-matrix-field", inputs: ["config"] }, { kind: "component", type: SchemaConnectionField, selector: "mt-schema-connection-field", inputs: ["label", "placeholder", "readonly", "required", "filter", "configuration", "context"] }, { kind: "component", type: SchedulePredecessorField, selector: "mt-schedule-predecessor-field", inputs: ["label", "placeholder", "readonly", "required", "configuration", "runtimeContext"] }], viewProviders: [
113
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: DynamicField, isStandalone: true, selector: "mt-dynamic-field", inputs: { fieldConfig: { classPropertyName: "fieldConfig", publicName: "fieldConfig", isSignal: true, isRequired: true, transformFunction: null }, fieldName: { classPropertyName: "fieldName", publicName: "fieldName", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@switch (transformedFieldConfig().type) {\r\n @case (\"text\") {\r\n <mt-text-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [type]=\"transformedFieldConfig().inputType || 'text'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"textarea\") {\r\n <mt-textarea-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [rows]=\"transformedFieldConfig().rows || 3\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"select\") {\r\n <mt-select-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [group]=\"transformedFieldConfig().group || false\"\r\n [optionGroupLabel]=\"transformedFieldConfig().optionGroupLabel || 'label'\"\r\n [optionGroupChildren]=\"\r\n transformedFieldConfig().optionGroupChildren || 'items'\r\n \"\r\n [size]=\"transformedFieldConfig().size\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [filter]=\"transformedFieldConfig().filter\"\r\n [formControlName]=\"fieldName()\"\r\n [hasPlaceholderPrefix]=\"transformedFieldConfig().hasPlaceholderPrefix\"\r\n />\r\n }\r\n @case (\"date\") {\r\n <mt-date-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n [showTime]=\"transformedFieldConfig().showTime\"\r\n />\r\n }\r\n @case (\"number\") {\r\n <mt-number-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [useGrouping]=\"transformedFieldConfig().useGrouping ?? false\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"slider\") {\r\n <mt-slider-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [min]=\"transformedFieldConfig().min ?? 0\"\r\n [max]=\"transformedFieldConfig().max ?? 100\"\r\n [step]=\"transformedFieldConfig().step\"\r\n [animate]=\"transformedFieldConfig().animate ?? false\"\r\n [unit]=\"transformedFieldConfig().unit || ''\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"multi-select\") {\r\n <mt-multi-select-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [maxSelectedLabels]=\"transformedFieldConfig().maxSelectedLabels\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"pick-list\") {\r\n <mt-pick-list-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [sourceHeader]=\"transformedFieldConfig().sourceHeader || 'Available'\"\r\n [targetHeader]=\"transformedFieldConfig().targetHeader || 'Selected'\"\r\n [showSourceControls]=\"transformedFieldConfig().showSourceControls ?? true\"\r\n [showTargetControls]=\"transformedFieldConfig().showTargetControls ?? true\"\r\n [showSourceFilter]=\"transformedFieldConfig().showSourceFilter ?? false\"\r\n [showTargetFilter]=\"transformedFieldConfig().showTargetFilter ?? false\"\r\n [filterBy]=\"transformedFieldConfig().filterBy\"\r\n [dataKey]=\"transformedFieldConfig().dataKey\"\r\n [dragdrop]=\"transformedFieldConfig().dragdrop\"\r\n [responsive]=\"transformedFieldConfig().responsive\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"user-search\") {\r\n <mt-user-search-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [hint]=\"transformedFieldConfig().hint || ''\"\r\n [apiUrl]=\"transformedFieldConfig().apiUrl || ''\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [isMultiple]=\"transformedFieldConfig().isMultiple || false\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"checkbox\") {\r\n <mt-checkbox-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"radio-button\") {\r\n <mt-radio-button-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [orientation]=\"transformedFieldConfig().orientation || 'vertical'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"radio-cards\") {\r\n <mt-radio-cards-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [size]=\"transformedFieldConfig().size || 'small'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"toggle\") {\r\n <mt-toggle-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [toggleShape]=\"transformedFieldConfig().toggleShape || 'toggle'\"\r\n [icon]=\"transformedFieldConfig().icon\"\r\n [descriptionCard]=\"transformedFieldConfig().descriptionCard\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"icon-field\") {\r\n <mt-icon-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"color-picker\") {\r\n <mt-color-picker-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n [appendTo]=\"transformedFieldConfig().appendTo\"\r\n />\r\n }\r\n @case (\"editor-field\") {\r\n <mt-editor-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"upload-file\") {\r\n <mt-upload-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [formControlName]=\"fieldName()\"\r\n [shape]=\"transformedFieldConfig().shape\"\r\n [size]=\"transformedFieldConfig().size\"\r\n [userImgClass]=\"transformedFieldConfig().userImgClass\"\r\n [multiple]=\"transformedFieldConfig().multiple\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [endPoint]=\"transformedFieldConfig().endPoint\"\r\n [accept]=\"transformedFieldConfig().accept\"\r\n [fileSizeLimit]=\"transformedFieldConfig().fileSizeLimit\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [title]=\"transformedFieldConfig().title\"\r\n [description]=\"transformedFieldConfig().description\"\r\n />\r\n }\r\n @case (\"lookup-matrix\") {\r\n <mt-lookup-matrix-field [config]=\"transformedFieldConfig()\" />\r\n }\r\n @case (\"spacer\") {\r\n <div class=\"spacer\"></div>\r\n }\r\n @case (\"schema-connection\") {\r\n <mt-schema-connection-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [configuration]=\"transformedFieldConfig().configuration\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [filter]=\"transformedFieldConfig().filter ?? true\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"predecessor\") {\r\n <mt-schedule-predecessor-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [configuration]=\"transformedFieldConfig().configuration\"\r\n [runtimeContext]=\"transformedFieldConfig().runtimeContext\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n}\r\n", styles: [":host{display:block;width:100%}\n"], dependencies: [{ kind: "component", type: TextField, selector: "mt-text-field", inputs: ["field", "hint", "label", "placeholder", "class", "type", "readonly", "pInputs", "required", "icon", "iconPosition"] }, { kind: "component", type: TextareaField, selector: "mt-textarea-field", inputs: ["field", "hint", "label", "placeholder", "class", "readonly", "noErrorStyle", "pInputs", "rows", "required"] }, { kind: "component", type: SelectField, selector: "mt-select-field", inputs: ["field", "hint", "label", "placeholder", "hasPlaceholderPrefix", "class", "readonly", "pInputs", "options", "optionValue", "optionLabel", "filter", "filterBy", "dataKey", "showClear", "clearAfterSelect", "required", "group", "size", "optionGroupLabel", "optionGroupChildren", "loading", "optionIcon", "optionIconColor", "optionIconShape", "optionAvatarShape", "optionGroupIcon", "optionGroupIconColor", "optionGroupIconShape", "optionGroupAvatarShape"], outputs: ["onChange"] }, { kind: "component", type: DateField, selector: "mt-date-field", inputs: ["field", "hint", "label", "placeholder", "class", "readonly", "showIcon", "showClear", "showTime", "pInputs", "required"] }, { kind: "component", type: NumberField, selector: "mt-number-field", inputs: ["field", "hint", "label", "placeholder", "class", "readonly", "pInputs", "format", "useGrouping", "maxFractionDigits", "min", "max", "required"] }, { kind: "component", type: SliderField, selector: "mt-slider-field", inputs: ["field", "label", "class", "min", "max", "step", "hideNumber", "unit", "readonly", "required"] }, { kind: "component", type: MultiSelectField, selector: "mt-multi-select-field", inputs: ["field", "label", "placeholder", "class", "readonly", "pInputs", "options", "optionValue", "optionLabel", "filter", "filterBy", "dataKey", "showClear", "display", "required", "maxSelectedLabels", "group", "optionGroupLabel", "optionGroupChildren", "optionIcon", "optionIconColor", "optionIconShape", "optionAvatarShape", "optionGroupIcon", "optionGroupIconColor", "optionGroupIconShape", "optionGroupAvatarShape"], outputs: ["onChange"] }, { kind: "component", type: PickListField, selector: "mt-pick-list-field", inputs: ["label", "class", "readonly", "options", "optionLabel", "optionValue", "sourceHeader", "targetHeader", "showSourceControls", "showTargetControls", "showSourceFilter", "showTargetFilter", "filterBy", "dataKey", "filterLocale", "filterMatchMode", "dragdrop", "responsive", "required"] }, { kind: "component", type: CheckboxField, selector: "mt-checkbox-field", inputs: ["label", "labelPosition", "placeholder", "readonly", "pInputs", "required"], outputs: ["onChange"] }, { kind: "component", type: ColorPickerField, selector: "mt-color-picker-field", inputs: ["label", "appendTo", "placeholder", "class", "variant", "readonly", "pInputs", "required"], outputs: ["onChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: IconField, selector: "mt-icon-field", inputs: ["label", "required"] }, { kind: "component", type: EditorField, selector: "mt-editor-field", inputs: ["label", "hint", "placeholder", "readonly", "theme", "height", "dir", "modules", "required"] }, { kind: "component", type: RadioButtonField, selector: "mt-radio-button-field", inputs: ["labelPosition", "orientation", "readonly", "pInputs", "required", "options", "size", "label"], outputs: ["onChange"] }, { kind: "component", type: RadioCardsField, selector: "mt-radio-cards-field", inputs: ["circle", "label", "readonly", "required", "color", "size", "optionLabel", "optionValue", "options"] }, { kind: "component", type: ToggleField, selector: "mt-toggle-field", inputs: ["label", "inputId", "labelPosition", "placeholder", "readonly", "pInputs", "required", "toggleShape", "size", "icon", "descriptionCard"], outputs: ["onChange"] }, { kind: "component", type: UserSearchField, selector: "mt-user-search-field", inputs: ["hint", "label", "placeholder", "class", "readonly", "required", "isMultiple", "apiUrl", "dataKey", "paramName", "context", "size"] }, { kind: "component", type: UploadField, selector: "mt-upload-field", inputs: ["label", "title", "description", "endPoint", "size", "userImgClass", "shape", "multiple", "accept", "isDragging", "fileSizeLimit", "readonly", "context"], outputs: ["isDraggingChange", "onChange"] }, { kind: "component", type: LookupMatrixField, selector: "mt-lookup-matrix-field", inputs: ["config"] }, { kind: "component", type: SchemaConnectionField, selector: "mt-schema-connection-field", inputs: ["label", "placeholder", "readonly", "required", "filter", "configuration", "context"] }, { kind: "component", type: SchedulePredecessorField, selector: "mt-schedule-predecessor-field", inputs: ["label", "placeholder", "readonly", "required", "configuration", "runtimeContext"] }], viewProviders: [
114
114
  { provide: ControlContainer, useExisting: FormGroupDirective },
115
115
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
116
116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"masterteam-forms-dynamic-field.mjs","sources":["../../../../packages/masterteam/forms/dynamic-field/dynamic-field.ts","../../../../packages/masterteam/forms/dynamic-field/dynamic-field.html","../../../../packages/masterteam/forms/dynamic-field/masterteam-forms-dynamic-field.ts"],"sourcesContent":["import {\r\n Component,\r\n input,\r\n computed,\r\n ChangeDetectionStrategy,\r\n Signal,\r\n inject,\r\n} from '@angular/core';\r\nimport {\r\n ReactiveFormsModule,\r\n ControlContainer,\r\n FormGroupDirective,\r\n} from '@angular/forms';\r\nimport { TextField } from '@masterteam/components/text-field';\r\nimport { TextareaField } from '@masterteam/components/textarea-field';\r\nimport { SelectField } from '@masterteam/components/select-field';\r\nimport { DateField } from '@masterteam/components/date-field';\r\nimport { NumberField } from '@masterteam/components/number-field';\r\nimport { SliderField } from '@masterteam/components/slider-field';\r\nimport { MultiSelectField } from '@masterteam/components/multi-select-field';\r\nimport { CheckboxField } from '@masterteam/components/checkbox-field';\r\nimport { ColorPickerField } from '@masterteam/components/color-picker-field';\r\nimport { PickListField } from '@masterteam/components/pick-list-field';\r\nimport {\r\n TextFieldConfig,\r\n TextareaFieldConfig,\r\n SelectFieldConfig,\r\n DateFieldConfig,\r\n NumberFieldConfig,\r\n SliderFieldConfig,\r\n MultiSelectFieldConfig,\r\n PickListFieldConfig,\r\n CheckboxFieldConfig,\r\n ColorPickerFieldConfig,\r\n DynamicFieldConfig,\r\n IconFieldConfig,\r\n RadioButtonFieldConfig,\r\n RadioCardsFieldConfig,\r\n ToggleFieldConfig,\r\n EditorFieldConfig,\r\n UserSearchFieldConfig,\r\n UploadFileFieldConfig,\r\n SpacerFieldConfig,\r\n LookupMatrixFieldConfig,\r\n SchemaConnectionFieldConfig,\r\n SchedulePredecessorFieldConfig,\r\n} from '@masterteam/components';\r\nimport { IconField } from '@masterteam/components/icon-field';\r\nimport { ToggleField } from '@masterteam/components/toggle-field';\r\nimport { RadioCardsField } from '@masterteam/components/radio-cards-field';\r\nimport { RadioButtonField } from '@masterteam/components/radio-button-field';\r\nimport { EditorField } from '@masterteam/components/editor-field';\r\nimport { UserSearchField } from '@masterteam/components/user-search-field';\r\nimport { UploadField } from '@masterteam/components/upload-field';\r\nimport {\r\n LookupMatrixField,\r\n SchemaConnectionField,\r\n SchedulePredecessorField,\r\n} from '@masterteam/components/business-fields';\r\n\r\n@Component({\r\n selector: 'mt-dynamic-field',\r\n standalone: true,\r\n imports: [\r\n TextField,\r\n TextareaField,\r\n SelectField,\r\n DateField,\r\n NumberField,\r\n SliderField,\r\n MultiSelectField,\r\n PickListField,\r\n CheckboxField,\r\n ColorPickerField,\r\n ReactiveFormsModule,\r\n IconField,\r\n EditorField,\r\n RadioButtonField,\r\n RadioCardsField,\r\n ToggleField,\r\n UserSearchField,\r\n UploadField,\r\n LookupMatrixField,\r\n SchemaConnectionField,\r\n SchedulePredecessorField,\r\n ],\r\n templateUrl: './dynamic-field.html',\r\n styleUrls: ['./dynamic-field.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n viewProviders: [\r\n { provide: ControlContainer, useExisting: FormGroupDirective },\r\n ],\r\n})\r\nexport class DynamicField {\r\n // Input signal with transform to handle class for text type\r\n readonly fieldConfig = input.required<DynamicFieldConfig>();\r\n\r\n // Computed property for transformed field config\r\n readonly transformedFieldConfig: Signal<DynamicFieldConfig> = computed(() =>\r\n this.transformToFieldConfig(this.fieldConfig()),\r\n );\r\n readonly isRequired = computed(() => {\r\n const field = this.transformedFieldConfig();\r\n return Boolean(\r\n field.required ||\r\n field.validators?.some(\r\n (validator: any) => validator?.type === 'required',\r\n ),\r\n );\r\n });\r\n\r\n // Inject ControlContainer to connect directly with parent form\r\n private controlContainer = inject(ControlContainer, { optional: true });\r\n\r\n // Input for the form control name\r\n readonly fieldName = input.required<string>();\r\n constructor() {}\r\n\r\n private transformToFieldConfig(value: any): DynamicFieldConfig {\r\n // If it's a plain object, transform it to appropriate field config\r\n if (typeof value === 'object') {\r\n if (value.type === 'text') {\r\n return new TextFieldConfig(value);\r\n }\r\n if (value.type === 'textarea') {\r\n return new TextareaFieldConfig(value);\r\n }\r\n if (value.type === 'select') {\r\n return new SelectFieldConfig(value);\r\n }\r\n if (value.type === 'date') {\r\n return new DateFieldConfig(value);\r\n }\r\n if (value.type === 'number') {\r\n return new NumberFieldConfig(value);\r\n }\r\n if (value.type === 'slider') {\r\n return new SliderFieldConfig(value);\r\n }\r\n if (value.type === 'multi-select') {\r\n return new MultiSelectFieldConfig(value);\r\n }\r\n if (value.type === 'pick-list') {\r\n return new PickListFieldConfig(value);\r\n }\r\n if (value.type === 'checkbox') {\r\n return new CheckboxFieldConfig(value);\r\n }\r\n if (value.type === 'radio-button') {\r\n return new RadioButtonFieldConfig(value);\r\n }\r\n if (value.type === 'radio-cards') {\r\n return new RadioCardsFieldConfig(value);\r\n }\r\n if (value.type === 'user-search') {\r\n return new UserSearchFieldConfig(value);\r\n }\r\n if (value.type === 'toggle') {\r\n return new ToggleFieldConfig(value);\r\n }\r\n if (value.type === 'editor-field') {\r\n return new EditorFieldConfig(value);\r\n }\r\n if (value.type === 'icon-field') {\r\n return new IconFieldConfig(value);\r\n }\r\n if (value.type === 'color-picker') {\r\n return new ColorPickerFieldConfig(value);\r\n }\r\n if (value.type === 'upload-file') {\r\n return new UploadFileFieldConfig(value);\r\n }\r\n if (value.type === 'spacer') {\r\n return new SpacerFieldConfig(value);\r\n }\r\n if (value.type === 'lookup-matrix') {\r\n return new LookupMatrixFieldConfig(value);\r\n }\r\n if (value.type === 'schema-connection') {\r\n return new SchemaConnectionFieldConfig(value);\r\n }\r\n if (value.type === 'predecessor') {\r\n return new SchedulePredecessorFieldConfig(value);\r\n }\r\n }\r\n\r\n // Default fallback to TextFieldConfig\r\n return new TextFieldConfig({\r\n ...value,\r\n });\r\n }\r\n}\r\n","@switch (transformedFieldConfig().type) {\r\n @case (\"text\") {\r\n <mt-text-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [type]=\"transformedFieldConfig().inputType || 'text'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"textarea\") {\r\n <mt-textarea-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [rows]=\"transformedFieldConfig().rows || 3\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"select\") {\r\n <mt-select-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [group]=\"transformedFieldConfig().group || false\"\r\n [optionGroupLabel]=\"transformedFieldConfig().optionGroupLabel || 'label'\"\r\n [optionGroupChildren]=\"\r\n transformedFieldConfig().optionGroupChildren || 'items'\r\n \"\r\n [size]=\"transformedFieldConfig().size\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [filter]=\"transformedFieldConfig().filter\"\r\n [formControlName]=\"fieldName()\"\r\n [hasPlaceholderPrefix]=\"transformedFieldConfig().hasPlaceholderPrefix\"\r\n />\r\n }\r\n @case (\"date\") {\r\n <mt-date-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n [showTime]=\"transformedFieldConfig().showTime\"\r\n />\r\n }\r\n @case (\"number\") {\r\n <mt-number-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [useGrouping]=\"transformedFieldConfig().useGrouping ?? false\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"slider\") {\r\n <mt-slider-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [min]=\"transformedFieldConfig().min ?? 0\"\r\n [max]=\"transformedFieldConfig().max ?? 100\"\r\n [step]=\"transformedFieldConfig().step\"\r\n [animate]=\"transformedFieldConfig().animate ?? false\"\r\n [unit]=\"transformedFieldConfig().unit || ''\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"multi-select\") {\r\n <mt-multi-select-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [maxSelectedLabels]=\"transformedFieldConfig().maxSelectedLabels\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"pick-list\") {\r\n <mt-pick-list-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [sourceHeader]=\"transformedFieldConfig().sourceHeader || 'Available'\"\r\n [targetHeader]=\"transformedFieldConfig().targetHeader || 'Selected'\"\r\n [showSourceControls]=\"transformedFieldConfig().showSourceControls ?? true\"\r\n [showTargetControls]=\"transformedFieldConfig().showTargetControls ?? true\"\r\n [showSourceFilter]=\"transformedFieldConfig().showSourceFilter ?? false\"\r\n [showTargetFilter]=\"transformedFieldConfig().showTargetFilter ?? false\"\r\n [filterBy]=\"transformedFieldConfig().filterBy\"\r\n [dataKey]=\"transformedFieldConfig().dataKey\"\r\n [dragdrop]=\"transformedFieldConfig().dragdrop\"\r\n [responsive]=\"transformedFieldConfig().responsive\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"user-search\") {\r\n <mt-user-search-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [hint]=\"transformedFieldConfig().hint || ''\"\r\n [apiUrl]=\"transformedFieldConfig().apiUrl || ''\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [isMultiple]=\"transformedFieldConfig().isMultiple || false\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"checkbox\") {\r\n <mt-checkbox-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"radio-button\") {\r\n <mt-radio-button-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [orientation]=\"transformedFieldConfig().orientation || 'vertical'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"radio-cards\") {\r\n <mt-radio-cards-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [size]=\"transformedFieldConfig().size || 'small'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"toggle\") {\r\n <mt-toggle-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [toggleShape]=\"transformedFieldConfig().toggleShape || 'toggle'\"\r\n [icon]=\"transformedFieldConfig().icon\"\r\n [descriptionCard]=\"transformedFieldConfig().descriptionCard\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"icon-field\") {\r\n <mt-icon-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"color-picker\") {\r\n <mt-color-picker-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n [appendTo]=\"transformedFieldConfig().appendTo\"\r\n />\r\n }\r\n @case (\"editor-field\") {\r\n <mt-editor-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"upload-file\") {\r\n <mt-upload-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [formControlName]=\"fieldName()\"\r\n [shape]=\"transformedFieldConfig().shape\"\r\n [size]=\"transformedFieldConfig().size\"\r\n [userImgClass]=\"transformedFieldConfig().userImgClass\"\r\n [multiple]=\"transformedFieldConfig().multiple\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [endPoint]=\"transformedFieldConfig().endPoint\"\r\n [accept]=\"transformedFieldConfig().accept\"\r\n [fileSizeLimit]=\"transformedFieldConfig().fileSizeLimit\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [title]=\"transformedFieldConfig().title\"\r\n [description]=\"transformedFieldConfig().description\"\r\n />\r\n }\r\n @case (\"lookup-matrix\") {\r\n <mt-lookup-matrix-field [config]=\"transformedFieldConfig()\" />\r\n }\r\n @case (\"spacer\") {\r\n <div class=\"spacer\"></div>\r\n }\r\n @case (\"schema-connection\") {\r\n <mt-schema-connection-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [configuration]=\"transformedFieldConfig().configuration\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [filter]=\"transformedFieldConfig().filter ?? true\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"predecessor\") {\r\n <mt-schedule-predecessor-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [configuration]=\"transformedFieldConfig().configuration\"\r\n [runtimeContext]=\"transformedFieldConfig().runtimeContext\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"masterteam-forms-dynamic-field.mjs","sources":["../../../../packages/masterteam/forms/dynamic-field/dynamic-field.ts","../../../../packages/masterteam/forms/dynamic-field/dynamic-field.html","../../../../packages/masterteam/forms/dynamic-field/masterteam-forms-dynamic-field.ts"],"sourcesContent":["import {\r\n Component,\r\n input,\r\n computed,\r\n ChangeDetectionStrategy,\r\n Signal,\r\n inject,\r\n} from '@angular/core';\r\nimport {\r\n ReactiveFormsModule,\r\n ControlContainer,\r\n FormGroupDirective,\r\n} from '@angular/forms';\r\nimport { TextField } from '@masterteam/components/text-field';\r\nimport { TextareaField } from '@masterteam/components/textarea-field';\r\nimport { SelectField } from '@masterteam/components/select-field';\r\nimport { DateField } from '@masterteam/components/date-field';\r\nimport { NumberField } from '@masterteam/components/number-field';\r\nimport { SliderField } from '@masterteam/components/slider-field';\r\nimport { MultiSelectField } from '@masterteam/components/multi-select-field';\r\nimport { CheckboxField } from '@masterteam/components/checkbox-field';\r\nimport { ColorPickerField } from '@masterteam/components/color-picker-field';\r\nimport { PickListField } from '@masterteam/components/pick-list-field';\r\nimport {\r\n TextFieldConfig,\r\n TextareaFieldConfig,\r\n SelectFieldConfig,\r\n DateFieldConfig,\r\n NumberFieldConfig,\r\n SliderFieldConfig,\r\n MultiSelectFieldConfig,\r\n PickListFieldConfig,\r\n CheckboxFieldConfig,\r\n ColorPickerFieldConfig,\r\n DynamicFieldConfig,\r\n IconFieldConfig,\r\n RadioButtonFieldConfig,\r\n RadioCardsFieldConfig,\r\n ToggleFieldConfig,\r\n EditorFieldConfig,\r\n UserSearchFieldConfig,\r\n UploadFileFieldConfig,\r\n SpacerFieldConfig,\r\n LookupMatrixFieldConfig,\r\n SchemaConnectionFieldConfig,\r\n SchedulePredecessorFieldConfig,\r\n} from '@masterteam/components';\r\nimport { IconField } from '@masterteam/components/icon-field';\r\nimport { ToggleField } from '@masterteam/components/toggle-field';\r\nimport { RadioCardsField } from '@masterteam/components/radio-cards-field';\r\nimport { RadioButtonField } from '@masterteam/components/radio-button-field';\r\nimport { EditorField } from '@masterteam/components/editor-field';\r\nimport { UserSearchField } from '@masterteam/components/user-search-field';\r\nimport { UploadField } from '@masterteam/components/upload-field';\r\nimport {\r\n LookupMatrixField,\r\n SchemaConnectionField,\r\n SchedulePredecessorField,\r\n} from '@masterteam/components/business-fields';\r\n\r\n@Component({\r\n selector: 'mt-dynamic-field',\r\n standalone: true,\r\n imports: [\r\n TextField,\r\n TextareaField,\r\n SelectField,\r\n DateField,\r\n NumberField,\r\n SliderField,\r\n MultiSelectField,\r\n PickListField,\r\n CheckboxField,\r\n ColorPickerField,\r\n ReactiveFormsModule,\r\n IconField,\r\n EditorField,\r\n RadioButtonField,\r\n RadioCardsField,\r\n ToggleField,\r\n UserSearchField,\r\n UploadField,\r\n LookupMatrixField,\r\n SchemaConnectionField,\r\n SchedulePredecessorField,\r\n ],\r\n templateUrl: './dynamic-field.html',\r\n styleUrls: ['./dynamic-field.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n viewProviders: [\r\n { provide: ControlContainer, useExisting: FormGroupDirective },\r\n ],\r\n})\r\nexport class DynamicField {\r\n // Input signal with transform to handle class for text type\r\n readonly fieldConfig = input.required<DynamicFieldConfig>();\r\n\r\n // Computed property for transformed field config\r\n readonly transformedFieldConfig: Signal<DynamicFieldConfig> = computed(() =>\r\n this.transformToFieldConfig(this.fieldConfig()),\r\n );\r\n readonly isRequired = computed(() => {\r\n const field = this.transformedFieldConfig();\r\n return Boolean(\r\n field.required ||\r\n field.validators?.some(\r\n (validator: any) => validator?.type === 'required',\r\n ),\r\n );\r\n });\r\n\r\n // Inject ControlContainer to connect directly with parent form\r\n private controlContainer = inject(ControlContainer, { optional: true });\r\n\r\n // Input for the form control name\r\n readonly fieldName = input.required<string>();\r\n constructor() {}\r\n\r\n private transformToFieldConfig(value: any): DynamicFieldConfig {\r\n // If it's a plain object, transform it to appropriate field config\r\n if (typeof value === 'object') {\r\n if (value.type === 'text') {\r\n return new TextFieldConfig(value);\r\n }\r\n if (value.type === 'textarea') {\r\n return new TextareaFieldConfig(value);\r\n }\r\n if (value.type === 'select') {\r\n return new SelectFieldConfig(value);\r\n }\r\n if (value.type === 'date') {\r\n return new DateFieldConfig(value);\r\n }\r\n if (value.type === 'number') {\r\n return new NumberFieldConfig(value);\r\n }\r\n if (value.type === 'slider') {\r\n return new SliderFieldConfig(value);\r\n }\r\n if (value.type === 'multi-select') {\r\n return new MultiSelectFieldConfig(value);\r\n }\r\n if (value.type === 'pick-list') {\r\n return new PickListFieldConfig(value);\r\n }\r\n if (value.type === 'checkbox') {\r\n return new CheckboxFieldConfig(value);\r\n }\r\n if (value.type === 'radio-button') {\r\n return new RadioButtonFieldConfig(value);\r\n }\r\n if (value.type === 'radio-cards') {\r\n return new RadioCardsFieldConfig(value);\r\n }\r\n if (value.type === 'user-search') {\r\n return new UserSearchFieldConfig(value);\r\n }\r\n if (value.type === 'toggle') {\r\n return new ToggleFieldConfig(value);\r\n }\r\n if (value.type === 'editor-field') {\r\n return new EditorFieldConfig(value);\r\n }\r\n if (value.type === 'icon-field') {\r\n return new IconFieldConfig(value);\r\n }\r\n if (value.type === 'color-picker') {\r\n return new ColorPickerFieldConfig(value);\r\n }\r\n if (value.type === 'upload-file') {\r\n return new UploadFileFieldConfig(value);\r\n }\r\n if (value.type === 'spacer') {\r\n return new SpacerFieldConfig(value);\r\n }\r\n if (value.type === 'lookup-matrix') {\r\n return new LookupMatrixFieldConfig(value);\r\n }\r\n if (value.type === 'schema-connection') {\r\n return new SchemaConnectionFieldConfig(value);\r\n }\r\n if (value.type === 'predecessor') {\r\n return new SchedulePredecessorFieldConfig(value);\r\n }\r\n }\r\n\r\n // Default fallback to TextFieldConfig\r\n return new TextFieldConfig({\r\n ...value,\r\n });\r\n }\r\n}\r\n","@switch (transformedFieldConfig().type) {\r\n @case (\"text\") {\r\n <mt-text-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [type]=\"transformedFieldConfig().inputType || 'text'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"textarea\") {\r\n <mt-textarea-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [rows]=\"transformedFieldConfig().rows || 3\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"select\") {\r\n <mt-select-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [group]=\"transformedFieldConfig().group || false\"\r\n [optionGroupLabel]=\"transformedFieldConfig().optionGroupLabel || 'label'\"\r\n [optionGroupChildren]=\"\r\n transformedFieldConfig().optionGroupChildren || 'items'\r\n \"\r\n [size]=\"transformedFieldConfig().size\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [filter]=\"transformedFieldConfig().filter\"\r\n [formControlName]=\"fieldName()\"\r\n [hasPlaceholderPrefix]=\"transformedFieldConfig().hasPlaceholderPrefix\"\r\n />\r\n }\r\n @case (\"date\") {\r\n <mt-date-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n [showTime]=\"transformedFieldConfig().showTime\"\r\n />\r\n }\r\n @case (\"number\") {\r\n <mt-number-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [placeholder]=\"transformedFieldConfig().placeholder\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [useGrouping]=\"transformedFieldConfig().useGrouping ?? false\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"slider\") {\r\n <mt-slider-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [min]=\"transformedFieldConfig().min ?? 0\"\r\n [max]=\"transformedFieldConfig().max ?? 100\"\r\n [step]=\"transformedFieldConfig().step\"\r\n [animate]=\"transformedFieldConfig().animate ?? false\"\r\n [unit]=\"transformedFieldConfig().unit || ''\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"multi-select\") {\r\n <mt-multi-select-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [maxSelectedLabels]=\"transformedFieldConfig().maxSelectedLabels\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"pick-list\") {\r\n <mt-pick-list-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [sourceHeader]=\"transformedFieldConfig().sourceHeader || 'Available'\"\r\n [targetHeader]=\"transformedFieldConfig().targetHeader || 'Selected'\"\r\n [showSourceControls]=\"transformedFieldConfig().showSourceControls ?? true\"\r\n [showTargetControls]=\"transformedFieldConfig().showTargetControls ?? true\"\r\n [showSourceFilter]=\"transformedFieldConfig().showSourceFilter ?? false\"\r\n [showTargetFilter]=\"transformedFieldConfig().showTargetFilter ?? false\"\r\n [filterBy]=\"transformedFieldConfig().filterBy\"\r\n [dataKey]=\"transformedFieldConfig().dataKey\"\r\n [dragdrop]=\"transformedFieldConfig().dragdrop\"\r\n [responsive]=\"transformedFieldConfig().responsive\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"user-search\") {\r\n <mt-user-search-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [hint]=\"transformedFieldConfig().hint || ''\"\r\n [apiUrl]=\"transformedFieldConfig().apiUrl || ''\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [isMultiple]=\"transformedFieldConfig().isMultiple || false\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"checkbox\") {\r\n <mt-checkbox-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"radio-button\") {\r\n <mt-radio-button-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [orientation]=\"transformedFieldConfig().orientation || 'vertical'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"radio-cards\") {\r\n <mt-radio-cards-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [options]=\"transformedFieldConfig().options || []\"\r\n [optionLabel]=\"transformedFieldConfig().optionLabel || 'label'\"\r\n [optionValue]=\"transformedFieldConfig().optionValue || 'value'\"\r\n [size]=\"transformedFieldConfig().size || 'small'\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"toggle\") {\r\n <mt-toggle-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [toggleShape]=\"transformedFieldConfig().toggleShape || 'toggle'\"\r\n [icon]=\"transformedFieldConfig().icon\"\r\n [descriptionCard]=\"transformedFieldConfig().descriptionCard\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"icon-field\") {\r\n <mt-icon-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"color-picker\") {\r\n <mt-color-picker-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n [appendTo]=\"transformedFieldConfig().appendTo\"\r\n />\r\n }\r\n @case (\"editor-field\") {\r\n <mt-editor-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"upload-file\") {\r\n <mt-upload-field\r\n [label]=\"transformedFieldConfig().label\"\r\n [formControlName]=\"fieldName()\"\r\n [shape]=\"transformedFieldConfig().shape\"\r\n [size]=\"transformedFieldConfig().size\"\r\n [userImgClass]=\"transformedFieldConfig().userImgClass\"\r\n [multiple]=\"transformedFieldConfig().multiple\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [endPoint]=\"transformedFieldConfig().endPoint\"\r\n [accept]=\"transformedFieldConfig().accept\"\r\n [fileSizeLimit]=\"transformedFieldConfig().fileSizeLimit\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [title]=\"transformedFieldConfig().title\"\r\n [description]=\"transformedFieldConfig().description\"\r\n />\r\n }\r\n @case (\"lookup-matrix\") {\r\n <mt-lookup-matrix-field [config]=\"transformedFieldConfig()\" />\r\n }\r\n @case (\"spacer\") {\r\n <div class=\"spacer\"></div>\r\n }\r\n @case (\"schema-connection\") {\r\n <mt-schema-connection-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [configuration]=\"transformedFieldConfig().configuration\"\r\n [context]=\"transformedFieldConfig().context\"\r\n [filter]=\"transformedFieldConfig().filter ?? true\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n @case (\"predecessor\") {\r\n <mt-schedule-predecessor-field\r\n [label]=\"transformedFieldConfig().label || ''\"\r\n [placeholder]=\"transformedFieldConfig().placeholder || ''\"\r\n [configuration]=\"transformedFieldConfig().configuration\"\r\n [runtimeContext]=\"transformedFieldConfig().runtimeContext\"\r\n [required]=\"isRequired()\"\r\n [readonly]=\"transformedFieldConfig().readonly!\"\r\n [formControlName]=\"fieldName()\"\r\n />\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@masterteam/forms",
3
- "version": "0.0.68",
3
+ "version": "0.0.70",
4
4
  "publishConfig": {
5
5
  "directory": "../../../dist/masterteam/forms",
6
6
  "linkDirectory": true,
@@ -17,7 +17,7 @@
17
17
  "primeng": "21.1.5",
18
18
  "@primeuix/themes": "^2.0.3",
19
19
  "rxjs": "^7.8.2",
20
- "@masterteam/components": "^0.0.146"
20
+ "@masterteam/components": "^0.0.150"
21
21
  },
22
22
  "sideEffects": false,
23
23
  "exports": {
@@ -1,7 +1,8 @@
1
1
  import * as _masterteam_components from '@masterteam/components';
2
2
  import { FormulaRuntimeMessage, DynamicFormConfig } from '@masterteam/components';
3
3
  import * as _masterteam_components_entities from '@masterteam/components/entities';
4
- import { EntityData } from '@masterteam/components/entities';
4
+ import { PropertyValueComparison, EntityData } from '@masterteam/components/entities';
5
+ export { ComparisonValueSide, EntityComparisonField, EntityComparisonOperation, EntityListComparison, EntityListComparisonRow, PropertyValueComparison, ValueComparison } from '@masterteam/components/entities';
5
6
  import * as _angular_core from '@angular/core';
6
7
  import { OnDestroy, ElementRef } from '@angular/core';
7
8
  import { FormControl } from '@angular/forms';
@@ -74,6 +75,7 @@ interface ProcessFormSubmitRequest {
74
75
  recordId?: number | string;
75
76
  requestSchemaId?: number;
76
77
  returnUrl?: string;
78
+ IsSteps?: boolean;
77
79
  fields: ProcessFormSubmitField[];
78
80
  }
79
81
  interface ProcessFormValidationRuntimeResult {
@@ -137,6 +139,7 @@ interface ProcessFormValue {
137
139
  rawValue?: any;
138
140
  value: any;
139
141
  metadata?: ProcessFormValueMetadata;
142
+ comparison?: PropertyValueComparison;
140
143
  }
141
144
  interface ProcessFormValueMetadata {
142
145
  propertyId: number;
@@ -345,6 +348,7 @@ interface StepTimelineItem {
345
348
  */
346
349
  declare class ClientForm implements OnDestroy {
347
350
  private readonly api;
351
+ private readonly teamMemberOptions;
348
352
  private readonly confirmationService;
349
353
  protected readonly state: ClientFormStateService;
350
354
  readonly validationSummary: _angular_core.Signal<ElementRef<HTMLElement> | undefined>;
@@ -475,6 +479,7 @@ declare class ClientForm implements OnDestroy {
475
479
  private validateAndAdvanceStep;
476
480
  private applyStepChange;
477
481
  private requiresForwardStepValidation;
482
+ private resolveValidateIsSteps;
478
483
  private hasLocalBlockingValidationIssues;
479
484
  private handleValidationRequestFailure;
480
485
  private createValidationFeedbackMessage;
@@ -489,6 +494,15 @@ declare class ClientForm implements OnDestroy {
489
494
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ClientForm, "mt-client-form", never, { "moduleKey": { "alias": "moduleKey"; "required": true; "isSignal": true; }; "operationKey": { "alias": "operationKey"; "required": true; "isSignal": true; }; "moduleId": { "alias": "moduleId"; "required": false; "isSignal": true; }; "levelId": { "alias": "levelId"; "required": false; "isSignal": true; }; "levelDataId": { "alias": "levelDataId"; "required": false; "isSignal": true; }; "moduleDataId": { "alias": "moduleDataId"; "required": false; "isSignal": true; }; "requestSchemaId": { "alias": "requestSchemaId"; "required": false; "isSignal": true; }; "draftProcessId": { "alias": "draftProcessId"; "required": false; "isSignal": true; }; "preview": { "alias": "preview"; "required": false; "isSignal": true; }; "returnUrl": { "alias": "returnUrl"; "required": false; "isSignal": true; }; "defaultValues": { "alias": "defaultValues"; "required": false; "isSignal": true; }; "submitRequestMapper": { "alias": "submitRequestMapper"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "autoLoad": { "alias": "autoLoad"; "required": false; "isSignal": true; }; "formMode": { "alias": "formMode"; "required": false; "isSignal": true; }; "renderMode": { "alias": "renderMode"; "required": false; "isSignal": true; }; "showInternalStepActions": { "alias": "showInternalStepActions"; "required": false; "isSignal": true; }; "confirmWarningsOnSubmit": { "alias": "confirmWarningsOnSubmit"; "required": false; "isSignal": true; }; "confirmWarningsOnStepChange": { "alias": "confirmWarningsOnStepChange"; "required": false; "isSignal": true; }; "lookups": { "alias": "lookups"; "required": false; "isSignal": true; }; "ignoredFieldKeys": { "alias": "ignoredFieldKeys"; "required": false; "isSignal": true; }; }, { "loaded": "loaded"; "submitted": "submitted"; "errored": "errored"; "modeDetected": "modeDetected"; "formSourceDetected": "formSourceDetected"; "footerStateChanged": "footerStateChanged"; }, never, never, true, never>;
490
495
  }
491
496
 
497
+ interface TeamMemberApiDto {
498
+ userId: string;
499
+ user: {
500
+ displayName?: string;
501
+ fullName?: string;
502
+ [key: string]: any;
503
+ } | null;
504
+ [key: string]: any;
505
+ }
492
506
  /**
493
507
  * Stateless HTTP service for process-forms runtime APIs.
494
508
  * Root-provided — safe to share across multiple ClientForm instances.
@@ -511,6 +525,11 @@ declare class ClientFormApiService {
511
525
  * before the real submit call.
512
526
  */
513
527
  validate(request: ProcessFormSubmitRequest): Observable<Response<ProcessFormValidationRuntimeResult>>;
528
+ /**
529
+ * Fetch team members for a given level data entry.
530
+ * Used when a User-type property has justTeamMembers configuration enabled.
531
+ */
532
+ getTeamMembers(levelDataId: number | string): Observable<Response<TeamMemberApiDto[]>>;
514
533
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ClientFormApiService, never>;
515
534
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<ClientFormApiService>;
516
535
  }
@@ -521,6 +540,10 @@ interface ClientFormPreviewSection {
521
540
  order: number;
522
541
  entities: EntityData[];
523
542
  }
543
+ interface TeamMemberOption {
544
+ label: string;
545
+ value: string;
546
+ }
524
547
  /**
525
548
  * Convert a runtime FormConfiguration into a DynamicFormConfig
526
549
  * that can be passed directly to `<mt-dynamic-form>`.
@@ -529,8 +552,9 @@ interface ClientFormPreviewSection {
529
552
  * @param lang Current UI language ('en' | 'ar')
530
553
  * @param mode 'create' or 'edit' — filters hidden fields accordingly
531
554
  * @param lookups Available lookup definitions for resolving Lookup/LookupMultiSelect options
555
+ * @param teamMemberOptions Pre-fetched team member options (used when property configuration has justTeamMembers=true)
532
556
  */
533
- declare function mapToDynamicFormConfig(config: ClientFormConfiguration, lang?: 'en' | 'ar', mode?: 'create' | 'edit', lookups?: ClientLookup[], context?: ProcessFormContext | null, readonly?: boolean): DynamicFormConfig;
557
+ declare function mapToDynamicFormConfig(config: ClientFormConfiguration, lang?: 'en' | 'ar', mode?: 'create' | 'edit', lookups?: ClientLookup[], context?: ProcessFormContext | null, readonly?: boolean, teamMemberOptions?: TeamMemberOption[]): DynamicFormConfig;
534
558
  /**
535
559
  * Convert API property values into a flat key-value object
536
560
  * suitable for `formControl.patchValue()`.
@@ -550,4 +574,4 @@ declare function mapPreviewFieldsToEntities(config: ClientFormConfiguration, val
550
574
  declare function mapPreviewSectionsToEntities(config: ClientFormConfiguration, values: ProcessFormValue[], lang?: 'en' | 'ar', mode?: 'create' | 'edit', readonly?: boolean): ClientFormPreviewSection[];
551
575
 
552
576
  export { ClientForm, ClientFormApiService, ClientFormStateService, getPreviewOnlyFieldKeys, isFormRequiredInterception, mapFormValueToSubmitFields, mapPreviewFieldsToEntities, mapPreviewSectionsToEntities, mapToDynamicFormConfig, mapValuesToFormValue };
553
- export type { ClientFieldWidth, ClientFormConfiguration, ClientFormField, ClientFormFooterActionMode, ClientFormFooterState, ClientFormPreviewSection, ClientFormRenderMode, ClientFormResolvedRenderMode, ClientFormSection, ClientFormSubmitRequestMapper, ClientFormSubmitRequestMapperContext, ClientFormTranslatableValue, ClientLookup, ClientLookupItem, ClientPropertyItem, ClientValidationRule, FormRequiredInterception, OperationType, ProcessFormContext, ProcessFormLoadRequest, ProcessFormLoadResponse, ProcessFormMode, ProcessFormSource, ProcessFormSubmitField, ProcessFormSubmitRecord, ProcessFormSubmitRecordField, ProcessFormSubmitRequest, ProcessFormSubmitResponse, ProcessFormSubmitStatus, ProcessFormSubmitValue, ProcessFormValidationRuleResult, ProcessFormValidationRuntimeResult, ProcessFormValue, ProcessFormValueMetadata, Response };
577
+ export type { ClientFieldWidth, ClientFormConfiguration, ClientFormField, ClientFormFooterActionMode, ClientFormFooterState, ClientFormPreviewSection, ClientFormRenderMode, ClientFormResolvedRenderMode, ClientFormSection, ClientFormSubmitRequestMapper, ClientFormSubmitRequestMapperContext, ClientFormTranslatableValue, ClientLookup, ClientLookupItem, ClientPropertyItem, ClientValidationRule, FormRequiredInterception, OperationType, ProcessFormContext, ProcessFormLoadRequest, ProcessFormLoadResponse, ProcessFormMode, ProcessFormSource, ProcessFormSubmitField, ProcessFormSubmitRecord, ProcessFormSubmitRecordField, ProcessFormSubmitRequest, ProcessFormSubmitResponse, ProcessFormSubmitStatus, ProcessFormSubmitValue, ProcessFormValidationRuleResult, ProcessFormValidationRuntimeResult, ProcessFormValue, ProcessFormValueMetadata, Response, TeamMemberApiDto, TeamMemberOption };