@egose/shadcn-theme-ng 0.0.12 → 0.0.14

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.
Files changed (44) hide show
  1. package/accordion/fesm2022/accordion.mjs +10 -10
  2. package/alert/fesm2022/alert.mjs +30 -30
  3. package/autocomplete/fesm2022/autocomplete.mjs +34 -15
  4. package/autocomplete/fesm2022/autocomplete.mjs.map +1 -1
  5. package/autocomplete/index.d.ts +5 -1
  6. package/badge/fesm2022/badge.mjs +70 -79
  7. package/badge/fesm2022/badge.mjs.map +1 -1
  8. package/badge/index.d.ts +9 -9
  9. package/basic-alert/fesm2022/basic-alert.mjs +15 -23
  10. package/basic-alert/fesm2022/basic-alert.mjs.map +1 -1
  11. package/basic-alert/index.d.ts +7 -7
  12. package/button/fesm2022/button.mjs +148 -168
  13. package/button/fesm2022/button.mjs.map +1 -1
  14. package/button/index.d.ts +19 -19
  15. package/calendar/fesm2022/calendar.mjs +78 -78
  16. package/confirmation-dialog/fesm2022/confirmation-dialog.mjs +10 -10
  17. package/date-picker/fesm2022/date-picker.mjs +11 -11
  18. package/dialog/fesm2022/dialog.mjs +9 -9
  19. package/exports.json +1 -1
  20. package/form-date-picker/fesm2022/form-date-picker.mjs +9 -9
  21. package/form-field/fesm2022/form-field.mjs +3 -3
  22. package/form-searchable-multiselect/README.md +64 -0
  23. package/form-searchable-multiselect/fesm2022/form-searchable-multiselect.mjs +124 -0
  24. package/form-searchable-multiselect/fesm2022/form-searchable-multiselect.mjs.map +1 -0
  25. package/form-searchable-multiselect/index.d.ts +28 -0
  26. package/form-select/fesm2022/form-select.mjs +9 -9
  27. package/form-text-input/fesm2022/form-text-input.mjs +9 -9
  28. package/form-textarea/fesm2022/form-textarea.mjs +9 -9
  29. package/input/fesm2022/input.mjs +3 -3
  30. package/label/fesm2022/label.mjs +1 -1
  31. package/package.json +9 -1
  32. package/popover/fesm2022/popover.mjs +2 -2
  33. package/radio-group/fesm2022/radio-group.mjs +5 -5
  34. package/searchable-multiselect/README.md +64 -0
  35. package/searchable-multiselect/fesm2022/searchable-multiselect.mjs +221 -0
  36. package/searchable-multiselect/fesm2022/searchable-multiselect.mjs.map +1 -0
  37. package/searchable-multiselect/index.d.ts +50 -0
  38. package/select/fesm2022/select.mjs +18 -18
  39. package/separator/fesm2022/separator.mjs +1 -1
  40. package/sonner/fesm2022/sonner.mjs +4 -4
  41. package/spinner/fesm2022/spinner.mjs +6 -6
  42. package/switch/fesm2022/switch.mjs +2 -2
  43. package/tabs/fesm2022/tabs.mjs +12 -12
  44. package/tooltip/fesm2022/tooltip.mjs +5 -5
@@ -9,7 +9,7 @@ import { NgIcon, provideIcons } from '@ng-icons/core';
9
9
  import { lucideX } from '@ng-icons/lucide';
10
10
  import { HlmIcon } from '@egose/shadcn-theme-ng/icon';
11
11
 
12
- const hlmDialogOverlayClass = 'tw:data-[state=open]:animate-in tw:data-[state=closed]:animate-out tw:data-[state=closed]:fade-out-0 tw:data-[state=open]:fade-in-0 tw:bg-black/50';
12
+ const hlmDialogOverlayClass = 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 bg-black/50';
13
13
  class HlmDialogOverlay {
14
14
  _classSettable = injectCustomClassSettable({ optional: true, host: true });
15
15
  userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
@@ -71,7 +71,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
71
71
 
72
72
  class HlmDialogClose {
73
73
  userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
74
- _computedClass = computed(() => hlm('tw:ring-offset-background tw:focus:ring-ring tw:data-[state=open]:bg-accent tw:data-[state=open]:text-muted-foreground tw:rounded-xs tw:absolute tw:right-4 tw:top-4 tw:flex tw:items-center tw:justify-center tw:opacity-70 tw:transition-opacity tw:hover:opacity-100 tw:focus:outline-none tw:focus:ring-2 tw:focus:ring-offset-2 tw:disabled:pointer-events-none tw:[&_ng-icon]:shrink-0', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
74
+ _computedClass = computed(() => hlm('ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground rounded-xs absolute right-4 top-4 flex items-center justify-center opacity-70 transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:pointer-events-none [&_ng-icon]:shrink-0', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
75
75
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: HlmDialogClose, deps: [], target: i0.ɵɵFactoryTarget.Directive });
76
76
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.1", type: HlmDialogClose, isStandalone: true, selector: "[hlmDialogClose],[brnDialogClose][hlm]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, ngImport: i0 });
77
77
  }
@@ -92,7 +92,7 @@ class HlmDialogContent {
92
92
  component = this._dialogContext?.$component;
93
93
  _dynamicComponentClass = this._dialogContext?.$dynamicComponentClass;
94
94
  userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
95
- _computedClass = computed(() => hlm('tw:bg-background tw:data-[state=open]:animate-in tw:data-[state=closed]:animate-out tw:data-[state=closed]:fade-out-0 tw:data-[state=open]:fade-in-0 tw:data-[state=closed]:zoom-out-95 tw:data-[state=open]:zoom-in-95 tw:relative tw:z-50 tw:mx-auto tw:grid tw:w-full tw:max-w-[calc(100%-2rem)] tw:gap-4 tw:rounded-lg tw:border tw:p-6 tw:shadow-lg tw:data-[state=closed]:duration-200 tw:data-[state=open]:duration-200 tw:sm:mx-0 tw:sm:max-w-lg', this.userClass(), this._dynamicComponentClass), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
95
+ _computedClass = computed(() => hlm('bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 relative z-50 mx-auto grid w-full max-w-[calc(100%-2rem)] gap-4 rounded-lg border p-6 shadow-lg data-[state=closed]:duration-200 data-[state=open]:duration-200 sm:mx-0 sm:max-w-lg', this.userClass(), this._dynamicComponentClass), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
96
96
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: HlmDialogContent, deps: [], target: i0.ɵɵFactoryTarget.Component });
97
97
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: HlmDialogContent, isStandalone: true, selector: "hlm-dialog-content", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()", "attr.data-state": "state()" } }, providers: [provideIcons({ lucideX })], ngImport: i0, template: `
98
98
  @if (component) {
@@ -102,7 +102,7 @@ class HlmDialogContent {
102
102
  }
103
103
 
104
104
  <button brnDialogClose hlm>
105
- <span class="tw:sr-only">Close</span>
105
+ <span class="sr-only">Close</span>
106
106
  <ng-icon hlm size="sm" name="lucideX" />
107
107
  </button>
108
108
  `, isInline: true, dependencies: [{ kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: BrnDialogClose, selector: "button[brnDialogClose]", inputs: ["delay"] }, { kind: "directive", type: HlmDialogClose, selector: "[hlmDialogClose],[brnDialogClose][hlm]", inputs: ["class"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: HlmIcon, selector: "ng-icon[hlm]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
@@ -125,7 +125,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
125
125
  }
126
126
 
127
127
  <button brnDialogClose hlm>
128
- <span class="tw:sr-only">Close</span>
128
+ <span class="sr-only">Close</span>
129
129
  <ng-icon hlm size="sm" name="lucideX" />
130
130
  </button>
131
131
  `,
@@ -136,7 +136,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
136
136
 
137
137
  class HlmDialogDescription {
138
138
  userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
139
- _computedClass = computed(() => hlm('tw:text-muted-foreground tw:text-sm', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
139
+ _computedClass = computed(() => hlm('text-muted-foreground text-sm', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
140
140
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: HlmDialogDescription, deps: [], target: i0.ɵɵFactoryTarget.Directive });
141
141
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.1", type: HlmDialogDescription, isStandalone: true, selector: "[hlmDialogDescription]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, hostDirectives: [{ directive: i1.BrnDialogDescription }], ngImport: i0 });
142
142
  }
@@ -153,7 +153,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
153
153
 
154
154
  class HlmDialogFooter {
155
155
  userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
156
- _computedClass = computed(() => hlm('tw:flex tw:flex-col-reverse tw:gap-2 tw:sm:flex-row tw:sm:justify-end', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
156
+ _computedClass = computed(() => hlm('flex flex-col-reverse gap-2 sm:flex-row sm:justify-end', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
157
157
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: HlmDialogFooter, deps: [], target: i0.ɵɵFactoryTarget.Component });
158
158
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.1", type: HlmDialogFooter, isStandalone: true, selector: "hlm-dialog-footer", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
159
159
  }
@@ -171,7 +171,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
171
171
 
172
172
  class HlmDialogHeader {
173
173
  userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
174
- _computedClass = computed(() => hlm('tw:flex tw:flex-col tw:gap-2 tw:text-center tw:sm:text-left', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
174
+ _computedClass = computed(() => hlm('flex flex-col gap-2 text-center sm:text-left', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
175
175
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: HlmDialogHeader, deps: [], target: i0.ɵɵFactoryTarget.Component });
176
176
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.1", type: HlmDialogHeader, isStandalone: true, selector: "hlm-dialog-header", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
177
177
  }
@@ -189,7 +189,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
189
189
 
190
190
  class HlmDialogTitle {
191
191
  userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
192
- _computedClass = computed(() => hlm('tw:text-lg tw:font-semibold tw:leading-none', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
192
+ _computedClass = computed(() => hlm('text-lg font-semibold leading-none', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
193
193
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: HlmDialogTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
194
194
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.1", type: HlmDialogTitle, isStandalone: true, selector: "[hlmDialogTitle]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, hostDirectives: [{ directive: i1.BrnDialogTitle }], ngImport: i0 });
195
195
  }
package/exports.json CHANGED
@@ -1 +1 @@
1
- {"./utils":{"types":"./utils/index.d.ts","default":"./utils/fesm2022/utils.mjs"},"./icon":{"types":"./icon/index.d.ts","default":"./icon/fesm2022/icon.mjs"},"./spinner":{"types":"./spinner/index.d.ts","default":"./spinner/fesm2022/spinner.mjs"},"./badge":{"types":"./badge/index.d.ts","default":"./badge/fesm2022/badge.mjs"},"./input":{"types":"./input/index.d.ts","default":"./input/fesm2022/input.mjs"},"./select":{"types":"./select/index.d.ts","default":"./select/fesm2022/select.mjs"},"./button":{"types":"./button/index.d.ts","default":"./button/fesm2022/button.mjs"},"./accordion":{"types":"./accordion/index.d.ts","default":"./accordion/fesm2022/accordion.mjs"},"./alert":{"types":"./alert/index.d.ts","default":"./alert/fesm2022/alert.mjs"},"./switch":{"types":"./switch/index.d.ts","default":"./switch/fesm2022/switch.mjs"},"./label":{"types":"./label/index.d.ts","default":"./label/fesm2022/label.mjs"},"./form-field":{"types":"./form-field/index.d.ts","default":"./form-field/fesm2022/form-field.mjs"},"./popover":{"types":"./popover/index.d.ts","default":"./popover/fesm2022/popover.mjs"},"./calendar":{"types":"./calendar/index.d.ts","default":"./calendar/fesm2022/calendar.mjs"},"./date-picker":{"types":"./date-picker/index.d.ts","default":"./date-picker/fesm2022/date-picker.mjs"},"./dialog":{"types":"./dialog/index.d.ts","default":"./dialog/fesm2022/dialog.mjs"},"./radio-group":{"types":"./radio-group/index.d.ts","default":"./radio-group/fesm2022/radio-group.mjs"},"./separator":{"types":"./separator/index.d.ts","default":"./separator/fesm2022/separator.mjs"},"./tabs":{"types":"./tabs/index.d.ts","default":"./tabs/fesm2022/tabs.mjs"},"./tooltip":{"types":"./tooltip/index.d.ts","default":"./tooltip/fesm2022/tooltip.mjs"},"./form-select":{"types":"./form-select/index.d.ts","default":"./form-select/fesm2022/form-select.mjs"},"./form-text-input":{"types":"./form-text-input/index.d.ts","default":"./form-text-input/fesm2022/form-text-input.mjs"},"./form-textarea":{"types":"./form-textarea/index.d.ts","default":"./form-textarea/fesm2022/form-textarea.mjs"},"./form-date-picker":{"types":"./form-date-picker/index.d.ts","default":"./form-date-picker/fesm2022/form-date-picker.mjs"},"./basic-alert":{"types":"./basic-alert/index.d.ts","default":"./basic-alert/fesm2022/basic-alert.mjs"},"./confirmation-dialog":{"types":"./confirmation-dialog/index.d.ts","default":"./confirmation-dialog/fesm2022/confirmation-dialog.mjs"},"./sonner":{"types":"./sonner/index.d.ts","default":"./sonner/fesm2022/sonner.mjs"},"./autocomplete":{"types":"./autocomplete/index.d.ts","default":"./autocomplete/fesm2022/autocomplete.mjs"}}
1
+ {"./utils":{"types":"./utils/index.d.ts","default":"./utils/fesm2022/utils.mjs"},"./icon":{"types":"./icon/index.d.ts","default":"./icon/fesm2022/icon.mjs"},"./spinner":{"types":"./spinner/index.d.ts","default":"./spinner/fesm2022/spinner.mjs"},"./badge":{"types":"./badge/index.d.ts","default":"./badge/fesm2022/badge.mjs"},"./input":{"types":"./input/index.d.ts","default":"./input/fesm2022/input.mjs"},"./select":{"types":"./select/index.d.ts","default":"./select/fesm2022/select.mjs"},"./button":{"types":"./button/index.d.ts","default":"./button/fesm2022/button.mjs"},"./accordion":{"types":"./accordion/index.d.ts","default":"./accordion/fesm2022/accordion.mjs"},"./alert":{"types":"./alert/index.d.ts","default":"./alert/fesm2022/alert.mjs"},"./switch":{"types":"./switch/index.d.ts","default":"./switch/fesm2022/switch.mjs"},"./label":{"types":"./label/index.d.ts","default":"./label/fesm2022/label.mjs"},"./form-field":{"types":"./form-field/index.d.ts","default":"./form-field/fesm2022/form-field.mjs"},"./popover":{"types":"./popover/index.d.ts","default":"./popover/fesm2022/popover.mjs"},"./calendar":{"types":"./calendar/index.d.ts","default":"./calendar/fesm2022/calendar.mjs"},"./date-picker":{"types":"./date-picker/index.d.ts","default":"./date-picker/fesm2022/date-picker.mjs"},"./dialog":{"types":"./dialog/index.d.ts","default":"./dialog/fesm2022/dialog.mjs"},"./radio-group":{"types":"./radio-group/index.d.ts","default":"./radio-group/fesm2022/radio-group.mjs"},"./separator":{"types":"./separator/index.d.ts","default":"./separator/fesm2022/separator.mjs"},"./tabs":{"types":"./tabs/index.d.ts","default":"./tabs/fesm2022/tabs.mjs"},"./tooltip":{"types":"./tooltip/index.d.ts","default":"./tooltip/fesm2022/tooltip.mjs"},"./form-select":{"types":"./form-select/index.d.ts","default":"./form-select/fesm2022/form-select.mjs"},"./form-text-input":{"types":"./form-text-input/index.d.ts","default":"./form-text-input/fesm2022/form-text-input.mjs"},"./form-textarea":{"types":"./form-textarea/index.d.ts","default":"./form-textarea/fesm2022/form-textarea.mjs"},"./form-date-picker":{"types":"./form-date-picker/index.d.ts","default":"./form-date-picker/fesm2022/form-date-picker.mjs"},"./basic-alert":{"types":"./basic-alert/index.d.ts","default":"./basic-alert/fesm2022/basic-alert.mjs"},"./confirmation-dialog":{"types":"./confirmation-dialog/index.d.ts","default":"./confirmation-dialog/fesm2022/confirmation-dialog.mjs"},"./sonner":{"types":"./sonner/index.d.ts","default":"./sonner/fesm2022/sonner.mjs"},"./autocomplete":{"types":"./autocomplete/index.d.ts","default":"./autocomplete/fesm2022/autocomplete.mjs"},"./searchable-multiselect":{"types":"./searchable-multiselect/index.d.ts","default":"./searchable-multiselect/fesm2022/searchable-multiselect.mjs"},"./form-searchable-multiselect":{"types":"./form-searchable-multiselect/index.d.ts","default":"./form-searchable-multiselect/fesm2022/form-searchable-multiselect.mjs"}}
@@ -31,13 +31,13 @@ class EgFormDatePicker {
31
31
  errorClass = input('', ...(ngDevMode ? [{ debugName: "errorClass" }] : []));
32
32
  hintClass = input('', ...(ngDevMode ? [{ debugName: "hintClass" }] : []));
33
33
  // Computed classes
34
- $userClass = computed(() => hlm('tw:flex tw:flex-col', this.userClass()), ...(ngDevMode ? [{ debugName: "$userClass" }] : []));
35
- $labelClass = computed(() => hlm('tw:mb-1', this.labelClass()), ...(ngDevMode ? [{ debugName: "$labelClass" }] : []));
36
- $pickerClass = computed(() => hlm('tw:mb-1', this.pickerClass()), ...(ngDevMode ? [{ debugName: "$pickerClass" }] : []));
37
- $errorClass = computed(() => hlm('tw:mt-0', this.errorClass()), ...(ngDevMode ? [{ debugName: "$errorClass" }] : []));
38
- $hintClass = computed(() => hlm('tw:mt-0', this.hintClass()), ...(ngDevMode ? [{ debugName: "$hintClass" }] : []));
34
+ $userClass = computed(() => hlm('flex flex-col', this.userClass()), ...(ngDevMode ? [{ debugName: "$userClass" }] : []));
35
+ $labelClass = computed(() => hlm('mb-1', this.labelClass()), ...(ngDevMode ? [{ debugName: "$labelClass" }] : []));
36
+ $pickerClass = computed(() => hlm('mb-1', this.pickerClass()), ...(ngDevMode ? [{ debugName: "$pickerClass" }] : []));
37
+ $errorClass = computed(() => hlm('mt-0', this.errorClass()), ...(ngDevMode ? [{ debugName: "$errorClass" }] : []));
38
+ $hintClass = computed(() => hlm('mt-0', this.hintClass()), ...(ngDevMode ? [{ debugName: "$hintClass" }] : []));
39
39
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: EgFormDatePicker, deps: [], target: i0.ɵɵFactoryTarget.Component });
40
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: EgFormDatePicker, isStandalone: true, selector: "eg-form-date-picker", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, controlName: { classPropertyName: "controlName", publicName: "controlName", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, autoCloseOnSelect: { classPropertyName: "autoCloseOnSelect", publicName: "autoCloseOnSelect", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, labelClass: { classPropertyName: "labelClass", publicName: "labelClass", isSignal: true, isRequired: false, transformFunction: null }, pickerClass: { classPropertyName: "pickerClass", publicName: "pickerClass", isSignal: true, isRequired: false, transformFunction: null }, errorClass: { classPropertyName: "errorClass", publicName: "errorClass", isSignal: true, isRequired: false, transformFunction: null }, hintClass: { classPropertyName: "hintClass", publicName: "hintClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "tw:w-full" }, providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }], ngImport: i0, template: `
40
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: EgFormDatePicker, isStandalone: true, selector: "eg-form-date-picker", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, controlName: { classPropertyName: "controlName", publicName: "controlName", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, autoCloseOnSelect: { classPropertyName: "autoCloseOnSelect", publicName: "autoCloseOnSelect", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, labelClass: { classPropertyName: "labelClass", publicName: "labelClass", isSignal: true, isRequired: false, transformFunction: null }, pickerClass: { classPropertyName: "pickerClass", publicName: "pickerClass", isSignal: true, isRequired: false, transformFunction: null }, errorClass: { classPropertyName: "errorClass", publicName: "errorClass", isSignal: true, isRequired: false, transformFunction: null }, hintClass: { classPropertyName: "hintClass", publicName: "hintClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "w-full" }, providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }], ngImport: i0, template: `
41
41
  @let lbl = label();
42
42
  @let nm = controlName();
43
43
  @let err = error();
@@ -48,7 +48,7 @@ class EgFormDatePicker {
48
48
  @if (lbl) {
49
49
  <span hlmLabel [class]="$labelClass()">{{ lbl }}
50
50
  @if (rqrd) {
51
- <span class="tw:text-red-500">*</span>
51
+ <span class="text-red-500">*</span>
52
52
  }
53
53
  </span>
54
54
  }
@@ -85,7 +85,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
85
85
  selector: 'eg-form-date-picker',
86
86
  standalone: true,
87
87
  host: {
88
- class: 'tw:w-full',
88
+ class: 'w-full',
89
89
  },
90
90
  imports: [ReactiveFormsModule, HlmFormField, HlmError, HlmHint, HlmLabel, HlmDatePicker],
91
91
  providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }],
@@ -101,7 +101,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
101
101
  @if (lbl) {
102
102
  <span hlmLabel [class]="$labelClass()">{{ lbl }}
103
103
  @if (rqrd) {
104
- <span class="tw:text-red-500">*</span>
104
+ <span class="text-red-500">*</span>
105
105
  }
106
106
  </span>
107
107
  }
@@ -6,7 +6,7 @@ import { BrnFormFieldControl } from '@spartan-ng/brain/form-field';
6
6
 
7
7
  class HlmError {
8
8
  userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
9
- _computedClass = computed(() => hlm('tw:text-destructive tw:block tw:text-sm tw:font-medium', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
9
+ _computedClass = computed(() => hlm('text-destructive block text-sm font-medium', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
10
10
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: HlmError, deps: [], target: i0.ɵɵFactoryTarget.Directive });
11
11
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.1", type: HlmError, isStandalone: true, selector: "hlm-error", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, ngImport: i0 });
12
12
  }
@@ -22,7 +22,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
22
22
 
23
23
  class HlmFormField {
24
24
  userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
25
- _computedClass = computed(() => hlm('tw:block tw:space-y-2', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
25
+ _computedClass = computed(() => hlm('block space-y-2', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
26
26
  control = contentChild(BrnFormFieldControl, ...(ngDevMode ? [{ debugName: "control" }] : []));
27
27
  errorChildren = contentChildren(HlmError, ...(ngDevMode ? [{ debugName: "errorChildren" }] : []));
28
28
  _hasDisplayedMessage = computed(() => this.errorChildren() && this.errorChildren().length > 0 && this.control()?.errorState() ? 'error' : 'hint', ...(ngDevMode ? [{ debugName: "_hasDisplayedMessage" }] : []));
@@ -73,7 +73,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
73
73
 
74
74
  class HlmHint {
75
75
  userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
76
- _computedClass = computed(() => hlm('tw:text-muted-foreground tw:block tw:text-sm', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
76
+ _computedClass = computed(() => hlm('text-muted-foreground block text-sm', this.userClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
77
77
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: HlmHint, deps: [], target: i0.ɵɵFactoryTarget.Directive });
78
78
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.1", type: HlmHint, isStandalone: true, selector: "hlm-hint", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, ngImport: i0 });
79
79
  }
@@ -0,0 +1,64 @@
1
+ # FormSearchableMultiselect
2
+
3
+ This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 20.3.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Angular CLI includes powerful code scaffolding tools. To generate a new component, run:
8
+
9
+ ```bash
10
+ ng generate component component-name
11
+ ```
12
+
13
+ For a complete list of available schematics (such as `components`, `directives`, or `pipes`), run:
14
+
15
+ ```bash
16
+ ng generate --help
17
+ ```
18
+
19
+ ## Building
20
+
21
+ To build the library, run:
22
+
23
+ ```bash
24
+ ng build form-searchable-multiselect
25
+ ```
26
+
27
+ This command will compile your project, and the build artifacts will be placed in the `dist/` directory.
28
+
29
+ ### Publishing the Library
30
+
31
+ Once the project is built, you can publish your library by following these steps:
32
+
33
+ 1. Navigate to the `dist` directory:
34
+
35
+ ```bash
36
+ cd dist/form-searchable-multiselect
37
+ ```
38
+
39
+ 2. Run the `npm publish` command to publish your library to the npm registry:
40
+ ```bash
41
+ npm publish
42
+ ```
43
+
44
+ ## Running unit tests
45
+
46
+ To execute unit tests with the [Karma](https://karma-runner.github.io) test runner, use the following command:
47
+
48
+ ```bash
49
+ ng test
50
+ ```
51
+
52
+ ## Running end-to-end tests
53
+
54
+ For end-to-end (e2e) testing, run:
55
+
56
+ ```bash
57
+ ng e2e
58
+ ```
59
+
60
+ Angular CLI does not come with an end-to-end testing framework by default. You can choose one that suits your needs.
61
+
62
+ ## Additional Resources
63
+
64
+ For more information on using the Angular CLI, including detailed command references, visit the [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli) page.
@@ -0,0 +1,124 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, computed, Component } from '@angular/core';
3
+ import * as i1 from '@angular/forms';
4
+ import { ReactiveFormsModule, FormGroupDirective, ControlContainer } from '@angular/forms';
5
+ import { HlmFormField, HlmError, HlmHint } from '@egose/shadcn-theme-ng/form-field';
6
+ import { HlmLabel } from '@egose/shadcn-theme-ng/label';
7
+ import { hlm } from '@egose/shadcn-theme-ng/utils';
8
+ import { EgSearchableMultiselect } from '@egose/shadcn-theme-ng/searchable-multiselect';
9
+
10
+ class EgFormSearchableMultiselect {
11
+ // Form field inputs
12
+ label = input(undefined, ...(ngDevMode ? [{ debugName: "label" }] : []));
13
+ controlName = input('', ...(ngDevMode ? [{ debugName: "controlName" }] : [])); // required for form binding
14
+ error = input(undefined, ...(ngDevMode ? [{ debugName: "error" }] : []));
15
+ hint = input(undefined, ...(ngDevMode ? [{ debugName: "hint" }] : []));
16
+ // HTML/control attributes
17
+ placeholder = input('Start typing to add…', ...(ngDevMode ? [{ debugName: "placeholder" }] : []));
18
+ disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
19
+ required = input(false, ...(ngDevMode ? [{ debugName: "required" }] : []));
20
+ // Multiselect-specific
21
+ options = input([], ...(ngDevMode ? [{ debugName: "options" }] : [])); // [{ label, value }]
22
+ // Styling classes
23
+ userClass = input('', ...(ngDevMode ? [{ debugName: "userClass", alias: 'class' }] : [{ alias: 'class' }]));
24
+ labelClass = input('', ...(ngDevMode ? [{ debugName: "labelClass" }] : []));
25
+ controlClass = input('', ...(ngDevMode ? [{ debugName: "controlClass" }] : [])); // for EgMultiselectAutocomplete
26
+ errorClass = input('', ...(ngDevMode ? [{ debugName: "errorClass" }] : []));
27
+ hintClass = input('', ...(ngDevMode ? [{ debugName: "hintClass" }] : []));
28
+ // Computed class names
29
+ $userClass = computed(() => hlm('flex flex-col', this.userClass()), ...(ngDevMode ? [{ debugName: "$userClass" }] : []));
30
+ $labelClass = computed(() => hlm('mb-1 gap-0', this.labelClass()), ...(ngDevMode ? [{ debugName: "$labelClass" }] : []));
31
+ $controlClass = computed(() => hlm('w-full', this.controlClass()), ...(ngDevMode ? [{ debugName: "$controlClass" }] : []));
32
+ $errorClass = computed(() => hlm('mt-0', this.errorClass()), ...(ngDevMode ? [{ debugName: "$errorClass" }] : []));
33
+ $hintClass = computed(() => hlm('mt-0', this.hintClass()), ...(ngDevMode ? [{ debugName: "$hintClass" }] : []));
34
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: EgFormSearchableMultiselect, deps: [], target: i0.ɵɵFactoryTarget.Component });
35
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: EgFormSearchableMultiselect, isStandalone: true, selector: "eg-form-searchable-multiselect", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, controlName: { classPropertyName: "controlName", publicName: "controlName", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, labelClass: { classPropertyName: "labelClass", publicName: "labelClass", isSignal: true, isRequired: false, transformFunction: null }, controlClass: { classPropertyName: "controlClass", publicName: "controlClass", isSignal: true, isRequired: false, transformFunction: null }, errorClass: { classPropertyName: "errorClass", publicName: "errorClass", isSignal: true, isRequired: false, transformFunction: null }, hintClass: { classPropertyName: "hintClass", publicName: "hintClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "w-full" }, providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }], ngImport: i0, template: `
36
+ @let lbl = label(); @let nm = controlName(); @let err = error(); @let hnt = hint(); @let rqrd = required();
37
+
38
+ <hlm-form-field>
39
+ @if (lbl) {
40
+ <span hlmLabel [class]="$labelClass()">
41
+ {{ lbl }}
42
+ @if (rqrd) {
43
+ <span class="text-red-500">*</span>
44
+ }
45
+ </span>
46
+ }
47
+
48
+ <eg-searchable-multiselect
49
+ [options]="options()"
50
+ [placeholder]="placeholder()"
51
+ [formControlName]="nm"
52
+ [disabled]="disabled()"
53
+ [required]="rqrd"
54
+ [class]="$controlClass()"
55
+ ></eg-searchable-multiselect>
56
+
57
+ @if (err) {
58
+ <hlm-error [class]="$errorClass()">
59
+ {{ err }}
60
+ </hlm-error>
61
+ } @if (hnt) {
62
+ <hlm-hint [class]="$hintClass()">
63
+ {{ hnt }}
64
+ </hlm-hint>
65
+ }
66
+ </hlm-form-field>
67
+ `, isInline: true, dependencies: [{ 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: HlmFormField, selector: "hlm-form-field", inputs: ["class"] }, { kind: "directive", type: HlmError, selector: "hlm-error", inputs: ["class"] }, { kind: "directive", type: HlmHint, selector: "hlm-hint", inputs: ["class"] }, { kind: "directive", type: HlmLabel, selector: "[hlmLabel]", inputs: ["class"] }, { kind: "component", type: EgSearchableMultiselect, selector: "eg-searchable-multiselect", inputs: ["options", "placeholder", "value"], outputs: ["valueChange"] }] });
68
+ }
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: EgFormSearchableMultiselect, decorators: [{
70
+ type: Component,
71
+ args: [{
72
+ selector: 'eg-form-searchable-multiselect',
73
+ standalone: true,
74
+ host: {
75
+ class: 'w-full',
76
+ },
77
+ imports: [ReactiveFormsModule, HlmFormField, HlmError, HlmHint, HlmLabel, EgSearchableMultiselect],
78
+ providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }],
79
+ template: `
80
+ @let lbl = label(); @let nm = controlName(); @let err = error(); @let hnt = hint(); @let rqrd = required();
81
+
82
+ <hlm-form-field>
83
+ @if (lbl) {
84
+ <span hlmLabel [class]="$labelClass()">
85
+ {{ lbl }}
86
+ @if (rqrd) {
87
+ <span class="text-red-500">*</span>
88
+ }
89
+ </span>
90
+ }
91
+
92
+ <eg-searchable-multiselect
93
+ [options]="options()"
94
+ [placeholder]="placeholder()"
95
+ [formControlName]="nm"
96
+ [disabled]="disabled()"
97
+ [required]="rqrd"
98
+ [class]="$controlClass()"
99
+ ></eg-searchable-multiselect>
100
+
101
+ @if (err) {
102
+ <hlm-error [class]="$errorClass()">
103
+ {{ err }}
104
+ </hlm-error>
105
+ } @if (hnt) {
106
+ <hlm-hint [class]="$hintClass()">
107
+ {{ hnt }}
108
+ </hlm-hint>
109
+ }
110
+ </hlm-form-field>
111
+ `,
112
+ }]
113
+ }] });
114
+
115
+ /*
116
+ * Public API Surface of form-searchable-multiselect
117
+ */
118
+
119
+ /**
120
+ * Generated bundle index. Do not edit.
121
+ */
122
+
123
+ export { EgFormSearchableMultiselect };
124
+ //# sourceMappingURL=form-searchable-multiselect.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-searchable-multiselect.mjs","sources":["../../../projects/form-searchable-multiselect/src/lib/form-searchable-multiselect.ts","../../../projects/form-searchable-multiselect/src/public-api.ts","../../../projects/form-searchable-multiselect/src/form-searchable-multiselect.ts"],"sourcesContent":["import { Component, computed, input } from '@angular/core';\nimport { ControlContainer, FormGroupDirective, ReactiveFormsModule } from '@angular/forms';\nimport { HlmFormField, HlmError, HlmHint } from '@egose/shadcn-theme-ng/form-field';\nimport { HlmLabel } from '@egose/shadcn-theme-ng/label';\nimport { hlm } from '@egose/shadcn-theme-ng/utils';\nimport { ClassValue } from 'clsx';\nimport { EgSearchableMultiselect, SelectOption } from '@egose/shadcn-theme-ng/searchable-multiselect';\n\n@Component({\n selector: 'eg-form-searchable-multiselect',\n standalone: true,\n host: {\n class: 'tw:w-full',\n },\n imports: [ReactiveFormsModule, HlmFormField, HlmError, HlmHint, HlmLabel, EgSearchableMultiselect],\n providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }],\n template: `\n @let lbl = label(); @let nm = controlName(); @let err = error(); @let hnt = hint(); @let rqrd = required();\n\n <hlm-form-field>\n @if (lbl) {\n <span hlmLabel [class]=\"$labelClass()\">\n {{ lbl }}\n @if (rqrd) {\n <span class=\"tw:text-red-500\">*</span>\n }\n </span>\n }\n\n <eg-searchable-multiselect\n [options]=\"options()\"\n [placeholder]=\"placeholder()\"\n [formControlName]=\"nm\"\n [disabled]=\"disabled()\"\n [required]=\"rqrd\"\n [class]=\"$controlClass()\"\n ></eg-searchable-multiselect>\n\n @if (err) {\n <hlm-error [class]=\"$errorClass()\">\n {{ err }}\n </hlm-error>\n } @if (hnt) {\n <hlm-hint [class]=\"$hintClass()\">\n {{ hnt }}\n </hlm-hint>\n }\n </hlm-form-field>\n `,\n})\nexport class EgFormSearchableMultiselect {\n // Form field inputs\n label = input<string | undefined>(undefined);\n controlName = input<string>(''); // required for form binding\n error = input<string | undefined>(undefined);\n hint = input<string | undefined>(undefined);\n\n // HTML/control attributes\n placeholder = input<string>('Start typing to add…');\n disabled = input<boolean>(false);\n required = input<boolean>(false);\n\n // Multiselect-specific\n options = input<SelectOption[]>([]); // [{ label, value }]\n\n // Styling classes\n userClass = input<ClassValue>('', { alias: 'class' });\n labelClass = input<string>('');\n controlClass = input<string>(''); // for EgMultiselectAutocomplete\n errorClass = input<string>('');\n hintClass = input<string>('');\n\n // Computed class names\n $userClass = computed(() => hlm('tw:flex tw:flex-col', this.userClass()));\n $labelClass = computed(() => hlm('tw:mb-1 tw:gap-0', this.labelClass()));\n $controlClass = computed(() => hlm('tw:w-full', this.controlClass()));\n $errorClass = computed(() => hlm('tw:mt-0', this.errorClass()));\n $hintClass = computed(() => hlm('tw:mt-0', this.hintClass()));\n}\n","/*\n * Public API Surface of form-searchable-multiselect\n */\n\nexport * from './lib/form-searchable-multiselect';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { ClassValue } from 'clsx';
3
+ import { SelectOption } from '@egose/shadcn-theme-ng/searchable-multiselect';
4
+
5
+ declare class EgFormSearchableMultiselect {
6
+ label: _angular_core.InputSignal<string | undefined>;
7
+ controlName: _angular_core.InputSignal<string>;
8
+ error: _angular_core.InputSignal<string | undefined>;
9
+ hint: _angular_core.InputSignal<string | undefined>;
10
+ placeholder: _angular_core.InputSignal<string>;
11
+ disabled: _angular_core.InputSignal<boolean>;
12
+ required: _angular_core.InputSignal<boolean>;
13
+ options: _angular_core.InputSignal<SelectOption[]>;
14
+ userClass: _angular_core.InputSignal<ClassValue>;
15
+ labelClass: _angular_core.InputSignal<string>;
16
+ controlClass: _angular_core.InputSignal<string>;
17
+ errorClass: _angular_core.InputSignal<string>;
18
+ hintClass: _angular_core.InputSignal<string>;
19
+ $userClass: _angular_core.Signal<string>;
20
+ $labelClass: _angular_core.Signal<string>;
21
+ $controlClass: _angular_core.Signal<string>;
22
+ $errorClass: _angular_core.Signal<string>;
23
+ $hintClass: _angular_core.Signal<string>;
24
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<EgFormSearchableMultiselect, never>;
25
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EgFormSearchableMultiselect, "eg-form-searchable-multiselect", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "controlName": { "alias": "controlName"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "userClass": { "alias": "class"; "required": false; "isSignal": true; }; "labelClass": { "alias": "labelClass"; "required": false; "isSignal": true; }; "controlClass": { "alias": "controlClass"; "required": false; "isSignal": true; }; "errorClass": { "alias": "errorClass"; "required": false; "isSignal": true; }; "hintClass": { "alias": "hintClass"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
26
+ }
27
+
28
+ export { EgFormSearchableMultiselect };
@@ -30,13 +30,13 @@ class EgFormSelect {
30
30
  errorClass = input('', ...(ngDevMode ? [{ debugName: "errorClass" }] : []));
31
31
  hintClass = input('', ...(ngDevMode ? [{ debugName: "hintClass" }] : []));
32
32
  // Computed classes
33
- $userClass = computed(() => hlm('tw:flex tw:flex-col', this.userClass()), ...(ngDevMode ? [{ debugName: "$userClass" }] : []));
34
- $labelClass = computed(() => hlm('tw:mb-1 tw:gap-0', this.labelClass()), ...(ngDevMode ? [{ debugName: "$labelClass" }] : []));
35
- $selectClass = computed(() => hlm('tw:w-full', this.selectClass()), ...(ngDevMode ? [{ debugName: "$selectClass" }] : []));
36
- $errorClass = computed(() => hlm('tw:mt-0', this.errorClass()), ...(ngDevMode ? [{ debugName: "$errorClass" }] : []));
37
- $hintClass = computed(() => hlm('tw:mt-0', this.hintClass()), ...(ngDevMode ? [{ debugName: "$hintClass" }] : []));
33
+ $userClass = computed(() => hlm('flex flex-col', this.userClass()), ...(ngDevMode ? [{ debugName: "$userClass" }] : []));
34
+ $labelClass = computed(() => hlm('mb-1 gap-0', this.labelClass()), ...(ngDevMode ? [{ debugName: "$labelClass" }] : []));
35
+ $selectClass = computed(() => hlm('w-full', this.selectClass()), ...(ngDevMode ? [{ debugName: "$selectClass" }] : []));
36
+ $errorClass = computed(() => hlm('mt-0', this.errorClass()), ...(ngDevMode ? [{ debugName: "$errorClass" }] : []));
37
+ $hintClass = computed(() => hlm('mt-0', this.hintClass()), ...(ngDevMode ? [{ debugName: "$hintClass" }] : []));
38
38
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: EgFormSelect, deps: [], target: i0.ɵɵFactoryTarget.Component });
39
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: EgFormSelect, isStandalone: true, selector: "eg-form-select", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, controlName: { classPropertyName: "controlName", publicName: "controlName", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, optionsLabel: { classPropertyName: "optionsLabel", publicName: "optionsLabel", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, labelClass: { classPropertyName: "labelClass", publicName: "labelClass", isSignal: true, isRequired: false, transformFunction: null }, selectClass: { classPropertyName: "selectClass", publicName: "selectClass", isSignal: true, isRequired: false, transformFunction: null }, errorClass: { classPropertyName: "errorClass", publicName: "errorClass", isSignal: true, isRequired: false, transformFunction: null }, hintClass: { classPropertyName: "hintClass", publicName: "hintClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "tw:w-full" }, providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }], ngImport: i0, template: `
39
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: EgFormSelect, isStandalone: true, selector: "eg-form-select", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, controlName: { classPropertyName: "controlName", publicName: "controlName", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, optionsLabel: { classPropertyName: "optionsLabel", publicName: "optionsLabel", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, labelClass: { classPropertyName: "labelClass", publicName: "labelClass", isSignal: true, isRequired: false, transformFunction: null }, selectClass: { classPropertyName: "selectClass", publicName: "selectClass", isSignal: true, isRequired: false, transformFunction: null }, errorClass: { classPropertyName: "errorClass", publicName: "errorClass", isSignal: true, isRequired: false, transformFunction: null }, hintClass: { classPropertyName: "hintClass", publicName: "hintClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "w-full" }, providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }], ngImport: i0, template: `
40
40
  @let lbl = label();
41
41
  @let nm = controlName();
42
42
  @let err = error();
@@ -47,7 +47,7 @@ class EgFormSelect {
47
47
  @if (lbl) {
48
48
  <span hlmLabel [class]="$labelClass()">{{ lbl }}
49
49
  @if (rqrd) {
50
- <span class="tw:text-red-500">*</span>
50
+ <span class="text-red-500">*</span>
51
51
  }
52
52
  </span>
53
53
  }
@@ -94,7 +94,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
94
94
  selector: 'eg-form-select',
95
95
  standalone: true,
96
96
  host: {
97
- class: 'tw:w-full',
97
+ class: 'w-full',
98
98
  },
99
99
  imports: [ReactiveFormsModule, HlmFormField, HlmError, HlmHint, HlmLabel, BrnSelectImports, HlmSelectImports],
100
100
  providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }],
@@ -110,7 +110,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
110
110
  @if (lbl) {
111
111
  <span hlmLabel [class]="$labelClass()">{{ lbl }}
112
112
  @if (rqrd) {
113
- <span class="tw:text-red-500">*</span>
113
+ <span class="text-red-500">*</span>
114
114
  }
115
115
  </span>
116
116
  }
@@ -66,13 +66,13 @@ class EgFormTextInput {
66
66
  errorClass = input('', ...(ngDevMode ? [{ debugName: "errorClass" }] : []));
67
67
  hintClass = input('', ...(ngDevMode ? [{ debugName: "hintClass" }] : []));
68
68
  // Computed class bindings
69
- $userClass = computed(() => hlm('tw:flex tw:flex-col', this.userClass()), ...(ngDevMode ? [{ debugName: "$userClass" }] : []));
70
- $labelClass = computed(() => hlm('tw:mb-1 tw:gap-0', this.labelClass()), ...(ngDevMode ? [{ debugName: "$labelClass" }] : []));
71
- $inputClass = computed(() => hlm('tw:mb-1', this.inputClass()), ...(ngDevMode ? [{ debugName: "$inputClass" }] : []));
72
- $errorClass = computed(() => hlm('tw:mt-0', this.errorClass()), ...(ngDevMode ? [{ debugName: "$errorClass" }] : []));
73
- $hintClass = computed(() => hlm('tw:mt-0', this.hintClass()), ...(ngDevMode ? [{ debugName: "$hintClass" }] : []));
69
+ $userClass = computed(() => hlm('flex flex-col', this.userClass()), ...(ngDevMode ? [{ debugName: "$userClass" }] : []));
70
+ $labelClass = computed(() => hlm('mb-1 gap-0', this.labelClass()), ...(ngDevMode ? [{ debugName: "$labelClass" }] : []));
71
+ $inputClass = computed(() => hlm('mb-1', this.inputClass()), ...(ngDevMode ? [{ debugName: "$inputClass" }] : []));
72
+ $errorClass = computed(() => hlm('mt-0', this.errorClass()), ...(ngDevMode ? [{ debugName: "$errorClass" }] : []));
73
+ $hintClass = computed(() => hlm('mt-0', this.hintClass()), ...(ngDevMode ? [{ debugName: "$hintClass" }] : []));
74
74
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: EgFormTextInput, deps: [], target: i0.ɵɵFactoryTarget.Component });
75
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: EgFormTextInput, isStandalone: true, selector: "eg-form-text-input", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, controlName: { classPropertyName: "controlName", publicName: "controlName", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, minlength: { classPropertyName: "minlength", publicName: "minlength", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: "autocomplete", publicName: "autocomplete", isSignal: true, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, labelClass: { classPropertyName: "labelClass", publicName: "labelClass", isSignal: true, isRequired: false, transformFunction: null }, inputClass: { classPropertyName: "inputClass", publicName: "inputClass", isSignal: true, isRequired: false, transformFunction: null }, errorClass: { classPropertyName: "errorClass", publicName: "errorClass", isSignal: true, isRequired: false, transformFunction: null }, hintClass: { classPropertyName: "hintClass", publicName: "hintClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "tw:w-full" }, providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }], ngImport: i0, template: `
75
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.1", type: EgFormTextInput, isStandalone: true, selector: "eg-form-text-input", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, controlName: { classPropertyName: "controlName", publicName: "controlName", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, minlength: { classPropertyName: "minlength", publicName: "minlength", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, autocomplete: { classPropertyName: "autocomplete", publicName: "autocomplete", isSignal: true, isRequired: false, transformFunction: null }, autofocus: { classPropertyName: "autofocus", publicName: "autofocus", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, labelClass: { classPropertyName: "labelClass", publicName: "labelClass", isSignal: true, isRequired: false, transformFunction: null }, inputClass: { classPropertyName: "inputClass", publicName: "inputClass", isSignal: true, isRequired: false, transformFunction: null }, errorClass: { classPropertyName: "errorClass", publicName: "errorClass", isSignal: true, isRequired: false, transformFunction: null }, hintClass: { classPropertyName: "hintClass", publicName: "hintClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "w-full" }, providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }], ngImport: i0, template: `
76
76
  @let lbl = label();
77
77
  @let nm = controlName();
78
78
  @let err = error();
@@ -83,7 +83,7 @@ class EgFormTextInput {
83
83
  @if (lbl) {
84
84
  <span hlmLabel [class]="$labelClass()">{{ lbl }}
85
85
  @if (rqrd) {
86
- <span class="tw:text-red-500">*</span>
86
+ <span class="text-red-500">*</span>
87
87
  }
88
88
  </span>
89
89
  }
@@ -128,7 +128,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
128
128
  selector: 'eg-form-text-input',
129
129
  standalone: true,
130
130
  host: {
131
- class: 'tw:w-full',
131
+ class: 'w-full',
132
132
  },
133
133
  imports: [ReactiveFormsModule, HlmFormField, HlmError, HlmHint, HlmLabel, HlmInput],
134
134
  providers: [{ provide: ControlContainer, useExisting: FormGroupDirective }],
@@ -144,7 +144,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImpor
144
144
  @if (lbl) {
145
145
  <span hlmLabel [class]="$labelClass()">{{ lbl }}
146
146
  @if (rqrd) {
147
- <span class="tw:text-red-500">*</span>
147
+ <span class="text-red-500">*</span>
148
148
  }
149
149
  </span>
150
150
  }