@aceshooting/lyra-ui 2.6.0 → 2.8.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 (176) hide show
  1. package/README.md +13 -8
  2. package/custom-elements.json +3128 -31
  3. package/dist/components/app-rail/app-rail.class.d.ts +8 -1
  4. package/dist/components/app-rail/app-rail.class.d.ts.map +1 -1
  5. package/dist/components/app-rail/app-rail.class.js +12 -2
  6. package/dist/components/app-rail/app-rail.class.js.map +1 -1
  7. package/dist/components/chat-composer/chat-composer.class.d.ts +27 -0
  8. package/dist/components/chat-composer/chat-composer.class.d.ts.map +1 -1
  9. package/dist/components/chat-composer/chat-composer.class.js +64 -1
  10. package/dist/components/chat-composer/chat-composer.class.js.map +1 -1
  11. package/dist/components/checkbox/checkbox.class.d.ts +7 -0
  12. package/dist/components/checkbox/checkbox.class.d.ts.map +1 -1
  13. package/dist/components/checkbox/checkbox.class.js +7 -0
  14. package/dist/components/checkbox/checkbox.class.js.map +1 -1
  15. package/dist/components/chip/chip.class.d.ts +2 -0
  16. package/dist/components/chip/chip.class.d.ts.map +1 -1
  17. package/dist/components/chip/chip.class.js +3 -1
  18. package/dist/components/chip/chip.class.js.map +1 -1
  19. package/dist/components/chip/chip.styles.d.ts.map +1 -1
  20. package/dist/components/chip/chip.styles.js +4 -1
  21. package/dist/components/chip/chip.styles.js.map +1 -1
  22. package/dist/components/combobox/combobox.class.d.ts +16 -0
  23. package/dist/components/combobox/combobox.class.d.ts.map +1 -1
  24. package/dist/components/combobox/combobox.class.js +47 -2
  25. package/dist/components/combobox/combobox.class.js.map +1 -1
  26. package/dist/components/combobox/combobox.styles.d.ts.map +1 -1
  27. package/dist/components/combobox/combobox.styles.js +56 -6
  28. package/dist/components/combobox/combobox.styles.js.map +1 -1
  29. package/dist/components/conversation-item/conversation-item.class.d.ts +14 -0
  30. package/dist/components/conversation-item/conversation-item.class.d.ts.map +1 -1
  31. package/dist/components/conversation-item/conversation-item.class.js +38 -0
  32. package/dist/components/conversation-item/conversation-item.class.js.map +1 -1
  33. package/dist/components/date-picker/date-input.class.d.ts +25 -0
  34. package/dist/components/date-picker/date-input.class.d.ts.map +1 -1
  35. package/dist/components/date-picker/date-input.class.js +61 -0
  36. package/dist/components/date-picker/date-input.class.js.map +1 -1
  37. package/dist/components/dialog/dialog.class.d.ts +13 -1
  38. package/dist/components/dialog/dialog.class.d.ts.map +1 -1
  39. package/dist/components/dialog/dialog.class.js +24 -8
  40. package/dist/components/dialog/dialog.class.js.map +1 -1
  41. package/dist/components/empty/empty.class.d.ts +2 -0
  42. package/dist/components/empty/empty.class.d.ts.map +1 -1
  43. package/dist/components/empty/empty.class.js +2 -0
  44. package/dist/components/empty/empty.class.js.map +1 -1
  45. package/dist/components/empty/empty.styles.d.ts.map +1 -1
  46. package/dist/components/empty/empty.styles.js +5 -2
  47. package/dist/components/empty/empty.styles.js.map +1 -1
  48. package/dist/components/export-button/export-button.class.d.ts +19 -2
  49. package/dist/components/export-button/export-button.class.d.ts.map +1 -1
  50. package/dist/components/export-button/export-button.class.js +32 -8
  51. package/dist/components/export-button/export-button.class.js.map +1 -1
  52. package/dist/components/export-button/export-button.styles.d.ts.map +1 -1
  53. package/dist/components/export-button/export-button.styles.js +8 -1
  54. package/dist/components/export-button/export-button.styles.js.map +1 -1
  55. package/dist/components/gauge/gauge.class.d.ts +6 -2
  56. package/dist/components/gauge/gauge.class.d.ts.map +1 -1
  57. package/dist/components/gauge/gauge.class.js +40 -4
  58. package/dist/components/gauge/gauge.class.js.map +1 -1
  59. package/dist/components/gauge/gauge.styles.js +1 -1
  60. package/dist/components/graph/graph.class.d.ts +28 -1
  61. package/dist/components/graph/graph.class.d.ts.map +1 -1
  62. package/dist/components/graph/graph.class.js +94 -42
  63. package/dist/components/graph/graph.class.js.map +1 -1
  64. package/dist/components/graph/graph.styles.d.ts.map +1 -1
  65. package/dist/components/graph/graph.styles.js +4 -1
  66. package/dist/components/graph/graph.styles.js.map +1 -1
  67. package/dist/components/map/map.class.d.ts +4 -2
  68. package/dist/components/map/map.class.d.ts.map +1 -1
  69. package/dist/components/map/map.class.js +5 -3
  70. package/dist/components/map/map.class.js.map +1 -1
  71. package/dist/components/mention-popover/mention-popover.class.d.ts +9 -4
  72. package/dist/components/mention-popover/mention-popover.class.d.ts.map +1 -1
  73. package/dist/components/mention-popover/mention-popover.class.js +11 -5
  74. package/dist/components/mention-popover/mention-popover.class.js.map +1 -1
  75. package/dist/components/menu/menu.class.d.ts +10 -4
  76. package/dist/components/menu/menu.class.d.ts.map +1 -1
  77. package/dist/components/menu/menu.class.js +11 -5
  78. package/dist/components/menu/menu.class.js.map +1 -1
  79. package/dist/components/model-select/model-select.class.d.ts +44 -0
  80. package/dist/components/model-select/model-select.class.d.ts.map +1 -1
  81. package/dist/components/model-select/model-select.class.js +125 -0
  82. package/dist/components/model-select/model-select.class.js.map +1 -1
  83. package/dist/components/model-select/model-select.styles.d.ts.map +1 -1
  84. package/dist/components/model-select/model-select.styles.js +21 -0
  85. package/dist/components/model-select/model-select.styles.js.map +1 -1
  86. package/dist/components/pagination/pagination.class.d.ts +81 -0
  87. package/dist/components/pagination/pagination.class.d.ts.map +1 -0
  88. package/dist/components/pagination/pagination.class.js +278 -0
  89. package/dist/components/pagination/pagination.class.js.map +1 -0
  90. package/dist/components/pagination/pagination.d.ts +2 -0
  91. package/dist/components/pagination/pagination.d.ts.map +1 -0
  92. package/dist/components/pagination/pagination.js +5 -0
  93. package/dist/components/pagination/pagination.js.map +1 -0
  94. package/dist/components/pagination/pagination.styles.d.ts +2 -0
  95. package/dist/components/pagination/pagination.styles.d.ts.map +1 -0
  96. package/dist/components/pagination/pagination.styles.js +142 -0
  97. package/dist/components/pagination/pagination.styles.js.map +1 -0
  98. package/dist/components/phone-input/phone-input.class.d.ts +191 -0
  99. package/dist/components/phone-input/phone-input.class.d.ts.map +1 -0
  100. package/dist/components/phone-input/phone-input.class.js +493 -0
  101. package/dist/components/phone-input/phone-input.class.js.map +1 -0
  102. package/dist/components/phone-input/phone-input.d.ts +2 -0
  103. package/dist/components/phone-input/phone-input.d.ts.map +1 -0
  104. package/dist/components/phone-input/phone-input.js +5 -0
  105. package/dist/components/phone-input/phone-input.js.map +1 -0
  106. package/dist/components/phone-input/phone-input.styles.d.ts +2 -0
  107. package/dist/components/phone-input/phone-input.styles.d.ts.map +1 -0
  108. package/dist/components/phone-input/phone-input.styles.js +123 -0
  109. package/dist/components/phone-input/phone-input.styles.js.map +1 -0
  110. package/dist/components/segmented/segmented.class.d.ts +1 -0
  111. package/dist/components/segmented/segmented.class.d.ts.map +1 -1
  112. package/dist/components/segmented/segmented.class.js +1 -0
  113. package/dist/components/segmented/segmented.class.js.map +1 -1
  114. package/dist/components/slider/slider.class.d.ts +3 -0
  115. package/dist/components/slider/slider.class.d.ts.map +1 -1
  116. package/dist/components/slider/slider.class.js +3 -0
  117. package/dist/components/slider/slider.class.js.map +1 -1
  118. package/dist/components/switch/switch.class.d.ts +20 -0
  119. package/dist/components/switch/switch.class.d.ts.map +1 -1
  120. package/dist/components/switch/switch.class.js +83 -23
  121. package/dist/components/switch/switch.class.js.map +1 -1
  122. package/dist/components/switch/switch.styles.d.ts.map +1 -1
  123. package/dist/components/switch/switch.styles.js +18 -0
  124. package/dist/components/switch/switch.styles.js.map +1 -1
  125. package/dist/components/table/table.class.d.ts +22 -6
  126. package/dist/components/table/table.class.d.ts.map +1 -1
  127. package/dist/components/table/table.class.js +20 -6
  128. package/dist/components/table/table.class.js.map +1 -1
  129. package/dist/components/textarea/textarea.class.d.ts +86 -7
  130. package/dist/components/textarea/textarea.class.d.ts.map +1 -1
  131. package/dist/components/textarea/textarea.class.js +305 -21
  132. package/dist/components/textarea/textarea.class.js.map +1 -1
  133. package/dist/components/textarea/textarea.styles.d.ts.map +1 -1
  134. package/dist/components/textarea/textarea.styles.js +36 -0
  135. package/dist/components/textarea/textarea.styles.js.map +1 -1
  136. package/dist/components/time-range/time-range.class.d.ts +4 -0
  137. package/dist/components/time-range/time-range.class.d.ts.map +1 -1
  138. package/dist/components/time-range/time-range.class.js +4 -0
  139. package/dist/components/time-range/time-range.class.js.map +1 -1
  140. package/dist/components/tool-approval-dialog/tool-approval-dialog.class.d.ts +6 -0
  141. package/dist/components/tool-approval-dialog/tool-approval-dialog.class.d.ts.map +1 -1
  142. package/dist/components/tool-approval-dialog/tool-approval-dialog.class.js +8 -0
  143. package/dist/components/tool-approval-dialog/tool-approval-dialog.class.js.map +1 -1
  144. package/dist/components/tree/tree-node.class.d.ts +3 -0
  145. package/dist/components/tree/tree-node.class.d.ts.map +1 -1
  146. package/dist/components/tree/tree-node.class.js +16 -1
  147. package/dist/components/tree/tree-node.class.js.map +1 -1
  148. package/dist/components/tree/tree-node.styles.d.ts.map +1 -1
  149. package/dist/components/tree/tree-node.styles.js +27 -1
  150. package/dist/components/tree/tree-node.styles.js.map +1 -1
  151. package/dist/components/tree/tree.class.d.ts +11 -1
  152. package/dist/components/tree/tree.class.d.ts.map +1 -1
  153. package/dist/components/tree/tree.class.js +6 -2
  154. package/dist/components/tree/tree.class.js.map +1 -1
  155. package/dist/components/typing-indicator/typing-indicator.class.d.ts +4 -0
  156. package/dist/components/typing-indicator/typing-indicator.class.d.ts.map +1 -1
  157. package/dist/components/typing-indicator/typing-indicator.class.js +4 -0
  158. package/dist/components/typing-indicator/typing-indicator.class.js.map +1 -1
  159. package/dist/components/typing-indicator/typing-indicator.styles.d.ts.map +1 -1
  160. package/dist/components/typing-indicator/typing-indicator.styles.js +9 -7
  161. package/dist/components/typing-indicator/typing-indicator.styles.js.map +1 -1
  162. package/dist/internal/localization.d.ts +1 -1
  163. package/dist/internal/localization.d.ts.map +1 -1
  164. package/dist/internal/localization.js +5 -0
  165. package/dist/internal/localization.js.map +1 -1
  166. package/dist/internal/root-registration-allowlist.d.ts +1 -1
  167. package/dist/internal/root-registration-allowlist.d.ts.map +1 -1
  168. package/dist/internal/root-registration-allowlist.js +2 -0
  169. package/dist/internal/root-registration-allowlist.js.map +1 -1
  170. package/dist/lyra.d.ts +11 -3
  171. package/dist/lyra.d.ts.map +1 -1
  172. package/dist/lyra.js +4 -0
  173. package/dist/lyra.js.map +1 -1
  174. package/llms-full.txt +573 -94
  175. package/llms.txt +5 -3
  176. package/package.json +9 -1
@@ -0,0 +1,278 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { html, nothing } from 'lit';
8
+ import { property, state } from 'lit/decorators.js';
9
+ import { live } from 'lit/directives/live.js';
10
+ import { chevronIcon } from '../../internal/icons.js';
11
+ import { LyraElement } from '../../internal/lyra-element.js';
12
+ import { styles } from './pagination.styles.js';
13
+ /**
14
+ * `<lyra-pagination>` — controlled, server-friendly page navigation with an
15
+ * editable page jump and optional item-range summary.
16
+ *
17
+ * The component never mutates `page`. Activating a control emits
18
+ * `lyra-page-change`; the consumer applies the requested page after its own
19
+ * routing or data-fetch decision. Once the `page` property changes, a polite
20
+ * live region announces the applied page.
21
+ *
22
+ * @customElement lyra-pagination
23
+ * @event lyra-page-change - Fired when a user requests a valid page. `detail: { page }`.
24
+ * @csspart base - The navigation wrapper.
25
+ * @csspart summary - The item-range summary.
26
+ * @csspart controls - The previous/page/next control group.
27
+ * @csspart previous-button - The previous-page button.
28
+ * @csspart previous-icon - The previous-page directional icon.
29
+ * @csspart page-field - The current-page input and page-count wrapper.
30
+ * @csspart page-input - The validated numeric page-jump input.
31
+ * @csspart page-count - The total page count shown after the input.
32
+ * @csspart next-button - The next-page button.
33
+ * @csspart next-icon - The next-page directional icon.
34
+ * @csspart live-region - The visually hidden applied-page announcement.
35
+ * @cssprop --lyra-pagination-control-size - Control inline/block size; defaults from the `size` variant.
36
+ * @cssprop --lyra-pagination-font-size - Control font size; defaults from the `size` variant.
37
+ */
38
+ export class LyraPagination extends LyraElement {
39
+ constructor() {
40
+ super(...arguments);
41
+ /** The currently applied page. Controlled; this component never mutates it. */
42
+ this.page = 1;
43
+ /** Number of items represented by one page. Non-positive values produce no pages. */
44
+ this.pageSize = 20;
45
+ /** Total number of items across every page. Non-positive values render the empty state. */
46
+ this.totalItems = 0;
47
+ this.disabled = false;
48
+ /** Disables navigation and exposes `aria-busy="true"` while a page is loading. */
49
+ this.loading = false;
50
+ this.hideSummary = false;
51
+ this.size = 'm';
52
+ /** Optional item noun used in the summary. Empty uses the localized `item`/`items` keys. */
53
+ this.itemLabel = '';
54
+ /** Accessible name forwarded from the host to the internal navigation landmark. */
55
+ this.accessibleLabel = null;
56
+ this.label = 'Pagination';
57
+ this.pageLabel = 'Page';
58
+ this.previousLabel = 'Previous';
59
+ this.nextLabel = 'Next';
60
+ this.draftPage = '';
61
+ this.invalidDraft = false;
62
+ this.liveText = '';
63
+ this.initialized = false;
64
+ this.onPageInput = (event) => {
65
+ const input = event.currentTarget;
66
+ this.draftPage = input.value;
67
+ this.invalidDraft = input.value !== '' && this.validRequestedPage(input.value) == null;
68
+ };
69
+ this.commitPage = (event) => {
70
+ const input = event.currentTarget;
71
+ const page = this.validRequestedPage(input.value);
72
+ if (page == null) {
73
+ this.invalidDraft = true;
74
+ return;
75
+ }
76
+ this.requestPage(page);
77
+ };
78
+ this.onPageKeyDown = (event) => {
79
+ if (event.key !== 'Enter')
80
+ return;
81
+ event.preventDefault();
82
+ this.commitPage(event);
83
+ };
84
+ }
85
+ static { this.styles = [LyraElement.styles, styles]; }
86
+ get normalizedTotalItems() {
87
+ if (!Number.isFinite(this.totalItems))
88
+ return 0;
89
+ return Math.max(0, Math.trunc(this.totalItems));
90
+ }
91
+ get normalizedPageSize() {
92
+ if (!Number.isFinite(this.pageSize))
93
+ return 0;
94
+ return Math.max(0, Math.trunc(this.pageSize));
95
+ }
96
+ /** Total page count derived from `totalItems` and `pageSize`. */
97
+ get pageCount() {
98
+ if (this.normalizedTotalItems === 0 || this.normalizedPageSize === 0)
99
+ return 0;
100
+ return Math.ceil(this.normalizedTotalItems / this.normalizedPageSize);
101
+ }
102
+ get currentPage() {
103
+ if (this.pageCount === 0)
104
+ return 0;
105
+ const page = Number.isFinite(this.page) ? Math.trunc(this.page) : 1;
106
+ return Math.min(this.pageCount, Math.max(1, page));
107
+ }
108
+ get controlsDisabled() {
109
+ return this.disabled || this.loading || this.pageCount === 0;
110
+ }
111
+ localizedProperty(key, defaultValue, value) {
112
+ return this.localize(key, value === defaultValue ? undefined : value);
113
+ }
114
+ formatNumber(value) {
115
+ return new Intl.NumberFormat(this.effectiveLocale).format(value);
116
+ }
117
+ summaryText() {
118
+ const total = this.normalizedTotalItems;
119
+ const itemLabel = this.itemLabel || this.localize(total === 1 ? 'item' : 'items');
120
+ if (this.pageCount === 0) {
121
+ return this.localize('paginationEmptySummary', undefined, {
122
+ total: this.formatNumber(0),
123
+ itemLabel,
124
+ });
125
+ }
126
+ const start = (this.currentPage - 1) * this.normalizedPageSize + 1;
127
+ const end = Math.min(total, this.currentPage * this.normalizedPageSize);
128
+ return this.localize('paginationSummary', undefined, {
129
+ start: this.formatNumber(start),
130
+ end: this.formatNumber(end),
131
+ total: this.formatNumber(total),
132
+ itemLabel,
133
+ });
134
+ }
135
+ willUpdate(changed) {
136
+ if (changed.has('page') || changed.has('pageSize') || changed.has('totalItems')) {
137
+ this.draftPage = this.pageCount === 0 ? '' : String(this.currentPage);
138
+ this.invalidDraft = false;
139
+ }
140
+ if (this.initialized && changed.has('page') && this.pageCount > 0) {
141
+ this.liveText = this.localize('paginationApplied', undefined, {
142
+ page: this.formatNumber(this.currentPage),
143
+ totalPages: this.formatNumber(this.pageCount),
144
+ });
145
+ }
146
+ this.initialized = true;
147
+ }
148
+ validRequestedPage(value) {
149
+ if (value.trim() === '')
150
+ return null;
151
+ const page = Number(value);
152
+ if (!Number.isInteger(page) || page < 1 || page > this.pageCount)
153
+ return null;
154
+ return page;
155
+ }
156
+ requestPage(page) {
157
+ if (this.controlsDisabled || page === this.currentPage || page < 1 || page > this.pageCount) {
158
+ return;
159
+ }
160
+ this.emit('lyra-page-change', { page });
161
+ // A controlled input reflects the applied property again after a request.
162
+ this.draftPage = this.pageCount === 0 ? '' : String(this.currentPage);
163
+ this.invalidDraft = false;
164
+ }
165
+ render() {
166
+ const previousLabel = this.localizedProperty('previous', 'Previous', this.previousLabel);
167
+ const nextLabel = this.localizedProperty('next', 'Next', this.nextLabel);
168
+ const pageLabel = this.localizedProperty('paginationPage', 'Page', this.pageLabel);
169
+ const navigationLabel = this.accessibleLabel || this.localizedProperty('paginationLabel', 'Pagination', this.label);
170
+ const current = this.currentPage;
171
+ return html `
172
+ <nav
173
+ part="base"
174
+ aria-label=${navigationLabel}
175
+ aria-busy=${this.loading ? 'true' : 'false'}
176
+ >
177
+ ${this.hideSummary
178
+ ? nothing
179
+ : html `<span part="summary">${this.summaryText()}</span>`}
180
+ <div part="controls">
181
+ <button
182
+ part="previous-button"
183
+ type="button"
184
+ aria-label=${previousLabel}
185
+ ?disabled=${this.controlsDisabled || current <= 1}
186
+ @click=${() => this.requestPage(current - 1)}
187
+ >
188
+ <span part="previous-icon">${chevronIcon()}</span>
189
+ </button>
190
+ <span part="page-field">
191
+ <input
192
+ part="page-input"
193
+ type="number"
194
+ inputmode="numeric"
195
+ min="1"
196
+ max=${Math.max(1, this.pageCount)}
197
+ step="1"
198
+ required
199
+ aria-label=${pageLabel}
200
+ aria-invalid=${this.invalidDraft ? 'true' : 'false'}
201
+ .value=${live(this.draftPage)}
202
+ ?disabled=${this.controlsDisabled}
203
+ @input=${this.onPageInput}
204
+ @change=${this.commitPage}
205
+ @keydown=${this.onPageKeyDown}
206
+ />
207
+ <span part="page-count" aria-hidden="true"> / ${this.formatNumber(this.pageCount)}</span>
208
+ </span>
209
+ <button
210
+ part="next-button"
211
+ type="button"
212
+ aria-label=${nextLabel}
213
+ ?disabled=${this.controlsDisabled || current >= this.pageCount}
214
+ @click=${() => this.requestPage(current + 1)}
215
+ >
216
+ <span part="next-icon">${chevronIcon()}</span>
217
+ </button>
218
+ </div>
219
+ <span
220
+ part="live-region"
221
+ class="sr-only"
222
+ role="status"
223
+ aria-live="polite"
224
+ aria-atomic="true"
225
+ >${this.liveText}</span>
226
+ </nav>
227
+ `;
228
+ }
229
+ }
230
+ __decorate([
231
+ property({ type: Number, reflect: true })
232
+ ], LyraPagination.prototype, "page", void 0);
233
+ __decorate([
234
+ property({ type: Number, attribute: 'page-size' })
235
+ ], LyraPagination.prototype, "pageSize", void 0);
236
+ __decorate([
237
+ property({ type: Number, attribute: 'total-items' })
238
+ ], LyraPagination.prototype, "totalItems", void 0);
239
+ __decorate([
240
+ property({ type: Boolean, reflect: true })
241
+ ], LyraPagination.prototype, "disabled", void 0);
242
+ __decorate([
243
+ property({ type: Boolean, reflect: true })
244
+ ], LyraPagination.prototype, "loading", void 0);
245
+ __decorate([
246
+ property({ type: Boolean, attribute: 'hide-summary', reflect: true })
247
+ ], LyraPagination.prototype, "hideSummary", void 0);
248
+ __decorate([
249
+ property({ reflect: true })
250
+ ], LyraPagination.prototype, "size", void 0);
251
+ __decorate([
252
+ property({ attribute: 'item-label' })
253
+ ], LyraPagination.prototype, "itemLabel", void 0);
254
+ __decorate([
255
+ property({ attribute: 'aria-label' })
256
+ ], LyraPagination.prototype, "accessibleLabel", void 0);
257
+ __decorate([
258
+ property()
259
+ ], LyraPagination.prototype, "label", void 0);
260
+ __decorate([
261
+ property({ attribute: 'page-label' })
262
+ ], LyraPagination.prototype, "pageLabel", void 0);
263
+ __decorate([
264
+ property({ attribute: 'previous-label' })
265
+ ], LyraPagination.prototype, "previousLabel", void 0);
266
+ __decorate([
267
+ property({ attribute: 'next-label' })
268
+ ], LyraPagination.prototype, "nextLabel", void 0);
269
+ __decorate([
270
+ state()
271
+ ], LyraPagination.prototype, "draftPage", void 0);
272
+ __decorate([
273
+ state()
274
+ ], LyraPagination.prototype, "invalidDraft", void 0);
275
+ __decorate([
276
+ state()
277
+ ], LyraPagination.prototype, "liveText", void 0);
278
+ //# sourceMappingURL=pagination.class.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.class.js","sourceRoot":"","sources":["../../../src/components/pagination/pagination.class.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './pagination.class.js';
2
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/pagination.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * from './pagination.class.js';
2
+ import { defineElement } from '../../internal/prefix.js';
3
+ import { LyraPagination } from './pagination.class.js';
4
+ defineElement('pagination', LyraPagination);
5
+ //# sourceMappingURL=pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../src/components/pagination/pagination.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,aAAa,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const styles: import("lit").CSSResult;
2
+ //# sourceMappingURL=pagination.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.styles.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/pagination.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM,yBA2IlB,CAAC"}
@@ -0,0 +1,142 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `
3
+ :host {
4
+ display: block;
5
+ min-inline-size: 0;
6
+ container-type: inline-size;
7
+ --lyra-pagination-control-size: var(--lyra-size-2-5rem);
8
+ --lyra-pagination-font-size: var(--lyra-font-size-md-sm);
9
+ }
10
+ :host([size='xs']) {
11
+ --lyra-pagination-control-size: var(--lyra-size-1-75rem);
12
+ --lyra-pagination-font-size: var(--lyra-font-size-xs);
13
+ }
14
+ :host([size='s']) {
15
+ --lyra-pagination-control-size: var(--lyra-size-2-25rem);
16
+ --lyra-pagination-font-size: var(--lyra-font-size-sm);
17
+ }
18
+ :host([size='l']) {
19
+ --lyra-pagination-control-size: var(--lyra-size-3rem);
20
+ --lyra-pagination-font-size: var(--lyra-font-size-md);
21
+ }
22
+ :host([size='xl']) {
23
+ --lyra-pagination-control-size: var(--lyra-size-3-5rem);
24
+ --lyra-pagination-font-size: var(--lyra-font-size-lg);
25
+ }
26
+ [part='base'] {
27
+ display: flex;
28
+ align-items: center;
29
+ justify-content: space-between;
30
+ gap: var(--lyra-space-m);
31
+ min-inline-size: 0;
32
+ font-size: var(--lyra-pagination-font-size);
33
+ }
34
+ [part='summary'] {
35
+ min-inline-size: 0;
36
+ color: var(--lyra-color-text-quiet);
37
+ overflow-wrap: anywhere;
38
+ }
39
+ [part='controls'] {
40
+ display: flex;
41
+ flex: 0 0 auto;
42
+ align-items: center;
43
+ gap: var(--lyra-space-xs);
44
+ }
45
+ [part='previous-button'],
46
+ [part='next-button'] {
47
+ display: inline-flex;
48
+ align-items: center;
49
+ justify-content: center;
50
+ inline-size: var(--lyra-pagination-control-size);
51
+ min-inline-size: var(--lyra-pagination-control-size);
52
+ block-size: var(--lyra-pagination-control-size);
53
+ padding: var(--lyra-space-xs);
54
+ border: var(--lyra-border-width-thin) solid var(--lyra-color-border);
55
+ border-radius: var(--lyra-radius);
56
+ background: var(--lyra-color-surface);
57
+ color: var(--lyra-color-text);
58
+ font: inherit;
59
+ cursor: pointer;
60
+ }
61
+ [part='previous-button']:hover:not(:disabled),
62
+ [part='next-button']:hover:not(:disabled) {
63
+ background: var(--lyra-color-brand-quiet);
64
+ }
65
+ [part='previous-button']:focus-visible,
66
+ [part='next-button']:focus-visible,
67
+ [part='page-input']:focus-visible {
68
+ outline: var(--lyra-focus-ring-width) solid var(--lyra-focus-ring-color);
69
+ outline-offset: var(--lyra-focus-ring-offset);
70
+ }
71
+ [part='previous-button']:disabled,
72
+ [part='next-button']:disabled,
73
+ [part='page-input']:disabled {
74
+ cursor: not-allowed;
75
+ opacity: var(--lyra-opacity-disabled);
76
+ }
77
+ [part='previous-icon'],
78
+ [part='next-icon'] {
79
+ display: inline-flex;
80
+ align-items: center;
81
+ justify-content: center;
82
+ line-height: var(--lyra-line-height-none);
83
+ }
84
+ [part='previous-icon'] {
85
+ transform: rotate(180deg);
86
+ }
87
+ [part='next-icon'] {
88
+ transform: rotate(0deg);
89
+ }
90
+ :host(:dir(rtl)) [part='previous-icon'] {
91
+ transform: rotate(0deg);
92
+ }
93
+ :host(:dir(rtl)) [part='next-icon'] {
94
+ transform: rotate(180deg);
95
+ }
96
+ [part='page-field'] {
97
+ display: inline-flex;
98
+ align-items: center;
99
+ color: var(--lyra-color-text-quiet);
100
+ white-space: nowrap;
101
+ }
102
+ [part='page-input'] {
103
+ box-sizing: border-box;
104
+ inline-size: var(--lyra-pagination-control-size);
105
+ min-inline-size: var(--lyra-pagination-control-size);
106
+ block-size: var(--lyra-pagination-control-size);
107
+ padding: var(--lyra-space-xs);
108
+ border: var(--lyra-border-width-thin) solid var(--lyra-color-border);
109
+ border-radius: var(--lyra-radius);
110
+ background: var(--lyra-color-surface);
111
+ color: var(--lyra-color-text);
112
+ font: inherit;
113
+ text-align: center;
114
+ }
115
+ [part='page-input'][aria-invalid='true'] {
116
+ border-color: var(--lyra-color-danger);
117
+ }
118
+ [part='live-region'].sr-only {
119
+ position: absolute;
120
+ inline-size: var(--lyra-size-1px);
121
+ block-size: var(--lyra-size-1px);
122
+ padding: 0;
123
+ margin: var(--lyra-size-neg-1px);
124
+ overflow: hidden;
125
+ clip-path: inset(50%);
126
+ white-space: nowrap;
127
+ border: 0;
128
+ }
129
+ /* Container-query lengths cannot reference custom properties. This is the
130
+ documented 320px narrow-allocation baseline expressed in root-relative
131
+ units so it still follows the page's type scale. */
132
+ @container (max-width: 20rem) {
133
+ [part='base'] {
134
+ flex-direction: column;
135
+ align-items: stretch;
136
+ }
137
+ [part='controls'] {
138
+ justify-content: space-between;
139
+ }
140
+ }
141
+ `;
142
+ //# sourceMappingURL=pagination.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.styles.js","sourceRoot":"","sources":["../../../src/components/pagination/pagination.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2IxB,CAAC"}
@@ -0,0 +1,191 @@
1
+ import { type PropertyValues, type TemplateResult } from 'lit';
2
+ import { LyraElement } from '../../internal/lyra-element.js';
3
+ export type PhoneNumberStatus = 'empty' | 'incomplete' | 'invalid' | 'valid';
4
+ export interface PhoneCountry {
5
+ /** ISO 3166-1 alpha-2 region code. */
6
+ code: string;
7
+ /** International calling code without a leading plus sign. */
8
+ callingCode: string;
9
+ /** Optional display-name override. `Intl.DisplayNames` is used when omitted. */
10
+ label?: string;
11
+ }
12
+ export interface PhoneNumberParseResult {
13
+ status: PhoneNumberStatus;
14
+ /** Canonical E.164 value. Required when `status` is `valid`. */
15
+ e164?: string;
16
+ /** Best-effort display text, normally national formatting for the selected country. */
17
+ formatted?: string;
18
+ /** Detected ISO 3166-1 alpha-2 region code. */
19
+ country?: string;
20
+ }
21
+ /**
22
+ * Synchronous formatting seam for a numbering-plan implementation. The base
23
+ * component deliberately includes no country metadata. An adapter can be
24
+ * supplied directly, or created lazily with `loadLibphonenumberAdapter()`.
25
+ */
26
+ export interface PhoneNumberAdapter {
27
+ readonly countries?: readonly PhoneCountry[];
28
+ parse(input: string, country?: string): PhoneNumberParseResult;
29
+ }
30
+ interface LibphonenumberPhoneLike {
31
+ number: string;
32
+ country?: string;
33
+ isValid(): boolean;
34
+ isPossible(): boolean;
35
+ formatNational(): string;
36
+ formatInternational(): string;
37
+ }
38
+ /** Structural subset implemented by `libphonenumber-js` entry points. */
39
+ export interface LibphonenumberModuleLike<CountryCode extends string = string> {
40
+ getCountries(): CountryCode[];
41
+ getCountryCallingCode(country: CountryCode): string;
42
+ parsePhoneNumberFromString(input: string, defaultCountry?: CountryCode): LibphonenumberPhoneLike | undefined;
43
+ validatePhoneNumberLength?(input: string, defaultCountry?: CountryCode): string | undefined;
44
+ }
45
+ /**
46
+ * Lazily creates an adapter from a `libphonenumber-js`-compatible module.
47
+ * Keeping the loader consumer-supplied avoids a static import, so neither the
48
+ * dependency nor its numbering metadata enters Lyra's base bundle.
49
+ *
50
+ * @example
51
+ * `el.adapter = await loadLibphonenumberAdapter(() => import('libphonenumber-js/min'))`
52
+ */
53
+ export declare function loadLibphonenumberAdapter<CountryCode extends string>(loader: () => Promise<LibphonenumberModuleLike<CountryCode>>): Promise<PhoneNumberAdapter>;
54
+ export interface LyraPhoneInputEventDetail {
55
+ /** Canonical E.164 value, or an empty string until the current input is valid. */
56
+ value: string;
57
+ /** The editable, best-effort formatted text shown to the user. */
58
+ inputValue: string;
59
+ country: string;
60
+ valid: boolean;
61
+ status: PhoneNumberStatus;
62
+ }
63
+ export interface LyraPhoneInputEventMap {
64
+ input: CustomEvent<LyraPhoneInputEventDetail>;
65
+ change: CustomEvent<LyraPhoneInputEventDetail>;
66
+ focus: CustomEvent<undefined>;
67
+ blur: CustomEvent<undefined>;
68
+ }
69
+ declare class LyraPhoneInputBase extends LyraElement<LyraPhoneInputEventMap> {
70
+ }
71
+ declare const LyraPhoneInput_base: typeof LyraPhoneInputBase & (new (...args: any[]) => import("../../lyra.js").FormAssociatedInterface);
72
+ /**
73
+ * `<lyra-phone-input>` — a country-aware telephone field whose form value is
74
+ * canonical E.164. National formatting and numbering-plan validation are
75
+ * supplied through `adapter`; without one, already-international E.164 input
76
+ * remains useful and national input stays editable with `incomplete` validity.
77
+ *
78
+ * User edits emit native-style `input` and `change` events. Event detail
79
+ * exposes both the canonical `value` and editable `inputValue`; programmatic
80
+ * property changes are silent. Phone-number text is deliberately LTR while
81
+ * the form chrome and country selector follow the inherited direction.
82
+ *
83
+ * @customElement lyra-phone-input
84
+ * @slot label - Custom label content.
85
+ * @slot hint - Custom hint content.
86
+ * @slot error - Custom error content.
87
+ * @slot country-prefix - Optional visual displayed before the country selector, such as a flag.
88
+ * @event input - Fired for user edits and country changes; detail contains canonical and display values.
89
+ * @event change - Fired when the native input commits or the country changes.
90
+ * @event focus - Fired when the internal telephone input receives focus.
91
+ * @event blur - Fired when the internal telephone input loses focus.
92
+ * @csspart form-control - The outer form-control wrapper.
93
+ * @csspart form-control-label - The visible label.
94
+ * @csspart input-wrapper - The country selector and telephone input wrapper.
95
+ * @csspart country-prefix - Optional country adornment slot wrapper.
96
+ * @csspart country-select - The native country selector.
97
+ * @csspart calling-code - The selected country's calling code.
98
+ * @csspart input - The native telephone input.
99
+ * @csspart hint - The hint message.
100
+ * @csspart error - The error or validation message.
101
+ */
102
+ export declare class LyraPhoneInput extends LyraPhoneInput_base {
103
+ static styles: import("lit").CSSResultGroup[];
104
+ static properties: {
105
+ country: {
106
+ noAccessor: boolean;
107
+ };
108
+ };
109
+ /** Formatting and validation implementation. No metadata is bundled by default. */
110
+ adapter?: PhoneNumberAdapter;
111
+ /** Explicit country rows. Takes precedence over `adapter.countries`. */
112
+ countries: readonly PhoneCountry[];
113
+ /** Country selected when no explicit `country` has been set. */
114
+ defaultCountry: string;
115
+ label: string;
116
+ hint: string;
117
+ errorText: string;
118
+ placeholder: string;
119
+ private accessibleLabel;
120
+ /** Accessible name for the country selector. */
121
+ countryLabel: string;
122
+ /** Accessible-name override for the telephone input. */
123
+ phoneLabel: string;
124
+ /** Validation message for a number that may still become valid with more digits. */
125
+ incompleteText: string;
126
+ /** Validation message for a completed but invalid number. */
127
+ invalidText: string;
128
+ autocomplete: string;
129
+ inputmode: 'tel' | 'numeric' | 'text';
130
+ enterkeyhint: string;
131
+ private inputElement?;
132
+ private editableValue;
133
+ private status;
134
+ private touched;
135
+ private hasLabelSlot;
136
+ private hasHintSlot;
137
+ private hasErrorSlot;
138
+ private hasCountryPrefixSlot;
139
+ private inputId;
140
+ private hintId;
141
+ private errorId;
142
+ private explicitCountry;
143
+ /** Currently selected ISO 3166-1 alpha-2 country code. */
144
+ get country(): string;
145
+ set country(next: string);
146
+ /** The underlying telephone input for platform-specific integrations. */
147
+ get input(): HTMLInputElement | undefined;
148
+ /** Editable display text, including a partial or invalid number. */
149
+ get inputValue(): string;
150
+ /** Current parse/validation state. */
151
+ get phoneStatus(): PhoneNumberStatus;
152
+ get value(): string;
153
+ set value(next: string);
154
+ private get selectedCountry();
155
+ private get availableCountries();
156
+ private parse;
157
+ private applyParsed;
158
+ private get eventDetail();
159
+ private get effectiveCountryLabel();
160
+ private get effectivePhoneLabel();
161
+ private get incompleteMessage();
162
+ private get invalidMessage();
163
+ private countryName;
164
+ protected updateValidity(): void;
165
+ protected willUpdate(changed: PropertyValues): void;
166
+ protected updated(changed: PropertyValues): void;
167
+ private onInput;
168
+ private onChange;
169
+ private onCountryChange;
170
+ private onFocus;
171
+ private onBlur;
172
+ private onLabelSlotChange;
173
+ private onHintSlotChange;
174
+ private onErrorSlotChange;
175
+ private onCountryPrefixSlotChange;
176
+ /** Focus the internal telephone input. */
177
+ focus(options?: FocusOptions): void;
178
+ /** Blur the internal telephone input. */
179
+ blur(): void;
180
+ /** Select all editable telephone text. */
181
+ select(): void;
182
+ formResetCallback(): void;
183
+ render(): TemplateResult;
184
+ }
185
+ declare global {
186
+ interface HTMLElementTagNameMap {
187
+ 'lyra-phone-input': LyraPhoneInput;
188
+ }
189
+ }
190
+ export {};
191
+ //# sourceMappingURL=phone-input.class.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phone-input.class.d.ts","sourceRoot":"","sources":["../../../src/components/phone-input/phone-input.class.ts"],"names":[],"mappings":"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"}