@luzmo/analytics-components-kit 1.3.0 → 1.4.0

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 (118) hide show
  1. package/README.md +6 -3
  2. package/angular/components/add-to-dashboard.ts +20 -6
  3. package/angular/components/data-fields-select.ts +5 -0
  4. package/angular/components/interactive-viz-item.ts +87 -22
  5. package/angular/components/item-grid-item-actions-menu.ts +5 -0
  6. package/angular/components/item-grid.ts +7 -0
  7. package/angular/components/item-option-color-picker.ts +28 -28
  8. package/angular/components/item-option-guidelines.ts +22 -1
  9. package/angular/components/item-option-multi-language-field.ts +7 -7
  10. package/angular/components/item-option-number-field.ts +14 -14
  11. package/angular/components/item-option-positions-number-field.ts +14 -14
  12. package/angular/components/item-option-radio-button-group.ts +7 -7
  13. package/angular/components/item-option-text-field.ts +7 -7
  14. package/angular/components/item-slot-picker-panel.ts +1 -1
  15. package/angular/components/item-slot-picker.ts +7 -7
  16. package/angular/esm/components/add-to-dashboard.d.ts +8 -4
  17. package/angular/esm/components/add-to-dashboard.js +23 -7
  18. package/angular/esm/components/data-fields-select.d.ts +2 -0
  19. package/angular/esm/components/data-fields-select.js +4 -0
  20. package/angular/esm/components/interactive-viz-item.d.ts +30 -9
  21. package/angular/esm/components/interactive-viz-item.js +98 -27
  22. package/angular/esm/components/item-grid-item-actions-menu.d.ts +2 -0
  23. package/angular/esm/components/item-grid-item-actions-menu.js +4 -0
  24. package/angular/esm/components/item-grid.d.ts +3 -1
  25. package/angular/esm/components/item-grid.js +9 -1
  26. package/angular/esm/components/item-option-color-picker.d.ts +10 -10
  27. package/angular/esm/components/item-option-color-picker.js +34 -34
  28. package/angular/esm/components/item-option-guidelines.d.ts +8 -2
  29. package/angular/esm/components/item-option-guidelines.js +26 -2
  30. package/angular/esm/components/item-option-multi-language-field.d.ts +3 -3
  31. package/angular/esm/components/item-option-multi-language-field.js +10 -10
  32. package/angular/esm/components/item-option-number-field.d.ts +5 -5
  33. package/angular/esm/components/item-option-number-field.js +18 -18
  34. package/angular/esm/components/item-option-positions-number-field.d.ts +5 -5
  35. package/angular/esm/components/item-option-positions-number-field.js +18 -18
  36. package/angular/esm/components/item-option-radio-button-group.d.ts +3 -3
  37. package/angular/esm/components/item-option-radio-button-group.js +10 -10
  38. package/angular/esm/components/item-option-text-field.d.ts +3 -3
  39. package/angular/esm/components/item-option-text-field.js +10 -10
  40. package/angular/esm/components/item-slot-picker-panel.d.ts +1 -1
  41. package/angular/esm/components/item-slot-picker-panel.js +1 -1
  42. package/angular/esm/components/item-slot-picker.d.ts +3 -3
  43. package/angular/esm/components/item-slot-picker.js +9 -9
  44. package/angular/package.json +2 -2
  45. package/components/add-to-dashboard/dashboard-actions.d.ts +2 -1
  46. package/components/add-to-dashboard/index.cjs +1 -1
  47. package/components/add-to-dashboard/index.js +1 -1
  48. package/components/{add-to-dashboard-CzIuDtAq.cjs → add-to-dashboard-BtzTZdjN.cjs} +1 -1
  49. package/components/{add-to-dashboard-DGC0_hRB.js → add-to-dashboard-Bu6S3qVz.js} +125 -120
  50. package/components/chart-helpers-BHxQbLBw.cjs +20 -0
  51. package/components/{chart-helpers-Cbl3sRra.js → chart-helpers-BKeMLhov.js} +51 -38
  52. package/components/filters/index.cjs +1 -1
  53. package/components/filters/index.js +1 -1
  54. package/components/{filters-CxIzuI5q.js → filters-DEpmh9Nj.js} +113 -102
  55. package/components/filters-LDXhe1Bp.cjs +187 -0
  56. package/components/index.cjs +1 -1
  57. package/components/index.js +6 -6
  58. package/components/interactive-viz-item/helpers/chart-helpers.d.ts +2 -1
  59. package/components/interactive-viz-item/index.cjs +1 -1
  60. package/components/interactive-viz-item/index.js +3 -3
  61. package/components/interactive-viz-item/interactive-viz-item.d.ts +44 -0
  62. package/components/{interactive-viz-item-BKLOmawA.js → interactive-viz-item-Cc3Ix95e.js} +151 -110
  63. package/components/interactive-viz-item-SF12d97t.cjs +269 -0
  64. package/components/item-grid/item-grid.d.ts +1 -0
  65. package/components/item-slot-picker-panel/index.cjs +1 -1
  66. package/components/item-slot-picker-panel/index.js +1 -1
  67. package/components/item-slot-picker-panel/item-slot-picker-panel.d.ts +19 -1
  68. package/components/item-slot-picker-panel-Cw3UCK03.cjs +84 -0
  69. package/components/{item-slot-picker-panel-fJqEmxeD.js → item-slot-picker-panel-DprM9Rli.js} +64 -33
  70. package/custom-elements.json +3044 -2532
  71. package/grid-core/item-grid-base.d.ts +5 -4
  72. package/package.json +1 -1
  73. package/react/package.json +2 -2
  74. package/standalone/add-to-dashboard.js +1 -1
  75. package/standalone/chunks/{chart-helpers-CR-EUEPf.js → chart-helpers-DZsidiCl.js} +1 -1
  76. package/standalone/chunks/data-broker-DpSrH3IP.js +2 -0
  77. package/standalone/chunks/{display-settings-binning-BeLLxd3i.js → display-settings-binning-DhHlclWH.js} +1 -1
  78. package/standalone/chunks/{display-settings-datetime-BkeiKIVV.js → display-settings-datetime-C8xvOvi4.js} +1 -1
  79. package/standalone/chunks/{display-settings-grand-totals-BuhpQKJ6.js → display-settings-grand-totals-CUpigDcs.js} +1 -1
  80. package/standalone/chunks/{display-settings-numeric-m30IYI7I.js → display-settings-numeric-BLWF54Jx.js} +1 -1
  81. package/standalone/chunks/{display-settings-period-over-period-CqDlOSRn.js → display-settings-period-over-period-COd4tvUw.js} +1 -1
  82. package/standalone/chunks/en-DNsyAwgq.js +2 -0
  83. package/standalone/chunks/en-GB-Di3OzVdL.js +2 -0
  84. package/standalone/chunks/en-US-DNsyAwgq.js +2 -0
  85. package/standalone/chunks/{filters-CxgBXUF1.js → filters-lhg_WVDK.js} +72 -72
  86. package/standalone/chunks/{formula-codemirror-Cq94j3-f.js → formula-codemirror-DZMzLE2I.js} +1 -1
  87. package/standalone/chunks/{item-option-action-button-group-BoyqF9vt.js → item-option-action-button-group-Bl1HR1JK.js} +1 -1
  88. package/standalone/chunks/{item-option-base-CBcDT8MX.js → item-option-base-DF24wTyv.js} +1 -1
  89. package/standalone/chunks/{item-option-color-palette-picker-C9PGAv4V.js → item-option-color-palette-picker-MkIIn56p.js} +1 -1
  90. package/standalone/chunks/{item-option-color-picker-D4fVJlqF.js → item-option-color-picker-CxosMo_p.js} +1 -1
  91. package/standalone/chunks/{item-option-color-range-BlAdTguE.js → item-option-color-range-C7C70r4J.js} +1 -1
  92. package/standalone/chunks/{item-option-guidelines-DMsYsHDu.js → item-option-guidelines-iu8yWRzr.js} +1 -1
  93. package/standalone/chunks/{item-option-multi-language-field-NUbm1drg.js → item-option-multi-language-field-foanqCdr.js} +1 -1
  94. package/standalone/chunks/{item-option-number-field-DRp7kbHL.js → item-option-number-field-ByVD4oq0.js} +1 -1
  95. package/standalone/chunks/{item-option-panel-cXrRclzM.js → item-option-panel-Bya-K7HH.js} +2 -2
  96. package/standalone/chunks/{item-option-picker-Ba09L4Cs.js → item-option-picker-CqNNVIML.js} +1 -1
  97. package/standalone/chunks/{item-option-position-picker-GEGTnhjw.js → item-option-position-picker-BjCFVtDH.js} +1 -1
  98. package/standalone/chunks/{item-option-positions-number-field-n44s1k5v.js → item-option-positions-number-field-BJJtXZL-.js} +1 -1
  99. package/standalone/chunks/{item-option-radio-button-group-3s_b1NvR.js → item-option-radio-button-group-C5bxsD85.js} +1 -1
  100. package/standalone/chunks/{item-option-slider-DtY65Gxk.js → item-option-slider-DUXWz70B.js} +1 -1
  101. package/standalone/chunks/{item-option-switch-4sJaI0mx.js → item-option-switch-BHyJuOkP.js} +1 -1
  102. package/standalone/chunks/{item-option-text-field-Bt6Lj6kh.js → item-option-text-field-rBZY9OX4.js} +1 -1
  103. package/standalone/chunks/{item-slot-picker-panel-BOSVFBIy.js → item-slot-picker-panel-BM82vSXi.js} +74 -72
  104. package/standalone/chunks/load-data-fields-for-datasets-DS9O1oyy.js +25 -0
  105. package/standalone/chunks/localize-DLl7tgQp.js +2 -0
  106. package/standalone/interactive-viz-item.js +54 -53
  107. package/standalone/manifest.json +31 -31
  108. package/types.d.ts +1 -1
  109. package/components/chart-helpers-fMnqHRzC.cjs +0 -20
  110. package/components/filters-BPbPFOu5.cjs +0 -187
  111. package/components/interactive-viz-item-ojdH1uk0.cjs +0 -268
  112. package/components/item-slot-picker-panel-BhhN54IM.cjs +0 -82
  113. package/standalone/chunks/data-broker-DXDyIrj_.js +0 -2
  114. package/standalone/chunks/en-63f7j4v7.js +0 -2
  115. package/standalone/chunks/en-GB-QAmXQf8W.js +0 -2
  116. package/standalone/chunks/en-US-63f7j4v7.js +0 -2
  117. package/standalone/chunks/load-data-fields-for-datasets-CDlut-6S.js +0 -25
  118. package/standalone/chunks/localize-DXRmGRe-.js +0 -2
@@ -55,6 +55,8 @@ export class LuzmoItemGrid {
55
55
  itemStates;
56
56
  /** Seed value for uncontrolled mode. The component manages state internally from this starting point. Ignored if `itemStates` is set. Only one item with one active action is supported. If multiple items or actions are provided, a warning is emitted and only the first item with its first action is applied. Use controlled mode (`itemStates`) for multiple simultaneous active items. */
57
57
  initialItemStates;
58
+ /** Renders an item whose type has no renderer registered with `registerRenderer`. */
59
+ defaultRenderer;
58
60
  /** Fired when an item action is performed */
59
61
  luzmoItemGridItemAction = output({ alias: 'luzmoItemGridItemAction' });
60
62
  /** Bubbles from the item actions menu when the pointer enters an action. The detail has only `action` and `type`, not the item. */
@@ -136,6 +138,9 @@ export class LuzmoItemGrid {
136
138
  case 'initialItemStates':
137
139
  this.setHostProperty('initialItemStates', changes['initialItemStates'].currentValue);
138
140
  break;
141
+ case 'defaultRenderer':
142
+ this.setHostProperty('defaultRenderer', changes['defaultRenderer'].currentValue);
143
+ break;
139
144
  default:
140
145
  break;
141
146
  }
@@ -173,7 +178,7 @@ export class LuzmoItemGrid {
173
178
  }));
174
179
  }
175
180
  static ɵfac = function LuzmoItemGrid_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoItemGrid)(); };
176
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemGrid, selectors: [["luzmo-item-grid"]], inputs: { appServer: "appServer", apiHost: "apiHost", authKey: "authKey", authToken: "authToken", cacheTime: "cacheTime", language: "language", contentLanguage: "contentLanguage", columns: "columns", rowHeight: "rowHeight", viewMode: [2, "viewMode", "viewMode", booleanAttribute], itemActionsDocumentPopover: [2, "itemActionsDocumentPopover", "itemActionsDocumentPopover", booleanAttribute], placementItemActionsMenu: "placementItemActionsMenu", defaultItemActionsMenu: "defaultItemActionsMenu", clonedItemPositioning: "clonedItemPositioning", theme: "theme", items: "items", initialItems: "initialItems", renderers: "renderers", itemStates: "itemStates", initialItemStates: "initialItemStates" }, outputs: { luzmoItemGridItemAction: "luzmoItemGridItemAction", luzmoItemGridItemActionHover: "luzmoItemGridItemActionHover", luzmoItemGridLayoutChanged: "luzmoItemGridLayoutChanged", luzmoItemGridReady: "luzmoItemGridReady", luzmoItemGridItemStatesChanged: "luzmoItemGridItemStatesChanged" }, exportAs: ["luzmoItemGrid"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemGrid_Template(rf, ctx) { if (rf & 1) {
181
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemGrid, selectors: [["luzmo-item-grid"]], inputs: { appServer: "appServer", apiHost: "apiHost", authKey: "authKey", authToken: "authToken", cacheTime: "cacheTime", language: "language", contentLanguage: "contentLanguage", columns: "columns", rowHeight: "rowHeight", viewMode: [2, "viewMode", "viewMode", booleanAttribute], itemActionsDocumentPopover: [2, "itemActionsDocumentPopover", "itemActionsDocumentPopover", booleanAttribute], placementItemActionsMenu: "placementItemActionsMenu", defaultItemActionsMenu: "defaultItemActionsMenu", clonedItemPositioning: "clonedItemPositioning", theme: "theme", items: "items", initialItems: "initialItems", renderers: "renderers", itemStates: "itemStates", initialItemStates: "initialItemStates", defaultRenderer: "defaultRenderer" }, outputs: { luzmoItemGridItemAction: "luzmoItemGridItemAction", luzmoItemGridItemActionHover: "luzmoItemGridItemActionHover", luzmoItemGridLayoutChanged: "luzmoItemGridLayoutChanged", luzmoItemGridReady: "luzmoItemGridReady", luzmoItemGridItemStatesChanged: "luzmoItemGridItemStatesChanged" }, exportAs: ["luzmoItemGrid"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemGrid_Template(rf, ctx) { if (rf & 1) {
177
182
  i0.ɵɵprojectionDef();
178
183
  i0.ɵɵprojection(0);
179
184
  } }, encapsulation: 2 });
@@ -247,5 +252,8 @@ export class LuzmoItemGrid {
247
252
  }], initialItemStates: [{
248
253
  type: Input,
249
254
  args: [{ alias: 'initialItemStates' }]
255
+ }], defaultRenderer: [{
256
+ type: Input,
257
+ args: [{ alias: 'defaultRenderer' }]
250
258
  }], luzmoItemGridItemAction: [{ type: i0.Output, args: ["luzmoItemGridItemAction"] }], luzmoItemGridItemActionHover: [{ type: i0.Output, args: ["luzmoItemGridItemActionHover"] }], luzmoItemGridLayoutChanged: [{ type: i0.Output, args: ["luzmoItemGridLayoutChanged"] }], luzmoItemGridReady: [{ type: i0.Output, args: ["luzmoItemGridReady"] }], luzmoItemGridItemStatesChanged: [{ type: i0.Output, args: ["luzmoItemGridItemStatesChanged"] }] }); })();
251
259
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoItemGrid, { className: "LuzmoItemGrid", filePath: "components/item-grid.ts", lineNumber: 18 }); })();
@@ -12,26 +12,26 @@ export declare class LuzmoItemOptionColorPicker implements OnChanges {
12
12
  private readonly listenerCleanup;
13
13
  /** The underlying custom element instance. Use to call imperative methods. */
14
14
  get nativeElement(): LuzmoItemOptionColorPickerHostElement;
15
+ /** The current color value. */
16
+ value?: string;
17
+ /** Whether the control is disabled (non-interactive). */
18
+ disabled?: boolean;
19
+ /** Disables the alpha (opacity) channel in the color picker. */
20
+ noAlphaChannel?: boolean;
15
21
  /** Preset colors offered as quick-pick swatches. */
16
22
  swatches?: string[];
17
23
  /** Corner rounding of the color swatch: `full`, `light`, or `none`. */
18
24
  rounding?: 'full' | 'light' | 'none';
19
25
  /** Shape of the color swatch: `circle` or `rectangle`. */
20
26
  shape?: 'circle' | 'rectangle';
27
+ /** Placement of the color picker dropdown relative to its trigger. */
28
+ placement?: Placement;
21
29
  /** Delay in milliseconds before the change event is emitted after the user stops interacting. */
22
30
  debounce?: number;
23
31
  /** Emits value updates live, without `debounce`, plus interaction lifecycle events for drags and held keys. */
24
32
  liveInteractions?: boolean;
25
33
  /** Internal timer handle used to debounce change events. */
26
34
  debounceTimeout?: any;
27
- /** The current color value. */
28
- value?: string;
29
- /** Whether the control is disabled (non-interactive). */
30
- disabled?: boolean;
31
- /** Disables the alpha (opacity) channel in the color picker. */
32
- noAlphaChannel?: boolean;
33
- /** Placement of the color picker dropdown relative to its trigger. */
34
- placement?: Placement;
35
35
  /** Emitted when the option value changes. With `live-interactions`, emitted on every color change and carries `interaction` inside a gesture. */
36
36
  readonly luzmoOptionChanged: import("@angular/core").OutputEmitterRef<CustomEvent<ItemOptionChangedEventDetail>>;
37
37
  /** With `live-interactions`: a color area, hue or opacity drag or held key first changed the color, right before that value update. A press that never changes the color emits no lifecycle. */
@@ -49,10 +49,10 @@ export declare class LuzmoItemOptionColorPicker implements OnChanges {
49
49
  private setHostProperty;
50
50
  private bindEvents;
51
51
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoItemOptionColorPicker, never>;
52
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemOptionColorPicker, "luzmo-item-option-color-picker", ["luzmoItemOptionColorPicker"], { "swatches": { "alias": "swatches"; "required": false; }; "rounding": { "alias": "rounding"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; "liveInteractions": { "alias": "liveInteractions"; "required": false; }; "debounceTimeout": { "alias": "debounceTimeout"; "required": false; }; "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "noAlphaChannel": { "alias": "noAlphaChannel"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; }, { "luzmoOptionChanged": "luzmoOptionChanged"; "luzmoOptionInteractionStart": "luzmoOptionInteractionStart"; "luzmoOptionInteractionEnd": "luzmoOptionInteractionEnd"; }, never, ["*"], true, never>;
53
- static ngAcceptInputType_liveInteractions: unknown;
52
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemOptionColorPicker, "luzmo-item-option-color-picker", ["luzmoItemOptionColorPicker"], { "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "noAlphaChannel": { "alias": "noAlphaChannel"; "required": false; }; "swatches": { "alias": "swatches"; "required": false; }; "rounding": { "alias": "rounding"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; "liveInteractions": { "alias": "liveInteractions"; "required": false; }; "debounceTimeout": { "alias": "debounceTimeout"; "required": false; }; }, { "luzmoOptionChanged": "luzmoOptionChanged"; "luzmoOptionInteractionStart": "luzmoOptionInteractionStart"; "luzmoOptionInteractionEnd": "luzmoOptionInteractionEnd"; }, never, ["*"], true, never>;
54
53
  static ngAcceptInputType_disabled: unknown;
55
54
  static ngAcceptInputType_noAlphaChannel: unknown;
55
+ static ngAcceptInputType_liveInteractions: unknown;
56
56
  }
57
57
  /** The underlying custom element type for LuzmoItemOptionColorPicker */
58
58
  export type LuzmoItemOptionColorPickerElement = LuzmoItemOptionColorPickerHostElement;
@@ -15,26 +15,26 @@ export class LuzmoItemOptionColorPicker {
15
15
  get nativeElement() {
16
16
  return this.host;
17
17
  }
18
+ /** The current color value. */
19
+ value;
20
+ /** Whether the control is disabled (non-interactive). */
21
+ disabled;
22
+ /** Disables the alpha (opacity) channel in the color picker. */
23
+ noAlphaChannel;
18
24
  /** Preset colors offered as quick-pick swatches. */
19
25
  swatches;
20
26
  /** Corner rounding of the color swatch: `full`, `light`, or `none`. */
21
27
  rounding;
22
28
  /** Shape of the color swatch: `circle` or `rectangle`. */
23
29
  shape;
30
+ /** Placement of the color picker dropdown relative to its trigger. */
31
+ placement;
24
32
  /** Delay in milliseconds before the change event is emitted after the user stops interacting. */
25
33
  debounce;
26
34
  /** Emits value updates live, without `debounce`, plus interaction lifecycle events for drags and held keys. */
27
35
  liveInteractions;
28
36
  /** Internal timer handle used to debounce change events. */
29
37
  debounceTimeout;
30
- /** The current color value. */
31
- value;
32
- /** Whether the control is disabled (non-interactive). */
33
- disabled;
34
- /** Disables the alpha (opacity) channel in the color picker. */
35
- noAlphaChannel;
36
- /** Placement of the color picker dropdown relative to its trigger. */
37
- placement;
38
38
  /** Emitted when the option value changes. With `live-interactions`, emitted on every color change and carries `interaction` inside a gesture. */
39
39
  luzmoOptionChanged = output({ alias: 'luzmoOptionChanged' });
40
40
  /** With `live-interactions`: a color area, hue or opacity drag or held key first changed the color, right before that value update. A press that never changes the color emits no lifecycle. */
@@ -52,6 +52,15 @@ export class LuzmoItemOptionColorPicker {
52
52
  ngOnChanges(changes) {
53
53
  for (const key of Object.keys(changes)) {
54
54
  switch (key) {
55
+ case 'value':
56
+ this.setHostProperty('value', changes['value'].currentValue);
57
+ break;
58
+ case 'disabled':
59
+ this.setHostProperty('disabled', changes['disabled'].currentValue);
60
+ break;
61
+ case 'noAlphaChannel':
62
+ this.setHostProperty('noAlphaChannel', changes['noAlphaChannel'].currentValue);
63
+ break;
55
64
  case 'swatches':
56
65
  this.setHostProperty('swatches', changes['swatches'].currentValue);
57
66
  break;
@@ -61,6 +70,9 @@ export class LuzmoItemOptionColorPicker {
61
70
  case 'shape':
62
71
  this.setHostProperty('shape', changes['shape'].currentValue);
63
72
  break;
73
+ case 'placement':
74
+ this.setHostProperty('placement', changes['placement'].currentValue);
75
+ break;
64
76
  case 'debounce':
65
77
  this.setHostProperty('debounce', changes['debounce'].currentValue);
66
78
  break;
@@ -70,18 +82,6 @@ export class LuzmoItemOptionColorPicker {
70
82
  case 'debounceTimeout':
71
83
  this.setHostProperty('debounceTimeout', changes['debounceTimeout'].currentValue);
72
84
  break;
73
- case 'value':
74
- this.setHostProperty('value', changes['value'].currentValue);
75
- break;
76
- case 'disabled':
77
- this.setHostProperty('disabled', changes['disabled'].currentValue);
78
- break;
79
- case 'noAlphaChannel':
80
- this.setHostProperty('noAlphaChannel', changes['noAlphaChannel'].currentValue);
81
- break;
82
- case 'placement':
83
- this.setHostProperty('placement', changes['placement'].currentValue);
84
- break;
85
85
  default:
86
86
  break;
87
87
  }
@@ -111,7 +111,7 @@ export class LuzmoItemOptionColorPicker {
111
111
  }));
112
112
  }
113
113
  static ɵfac = function LuzmoItemOptionColorPicker_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoItemOptionColorPicker)(); };
114
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemOptionColorPicker, selectors: [["luzmo-item-option-color-picker"]], inputs: { swatches: "swatches", rounding: "rounding", shape: "shape", debounce: "debounce", liveInteractions: [2, "liveInteractions", "liveInteractions", booleanAttribute], debounceTimeout: "debounceTimeout", value: "value", disabled: [2, "disabled", "disabled", booleanAttribute], noAlphaChannel: [2, "noAlphaChannel", "noAlphaChannel", booleanAttribute], placement: "placement" }, outputs: { luzmoOptionChanged: "luzmoOptionChanged", luzmoOptionInteractionStart: "luzmoOptionInteractionStart", luzmoOptionInteractionEnd: "luzmoOptionInteractionEnd" }, exportAs: ["luzmoItemOptionColorPicker"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemOptionColorPicker_Template(rf, ctx) { if (rf & 1) {
114
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemOptionColorPicker, selectors: [["luzmo-item-option-color-picker"]], inputs: { value: "value", disabled: [2, "disabled", "disabled", booleanAttribute], noAlphaChannel: [2, "noAlphaChannel", "noAlphaChannel", booleanAttribute], swatches: "swatches", rounding: "rounding", shape: "shape", placement: "placement", debounce: "debounce", liveInteractions: [2, "liveInteractions", "liveInteractions", booleanAttribute], debounceTimeout: "debounceTimeout" }, outputs: { luzmoOptionChanged: "luzmoOptionChanged", luzmoOptionInteractionStart: "luzmoOptionInteractionStart", luzmoOptionInteractionEnd: "luzmoOptionInteractionEnd" }, exportAs: ["luzmoItemOptionColorPicker"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemOptionColorPicker_Template(rf, ctx) { if (rf & 1) {
115
115
  i0.ɵɵprojectionDef();
116
116
  i0.ɵɵprojection(0);
117
117
  } }, encapsulation: 2 });
@@ -125,7 +125,16 @@ export class LuzmoItemOptionColorPicker {
125
125
  changeDetection: ChangeDetectionStrategy.OnPush,
126
126
  template: '<ng-content />'
127
127
  }]
128
- }], () => [], { swatches: [{
128
+ }], () => [], { value: [{
129
+ type: Input,
130
+ args: [{ alias: 'value' }]
131
+ }], disabled: [{
132
+ type: Input,
133
+ args: [{ alias: 'disabled', transform: booleanAttribute }]
134
+ }], noAlphaChannel: [{
135
+ type: Input,
136
+ args: [{ alias: 'noAlphaChannel', transform: booleanAttribute }]
137
+ }], swatches: [{
129
138
  type: Input,
130
139
  args: [{ alias: 'swatches' }]
131
140
  }], rounding: [{
@@ -134,6 +143,9 @@ export class LuzmoItemOptionColorPicker {
134
143
  }], shape: [{
135
144
  type: Input,
136
145
  args: [{ alias: 'shape' }]
146
+ }], placement: [{
147
+ type: Input,
148
+ args: [{ alias: 'placement' }]
137
149
  }], debounce: [{
138
150
  type: Input,
139
151
  args: [{ alias: 'debounce' }]
@@ -143,17 +155,5 @@ export class LuzmoItemOptionColorPicker {
143
155
  }], debounceTimeout: [{
144
156
  type: Input,
145
157
  args: [{ alias: 'debounceTimeout' }]
146
- }], value: [{
147
- type: Input,
148
- args: [{ alias: 'value' }]
149
- }], disabled: [{
150
- type: Input,
151
- args: [{ alias: 'disabled', transform: booleanAttribute }]
152
- }], noAlphaChannel: [{
153
- type: Input,
154
- args: [{ alias: 'noAlphaChannel', transform: booleanAttribute }]
155
- }], placement: [{
156
- type: Input,
157
- args: [{ alias: 'placement' }]
158
158
  }], luzmoOptionChanged: [{ type: i0.Output, args: ["luzmoOptionChanged"] }], luzmoOptionInteractionStart: [{ type: i0.Output, args: ["luzmoOptionInteractionStart"] }], luzmoOptionInteractionEnd: [{ type: i0.Output, args: ["luzmoOptionInteractionEnd"] }] }); })();
159
159
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoItemOptionColorPicker, { className: "LuzmoItemOptionColorPicker", filePath: "components/item-option-color-picker.ts", lineNumber: 17 }); })();
@@ -1,6 +1,6 @@
1
1
  import { OnChanges, SimpleChanges } from '@angular/core';
2
2
  import '@luzmo/analytics-components-kit/item-option-guidelines';
3
- import type { LuzmoItemOptionGuidelines as LuzmoItemOptionGuidelinesHostElement, ItemOptionChangedEventDetail, ItemOptionInteractionEventDetail } from '@luzmo/analytics-components-kit/item-option-guidelines';
3
+ import type { LuzmoItemOptionGuidelines as LuzmoItemOptionGuidelinesHostElement, Guidelines, ItemOptionChangedEventDetail, ItemOptionInteractionEventDetail } from '@luzmo/analytics-components-kit/item-option-guidelines';
4
4
  import * as i0 from "@angular/core";
5
5
  export type { GuidelineLine, GuidelineLineType, GuidelineStyle, GuidelineStyleType, GuidelineWidth, Guidelines, ItemOptionChangedEventDetail, ItemOptionInteraction, ItemOptionInteractionEventDetail } from '@luzmo/analytics-components-kit/item-option-guidelines';
6
6
  export declare class LuzmoItemOptionGuidelines implements OnChanges {
@@ -11,6 +11,12 @@ export declare class LuzmoItemOptionGuidelines implements OnChanges {
11
11
  private readonly listenerCleanup;
12
12
  /** The underlying custom element instance. Use to call imperative methods. */
13
13
  get nativeElement(): LuzmoItemOptionGuidelinesHostElement;
14
+ /** The current guidelines value (`lines` plus shared `style`). */
15
+ value?: Guidelines;
16
+ /** Allowed guideline calculation types for this chart (from the option config enum). */
17
+ lineTypes?: string[];
18
+ /** Display labels for guideline types (key → label). Missing keys fall back to built-in copy. */
19
+ lineTypeLabels?: Record<string, string>;
14
20
  /** Default color used when adding a guideline. */
15
21
  defaultColor?: string;
16
22
  /** Delay in milliseconds before color and number changes are emitted. */
@@ -34,7 +40,7 @@ export declare class LuzmoItemOptionGuidelines implements OnChanges {
34
40
  private setHostProperty;
35
41
  private bindEvents;
36
42
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoItemOptionGuidelines, never>;
37
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemOptionGuidelines, "luzmo-item-option-guidelines", ["luzmoItemOptionGuidelines"], { "defaultColor": { "alias": "defaultColor"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; "liveInteractions": { "alias": "liveInteractions"; "required": false; }; }, { "luzmoOptionChanged": "luzmoOptionChanged"; "luzmoOptionInteractionStart": "luzmoOptionInteractionStart"; "luzmoOptionInteractionEnd": "luzmoOptionInteractionEnd"; }, never, ["*"], true, never>;
43
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemOptionGuidelines, "luzmo-item-option-guidelines", ["luzmoItemOptionGuidelines"], { "value": { "alias": "value"; "required": false; }; "lineTypes": { "alias": "lineTypes"; "required": false; }; "lineTypeLabels": { "alias": "lineTypeLabels"; "required": false; }; "defaultColor": { "alias": "defaultColor"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; "liveInteractions": { "alias": "liveInteractions"; "required": false; }; }, { "luzmoOptionChanged": "luzmoOptionChanged"; "luzmoOptionInteractionStart": "luzmoOptionInteractionStart"; "luzmoOptionInteractionEnd": "luzmoOptionInteractionEnd"; }, never, ["*"], true, never>;
38
44
  static ngAcceptInputType_liveInteractions: unknown;
39
45
  }
40
46
  /** The underlying custom element type for LuzmoItemOptionGuidelines */
@@ -15,6 +15,12 @@ export class LuzmoItemOptionGuidelines {
15
15
  get nativeElement() {
16
16
  return this.host;
17
17
  }
18
+ /** The current guidelines value (`lines` plus shared `style`). */
19
+ value;
20
+ /** Allowed guideline calculation types for this chart (from the option config enum). */
21
+ lineTypes;
22
+ /** Display labels for guideline types (key → label). Missing keys fall back to built-in copy. */
23
+ lineTypeLabels;
18
24
  /** Default color used when adding a guideline. */
19
25
  defaultColor;
20
26
  /** Delay in milliseconds before color and number changes are emitted. */
@@ -38,6 +44,15 @@ export class LuzmoItemOptionGuidelines {
38
44
  ngOnChanges(changes) {
39
45
  for (const key of Object.keys(changes)) {
40
46
  switch (key) {
47
+ case 'value':
48
+ this.setHostProperty('value', changes['value'].currentValue);
49
+ break;
50
+ case 'lineTypes':
51
+ this.setHostProperty('lineTypes', changes['lineTypes'].currentValue);
52
+ break;
53
+ case 'lineTypeLabels':
54
+ this.setHostProperty('lineTypeLabels', changes['lineTypeLabels'].currentValue);
55
+ break;
41
56
  case 'defaultColor':
42
57
  this.setHostProperty('defaultColor', changes['defaultColor'].currentValue);
43
58
  break;
@@ -76,7 +91,7 @@ export class LuzmoItemOptionGuidelines {
76
91
  }));
77
92
  }
78
93
  static ɵfac = function LuzmoItemOptionGuidelines_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoItemOptionGuidelines)(); };
79
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemOptionGuidelines, selectors: [["luzmo-item-option-guidelines"]], inputs: { defaultColor: "defaultColor", debounce: "debounce", liveInteractions: [2, "liveInteractions", "liveInteractions", booleanAttribute] }, outputs: { luzmoOptionChanged: "luzmoOptionChanged", luzmoOptionInteractionStart: "luzmoOptionInteractionStart", luzmoOptionInteractionEnd: "luzmoOptionInteractionEnd" }, exportAs: ["luzmoItemOptionGuidelines"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemOptionGuidelines_Template(rf, ctx) { if (rf & 1) {
94
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemOptionGuidelines, selectors: [["luzmo-item-option-guidelines"]], inputs: { value: "value", lineTypes: "lineTypes", lineTypeLabels: "lineTypeLabels", defaultColor: "defaultColor", debounce: "debounce", liveInteractions: [2, "liveInteractions", "liveInteractions", booleanAttribute] }, outputs: { luzmoOptionChanged: "luzmoOptionChanged", luzmoOptionInteractionStart: "luzmoOptionInteractionStart", luzmoOptionInteractionEnd: "luzmoOptionInteractionEnd" }, exportAs: ["luzmoItemOptionGuidelines"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemOptionGuidelines_Template(rf, ctx) { if (rf & 1) {
80
95
  i0.ɵɵprojectionDef();
81
96
  i0.ɵɵprojection(0);
82
97
  } }, encapsulation: 2 });
@@ -90,7 +105,16 @@ export class LuzmoItemOptionGuidelines {
90
105
  changeDetection: ChangeDetectionStrategy.OnPush,
91
106
  template: '<ng-content />'
92
107
  }]
93
- }], () => [], { defaultColor: [{
108
+ }], () => [], { value: [{
109
+ type: Input,
110
+ args: [{ alias: 'value' }]
111
+ }], lineTypes: [{
112
+ type: Input,
113
+ args: [{ alias: 'lineTypes' }]
114
+ }], lineTypeLabels: [{
115
+ type: Input,
116
+ args: [{ alias: 'lineTypeLabels' }]
117
+ }], defaultColor: [{
94
118
  type: Input,
95
119
  args: [{ alias: 'defaultColor' }]
96
120
  }], debounce: [{
@@ -11,8 +11,6 @@ export declare class LuzmoItemOptionMultiLanguageField implements OnChanges {
11
11
  private readonly listenerCleanup;
12
12
  /** The underlying custom element instance. Use to call imperative methods. */
13
13
  get nativeElement(): LuzmoItemOptionMultiLangFieldHostElement;
14
- /** Internal timer handle used to debounce change events. */
15
- debounceTimeout?: any;
16
14
  /** The current value per language (language code → text). */
17
15
  value?: Record<string, string>;
18
16
  /** Whether the control is shown in an invalid state. */
@@ -29,6 +27,8 @@ export declare class LuzmoItemOptionMultiLanguageField implements OnChanges {
29
27
  toValue?: unknown;
30
28
  /** Delay in milliseconds before the change event is emitted after the user stops interacting. */
31
29
  debounce?: number;
30
+ /** Internal timer handle used to debounce change events. */
31
+ debounceTimeout?: any;
32
32
  /** Emitted when the option value changes. */
33
33
  readonly luzmoOptionChanged: import("@angular/core").OutputEmitterRef<CustomEvent<ItemOptionChangedEventDetail>>;
34
34
  constructor();
@@ -42,7 +42,7 @@ export declare class LuzmoItemOptionMultiLanguageField implements OnChanges {
42
42
  private setHostProperty;
43
43
  private bindEvents;
44
44
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoItemOptionMultiLanguageField, never>;
45
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemOptionMultiLanguageField, "luzmo-item-option-multi-language-field", ["luzmoItemOptionMultiLanguageField"], { "debounceTimeout": { "alias": "debounceTimeout"; "required": false; }; "value": { "alias": "value"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "language": { "alias": "language"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "parseValue": { "alias": "parseValue"; "required": false; }; "toValue": { "alias": "toValue"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; }, { "luzmoOptionChanged": "luzmoOptionChanged"; }, never, ["*"], true, never>;
45
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemOptionMultiLanguageField, "luzmo-item-option-multi-language-field", ["luzmoItemOptionMultiLanguageField"], { "value": { "alias": "value"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "language": { "alias": "language"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "parseValue": { "alias": "parseValue"; "required": false; }; "toValue": { "alias": "toValue"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; "debounceTimeout": { "alias": "debounceTimeout"; "required": false; }; }, { "luzmoOptionChanged": "luzmoOptionChanged"; }, never, ["*"], true, never>;
46
46
  static ngAcceptInputType_invalid: unknown;
47
47
  static ngAcceptInputType_readonly: unknown;
48
48
  }
@@ -15,8 +15,6 @@ export class LuzmoItemOptionMultiLanguageField {
15
15
  get nativeElement() {
16
16
  return this.host;
17
17
  }
18
- /** Internal timer handle used to debounce change events. */
19
- debounceTimeout;
20
18
  /** The current value per language (language code → text). */
21
19
  value;
22
20
  /** Whether the control is shown in an invalid state. */
@@ -33,6 +31,8 @@ export class LuzmoItemOptionMultiLanguageField {
33
31
  toValue;
34
32
  /** Delay in milliseconds before the change event is emitted after the user stops interacting. */
35
33
  debounce;
34
+ /** Internal timer handle used to debounce change events. */
35
+ debounceTimeout;
36
36
  /** Emitted when the option value changes. */
37
37
  luzmoOptionChanged = output({ alias: 'luzmoOptionChanged' });
38
38
  constructor() {
@@ -46,9 +46,6 @@ export class LuzmoItemOptionMultiLanguageField {
46
46
  ngOnChanges(changes) {
47
47
  for (const key of Object.keys(changes)) {
48
48
  switch (key) {
49
- case 'debounceTimeout':
50
- this.setHostProperty('debounceTimeout', changes['debounceTimeout'].currentValue);
51
- break;
52
49
  case 'value':
53
50
  this.setHostProperty('value', changes['value'].currentValue);
54
51
  break;
@@ -73,6 +70,9 @@ export class LuzmoItemOptionMultiLanguageField {
73
70
  case 'debounce':
74
71
  this.setHostProperty('debounce', changes['debounce'].currentValue);
75
72
  break;
73
+ case 'debounceTimeout':
74
+ this.setHostProperty('debounceTimeout', changes['debounceTimeout'].currentValue);
75
+ break;
76
76
  default:
77
77
  break;
78
78
  }
@@ -94,7 +94,7 @@ export class LuzmoItemOptionMultiLanguageField {
94
94
  }));
95
95
  }
96
96
  static ɵfac = function LuzmoItemOptionMultiLanguageField_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoItemOptionMultiLanguageField)(); };
97
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemOptionMultiLanguageField, selectors: [["luzmo-item-option-multi-language-field"]], inputs: { debounceTimeout: "debounceTimeout", value: "value", invalid: [2, "invalid", "invalid", booleanAttribute], readonly: [2, "readonly", "readonly", booleanAttribute], language: "language", placeholder: "placeholder", parseValue: "parseValue", toValue: "toValue", debounce: "debounce" }, outputs: { luzmoOptionChanged: "luzmoOptionChanged" }, exportAs: ["luzmoItemOptionMultiLanguageField"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemOptionMultiLanguageField_Template(rf, ctx) { if (rf & 1) {
97
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemOptionMultiLanguageField, selectors: [["luzmo-item-option-multi-language-field"]], inputs: { value: "value", invalid: [2, "invalid", "invalid", booleanAttribute], readonly: [2, "readonly", "readonly", booleanAttribute], language: "language", placeholder: "placeholder", parseValue: "parseValue", toValue: "toValue", debounce: "debounce", debounceTimeout: "debounceTimeout" }, outputs: { luzmoOptionChanged: "luzmoOptionChanged" }, exportAs: ["luzmoItemOptionMultiLanguageField"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemOptionMultiLanguageField_Template(rf, ctx) { if (rf & 1) {
98
98
  i0.ɵɵprojectionDef();
99
99
  i0.ɵɵprojection(0);
100
100
  } }, encapsulation: 2 });
@@ -108,10 +108,7 @@ export class LuzmoItemOptionMultiLanguageField {
108
108
  changeDetection: ChangeDetectionStrategy.OnPush,
109
109
  template: '<ng-content />'
110
110
  }]
111
- }], () => [], { debounceTimeout: [{
112
- type: Input,
113
- args: [{ alias: 'debounceTimeout' }]
114
- }], value: [{
111
+ }], () => [], { value: [{
115
112
  type: Input,
116
113
  args: [{ alias: 'value' }]
117
114
  }], invalid: [{
@@ -135,5 +132,8 @@ export class LuzmoItemOptionMultiLanguageField {
135
132
  }], debounce: [{
136
133
  type: Input,
137
134
  args: [{ alias: 'debounce' }]
135
+ }], debounceTimeout: [{
136
+ type: Input,
137
+ args: [{ alias: 'debounceTimeout' }]
138
138
  }], luzmoOptionChanged: [{ type: i0.Output, args: ["luzmoOptionChanged"] }] }); })();
139
139
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoItemOptionMultiLanguageField, { className: "LuzmoItemOptionMultiLanguageField", filePath: "components/item-option-multi-language-field.ts", lineNumber: 16 }); })();
@@ -11,10 +11,6 @@ export declare class LuzmoItemOptionNumberField implements OnChanges {
11
11
  private readonly listenerCleanup;
12
12
  /** The underlying custom element instance. Use to call imperative methods. */
13
13
  get nativeElement(): LuzmoItemOptionNumberFieldHostElement;
14
- /** Delay in milliseconds before the change event is emitted after the user stops interacting. */
15
- debounce?: number;
16
- /** Internal timer handle used to debounce change events. */
17
- debounceTimeout?: any;
18
14
  /** Whether the control is disabled (non-interactive). */
19
15
  disabled?: boolean;
20
16
  /** The minimum allowed value. */
@@ -33,10 +29,14 @@ export declare class LuzmoItemOptionNumberField implements OnChanges {
33
29
  step?: number;
34
30
  /** Unit suffix shown after the value. */
35
31
  unit?: boolean;
32
+ /** Delay in milliseconds before the change event is emitted after the user stops interacting. */
33
+ debounce?: number;
36
34
  /** Optional transform applied to the stored value before it is displayed in the control. */
37
35
  parseValue?: unknown;
38
36
  /** Optional transform applied to the control's value before it is emitted in the change event. */
39
37
  toValue?: unknown;
38
+ /** Internal timer handle used to debounce change events. */
39
+ debounceTimeout?: any;
40
40
  /** Emitted when the option value changes. */
41
41
  readonly luzmoOptionChanged: import("@angular/core").OutputEmitterRef<CustomEvent<ItemOptionChangedEventDetail>>;
42
42
  constructor();
@@ -50,7 +50,7 @@ export declare class LuzmoItemOptionNumberField implements OnChanges {
50
50
  private setHostProperty;
51
51
  private bindEvents;
52
52
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoItemOptionNumberField, never>;
53
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemOptionNumberField, "luzmo-item-option-number-field", ["luzmoItemOptionNumberField"], { "debounce": { "alias": "debounce"; "required": false; }; "debounceTimeout": { "alias": "debounceTimeout"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "default": { "alias": "default"; "required": false; }; "value": { "alias": "value"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "minWidthInputField": { "alias": "minWidthInputField"; "required": false; }; "step": { "alias": "step"; "required": false; }; "unit": { "alias": "unit"; "required": false; }; "parseValue": { "alias": "parseValue"; "required": false; }; "toValue": { "alias": "toValue"; "required": false; }; }, { "luzmoOptionChanged": "luzmoOptionChanged"; }, never, ["*"], true, never>;
53
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemOptionNumberField, "luzmo-item-option-number-field", ["luzmoItemOptionNumberField"], { "disabled": { "alias": "disabled"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "default": { "alias": "default"; "required": false; }; "value": { "alias": "value"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "minWidthInputField": { "alias": "minWidthInputField"; "required": false; }; "step": { "alias": "step"; "required": false; }; "unit": { "alias": "unit"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; "parseValue": { "alias": "parseValue"; "required": false; }; "toValue": { "alias": "toValue"; "required": false; }; "debounceTimeout": { "alias": "debounceTimeout"; "required": false; }; }, { "luzmoOptionChanged": "luzmoOptionChanged"; }, never, ["*"], true, never>;
54
54
  static ngAcceptInputType_disabled: unknown;
55
55
  static ngAcceptInputType_unit: unknown;
56
56
  }
@@ -15,10 +15,6 @@ export class LuzmoItemOptionNumberField {
15
15
  get nativeElement() {
16
16
  return this.host;
17
17
  }
18
- /** Delay in milliseconds before the change event is emitted after the user stops interacting. */
19
- debounce;
20
- /** Internal timer handle used to debounce change events. */
21
- debounceTimeout;
22
18
  /** Whether the control is disabled (non-interactive). */
23
19
  disabled;
24
20
  /** The minimum allowed value. */
@@ -37,10 +33,14 @@ export class LuzmoItemOptionNumberField {
37
33
  step;
38
34
  /** Unit suffix shown after the value. */
39
35
  unit;
36
+ /** Delay in milliseconds before the change event is emitted after the user stops interacting. */
37
+ debounce;
40
38
  /** Optional transform applied to the stored value before it is displayed in the control. */
41
39
  parseValue;
42
40
  /** Optional transform applied to the control's value before it is emitted in the change event. */
43
41
  toValue;
42
+ /** Internal timer handle used to debounce change events. */
43
+ debounceTimeout;
44
44
  /** Emitted when the option value changes. */
45
45
  luzmoOptionChanged = output({ alias: 'luzmoOptionChanged' });
46
46
  constructor() {
@@ -54,12 +54,6 @@ export class LuzmoItemOptionNumberField {
54
54
  ngOnChanges(changes) {
55
55
  for (const key of Object.keys(changes)) {
56
56
  switch (key) {
57
- case 'debounce':
58
- this.setHostProperty('debounce', changes['debounce'].currentValue);
59
- break;
60
- case 'debounceTimeout':
61
- this.setHostProperty('debounceTimeout', changes['debounceTimeout'].currentValue);
62
- break;
63
57
  case 'disabled':
64
58
  this.setHostProperty('disabled', changes['disabled'].currentValue);
65
59
  break;
@@ -87,12 +81,18 @@ export class LuzmoItemOptionNumberField {
87
81
  case 'unit':
88
82
  this.setHostProperty('unit', changes['unit'].currentValue);
89
83
  break;
84
+ case 'debounce':
85
+ this.setHostProperty('debounce', changes['debounce'].currentValue);
86
+ break;
90
87
  case 'parseValue':
91
88
  this.setHostProperty('parseValue', changes['parseValue'].currentValue);
92
89
  break;
93
90
  case 'toValue':
94
91
  this.setHostProperty('toValue', changes['toValue'].currentValue);
95
92
  break;
93
+ case 'debounceTimeout':
94
+ this.setHostProperty('debounceTimeout', changes['debounceTimeout'].currentValue);
95
+ break;
96
96
  default:
97
97
  break;
98
98
  }
@@ -114,7 +114,7 @@ export class LuzmoItemOptionNumberField {
114
114
  }));
115
115
  }
116
116
  static ɵfac = function LuzmoItemOptionNumberField_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoItemOptionNumberField)(); };
117
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemOptionNumberField, selectors: [["luzmo-item-option-number-field"]], inputs: { debounce: "debounce", debounceTimeout: "debounceTimeout", disabled: [2, "disabled", "disabled", booleanAttribute], min: "min", max: "max", default: "default", value: "value", placeholder: "placeholder", minWidthInputField: "minWidthInputField", step: "step", unit: [2, "unit", "unit", booleanAttribute], parseValue: "parseValue", toValue: "toValue" }, outputs: { luzmoOptionChanged: "luzmoOptionChanged" }, exportAs: ["luzmoItemOptionNumberField"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemOptionNumberField_Template(rf, ctx) { if (rf & 1) {
117
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemOptionNumberField, selectors: [["luzmo-item-option-number-field"]], inputs: { disabled: [2, "disabled", "disabled", booleanAttribute], min: "min", max: "max", default: "default", value: "value", placeholder: "placeholder", minWidthInputField: "minWidthInputField", step: "step", unit: [2, "unit", "unit", booleanAttribute], debounce: "debounce", parseValue: "parseValue", toValue: "toValue", debounceTimeout: "debounceTimeout" }, outputs: { luzmoOptionChanged: "luzmoOptionChanged" }, exportAs: ["luzmoItemOptionNumberField"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemOptionNumberField_Template(rf, ctx) { if (rf & 1) {
118
118
  i0.ɵɵprojectionDef();
119
119
  i0.ɵɵprojection(0);
120
120
  } }, encapsulation: 2 });
@@ -128,13 +128,7 @@ export class LuzmoItemOptionNumberField {
128
128
  changeDetection: ChangeDetectionStrategy.OnPush,
129
129
  template: '<ng-content />'
130
130
  }]
131
- }], () => [], { debounce: [{
132
- type: Input,
133
- args: [{ alias: 'debounce' }]
134
- }], debounceTimeout: [{
135
- type: Input,
136
- args: [{ alias: 'debounceTimeout' }]
137
- }], disabled: [{
131
+ }], () => [], { disabled: [{
138
132
  type: Input,
139
133
  args: [{ alias: 'disabled', transform: booleanAttribute }]
140
134
  }], min: [{
@@ -161,11 +155,17 @@ export class LuzmoItemOptionNumberField {
161
155
  }], unit: [{
162
156
  type: Input,
163
157
  args: [{ alias: 'unit', transform: booleanAttribute }]
158
+ }], debounce: [{
159
+ type: Input,
160
+ args: [{ alias: 'debounce' }]
164
161
  }], parseValue: [{
165
162
  type: Input,
166
163
  args: [{ alias: 'parseValue' }]
167
164
  }], toValue: [{
168
165
  type: Input,
169
166
  args: [{ alias: 'toValue' }]
167
+ }], debounceTimeout: [{
168
+ type: Input,
169
+ args: [{ alias: 'debounceTimeout' }]
170
170
  }], luzmoOptionChanged: [{ type: i0.Output, args: ["luzmoOptionChanged"] }] }); })();
171
171
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoItemOptionNumberField, { className: "LuzmoItemOptionNumberField", filePath: "components/item-option-number-field.ts", lineNumber: 16 }); })();
@@ -11,10 +11,6 @@ export declare class LuzmoItemOptionPositionsNumberField implements OnChanges {
11
11
  private readonly listenerCleanup;
12
12
  /** The underlying custom element instance. Use to call imperative methods. */
13
13
  get nativeElement(): LuzmoItemOptionPositionsNumberFieldHostElement;
14
- /** The value applied to all positions when sync is enabled. */
15
- syncedValue?: number;
16
- /** Internal timer handle used to debounce change events. */
17
- debounceTimeout?: any;
18
14
  /** Which positions to render input fields for (e.g. top/right/bottom/left, or corners and center). */
19
15
  positions?: ('top' | 'right' | 'bottom' | 'left' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'center')[];
20
16
  /** The current numeric value for each position. */
@@ -31,6 +27,10 @@ export declare class LuzmoItemOptionPositionsNumberField implements OnChanges {
31
27
  debounce?: number;
32
28
  /** Whether all positions are currently synced to a single value. */
33
29
  sync?: boolean;
30
+ /** The value applied to all positions when sync is enabled. */
31
+ syncedValue?: number;
32
+ /** Internal timer handle used to debounce change events. */
33
+ debounceTimeout?: any;
34
34
  /** Emitted when the option value changes. */
35
35
  readonly luzmoOptionChanged: import("@angular/core").OutputEmitterRef<CustomEvent<ItemOptionChangedEventDetail>>;
36
36
  constructor();
@@ -44,7 +44,7 @@ export declare class LuzmoItemOptionPositionsNumberField implements OnChanges {
44
44
  private setHostProperty;
45
45
  private bindEvents;
46
46
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoItemOptionPositionsNumberField, never>;
47
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemOptionPositionsNumberField, "luzmo-item-option-positions-number-field", ["luzmoItemOptionPositionsNumberField"], { "syncedValue": { "alias": "syncedValue"; "required": false; }; "debounceTimeout": { "alias": "debounceTimeout"; "required": false; }; "positions": { "alias": "positions"; "required": false; }; "values": { "alias": "values"; "required": false; }; "canSync": { "alias": "canSync"; "required": false; }; "positionConfiguration": { "alias": "positionConfiguration"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; "sync": { "alias": "sync"; "required": false; }; }, { "luzmoOptionChanged": "luzmoOptionChanged"; }, never, ["*"], true, never>;
47
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemOptionPositionsNumberField, "luzmo-item-option-positions-number-field", ["luzmoItemOptionPositionsNumberField"], { "positions": { "alias": "positions"; "required": false; }; "values": { "alias": "values"; "required": false; }; "canSync": { "alias": "canSync"; "required": false; }; "positionConfiguration": { "alias": "positionConfiguration"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; "sync": { "alias": "sync"; "required": false; }; "syncedValue": { "alias": "syncedValue"; "required": false; }; "debounceTimeout": { "alias": "debounceTimeout"; "required": false; }; }, { "luzmoOptionChanged": "luzmoOptionChanged"; }, never, ["*"], true, never>;
48
48
  static ngAcceptInputType_canSync: unknown;
49
49
  static ngAcceptInputType_invalid: unknown;
50
50
  static ngAcceptInputType_readonly: unknown;