@luzmo/ngx-lucero 1.0.1-alpha.78

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 (136) hide show
  1. package/README.md +41 -0
  2. package/esm/components/accordion-item.d.ts +32 -0
  3. package/esm/components/accordion-item.js +89 -0
  4. package/esm/components/accordion.d.ts +38 -0
  5. package/esm/components/accordion.js +107 -0
  6. package/esm/components/action-bar.d.ts +32 -0
  7. package/esm/components/action-bar.js +83 -0
  8. package/esm/components/action-button.d.ts +59 -0
  9. package/esm/components/action-button.js +205 -0
  10. package/esm/components/action-group.d.ts +42 -0
  11. package/esm/components/action-group.js +155 -0
  12. package/esm/components/action-menu.d.ts +75 -0
  13. package/esm/components/action-menu.js +337 -0
  14. package/esm/components/avatar.d.ts +35 -0
  15. package/esm/components/avatar.js +94 -0
  16. package/esm/components/badge.d.ts +31 -0
  17. package/esm/components/badge.js +86 -0
  18. package/esm/components/button-group.d.ts +28 -0
  19. package/esm/components/button-group.js +71 -0
  20. package/esm/components/button.d.ts +40 -0
  21. package/esm/components/button.js +140 -0
  22. package/esm/components/calendar.d.ts +64 -0
  23. package/esm/components/calendar.js +218 -0
  24. package/esm/components/chat-message-group.d.ts +29 -0
  25. package/esm/components/chat-message-group.js +76 -0
  26. package/esm/components/chat-message.d.ts +50 -0
  27. package/esm/components/chat-message.js +156 -0
  28. package/esm/components/checkbox.d.ts +55 -0
  29. package/esm/components/checkbox.js +196 -0
  30. package/esm/components/clear-button.d.ts +32 -0
  31. package/esm/components/clear-button.js +88 -0
  32. package/esm/components/close-button.d.ts +33 -0
  33. package/esm/components/close-button.js +95 -0
  34. package/esm/components/color-area.d.ts +45 -0
  35. package/esm/components/color-area.js +167 -0
  36. package/esm/components/color-field.d.ts +91 -0
  37. package/esm/components/color-field.js +321 -0
  38. package/esm/components/color-handle.d.ts +31 -0
  39. package/esm/components/color-handle.js +90 -0
  40. package/esm/components/color-loupe.d.ts +29 -0
  41. package/esm/components/color-loupe.js +76 -0
  42. package/esm/components/color-menu.d.ts +36 -0
  43. package/esm/components/color-menu.js +97 -0
  44. package/esm/components/color-palette-group.d.ts +40 -0
  45. package/esm/components/color-palette-group.js +117 -0
  46. package/esm/components/color-palette.d.ts +43 -0
  47. package/esm/components/color-palette.js +126 -0
  48. package/esm/components/color-picker.d.ts +49 -0
  49. package/esm/components/color-picker.js +143 -0
  50. package/esm/components/color-slider.d.ts +53 -0
  51. package/esm/components/color-slider.js +215 -0
  52. package/esm/components/date-range-picker.d.ts +69 -0
  53. package/esm/components/date-range-picker.js +228 -0
  54. package/esm/components/date-time-picker.d.ts +71 -0
  55. package/esm/components/date-time-picker.js +249 -0
  56. package/esm/components/divider.d.ts +31 -0
  57. package/esm/components/divider.js +78 -0
  58. package/esm/components/field-group.d.ts +32 -0
  59. package/esm/components/field-group.js +101 -0
  60. package/esm/components/field-label.d.ts +37 -0
  61. package/esm/components/field-label.js +104 -0
  62. package/esm/components/help-text.d.ts +30 -0
  63. package/esm/components/help-text.js +77 -0
  64. package/esm/components/icon.d.ts +33 -0
  65. package/esm/components/icon.js +104 -0
  66. package/esm/components/infield-button.d.ts +35 -0
  67. package/esm/components/infield-button.js +103 -0
  68. package/esm/components/label.d.ts +29 -0
  69. package/esm/components/label.js +76 -0
  70. package/esm/components/menu.d.ts +53 -0
  71. package/esm/components/menu.js +218 -0
  72. package/esm/components/multi-language-field.d.ts +58 -0
  73. package/esm/components/multi-language-field.js +263 -0
  74. package/esm/components/number-field.d.ts +103 -0
  75. package/esm/components/number-field.js +372 -0
  76. package/esm/components/options.d.ts +58 -0
  77. package/esm/components/options.js +207 -0
  78. package/esm/components/overlay.d.ts +67 -0
  79. package/esm/components/overlay.js +212 -0
  80. package/esm/components/picker-button.d.ts +32 -0
  81. package/esm/components/picker-button.js +94 -0
  82. package/esm/components/picker.d.ts +79 -0
  83. package/esm/components/picker.js +340 -0
  84. package/esm/components/popover.d.ts +33 -0
  85. package/esm/components/popover.js +93 -0
  86. package/esm/components/progress-bar.d.ts +35 -0
  87. package/esm/components/progress-bar.js +121 -0
  88. package/esm/components/progress-circle.d.ts +35 -0
  89. package/esm/components/progress-circle.js +94 -0
  90. package/esm/components/progress-steps.d.ts +46 -0
  91. package/esm/components/progress-steps.js +127 -0
  92. package/esm/components/prompt-box.d.ts +88 -0
  93. package/esm/components/prompt-box.js +280 -0
  94. package/esm/components/radio-group.d.ts +39 -0
  95. package/esm/components/radio-group.js +136 -0
  96. package/esm/components/radio.d.ts +46 -0
  97. package/esm/components/radio.js +172 -0
  98. package/esm/components/search.d.ts +95 -0
  99. package/esm/components/search.js +351 -0
  100. package/esm/components/select.d.ts +82 -0
  101. package/esm/components/select.js +351 -0
  102. package/esm/components/slider.d.ts +47 -0
  103. package/esm/components/slider.js +185 -0
  104. package/esm/components/status-light.d.ts +30 -0
  105. package/esm/components/status-light.js +78 -0
  106. package/esm/components/swatch-group.d.ts +37 -0
  107. package/esm/components/swatch-group.js +126 -0
  108. package/esm/components/swatch.d.ts +49 -0
  109. package/esm/components/swatch.js +197 -0
  110. package/esm/components/switch.d.ts +48 -0
  111. package/esm/components/switch.js +160 -0
  112. package/esm/components/tab-panel.d.ts +29 -0
  113. package/esm/components/tab-panel.js +78 -0
  114. package/esm/components/tab.d.ts +32 -0
  115. package/esm/components/tab.js +100 -0
  116. package/esm/components/tabs-overflow.d.ts +33 -0
  117. package/esm/components/tabs-overflow.js +97 -0
  118. package/esm/components/tabs.d.ts +43 -0
  119. package/esm/components/tabs.js +150 -0
  120. package/esm/components/tag.d.ts +31 -0
  121. package/esm/components/tag.js +90 -0
  122. package/esm/components/tags.d.ts +30 -0
  123. package/esm/components/tags.js +81 -0
  124. package/esm/components/text-field.d.ts +87 -0
  125. package/esm/components/text-field.js +308 -0
  126. package/esm/components/toast.d.ts +30 -0
  127. package/esm/components/toast.js +68 -0
  128. package/esm/components/tooltip.d.ts +44 -0
  129. package/esm/components/tooltip.js +154 -0
  130. package/esm/components/top-nav-item.d.ts +35 -0
  131. package/esm/components/top-nav-item.js +120 -0
  132. package/esm/components/top-nav.d.ts +35 -0
  133. package/esm/components/top-nav.js +110 -0
  134. package/esm/index.d.ts +135 -0
  135. package/esm/index.js +269 -0
  136. package/package.json +40 -0
@@ -0,0 +1,77 @@
1
+ import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, Input, Renderer2 } from '@angular/core';
2
+ import '@luzmo/lucero/text-field';
3
+ import * as i0 from "@angular/core";
4
+ const _c0 = ["*"];
5
+ /**
6
+ * Angular wrapper component for <luzmo-help-text>
7
+ */
8
+ export class LuzmoHelpText {
9
+ elementRef = inject(ElementRef);
10
+ renderer = inject(Renderer2);
11
+ destroyRef = inject(DestroyRef);
12
+ host = this.elementRef.nativeElement;
13
+ listenerCleanup = [];
14
+ /** The underlying custom element instance. Use to call imperative methods. */
15
+ get nativeElement() {
16
+ return this.host;
17
+ }
18
+ icon;
19
+ /** The visual variant to apply to this help text. */
20
+ variant;
21
+ constructor() {
22
+ this.bindEvents();
23
+ this.destroyRef.onDestroy(() => {
24
+ for (const cleanup of this.listenerCleanup) {
25
+ cleanup();
26
+ }
27
+ });
28
+ }
29
+ ngOnChanges(changes) {
30
+ for (const key of Object.keys(changes)) {
31
+ switch (key) {
32
+ case 'icon':
33
+ this.setHostProperty('icon', changes['icon'].currentValue);
34
+ break;
35
+ case 'variant':
36
+ this.setHostProperty('variant', changes['variant'].currentValue);
37
+ break;
38
+ default:
39
+ break;
40
+ }
41
+ }
42
+ }
43
+ /**
44
+ * Forward a wrapper @Input to the underlying host element via Renderer2 so
45
+ * the wrapper stays compatible with non-DOM Angular platforms (SSR, tests).
46
+ * Unlike a "skip undefined" guard, this lets consumers reset values back to
47
+ * undefined / null by clearing their bindings.
48
+ */
49
+ setHostProperty(key, value) {
50
+ this.renderer.setProperty(this.host, key, value);
51
+ }
52
+ bindEvents() {
53
+ // No custom events for this wrapper.
54
+ }
55
+ static ɵfac = function LuzmoHelpText_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoHelpText)(); };
56
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoHelpText, selectors: [["luzmo-help-text"]], inputs: { icon: "icon", variant: "variant" }, exportAs: ["luzmoHelpText"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoHelpText_Template(rf, ctx) { if (rf & 1) {
57
+ i0.ɵɵprojectionDef();
58
+ i0.ɵɵprojection(0);
59
+ } }, encapsulation: 2, changeDetection: 0 });
60
+ }
61
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LuzmoHelpText, [{
62
+ type: Component,
63
+ args: [{
64
+ selector: 'luzmo-help-text',
65
+ exportAs: 'luzmoHelpText',
66
+ standalone: true,
67
+ changeDetection: ChangeDetectionStrategy.OnPush,
68
+ template: '<ng-content />'
69
+ }]
70
+ }], () => [], { icon: [{
71
+ type: Input,
72
+ args: [{ alias: 'icon' }]
73
+ }], variant: [{
74
+ type: Input,
75
+ args: [{ alias: 'variant' }]
76
+ }] }); })();
77
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoHelpText, { className: "LuzmoHelpText", filePath: "components/help-text.ts", lineNumber: 15 }); })();
@@ -0,0 +1,33 @@
1
+ import { OnChanges, SimpleChanges } from '@angular/core';
2
+ import '@luzmo/lucero/icon';
3
+ import type { LuzmoIcon as LuzmoIconHostElement } from '@luzmo/lucero/icon';
4
+ import * as i0 from "@angular/core";
5
+ export declare class LuzmoIcon implements OnChanges {
6
+ private readonly elementRef;
7
+ private readonly renderer;
8
+ private readonly destroyRef;
9
+ private readonly host;
10
+ private readonly listenerCleanup;
11
+ /** The underlying custom element instance. Use to call imperative methods. */
12
+ get nativeElement(): LuzmoIconHostElement;
13
+ src?: string;
14
+ options?: any;
15
+ icon?: any;
16
+ block?: boolean;
17
+ label?: string;
18
+ size?: 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl';
19
+ constructor();
20
+ ngOnChanges(changes: SimpleChanges): void;
21
+ /**
22
+ * Forward a wrapper @Input to the underlying host element via Renderer2 so
23
+ * the wrapper stays compatible with non-DOM Angular platforms (SSR, tests).
24
+ * Unlike a "skip undefined" guard, this lets consumers reset values back to
25
+ * undefined / null by clearing their bindings.
26
+ */
27
+ private setHostProperty;
28
+ private bindEvents;
29
+ static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoIcon, never>;
30
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoIcon, "luzmo-icon", ["luzmoIcon"], { "src": { "alias": "src"; "required": false; }; "options": { "alias": "options"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "block": { "alias": "block"; "required": false; }; "label": { "alias": "label"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, {}, never, ["*"], true, never>;
31
+ }
32
+ /** The underlying custom element type for LuzmoIcon */
33
+ export type LuzmoIconElement = LuzmoIconHostElement;
@@ -0,0 +1,104 @@
1
+ import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, Input, Renderer2 } from '@angular/core';
2
+ import '@luzmo/lucero/icon';
3
+ import * as i0 from "@angular/core";
4
+ const _c0 = ["*"];
5
+ /**
6
+ * Angular wrapper component for <luzmo-icon>
7
+ */
8
+ export class LuzmoIcon {
9
+ elementRef = inject(ElementRef);
10
+ renderer = inject(Renderer2);
11
+ destroyRef = inject(DestroyRef);
12
+ host = this.elementRef.nativeElement;
13
+ listenerCleanup = [];
14
+ /** The underlying custom element instance. Use to call imperative methods. */
15
+ get nativeElement() {
16
+ return this.host;
17
+ }
18
+ src;
19
+ options;
20
+ icon;
21
+ block;
22
+ label;
23
+ size;
24
+ constructor() {
25
+ this.bindEvents();
26
+ this.destroyRef.onDestroy(() => {
27
+ for (const cleanup of this.listenerCleanup) {
28
+ cleanup();
29
+ }
30
+ });
31
+ }
32
+ ngOnChanges(changes) {
33
+ for (const key of Object.keys(changes)) {
34
+ switch (key) {
35
+ case 'src':
36
+ this.setHostProperty('src', changes['src'].currentValue);
37
+ break;
38
+ case 'options':
39
+ this.setHostProperty('options', changes['options'].currentValue);
40
+ break;
41
+ case 'icon':
42
+ this.setHostProperty('icon', changes['icon'].currentValue);
43
+ break;
44
+ case 'block':
45
+ this.setHostProperty('block', changes['block'].currentValue);
46
+ break;
47
+ case 'label':
48
+ this.setHostProperty('label', changes['label'].currentValue);
49
+ break;
50
+ case 'size':
51
+ this.setHostProperty('size', changes['size'].currentValue);
52
+ break;
53
+ default:
54
+ break;
55
+ }
56
+ }
57
+ }
58
+ /**
59
+ * Forward a wrapper @Input to the underlying host element via Renderer2 so
60
+ * the wrapper stays compatible with non-DOM Angular platforms (SSR, tests).
61
+ * Unlike a "skip undefined" guard, this lets consumers reset values back to
62
+ * undefined / null by clearing their bindings.
63
+ */
64
+ setHostProperty(key, value) {
65
+ this.renderer.setProperty(this.host, key, value);
66
+ }
67
+ bindEvents() {
68
+ // No custom events for this wrapper.
69
+ }
70
+ static ɵfac = function LuzmoIcon_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoIcon)(); };
71
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoIcon, selectors: [["luzmo-icon"]], inputs: { src: "src", options: "options", icon: "icon", block: "block", label: "label", size: "size" }, exportAs: ["luzmoIcon"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoIcon_Template(rf, ctx) { if (rf & 1) {
72
+ i0.ɵɵprojectionDef();
73
+ i0.ɵɵprojection(0);
74
+ } }, encapsulation: 2, changeDetection: 0 });
75
+ }
76
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LuzmoIcon, [{
77
+ type: Component,
78
+ args: [{
79
+ selector: 'luzmo-icon',
80
+ exportAs: 'luzmoIcon',
81
+ standalone: true,
82
+ changeDetection: ChangeDetectionStrategy.OnPush,
83
+ template: '<ng-content />'
84
+ }]
85
+ }], () => [], { src: [{
86
+ type: Input,
87
+ args: [{ alias: 'src' }]
88
+ }], options: [{
89
+ type: Input,
90
+ args: [{ alias: 'options' }]
91
+ }], icon: [{
92
+ type: Input,
93
+ args: [{ alias: 'icon' }]
94
+ }], block: [{
95
+ type: Input,
96
+ args: [{ alias: 'block' }]
97
+ }], label: [{
98
+ type: Input,
99
+ args: [{ alias: 'label' }]
100
+ }], size: [{
101
+ type: Input,
102
+ args: [{ alias: 'size' }]
103
+ }] }); })();
104
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoIcon, { className: "LuzmoIcon", filePath: "components/icon.ts", lineNumber: 15 }); })();
@@ -0,0 +1,35 @@
1
+ import { OnChanges, SimpleChanges } from '@angular/core';
2
+ import '@luzmo/lucero/infield-button';
3
+ import type { LuzmoInfieldButton as LuzmoInfieldButtonHostElement } from '@luzmo/lucero/infield-button';
4
+ import * as i0 from "@angular/core";
5
+ export declare class LuzmoInfieldButton implements OnChanges {
6
+ private readonly elementRef;
7
+ private readonly renderer;
8
+ private readonly destroyRef;
9
+ private readonly host;
10
+ private readonly listenerCleanup;
11
+ /** The underlying custom element instance. Use to call imperative methods. */
12
+ get nativeElement(): LuzmoInfieldButtonHostElement;
13
+ /** Whether to style the button as if it is at the start or end of a vertical stack */
14
+ block?: 'start' | 'end';
15
+ /** Whether to style the button as if it is at the start or end of a horizontal group */
16
+ inline?: 'start' | 'end';
17
+ quiet?: boolean;
18
+ active?: boolean;
19
+ /** The default behavior of the button. Possible values are: `button` (default), `submit`, and `reset`. */
20
+ type?: 'button' | 'submit' | 'reset';
21
+ constructor();
22
+ ngOnChanges(changes: SimpleChanges): void;
23
+ /**
24
+ * Forward a wrapper @Input to the underlying host element via Renderer2 so
25
+ * the wrapper stays compatible with non-DOM Angular platforms (SSR, tests).
26
+ * Unlike a "skip undefined" guard, this lets consumers reset values back to
27
+ * undefined / null by clearing their bindings.
28
+ */
29
+ private setHostProperty;
30
+ private bindEvents;
31
+ static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoInfieldButton, never>;
32
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoInfieldButton, "luzmo-infield-button", ["luzmoInfieldButton"], { "block": { "alias": "block"; "required": false; }; "inline": { "alias": "inline"; "required": false; }; "quiet": { "alias": "quiet"; "required": false; }; "active": { "alias": "active"; "required": false; }; "type": { "alias": "type"; "required": false; }; }, {}, never, ["*"], true, never>;
33
+ }
34
+ /** The underlying custom element type for LuzmoInfieldButton */
35
+ export type LuzmoInfieldButtonElement = LuzmoInfieldButtonHostElement;
@@ -0,0 +1,103 @@
1
+ import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, Input, Renderer2 } from '@angular/core';
2
+ import '@luzmo/lucero/infield-button';
3
+ import * as i0 from "@angular/core";
4
+ const _c0 = ["*"];
5
+ /**
6
+ * Angular wrapper component for <luzmo-infield-button>
7
+ *
8
+ * @slot (default) - text content to be displayed in the Button element
9
+ * @slot icon - icon element(s) to display at the start of the button
10
+ */
11
+ export class LuzmoInfieldButton {
12
+ elementRef = inject(ElementRef);
13
+ renderer = inject(Renderer2);
14
+ destroyRef = inject(DestroyRef);
15
+ host = this.elementRef.nativeElement;
16
+ listenerCleanup = [];
17
+ /** The underlying custom element instance. Use to call imperative methods. */
18
+ get nativeElement() {
19
+ return this.host;
20
+ }
21
+ /** Whether to style the button as if it is at the start or end of a vertical stack */
22
+ block;
23
+ /** Whether to style the button as if it is at the start or end of a horizontal group */
24
+ inline;
25
+ quiet;
26
+ active;
27
+ /** The default behavior of the button. Possible values are: `button` (default), `submit`, and `reset`. */
28
+ type;
29
+ constructor() {
30
+ this.bindEvents();
31
+ this.destroyRef.onDestroy(() => {
32
+ for (const cleanup of this.listenerCleanup) {
33
+ cleanup();
34
+ }
35
+ });
36
+ }
37
+ ngOnChanges(changes) {
38
+ for (const key of Object.keys(changes)) {
39
+ switch (key) {
40
+ case 'block':
41
+ this.setHostProperty('block', changes['block'].currentValue);
42
+ break;
43
+ case 'inline':
44
+ this.setHostProperty('inline', changes['inline'].currentValue);
45
+ break;
46
+ case 'quiet':
47
+ this.setHostProperty('quiet', changes['quiet'].currentValue);
48
+ break;
49
+ case 'active':
50
+ this.setHostProperty('active', changes['active'].currentValue);
51
+ break;
52
+ case 'type':
53
+ this.setHostProperty('type', changes['type'].currentValue);
54
+ break;
55
+ default:
56
+ break;
57
+ }
58
+ }
59
+ }
60
+ /**
61
+ * Forward a wrapper @Input to the underlying host element via Renderer2 so
62
+ * the wrapper stays compatible with non-DOM Angular platforms (SSR, tests).
63
+ * Unlike a "skip undefined" guard, this lets consumers reset values back to
64
+ * undefined / null by clearing their bindings.
65
+ */
66
+ setHostProperty(key, value) {
67
+ this.renderer.setProperty(this.host, key, value);
68
+ }
69
+ bindEvents() {
70
+ // No custom events for this wrapper.
71
+ }
72
+ static ɵfac = function LuzmoInfieldButton_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoInfieldButton)(); };
73
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoInfieldButton, selectors: [["luzmo-infield-button"]], inputs: { block: "block", inline: "inline", quiet: "quiet", active: "active", type: "type" }, exportAs: ["luzmoInfieldButton"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoInfieldButton_Template(rf, ctx) { if (rf & 1) {
74
+ i0.ɵɵprojectionDef();
75
+ i0.ɵɵprojection(0);
76
+ } }, encapsulation: 2, changeDetection: 0 });
77
+ }
78
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LuzmoInfieldButton, [{
79
+ type: Component,
80
+ args: [{
81
+ selector: 'luzmo-infield-button',
82
+ exportAs: 'luzmoInfieldButton',
83
+ standalone: true,
84
+ changeDetection: ChangeDetectionStrategy.OnPush,
85
+ template: '<ng-content />'
86
+ }]
87
+ }], () => [], { block: [{
88
+ type: Input,
89
+ args: [{ alias: 'block' }]
90
+ }], inline: [{
91
+ type: Input,
92
+ args: [{ alias: 'inline' }]
93
+ }], quiet: [{
94
+ type: Input,
95
+ args: [{ alias: 'quiet' }]
96
+ }], active: [{
97
+ type: Input,
98
+ args: [{ alias: 'active' }]
99
+ }], type: [{
100
+ type: Input,
101
+ args: [{ alias: 'type' }]
102
+ }] }); })();
103
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoInfieldButton, { className: "LuzmoInfieldButton", filePath: "components/infield-button.ts", lineNumber: 18 }); })();
@@ -0,0 +1,29 @@
1
+ import { OnChanges, SimpleChanges } from '@angular/core';
2
+ import '@luzmo/lucero/label';
3
+ import type { LuzmoLabel as LuzmoLabelHostElement } from '@luzmo/lucero/label';
4
+ import * as i0 from "@angular/core";
5
+ export declare class LuzmoLabel implements OnChanges {
6
+ private readonly elementRef;
7
+ private readonly renderer;
8
+ private readonly destroyRef;
9
+ private readonly host;
10
+ private readonly listenerCleanup;
11
+ /** The underlying custom element instance. Use to call imperative methods. */
12
+ get nativeElement(): LuzmoLabelHostElement;
13
+ label?: string;
14
+ tooltip?: string;
15
+ constructor();
16
+ ngOnChanges(changes: SimpleChanges): void;
17
+ /**
18
+ * Forward a wrapper @Input to the underlying host element via Renderer2 so
19
+ * the wrapper stays compatible with non-DOM Angular platforms (SSR, tests).
20
+ * Unlike a "skip undefined" guard, this lets consumers reset values back to
21
+ * undefined / null by clearing their bindings.
22
+ */
23
+ private setHostProperty;
24
+ private bindEvents;
25
+ static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoLabel, never>;
26
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoLabel, "luzmo-label", ["luzmoLabel"], { "label": { "alias": "label"; "required": false; }; "tooltip": { "alias": "tooltip"; "required": false; }; }, {}, never, ["*"], true, never>;
27
+ }
28
+ /** The underlying custom element type for LuzmoLabel */
29
+ export type LuzmoLabelElement = LuzmoLabelHostElement;
@@ -0,0 +1,76 @@
1
+ import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, Input, Renderer2 } from '@angular/core';
2
+ import '@luzmo/lucero/label';
3
+ import * as i0 from "@angular/core";
4
+ const _c0 = ["*"];
5
+ /**
6
+ * Angular wrapper component for <luzmo-label>
7
+ */
8
+ export class LuzmoLabel {
9
+ elementRef = inject(ElementRef);
10
+ renderer = inject(Renderer2);
11
+ destroyRef = inject(DestroyRef);
12
+ host = this.elementRef.nativeElement;
13
+ listenerCleanup = [];
14
+ /** The underlying custom element instance. Use to call imperative methods. */
15
+ get nativeElement() {
16
+ return this.host;
17
+ }
18
+ label;
19
+ tooltip;
20
+ constructor() {
21
+ this.bindEvents();
22
+ this.destroyRef.onDestroy(() => {
23
+ for (const cleanup of this.listenerCleanup) {
24
+ cleanup();
25
+ }
26
+ });
27
+ }
28
+ ngOnChanges(changes) {
29
+ for (const key of Object.keys(changes)) {
30
+ switch (key) {
31
+ case 'label':
32
+ this.setHostProperty('label', changes['label'].currentValue);
33
+ break;
34
+ case 'tooltip':
35
+ this.setHostProperty('tooltip', changes['tooltip'].currentValue);
36
+ break;
37
+ default:
38
+ break;
39
+ }
40
+ }
41
+ }
42
+ /**
43
+ * Forward a wrapper @Input to the underlying host element via Renderer2 so
44
+ * the wrapper stays compatible with non-DOM Angular platforms (SSR, tests).
45
+ * Unlike a "skip undefined" guard, this lets consumers reset values back to
46
+ * undefined / null by clearing their bindings.
47
+ */
48
+ setHostProperty(key, value) {
49
+ this.renderer.setProperty(this.host, key, value);
50
+ }
51
+ bindEvents() {
52
+ // No custom events for this wrapper.
53
+ }
54
+ static ɵfac = function LuzmoLabel_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoLabel)(); };
55
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoLabel, selectors: [["luzmo-label"]], inputs: { label: "label", tooltip: "tooltip" }, exportAs: ["luzmoLabel"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoLabel_Template(rf, ctx) { if (rf & 1) {
56
+ i0.ɵɵprojectionDef();
57
+ i0.ɵɵprojection(0);
58
+ } }, encapsulation: 2, changeDetection: 0 });
59
+ }
60
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LuzmoLabel, [{
61
+ type: Component,
62
+ args: [{
63
+ selector: 'luzmo-label',
64
+ exportAs: 'luzmoLabel',
65
+ standalone: true,
66
+ changeDetection: ChangeDetectionStrategy.OnPush,
67
+ template: '<ng-content />'
68
+ }]
69
+ }], () => [], { label: [{
70
+ type: Input,
71
+ args: [{ alias: 'label' }]
72
+ }], tooltip: [{
73
+ type: Input,
74
+ args: [{ alias: 'tooltip' }]
75
+ }] }); })();
76
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoLabel, { className: "LuzmoLabel", filePath: "components/label.ts", lineNumber: 15 }); })();
@@ -0,0 +1,53 @@
1
+ import { OnChanges, SimpleChanges } from '@angular/core';
2
+ import { ControlValueAccessor } from '@angular/forms';
3
+ import '@luzmo/lucero/menu';
4
+ import type { LuzmoMenu as LuzmoMenuHostElement } from '@luzmo/lucero/menu';
5
+ import * as i0 from "@angular/core";
6
+ export declare class LuzmoMenu implements OnChanges, ControlValueAccessor {
7
+ private readonly elementRef;
8
+ private readonly renderer;
9
+ private readonly destroyRef;
10
+ private readonly host;
11
+ private readonly listenerCleanup;
12
+ /** The underlying custom element instance. Use to call imperative methods. */
13
+ get nativeElement(): LuzmoMenuHostElement;
14
+ label?: string;
15
+ ignore?: boolean;
16
+ variant?: 'checkmarks' | 'highlight';
17
+ selects?: never | 'inherit' | 'single' | 'multiple';
18
+ value?: string;
19
+ valueSeparator?: string;
20
+ selected?: string[];
21
+ selectedItems?: unknown;
22
+ menuSlot?: unknown;
23
+ focusedItemIndex?: number;
24
+ focusInItemIndex?: number;
25
+ handleSubmenuClosed?: unknown;
26
+ handleSubmenuOpened?: unknown;
27
+ /** Announces that the `value` of the element has changed */
28
+ readonly changeEvent: import("@angular/core").OutputEmitterRef<Event>;
29
+ readonly closeEvent: import("@angular/core").OutputEmitterRef<Event>;
30
+ constructor();
31
+ ngOnChanges(changes: SimpleChanges): void;
32
+ /**
33
+ * Forward a wrapper @Input to the underlying host element via Renderer2 so
34
+ * the wrapper stays compatible with non-DOM Angular platforms (SSR, tests).
35
+ * Unlike a "skip undefined" guard, this lets consumers reset values back to
36
+ * undefined / null by clearing their bindings.
37
+ */
38
+ private setHostProperty;
39
+ private bindEvents;
40
+ private onChange;
41
+ private onTouched;
42
+ private isWritingValue;
43
+ private lastCvaValue;
44
+ writeValue(value: string): void;
45
+ registerOnChange(fn: (value: string) => void): void;
46
+ registerOnTouched(fn: () => void): void;
47
+ setDisabledState(isDisabled: boolean): void;
48
+ focus({ preventScroll }: FocusOptions): void;
49
+ static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoMenu, never>;
50
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoMenu, "luzmo-menu", ["luzmoMenu"], { "label": { "alias": "label"; "required": false; }; "ignore": { "alias": "ignore"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "selects": { "alias": "selects"; "required": false; }; "value": { "alias": "value"; "required": false; }; "valueSeparator": { "alias": "value-separator"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "selectedItems": { "alias": "selected-items"; "required": false; }; "menuSlot": { "alias": "menu-slot"; "required": false; }; "focusedItemIndex": { "alias": "focused-item-index"; "required": false; }; "focusInItemIndex": { "alias": "focus-in-item-index"; "required": false; }; "handleSubmenuClosed": { "alias": "handle-submenu-closed"; "required": false; }; "handleSubmenuOpened": { "alias": "handle-submenu-opened"; "required": false; }; }, { "changeEvent": "change"; "closeEvent": "close"; }, never, ["*"], true, never>;
51
+ }
52
+ /** The underlying custom element type for LuzmoMenu */
53
+ export type LuzmoMenuElement = LuzmoMenuHostElement;