@luzmo/ngx-lucero 2.1.0 → 2.2.1

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 (104) hide show
  1. package/README.md +14 -0
  2. package/esm/components/accordion-item.d.ts +2 -2
  3. package/esm/components/accordion-item.js +5 -5
  4. package/esm/components/action-bar.d.ts +1 -1
  5. package/esm/components/action-bar.js +3 -3
  6. package/esm/components/action-button.d.ts +2 -2
  7. package/esm/components/action-button.js +11 -12
  8. package/esm/components/action-group.d.ts +1 -1
  9. package/esm/components/action-group.js +3 -3
  10. package/esm/components/action-menu.d.ts +1 -1
  11. package/esm/components/action-menu.js +10 -11
  12. package/esm/components/avatar.d.ts +1 -1
  13. package/esm/components/avatar.js +3 -3
  14. package/esm/components/button.d.ts +1 -1
  15. package/esm/components/button.js +3 -3
  16. package/esm/components/calendar.d.ts +4 -4
  17. package/esm/components/calendar.js +14 -15
  18. package/esm/components/checkbox.d.ts +1 -1
  19. package/esm/components/checkbox.js +8 -9
  20. package/esm/components/clear-button.d.ts +1 -1
  21. package/esm/components/clear-button.js +3 -3
  22. package/esm/components/close-button.d.ts +1 -1
  23. package/esm/components/close-button.js +3 -3
  24. package/esm/components/color-area.d.ts +1 -1
  25. package/esm/components/color-area.js +4 -4
  26. package/esm/components/color-field.d.ts +1 -1
  27. package/esm/components/color-field.js +11 -12
  28. package/esm/components/color-menu.d.ts +1 -1
  29. package/esm/components/color-menu.js +4 -4
  30. package/esm/components/color-palette-group.d.ts +1 -1
  31. package/esm/components/color-palette-group.js +3 -3
  32. package/esm/components/color-palette.d.ts +1 -1
  33. package/esm/components/color-palette.js +3 -3
  34. package/esm/components/color-picker.d.ts +1 -1
  35. package/esm/components/color-picker.js +4 -4
  36. package/esm/components/color-slider.d.ts +1 -1
  37. package/esm/components/color-slider.js +10 -11
  38. package/esm/components/date-range-picker.d.ts +1 -1
  39. package/esm/components/date-range-picker.js +5 -5
  40. package/esm/components/date-time-picker.d.ts +1 -1
  41. package/esm/components/date-time-picker.js +10 -11
  42. package/esm/components/infield-button.d.ts +1 -1
  43. package/esm/components/infield-button.js +3 -3
  44. package/esm/components/menu-group.d.ts +1 -1
  45. package/esm/components/menu-group.js +9 -10
  46. package/esm/components/menu-item.d.ts +2 -2
  47. package/esm/components/menu-item.js +5 -5
  48. package/esm/components/menu.d.ts +1 -1
  49. package/esm/components/menu.js +9 -10
  50. package/esm/components/multi-language-field.d.ts +1 -1
  51. package/esm/components/multi-language-field.js +8 -9
  52. package/esm/components/notice.d.ts +2 -2
  53. package/esm/components/notice.js +4 -4
  54. package/esm/components/number-field.d.ts +1 -1
  55. package/esm/components/number-field.js +11 -12
  56. package/esm/components/option.d.ts +1 -1
  57. package/esm/components/option.js +3 -3
  58. package/esm/components/options.d.ts +5 -5
  59. package/esm/components/options.js +15 -16
  60. package/esm/components/overlay-trigger.d.ts +3 -3
  61. package/esm/components/overlay-trigger.js +6 -6
  62. package/esm/components/overlay.d.ts +4 -4
  63. package/esm/components/overlay.js +8 -8
  64. package/esm/components/picker-button.d.ts +1 -1
  65. package/esm/components/picker-button.js +3 -3
  66. package/esm/components/picker.d.ts +3 -3
  67. package/esm/components/picker.js +14 -15
  68. package/esm/components/progress-steps.d.ts +3 -3
  69. package/esm/components/progress-steps.js +6 -6
  70. package/esm/components/prompt-box.d.ts +11 -11
  71. package/esm/components/prompt-box.js +22 -22
  72. package/esm/components/question-box.d.ts +4 -4
  73. package/esm/components/question-box.js +15 -16
  74. package/esm/components/radio-group.d.ts +1 -1
  75. package/esm/components/radio-group.js +3 -3
  76. package/esm/components/radio.d.ts +1 -1
  77. package/esm/components/radio.js +9 -10
  78. package/esm/components/search.d.ts +1 -1
  79. package/esm/components/search.js +12 -13
  80. package/esm/components/select.d.ts +5 -5
  81. package/esm/components/select.js +17 -18
  82. package/esm/components/slider-handle.d.ts +1 -1
  83. package/esm/components/slider-handle.js +9 -10
  84. package/esm/components/slider.d.ts +1 -1
  85. package/esm/components/slider.js +10 -11
  86. package/esm/components/split-view.d.ts +2 -2
  87. package/esm/components/split-view.js +7 -7
  88. package/esm/components/swatch-group.d.ts +1 -1
  89. package/esm/components/swatch-group.js +3 -3
  90. package/esm/components/swatch.d.ts +1 -1
  91. package/esm/components/swatch.js +9 -10
  92. package/esm/components/switch.d.ts +1 -1
  93. package/esm/components/switch.js +9 -10
  94. package/esm/components/tabs.d.ts +1 -1
  95. package/esm/components/tabs.js +4 -4
  96. package/esm/components/tag.d.ts +2 -2
  97. package/esm/components/tag.js +4 -4
  98. package/esm/components/text-field.d.ts +1 -1
  99. package/esm/components/text-field.js +11 -12
  100. package/esm/components/toast.d.ts +1 -1
  101. package/esm/components/toast.js +3 -3
  102. package/esm/components/top-nav.d.ts +1 -1
  103. package/esm/components/top-nav.js +4 -4
  104. package/package.json +2 -2
@@ -40,9 +40,9 @@ export class LuzmoSliderHandle {
40
40
  /** Per-handle value formatter. */
41
41
  getAriaHandleText;
42
42
  /** The handle value changed during user interaction. */
43
- inputEvent = output({ alias: 'input' });
43
+ inputEvent = output();
44
44
  /** The handle value change was committed. */
45
- changeEvent = output({ alias: 'change' });
45
+ changeEvent = output();
46
46
  constructor() {
47
47
  this.bindEvents();
48
48
  this.destroyRef.onDestroy(() => {
@@ -103,7 +103,6 @@ export class LuzmoSliderHandle {
103
103
  }
104
104
  bindEvents() {
105
105
  this.listenerCleanup.push(this.renderer.listen(this.host, 'input', (event) => {
106
- this.inputEvent.emit(event);
107
106
  if (!this.isWritingValue) {
108
107
  const eventWithDetail = event;
109
108
  const eventTarget = event.target;
@@ -115,13 +114,13 @@ export class LuzmoSliderHandle {
115
114
  : (detailRecord === undefined ? detail : undefined)
116
115
  ?? eventTarget?.['value']
117
116
  ?? hostRecord['value']);
118
- if (Object.is(this.lastCvaValue, nextValue)) {
119
- return;
117
+ if (!Object.is(this.lastCvaValue, nextValue)) {
118
+ this.lastCvaValue = nextValue;
119
+ this.setHostProperty('value', nextValue);
120
+ this.onChange(nextValue);
120
121
  }
121
- this.lastCvaValue = nextValue;
122
- this.setHostProperty('value', nextValue);
123
- this.onChange(nextValue);
124
122
  }
123
+ this.inputEvent.emit(event);
125
124
  }));
126
125
  this.listenerCleanup.push(this.renderer.listen(this.host, 'change', (event) => {
127
126
  this.changeEvent.emit(event);
@@ -154,7 +153,7 @@ export class LuzmoSliderHandle {
154
153
  return this.host.focus(options);
155
154
  }
156
155
  static ɵfac = function LuzmoSliderHandle_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoSliderHandle)(); };
157
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSliderHandle, selectors: [["luzmo-slider-handle"]], inputs: { name: "name", label: "label", value: "value", defaultValue: "defaultValue", min: "min", max: "max", step: "step", color: "color", formatOptions: "formatOptions", normalization: "normalization", getAriaHandleText: "getAriaHandleText" }, outputs: { inputEvent: "input", changeEvent: "change" }, exportAs: ["luzmoSliderHandle"], features: [i0.ɵɵProvidersFeature([
156
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSliderHandle, selectors: [["luzmo-slider-handle"]], inputs: { name: "name", label: "label", value: "value", defaultValue: "defaultValue", min: "min", max: "max", step: "step", color: "color", formatOptions: "formatOptions", normalization: "normalization", getAriaHandleText: "getAriaHandleText" }, outputs: { inputEvent: "inputEvent", changeEvent: "changeEvent" }, exportAs: ["luzmoSliderHandle"], features: [i0.ɵɵProvidersFeature([
158
157
  {
159
158
  provide: NG_VALUE_ACCESSOR,
160
159
  useExisting: forwardRef(() => LuzmoSliderHandle),
@@ -214,5 +213,5 @@ export class LuzmoSliderHandle {
214
213
  }], getAriaHandleText: [{
215
214
  type: Input,
216
215
  args: [{ alias: 'getAriaHandleText' }]
217
- }], inputEvent: [{ type: i0.Output, args: ["input"] }], changeEvent: [{ type: i0.Output, args: ["change"] }] }); })();
216
+ }], inputEvent: [{ type: i0.Output, args: ["inputEvent"] }], changeEvent: [{ type: i0.Output, args: ["changeEvent"] }] }); })();
218
217
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoSliderHandle, { className: "LuzmoSliderHandle", filePath: "components/slider-handle.ts", lineNumber: 24 }); })();
@@ -93,7 +93,7 @@ export declare class LuzmoSlider implements OnChanges, ControlValueAccessor {
93
93
  setDisabledState(isDisabled: boolean): void;
94
94
  focus(options?: FocusOptions): void;
95
95
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoSlider, never>;
96
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSlider, "luzmo-slider", ["luzmoSlider"], { "label": { "alias": "label"; "required": false; }; "labels": { "alias": "labels"; "required": false; }; "applyFocusElementLabel": { "alias": "applyFocusElementLabel"; "required": false; }; "value": { "alias": "value"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "step": { "alias": "step"; "required": false; }; "defaultValue": { "alias": "defaultValue"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "ramp": { "alias": "ramp"; "required": false; }; "ticks": { "alias": "ticks"; "required": false; }; "labelVisibility": { "alias": "labelVisibility"; "required": false; }; "fillStart": { "alias": "fillStart"; "required": false; }; "tickStep": { "alias": "tickStep"; "required": false; }; "tickLabels": { "alias": "tickLabels"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "hideStepper": { "alias": "hideStepper"; "required": false; }; "quiet": { "alias": "quiet"; "required": false; }; "indeterminate": { "alias": "indeterminate"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "formatOptions": { "alias": "formatOptions"; "required": false; }; "normalization": { "alias": "normalization"; "required": false; }; "getAriaHandleText": { "alias": "getAriaHandleText"; "required": false; }; "getAriaValueText": { "alias": "getAriaValueText"; "required": false; }; "helpTextManager": { "alias": "helpTextManager"; "required": false; }; "size": { "alias": "size"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "inputEvent": "input"; "changeEvent": "change"; "keydownEvent": "keydown"; }, never, ["*"], true, never>;
96
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSlider, "luzmo-slider", ["luzmoSlider"], { "label": { "alias": "label"; "required": false; }; "labels": { "alias": "labels"; "required": false; }; "applyFocusElementLabel": { "alias": "applyFocusElementLabel"; "required": false; }; "value": { "alias": "value"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "step": { "alias": "step"; "required": false; }; "defaultValue": { "alias": "defaultValue"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "ramp": { "alias": "ramp"; "required": false; }; "ticks": { "alias": "ticks"; "required": false; }; "labelVisibility": { "alias": "labelVisibility"; "required": false; }; "fillStart": { "alias": "fillStart"; "required": false; }; "tickStep": { "alias": "tickStep"; "required": false; }; "tickLabels": { "alias": "tickLabels"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "hideStepper": { "alias": "hideStepper"; "required": false; }; "quiet": { "alias": "quiet"; "required": false; }; "indeterminate": { "alias": "indeterminate"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "formatOptions": { "alias": "formatOptions"; "required": false; }; "normalization": { "alias": "normalization"; "required": false; }; "getAriaHandleText": { "alias": "getAriaHandleText"; "required": false; }; "getAriaValueText": { "alias": "getAriaValueText"; "required": false; }; "helpTextManager": { "alias": "helpTextManager"; "required": false; }; "size": { "alias": "size"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "inputEvent": "inputEvent"; "changeEvent": "changeEvent"; "keydownEvent": "keydownEvent"; }, never, ["*"], true, never>;
97
97
  }
98
98
  /** The underlying custom element type for LuzmoSlider */
99
99
  export type LuzmoSliderElement = LuzmoSliderHostElement;
@@ -77,11 +77,11 @@ export class LuzmoSlider {
77
77
  /** The tab index to apply to this control. See general documentation about the tabindex HTML property */
78
78
  tabIndex;
79
79
  /** The value changes during user interaction. */
80
- inputEvent = output({ alias: 'input' });
80
+ inputEvent = output();
81
81
  /** A user value change is committed. */
82
- changeEvent = output({ alias: 'change' });
82
+ changeEvent = output();
83
83
  /** Trick :focus-visible polyfill into thinking keyboard based focus */
84
- keydownEvent = output({ alias: 'keydown' });
84
+ keydownEvent = output();
85
85
  constructor() {
86
86
  this.bindEvents();
87
87
  this.destroyRef.onDestroy(() => {
@@ -196,7 +196,6 @@ export class LuzmoSlider {
196
196
  }
197
197
  bindEvents() {
198
198
  this.listenerCleanup.push(this.renderer.listen(this.host, 'input', (event) => {
199
- this.inputEvent.emit(event);
200
199
  if (!this.isWritingValue) {
201
200
  const eventWithDetail = event;
202
201
  const eventTarget = event.target;
@@ -208,13 +207,13 @@ export class LuzmoSlider {
208
207
  : (detailRecord === undefined ? detail : undefined)
209
208
  ?? eventTarget?.['value']
210
209
  ?? hostRecord['value']);
211
- if (Object.is(this.lastCvaValue, nextValue)) {
212
- return;
210
+ if (!Object.is(this.lastCvaValue, nextValue)) {
211
+ this.lastCvaValue = nextValue;
212
+ this.setHostProperty('value', nextValue);
213
+ this.onChange(nextValue);
213
214
  }
214
- this.lastCvaValue = nextValue;
215
- this.setHostProperty('value', nextValue);
216
- this.onChange(nextValue);
217
215
  }
216
+ this.inputEvent.emit(event);
218
217
  }));
219
218
  this.listenerCleanup.push(this.renderer.listen(this.host, 'change', (event) => {
220
219
  this.changeEvent.emit(event);
@@ -255,7 +254,7 @@ export class LuzmoSlider {
255
254
  return this.host.focus(options);
256
255
  }
257
256
  static ɵfac = function LuzmoSlider_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoSlider)(); };
258
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSlider, selectors: [["luzmo-slider"]], inputs: { label: "label", labels: "labels", applyFocusElementLabel: "applyFocusElementLabel", value: "value", min: "min", max: "max", step: "step", defaultValue: "defaultValue", variant: "variant", ramp: "ramp", ticks: "ticks", labelVisibility: "labelVisibility", fillStart: "fillStart", tickStep: "tickStep", tickLabels: "tickLabels", editable: "editable", hideStepper: "hideStepper", quiet: "quiet", indeterminate: "indeterminate", invalid: "invalid", readonly: "readonly", formatOptions: "formatOptions", normalization: "normalization", getAriaHandleText: "getAriaHandleText", getAriaValueText: "getAriaValueText", helpTextManager: "helpTextManager", size: "size", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { inputEvent: "input", changeEvent: "change", keydownEvent: "keydown" }, exportAs: ["luzmoSlider"], features: [i0.ɵɵProvidersFeature([
257
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSlider, selectors: [["luzmo-slider"]], inputs: { label: "label", labels: "labels", applyFocusElementLabel: "applyFocusElementLabel", value: "value", min: "min", max: "max", step: "step", defaultValue: "defaultValue", variant: "variant", ramp: "ramp", ticks: "ticks", labelVisibility: "labelVisibility", fillStart: "fillStart", tickStep: "tickStep", tickLabels: "tickLabels", editable: "editable", hideStepper: "hideStepper", quiet: "quiet", indeterminate: "indeterminate", invalid: "invalid", readonly: "readonly", formatOptions: "formatOptions", normalization: "normalization", getAriaHandleText: "getAriaHandleText", getAriaValueText: "getAriaValueText", helpTextManager: "helpTextManager", size: "size", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { inputEvent: "inputEvent", changeEvent: "changeEvent", keydownEvent: "keydownEvent" }, exportAs: ["luzmoSlider"], features: [i0.ɵɵProvidersFeature([
259
258
  {
260
259
  provide: NG_VALUE_ACCESSOR,
261
260
  useExisting: forwardRef(() => LuzmoSlider),
@@ -369,5 +368,5 @@ export class LuzmoSlider {
369
368
  }], tabIndex: [{
370
369
  type: Input,
371
370
  args: [{ alias: 'tabIndex' }]
372
- }], inputEvent: [{ type: i0.Output, args: ["input"] }], changeEvent: [{ type: i0.Output, args: ["change"] }], keydownEvent: [{ type: i0.Output, args: ["keydown"] }] }); })();
371
+ }], inputEvent: [{ type: i0.Output, args: ["inputEvent"] }], changeEvent: [{ type: i0.Output, args: ["changeEvent"] }], keydownEvent: [{ type: i0.Output, args: ["keydownEvent"] }] }); })();
373
372
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoSlider, { className: "LuzmoSlider", filePath: "components/slider.ts", lineNumber: 27 }); })();
@@ -34,7 +34,7 @@ export declare class LuzmoSplitView implements OnChanges {
34
34
  disabled?: boolean;
35
35
  /** The tab index to apply to this control. See general documentation about the tabindex HTML property */
36
36
  tabIndex?: number;
37
- readonly typeEvent: import("@angular/core").OutputEmitterRef<Event>;
37
+ readonly type: import("@angular/core").OutputEmitterRef<Event>;
38
38
  /** The splitter position changes during interaction. */
39
39
  readonly inputEvent: import("@angular/core").OutputEmitterRef<CustomEvent<unknown>>;
40
40
  /** A splitter position change is committed. */
@@ -53,7 +53,7 @@ export declare class LuzmoSplitView implements OnChanges {
53
53
  private bindEvents;
54
54
  focus(options?: FocusOptions): void;
55
55
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoSplitView, never>;
56
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSplitView, "luzmo-split-view", ["luzmoSplitView"], { "vertical": { "alias": "vertical"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "collapsible": { "alias": "collapsible"; "required": false; }; "label": { "alias": "label"; "required": false; }; "primaryMin": { "alias": "primaryMin"; "required": false; }; "primaryMax": { "alias": "primaryMax"; "required": false; }; "secondaryMin": { "alias": "secondaryMin"; "required": false; }; "secondaryMax": { "alias": "secondaryMax"; "required": false; }; "primarySize": { "alias": "primarySize"; "required": false; }; "splitterPos": { "alias": "splitterPos"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "typeEvent": "type"; "inputEvent": "input"; "changeEvent": "change"; "keydownEvent": "keydown"; }, never, ["*"], true, never>;
56
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSplitView, "luzmo-split-view", ["luzmoSplitView"], { "vertical": { "alias": "vertical"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "collapsible": { "alias": "collapsible"; "required": false; }; "label": { "alias": "label"; "required": false; }; "primaryMin": { "alias": "primaryMin"; "required": false; }; "primaryMax": { "alias": "primaryMax"; "required": false; }; "secondaryMin": { "alias": "secondaryMin"; "required": false; }; "secondaryMax": { "alias": "secondaryMax"; "required": false; }; "primarySize": { "alias": "primarySize"; "required": false; }; "splitterPos": { "alias": "splitterPos"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "type": "type"; "inputEvent": "inputEvent"; "changeEvent": "changeEvent"; "keydownEvent": "keydownEvent"; }, never, ["*"], true, never>;
57
57
  }
58
58
  /** The underlying custom element type for LuzmoSplitView */
59
59
  export type LuzmoSplitViewElement = LuzmoSplitViewHostElement;
@@ -41,13 +41,13 @@ export class LuzmoSplitView {
41
41
  disabled;
42
42
  /** The tab index to apply to this control. See general documentation about the tabindex HTML property */
43
43
  tabIndex;
44
- typeEvent = output({ alias: 'type' });
44
+ type = output({ alias: 'type' });
45
45
  /** The splitter position changes during interaction. */
46
- inputEvent = output({ alias: 'input' });
46
+ inputEvent = output();
47
47
  /** A splitter position change is committed. */
48
- changeEvent = output({ alias: 'change' });
48
+ changeEvent = output();
49
49
  /** Trick :focus-visible polyfill into thinking keyboard based focus */
50
- keydownEvent = output({ alias: 'keydown' });
50
+ keydownEvent = output();
51
51
  constructor() {
52
52
  this.bindEvents();
53
53
  this.destroyRef.onDestroy(() => {
@@ -111,7 +111,7 @@ export class LuzmoSplitView {
111
111
  }
112
112
  bindEvents() {
113
113
  this.listenerCleanup.push(this.renderer.listen(this.host, 'type', (event) => {
114
- this.typeEvent.emit(event);
114
+ this.type.emit(event);
115
115
  }));
116
116
  this.listenerCleanup.push(this.renderer.listen(this.host, 'input', (event) => {
117
117
  this.inputEvent.emit(event);
@@ -127,7 +127,7 @@ export class LuzmoSplitView {
127
127
  return this.host.focus(options);
128
128
  }
129
129
  static ɵfac = function LuzmoSplitView_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoSplitView)(); };
130
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSplitView, selectors: [["luzmo-split-view"]], inputs: { vertical: "vertical", resizable: "resizable", collapsible: "collapsible", label: "label", primaryMin: "primaryMin", primaryMax: "primaryMax", secondaryMin: "secondaryMin", secondaryMax: "secondaryMax", primarySize: "primarySize", splitterPos: "splitterPos", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { typeEvent: "type", inputEvent: "input", changeEvent: "change", keydownEvent: "keydown" }, exportAs: ["luzmoSplitView"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoSplitView_Template(rf, ctx) { if (rf & 1) {
130
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSplitView, selectors: [["luzmo-split-view"]], inputs: { vertical: "vertical", resizable: "resizable", collapsible: "collapsible", label: "label", primaryMin: "primaryMin", primaryMax: "primaryMax", secondaryMin: "secondaryMin", secondaryMax: "secondaryMax", primarySize: "primarySize", splitterPos: "splitterPos", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { type: "type", inputEvent: "inputEvent", changeEvent: "changeEvent", keydownEvent: "keydownEvent" }, exportAs: ["luzmoSplitView"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoSplitView_Template(rf, ctx) { if (rf & 1) {
131
131
  i0.ɵɵprojectionDef();
132
132
  i0.ɵɵprojection(0);
133
133
  } }, encapsulation: 2 });
@@ -177,5 +177,5 @@ export class LuzmoSplitView {
177
177
  }], tabIndex: [{
178
178
  type: Input,
179
179
  args: [{ alias: 'tabIndex' }]
180
- }], typeEvent: [{ type: i0.Output, args: ["type"] }], inputEvent: [{ type: i0.Output, args: ["input"] }], changeEvent: [{ type: i0.Output, args: ["change"] }], keydownEvent: [{ type: i0.Output, args: ["keydown"] }] }); })();
180
+ }], type: [{ type: i0.Output, args: ["type"] }], inputEvent: [{ type: i0.Output, args: ["inputEvent"] }], changeEvent: [{ type: i0.Output, args: ["changeEvent"] }], keydownEvent: [{ type: i0.Output, args: ["keydownEvent"] }] }); })();
181
181
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoSplitView, { className: "LuzmoSplitView", filePath: "components/split-view.ts", lineNumber: 17 }); })();
@@ -32,7 +32,7 @@ export declare class LuzmoSwatchGroup implements OnChanges {
32
32
  private bindEvents;
33
33
  focus(options?: FocusOptions): void;
34
34
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoSwatchGroup, never>;
35
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSwatchGroup, "luzmo-swatch-group", ["luzmoSwatchGroup"], { "border": { "alias": "border"; "required": false; }; "density": { "alias": "density"; "required": false; }; "rounding": { "alias": "rounding"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "selects": { "alias": "selects"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "swatches": { "alias": "swatches"; "required": false; }; "rovingTabindexController": { "alias": "rovingTabindexController"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "changeEvent": "change"; }, never, ["*"], true, never>;
35
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSwatchGroup, "luzmo-swatch-group", ["luzmoSwatchGroup"], { "border": { "alias": "border"; "required": false; }; "density": { "alias": "density"; "required": false; }; "rounding": { "alias": "rounding"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "selects": { "alias": "selects"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "swatches": { "alias": "swatches"; "required": false; }; "rovingTabindexController": { "alias": "rovingTabindexController"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "changeEvent": "changeEvent"; }, never, ["*"], true, never>;
36
36
  }
37
37
  /** The underlying custom element type for LuzmoSwatchGroup */
38
38
  export type LuzmoSwatchGroupElement = LuzmoSwatchGroupHostElement;
@@ -26,7 +26,7 @@ export class LuzmoSwatchGroup {
26
26
  swatches;
27
27
  rovingTabindexController;
28
28
  size;
29
- changeEvent = output({ alias: 'change' });
29
+ changeEvent = output();
30
30
  constructor() {
31
31
  this.bindEvents();
32
32
  this.destroyRef.onDestroy(() => {
@@ -88,7 +88,7 @@ export class LuzmoSwatchGroup {
88
88
  return this.host.focus(options);
89
89
  }
90
90
  static ɵfac = function LuzmoSwatchGroup_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoSwatchGroup)(); };
91
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSwatchGroup, selectors: [["luzmo-swatch-group"]], inputs: { border: "border", density: "density", rounding: "rounding", selected: "selected", selects: "selects", shape: "shape", swatches: "swatches", rovingTabindexController: "rovingTabindexController", size: "size" }, outputs: { changeEvent: "change" }, exportAs: ["luzmoSwatchGroup"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoSwatchGroup_Template(rf, ctx) { if (rf & 1) {
91
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSwatchGroup, selectors: [["luzmo-swatch-group"]], inputs: { border: "border", density: "density", rounding: "rounding", selected: "selected", selects: "selects", shape: "shape", swatches: "swatches", rovingTabindexController: "rovingTabindexController", size: "size" }, outputs: { changeEvent: "changeEvent" }, exportAs: ["luzmoSwatchGroup"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoSwatchGroup_Template(rf, ctx) { if (rf & 1) {
92
92
  i0.ɵɵprojectionDef();
93
93
  i0.ɵɵprojection(0);
94
94
  } }, encapsulation: 2 });
@@ -129,5 +129,5 @@ export class LuzmoSwatchGroup {
129
129
  }], size: [{
130
130
  type: Input,
131
131
  args: [{ alias: 'size' }]
132
- }], changeEvent: [{ type: i0.Output, args: ["change"] }] }); })();
132
+ }], changeEvent: [{ type: i0.Output, args: ["changeEvent"] }] }); })();
133
133
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoSwatchGroup, { className: "LuzmoSwatchGroup", filePath: "components/swatch-group.ts", lineNumber: 17 }); })();
@@ -51,7 +51,7 @@ export declare class LuzmoSwatch implements OnChanges, ControlValueAccessor {
51
51
  toggle(force?: boolean): void;
52
52
  focus(options?: FocusOptions): void;
53
53
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoSwatch, never>;
54
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSwatch, "luzmo-swatch", ["luzmoSwatch"], { "border": { "alias": "border"; "required": false; }; "color": { "alias": "color"; "required": false; }; "label": { "alias": "label"; "required": false; }; "mixedValue": { "alias": "mixedValue"; "required": false; }; "nothing": { "alias": "nothing"; "required": false; }; "role": { "alias": "role"; "required": false; }; "rounding": { "alias": "rounding"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "value": { "alias": "value"; "required": false; }; "size": { "alias": "size"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "changeEvent": "change"; "keydownEvent": "keydown"; }, never, ["*"], true, never>;
54
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSwatch, "luzmo-swatch", ["luzmoSwatch"], { "border": { "alias": "border"; "required": false; }; "color": { "alias": "color"; "required": false; }; "label": { "alias": "label"; "required": false; }; "mixedValue": { "alias": "mixedValue"; "required": false; }; "nothing": { "alias": "nothing"; "required": false; }; "role": { "alias": "role"; "required": false; }; "rounding": { "alias": "rounding"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "shape": { "alias": "shape"; "required": false; }; "value": { "alias": "value"; "required": false; }; "size": { "alias": "size"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "changeEvent": "changeEvent"; "keydownEvent": "keydownEvent"; }, never, ["*"], true, never>;
55
55
  }
56
56
  /** The underlying custom element type for LuzmoSwatch */
57
57
  export type LuzmoSwatchElement = LuzmoSwatchHostElement;
@@ -32,9 +32,9 @@ export class LuzmoSwatch {
32
32
  disabled;
33
33
  /** The tab index to apply to this control. See general documentation about the tabindex HTML property */
34
34
  tabIndex;
35
- changeEvent = output({ alias: 'change' });
35
+ changeEvent = output();
36
36
  /** Trick :focus-visible polyfill into thinking keyboard based focus */
37
- keydownEvent = output({ alias: 'keydown' });
37
+ keydownEvent = output();
38
38
  constructor() {
39
39
  this.bindEvents();
40
40
  this.destroyRef.onDestroy(() => {
@@ -104,7 +104,6 @@ export class LuzmoSwatch {
104
104
  }
105
105
  bindEvents() {
106
106
  this.listenerCleanup.push(this.renderer.listen(this.host, 'change', (event) => {
107
- this.changeEvent.emit(event);
108
107
  if (!this.isWritingValue) {
109
108
  const eventWithDetail = event;
110
109
  const eventTarget = event.target;
@@ -116,13 +115,13 @@ export class LuzmoSwatch {
116
115
  : (detailRecord === undefined ? detail : undefined)
117
116
  ?? eventTarget?.['value']
118
117
  ?? hostRecord['value']);
119
- if (Object.is(this.lastCvaValue, nextValue)) {
120
- return;
118
+ if (!Object.is(this.lastCvaValue, nextValue)) {
119
+ this.lastCvaValue = nextValue;
120
+ this.setHostProperty('value', nextValue);
121
+ this.onChange(nextValue);
121
122
  }
122
- this.lastCvaValue = nextValue;
123
- this.setHostProperty('value', nextValue);
124
- this.onChange(nextValue);
125
123
  }
124
+ this.changeEvent.emit(event);
126
125
  }));
127
126
  this.listenerCleanup.push(this.renderer.listen(this.host, 'keydown', (event) => {
128
127
  this.keydownEvent.emit(event);
@@ -163,7 +162,7 @@ export class LuzmoSwatch {
163
162
  return this.host.focus(options);
164
163
  }
165
164
  static ɵfac = function LuzmoSwatch_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoSwatch)(); };
166
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSwatch, selectors: [["luzmo-swatch"]], inputs: { border: "border", color: "color", label: "label", mixedValue: "mixedValue", nothing: "nothing", role: "role", rounding: "rounding", selected: "selected", readonly: "readonly", shape: "shape", value: "value", size: "size", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { changeEvent: "change", keydownEvent: "keydown" }, exportAs: ["luzmoSwatch"], features: [i0.ɵɵProvidersFeature([
165
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSwatch, selectors: [["luzmo-swatch"]], inputs: { border: "border", color: "color", label: "label", mixedValue: "mixedValue", nothing: "nothing", role: "role", rounding: "rounding", selected: "selected", readonly: "readonly", shape: "shape", value: "value", size: "size", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { changeEvent: "changeEvent", keydownEvent: "keydownEvent" }, exportAs: ["luzmoSwatch"], features: [i0.ɵɵProvidersFeature([
167
166
  {
168
167
  provide: NG_VALUE_ACCESSOR,
169
168
  useExisting: forwardRef(() => LuzmoSwatch),
@@ -232,5 +231,5 @@ export class LuzmoSwatch {
232
231
  }], tabIndex: [{
233
232
  type: Input,
234
233
  args: [{ alias: 'tabIndex' }]
235
- }], changeEvent: [{ type: i0.Output, args: ["change"] }], keydownEvent: [{ type: i0.Output, args: ["keydown"] }] }); })();
234
+ }], changeEvent: [{ type: i0.Output, args: ["changeEvent"] }], keydownEvent: [{ type: i0.Output, args: ["keydownEvent"] }] }); })();
236
235
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoSwatch, { className: "LuzmoSwatch", filePath: "components/swatch.ts", lineNumber: 23 }); })();
@@ -50,7 +50,7 @@ export declare class LuzmoSwitch implements OnChanges, ControlValueAccessor {
50
50
  setDisabledState(isDisabled: boolean): void;
51
51
  focus(options?: FocusOptions): void;
52
52
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoSwitch, never>;
53
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSwitch, "luzmo-switch", ["luzmoSwitch"], { "emphasized": { "alias": "emphasized"; "required": false; }; "thumb": { "alias": "thumb"; "required": false; }; "size": { "alias": "size"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; "name": { "alias": "name"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "changeEvent": "change"; "keydownEvent": "keydown"; }, never, ["*"], true, never>;
53
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSwitch, "luzmo-switch", ["luzmoSwitch"], { "emphasized": { "alias": "emphasized"; "required": false; }; "thumb": { "alias": "thumb"; "required": false; }; "size": { "alias": "size"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; "name": { "alias": "name"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "changeEvent": "changeEvent"; "keydownEvent": "keydownEvent"; }, never, ["*"], true, never>;
54
54
  }
55
55
  /** The underlying custom element type for LuzmoSwitch */
56
56
  export type LuzmoSwitchElement = LuzmoSwitchHostElement;
@@ -34,9 +34,9 @@ export class LuzmoSwitch {
34
34
  /** The tab index to apply to this control. See general documentation about the tabindex HTML property */
35
35
  tabIndex;
36
36
  /** Announces a change in the `checked` property of a Switch */
37
- changeEvent = output({ alias: 'change' });
37
+ changeEvent = output();
38
38
  /** Trick :focus-visible polyfill into thinking keyboard based focus */
39
- keydownEvent = output({ alias: 'keydown' });
39
+ keydownEvent = output();
40
40
  constructor() {
41
41
  this.bindEvents();
42
42
  this.destroyRef.onDestroy(() => {
@@ -88,7 +88,6 @@ export class LuzmoSwitch {
88
88
  }
89
89
  bindEvents() {
90
90
  this.listenerCleanup.push(this.renderer.listen(this.host, 'change', (event) => {
91
- this.changeEvent.emit(event);
92
91
  if (!this.isWritingValue) {
93
92
  const eventWithDetail = event;
94
93
  const eventTarget = event.target;
@@ -100,13 +99,13 @@ export class LuzmoSwitch {
100
99
  : (detailRecord === undefined ? detail : undefined)
101
100
  ?? eventTarget?.['checked']
102
101
  ?? hostRecord['checked']);
103
- if (Object.is(this.lastCvaValue, nextValue)) {
104
- return;
102
+ if (!Object.is(this.lastCvaValue, nextValue)) {
103
+ this.lastCvaValue = nextValue;
104
+ this.setHostProperty('checked', nextValue);
105
+ this.onChange(nextValue);
105
106
  }
106
- this.lastCvaValue = nextValue;
107
- this.setHostProperty('checked', nextValue);
108
- this.onChange(nextValue);
109
107
  }
108
+ this.changeEvent.emit(event);
110
109
  }));
111
110
  this.listenerCleanup.push(this.renderer.listen(this.host, 'keydown', (event) => {
112
111
  this.keydownEvent.emit(event);
@@ -144,7 +143,7 @@ export class LuzmoSwitch {
144
143
  return this.host.focus(options);
145
144
  }
146
145
  static ɵfac = function LuzmoSwitch_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoSwitch)(); };
147
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSwitch, selectors: [["luzmo-switch"]], inputs: { emphasized: "emphasized", thumb: "thumb", size: "size", checked: "checked", name: "name", readonly: "readonly", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { changeEvent: "change", keydownEvent: "keydown" }, exportAs: ["luzmoSwitch"], features: [i0.ɵɵProvidersFeature([
146
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSwitch, selectors: [["luzmo-switch"]], inputs: { emphasized: "emphasized", thumb: "thumb", size: "size", checked: "checked", name: "name", readonly: "readonly", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { changeEvent: "changeEvent", keydownEvent: "keydownEvent" }, exportAs: ["luzmoSwitch"], features: [i0.ɵɵProvidersFeature([
148
147
  {
149
148
  provide: NG_VALUE_ACCESSOR,
150
149
  useExisting: forwardRef(() => LuzmoSwitch),
@@ -195,5 +194,5 @@ export class LuzmoSwitch {
195
194
  }], tabIndex: [{
196
195
  type: Input,
197
196
  args: [{ alias: 'tabIndex' }]
198
- }], changeEvent: [{ type: i0.Output, args: ["change"] }], keydownEvent: [{ type: i0.Output, args: ["keydown"] }] }); })();
197
+ }], changeEvent: [{ type: i0.Output, args: ["changeEvent"] }], keydownEvent: [{ type: i0.Output, args: ["keydownEvent"] }] }); })();
199
198
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoSwitch, { className: "LuzmoSwitch", filePath: "components/switch.ts", lineNumber: 25 }); })();
@@ -44,7 +44,7 @@ export declare class LuzmoTabs implements OnChanges {
44
44
  private bindEvents;
45
45
  focus(options?: FocusOptions): void;
46
46
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoTabs, never>;
47
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoTabs, "luzmo-tabs", ["luzmoTabs"], { "auto": { "alias": "auto"; "required": false; }; "compact": { "alias": "compact"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "emphasized": { "alias": "emphasized"; "required": false; }; "label": { "alias": "label"; "required": false; }; "enableTabsScroll": { "alias": "enableTabsScroll"; "required": false; }; "quiet": { "alias": "quiet"; "required": false; }; "selectionIndicatorStyle": { "alias": "selectionIndicatorStyle"; "required": false; }; "shouldAnimate": { "alias": "shouldAnimate"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "size": { "alias": "size"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "changeEvent": "change"; "keydownEvent": "keydown"; }, never, ["*"], true, never>;
47
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoTabs, "luzmo-tabs", ["luzmoTabs"], { "auto": { "alias": "auto"; "required": false; }; "compact": { "alias": "compact"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "emphasized": { "alias": "emphasized"; "required": false; }; "label": { "alias": "label"; "required": false; }; "enableTabsScroll": { "alias": "enableTabsScroll"; "required": false; }; "quiet": { "alias": "quiet"; "required": false; }; "selectionIndicatorStyle": { "alias": "selectionIndicatorStyle"; "required": false; }; "shouldAnimate": { "alias": "shouldAnimate"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "size": { "alias": "size"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "changeEvent": "changeEvent"; "keydownEvent": "keydownEvent"; }, never, ["*"], true, never>;
48
48
  }
49
49
  /** The underlying custom element type for LuzmoTabs */
50
50
  export type LuzmoTabsElement = LuzmoTabsHostElement;
@@ -38,9 +38,9 @@ export class LuzmoTabs {
38
38
  /** The tab index to apply to this control. See general documentation about the tabindex HTML property */
39
39
  tabIndex;
40
40
  /** The selected Tab child has changed. */
41
- changeEvent = output({ alias: 'change' });
41
+ changeEvent = output();
42
42
  /** Trick :focus-visible polyfill into thinking keyboard based focus */
43
- keydownEvent = output({ alias: 'keydown' });
43
+ keydownEvent = output();
44
44
  constructor() {
45
45
  this.bindEvents();
46
46
  this.destroyRef.onDestroy(() => {
@@ -117,7 +117,7 @@ export class LuzmoTabs {
117
117
  return this.host.focus(options);
118
118
  }
119
119
  static ɵfac = function LuzmoTabs_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoTabs)(); };
120
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoTabs, selectors: [["luzmo-tabs"]], inputs: { auto: "auto", compact: "compact", direction: "direction", emphasized: "emphasized", label: "label", enableTabsScroll: "enableTabsScroll", quiet: "quiet", selectionIndicatorStyle: "selectionIndicatorStyle", shouldAnimate: "shouldAnimate", selected: "selected", size: "size", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { changeEvent: "change", keydownEvent: "keydown" }, exportAs: ["luzmoTabs"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoTabs_Template(rf, ctx) { if (rf & 1) {
120
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoTabs, selectors: [["luzmo-tabs"]], inputs: { auto: "auto", compact: "compact", direction: "direction", emphasized: "emphasized", label: "label", enableTabsScroll: "enableTabsScroll", quiet: "quiet", selectionIndicatorStyle: "selectionIndicatorStyle", shouldAnimate: "shouldAnimate", selected: "selected", size: "size", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { changeEvent: "changeEvent", keydownEvent: "keydownEvent" }, exportAs: ["luzmoTabs"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoTabs_Template(rf, ctx) { if (rf & 1) {
121
121
  i0.ɵɵprojectionDef();
122
122
  i0.ɵɵprojection(0);
123
123
  } }, encapsulation: 2 });
@@ -170,5 +170,5 @@ export class LuzmoTabs {
170
170
  }], tabIndex: [{
171
171
  type: Input,
172
172
  args: [{ alias: 'tabIndex' }]
173
- }], changeEvent: [{ type: i0.Output, args: ["change"] }], keydownEvent: [{ type: i0.Output, args: ["keydown"] }] }); })();
173
+ }], changeEvent: [{ type: i0.Output, args: ["changeEvent"] }], keydownEvent: [{ type: i0.Output, args: ["keydownEvent"] }] }); })();
174
174
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoTabs, { className: "LuzmoTabs", filePath: "components/tabs.ts", lineNumber: 19 }); })();
@@ -19,7 +19,7 @@ export declare class LuzmoTag implements OnChanges {
19
19
  disabled?: boolean;
20
20
  readonly?: boolean;
21
21
  size?: ('xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl');
22
- readonly deleteEvent: import("@angular/core").OutputEmitterRef<Event>;
22
+ readonly delete: import("@angular/core").OutputEmitterRef<Event>;
23
23
  constructor();
24
24
  ngOnChanges(changes: SimpleChanges): void;
25
25
  /**
@@ -31,7 +31,7 @@ export declare class LuzmoTag implements OnChanges {
31
31
  private setHostProperty;
32
32
  private bindEvents;
33
33
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoTag, never>;
34
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoTag, "luzmo-tag", ["luzmoTag"], { "variant": { "alias": "variant"; "required": false; }; "treatment": { "alias": "treatment"; "required": false; }; "deletable": { "alias": "deletable"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "deleteEvent": "delete"; }, never, ["*"], true, never>;
34
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoTag, "luzmo-tag", ["luzmoTag"], { "variant": { "alias": "variant"; "required": false; }; "treatment": { "alias": "treatment"; "required": false; }; "deletable": { "alias": "deletable"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "delete": "delete"; }, never, ["*"], true, never>;
35
35
  }
36
36
  /** The underlying custom element type for LuzmoTag */
37
37
  export type LuzmoTagElement = LuzmoTagHostElement;
@@ -27,7 +27,7 @@ export class LuzmoTag {
27
27
  disabled;
28
28
  readonly;
29
29
  size;
30
- deleteEvent = output({ alias: 'delete' });
30
+ delete = output({ alias: 'delete' });
31
31
  constructor() {
32
32
  this.bindEvents();
33
33
  this.destroyRef.onDestroy(() => {
@@ -73,11 +73,11 @@ export class LuzmoTag {
73
73
  }
74
74
  bindEvents() {
75
75
  this.listenerCleanup.push(this.renderer.listen(this.host, 'delete', (event) => {
76
- this.deleteEvent.emit(event);
76
+ this.delete.emit(event);
77
77
  }));
78
78
  }
79
79
  static ɵfac = function LuzmoTag_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoTag)(); };
80
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoTag, selectors: [["luzmo-tag"]], inputs: { variant: "variant", treatment: "treatment", deletable: "deletable", disabled: "disabled", readonly: "readonly", size: "size" }, outputs: { deleteEvent: "delete" }, exportAs: ["luzmoTag"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoTag_Template(rf, ctx) { if (rf & 1) {
80
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoTag, selectors: [["luzmo-tag"]], inputs: { variant: "variant", treatment: "treatment", deletable: "deletable", disabled: "disabled", readonly: "readonly", size: "size" }, outputs: { delete: "delete" }, exportAs: ["luzmoTag"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoTag_Template(rf, ctx) { if (rf & 1) {
81
81
  i0.ɵɵprojectionDef();
82
82
  i0.ɵɵprojection(0);
83
83
  } }, encapsulation: 2 });
@@ -109,5 +109,5 @@ export class LuzmoTag {
109
109
  }], size: [{
110
110
  type: Input,
111
111
  args: [{ alias: 'size' }]
112
- }], deleteEvent: [{ type: i0.Output, args: ["delete"] }] }); })();
112
+ }], delete: [{ type: i0.Output, args: ["delete"] }] }); })();
113
113
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoTag, { className: "LuzmoTag", filePath: "components/tag.ts", lineNumber: 20 }); })();
@@ -89,7 +89,7 @@ export declare class LuzmoTextField implements OnChanges, ControlValueAccessor {
89
89
  checkValidity(): boolean;
90
90
  focus(options?: FocusOptions): void;
91
91
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoTextField, never>;
92
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoTextField, "luzmo-text-field", ["luzmoTextField"], { "value": { "alias": "value"; "required": false; }; "helpTextManager": { "alias": "helpTextManager"; "required": false; }; "size": { "alias": "size"; "required": false; }; "allowedKeys": { "alias": "allowedKeys"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "label": { "alias": "label"; "required": false; }; "name": { "alias": "name"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "type": { "alias": "type"; "required": false; }; "pattern": { "alias": "pattern"; "required": false; }; "grows": { "alias": "grows"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "minlength": { "alias": "minlength"; "required": false; }; "multiline": { "alias": "multiline"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "maxRows": { "alias": "maxRows"; "required": false; }; "valid": { "alias": "valid"; "required": false; }; "hideValidationIcons": { "alias": "hideValidationIcons"; "required": false; }; "quiet": { "alias": "quiet"; "required": false; }; "required": { "alias": "required"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "changeEvent": "change"; "inputEvent": "input"; "keypressEvent": "keypress"; "keydownEvent": "keydown"; }, never, ["*"], true, never>;
92
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoTextField, "luzmo-text-field", ["luzmoTextField"], { "value": { "alias": "value"; "required": false; }; "helpTextManager": { "alias": "helpTextManager"; "required": false; }; "size": { "alias": "size"; "required": false; }; "allowedKeys": { "alias": "allowedKeys"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "label": { "alias": "label"; "required": false; }; "name": { "alias": "name"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "type": { "alias": "type"; "required": false; }; "pattern": { "alias": "pattern"; "required": false; }; "grows": { "alias": "grows"; "required": false; }; "maxlength": { "alias": "maxlength"; "required": false; }; "minlength": { "alias": "minlength"; "required": false; }; "multiline": { "alias": "multiline"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "maxRows": { "alias": "maxRows"; "required": false; }; "valid": { "alias": "valid"; "required": false; }; "hideValidationIcons": { "alias": "hideValidationIcons"; "required": false; }; "quiet": { "alias": "quiet"; "required": false; }; "required": { "alias": "required"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; }, { "changeEvent": "changeEvent"; "inputEvent": "inputEvent"; "keypressEvent": "keypressEvent"; "keydownEvent": "keydownEvent"; }, never, ["*"], true, never>;
93
93
  }
94
94
  /** The underlying custom element type for LuzmoTextField */
95
95
  export type LuzmoTextFieldElement = LuzmoTextFieldHostElement;
@@ -65,13 +65,13 @@ export class LuzmoTextField {
65
65
  /** The tab index to apply to this control. See general documentation about the tabindex HTML property */
66
66
  tabIndex;
67
67
  /** An alteration to the value of the element has been committed by the user. */
68
- changeEvent = output({ alias: 'change' });
68
+ changeEvent = output();
69
69
  /** The value of the element has changed. */
70
- inputEvent = output({ alias: 'input' });
70
+ inputEvent = output();
71
71
  /** A key has been pressed. */
72
- keypressEvent = output({ alias: 'keypress' });
72
+ keypressEvent = output();
73
73
  /** Trick :focus-visible polyfill into thinking keyboard based focus */
74
- keydownEvent = output({ alias: 'keydown' });
74
+ keydownEvent = output();
75
75
  constructor() {
76
76
  this.bindEvents();
77
77
  this.destroyRef.onDestroy(() => {
@@ -171,7 +171,6 @@ export class LuzmoTextField {
171
171
  }
172
172
  bindEvents() {
173
173
  this.listenerCleanup.push(this.renderer.listen(this.host, 'change', (event) => {
174
- this.changeEvent.emit(event);
175
174
  if (!this.isWritingValue) {
176
175
  const eventWithDetail = event;
177
176
  const eventTarget = event.target;
@@ -183,13 +182,13 @@ export class LuzmoTextField {
183
182
  : (detailRecord === undefined ? detail : undefined)
184
183
  ?? eventTarget?.['value']
185
184
  ?? hostRecord['value']);
186
- if (Object.is(this.lastCvaValue, nextValue)) {
187
- return;
185
+ if (!Object.is(this.lastCvaValue, nextValue)) {
186
+ this.lastCvaValue = nextValue;
187
+ this.setHostProperty('value', nextValue);
188
+ this.onChange(nextValue);
188
189
  }
189
- this.lastCvaValue = nextValue;
190
- this.setHostProperty('value', nextValue);
191
- this.onChange(nextValue);
192
190
  }
191
+ this.changeEvent.emit(event);
193
192
  }));
194
193
  this.listenerCleanup.push(this.renderer.listen(this.host, 'input', (event) => {
195
194
  this.inputEvent.emit(event);
@@ -244,7 +243,7 @@ export class LuzmoTextField {
244
243
  return this.host.focus(options);
245
244
  }
246
245
  static ɵfac = function LuzmoTextField_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoTextField)(); };
247
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoTextField, selectors: [["luzmo-text-field"]], inputs: { value: "value", helpTextManager: "helpTextManager", size: "size", allowedKeys: "allowedKeys", invalid: "invalid", label: "label", name: "name", placeholder: "placeholder", type: "type", pattern: "pattern", grows: "grows", maxlength: "maxlength", minlength: "minlength", multiline: "multiline", readonly: "readonly", rows: "rows", maxRows: "maxRows", valid: "valid", hideValidationIcons: "hideValidationIcons", quiet: "quiet", required: "required", autocomplete: "autocomplete", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { changeEvent: "change", inputEvent: "input", keypressEvent: "keypress", keydownEvent: "keydown" }, exportAs: ["luzmoTextField"], features: [i0.ɵɵProvidersFeature([
246
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoTextField, selectors: [["luzmo-text-field"]], inputs: { value: "value", helpTextManager: "helpTextManager", size: "size", allowedKeys: "allowedKeys", invalid: "invalid", label: "label", name: "name", placeholder: "placeholder", type: "type", pattern: "pattern", grows: "grows", maxlength: "maxlength", minlength: "minlength", multiline: "multiline", readonly: "readonly", rows: "rows", maxRows: "maxRows", valid: "valid", hideValidationIcons: "hideValidationIcons", quiet: "quiet", required: "required", autocomplete: "autocomplete", disabled: "disabled", tabIndex: "tabIndex" }, outputs: { changeEvent: "changeEvent", inputEvent: "inputEvent", keypressEvent: "keypressEvent", keydownEvent: "keydownEvent" }, exportAs: ["luzmoTextField"], features: [i0.ɵɵProvidersFeature([
248
247
  {
249
248
  provide: NG_VALUE_ACCESSOR,
250
249
  useExisting: forwardRef(() => LuzmoTextField),
@@ -343,5 +342,5 @@ export class LuzmoTextField {
343
342
  }], tabIndex: [{
344
343
  type: Input,
345
344
  args: [{ alias: 'tabIndex' }]
346
- }], changeEvent: [{ type: i0.Output, args: ["change"] }], inputEvent: [{ type: i0.Output, args: ["input"] }], keypressEvent: [{ type: i0.Output, args: ["keypress"] }], keydownEvent: [{ type: i0.Output, args: ["keydown"] }] }); })();
345
+ }], changeEvent: [{ type: i0.Output, args: ["changeEvent"] }], inputEvent: [{ type: i0.Output, args: ["inputEvent"] }], keypressEvent: [{ type: i0.Output, args: ["keypressEvent"] }], keydownEvent: [{ type: i0.Output, args: ["keydownEvent"] }] }); })();
347
346
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoTextField, { className: "LuzmoTextField", filePath: "components/text-field.ts", lineNumber: 26 }); })();
@@ -24,7 +24,7 @@ export declare class LuzmoToast implements OnChanges {
24
24
  private bindEvents;
25
25
  close(): void;
26
26
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoToast, never>;
27
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoToast, "luzmo-toast", ["luzmoToast"], {}, { "closeEvent": "close"; }, never, ["*"], true, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoToast, "luzmo-toast", ["luzmoToast"], {}, { "closeEvent": "closeEvent"; }, never, ["*"], true, never>;
28
28
  }
29
29
  /** The underlying custom element type for LuzmoToast */
30
30
  export type LuzmoToastElement = LuzmoToastHostElement;
@@ -19,7 +19,7 @@ export class LuzmoToast {
19
19
  return this.host;
20
20
  }
21
21
  /** Announces that the Toast has been closed by the user or by its timeout. */
22
- closeEvent = output({ alias: 'close' });
22
+ closeEvent = output();
23
23
  constructor() {
24
24
  this.bindEvents();
25
25
  this.destroyRef.onDestroy(() => {
@@ -50,7 +50,7 @@ export class LuzmoToast {
50
50
  return this.host.close();
51
51
  }
52
52
  static ɵfac = function LuzmoToast_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoToast)(); };
53
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoToast, selectors: [["luzmo-toast"]], outputs: { closeEvent: "close" }, exportAs: ["luzmoToast"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoToast_Template(rf, ctx) { if (rf & 1) {
53
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoToast, selectors: [["luzmo-toast"]], outputs: { closeEvent: "closeEvent" }, exportAs: ["luzmoToast"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoToast_Template(rf, ctx) { if (rf & 1) {
54
54
  i0.ɵɵprojectionDef();
55
55
  i0.ɵɵprojection(0);
56
56
  } }, encapsulation: 2 });
@@ -64,5 +64,5 @@ export class LuzmoToast {
64
64
  changeDetection: ChangeDetectionStrategy.OnPush,
65
65
  template: '<ng-content />'
66
66
  }]
67
- }], () => [], { closeEvent: [{ type: i0.Output, args: ["close"] }] }); })();
67
+ }], () => [], { closeEvent: [{ type: i0.Output, args: ["closeEvent"] }] }); })();
68
68
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoToast, { className: "LuzmoToast", filePath: "components/toast.ts", lineNumber: 18 }); })();