@orangelogic/design-system 2.70.0 → 2.71.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 (99) hide show
  1. package/library/chunks/{button.CAAJPQFu.js → button.D6S0sAOO.js} +1 -1
  2. package/library/chunks/{color-swatch-group.CKHyWM8K.js → color-swatch-group.CSctShAT.js} +3 -3
  3. package/library/chunks/{color-swatch.BkpPCXd6.js → color-swatch.9fo7Prlq.js} +1 -1
  4. package/library/chunks/{confirm-popover.ZD74yDWw.js → confirm-popover.DR2_O9i_.js} +3 -3
  5. package/library/chunks/{dialog.qSV5AjOE.js → dialog.n5g61iHs.js} +106 -92
  6. package/library/chunks/{dot-pagination.BN_0ljfc.js → dot-pagination.CqpDMHMz.js} +1 -1
  7. package/library/chunks/{file-on-demand.CXE4zf0J.js → file-on-demand.DyPdfxfM.js} +8 -8
  8. package/library/chunks/{folder-select.CPALQK22.js → folder-select.B4PPWsoq.js} +3 -3
  9. package/library/chunks/{header.DXZ_5gLY.js → header.tbXKX2yv.js} +1 -1
  10. package/library/chunks/{i18n.C0iakJkV.js → i18n.BU7mYVLM.js} +2 -2
  11. package/library/chunks/icon-button.Dxz2J4cg.js +683 -0
  12. package/library/chunks/{iframe.BlzVfeBc.js → iframe.Dx7QScC8.js} +1 -1
  13. package/library/chunks/{image.B3WjaCXP.js → image.Q7doiTcu.js} +1 -1
  14. package/library/chunks/{index.CmVKj_wl.js → index.xnuklZH8.js} +1 -1
  15. package/library/chunks/{list-editor.CIAAFPco.js → list-editor.rlWs0RYN.js} +7 -7
  16. package/library/chunks/{option.ByVbmxUQ.js → option.CgM5bwtt.js} +1 -1
  17. package/library/chunks/pagination.I2BZVSB2.js +430 -0
  18. package/library/chunks/{tab-group.1h51o_Ly.js → tab-group.euL1exrl.js} +3 -3
  19. package/library/chunks/{table.wVHv1Xze.js → table.DNwNmw8a.js} +366 -351
  20. package/library/chunks/{tree.Bx0IGsWm.js → tree.ClkS3oAg.js} +1 -1
  21. package/library/components/alert.js +2 -2
  22. package/library/components/asset-link-format.js +4 -4
  23. package/library/components/atoms.js +12 -12
  24. package/library/components/border-input-group.js +1 -1
  25. package/library/components/breadcrumb.js +1 -1
  26. package/library/components/button.js +2 -2
  27. package/library/components/color-picker.js +2 -2
  28. package/library/components/color-swatch-group.js +4 -4
  29. package/library/components/color-swatch.js +2 -2
  30. package/library/components/confirm-popover.js +4 -4
  31. package/library/components/copy-button.js +1 -1
  32. package/library/components/corner-position-input-group.js +2 -2
  33. package/library/components/details.js +1 -1
  34. package/library/components/dialog.js +3 -3
  35. package/library/components/dot-pagination.js +2 -2
  36. package/library/components/drawer.js +2 -2
  37. package/library/components/dropdown.js +1 -1
  38. package/library/components/dynamic-select.js +4 -4
  39. package/library/components/e-chart.js +1 -1
  40. package/library/components/element-clamp.js +2 -2
  41. package/library/components/file-on-demand.js +9 -9
  42. package/library/components/folder-select.js +3 -3
  43. package/library/components/format-bytes.js +1 -1
  44. package/library/components/format-date.js +1 -1
  45. package/library/components/format-number.js +1 -1
  46. package/library/components/format-time.js +1 -1
  47. package/library/components/header.js +2 -2
  48. package/library/components/icon-button.js +14 -679
  49. package/library/components/iframe.js +2 -2
  50. package/library/components/image-comparer.js +1 -1
  51. package/library/components/image.js +2 -2
  52. package/library/components/input.js +409 -320
  53. package/library/components/line-clamp.js +1 -1
  54. package/library/components/list-editor.js +6 -6
  55. package/library/components/masonry.js +2 -2
  56. package/library/components/menu-item.js +1 -1
  57. package/library/components/menu.js +1 -1
  58. package/library/components/molecules.js +4 -4
  59. package/library/components/option.js +2 -2
  60. package/library/components/organisms.js +2 -2
  61. package/library/components/pagination.js +8 -6
  62. package/library/components/popup.js +1 -1
  63. package/library/components/position-picker.js +1 -1
  64. package/library/components/progress-bar.js +1 -1
  65. package/library/components/progress-ring.js +1 -1
  66. package/library/components/range.js +1 -1
  67. package/library/components/rating.js +1 -1
  68. package/library/components/relative-time.js +1 -1
  69. package/library/components/select.js +2 -2
  70. package/library/components/share-option-list.js +1 -1
  71. package/library/components/sidebar.js +1 -1
  72. package/library/components/size-input-group.js +2 -2
  73. package/library/components/spinner.js +1 -1
  74. package/library/components/split-panel.js +1 -1
  75. package/library/components/tab-group.js +4 -4
  76. package/library/components/tab.js +2 -2
  77. package/library/components/table.js +5 -5
  78. package/library/components/tag.js +2 -2
  79. package/library/components/tooltip.js +1 -1
  80. package/library/components/tree-item.js +2 -2
  81. package/library/components/tree.js +2 -2
  82. package/library/components/typeface.js +6 -6
  83. package/library/components/types.js +25 -25
  84. package/library/components/video.js +2 -2
  85. package/library/package.json +1 -1
  86. package/library/packages/atoms/src/components/dialog/dialog.d.ts +10 -0
  87. package/library/packages/atoms/src/components/icon-button/icon-button.d.ts +2 -1
  88. package/library/packages/atoms/src/components/input/auto-grow-controller.d.ts +23 -0
  89. package/library/packages/atoms/src/components/input/input.d.ts +9 -0
  90. package/library/packages/atoms/src/components/pagination/pagination.d.ts +31 -2
  91. package/library/packages/atoms/src/components/table/table.d.ts +13 -1
  92. package/library/packages/atoms/src/components/table/tabulator-tables/modules/Page/Page.d.ts +2 -2
  93. package/library/packages/types/src/icon-button.d.ts +7 -0
  94. package/library/packages/types/src/table.d.ts +3 -1
  95. package/library/packages/utils/src/custom-element/i18n.d.ts +2 -2
  96. package/library/react-web-component.d.ts +39 -7
  97. package/library/utils.js +2 -2
  98. package/package.json +1 -1
  99. package/library/chunks/pagination.DPQn2fKX.js +0 -341
@@ -1,681 +1,16 @@
1
- import { n as r, C as g } from "../chunks/lib-cortex-element.CVMmyPMC.js";
2
- import { c as p } from "../chunks/component.styles.DMSLciL5.js";
3
- import { c as x } from "../chunks/custom-element.L4WJXn1j.js";
4
- import { L as h } from "../chunks/i18n.C0iakJkV.js";
5
- import { r as m } from "../chunks/state.CSDxrqLd.js";
6
- import { e as v } from "../chunks/query.BBf1UFkC.js";
7
- import { e as f } from "../chunks/class-map.BiVq-cVR.js";
8
- import { o as c } from "../chunks/if-defined.BRoBj_Rp.js";
9
- import { n as y } from "../chunks/when.Dr1es41R.js";
10
- import { i as d, u as b } from "../chunks/static.UA3G1Deq.js";
11
- import k from "./icon.js";
12
- import w from "./spinner.js";
13
- import { i as _ } from "../chunks/lit-element.jLBm65_O.js";
14
- const z = _`
15
- :host {
16
- display: inline-block;
17
- color: var(--cx-color-neutral-600);
18
- --group-divider-color: rgb(128 128 128 / 33%);
19
- }
20
-
21
- .icon-button {
22
- flex: 0 0 auto;
23
- display: flex;
24
- align-items: center;
25
- background: none;
26
- border: none;
27
- border-radius: var(--cx-border-radius-medium);
28
- font-size: inherit;
29
- color: inherit;
30
- padding: var(--cx-spacing-x-small);
31
- cursor: pointer;
32
- transition: var(--cx-transition-x-fast) color;
33
- position: relative;
34
- }
35
-
36
- .icon-button:focus {
37
- outline: none;
38
- }
39
-
40
- .icon-button--disabled {
41
- opacity: 0.5;
42
- cursor: default;
43
- }
44
-
45
- .icon-button:focus-visible {
46
- outline: var(--cx-focus-ring);
47
- outline-offset: var(--cx-focus-ring-offset);
48
- }
49
-
50
- .icon-button__icon {
51
- pointer-events: none;
52
- margin: auto;
53
- }
54
-
55
- .icon-button--small {
56
- font-size: var(--cx-font-size-x-small);
57
- padding: var(--cx-spacing-2x-small);
58
- min-height: var(--cx-input-height-small);
59
- min-width: var(--cx-input-height-small);
60
- }
61
-
62
- .icon-button--medium {
63
- font-size: var(--cx-font-size-large);
64
- padding: var(--cx-spacing-2x-small);
65
- min-height: var(--cx-input-height-medium);
66
- min-width: var(--cx-input-height-medium);
67
- }
68
-
69
- .icon-button--large {
70
- font-size: var(--cx-font-size-large);
71
- padding: var(--cx-spacing-x-small);
72
- min-height: var(--cx-input-height-large);
73
- min-width: var(--cx-input-width-large);
74
- }
75
-
76
- .icon-button--x-large {
77
- font-size: var(--cx-font-size-large);
78
- padding: var(--cx-spacing-small);
79
- min-height: var(--cx-input-height-x-large);
80
- min-width: var(--cx-input-height-x-large);
81
- }
82
-
83
- /*
84
- * Standard buttons
85
- */
86
-
87
- /* Default */
88
- .icon-button.icon-button--default {
89
- background-color: var(--cx-color-neutral-100);
90
- border-color: var(--cx-color-neutral-100);
91
- color: var(--cx-color-neutral);
92
- }
93
-
94
- .icon-button.icon-button--default:hover:not(.icon-button--disabled),
95
- .icon-button.icon-button--default.icon-button--focused:not(
96
- .icon-button--disabled
97
- ) {
98
- background-color: var(--cx-color-neutral-200);
99
- border-color: var(--cx-color-neutral-200);
100
- color: var(--cx-color-neutral);
101
- }
102
-
103
- .icon-button.icon-button--default:active:not(.icon-button--disabled) {
104
- background-color: var(--cx-color-neutral-300);
105
- border-color: var(--cx-color-neutral-300);
106
- color: var(--cx-color-neutral);
107
- }
108
-
109
- /* Primary */
110
- .icon-button.icon-button--primary {
111
- background-color: var(--cx-color-primary);
112
- border-color: var(--cx-color-primary);
113
- color: var(--cx-color-neutral-0);
114
- }
115
-
116
- .icon-button.icon-button--primary:hover:not(.icon-button--disabled),
117
- .icon-button.icon-button--primary.icon-button--focused:not(
118
- .icon-button--disabled
119
- ) {
120
- background-color: var(--cx-color-primary-500);
121
- border-color: var(--cx-color-primary-500);
122
- color: var(--cx-color-neutral-0);
123
- }
124
-
125
- .icon-button.icon-button--primary:active:not(.icon-button--disabled) {
126
- background-color: var(--cx-color-primary-700);
127
- border-color: var(--cx-color-primary-700);
128
- color: var(--cx-color-neutral-0);
129
- }
130
-
131
- /* Success */
132
- .icon-button.icon-button--success {
133
- background-color: var(--cx-color-success);
134
- border-color: var(--cx-color-success);
135
- color: var(--cx-color-neutral-0);
136
- }
137
-
138
- .icon-button.icon-button--success:hover:not(.icon-button--disabled),
139
- .icon-button.icon-button--success.icon-button--focused:not(
140
- .icon-button--disabled
141
- ) {
142
- background-color: var(--cx-color-success-500);
143
- border-color: var(--cx-color-success-500);
144
- color: var(--cx-color-neutral-0);
145
- }
146
-
147
- .icon-button.icon-button--success:active:not(.icon-button--disabled) {
148
- background-color: var(--cx-color-success-700);
149
- border-color: var(--cx-color-success-700);
150
- color: var(--cx-color-neutral-0);
151
- }
152
-
153
- /* Warning */
154
- .icon-button.icon-button--warning {
155
- background-color: var(--cx-color-warning);
156
- border-color: var(--cx-color-warning);
157
- color: var(--cx-color-neutral-0);
158
- }
159
- .icon-button.icon-button--warning:hover:not(.icon-button--disabled),
160
- .icon-button.icon-button--warning.icon-button--focused:not(
161
- .icon-button--disabled
162
- ) {
163
- background-color: var(--cx-color-warning-500);
164
- border-color: var(--cx-color-warning-500);
165
- color: var(--cx-color-neutral-0);
166
- }
167
-
168
- .icon-button.icon-button--warning:active:not(.icon-button--disabled) {
169
- background-color: var(--cx-color-warning-700);
170
- border-color: var(--cx-color-warning-700);
171
- color: var(--cx-color-neutral-0);
172
- }
173
-
174
- /* Danger */
175
- .icon-button.icon-button--danger {
176
- background-color: var(--cx-color-danger);
177
- border-color: var(--cx-color-danger);
178
- color: var(--cx-color-neutral-0);
179
- }
180
-
181
- .icon-button.icon-button--danger:hover:not(.icon-button--disabled),
182
- .icon-button.icon-button--danger.icon-button--focused:not(
183
- .icon-button--disabled
184
- ) {
185
- background-color: var(--cx-color-danger-500);
186
- border-color: var(--cx-color-danger-500);
187
- color: var(--cx-color-neutral-0);
188
- }
189
-
190
- .icon-button.icon-button--danger:active:not(.icon-button--disabled) {
191
- background-color: var(--cx-color-danger-700);
192
- border-color: var(--cx-color-danger-700);
193
- color: var(--cx-color-neutral-0);
194
- }
195
-
196
- /* Custom */
197
- .icon-button.icon-button--custom {
198
- background-color: var(--background-color);
199
- border-color: var(--background-color);
200
- color: var(--color);
201
- }
202
-
203
- .icon-button.icon-button--custom:hover:not(.icon-button--disabled),
204
- .icon-button.icon-button--custom.icon-button--focused:not(
205
- .icon-button--disabled
206
- ) {
207
- background-color: var(--background-color);
208
- border-color: var(--background-color);
209
- color: var(--color);
210
- }
211
-
212
- .icon-button.icon-button--custom:active:not(.icon-button--disabled) {
213
- background-color: var(--background-color);
214
- border-color: var(--background-color);
215
- color: var(--color);
216
- }
217
-
218
- /*
219
- * Outline buttons
220
- */
221
-
222
- .icon-button--outline {
223
- background: none;
224
- border: solid var(--cx-input-border-width);
225
- border-color: var(--cx-input-border-color);
226
- }
227
-
228
- /* Default */
229
- .icon-button--outline.icon-button--default {
230
- border-color: var(--cx-input-border-color);
231
- color: var(--cx-color-neutral);
232
- }
233
-
234
- .icon-button--outline.icon-button--default:hover:not(.icon-button--disabled),
235
- .icon-button--outline.icon-button--default.icon-button--focused:not(
236
- .icon-button--disabled
237
- ),
238
- .icon-button--outline.icon-button--default.icon-button--checked:not(
239
- .icon-button--disabled
240
- ) {
241
- border-color: var(--cx-color-neutral-300);
242
- background-color: var(--cx-color-neutral-100);
243
- color: var(--cx-color-neutral);
244
- }
245
-
246
- .icon-button--outline.icon-button--default:active:not(
247
- .icon-button--disabled
248
- ) {
249
- border-color: var(--cx-color-neutral-300);
250
- background-color: var(--cx-color-neutral-200);
251
- color: var(--cx-color-neutral);
252
- }
253
-
254
- /* Primary */
255
- .icon-button--outline.icon-button--primary {
256
- border-color: var(--cx-color-primary);
257
- color: var(--cx-color-primary);
258
- }
259
-
260
- .icon-button--outline.icon-button--primary:hover:not(.icon-button--disabled),
261
- .icon-button--outline.icon-button--primary.icon-button--focused:not(
262
- .icon-button--disabled
263
- ),
264
- .icon-button--outline.icon-button--primary.icon-button--checked:not(
265
- .icon-button--disabled
266
- ) {
267
- background-color: var(--cx-color-primary-500);
268
- color: var(--cx-color-neutral-0);
269
- }
270
-
271
- .icon-button--outline.icon-button--primary:active:not(
272
- .icon-button--disabled
273
- ) {
274
- border-color: var(--cx-color-primary-700);
275
- background-color: var(--cx-color-primary-700);
276
- color: var(--cx-color-neutral-0);
277
- }
278
-
279
- /* Success */
280
- .icon-button--outline.icon-button--success {
281
- border-color: var(--cx-color-success);
282
- color: var(--cx-color-success);
283
- }
284
-
285
- .icon-button--outline.icon-button--success:hover:not(.icon-button--disabled),
286
- .icon-button--outline.icon-button--success.icon-button--focused:not(
287
- .icon-button--disabled
288
- ),
289
- .icon-button--outline.icon-button--success.icon-button--checked:not(
290
- .icon-button--disabled
291
- ) {
292
- background-color: var(--cx-color-success-500);
293
- color: var(--cx-color-neutral-0);
294
- }
295
-
296
- .icon-button--outline.icon-button--success:active:not(
297
- .icon-button--disabled
298
- ) {
299
- border-color: var(--cx-color-success);
300
- background-color: var(--cx-color-success);
301
- color: var(--cx-color-neutral-0);
302
- }
303
-
304
- /* Warning */
305
- .icon-button--outline.icon-button--warning {
306
- border-color: var(--cx-color-warning);
307
- color: var(--cx-color-warning);
308
- }
309
-
310
- .icon-button--outline.icon-button--warning:hover:not(.icon-button--disabled),
311
- .icon-button--outline.icon-button--warning.icon-button--focused:not(
312
- .icon-button--disabled
313
- ),
314
- .icon-button--outline.icon-button--warning.icon-button--checked:not(
315
- .icon-button--disabled
316
- ) {
317
- background-color: var(--cx-color-warning-500);
318
- color: var(--cx-color-neutral-0);
319
- }
320
-
321
- .icon-button--outline.icon-button--warning:active:not(
322
- .icon-button--disabled
323
- ) {
324
- border-color: var(--cx-color-warning-700);
325
- background-color: var(--cx-color-warning-700);
326
- color: var(--cx-color-neutral-0);
327
- }
328
-
329
- /* Danger */
330
- .icon-button--outline.icon-button--danger {
331
- border-color: var(--cx-color-danger);
332
- color: var(--cx-color-danger);
333
- }
334
-
335
- .icon-button--outline.icon-button--danger:hover:not(.icon-button--disabled),
336
- .icon-button--outline.icon-button--danger.icon-button--focused:not(
337
- .icon-button--disabled
338
- ),
339
- .icon-button--outline.icon-button--danger.icon-button--checked:not(
340
- .icon-button--disabled
341
- ) {
342
- background-color: var(--cx-color-danger-500);
343
- color: var(--cx-color-neutral-0);
344
- }
345
-
346
- .icon-button--outline.icon-button--danger:active:not(.icon-button--disabled) {
347
- border-color: var(--cx-color-danger-700);
348
- background-color: var(--cx-color-danger-700);
349
- color: var(--cx-color-neutral-0);
350
- }
351
-
352
- /*
353
- * Tertiary buttons
354
- */
355
-
356
- .icon-button--tertiary {
357
- background-color: transparent;
358
- border-color: transparent;
359
- color: var(--cx-color-neutral);
360
- }
361
-
362
- .icon-button--tertiary:hover:not(.icon-button--disabled),
363
- .icon-button--tertiary.icon-button--focused:not(.icon-button--disabled) {
364
- background-color: var(--cx-color-neutral-100);
365
- border-color: transparent;
366
- color: var(--cx-color-neutral);
367
- }
368
-
369
- .icon-button--tertiary:focus-visible:not(.icon-button--disabled) {
370
- background-color: var(--cx-color-neutral-200);
371
- border-color: transparent;
372
- color: var(--cx-color-neutral);
373
- }
374
-
375
- .icon-button--tertiary:active:not(.icon-button--disabled) {
376
- background-color: var(--cx-color-neutral-300);
377
- border-color: transparent;
378
- color: var(--cx-color-neutral);
379
- }
380
-
381
- .icon-button--circle {
382
- border-radius: var(--cx-border-radius-circle);
383
- }
384
-
385
- /*
386
- * Button groups support a variety of button types (e.g. buttons with tooltips, buttons as dropdown triggers, etc.).
387
- * This means buttons aren't always direct descendants of the button group, thus we can't target them with the
388
- * ::slotted selector. To work around this, the button group component does some magic to add these special classes to
389
- * buttons and we style them here instead.
390
- */
391
-
392
- :host(
393
- [data-cx-button-group__button--first]:not(
394
- [data-cx-button-group__button--last]
395
- )
396
- )
397
- .icon-button {
398
- border-start-end-radius: 0;
399
- border-end-end-radius: 0;
400
- }
401
-
402
- :host([data-cx-button-group__button--inner]) .icon-button {
403
- border-radius: 0;
404
- }
405
-
406
- :host(
407
- [data-cx-button-group__button--last]:not(
408
- [data-cx-button-group__button--first]
409
- )
410
- )
411
- .icon-button {
412
- border-start-start-radius: 0;
413
- border-end-start-radius: 0;
414
- }
415
-
416
- /* All except the first */
417
- :host(
418
- [data-cx-button-group__button]:not([data-cx-button-group__button--first])
419
- ) {
420
- margin-inline-start: calc(-1 * var(--cx-input-border-width));
421
- }
422
-
423
- /* Add a visual separator between solid buttons */
424
- :host(
425
- [data-cx-button-group__button]:not(
426
- [data-cx-button-group__button--first],
427
- [data-cx-button-group__button--radio],
428
- [variant='default']
429
- ):not(:hover)
430
- )
431
- .icon-button:after {
432
- content: '';
433
- position: absolute;
434
- top: 0;
435
- inset-inline-start: 0;
436
- bottom: 0;
437
- border-left: solid 1px var(--group-divider-color);
438
- mix-blend-mode: multiply;
439
- }
440
-
441
- /* Bump hovered, focused, and checked buttons up so their focus ring isn't clipped */
442
- :host([data-cx-button-group__button--hover]) {
443
- z-index: 1;
444
- }
445
-
446
- /* Focus and checked are always on top */
447
- :host([data-cx-button-group__button--focus]),
448
- :host([data-cx-button-group__button][checked]) {
449
- z-index: 2;
450
- }
451
-
452
- /*
453
- * Badges
454
- */
455
-
456
- .icon-button ::slotted(cx-badge) {
457
- position: absolute !important;
458
- top: 0 !important;
459
- left: unset !important;
460
- right: 0 !important;
461
- translate: 50% -50%;
462
- pointer-events: none;
463
- }
464
-
465
- .icon-button--rtl ::slotted(cx-badge) {
466
- right: auto;
467
- left: 0;
468
- translate: -50% -50%;
469
- }
470
-
471
- .icon-button--small ::slotted(cx-badge) {
472
- --padding: 0.1em 0.32em;
473
- --font-size: var(--cx-font-size-x-small);
474
- }
475
-
476
- .icon-button--medium ::slotted(cx-badge) {
477
- --font-size: var(--cx-font-size-small);
478
- }
479
-
480
- .icon-button--large ::slotted(cx-badge) {
481
- --font-size: var(--cx-font-size-medium);
482
- }
483
-
484
- .icon-button--x-large ::slotted(cx-badge) {
485
- --font-size: var(--cx-font-size-medium);
486
- }
487
-
488
- .icon-button__icon-container {
489
- position: relative;
490
- display: flex;
491
- align-items: center;
492
- justify-content: center;
493
- width: 100%;
494
- height: 100%;
495
- line-height: 1;
496
- }
497
-
498
- .icon-button--loading {
499
- position: relative;
500
- cursor: wait;
501
- }
502
-
503
- .icon-button--loading cx-spinner {
504
- --indicator-color: currentColor;
505
- position: absolute;
506
- font-size: calc(1em);
507
- height: calc(1em);
508
- width: calc(1em);
509
- top: calc(50% - 0.5em);
510
- left: calc(50% - 0.5em);
511
- }
512
- `;
513
- var $ = Object.defineProperty, C = Object.getOwnPropertyDescriptor, n = (t, i, l, a) => {
514
- for (var e = a > 1 ? void 0 : a ? C(i, l) : i, u = t.length - 1, s; u >= 0; u--)
515
- (s = t[u]) && (e = (a ? s(i, l, e) : s(e)) || e);
516
- return a && e && $(i, l, e), e;
517
- };
518
- let o = class extends g {
519
- constructor() {
520
- super(...arguments), this.localize = new h(this), this.hasFocus = !1, this.variant = "outlined", this.buttonVariant = "text", this.label = "", this.disabled = !1, this.loading = !1, this.iconClass = "", this.size = "medium", this.outline = !1, this.circle = !1;
521
- }
522
- connectedUpdatedCallback() {
523
- this.syncStyles(), this.styleObserver = new MutationObserver(() => this.syncStyles()), this.styleObserver.observe(this, {
524
- attributeFilter: ["style"],
525
- attributes: !0
526
- });
527
- }
528
- disconnectedCallback() {
529
- super.disconnectedCallback(), this.styleObserver?.disconnect();
530
- }
531
- syncStyles() {
532
- const t = this.style.fontSize;
533
- t && this.button && (this.icon.style.setProperty("--font-size", t), this.button.style.fontSize = "inherit", this.style.fontSize = "");
534
- }
535
- handleBlur() {
536
- this.hasFocus = !1, this.emit("cx-blur");
537
- }
538
- handleFocus() {
539
- this.hasFocus = !0, this.emit("cx-focus");
540
- }
541
- handleClick(t) {
542
- this.disabled && (t.preventDefault(), t.stopPropagation());
543
- }
544
- /** Simulates a click on the icon button. */
545
- click() {
546
- this.button.click();
547
- }
548
- /** Sets focus on the icon button. */
549
- focus(t) {
550
- this.button.focus(t);
551
- }
552
- /** Removes focus from the icon button. */
553
- blur() {
554
- this.button.blur();
555
- }
556
- render() {
557
- const t = !!this.href, i = t ? d`a` : d`button`;
558
- return b`
559
- <${i}
560
- part="base"
561
- class=${f({
562
- "icon-button": !0,
563
- "icon-button--circle": this.circle,
564
- "icon-button--custom": !!this.src,
565
- "icon-button--danger": this.buttonVariant === "danger",
566
- "icon-button--default": this.buttonVariant === "default" || this.buttonVariant === "neutral",
567
- "icon-button--disabled": !t && this.disabled,
568
- "icon-button--focused": this.hasFocus,
569
- "icon-button--large": this.size === "large",
570
- "icon-button--loading": this.loading,
571
- "icon-button--medium": this.size === "medium",
572
- "icon-button--outline": this.outline,
573
- "icon-button--primary": this.buttonVariant === "primary",
574
- "icon-button--rtl": this.localize.dir() === "rtl",
575
- "icon-button--small": this.size === "small",
576
- "icon-button--success": this.buttonVariant === "success",
577
- "icon-button--tertiary": this.buttonVariant === "tertiary",
578
- "icon-button--text": this.buttonVariant === "text",
579
- "icon-button--warning": this.buttonVariant === "warning",
580
- "icon-button--x-large": this.size === "x-large"
581
- })}
582
- ?disabled=${c(t ? void 0 : this.disabled)}
583
- type=${c(t ? void 0 : "button")}
584
- href=${c(t ? this.href : void 0)}
585
- target=${c(t ? this.target : void 0)}
586
- download=${c(t ? this.download : void 0)}
587
- rel=${c(
588
- t && this.target ? "noreferrer noopener" : void 0
589
- )}
590
- role=${c(t ? void 0 : "button")}
591
- aria-disabled=${this.disabled || this.loading ? "true" : "false"}
592
- aria-label=${this.label}
593
- tabindex=${this.disabled || this.loading ? "-1" : "0"}
594
- aria-busy=${this.loading ? "true" : "false"}
595
- @blur=${this.handleBlur}
596
- @focus=${this.handleFocus}
597
- @click=${this.handleClick}
598
- >
599
- <div class="icon-button__icon-container">
600
- ${y(
601
- this.loading,
602
- () => b`<cx-spinner
603
- part="spinner"
604
- role="status"
605
- aria-live="polite"
606
- ></cx-spinner>`,
607
- () => b`<cx-icon
608
- class="icon-button__icon"
609
- icon-class=${c(this.iconClass)}
610
- name=${c(this.name)}
611
- variant=${this.variant}
612
- src=${c(this.src)}
613
- aria-hidden="true"
614
- part="icon"
615
- ></cx-icon>`
616
- )}
617
- <slot name="badge"></slot>
618
- </div>
619
- </${i}>
620
- `;
621
- }
622
- };
623
- o.styles = [p, z];
624
- o.dependencies = { "cx-icon": k, "cx-spinner": w };
625
- n([
626
- v(".icon-button")
627
- ], o.prototype, "button", 2);
628
- n([
629
- v(".icon-button__icon")
630
- ], o.prototype, "icon", 2);
631
- n([
632
- m()
633
- ], o.prototype, "hasFocus", 2);
634
- n([
635
- r()
636
- ], o.prototype, "name", 2);
637
- n([
638
- r({ type: String })
639
- ], o.prototype, "variant", 2);
640
- n([
641
- r({ attribute: "button-variant", reflect: !0, type: String })
642
- ], o.prototype, "buttonVariant", 2);
643
- n([
644
- r()
645
- ], o.prototype, "src", 2);
646
- n([
647
- r()
648
- ], o.prototype, "href", 2);
649
- n([
650
- r()
651
- ], o.prototype, "target", 2);
652
- n([
653
- r()
654
- ], o.prototype, "download", 2);
655
- n([
656
- r()
657
- ], o.prototype, "label", 2);
658
- n([
659
- r({ reflect: !0, type: Boolean })
660
- ], o.prototype, "disabled", 2);
661
- n([
662
- r({ reflect: !0, type: Boolean })
663
- ], o.prototype, "loading", 2);
664
- n([
665
- r({ attribute: "icon-class", type: String })
666
- ], o.prototype, "iconClass", 2);
667
- n([
668
- r({ reflect: !0 })
669
- ], o.prototype, "size", 2);
670
- n([
671
- r({ reflect: !0, type: Boolean })
672
- ], o.prototype, "outline", 2);
673
- n([
674
- r({ reflect: !0, type: Boolean })
675
- ], o.prototype, "circle", 2);
676
- o = n([
677
- x("cx-icon-button")
678
- ], o);
1
+ import "../chunks/lib-cortex-element.CVMmyPMC.js";
2
+ import "../chunks/component.styles.DMSLciL5.js";
3
+ import { C } from "../chunks/icon-button.Dxz2J4cg.js";
4
+ import "../chunks/custom-element.L4WJXn1j.js";
5
+ import "../chunks/i18n.BU7mYVLM.js";
6
+ import "../chunks/state.CSDxrqLd.js";
7
+ import "../chunks/query.BBf1UFkC.js";
8
+ import "../chunks/class-map.BiVq-cVR.js";
9
+ import "../chunks/if-defined.BRoBj_Rp.js";
10
+ import "../chunks/when.Dr1es41R.js";
11
+ import "../chunks/static.UA3G1Deq.js";
12
+ import "./icon.js";
13
+ import "./spinner.js";
679
14
  export {
680
- o as default
15
+ C as default
681
16
  };
@@ -1,8 +1,8 @@
1
1
  import "../chunks/lib-cortex-element.CVMmyPMC.js";
2
2
  import "../chunks/component.styles.DMSLciL5.js";
3
- import { C as u } from "../chunks/iframe.BlzVfeBc.js";
3
+ import { C as u } from "../chunks/iframe.Dx7QScC8.js";
4
4
  import "../chunks/custom-element.L4WJXn1j.js";
5
- import "../chunks/i18n.C0iakJkV.js";
5
+ import "../chunks/i18n.BU7mYVLM.js";
6
6
  import "../chunks/watch.BCJD77bD.js";
7
7
  import "../chunks/lit-element.jLBm65_O.js";
8
8
  import "../chunks/query.BBf1UFkC.js";
@@ -2,7 +2,7 @@ import { n as h, C as f } from "../chunks/lib-cortex-element.CVMmyPMC.js";
2
2
  import { c as g } from "../chunks/component.styles.DMSLciL5.js";
3
3
  import { c as u } from "../chunks/custom-element.L4WJXn1j.js";
4
4
  import { d as v } from "../chunks/drag.DXEXVXPv.js";
5
- import { L as _ } from "../chunks/i18n.C0iakJkV.js";
5
+ import { L as _ } from "../chunks/i18n.BU7mYVLM.js";
6
6
  import { c as m } from "../chunks/math.DqTA6ya4.js";
7
7
  import { w } from "../chunks/watch.BCJD77bD.js";
8
8
  import { i as y, x } from "../chunks/lit-element.jLBm65_O.js";