@ukic/web-components 2.35.0 → 2.35.2

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 (110) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/core.cjs.js +1 -1
  3. package/dist/cjs/ic-badge.cjs.entry.js +23 -0
  4. package/dist/cjs/ic-badge.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ic-button_3.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-navigation-button.cjs.entry.js +2 -2
  7. package/dist/cjs/ic-navigation-button.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-navigation-item.cjs.entry.js +1 -1
  9. package/dist/cjs/ic-navigation-item.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-toast.cjs.entry.js +2 -2
  11. package/dist/cjs/ic-toast.cjs.entry.js.map +1 -1
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/collection/collection-manifest.json +1 -1
  14. package/dist/collection/components/ic-accordion/ic-accordion.stories.js +635 -0
  15. package/dist/collection/components/ic-alert/ic-alert.stories.js +257 -0
  16. package/dist/collection/components/ic-back-to-top/ic-back-to-top.stories.js +162 -0
  17. package/dist/collection/components/ic-badge/ic-badge.js +39 -1
  18. package/dist/collection/components/ic-badge/ic-badge.js.map +1 -1
  19. package/dist/collection/components/ic-badge/ic-badge.stories.js +1082 -0
  20. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js +194 -0
  21. package/dist/collection/components/ic-badge/test/basic/ic-badge.spec.js.map +1 -1
  22. package/dist/collection/components/ic-breadcrumb-group/ic-breadcrumb-group.stories.js +502 -0
  23. package/dist/collection/components/ic-button/ic-button.stories.js +2218 -0
  24. package/dist/collection/components/ic-card/ic-card.stories.js +1034 -0
  25. package/dist/collection/components/ic-checkbox-group/ic-checkbox-group.stories.js +687 -0
  26. package/dist/collection/components/ic-chip/ic-chip.stories.js +670 -0
  27. package/dist/collection/components/ic-classification-banner/ic-classification-banner.stories.js +131 -0
  28. package/dist/collection/components/ic-data-entity/ic-data-entity.stories.js +487 -0
  29. package/dist/collection/components/ic-dialog/ic-dialog.stories.js +1256 -0
  30. package/dist/collection/components/ic-empty-state/ic-empty-state.stories.js +397 -0
  31. package/dist/collection/components/ic-footer/ic-footer.stories.js +383 -0
  32. package/dist/collection/components/ic-hero/ic-hero.stories.js +489 -0
  33. package/dist/collection/components/ic-link/ic-link.stories.js +114 -0
  34. package/dist/collection/components/ic-loading-indicator/ic-loading-indicator.stories.js +416 -0
  35. package/dist/collection/components/ic-navigation-button/ic-navigation-button.css +4 -0
  36. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js +1 -1
  37. package/dist/collection/components/ic-navigation-button/ic-navigation-button.js.map +1 -1
  38. package/dist/collection/components/ic-navigation-item/ic-navigation-item.css +7 -35
  39. package/dist/collection/components/ic-page-header/ic-page-header.stories.js +557 -0
  40. package/dist/collection/components/ic-pagination/ic-pagination.stories.js +125 -0
  41. package/dist/collection/components/ic-popover-menu/ic-popover-menu.stories.js +486 -0
  42. package/dist/collection/components/ic-radio-group/ic-radio-group.stories.js +450 -0
  43. package/dist/collection/components/ic-search-bar/ic-search-bar.stories.js +591 -0
  44. package/dist/collection/components/ic-section-container/ic-section-container.stories.js +62 -0
  45. package/dist/collection/components/ic-select/ic-select-searchable.stories.js +953 -0
  46. package/dist/collection/components/ic-select/ic-select-single.stories.js +780 -0
  47. package/dist/collection/components/ic-side-navigation/ic-side-navigation.stories.js +2526 -0
  48. package/dist/collection/components/ic-skeleton/ic-skeleton.stories.js +141 -0
  49. package/dist/collection/components/ic-status-tag/ic-status-tag.stories.js +161 -0
  50. package/dist/collection/components/ic-stepper/ic-stepper.stories.js +327 -0
  51. package/dist/collection/components/ic-switch/ic-switch.stories.js +171 -0
  52. package/dist/collection/components/ic-tab-context/ic-tabs.stories.js +388 -0
  53. package/dist/collection/components/ic-text-field/ic-text-field.stories.js +1083 -0
  54. package/dist/collection/components/ic-theme/ic-theme.stories.js +171 -0
  55. package/dist/collection/components/ic-toast/ic-toast.js +2 -2
  56. package/dist/collection/components/ic-toast/ic-toast.js.map +1 -1
  57. package/dist/collection/components/ic-toast/ic-toast.stories.js +413 -0
  58. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js +3 -3
  59. package/dist/collection/components/ic-toast/test/basic/ic-toast.spec.js.map +1 -1
  60. package/dist/collection/components/ic-toggle-button/ic-toggle-button.stories.js +537 -0
  61. package/dist/collection/components/ic-toggle-button-group/ic-toggle-button-group.stories.js +610 -0
  62. package/dist/collection/components/ic-tooltip/ic-tooltip.js +2 -5
  63. package/dist/collection/components/ic-tooltip/ic-tooltip.js.map +1 -1
  64. package/dist/collection/components/ic-tooltip/ic-tooltip.stories.js +356 -0
  65. package/dist/collection/components/ic-top-navigation/ic-top-navigation.stories.js +1083 -0
  66. package/dist/collection/components/ic-typography/ic-typography.stories.js +437 -0
  67. package/dist/collection/patterns/top-nav-content-footer.stories.js +109 -0
  68. package/dist/collection/patterns/z-index.stories.js +474 -0
  69. package/dist/components/ic-badge.js +25 -2
  70. package/dist/components/ic-badge.js.map +1 -1
  71. package/dist/components/ic-navigation-button.js +2 -2
  72. package/dist/components/ic-navigation-button.js.map +1 -1
  73. package/dist/components/ic-navigation-item.js +1 -1
  74. package/dist/components/ic-navigation-item.js.map +1 -1
  75. package/dist/components/ic-toast.js +2 -2
  76. package/dist/components/ic-toast.js.map +1 -1
  77. package/dist/components/ic-tooltip2.js.map +1 -1
  78. package/dist/core/core.esm.js +1 -1
  79. package/dist/core/core.esm.js.map +1 -1
  80. package/dist/core/p-3e8023ff.entry.js +2 -0
  81. package/dist/core/p-3e8023ff.entry.js.map +1 -0
  82. package/dist/core/p-ba06cc95.entry.js.map +1 -1
  83. package/dist/core/{p-7e8a4abd.entry.js → p-bfaa257c.entry.js} +2 -2
  84. package/dist/core/{p-7e8a4abd.entry.js.map → p-bfaa257c.entry.js.map} +1 -1
  85. package/dist/core/p-c05474f3.entry.js +2 -0
  86. package/dist/core/p-c05474f3.entry.js.map +1 -0
  87. package/dist/core/{p-5d3c6ea1.entry.js → p-d0299926.entry.js} +2 -2
  88. package/dist/core/p-d0299926.entry.js.map +1 -0
  89. package/dist/esm/core.js +1 -1
  90. package/dist/esm/ic-badge.entry.js +23 -0
  91. package/dist/esm/ic-badge.entry.js.map +1 -1
  92. package/dist/esm/ic-button_3.entry.js.map +1 -1
  93. package/dist/esm/ic-navigation-button.entry.js +2 -2
  94. package/dist/esm/ic-navigation-button.entry.js.map +1 -1
  95. package/dist/esm/ic-navigation-item.entry.js +1 -1
  96. package/dist/esm/ic-navigation-item.entry.js.map +1 -1
  97. package/dist/esm/ic-toast.entry.js +2 -2
  98. package/dist/esm/ic-toast.entry.js.map +1 -1
  99. package/dist/esm/loader.js +1 -1
  100. package/dist/types/components/ic-badge/ic-badge.d.ts +5 -0
  101. package/dist/types/components/ic-tooltip/ic-tooltip.d.ts +1 -1
  102. package/dist/types/components.d.ts +7 -0
  103. package/hydrate/index.js +30 -7
  104. package/package.json +17 -12
  105. package/vscode-data.json +4 -0
  106. package/dist/core/p-405d89bb.entry.js +0 -2
  107. package/dist/core/p-405d89bb.entry.js.map +0 -1
  108. package/dist/core/p-5d3c6ea1.entry.js.map +0 -1
  109. package/dist/core/p-dfb3e76e.entry.js +0 -2
  110. package/dist/core/p-dfb3e76e.entry.js.map +0 -1
@@ -0,0 +1,416 @@
1
+ import { html } from "lit-html";
2
+
3
+ const defaultArgs = {
4
+ appearance: "dark",
5
+ description: "Loading",
6
+ fullWidth: false,
7
+ labelDuration: 8000,
8
+ size: "default",
9
+ type: "circular",
10
+ label: null,
11
+ };
12
+
13
+ const defaultArgTypes = {
14
+ appearance: {
15
+ options: ["dark", "light"],
16
+ control: { type: "radio" },
17
+ },
18
+ label: {
19
+ control: { type: "text" },
20
+ },
21
+ size: {
22
+ options: ["small", "default", "large", "icon"],
23
+ control: { type: "radio" },
24
+ },
25
+ type: {
26
+ options: ["circular", "linear"],
27
+ control: { type: "radio" },
28
+ },
29
+ };
30
+
31
+ export default {
32
+ title: "Web Components/Loading",
33
+ component: "ic-loading-indicator",
34
+ };
35
+
36
+ export const CircularIndeterminate = {
37
+ render: (args) =>
38
+ html`<ic-loading-indicator label="Loading..."></ic-loading-indicator>`,
39
+ name: "Circular (indeterminate)",
40
+ };
41
+
42
+ export const CircularDeterminate = {
43
+ render: (args) =>
44
+ html`<ic-loading-indicator
45
+ progress="30"
46
+ min="0"
47
+ max="100"
48
+ label="Loading..."
49
+ ></ic-loading-indicator>`,
50
+
51
+ name: "Circular (determinate)",
52
+ };
53
+
54
+ export const CircularLongLabel = {
55
+ render: (args) =>
56
+ html`<ic-loading-indicator
57
+ label="This is a label for a loading indicator that is indeterminate and should wrap onto more than one line when it gets too long"
58
+ ></ic-loading-indicator>`,
59
+
60
+ name: "Circular long label",
61
+ };
62
+
63
+ export const CircularVariantsIndeterminate = {
64
+ render: (args) =>
65
+ html`<div style="display: grid; gap: 50px;">
66
+ <ic-loading-indicator label="Small" size="small"></ic-loading-indicator>
67
+ <ic-loading-indicator label="Default"></ic-loading-indicator>
68
+ <ic-loading-indicator label="Large" size="large"></ic-loading-indicator>
69
+ </div>`,
70
+
71
+ name: "Circular variants (indeterminate)",
72
+ };
73
+
74
+ export const CircularVariantsDeterminate = {
75
+ render: (args) =>
76
+ html`<div style="display: grid; gap: 50px;">
77
+ <ic-loading-indicator
78
+ progress="30"
79
+ min="0"
80
+ max="100"
81
+ label="Small"
82
+ size="small"
83
+ ></ic-loading-indicator>
84
+ <ic-loading-indicator
85
+ progress="30"
86
+ min="0"
87
+ max="100"
88
+ label="Default"
89
+ ></ic-loading-indicator>
90
+ <ic-loading-indicator
91
+ progress="30"
92
+ min="0"
93
+ max="100"
94
+ label="Large"
95
+ size="large"
96
+ ></ic-loading-indicator>
97
+ </div>`,
98
+
99
+ name: "Circular variants (determinate)",
100
+ };
101
+
102
+ export const Icon = {
103
+ render: (args) =>
104
+ html`<ic-loading-indicator size="icon"></ic-loading-indicator>`,
105
+ name: "Icon",
106
+ };
107
+
108
+ export const LinearIndeterminate = {
109
+ render: (args) =>
110
+ html`<ic-loading-indicator
111
+ label="Loading..."
112
+ type="linear"
113
+ ></ic-loading-indicator>`,
114
+
115
+ name: "Linear (indeterminate)",
116
+ };
117
+
118
+ export const LinearDeterminate = {
119
+ render: (args) =>
120
+ html`<ic-loading-indicator
121
+ progress="30"
122
+ min="0"
123
+ max="100"
124
+ label="Progress"
125
+ type="linear"
126
+ ></ic-loading-indicator>`,
127
+
128
+ name: "Linear (determinate)",
129
+ };
130
+
131
+ export const LinearLongLabel = {
132
+ render: (args) =>
133
+ html`<ic-loading-indicator
134
+ type="linear"
135
+ label="This is a label for a loading indicator that is indeterminate and should wrap onto more than one line when it gets too long"
136
+ ></ic-loading-indicator>`,
137
+
138
+ name: "Linear long label",
139
+ };
140
+
141
+ export const LinearVariantsIndeterminate = {
142
+ render: (args) =>
143
+ html`<div style="display: grid; gap: 50px;">
144
+ <ic-loading-indicator
145
+ label="Small"
146
+ size="small"
147
+ type="linear"
148
+ ></ic-loading-indicator>
149
+ <ic-loading-indicator
150
+ label="Default"
151
+ type="linear"
152
+ ></ic-loading-indicator>
153
+ <ic-loading-indicator
154
+ label="Large"
155
+ size="large"
156
+ type="linear"
157
+ ></ic-loading-indicator>
158
+ <ic-loading-indicator
159
+ label="Full-width"
160
+ size="default"
161
+ type="linear"
162
+ full-width="true"
163
+ ></ic-loading-indicator>
164
+ </div>`,
165
+
166
+ name: "Linear variants (indeterminate)",
167
+ };
168
+
169
+ export const LinearVariantsDeterminate = {
170
+ render: (args) =>
171
+ html`<div style="display: grid; gap: 50px;">
172
+ <ic-loading-indicator
173
+ progress="30"
174
+ min="0"
175
+ max="100"
176
+ label="Small"
177
+ size="small"
178
+ type="linear"
179
+ ></ic-loading-indicator>
180
+ <ic-loading-indicator
181
+ progress="30"
182
+ min="0"
183
+ max="100"
184
+ label="Default"
185
+ type="linear"
186
+ ></ic-loading-indicator>
187
+ <ic-loading-indicator
188
+ progress="30"
189
+ min="0"
190
+ max="100"
191
+ label="Large"
192
+ size="large"
193
+ type="linear"
194
+ ></ic-loading-indicator>
195
+ <ic-loading-indicator
196
+ progress="30"
197
+ min="0"
198
+ max="100"
199
+ label="Full-width"
200
+ size="default"
201
+ type="linear"
202
+ full-width="true"
203
+ ></ic-loading-indicator>
204
+ </div>`,
205
+
206
+ name: "Linear variants (determinate)",
207
+ };
208
+
209
+ export const CircularLight = {
210
+ render: (args) =>
211
+ html`<div style="display: grid; gap: 50px;">
212
+ <ic-loading-indicator
213
+ label="Small"
214
+ size="small"
215
+ appearance="light"
216
+ ></ic-loading-indicator>
217
+ <ic-loading-indicator
218
+ label="Default"
219
+ appearance="light"
220
+ ></ic-loading-indicator>
221
+ <ic-loading-indicator
222
+ label="Large"
223
+ size="large"
224
+ appearance="light"
225
+ ></ic-loading-indicator>
226
+ </div>`,
227
+
228
+ name: "Circular light",
229
+
230
+ parameters: {
231
+ backgrounds: {
232
+ default: "dark",
233
+ },
234
+ },
235
+ };
236
+
237
+ export const IconLight = {
238
+ render: (args) =>
239
+ html`<ic-loading-indicator
240
+ size="icon"
241
+ appearance="light"
242
+ ></ic-loading-indicator>`,
243
+
244
+ name: "Icon light",
245
+
246
+ parameters: {
247
+ backgrounds: {
248
+ default: "dark",
249
+ },
250
+ },
251
+ };
252
+
253
+ export const LinearLight = {
254
+ render: (args) =>
255
+ html`<div style="display: grid; gap: 50px;">
256
+ <ic-loading-indicator
257
+ label="Default"
258
+ type="linear"
259
+ appearance="light"
260
+ ></ic-loading-indicator>
261
+ <ic-loading-indicator
262
+ label="Large"
263
+ size="large"
264
+ type="linear"
265
+ appearance="light"
266
+ ></ic-loading-indicator>
267
+ <ic-loading-indicator
268
+ label="Full-width"
269
+ type="linear"
270
+ full-width="true"
271
+ appearance="light"
272
+ ></ic-loading-indicator>
273
+ <ic-loading-indicator
274
+ progress="30"
275
+ min="0"
276
+ max="100"
277
+ label="Default"
278
+ type="linear"
279
+ appearance="light"
280
+ ></ic-loading-indicator>
281
+ <ic-loading-indicator
282
+ progress="30"
283
+ min="0"
284
+ max="100"
285
+ label="Large"
286
+ size="large"
287
+ type="linear"
288
+ appearance="light"
289
+ ></ic-loading-indicator>
290
+ <ic-loading-indicator
291
+ progress="30"
292
+ min="0"
293
+ max="100"
294
+ label="Full-width"
295
+ type="linear"
296
+ full-width="true"
297
+ appearance="light"
298
+ ></ic-loading-indicator>
299
+ </div>`,
300
+
301
+ name: "Linear light",
302
+
303
+ parameters: {
304
+ backgrounds: {
305
+ default: "dark",
306
+ },
307
+ },
308
+ };
309
+
310
+ export const NoLabel = {
311
+ render: (args) =>
312
+ html`<div style="display: grid; gap: 50px;">
313
+ <ic-loading-indicator description="Loading"></ic-loading-indicator
314
+ ><ic-loading-indicator
315
+ progress="30"
316
+ min="0"
317
+ max="100"
318
+ description="Loading"
319
+ ></ic-loading-indicator
320
+ ><ic-loading-indicator
321
+ description="Loading"
322
+ type="linear"
323
+ ></ic-loading-indicator
324
+ ><ic-loading-indicator
325
+ progress="30"
326
+ min="0"
327
+ max="100"
328
+ description="Loading"
329
+ type="linear"
330
+ ></ic-loading-indicator>
331
+ </div>`,
332
+
333
+ name: "No label",
334
+ };
335
+
336
+ export const ChangingLabel = {
337
+ render: (args) =>
338
+ html`<ic-loading-indicator
339
+ label="Loading.../Still loading..."
340
+ label-duration="4000"
341
+ ></ic-loading-indicator>`,
342
+
343
+ name: "Changing label",
344
+ };
345
+
346
+ export const ProgressIndicatorForCompactStep = {
347
+ render: (args) =>
348
+ html`<ic-loading-indicator
349
+ size="small"
350
+ inner-label="3"
351
+ progress="30"
352
+ min="0"
353
+ max="100"
354
+ ></ic-loading-indicator>`,
355
+
356
+ name: "Progress indicator for compact step",
357
+ args: defaultArgs,
358
+ argTypes: defaultArgTypes,
359
+ };
360
+
361
+ export const PlaygroundIndeterminate = {
362
+ render: (args) =>
363
+ html`<div
364
+ style="background-color: ${args.appearance === "light"
365
+ ? "#393939"
366
+ : "#FFFFFF"}; padding: 16px;"
367
+ >
368
+ <ic-loading-indicator
369
+ appearance=${args.appearance}
370
+ description=${args.description}
371
+ full-width=${args.fullWidth}
372
+ label-duration=${args.labelDuration}
373
+ size=${args.size}
374
+ type=${args.type}
375
+ label=${args.label}
376
+ >
377
+ </ic-loading-indicator>
378
+ </div>`,
379
+
380
+ args: defaultArgs,
381
+ argTypes: defaultArgTypes,
382
+ name: "Playground - indeterminate",
383
+ };
384
+
385
+ export const PlaygroundDeterminate = {
386
+ render: (args) =>
387
+ html`<div
388
+ style="background-color: ${args.appearance === "light"
389
+ ? "#393939"
390
+ : "#FFFFFF"}; padding: 16px;"
391
+ >
392
+ <ic-loading-indicator
393
+ appearance=${args.appearance}
394
+ description=${args.description}
395
+ full-width=${args.fullWidth}
396
+ label-duration=${args.labelDuration}
397
+ size=${args.size}
398
+ type=${args.type}
399
+ label=${args.label}
400
+ progress=${args.progress}
401
+ min=${args.min}
402
+ max=${args.max}
403
+ >
404
+ </ic-loading-indicator>
405
+ </div>`,
406
+
407
+ args: {
408
+ ...defaultArgs,
409
+ max: 100,
410
+ min: 0,
411
+ progress: 30,
412
+ },
413
+
414
+ argTypes: defaultArgTypes,
415
+ name: "Playground - determinate",
416
+ };
@@ -455,3 +455,7 @@ video {
455
455
  height: 100%;
456
456
  min-height: 2.5rem;
457
457
  }
458
+
459
+ :host(.in-side-menu) ::slotted(ic-badge) {
460
+ margin-left: var(--ic-space-xs);
461
+ }
@@ -101,7 +101,7 @@ export class NavigationButton {
101
101
  fullWidth,
102
102
  disableTooltip,
103
103
  };
104
- return (h(Host, { class: { ["in-side-menu"]: this.mode === "menu" } }, h("ic-button", Object.assign({ class: className, "aria-label": variant == "icon" ? this.label : null, ref: (el) => (this.buttonEl = el) }, buttonProps, this.inheritedAttributes), label, h("slot", { slot: "left-icon", name: "icon" }), isSlotUsed(this.el, "badge") && variant === "icon" && (h("slot", { name: "badge" })))));
104
+ return (h(Host, { class: { ["in-side-menu"]: this.mode === "menu" } }, h("ic-button", Object.assign({ class: className, "aria-label": variant == "icon" ? this.label : null, ref: (el) => (this.buttonEl = el) }, buttonProps, this.inheritedAttributes), label, h("slot", { slot: "left-icon", name: "icon" }), isSlotUsed(this.el, "badge") && h("slot", { name: "badge" }))));
105
105
  }
106
106
  static get is() { return "ic-navigation-button"; }
107
107
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"ic-navigation-button.js","sourceRoot":"","sources":["../../../src/components/ic-navigation-button/ic-navigation-button.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Host,\n Prop,\n State,\n h,\n Listen,\n Method,\n forceUpdate,\n} from \"@stencil/core\";\n\nimport {\n getThemeForegroundColor,\n inheritAttributes,\n onComponentRequiredPropUndefined,\n isSlotUsed,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport {\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\nimport { IcNavButtonModes } from \"./ic-navigation-button.types\";\n\nconst MUTABLE_ATTRIBUTES = [...IC_INHERITED_ARIA, \"title\"];\n\n/**\n * @slot icon - Content will be placed to the left of the button label.\n * @slot badge - Badge component overlaying the top right of the button.\n */\n\n@Component({\n tag: \"ic-navigation-button\",\n styleUrl: \"ic-navigation-button.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class NavigationButton {\n private buttonEl: HTMLIcButtonElement;\n private inheritedAttributes: { [k: string]: string } = {};\n private hostMutationObserver: MutationObserver = null;\n\n @Element() el: HTMLIcNavigationButtonElement;\n\n @State() initialAppearance = getThemeForegroundColor();\n /**\n * The display mode.\n */\n @State() mode: IcNavButtonModes = \"navbar\";\n\n /**\n * If `true`, the user can save the linked URL instead of navigating to it.\n */\n @Prop() download?: string | boolean = false;\n\n /**\n * The URL that the link points to. This will render the button as an \"a\" tag.\n */\n @Prop() href?: string;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\n\n /**\n * The label info to display.\n */\n @Prop() label!: string;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n componentWillLoad(): void {\n this.inheritedAttributes = inheritAttributes(this.el, MUTABLE_ATTRIBUTES);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Navigation Button\"\n );\n\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n });\n }\n\n componentWillRender(): void {\n const iconEl = this.el.querySelector(`[slot=\"icon\"]`);\n iconEl !== null && iconEl.setAttribute(\"viewBox\", \"0 0 24 24\");\n }\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n @Listen(\"icNavigationMenuOpened\", { target: \"document\" })\n navBarMenuOpenHandler(): void {\n this.mode = \"menu\";\n }\n\n @Listen(\"icNavigationMenuClosed\", { target: \"document\" })\n navBarMenuCloseHandler(): void {\n this.mode = \"navbar\";\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.initialAppearance = theme.mode;\n }\n\n /**\n * Sets focus on the native `button`.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.buttonEl) {\n this.buttonEl.focus();\n }\n }\n\n // triggered when attributes of host element change\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n let forceComponentUpdate = false;\n mutationList.forEach(({ attributeName }) => {\n if (MUTABLE_ATTRIBUTES.includes(attributeName)) {\n this.inheritedAttributes[attributeName] =\n this.el.getAttribute(attributeName);\n forceComponentUpdate = true;\n }\n });\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n\n render() {\n const { href, target, rel, download, referrerpolicy } = this;\n\n let label = \"\";\n let className = \"\";\n let variant: \"icon\" | \"tertiary\" = \"icon\";\n let appearance: IcThemeForeground | IcThemeForegroundEnum.Default =\n this.initialAppearance;\n let size: \"default\" | \"large\" = \"large\";\n let fullWidth = false;\n let disableTooltip = false;\n\n if (this.mode === \"menu\") {\n label = this.label;\n variant = \"tertiary\";\n appearance = IcThemeForegroundEnum.Default;\n size = \"default\";\n fullWidth = true;\n className = \"popout-menu-button\";\n disableTooltip = true;\n }\n\n const buttonProps = {\n variant,\n appearance,\n size,\n href,\n target,\n rel,\n download,\n referrerpolicy,\n fullWidth,\n disableTooltip,\n };\n\n return (\n <Host class={{ [\"in-side-menu\"]: this.mode === \"menu\" }}>\n <ic-button\n class={className}\n aria-label={variant == \"icon\" ? this.label : null}\n ref={(el) => (this.buttonEl = el)}\n {...buttonProps}\n {...this.inheritedAttributes}\n >\n {label}\n <slot slot=\"left-icon\" name=\"icon\"></slot>\n {isSlotUsed(this.el, \"badge\") && variant === \"icon\" && (\n <slot name=\"badge\"></slot>\n )}\n </ic-button>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"ic-navigation-button.js","sourceRoot":"","sources":["../../../src/components/ic-navigation-button/ic-navigation-button.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Host,\n Prop,\n State,\n h,\n Listen,\n Method,\n forceUpdate,\n} from \"@stencil/core\";\n\nimport {\n getThemeForegroundColor,\n inheritAttributes,\n onComponentRequiredPropUndefined,\n isSlotUsed,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport {\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\nimport { IcNavButtonModes } from \"./ic-navigation-button.types\";\n\nconst MUTABLE_ATTRIBUTES = [...IC_INHERITED_ARIA, \"title\"];\n\n/**\n * @slot icon - Content will be placed to the left of the button label.\n * @slot badge - Badge component overlaying the top right of the button.\n */\n\n@Component({\n tag: \"ic-navigation-button\",\n styleUrl: \"ic-navigation-button.css\",\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class NavigationButton {\n private buttonEl: HTMLIcButtonElement;\n private inheritedAttributes: { [k: string]: string } = {};\n private hostMutationObserver: MutationObserver = null;\n\n @Element() el: HTMLIcNavigationButtonElement;\n\n @State() initialAppearance = getThemeForegroundColor();\n /**\n * The display mode.\n */\n @State() mode: IcNavButtonModes = \"navbar\";\n\n /**\n * If `true`, the user can save the linked URL instead of navigating to it.\n */\n @Prop() download?: string | boolean = false;\n\n /**\n * The URL that the link points to. This will render the button as an \"a\" tag.\n */\n @Prop() href?: string;\n\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string;\n\n /**\n * The label info to display.\n */\n @Prop() label!: string;\n\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n\n componentWillLoad(): void {\n this.inheritedAttributes = inheritAttributes(this.el, MUTABLE_ATTRIBUTES);\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Navigation Button\"\n );\n\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n attributes: true,\n });\n }\n\n componentWillRender(): void {\n const iconEl = this.el.querySelector(`[slot=\"icon\"]`);\n iconEl !== null && iconEl.setAttribute(\"viewBox\", \"0 0 24 24\");\n }\n\n disconnectedCallback(): void {\n this.hostMutationObserver?.disconnect();\n }\n\n @Listen(\"icNavigationMenuOpened\", { target: \"document\" })\n navBarMenuOpenHandler(): void {\n this.mode = \"menu\";\n }\n\n @Listen(\"icNavigationMenuClosed\", { target: \"document\" })\n navBarMenuCloseHandler(): void {\n this.mode = \"navbar\";\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.initialAppearance = theme.mode;\n }\n\n /**\n * Sets focus on the native `button`.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.buttonEl) {\n this.buttonEl.focus();\n }\n }\n\n // triggered when attributes of host element change\n private hostMutationCallback = (mutationList: MutationRecord[]): void => {\n let forceComponentUpdate = false;\n mutationList.forEach(({ attributeName }) => {\n if (MUTABLE_ATTRIBUTES.includes(attributeName)) {\n this.inheritedAttributes[attributeName] =\n this.el.getAttribute(attributeName);\n forceComponentUpdate = true;\n }\n });\n if (forceComponentUpdate) {\n forceUpdate(this);\n }\n };\n\n render() {\n const { href, target, rel, download, referrerpolicy } = this;\n\n let label = \"\";\n let className = \"\";\n let variant: \"icon\" | \"tertiary\" = \"icon\";\n let appearance: IcThemeForeground | IcThemeForegroundEnum.Default =\n this.initialAppearance;\n let size: \"default\" | \"large\" = \"large\";\n let fullWidth = false;\n let disableTooltip = false;\n\n if (this.mode === \"menu\") {\n label = this.label;\n variant = \"tertiary\";\n appearance = IcThemeForegroundEnum.Default;\n size = \"default\";\n fullWidth = true;\n className = \"popout-menu-button\";\n disableTooltip = true;\n }\n\n const buttonProps = {\n variant,\n appearance,\n size,\n href,\n target,\n rel,\n download,\n referrerpolicy,\n fullWidth,\n disableTooltip,\n };\n\n return (\n <Host class={{ [\"in-side-menu\"]: this.mode === \"menu\" }}>\n <ic-button\n class={className}\n aria-label={variant == \"icon\" ? this.label : null}\n ref={(el) => (this.buttonEl = el)}\n {...buttonProps}\n {...this.inheritedAttributes}\n >\n {label}\n <slot slot=\"left-icon\" name=\"icon\"></slot>\n {isSlotUsed(this.el, \"badge\") && <slot name=\"badge\"></slot>}\n </ic-button>\n </Host>\n );\n }\n}\n"]}
@@ -531,24 +531,13 @@ svg {
531
531
  cursor: pointer;
532
532
  }
533
533
 
534
- :host(
535
- .navigation-item:not(
536
- .navigation-item-page-header,
537
- .navigation-item-side-menu
538
- )
539
- )
534
+ :host(.navigation-item:not(.navigation-item-page-header, .navigation-item-side-menu))
540
535
  ::slotted(a:hover:not(:focus)) {
541
536
  background-color: var(--ic-theme-hover) !important;
542
537
  }
543
538
 
544
- :host(
545
- .navigation-item:not(
546
- .navigation-item-top-nav-child,
547
- .navigation-item-side-menu,
548
- .navigation-item-top-nav-child-selected
549
- .navigation-item-side-menu-selected
550
- )
551
- )
539
+ :host(.navigation-item:not(.navigation-item-top-nav-child, .navigation-item-side-menu, .navigation-item-top-nav-child-selected
540
+ .navigation-item-side-menu-selected))
552
541
  .focus-indicator:focus-within {
553
542
  box-shadow: var(--ic-border-focus);
554
543
  border-radius: var(--ic-border-radius);
@@ -568,13 +557,6 @@ svg {
568
557
  outline: var(--ic-hc-focus-outline);
569
558
  }
570
559
 
571
- :host(.navigation-item-selected.dark) .link:focus,
572
- :host(.navigation-item.dark) ::slotted(a.active:focus) {
573
- box-shadow: var(--ic-border-focus);
574
- border-radius: var(--ic-border-radius);
575
- outline: var(--ic-hc-focus-outline);
576
- }
577
-
578
560
  :host(.navigation-item) .link:active:not(:focus),
579
561
  :host(.navigation-item) ::slotted(a:active:not(:focus)) {
580
562
  background-color: var(--ic-theme-active);
@@ -925,23 +907,15 @@ svg {
925
907
  box-shadow: var(--ic-border-focus-inset);
926
908
  }
927
909
 
928
- :host(
929
- :not(
930
- .navigation-item-side-nav-collapsed
931
- ).navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label
932
- )
910
+ :host(:not(.navigation-item-side-nav-collapsed).navigation-item-side-nav.navigation-item-side-nav-collapsed-with-label)
933
911
  .link {
934
912
  opacity: var(--navigation-item-label-opacity);
935
913
  height: auto;
936
914
  }
937
915
 
938
- :host(
939
- .navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label
940
- )
916
+ :host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label)
941
917
  .link,
942
- :host(
943
- .navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label
944
- )
918
+ :host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label)
945
919
  ::slotted(a) {
946
920
  min-width: var(--navigation-group-item-min-width);
947
921
  padding: var(--ic-space-xs) !important;
@@ -949,9 +923,7 @@ svg {
949
923
  gap: 0;
950
924
  }
951
925
 
952
- :host(
953
- .navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label
954
- )
926
+ :host(.navigation-item-top-nav-child.navigation-item-side-nav-collapsed-with-label)
955
927
  ::slotted(a) {
956
928
  display: block;
957
929
  }