@norconsult-digital-public/isypixel 2.0.2-canary.6 → 2.0.2-canary.7
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.
- package/dist/docs/web-components/ip-icon-count/llm.md +126 -0
- package/dist/llm.md +1 -0
- package/dist/types/components/ip-icon-count/ip-icon-count.d.ts +14 -0
- package/dist/types/components.d.ts +71 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/web-components/components/index.js +1 -1
- package/dist/web-components/components/ip-avatar-stack.js +1 -1
- package/dist/web-components/components/ip-avatar.js +1 -1
- package/dist/web-components/components/ip-button.js +1 -1
- package/dist/web-components/components/ip-icon-button.js +1 -1
- package/dist/web-components/components/ip-icon-count.d.ts +11 -0
- package/dist/web-components/components/ip-icon-count.js +1 -0
- package/dist/web-components/components/ip-main-menu-group.js +1 -1
- package/dist/web-components/components/ip-main-menu-item.js +1 -1
- package/dist/web-components/components/ip-main-menu-section.js +1 -1
- package/dist/web-components/components/ip-main-menu-toggle.js +1 -1
- package/dist/web-components/components/ip-main-menu.js +1 -1
- package/dist/web-components/components/ip-tooltip.js +1 -1
- package/dist/web-components/components/{p-VLgeZTve.js → p-B_TLIx6P.js} +1 -1
- package/dist/web-components/components/{p-MvV7276a.js → p-BcC5iydm.js} +1 -1
- package/dist/web-components/components/{p-CXMRqnYG.js → p-BzX4EQ1R.js} +1 -1
- package/dist/web-components/components/p-CV6-lWaN.js +1 -0
- package/dist/web-components/components/{p-6Z45CK1I.js → p-CYHyixFx.js} +1 -1
- package/dist/web-components/components/{p-D7rK08OB.js → p-D7dv-vxU.js} +1 -1
- package/dist/web-components/components/{p-msgdnxTK.js → p-DS538Bt0.js} +1 -1
- package/dist/web-components/components/{p-BkayA00u.js → p-DeYqZhmA.js} +1 -1
- package/dist/web-components/components/{p-BYKtWIr5.js → p-Dfz1ldrQ.js} +1 -1
- package/dist/web-components/components/{p-C1tFWpS0.js → p-DgTyjESP.js} +1 -1
- package/dist/web-components/components/{p-DWpUb5rd.js → p-kvMV4IDK.js} +1 -1
- package/dist/web-components/generated/angular/components.d.ts +25 -0
- package/dist/web-components/generated/angular/components.js +49 -0
- package/dist/web-components/generated/angular/components.ts +40 -0
- package/dist/web-components/generated/angular/index.d.ts +1 -1
- package/dist/web-components/generated/angular/index.js +1 -0
- package/dist/web-components/generated/angular/index.ts +1 -0
- package/dist/web-components/generated/react/components.d.ts +3 -0
- package/dist/web-components/generated/react/components.js +9 -0
- package/dist/web-components/generated/react/components.ts +12 -0
- package/dist/web-components/generated/svelte/components.d.ts +2 -0
- package/dist/web-components/generated/vue/components.d.ts +1 -0
- package/dist/web-components/generated/vue/components.js +7 -0
- package/dist/web-components/generated/vue/components.ts +9 -0
- package/llms.txt +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
# ip-icon-count
|
|
2
|
+
|
|
3
|
+
A compact inline indicator that pairs a slotted icon with a value. Use it to show a count or measurement next to a contextual icon — e.g. a paperclip with `+14` for attachments, a checklist icon with `16` for tasks, or a temperature icon with `37°C` for a sensor reading.
|
|
4
|
+
|
|
5
|
+
The component is display only: it is not interactive, emits no events, and does not participate in forms. Consumers needing click behaviour wrap it in a `<button>` or `<a>`.
|
|
6
|
+
|
|
7
|
+
**Storybook:** https://pixel.isy.no/storybook/?path=/docs/core-ui-ip-icon-count-usage--docs
|
|
8
|
+
|
|
9
|
+
> This component requires ISY Pixel global styles to render correctly. Always remind the user to verify that styles are imported in their global stylesheet. See `llm.md` in the package root for style import options.
|
|
10
|
+
|
|
11
|
+
## Attributes
|
|
12
|
+
|
|
13
|
+
| Attribute | Type | Default | Values | Description |
|
|
14
|
+
| --------- | ------ | ----------- | ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
|
15
|
+
| `value` | string | `""` | Any string | The value shown next to the icon. A string so `"12"`, `"+14"`, and `"37°C"` are all valid. When empty, a `-` placeholder is shown. |
|
|
16
|
+
| `variant` | string | `"default"` | `"default"`, `"brand"`, `"warning"`, `"error"` | Colour variant for the icon and value. |
|
|
17
|
+
| `size` | string | `"medium"` | `"small"`, `"medium"`, `"large"` | Size of the icon and value text. |
|
|
18
|
+
| `label` | string | `""` | Any string | Optional accessible label describing the value, e.g. `"12 attachments"`. Sets `aria-label` on the host. See Accessibility. |
|
|
19
|
+
|
|
20
|
+
## Slots
|
|
21
|
+
|
|
22
|
+
| Slot | Description |
|
|
23
|
+
| ------ | ----------------------------------------------------------- |
|
|
24
|
+
| `icon` | The icon element to display. Typically an `<i>` or `<svg>`. |
|
|
25
|
+
|
|
26
|
+
## Accessibility
|
|
27
|
+
|
|
28
|
+
- The slotted icon is decorative and marked `aria-hidden`. On its own, an icon plus a value is not descriptive to assistive technology.
|
|
29
|
+
- When `label` is set, the host is exposed as `role="img"` with the label as its accessible name, so screen readers announce the meaning (e.g. "12 attachments") rather than the bare value.
|
|
30
|
+
- When `label` is empty, the component is exposed as-is and the value text is read on its own. Provide a `label` whenever the icon carries meaning that the value alone does not convey.
|
|
31
|
+
|
|
32
|
+
## Design tokens
|
|
33
|
+
|
|
34
|
+
> The `brand`, `warning`, and `error` variants use colours that fall below WCAG AA contrast on light surfaces (`brand`) or are non-adaptive primitive stand-ins (`warning`, `error`) because no sufficiently contrasting semantic tokens exist yet. These are marked `//TODO` in the SCSS and will be replaced with semantic, theme-aware tokens once design adds them. The same gap applies to the ip-avatar ring variants.
|
|
35
|
+
|
|
36
|
+
| SCSS variable | Role |
|
|
37
|
+
| --------------------------------------------------------------------------- | --------------------------------------------------------- |
|
|
38
|
+
| `$ip_color_text_secondary_default` | Value colour for `variant="default"` |
|
|
39
|
+
| `$ip_color_icon_primary_default` | Icon colour for `variant="default"` |
|
|
40
|
+
| `$ip_color_brand_accent_primary_default` | Icon and value colour for `variant="brand"` |
|
|
41
|
+
| `$ip_color_extended_orange-700` | Icon and value colour for `variant="warning"` (temporary) |
|
|
42
|
+
| `$ip_color_extended_red-700` | Icon and value colour for `variant="error"` (temporary) |
|
|
43
|
+
| `$ip_iconography_size_tiny` / `_small` / `_medium` | Icon size for `size` small / medium / large |
|
|
44
|
+
| `$ip_typography_mono_spaced_numbers_font_size_tiny` / `_small` / `_default` | Value font size for `size` small / medium / large |
|
|
45
|
+
| `$ip_typography_mono_spaced_numbers_font_family_default` | Value font family (monospace) |
|
|
46
|
+
| `$ip_typography_mono_spaced_numbers_font_weight_default` | Value font weight |
|
|
47
|
+
| `$ip_typography_mono_spaced_numbers_letter_spacing_default` | Value letter spacing |
|
|
48
|
+
| `$ip_radius_size_medium` | Container border radius |
|
|
49
|
+
| `$ip_spacing_space_075` | Gap between the icon and the value |
|
|
50
|
+
| `$ip_spacing_space_025` / `$ip_spacing_space_050` | Container padding (vertical / horizontal) |
|
|
51
|
+
|
|
52
|
+
## Usage
|
|
53
|
+
|
|
54
|
+
### HTML
|
|
55
|
+
|
|
56
|
+
```js
|
|
57
|
+
import '@norconsult-digital-public/isypixel/web-components/ip-icon-count.js';
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
```html
|
|
61
|
+
<ip-icon-count value="+14" variant="default" size="medium" label="14 attachments">
|
|
62
|
+
<i slot="icon" class="fa-solid fa-paperclip"></i>
|
|
63
|
+
</ip-icon-count>
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### React
|
|
67
|
+
|
|
68
|
+
```tsx
|
|
69
|
+
import { IpIconCount } from '@norconsult-digital-public/isypixel/web-components/react';
|
|
70
|
+
|
|
71
|
+
<IpIconCount value='+14' variant='default' size='medium' label='14 attachments'>
|
|
72
|
+
<i slot='icon' className='fa-solid fa-paperclip' />
|
|
73
|
+
</IpIconCount>;
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### Vue
|
|
77
|
+
|
|
78
|
+
```vue
|
|
79
|
+
<script setup lang="ts">
|
|
80
|
+
import { IpIconCount } from '@norconsult-digital-public/isypixel/web-components/vue';
|
|
81
|
+
</script>
|
|
82
|
+
|
|
83
|
+
<template>
|
|
84
|
+
<IpIconCount value="+14" variant="default" size="medium" label="14 attachments">
|
|
85
|
+
<i slot="icon" class="fa-solid fa-paperclip" />
|
|
86
|
+
</IpIconCount>
|
|
87
|
+
</template>
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### Angular
|
|
91
|
+
|
|
92
|
+
```ts
|
|
93
|
+
import { IpIconCount } from '@norconsult-digital-public/isypixel/web-components/angular';
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
```html
|
|
97
|
+
<ip-icon-count value="+14" variant="default" size="medium" label="14 attachments">
|
|
98
|
+
<i slot="icon" class="fa-solid fa-paperclip"></i>
|
|
99
|
+
</ip-icon-count>
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Svelte
|
|
103
|
+
|
|
104
|
+
```svelte
|
|
105
|
+
<script lang="ts">
|
|
106
|
+
import '@norconsult-digital-public/isypixel/web-components/ip-icon-count.js';
|
|
107
|
+
</script>
|
|
108
|
+
|
|
109
|
+
<ip-icon-count value="+14" variant="default" size="medium" label="14 attachments">
|
|
110
|
+
<i slot="icon" class="fa-solid fa-paperclip"></i>
|
|
111
|
+
</ip-icon-count>
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Blazor
|
|
115
|
+
|
|
116
|
+
> Attribute names must be **kebab-case** in Blazor HTML.
|
|
117
|
+
|
|
118
|
+
Copy `ip-icon-count.js` to `wwwroot/lib/isypixel/components/` at build time. See `llm.md` in the package root for the MSBuild target.
|
|
119
|
+
|
|
120
|
+
```html
|
|
121
|
+
<script type="module" src="lib/isypixel/components/ip-icon-count.js"></script>
|
|
122
|
+
|
|
123
|
+
<ip-icon-count value="+14" variant="default" size="medium" label="14 attachments">
|
|
124
|
+
<i slot="icon" class="fa-solid fa-paperclip"></i>
|
|
125
|
+
</ip-icon-count>
|
|
126
|
+
```
|
package/dist/llm.md
CHANGED
|
@@ -176,6 +176,7 @@ In `index.html` `<body>`:
|
|
|
176
176
|
| `ip-tooltip` | Tooltip that wraps a trigger and shows non-interactive content on hover, focus, and Escape | `docs/web-components/ip-tooltip/llm.md` |
|
|
177
177
|
| `ip-avatar` | Theme-aware avatar with image/fallback/initials/silhouette chain, label, ring, loader, corner slots, and tooltip | `docs/web-components/ip-avatar/llm.md` |
|
|
178
178
|
| `ip-avatar-stack` | Overlapping stack of `ip-avatar` elements with overflow collapse into a `+N` counter and a combined names label | `docs/web-components/ip-avatar-stack/llm.md` |
|
|
179
|
+
| `ip-icon-count` | Compact inline indicator pairing a slotted icon with a value, e.g. an attachment count or a sensor reading | `docs/web-components/ip-icon-count/llm.md` |
|
|
179
180
|
| `ip-main-menu` | Sidebar navigation wrapper with expanded/auto-hide/collapsed desktop modes and mobile drawer | `docs/web-components/ip-main-menu/llm.md` |
|
|
180
181
|
| `ip-main-menu-toggle` | Hamburger button for the top bar that opens the `ip-main-menu` mobile drawer via a shared store | `docs/web-components/ip-main-menu-toggle/llm.md` |
|
|
181
182
|
| `ip-main-menu-section` | Semantic section wrapper that groups navigation items with an optional visible label | `docs/web-components/ip-main-menu-section/llm.md` |
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { JSX } from '../../stencil-public-runtime';
|
|
2
|
+
/** Compact inline indicator pairing a slotted icon with a value, e.g. an attachment count or a sensor reading. Display only — not interactive. */
|
|
3
|
+
export declare class IpIconCount {
|
|
4
|
+
/** Value shown next to the icon. A string so "12", "+14", and "37°C" are all valid. Empty renders a "-" placeholder so the layout stays consistent. */
|
|
5
|
+
value: string;
|
|
6
|
+
/** Colour variant for the icon and value. Mirrors the `variant` naming on ip-button / ip-icon-button. */
|
|
7
|
+
variant: 'default' | 'brand' | 'warning' | 'error';
|
|
8
|
+
/** Size of the icon and value text. */
|
|
9
|
+
size: 'small' | 'medium' | 'large';
|
|
10
|
+
/** Optional accessible label describing the value, e.g. "12 attachments". Sets aria-label on the host; an icon + value alone is not descriptive to screen readers. */
|
|
11
|
+
label: string;
|
|
12
|
+
/** Renders the icon and value, exposing a single labelled image to assistive tech when `label` is set. */
|
|
13
|
+
render(): JSX.Element;
|
|
14
|
+
}
|
|
@@ -300,6 +300,31 @@ export namespace Components {
|
|
|
300
300
|
*/
|
|
301
301
|
"variant": 'primary' | 'secondary' | 'tertiary' | 'brand' | 'destructive' | 'transparentOnLight' | 'transparentOnDark';
|
|
302
302
|
}
|
|
303
|
+
/**
|
|
304
|
+
* Compact inline indicator pairing a slotted icon with a value, e.g. an attachment count or a sensor reading. Display only — not interactive.
|
|
305
|
+
*/
|
|
306
|
+
interface IpIconCount {
|
|
307
|
+
/**
|
|
308
|
+
* Optional accessible label describing the value, e.g. "12 attachments". Sets aria-label on the host; an icon + value alone is not descriptive to screen readers.
|
|
309
|
+
* @default ''
|
|
310
|
+
*/
|
|
311
|
+
"label": string;
|
|
312
|
+
/**
|
|
313
|
+
* Size of the icon and value text.
|
|
314
|
+
* @default 'medium'
|
|
315
|
+
*/
|
|
316
|
+
"size": 'small' | 'medium' | 'large';
|
|
317
|
+
/**
|
|
318
|
+
* Value shown next to the icon. A string so "12", "+14", and "37°C" are all valid. Empty renders a "-" placeholder so the layout stays consistent.
|
|
319
|
+
* @default ''
|
|
320
|
+
*/
|
|
321
|
+
"value": string;
|
|
322
|
+
/**
|
|
323
|
+
* Colour variant for the icon and value. Mirrors the `variant` naming on ip-button / ip-icon-button.
|
|
324
|
+
* @default 'default'
|
|
325
|
+
*/
|
|
326
|
+
"variant": 'default' | 'brand' | 'warning' | 'error';
|
|
327
|
+
}
|
|
303
328
|
/**
|
|
304
329
|
* Outer sidebar navigation wrapper. Manages desktop display modes and mobile drawer. Must be placed in a flex/grid container with a defined height.
|
|
305
330
|
*/
|
|
@@ -525,6 +550,15 @@ declare global {
|
|
|
525
550
|
prototype: HTMLIpIconButtonElement;
|
|
526
551
|
new (): HTMLIpIconButtonElement;
|
|
527
552
|
};
|
|
553
|
+
/**
|
|
554
|
+
* Compact inline indicator pairing a slotted icon with a value, e.g. an attachment count or a sensor reading. Display only — not interactive.
|
|
555
|
+
*/
|
|
556
|
+
interface HTMLIpIconCountElement extends Components.IpIconCount, HTMLStencilElement {
|
|
557
|
+
}
|
|
558
|
+
var HTMLIpIconCountElement: {
|
|
559
|
+
prototype: HTMLIpIconCountElement;
|
|
560
|
+
new (): HTMLIpIconCountElement;
|
|
561
|
+
};
|
|
528
562
|
interface HTMLIpMainMenuElementEventMap {
|
|
529
563
|
"ipModeChange": 'expanded' | 'auto-hide' | 'collapsed';
|
|
530
564
|
"ipMobileOpenChange": boolean;
|
|
@@ -617,6 +651,7 @@ declare global {
|
|
|
617
651
|
"ip-avatar-stack": HTMLIpAvatarStackElement;
|
|
618
652
|
"ip-button": HTMLIpButtonElement;
|
|
619
653
|
"ip-icon-button": HTMLIpIconButtonElement;
|
|
654
|
+
"ip-icon-count": HTMLIpIconCountElement;
|
|
620
655
|
"ip-main-menu": HTMLIpMainMenuElement;
|
|
621
656
|
"ip-main-menu-group": HTMLIpMainMenuGroupElement;
|
|
622
657
|
"ip-main-menu-item": HTMLIpMainMenuItemElement;
|
|
@@ -950,6 +985,31 @@ declare namespace LocalJSX {
|
|
|
950
985
|
*/
|
|
951
986
|
"variant"?: 'primary' | 'secondary' | 'tertiary' | 'brand' | 'destructive' | 'transparentOnLight' | 'transparentOnDark';
|
|
952
987
|
}
|
|
988
|
+
/**
|
|
989
|
+
* Compact inline indicator pairing a slotted icon with a value, e.g. an attachment count or a sensor reading. Display only — not interactive.
|
|
990
|
+
*/
|
|
991
|
+
interface IpIconCount {
|
|
992
|
+
/**
|
|
993
|
+
* Optional accessible label describing the value, e.g. "12 attachments". Sets aria-label on the host; an icon + value alone is not descriptive to screen readers.
|
|
994
|
+
* @default ''
|
|
995
|
+
*/
|
|
996
|
+
"label"?: string;
|
|
997
|
+
/**
|
|
998
|
+
* Size of the icon and value text.
|
|
999
|
+
* @default 'medium'
|
|
1000
|
+
*/
|
|
1001
|
+
"size"?: 'small' | 'medium' | 'large';
|
|
1002
|
+
/**
|
|
1003
|
+
* Value shown next to the icon. A string so "12", "+14", and "37°C" are all valid. Empty renders a "-" placeholder so the layout stays consistent.
|
|
1004
|
+
* @default ''
|
|
1005
|
+
*/
|
|
1006
|
+
"value"?: string;
|
|
1007
|
+
/**
|
|
1008
|
+
* Colour variant for the icon and value. Mirrors the `variant` naming on ip-button / ip-icon-button.
|
|
1009
|
+
* @default 'default'
|
|
1010
|
+
*/
|
|
1011
|
+
"variant"?: 'default' | 'brand' | 'warning' | 'error';
|
|
1012
|
+
}
|
|
953
1013
|
/**
|
|
954
1014
|
* Outer sidebar navigation wrapper. Manages desktop display modes and mobile drawer. Must be placed in a flex/grid container with a defined height.
|
|
955
1015
|
*/
|
|
@@ -1193,6 +1253,12 @@ declare namespace LocalJSX {
|
|
|
1193
1253
|
"tooltipHideOnClick": boolean;
|
|
1194
1254
|
"expanded": 'true' | 'false' | null;
|
|
1195
1255
|
}
|
|
1256
|
+
interface IpIconCountAttributes {
|
|
1257
|
+
"value": string;
|
|
1258
|
+
"variant": 'default' | 'brand' | 'warning' | 'error';
|
|
1259
|
+
"size": 'small' | 'medium' | 'large';
|
|
1260
|
+
"label": string;
|
|
1261
|
+
}
|
|
1196
1262
|
interface IpMainMenuAttributes {
|
|
1197
1263
|
"heading": string;
|
|
1198
1264
|
"mode": 'expanded' | 'auto-hide' | 'collapsed';
|
|
@@ -1237,6 +1303,7 @@ declare namespace LocalJSX {
|
|
|
1237
1303
|
"ip-avatar-stack": Omit<IpAvatarStack, keyof IpAvatarStackAttributes> & { [K in keyof IpAvatarStack & keyof IpAvatarStackAttributes]?: IpAvatarStack[K] } & { [K in keyof IpAvatarStack & keyof IpAvatarStackAttributes as `attr:${K}`]?: IpAvatarStackAttributes[K] } & { [K in keyof IpAvatarStack & keyof IpAvatarStackAttributes as `prop:${K}`]?: IpAvatarStack[K] };
|
|
1238
1304
|
"ip-button": Omit<IpButton, keyof IpButtonAttributes> & { [K in keyof IpButton & keyof IpButtonAttributes]?: IpButton[K] } & { [K in keyof IpButton & keyof IpButtonAttributes as `attr:${K}`]?: IpButtonAttributes[K] } & { [K in keyof IpButton & keyof IpButtonAttributes as `prop:${K}`]?: IpButton[K] };
|
|
1239
1305
|
"ip-icon-button": Omit<IpIconButton, keyof IpIconButtonAttributes> & { [K in keyof IpIconButton & keyof IpIconButtonAttributes]?: IpIconButton[K] } & { [K in keyof IpIconButton & keyof IpIconButtonAttributes as `attr:${K}`]?: IpIconButtonAttributes[K] } & { [K in keyof IpIconButton & keyof IpIconButtonAttributes as `prop:${K}`]?: IpIconButton[K] };
|
|
1306
|
+
"ip-icon-count": Omit<IpIconCount, keyof IpIconCountAttributes> & { [K in keyof IpIconCount & keyof IpIconCountAttributes]?: IpIconCount[K] } & { [K in keyof IpIconCount & keyof IpIconCountAttributes as `attr:${K}`]?: IpIconCountAttributes[K] } & { [K in keyof IpIconCount & keyof IpIconCountAttributes as `prop:${K}`]?: IpIconCount[K] };
|
|
1240
1307
|
"ip-main-menu": Omit<IpMainMenu, keyof IpMainMenuAttributes> & { [K in keyof IpMainMenu & keyof IpMainMenuAttributes]?: IpMainMenu[K] } & { [K in keyof IpMainMenu & keyof IpMainMenuAttributes as `attr:${K}`]?: IpMainMenuAttributes[K] } & { [K in keyof IpMainMenu & keyof IpMainMenuAttributes as `prop:${K}`]?: IpMainMenu[K] } & OneOf<"heading", IpMainMenu["heading"], IpMainMenuAttributes["heading"]>;
|
|
1241
1308
|
"ip-main-menu-group": Omit<IpMainMenuGroup, keyof IpMainMenuGroupAttributes> & { [K in keyof IpMainMenuGroup & keyof IpMainMenuGroupAttributes]?: IpMainMenuGroup[K] } & { [K in keyof IpMainMenuGroup & keyof IpMainMenuGroupAttributes as `attr:${K}`]?: IpMainMenuGroupAttributes[K] } & { [K in keyof IpMainMenuGroup & keyof IpMainMenuGroupAttributes as `prop:${K}`]?: IpMainMenuGroup[K] } & OneOf<"label", IpMainMenuGroup["label"], IpMainMenuGroupAttributes["label"]>;
|
|
1242
1309
|
"ip-main-menu-item": Omit<IpMainMenuItem, keyof IpMainMenuItemAttributes> & { [K in keyof IpMainMenuItem & keyof IpMainMenuItemAttributes]?: IpMainMenuItem[K] } & { [K in keyof IpMainMenuItem & keyof IpMainMenuItemAttributes as `attr:${K}`]?: IpMainMenuItemAttributes[K] } & { [K in keyof IpMainMenuItem & keyof IpMainMenuItemAttributes as `prop:${K}`]?: IpMainMenuItem[K] } & OneOf<"label", IpMainMenuItem["label"], IpMainMenuItemAttributes["label"]>;
|
|
@@ -1256,6 +1323,10 @@ declare module "@stencil/core" {
|
|
|
1256
1323
|
* Circular icon-only button with tooltip, five variants, three sizes, and form participation.
|
|
1257
1324
|
*/
|
|
1258
1325
|
"ip-icon-button": LocalJSX.IntrinsicElements["ip-icon-button"] & JSXBase.HTMLAttributes<HTMLIpIconButtonElement>;
|
|
1326
|
+
/**
|
|
1327
|
+
* Compact inline indicator pairing a slotted icon with a value, e.g. an attachment count or a sensor reading. Display only — not interactive.
|
|
1328
|
+
*/
|
|
1329
|
+
"ip-icon-count": LocalJSX.IntrinsicElements["ip-icon-count"] & JSXBase.HTMLAttributes<HTMLIpIconCountElement>;
|
|
1259
1330
|
/**
|
|
1260
1331
|
* Outer sidebar navigation wrapper. Manages desktop display modes and mobile drawer. Must be placed in a flex/grid container with a defined height.
|
|
1261
1332
|
*/
|
package/dist/types/index.d.ts
CHANGED
|
@@ -12,3 +12,4 @@ export { IpIconButton } from './components/ip-icon-button/ip-icon-button';
|
|
|
12
12
|
export { IpTooltip } from './components/ip-tooltip/ip-tooltip';
|
|
13
13
|
export { IpAvatar } from './components/ip-avatar/ip-avatar';
|
|
14
14
|
export { IpAvatarStack } from './components/ip-avatar-stack/ip-avatar-stack';
|
|
15
|
+
export { IpIconCount } from './components/ip-icon-count/ip-icon-count';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{g as getAssetPath,r as render,s as setAssetPath,a as setNonce,b as setPlatformOptions}from"./p-BB9-AZXH.js";export{I as IpButton}from"./p-
|
|
1
|
+
export{g as getAssetPath,r as render,s as setAssetPath,a as setNonce,b as setPlatformOptions}from"./p-BB9-AZXH.js";export{I as IpButton}from"./p-CYHyixFx.js";export{P as PixelI18nService}from"./p-DHUR9EVo.js";export{I as IpMainMenu}from"./p-B_TLIx6P.js";export{I as IpMainMenuToggle}from"./p-DgTyjESP.js";export{I as IpMainMenuSection}from"./p-Dfz1ldrQ.js";export{I as IpMainMenuGroup}from"./p-DeYqZhmA.js";export{I as IpMainMenuItem}from"./p-kvMV4IDK.js";export{I as IpIconButton}from"./p-BcC5iydm.js";export{I as IpTooltip}from"./p-DS538Bt0.js";export{I as IpAvatar}from"./p-BzX4EQ1R.js";export{I as IpAvatarStack}from"./p-D7dv-vxU.js";export{I as IpIconCount}from"./p-CV6-lWaN.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as o,d as
|
|
1
|
+
import{I as o,d as s}from"./p-D7dv-vxU.js";const p=o,r=s;export{p as IpAvatarStack,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as o,d as s}from"./p-
|
|
1
|
+
import{I as o,d as s}from"./p-BzX4EQ1R.js";const p=o,r=s;export{p as IpAvatar,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as o,d as s}from"./p-
|
|
1
|
+
import{I as o,d as s}from"./p-CYHyixFx.js";const p=o,r=s;export{p as IpButton,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as o,d as s}from"./p-
|
|
1
|
+
import{I as o,d as s}from"./p-BcC5iydm.js";const m=o,p=s;export{m as IpIconButton,p as defineCustomElement}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../../types/components";
|
|
2
|
+
|
|
3
|
+
interface IpIconCount extends Components.IpIconCount, HTMLElement {}
|
|
4
|
+
export const IpIconCount: {
|
|
5
|
+
prototype: IpIconCount;
|
|
6
|
+
new (): IpIconCount;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{I as o,d as s}from"./p-CV6-lWaN.js";const a=o,p=s;export{a as IpIconCount,p as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as o,d as s}from"./p-
|
|
1
|
+
import{I as o,d as s}from"./p-DeYqZhmA.js";const m=o,p=s;export{m as IpMainMenuGroup,p as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as o,d as
|
|
1
|
+
import{I as o,d as s}from"./p-kvMV4IDK.js";const p=o,r=s;export{p as IpMainMenuItem,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as o,d as r}from"./p-
|
|
1
|
+
import{I as o,d as r}from"./p-Dfz1ldrQ.js";const s=o,p=r;export{s as IpMainMenuSection,p as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as o,d as
|
|
1
|
+
import{I as o,d as s}from"./p-DgTyjESP.js";const p=o,r=s;export{p as IpMainMenuToggle,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as o,d as s}from"./p-
|
|
1
|
+
import{I as o,d as s}from"./p-B_TLIx6P.js";const p=o,r=s;export{p as IpMainMenu,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as
|
|
1
|
+
import{I as o,d as s}from"./p-DS538Bt0.js";const t=o,p=s;export{t as IpTooltip,p as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as i,p as n,H as e,c as a,h as t,d as o}from"./p-BB9-AZXH.js";import{a as s,m}from"./p-DHUR9EVo.js";import{c as p,d as r,e as l,f as c}from"./p-CAPVXUZ_.js";import{M as d}from"./p-D42v9_4Q.js";import{d as u}from"./p-MvV7276a.js";import{d as h}from"./p-msgdnxTK.js";s.registerComponent("ip-main-menu",{en:{collapseMenu:"Collapse menu",expandMenu:"Expand menu",pinMenu:"Pin menu",unpinMenu:"Unpin menu",closeMenu:"Close menu"},"nb-NO":{collapseMenu:"Skjul meny",expandMenu:"Vis meny",pinMenu:"Fest menyen",unpinMenu:"Løsne menyen",closeMenu:"Lukk meny"}});const b=n(class extends e{constructor(i){super(),!1!==i&&this.__registerHost(),this.__attachShadow(),this.ipModeChange=a(this,"ipModeChange",7),this.ipMobileOpenChange=a(this,"ipMobileOpenChange",7),this.ipBrandClick=a(this,"ipBrandClick",7),this.mode="expanded",this.expandDelay=300,this.collapseDelay=300,this.mobileBreakpoint="1024px",this.isHoverExpanded=!1,this.handleDocumentKeydown=i=>{"Escape"===i.key&&d.setMobileOpen(!1)},this.handleHoverZoneEnter=()=>{"auto-hide"===d.mode&&(this.clearHoverCollapseTimer(),this.isHoverExpanded||(this.clearHoverExpandTimer(),this.hoverExpandTimer=setTimeout((()=>{this.isHoverExpanded=!0,this.hoverExpandTimer=void 0}),this.expandDelay)))},this.handleHoverZoneLeave=()=>{this.clearHoverExpandTimer(),this.isHoverExpanded&&this.startCollapseTimer()},this.startCollapseTimer=()=>{this.clearHoverCollapseTimer(),this.hoverCollapseTimer=setTimeout((()=>{this.hasKeyboardFocusWithin()||(this.isHoverExpanded=!1),this.hoverCollapseTimer=void 0}),this.collapseDelay)},this.hasKeyboardFocusWithin=()=>{let i=document.activeElement;if(!i||!this.el.contains(i))return!1;for(;i.shadowRoot?.activeElement;)i=i.shadowRoot.activeElement;return i.matches(":focus-visible")},this.handleNavFocusIn=()=>{"auto-hide"===d.mode&&(this.clearHoverCollapseTimer(),this.isHoverExpanded||(this.clearHoverExpandTimer(),this.isHoverExpanded=!0))},this.handleNavFocusOut=i=>{const n=i.relatedTarget;d.isMobileOpen?n&&!this.containsFocusTarget(n)&&this.focusCloseButton():this.isHoverExpanded&&(this.containsFocusTarget(n)||this.startCollapseTimer())},this.clearHoverExpandTimer=()=>{void 0!==this.hoverExpandTimer&&(clearTimeout(this.hoverExpandTimer),this.hoverExpandTimer=void 0)},this.clearHoverCollapseTimer=()=>{void 0!==this.hoverCollapseTimer&&(clearTimeout(this.hoverCollapseTimer),this.hoverCollapseTimer=void 0)},this.clearHoverTimers=()=>{this.clearHoverExpandTimer(),this.clearHoverCollapseTimer()},this.handlePinClick=()=>{this.applyUserMode("auto-hide"===d.mode?"expanded":"auto-hide")},this.handleCollapseClick=()=>{this.applyUserMode("expanded"===d.mode?"collapsed":"expanded")},this.handleCloseClick=()=>{d.setMobileOpen(!1)},this.handleBrandClick=()=>{this.ipBrandClick.emit()}}componentWillLoad(){d.isModeUserOverridden?this.mode=d.mode:d.setMode(this.mode),d.setMobileBreakpoint(this.mobileBreakpoint)}connectedCallback(){this.unsubscribeMobileOpen=d.onMobileOpenChange((i=>{this.ipMobileOpenChange.emit(i),this.handleMobileOpenChanged(i)}))}disconnectedCallback(){this.unsubscribeMobileOpen?.(),this.clearHoverTimers(),document.removeEventListener("keydown",this.handleDocumentKeydown)}handleMobileOpenChanged(i){i?(document.addEventListener("keydown",this.handleDocumentKeydown),requestAnimationFrame((()=>this.focusCloseButton()))):document.removeEventListener("keydown",this.handleDocumentKeydown)}focusCloseButton(){this.closeButton?.focus()}containsFocusTarget(i){return!!i&&(this.el.contains(i)||(this.el.shadowRoot?.contains(i)??!1))}onModeChange(i){d.setMode(i),this.clearHoverTimers(),this.isHoverExpanded=!1}syncBreakpoint(){d.setMobileBreakpoint(this.mobileBreakpoint)}applyUserMode(i){d.setModeFromUser(i),this.mode=i,this.ipModeChange.emit(i)}renderBrand(){const i=t("slot",{name:"logo"},t("span",{class:"ip-main-menu__isy-logo","aria-label":"ISY",innerHTML:p})),n=t("span",{class:"ip-main-menu__heading"},this.heading);return this.brandHref?t("a",{href:this.brandHref,class:"ip-main-menu__brand","aria-label":this.heading},i,n):t("button",{type:"button",class:"ip-main-menu__brand","aria-label":this.heading,onClick:this.handleBrandClick},i,n)}render(){const i=d.mode,n="expanded"!==i,e=d.isMobileOpen,a="auto-hide"===i&&this.isHoverExpanded?"":void 0,p=m(this.mobileBreakpoint,"\n .ip-main-menu__backdrop--visible { --ip-main-menu-backdrop-display: block; }\n\n .ip-main-menu__nav {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 100;\n transform: translateX(-100%);\n visibility: hidden;\n --ip-main-menu-nav-width: 260px;\n --ip-main-menu-nav-height: 100svh;\n --ip-main-menu-nav-transition: transform 0.3s ease, visibility 0s linear 0.3s;\n }\n\n .ip-main-menu__nav--mobile-open {\n transform: translateX(0);\n visibility: visible;\n --ip-main-menu-nav-transition: transform 0.3s ease, visibility 0s linear 0s;\n --ip-main-menu-label-display: block;\n --ip-main-menu-icon-justify: flex-start;\n --ip-main-menu-chevron-position: static;\n --ip-main-menu-chevron-margin: auto;\n --ip-main-menu-chevron-right: auto;\n --ip-main-menu-chevron-top: auto;\n --ip-main-menu-chevron-bottom: auto;\n --ip-main-menu-logo-display: none;\n --ip-main-menu-heading-display: block;\n --ip-main-menu-chevron-icon-size: var(--ip_iconography_size_tiny);\n --ip-main-menu-item-icon-size: var(--ip_iconography_size_small);\n --ip-main-menu-section-label-text-visibility: visible;\n --ip-main-menu-section-indicator-display: none;\n }\n\n .ip-main-menu__desktop-controls { --ip-main-menu-desktop-controls-display: none; }\n .ip-main-menu__mobile-close { --ip-main-menu-mobile-close-display: inline-flex; }\n .ip-main-menu__brand { --ip-main-menu-brand-flex: 1; }\n\n @media (max-width: 767px) {\n .ip-main-menu__nav { --ip-main-menu-nav-width: 100%; }\n }\n");return t(o,{key:"02eaeaa0fd5674080e5f4be0745319a2ae609c96","data-mode":i,"data-hover-expanded":a},t("style",{key:"2c767bce0c78b9e9603fb4140e9b90de1be543bc"},p),t("div",{key:"ac6729b828740fffda83e9882a0b43b8607d6016",class:"ip-main-menu__backdrop"+(e?" ip-main-menu__backdrop--visible":""),"aria-hidden":"true",onClick:this.handleCloseClick}),t("nav",{key:"7b0e49529736bfb63993a61a652efa5173ac0bc8",class:"ip-main-menu__nav"+(e?" ip-main-menu__nav--mobile-open":""),"aria-label":this.heading,onFocusin:this.handleNavFocusIn,onFocusout:this.handleNavFocusOut},t("div",{key:"bd6d13b3a267688cfcd1e03fc5a64c1e9c904711",class:"ip-main-menu__header"},this.renderBrand(),t("ip-icon-button",{key:"fb3164ab77af9c78ee5e9f0b17c47bc96fd70ad4",class:"ip-main-menu__mobile-close",ref:i=>this.closeButton=i,variant:"transparentOnDark",size:"large",tooltipSize:"medium",tooltipPosition:"right",tooltipVariant:"onDark",label:s.translate("ip-main-menu","closeMenu"),onClick:this.handleCloseClick},t("slot",{key:"a802ac50a9b799a98bd0c049639d37ba5951be16",name:"icon-close",slot:"icon"},t("span",{key:"31b811eddb597d87d69a6f182723a32b25670d8b",class:"ip-main-menu__icon","aria-hidden":"true",innerHTML:r})))),t("div",{key:"c5b090c7f2f0dcf188bf10cfb7a3e70c5a07d67b",class:"ip-main-menu__desktop-controls"},"auto-hide"!==i&&t("ip-icon-button",{key:"03bb810591a2b7a18ab8f5eb508ccf994cd28db1",class:"ip-main-menu__collapse-btn",variant:"transparentOnDark",size:"large",tooltipSize:"medium",tooltipVariant:"onDark",tooltipHideOnClick:!1,label:s.translate("ip-main-menu",n?"expandMenu":"collapseMenu"),onClick:this.handleCollapseClick},t("slot",{key:"94b91a1800bf57a0af48b3f437e12754e6bf7af6",name:"icon-collapse",slot:"icon"},t("span",{key:"61fd180a6fe38399eb9e576158f64e48530a2508",class:"ip-main-menu__icon","aria-hidden":"true",innerHTML:l}))),"collapsed"!==i&&t("ip-icon-button",{key:"d77763ecad6399c776de4d1c1b64778f6f8576f9",class:"ip-main-menu__pin-btn",variant:"transparentOnDark",size:"large",tooltipSize:"medium",tooltipVariant:"onDark",tooltipHideOnClick:!1,label:s.translate("ip-main-menu","auto-hide"===i?"pinMenu":"unpinMenu"),onClick:this.handlePinClick},"auto-hide"===i?t("slot",{name:"icon-unpin",slot:"icon"},t("span",{class:"ip-main-menu__icon ip-main-menu__icon--unpin","aria-hidden":"true",innerHTML:c})):t("slot",{name:"icon-pin",slot:"icon"},t("span",{class:"ip-main-menu__icon","aria-hidden":"true",innerHTML:c})))),t("div",{key:"f64e31d861d5d517fb40d7fbed0ac6c4bce9d65d",class:"ip-main-menu__hover-zone",onMouseEnter:this.handleHoverZoneEnter,onMouseLeave:this.handleHoverZoneLeave},t("div",{key:"ab39b69c8a97ed99a7ec299fd7ebb38091dbe789",class:"ip-main-menu__items"},t("slot",{key:"560611d1e68eb39965cc515363c50860ce93c2f7"})),t("div",{key:"4c44af10512a82ac2d7e3f49420568db8489c5c9",class:"ip-main-menu__bottom"},t("slot",{key:"a2d4403c3b3fadf15efbf404fbfefe1e8789a049",name:"bottom"})))))}get el(){return this}static get watchers(){return{mode:[{onModeChange:0}],mobileBreakpoint:[{syncBreakpoint:0}]}}static get style(){return":host{display:block;height:100%;position:relative;--ip-main-menu-width:230px;--ip-main-menu-label-display:block;--ip-main-menu-icon-justify:flex-start;--ip-main-menu-controls-justify:flex-end;--ip-main-menu-chevron-display:inline-flex;--ip-main-menu-chevron-position:static;--ip-main-menu-chevron-margin:auto;--ip-main-menu-chevron-right:auto;--ip-main-menu-chevron-top:auto;--ip-main-menu-chevron-bottom:auto;--ip-main-menu-logo-display:none;--ip-main-menu-heading-display:block;--ip-main-menu-chevron-icon-size:var(--ip_iconography_size_tiny);--ip-main-menu-item-icon-size:var(--ip_iconography_size_small);--ip-main-menu-collapse-icon-rotation:0deg;--ip-main-menu-section-label-padding-start:var(--ip_spacing_space_150)}:host([data-mode=auto-hide][data-hover-expanded]){--ip-main-menu-width:230px;--ip-main-menu-label-display:block;--ip-main-menu-icon-justify:flex-start;--ip-main-menu-controls-justify:flex-end;--ip-main-menu-chevron-display:inline-flex;--ip-main-menu-chevron-position:static;--ip-main-menu-chevron-margin:auto;--ip-main-menu-chevron-right:auto;--ip-main-menu-chevron-top:auto;--ip-main-menu-chevron-bottom:auto;--ip-main-menu-logo-display:none;--ip-main-menu-heading-display:block;--ip-main-menu-chevron-icon-size:var(--ip_iconography_size_tiny);--ip-main-menu-item-icon-size:var(--ip_iconography_size_small);--ip-main-menu-section-label-padding-start:var(--ip_spacing_space_150);--ip-main-menu-brand-flex:0 0 auto;--ip-main-menu-brand-justify:flex-start}:host([data-mode=collapsed]) .ip-main-menu__brand,:host([data-mode=auto-hide]) .ip-main-menu__brand{overflow:visible}:host([data-mode=collapsed]){--ip-main-menu-collapse-icon-rotation:180deg}:host([data-mode=collapsed]),:host([data-mode=auto-hide]){--ip-main-menu-width:64px;--ip-main-menu-label-display:none;--ip-main-menu-icon-justify:center;--ip-main-menu-controls-justify:center;--ip-main-menu-chevron-position:absolute;--ip-main-menu-chevron-margin:0;--ip-main-menu-chevron-right:4px;--ip-main-menu-chevron-top:0;--ip-main-menu-chevron-bottom:0;--ip-main-menu-logo-display:inline-flex;--ip-main-menu-heading-display:none;--ip-main-menu-chevron-icon-size:8px;--ip-main-menu-item-icon-size:var(--ip_iconography_size_tiny);--ip-main-menu-section-label-padding-start:calc(50% - 10px);--ip-main-menu-brand-flex:1;--ip-main-menu-brand-justify:center}.ip-main-menu__backdrop{display:var(--ip-main-menu-backdrop-display, none);position:fixed;inset:0;background-color:rgba(0, 0, 0, 0.5);z-index:99}.ip-main-menu__nav{display:flex;flex-direction:column;height:var(--ip-main-menu-nav-height, 100%);width:var(--ip-main-menu-nav-width, var(--ip-main-menu-width));max-width:100vw;background-color:var(--ip_color_menu_main_background_primary_default);overflow-y:auto;overflow-x:hidden;transition:var(--ip-main-menu-nav-transition, width 0.2s ease);flex-shrink:0}.ip-main-menu__nav::-webkit-scrollbar{width:4px}.ip-main-menu__nav::-webkit-scrollbar-track{background:transparent}.ip-main-menu__nav::-webkit-scrollbar-thumb{background-color:rgba(255, 255, 255, 0.25);border-radius:2px}.ip-main-menu__nav::-webkit-scrollbar-thumb:hover{background-color:rgba(255, 255, 255, 0.4)}@supports not selector(::-webkit-scrollbar){.ip-main-menu__nav{scrollbar-width:thin;scrollbar-color:rgba(255, 255, 255, 0.25) transparent}}.ip-main-menu__header{display:flex;align-items:center;width:100%;height:56px;flex-shrink:0}.ip-main-menu__brand{align-self:stretch;display:inline-flex;align-items:center;justify-content:var(--ip-main-menu-brand-justify, flex-start);flex:var(--ip-main-menu-brand-flex, 0 0 auto);min-width:0;overflow:hidden;padding:0;padding-inline:var(--ip_spacing_space_150);border:none;background:transparent;text-decoration:none;color:inherit;font:inherit;cursor:pointer}.ip-main-menu__brand:focus-visible{outline:2px solid var(--ip_color_button_focus_default);outline-offset:-2px}.ip-main-menu__heading{display:var(--ip-main-menu-heading-display, block);font-family:var(--ip_typography_font_family_tertiary);font-size:18px;font-weight:100;color:#ffffff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ip-main-menu__isy-logo{display:var(--ip-main-menu-logo-display, none);align-items:center;color:#ffffff}.ip-main-menu__desktop-controls{display:var(--ip-main-menu-desktop-controls-display, flex);align-items:center;justify-content:var(--ip-main-menu-controls-justify);gap:var(--ip_spacing_space_050);padding:4px 8px 24px;flex-shrink:0}.ip-main-menu__mobile-close{display:var(--ip-main-menu-mobile-close-display, none);margin-inline-start:auto;margin-inline-end:var(--ip_spacing_space_050)}.ip-main-menu__icon{display:inline-flex;align-items:center;justify-content:center}.ip-main-menu__icon svg{width:var(--ip_iconography_size_tiny);height:var(--ip_iconography_size_tiny)}.ip-main-menu__collapse-btn .ip-main-menu__icon{transform:rotate(var(--ip-main-menu-collapse-icon-rotation));transition:transform 0.2s ease}.ip-main-menu__icon--unpin{transform:rotate(45deg)}.ip-main-menu__hover-zone{display:flex;flex-direction:column;flex:1;min-height:0}.ip-main-menu__items{flex:1}.ip-main-menu__bottom{padding:0;flex-shrink:0}::slotted([slot=icon-collapse]){font-size:var(--ip_iconography_size_tiny) !important;transform:rotate(var(--ip-main-menu-collapse-icon-rotation)) !important;transition:transform 0.2s ease !important}::slotted([slot=icon-pin]),::slotted([slot=icon-unpin]),::slotted([slot=icon-hamburger]),::slotted([slot=icon-close]){font-size:var(--ip_iconography_size_tiny) !important}"}},[257,"ip-main-menu",{heading:[513],mode:[1537],brandHref:[513,"brand-href"],expandDelay:[514,"expand-delay"],collapseDelay:[514,"collapse-delay"],mobileBreakpoint:[513,"mobile-breakpoint"],isHoverExpanded:[32]},void 0,{mode:[{onModeChange:0}],mobileBreakpoint:[{syncBreakpoint:0}]}]);function _(){"undefined"!=typeof customElements&&["ip-main-menu","ip-icon-button","ip-tooltip"].forEach((n=>{switch(n){case"ip-main-menu":customElements.get(i(n))||customElements.define(i(n),b);break;case"ip-icon-button":customElements.get(i(n))||u();break;case"ip-tooltip":customElements.get(i(n))||h()}}))}_();export{b as I,_ as d}
|
|
1
|
+
import{t as i,p as n,H as e,c as a,h as t,d as o}from"./p-BB9-AZXH.js";import{a as s,m}from"./p-DHUR9EVo.js";import{c as p,d as r,e as l,f as c}from"./p-CAPVXUZ_.js";import{M as d}from"./p-D42v9_4Q.js";import{d as u}from"./p-BcC5iydm.js";import{d as h}from"./p-DS538Bt0.js";s.registerComponent("ip-main-menu",{en:{collapseMenu:"Collapse menu",expandMenu:"Expand menu",pinMenu:"Pin menu",unpinMenu:"Unpin menu",closeMenu:"Close menu"},"nb-NO":{collapseMenu:"Skjul meny",expandMenu:"Vis meny",pinMenu:"Fest menyen",unpinMenu:"Løsne menyen",closeMenu:"Lukk meny"}});const _=n(class extends e{constructor(i){super(),!1!==i&&this.__registerHost(),this.__attachShadow(),this.ipModeChange=a(this,"ipModeChange",7),this.ipMobileOpenChange=a(this,"ipMobileOpenChange",7),this.ipBrandClick=a(this,"ipBrandClick",7),this.mode="expanded",this.expandDelay=300,this.collapseDelay=300,this.mobileBreakpoint="1024px",this.isHoverExpanded=!1,this.handleDocumentKeydown=i=>{"Escape"===i.key&&d.setMobileOpen(!1)},this.handleHoverZoneEnter=()=>{"auto-hide"===d.mode&&(this.clearHoverCollapseTimer(),this.isHoverExpanded||(this.clearHoverExpandTimer(),this.hoverExpandTimer=setTimeout((()=>{this.isHoverExpanded=!0,this.hoverExpandTimer=void 0}),this.expandDelay)))},this.handleHoverZoneLeave=()=>{this.clearHoverExpandTimer(),this.isHoverExpanded&&this.startCollapseTimer()},this.startCollapseTimer=()=>{this.clearHoverCollapseTimer(),this.hoverCollapseTimer=setTimeout((()=>{this.hasKeyboardFocusWithin()||(this.isHoverExpanded=!1),this.hoverCollapseTimer=void 0}),this.collapseDelay)},this.hasKeyboardFocusWithin=()=>{let i=document.activeElement;if(!i||!this.el.contains(i))return!1;for(;i.shadowRoot?.activeElement;)i=i.shadowRoot.activeElement;return i.matches(":focus-visible")},this.handleNavFocusIn=()=>{"auto-hide"===d.mode&&(this.clearHoverCollapseTimer(),this.isHoverExpanded||(this.clearHoverExpandTimer(),this.isHoverExpanded=!0))},this.handleNavFocusOut=i=>{const n=i.relatedTarget;d.isMobileOpen?n&&!this.containsFocusTarget(n)&&this.focusCloseButton():this.isHoverExpanded&&(this.containsFocusTarget(n)||this.startCollapseTimer())},this.clearHoverExpandTimer=()=>{void 0!==this.hoverExpandTimer&&(clearTimeout(this.hoverExpandTimer),this.hoverExpandTimer=void 0)},this.clearHoverCollapseTimer=()=>{void 0!==this.hoverCollapseTimer&&(clearTimeout(this.hoverCollapseTimer),this.hoverCollapseTimer=void 0)},this.clearHoverTimers=()=>{this.clearHoverExpandTimer(),this.clearHoverCollapseTimer()},this.handlePinClick=()=>{this.applyUserMode("auto-hide"===d.mode?"expanded":"auto-hide")},this.handleCollapseClick=()=>{this.applyUserMode("expanded"===d.mode?"collapsed":"expanded")},this.handleCloseClick=()=>{d.setMobileOpen(!1)},this.handleBrandClick=()=>{this.ipBrandClick.emit()}}componentWillLoad(){d.isModeUserOverridden?this.mode=d.mode:d.setMode(this.mode),d.setMobileBreakpoint(this.mobileBreakpoint)}connectedCallback(){this.unsubscribeMobileOpen=d.onMobileOpenChange((i=>{this.ipMobileOpenChange.emit(i),this.handleMobileOpenChanged(i)}))}disconnectedCallback(){this.unsubscribeMobileOpen?.(),this.clearHoverTimers(),document.removeEventListener("keydown",this.handleDocumentKeydown)}handleMobileOpenChanged(i){i?(document.addEventListener("keydown",this.handleDocumentKeydown),requestAnimationFrame((()=>this.focusCloseButton()))):document.removeEventListener("keydown",this.handleDocumentKeydown)}focusCloseButton(){this.closeButton?.focus()}containsFocusTarget(i){return!!i&&(this.el.contains(i)||(this.el.shadowRoot?.contains(i)??!1))}onModeChange(i){d.setMode(i),this.clearHoverTimers(),this.isHoverExpanded=!1}syncBreakpoint(){d.setMobileBreakpoint(this.mobileBreakpoint)}applyUserMode(i){d.setModeFromUser(i),this.mode=i,this.ipModeChange.emit(i)}renderBrand(){const i=t("slot",{name:"logo"},t("span",{class:"ip-main-menu__isy-logo","aria-label":"ISY",innerHTML:p})),n=t("span",{class:"ip-main-menu__heading"},this.heading);return this.brandHref?t("a",{href:this.brandHref,class:"ip-main-menu__brand","aria-label":this.heading},i,n):t("button",{type:"button",class:"ip-main-menu__brand","aria-label":this.heading,onClick:this.handleBrandClick},i,n)}render(){const i=d.mode,n="expanded"!==i,e=d.isMobileOpen,a="auto-hide"===i&&this.isHoverExpanded?"":void 0,p=m(this.mobileBreakpoint,"\n .ip-main-menu__backdrop--visible { --ip-main-menu-backdrop-display: block; }\n\n .ip-main-menu__nav {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 100;\n transform: translateX(-100%);\n visibility: hidden;\n --ip-main-menu-nav-width: 260px;\n --ip-main-menu-nav-height: 100svh;\n --ip-main-menu-nav-transition: transform 0.3s ease, visibility 0s linear 0.3s;\n }\n\n .ip-main-menu__nav--mobile-open {\n transform: translateX(0);\n visibility: visible;\n --ip-main-menu-nav-transition: transform 0.3s ease, visibility 0s linear 0s;\n --ip-main-menu-label-display: block;\n --ip-main-menu-icon-justify: flex-start;\n --ip-main-menu-chevron-position: static;\n --ip-main-menu-chevron-margin: auto;\n --ip-main-menu-chevron-right: auto;\n --ip-main-menu-chevron-top: auto;\n --ip-main-menu-chevron-bottom: auto;\n --ip-main-menu-logo-display: none;\n --ip-main-menu-heading-display: block;\n --ip-main-menu-chevron-icon-size: var(--ip_iconography_size_tiny);\n --ip-main-menu-item-icon-size: var(--ip_iconography_size_small);\n --ip-main-menu-section-label-text-visibility: visible;\n --ip-main-menu-section-indicator-display: none;\n }\n\n .ip-main-menu__desktop-controls { --ip-main-menu-desktop-controls-display: none; }\n .ip-main-menu__mobile-close { --ip-main-menu-mobile-close-display: inline-flex; }\n .ip-main-menu__brand { --ip-main-menu-brand-flex: 1; }\n\n @media (max-width: 767px) {\n .ip-main-menu__nav { --ip-main-menu-nav-width: 100%; }\n }\n");return t(o,{key:"9147c88b38f2a3b982655477d59eebff4b10e567","data-mode":i,"data-hover-expanded":a},t("style",{key:"e399683ceed6311e2207bf482bbc6c63cd5edbb0"},p),t("div",{key:"ec985e7d08820ad0eb01bcfaaf098666cd2860df",class:"ip-main-menu__backdrop"+(e?" ip-main-menu__backdrop--visible":""),"aria-hidden":"true",onClick:this.handleCloseClick}),t("nav",{key:"d67bdb745d5d3a921429beafb675f87fd2619e15",class:"ip-main-menu__nav"+(e?" ip-main-menu__nav--mobile-open":""),"aria-label":this.heading,onFocusin:this.handleNavFocusIn,onFocusout:this.handleNavFocusOut},t("div",{key:"cb90a6567356a9c436257f2984d3f865f3dad30e",class:"ip-main-menu__header"},this.renderBrand(),t("ip-icon-button",{key:"12e4ec87c9a144ea4fccb0ea5cc0a2827d408545",class:"ip-main-menu__mobile-close",ref:i=>this.closeButton=i,variant:"transparentOnDark",size:"large",tooltipSize:"medium",tooltipPosition:"right",tooltipVariant:"onDark",label:s.translate("ip-main-menu","closeMenu"),onClick:this.handleCloseClick},t("slot",{key:"1ca3a2a10b48d730cb78ecd9cc20d4c861c44ab9",name:"icon-close",slot:"icon"},t("span",{key:"052010656e2b36909296808c722c910c9d8cc306",class:"ip-main-menu__icon","aria-hidden":"true",innerHTML:r})))),t("div",{key:"2bb119a4f85861bac455307e082d88c04bd1c843",class:"ip-main-menu__desktop-controls"},"auto-hide"!==i&&t("ip-icon-button",{key:"d2307d077f0634f53b0a383893c794c403deeadf",class:"ip-main-menu__collapse-btn",variant:"transparentOnDark",size:"large",tooltipSize:"medium",tooltipVariant:"onDark",tooltipHideOnClick:!1,label:s.translate("ip-main-menu",n?"expandMenu":"collapseMenu"),onClick:this.handleCollapseClick},t("slot",{key:"7e96ac85b052415c011931eb3739f217b7700485",name:"icon-collapse",slot:"icon"},t("span",{key:"9c7ef385ea8468739f947c1c71c9eb803155cf38",class:"ip-main-menu__icon","aria-hidden":"true",innerHTML:l}))),"collapsed"!==i&&t("ip-icon-button",{key:"aa71863696c62e2d25e542a9d9a6fb5764d27d36",class:"ip-main-menu__pin-btn",variant:"transparentOnDark",size:"large",tooltipSize:"medium",tooltipVariant:"onDark",tooltipHideOnClick:!1,label:s.translate("ip-main-menu","auto-hide"===i?"pinMenu":"unpinMenu"),onClick:this.handlePinClick},"auto-hide"===i?t("slot",{name:"icon-unpin",slot:"icon"},t("span",{class:"ip-main-menu__icon ip-main-menu__icon--unpin","aria-hidden":"true",innerHTML:c})):t("slot",{name:"icon-pin",slot:"icon"},t("span",{class:"ip-main-menu__icon","aria-hidden":"true",innerHTML:c})))),t("div",{key:"05140e0d233c9cbd3bb628656713f740f7601d5c",class:"ip-main-menu__hover-zone",onMouseEnter:this.handleHoverZoneEnter,onMouseLeave:this.handleHoverZoneLeave},t("div",{key:"b79f5750f5acf62a896cf64509a6f2035b07c850",class:"ip-main-menu__items"},t("slot",{key:"3ab3e183c7cd4222f4cbc117438c74e84f6f8161"})),t("div",{key:"61aff6a696565645516b043dbdfac201a684cdf2",class:"ip-main-menu__bottom"},t("slot",{key:"7684348b1655a62ff05bcc59b2809a219a575791",name:"bottom"})))))}get el(){return this}static get watchers(){return{mode:[{onModeChange:0}],mobileBreakpoint:[{syncBreakpoint:0}]}}static get style(){return":host{display:block;height:100%;position:relative;--ip-main-menu-width:230px;--ip-main-menu-label-display:block;--ip-main-menu-icon-justify:flex-start;--ip-main-menu-controls-justify:flex-end;--ip-main-menu-chevron-display:inline-flex;--ip-main-menu-chevron-position:static;--ip-main-menu-chevron-margin:auto;--ip-main-menu-chevron-right:auto;--ip-main-menu-chevron-top:auto;--ip-main-menu-chevron-bottom:auto;--ip-main-menu-logo-display:none;--ip-main-menu-heading-display:block;--ip-main-menu-chevron-icon-size:var(--ip_iconography_size_tiny);--ip-main-menu-item-icon-size:var(--ip_iconography_size_small);--ip-main-menu-collapse-icon-rotation:0deg;--ip-main-menu-section-label-padding-start:var(--ip_spacing_space_150)}:host([data-mode=auto-hide][data-hover-expanded]){--ip-main-menu-width:230px;--ip-main-menu-label-display:block;--ip-main-menu-icon-justify:flex-start;--ip-main-menu-controls-justify:flex-end;--ip-main-menu-chevron-display:inline-flex;--ip-main-menu-chevron-position:static;--ip-main-menu-chevron-margin:auto;--ip-main-menu-chevron-right:auto;--ip-main-menu-chevron-top:auto;--ip-main-menu-chevron-bottom:auto;--ip-main-menu-logo-display:none;--ip-main-menu-heading-display:block;--ip-main-menu-chevron-icon-size:var(--ip_iconography_size_tiny);--ip-main-menu-item-icon-size:var(--ip_iconography_size_small);--ip-main-menu-section-label-padding-start:var(--ip_spacing_space_150);--ip-main-menu-brand-flex:0 0 auto;--ip-main-menu-brand-justify:flex-start}:host([data-mode=collapsed]) .ip-main-menu__brand,:host([data-mode=auto-hide]) .ip-main-menu__brand{overflow:visible}:host([data-mode=collapsed]){--ip-main-menu-collapse-icon-rotation:180deg}:host([data-mode=collapsed]),:host([data-mode=auto-hide]){--ip-main-menu-width:64px;--ip-main-menu-label-display:none;--ip-main-menu-icon-justify:center;--ip-main-menu-controls-justify:center;--ip-main-menu-chevron-position:absolute;--ip-main-menu-chevron-margin:0;--ip-main-menu-chevron-right:4px;--ip-main-menu-chevron-top:0;--ip-main-menu-chevron-bottom:0;--ip-main-menu-logo-display:inline-flex;--ip-main-menu-heading-display:none;--ip-main-menu-chevron-icon-size:8px;--ip-main-menu-item-icon-size:var(--ip_iconography_size_tiny);--ip-main-menu-section-label-padding-start:calc(50% - 10px);--ip-main-menu-brand-flex:1;--ip-main-menu-brand-justify:center}.ip-main-menu__backdrop{display:var(--ip-main-menu-backdrop-display, none);position:fixed;inset:0;background-color:rgba(0, 0, 0, 0.5);z-index:99}.ip-main-menu__nav{display:flex;flex-direction:column;height:var(--ip-main-menu-nav-height, 100%);width:var(--ip-main-menu-nav-width, var(--ip-main-menu-width));max-width:100vw;background-color:var(--ip_color_menu_main_background_primary_default);overflow-y:auto;overflow-x:hidden;transition:var(--ip-main-menu-nav-transition, width 0.2s ease);flex-shrink:0}.ip-main-menu__nav::-webkit-scrollbar{width:4px}.ip-main-menu__nav::-webkit-scrollbar-track{background:transparent}.ip-main-menu__nav::-webkit-scrollbar-thumb{background-color:rgba(255, 255, 255, 0.25);border-radius:2px}.ip-main-menu__nav::-webkit-scrollbar-thumb:hover{background-color:rgba(255, 255, 255, 0.4)}@supports not selector(::-webkit-scrollbar){.ip-main-menu__nav{scrollbar-width:thin;scrollbar-color:rgba(255, 255, 255, 0.25) transparent}}.ip-main-menu__header{display:flex;align-items:center;width:100%;height:56px;flex-shrink:0}.ip-main-menu__brand{align-self:stretch;display:inline-flex;align-items:center;justify-content:var(--ip-main-menu-brand-justify, flex-start);flex:var(--ip-main-menu-brand-flex, 0 0 auto);min-width:0;overflow:hidden;padding:0;padding-inline:var(--ip_spacing_space_150);border:none;background:transparent;text-decoration:none;color:inherit;font:inherit;cursor:pointer}.ip-main-menu__brand:focus-visible{outline:2px solid var(--ip_color_button_focus_default);outline-offset:-2px}.ip-main-menu__heading{display:var(--ip-main-menu-heading-display, block);font-family:var(--ip_typography_font_family_tertiary);font-size:18px;font-weight:100;color:#ffffff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ip-main-menu__isy-logo{display:var(--ip-main-menu-logo-display, none);align-items:center;color:#ffffff}.ip-main-menu__desktop-controls{display:var(--ip-main-menu-desktop-controls-display, flex);align-items:center;justify-content:var(--ip-main-menu-controls-justify);gap:var(--ip_spacing_space_050);padding:4px 8px 24px;flex-shrink:0}.ip-main-menu__mobile-close{display:var(--ip-main-menu-mobile-close-display, none);margin-inline-start:auto;margin-inline-end:var(--ip_spacing_space_050)}.ip-main-menu__icon{display:inline-flex;align-items:center;justify-content:center}.ip-main-menu__icon svg{width:var(--ip_iconography_size_tiny);height:var(--ip_iconography_size_tiny)}.ip-main-menu__collapse-btn .ip-main-menu__icon{transform:rotate(var(--ip-main-menu-collapse-icon-rotation));transition:transform 0.2s ease}.ip-main-menu__icon--unpin{transform:rotate(45deg)}.ip-main-menu__hover-zone{display:flex;flex-direction:column;flex:1;min-height:0}.ip-main-menu__items{flex:1}.ip-main-menu__bottom{padding:0;flex-shrink:0}::slotted([slot=icon-collapse]){font-size:var(--ip_iconography_size_tiny) !important;transform:rotate(var(--ip-main-menu-collapse-icon-rotation)) !important;transition:transform 0.2s ease !important}::slotted([slot=icon-pin]),::slotted([slot=icon-unpin]),::slotted([slot=icon-hamburger]),::slotted([slot=icon-close]){font-size:var(--ip_iconography_size_tiny) !important}"}},[257,"ip-main-menu",{heading:[513],mode:[1537],brandHref:[513,"brand-href"],expandDelay:[514,"expand-delay"],collapseDelay:[514,"collapse-delay"],mobileBreakpoint:[513,"mobile-breakpoint"],isHoverExpanded:[32]},void 0,{mode:[{onModeChange:0}],mobileBreakpoint:[{syncBreakpoint:0}]}]);function b(){"undefined"!=typeof customElements&&["ip-main-menu","ip-icon-button","ip-tooltip"].forEach((n=>{switch(n){case"ip-main-menu":customElements.get(i(n))||customElements.define(i(n),_);break;case"ip-icon-button":customElements.get(i(n))||u();break;case"ip-tooltip":customElements.get(i(n))||h()}}))}b();export{_ as I,b as d}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as o,p as t,H as i,h as n,F as r}from"./p-BB9-AZXH.js";import{d as a}from"./p-
|
|
1
|
+
import{t as o,p as t,H as i,h as n,F as r}from"./p-BB9-AZXH.js";import{d as a}from"./p-DS538Bt0.js";const e=t(class extends i{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.internals=this.attachInternals(),this.variant="primary",this.size="medium",this.disabled=!1,this.loading=!1,this.type="button",this.label="",this.disableTooltip=!1,this.tooltipVariant="default",this.tooltipHideOnClick=!0,this.expanded=null,this.handleClick=()=>"submit"===this.type?this.internals.form?.requestSubmit():"reset"===this.type?this.internals.form?.reset():void 0}componentDidLoad(){this.label||console.warn("[ip-icon-button] Missing required `label` prop. Icon-only buttons have no visible text, so `label` is the only accessible name for screen readers.")}render(){const o=this.disabled||this.loading;return n("ip-tooltip",{key:"d181e5786c43b19779703754ed81fd159834b0d3",size:this.tooltipSize??this.size,position:this.tooltipPosition,variant:this.tooltipVariant,disabled:this.loading||this.disableTooltip||!this.label,hideOnClick:this.tooltipHideOnClick},n("button",{key:"2e0a47482048823b0ca6f5a3c9ea89c19cd8ec89",slot:"trigger",class:`ip-icon-button ip-icon-button--${this.variant} ip-icon-button--${this.size}`,type:"button",disabled:o,"aria-disabled":o?"true":"false","aria-busy":this.loading?"true":"false","aria-expanded":this.expanded??void 0,"aria-label":this.label||void 0,onClick:this.handleClick},n("span",{key:"5bd7b1d90cb7acb1eced85df3a4965ead12f6323",class:`ip-icon-button__icon-wrapper ip-icon-button__icon-wrapper--${this.size}`},this.loading?n(r,null,n("span",{class:"ip-icon-button__spinner","aria-hidden":"true"}),n("span",{class:"ip-icon-button__sr-only"},"Loading...")):n("slot",{name:"icon"}))),n("slot",{key:"253dedd14974f307a4b8974128c1e414041efea9",name:"tooltip"},this.label))}static get delegatesFocus(){return!0}static get formAssociated(){return!0}static get style(){return'.ip-icon-button{border:none;border-radius:50%;margin:0;cursor:pointer;position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;font-family:var(--ip_typography_font_family_primary);transition:background-color 150ms ease-in-out, color 150ms ease-in-out}.ip-icon-button:disabled{cursor:not-allowed}.ip-icon-button:focus-visible{outline:2px solid var(--ip_color_button_focus_default);outline-offset:2px}.ip-icon-button::after{content:"";position:absolute;inset:0;border-radius:50%;background:currentColor;opacity:0;transform:scale(0);transition:transform 400ms ease-out, opacity 400ms ease-out;pointer-events:none}.ip-icon-button:not(:disabled):active::after{transform:scale(2.5);opacity:0.15;transition:none}.ip-icon-button--small{padding:var(--ip_spacing_space_100)}.ip-icon-button--medium{padding:var(--ip_spacing_space_125)}.ip-icon-button--large{padding:var(--ip_spacing_space_150)}.ip-icon-button--primary{background-color:var(--ip_color_button_background_primary_default);color:var(--ip_color_button_text_primary_default)}.ip-icon-button--primary:hover:not(:disabled){background-color:var(--ip_color_button_background_primary_hover)}.ip-icon-button--primary:active:not(:disabled){background-color:var(--ip_color_button_background_primary_active)}.ip-icon-button--primary:disabled{background-color:var(--ip_color_button_background_primary_disabled);color:var(--ip_color_button_icon_primary_disabled)}.ip-icon-button--secondary{background-color:var(--ip_color_button_background_secondary_default);color:var(--ip_color_button_icon_secondary_default)}.ip-icon-button--secondary:hover:not(:disabled){background-color:var(--ip_color_button_background_secondary_hover)}.ip-icon-button--secondary:active:not(:disabled){background-color:var(--ip_color_button_background_secondary_active)}.ip-icon-button--secondary:disabled{background-color:var(--ip_color_button_background_secondary_disabled);color:var(--ip_color_button_icon_secondary_disabled)}.ip-icon-button--tertiary{background-color:var(--ip_color_button_background_tertiary_default);color:var(--ip_color_button_icon_tertiary_default)}.ip-icon-button--tertiary:hover:not(:disabled){background-color:var(--ip_color_button_background_tertiary_hover)}.ip-icon-button--tertiary:active:not(:disabled){background-color:var(--ip_color_button_background_tertiary_active)}.ip-icon-button--tertiary:disabled{background-color:var(--ip_color_button_background_tertiary_disabled);color:var(--ip_color_button_icon_tertiary_disabled)}.ip-icon-button--brand{background-color:var(--ip_color_button_background_brand_default);color:var(--ip_color_button_icon_brand_default)}.ip-icon-button--brand:hover:not(:disabled){background-color:var(--ip_color_button_background_brand_hover)}.ip-icon-button--brand:active:not(:disabled){background-color:var(--ip_color_button_background_brand_active)}.ip-icon-button--brand:disabled{background-color:var(--ip_color_button_background_brand_disabled);color:var(--ip_color_button_icon_brand_disabled)}.ip-icon-button--destructive{background-color:var(--ip_color_button_background_destructive_default);color:var(--ip_color_button_icon_destructive_default)}.ip-icon-button--destructive:hover:not(:disabled){background-color:var(--ip_color_button_background_destructive_hover)}.ip-icon-button--destructive:active:not(:disabled){background-color:var(--ip_color_button_background_destructive_active)}.ip-icon-button--destructive:disabled{background-color:var(--ip_color_button_background_destructive_disabled);color:var(--ip_color_button_icon_destructive_disabled)}.ip-icon-button--transparentOnLight{background-color:transparent;color:rgba(0, 0, 0, 0.87)}.ip-icon-button--transparentOnLight:hover:not(:disabled){background-color:rgba(0, 0, 0, 0.08)}.ip-icon-button--transparentOnLight:active:not(:disabled){background-color:rgba(0, 0, 0, 0.14)}.ip-icon-button--transparentOnLight:disabled{opacity:0.4}.ip-icon-button--transparentOnDark{background-color:transparent;color:rgb(255, 255, 255)}.ip-icon-button--transparentOnDark:hover:not(:disabled){background-color:rgba(255, 255, 255, 0.12)}.ip-icon-button--transparentOnDark:active:not(:disabled){background-color:rgba(255, 255, 255, 0.2)}.ip-icon-button--transparentOnDark:disabled{opacity:0.4}.ip-icon-button__icon-wrapper{display:inline-flex;align-items:center;justify-content:center}.ip-icon-button__icon-wrapper--small{width:18px;height:18px;font-size:18px}.ip-icon-button__icon-wrapper--medium{width:20px;height:20px;font-size:20px}.ip-icon-button__icon-wrapper--large{width:22px;height:22px;font-size:22px}.ip-icon-button__spinner{width:0.6em;height:0.6em;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:ip-icon-button-spin 900ms linear infinite;flex-shrink:0}.ip-icon-button__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}@keyframes ip-icon-button-spin{to{transform:rotate(360deg)}}::slotted([slot=icon]){display:inline-flex !important;align-items:center;justify-content:center}:host([size=small]) ::slotted([slot=icon]){font-size:var(--ip_iconography_size_small);width:18px !important;height:18px !important}:host([size=medium]) ::slotted([slot=icon]){font-size:var(--ip_iconography_size_medium);width:20px !important;height:20px !important}:host([size=large]) ::slotted([slot=icon]){font-size:var(--ip_iconography_size_large);width:22px !important;height:22px !important}'}},[337,"ip-icon-button",{variant:[513],size:[513],disabled:[516],loading:[516],type:[513],label:[513],disableTooltip:[516,"disable-tooltip"],tooltipSize:[513,"tooltip-size"],tooltipPosition:[513,"tooltip-position"],tooltipVariant:[513,"tooltip-variant"],tooltipHideOnClick:[516,"tooltip-hide-on-click"],expanded:[513,"aria-expanded"]}]);function c(){"undefined"!=typeof customElements&&["ip-icon-button","ip-tooltip"].forEach((t=>{switch(t){case"ip-icon-button":customElements.get(o(t))||customElements.define(o(t),e);break;case"ip-tooltip":customElements.get(o(t))||a()}}))}c();export{e as I,c as d}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as a,p as i,H as t,c as e,h as r,F as s,d as o}from"./p-BB9-AZXH.js";import{b as l}from"./p-CAPVXUZ_.js";import{d as n}from"./p-msgdnxTK.js";function p(a){const i=a.trim().split(/\s+/).filter(Boolean);return 0===i.length?"":1===i.length?i[0].charAt(0).toUpperCase():(i[0].charAt(0)+i[1].charAt(0)).toUpperCase()}const _=i(class extends t{constructor(a){super(),!1!==a&&this.__registerHost(),this.__attachShadow(),this.imageError=e(this,"ipImageError",7),this.clickEvent=e(this,"ipClick",7),this.name="",this.altName=void 0,this.caption=void 0,this.placeholder=void 0,this.src=void 0,this.fallbackSrc=void 0,this.mode="fullname",this.fallback="auto",this.labelPosition="right",this.gap=void 0,this.size="medium",this.customSize=void 0,this.imageLoading="lazy",this.loading=!1,this.ringVariant="default",this.ringColor=void 0,this.ringStyle="solid",this.ringGap=void 0,this.clickable=!1,this.selected=!1,this.fullWidth=!1,this.maintainLabelHeight=!1,this.striped=!1,this.disabled=!1,this.disableTooltip=!1,this.tooltipPosition="top",this.tooltipSize="medium",this.tooltipVariant="default",this.srcIndex=0,this.isLoading=!1,this.hasTooltipSlot=!1,this.handleImageLoad=()=>{this.isLoading=!1},this.handleImageError=()=>{this.imageError.emit(this.currentSrc);const a=this.srcIndex+1;this.srcIndex=a,this.isLoading=a<this.sources.length},this.handleActivate=()=>{this.clickable&&!this.disabled&&this.clickEvent.emit()},this.handleKeyDown=a=>{this.clickable&&!this.disabled&&("Enter"!==a.key&&" "!==a.key||(a.preventDefault(),this.clickEvent.emit()))},this.handleTooltipSlotChange=a=>{this.hasTooltipSlot=a.target.assignedNodes({flatten:!0}).length>0}}get nameWords(){return this.name.trim().split(/\s+/).filter(Boolean)}get sources(){return[...new Set([this.src,this.fallbackSrc].filter((a=>!!a)))]}get currentSrc(){return this.sources[this.srcIndex]??""}get visibleName(){const a=this.nameWords;return"fullname"===this.mode?this.name:"alt-name"===this.mode?this.altName??function(a){const i=a.trim().split(/\s+/).filter(Boolean);if(i.length<=2)return i.join(" ");const[t,...e]=i,r=e.pop();return[t,...e.map((a=>`${a.charAt(0).toUpperCase()}.`)),r].join(" ")}(this.name):"firstname"===this.mode?a[0]??"":"lastname"===this.mode?a[a.length-1]??"":"initials"===this.mode?p(this.name):""}get tooltipName(){return this.visibleName===this.name?"":this.name}componentWillLoad(){this.resetImageState()}resetImageState(){this.srcIndex=0,this.isLoading=this.sources.length>0}get showsInitials(){return"initials"===this.fallback||"silhouette"!==this.fallback&&this.nameWords.length>0}renderMediaContent(){return""!==this.currentSrc?r("img",{class:"ip-avatar__image",src:this.currentSrc,alt:this.name,loading:this.imageLoading,onLoad:this.handleImageLoad,onError:this.handleImageError}):this.showsInitials?r(s,null,r("span",{class:"ip-avatar__sr-only"},this.name),r("span",{class:"ip-avatar__initials","aria-hidden":"true"},p(this.name))):r("span",{class:"ip-avatar__silhouette","aria-hidden":"true",innerHTML:l})}render(){const a=this.visibleName,i=!(""!==this.name)&&void 0!==this.placeholder&&""!==this.placeholder,t=void 0!==this.caption&&""!==this.caption,e=this.maintainLabelHeight&&"image-only"!==this.mode,l=""!==a||e&&!i,n=t||e,p="image-only"!==this.mode&&(l||n||i),_=this.clickable&&!this.disabled,d=_&&!p&&(this.name||this.placeholder)||void 0,c=this.loading||this.isLoading,h=this.disableTooltip||""===this.tooltipName&&!this.hasTooltipSlot,g={"ip-avatar__trigger":!0,[`ip-avatar__trigger--size-${this.size}`]:!0,[`ip-avatar__trigger--label-${this.labelPosition}`]:p,"ip-avatar__trigger--framed":p,"ip-avatar__trigger--clickable":_,"ip-avatar__trigger--selected":this.selected,"ip-avatar__trigger--disabled":this.disabled},v=this.gap?{"--ip-avatar-gap":this.gap}:void 0,b=`ip-avatar__media ip-avatar__media--${this.size}`,f="custom"===this.size&&this.customSize?{width:this.customSize,height:this.customSize,fontSize:`calc(${this.customSize} * 0.4)`}:void 0,m="default"!==this.ringVariant&&"custom"!==this.ringVariant,y={"ip-avatar__circle":!0,[`ip-avatar__circle--ring-${this.ringVariant}`]:m},u={};return"custom"===this.ringVariant&&this.ringColor&&(u["--ip-avatar-ring-color"]=this.ringColor),"solid"!==this.ringStyle&&(u["--ip-avatar-ring-style"]=this.ringStyle),this.ringGap&&(u["--ip-avatar-ring-gap"]=this.ringGap),r(o,{key:"c15036b890f03c9a785a233b5f0a4b217fc048ed"},r("ip-tooltip",{key:"864f7a73c3b927d86d1a464031f5f57b188a21ef",disabled:h,position:this.tooltipPosition,size:this.tooltipSize,variant:this.tooltipVariant},r("span",{key:"f584ddfcb33c6552a5b630035fde185dce59491b",slot:"trigger",class:g,style:v,role:_?"button":void 0,tabIndex:_?0:void 0,"aria-label":d,"aria-disabled":this.clickable&&this.disabled?"true":void 0,onClick:this.handleActivate,onKeyDown:this.handleKeyDown},r("span",{key:"ded2127a286c0845d9cfc21901d7dd4420ccaf34",class:b,style:f,"aria-busy":c?"true":"false"},r("span",{key:"c17d75c0842d0cb381afe98ce19225a784de3abc",class:y,style:u},r("span",{key:"38e363b81bb4ed3d7d0f296531ad68772d8fd1e5",class:"ip-avatar__inner"},this.renderMediaContent()),c&&r(s,{key:"f52ddb4cc82dc1ed610b741f8ef3373901771a2e"},r("span",{key:"62f10083c591b43ad78273b79c8cb3e163b307e6",class:"ip-avatar__spinner-wrap","aria-hidden":"true"},r("span",{key:"c4d10ba3f01d44474cd9a655f0165c419f58ea84",class:"ip-avatar__spinner"},r("span",{key:"af77ab9825978e3e6a92cd436a98b30e5870f1a4",class:"ip-avatar__spinner-bar"}),r("span",{key:"1221fcfb0c6800965ddc382d1a1c763a32ee2111",class:"ip-avatar__spinner-bar"}),r("span",{key:"7a932005e125d92b197ebc3f8fbff0cfe5ce51dd",class:"ip-avatar__spinner-bar"}))),r("span",{key:"30f96ee6bb0404518d75d9523e1affc65b4718d5",class:"ip-avatar__sr-only"},"Loading..."))),r("span",{key:"de5f1a576d700fbc1b398be0b61a03bc2ecab870",class:"ip-avatar__adornment ip-avatar__adornment--top-left"},r("slot",{key:"26b8baaee556dcefb19c8f299c379db91003342d",name:"top-left"})),r("span",{key:"37ba57eeb84f9b13c1532a9ed036085313eb7dc0",class:"ip-avatar__adornment ip-avatar__adornment--top-right"},r("slot",{key:"662445b01b7fba18e61664550e589e76799f0ef9",name:"top-right"})),r("span",{key:"e9fa31088fd76590e74bc0e56da7fd1cec3f19fd",class:"ip-avatar__adornment ip-avatar__adornment--bottom-left"},r("slot",{key:"1a82e94c4d604bffb42a7cf1a92227e87c1c9ce6",name:"bottom-left"})),r("span",{key:"7a09b33ea1b5eb471ff31e9750fe9a1519f5cecd",class:"ip-avatar__adornment ip-avatar__adornment--bottom-right"},r("slot",{key:"ec5bd5f6751ed586a80130741003b718d6533c4d",name:"bottom-right"}))),p&&r("span",{key:"19063f99535698572717138277e88f179729246a",class:`ip-avatar__label ip-avatar__label--${this.size}`},l&&r("span",{key:"2a267c486eeb58dc1e8144089130fd540a666dbb",class:"ip-avatar__name"},""!==a?a:" "),i&&r("span",{key:"0375c585414adc914a0d6c26b92eb29c3d463158",class:"ip-avatar__placeholder"},this.placeholder),n&&r("span",{key:"ebadd13c58b7e833dde2bfd4f1899cac0db7cece",class:"ip-avatar__caption"},t?this.caption:" "))),r("slot",{key:"a5a76ec0734c942543252eb6341ac80cd9544653",name:"tooltip",onSlotchange:this.handleTooltipSlotChange},this.tooltipName)))}static get watchers(){return{src:[{resetImageState:0}],fallbackSrc:[{resetImageState:0}]}}static get style(){return":host{display:inline-flex}:host([full-width]){display:flex;width:100%}:host([full-width]) .ip-avatar__trigger{width:100%}:host([full-width]) .ip-avatar__label{flex:1}.ip-avatar__trigger{display:inline-flex;align-items:center;gap:var(--ip-avatar-gap, var(--ip_spacing_space_200));box-sizing:border-box;transition:background-color 150ms ease}.ip-avatar__trigger--size-small{--ip-avatar-gap:var(--ip_spacing_space_100)}.ip-avatar__trigger--size-medium{--ip-avatar-gap:var(--ip_spacing_space_200)}.ip-avatar__trigger--size-large{--ip-avatar-gap:var(--ip_spacing_space_300)}.ip-avatar__trigger--label-right{flex-direction:row}.ip-avatar__trigger--label-left{flex-direction:row-reverse}.ip-avatar__trigger--label-bottom{flex-direction:column}.ip-avatar__trigger--label-top{flex-direction:column-reverse}.ip-avatar__trigger--label-top,.ip-avatar__trigger--label-bottom{text-align:center}.ip-avatar__trigger--framed{padding:var(--ip_spacing_space_050) var(--ip_spacing_space_200);border-radius:var(--ip_radius_size_small)}.ip-avatar__trigger--clickable{cursor:pointer}.ip-avatar__trigger--clickable.ip-avatar__trigger--framed:hover{background-color:var(--ip_color_border_opaque_10)}.ip-avatar__trigger--clickable:focus-visible{outline:2px solid var(--ip_color_button_focus_default);outline-offset:2px;border-radius:var(--ip_radius_size_small)}.ip-avatar__trigger--selected.ip-avatar__trigger--framed{background-color:var(--ip_color_border_opaque_20)}.ip-avatar__trigger--disabled{cursor:not-allowed;opacity:0.4}.ip-avatar__media{position:relative;display:inline-flex;flex-shrink:0}.ip-avatar__media--small{width:40px;height:40px;font-size:var(--ip_typography_body_font_size_small)}.ip-avatar__media--medium{width:50px;height:50px;font-size:var(--ip_typography_body_font_size_medium)}.ip-avatar__media--large{width:64px;height:64px;font-size:var(--ip_typography_body_font_size_large)}.ip-avatar__circle{position:relative;box-sizing:border-box;width:100%;height:100%;border-radius:50%;padding:var(--ip-avatar-ring-gap, 2px);background-color:var(--ip_color_surface_primary_default);color:var(--ip_color_text_primary_blue);border-width:2px;border-style:var(--ip-avatar-ring-style, solid);border-color:var(--ip-avatar-ring-color, var(--ip_color_text_primary_blue))}.ip-avatar__circle--ring-brand{--ip-avatar-ring-color:var(--ip_color_brand_accent_primary_default)}.ip-avatar__circle--ring-success{--ip-avatar-ring-color:var(--ip_color_extended_green-500)}.ip-avatar__circle--ring-warning{--ip-avatar-ring-color:var(--ip_color_extended_yellow-500)}.ip-avatar__circle--ring-error{--ip-avatar-ring-color:var(--ip_color_extended_red-500)}.ip-avatar__inner{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden;border-radius:50%;font-family:var(--ip_typography_font_family_primary);background-color:var(--ip_color_border_opaque_15)}:host([striped]) .ip-avatar__inner{background-image:repeating-linear-gradient(135deg, transparent 0, transparent 2.5px, var(--ip_color_border_opaque_10) 2.5px, var(--ip_color_border_opaque_10) 3.25px)}.ip-avatar__media[aria-busy=true] .ip-avatar__image,.ip-avatar__media[aria-busy=true] .ip-avatar__initials,.ip-avatar__media[aria-busy=true] .ip-avatar__silhouette{opacity:0}.ip-avatar__image{width:100%;height:100%;object-fit:cover;display:block}.ip-avatar__initials{line-height:1;font-weight:var(--ip_typography_font_weight_bold_700);user-select:none}.ip-avatar__silhouette{display:inline-flex;align-items:flex-end;justify-content:center;width:100%;height:100%}.ip-avatar__silhouette svg{width:80%;height:80%;display:block}.ip-avatar__adornment{position:absolute;display:inline-flex;z-index:1}.ip-avatar__adornment--top-left{top:0;left:0;transform:translate(-30%, -30%)}.ip-avatar__adornment--top-right{top:0;right:0;transform:translate(30%, -30%)}.ip-avatar__adornment--bottom-left{bottom:0;left:0;transform:translate(-30%, 30%)}.ip-avatar__adornment--bottom-right{bottom:0;right:0;transform:translate(30%, 30%)}.ip-avatar__label{display:flex;flex-direction:column;min-width:0;font-family:var(--ip_typography_font_family_primary);color:var(--ip-avatar-text-color, var(--ip_color_text_primary_black))}.ip-avatar__label--small{font-size:var(--ip_typography_body_font_size_small)}.ip-avatar__label--medium{font-size:var(--ip_typography_body_font_size_medium)}.ip-avatar__label--large{font-size:var(--ip_typography_body_font_size_large)}.ip-avatar__name{line-height:var(--ip_typography_body_line_height_compact);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ip-avatar__caption,.ip-avatar__placeholder{font-weight:var(--ip_typography_font_weight_light_300);font-style:italic;line-height:var(--ip_typography_body_line_height_compact);font-size:var(--ip_typography_body_font_size_small);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ip-avatar__spinner-wrap{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.ip-avatar__spinner{display:flex;align-items:center;gap:0.22em;height:1em}.ip-avatar__spinner-bar{width:2px;height:100%;background-color:currentColor;border-radius:1px;animation:ip-avatar-wave 1000ms ease-in-out infinite}.ip-avatar__spinner-bar:nth-child(2){animation-delay:150ms}.ip-avatar__spinner-bar:nth-child(3){animation-delay:300ms}.ip-avatar__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}@keyframes ip-avatar-wave{0%,100%{transform:scaleY(0.4)}50%{transform:scaleY(1)}}"}},[257,"ip-avatar",{name:[513],altName:[513,"alt-name"],caption:[513],placeholder:[513],src:[513],fallbackSrc:[513,"fallback-src"],mode:[513],fallback:[513],labelPosition:[513,"label-position"],gap:[513],size:[513],customSize:[513,"custom-size"],imageLoading:[513,"image-loading"],loading:[516],ringVariant:[513,"ring-variant"],ringColor:[513,"ring-color"],ringStyle:[513,"ring-style"],ringGap:[513,"ring-gap"],clickable:[516],selected:[516],fullWidth:[516,"full-width"],maintainLabelHeight:[516,"maintain-label-height"],striped:[516],disabled:[516],disableTooltip:[516,"disable-tooltip"],tooltipPosition:[513,"tooltip-position"],tooltipSize:[513,"tooltip-size"],tooltipVariant:[513,"tooltip-variant"],srcIndex:[32],isLoading:[32],hasTooltipSlot:[32]},void 0,{src:[{resetImageState:0}],fallbackSrc:[{resetImageState:0}]}]);function d(){"undefined"!=typeof customElements&&["ip-avatar","ip-tooltip"].forEach((i=>{switch(i){case"ip-avatar":customElements.get(a(i))||customElements.define(a(i),_);break;case"ip-tooltip":customElements.get(a(i))||n()}}))}d();export{_ as I,d}
|
|
1
|
+
import{t as a,p as i,H as t,c as e,h as r,F as s,d as o}from"./p-BB9-AZXH.js";import{b as l}from"./p-CAPVXUZ_.js";import{d as n}from"./p-DS538Bt0.js";function p(a){const i=a.trim().split(/\s+/).filter(Boolean);return 0===i.length?"":1===i.length?i[0].charAt(0).toUpperCase():(i[0].charAt(0)+i[1].charAt(0)).toUpperCase()}const _=i(class extends t{constructor(a){super(),!1!==a&&this.__registerHost(),this.__attachShadow(),this.imageError=e(this,"ipImageError",7),this.clickEvent=e(this,"ipClick",7),this.name="",this.altName=void 0,this.caption=void 0,this.placeholder=void 0,this.src=void 0,this.fallbackSrc=void 0,this.mode="fullname",this.fallback="auto",this.labelPosition="right",this.gap=void 0,this.size="medium",this.customSize=void 0,this.imageLoading="lazy",this.loading=!1,this.ringVariant="default",this.ringColor=void 0,this.ringStyle="solid",this.ringGap=void 0,this.clickable=!1,this.selected=!1,this.fullWidth=!1,this.maintainLabelHeight=!1,this.striped=!1,this.disabled=!1,this.disableTooltip=!1,this.tooltipPosition="top",this.tooltipSize="medium",this.tooltipVariant="default",this.srcIndex=0,this.isLoading=!1,this.hasTooltipSlot=!1,this.handleImageLoad=()=>{this.isLoading=!1},this.handleImageError=()=>{this.imageError.emit(this.currentSrc);const a=this.srcIndex+1;this.srcIndex=a,this.isLoading=a<this.sources.length},this.handleActivate=()=>{this.clickable&&!this.disabled&&this.clickEvent.emit()},this.handleKeyDown=a=>{this.clickable&&!this.disabled&&("Enter"!==a.key&&" "!==a.key||(a.preventDefault(),this.clickEvent.emit()))},this.handleTooltipSlotChange=a=>{this.hasTooltipSlot=a.target.assignedNodes({flatten:!0}).length>0}}get nameWords(){return this.name.trim().split(/\s+/).filter(Boolean)}get sources(){return[...new Set([this.src,this.fallbackSrc].filter((a=>!!a)))]}get currentSrc(){return this.sources[this.srcIndex]??""}get visibleName(){const a=this.nameWords;return"fullname"===this.mode?this.name:"alt-name"===this.mode?this.altName??function(a){const i=a.trim().split(/\s+/).filter(Boolean);if(i.length<=2)return i.join(" ");const[t,...e]=i,r=e.pop();return[t,...e.map((a=>`${a.charAt(0).toUpperCase()}.`)),r].join(" ")}(this.name):"firstname"===this.mode?a[0]??"":"lastname"===this.mode?a[a.length-1]??"":"initials"===this.mode?p(this.name):""}get tooltipName(){return this.visibleName===this.name?"":this.name}componentWillLoad(){this.resetImageState()}resetImageState(){this.srcIndex=0,this.isLoading=this.sources.length>0}get showsInitials(){return"initials"===this.fallback||"silhouette"!==this.fallback&&this.nameWords.length>0}renderMediaContent(){return""!==this.currentSrc?r("img",{class:"ip-avatar__image",src:this.currentSrc,alt:this.name,loading:this.imageLoading,onLoad:this.handleImageLoad,onError:this.handleImageError}):this.showsInitials?r(s,null,r("span",{class:"ip-avatar__sr-only"},this.name),r("span",{class:"ip-avatar__initials","aria-hidden":"true"},p(this.name))):r("span",{class:"ip-avatar__silhouette","aria-hidden":"true",innerHTML:l})}render(){const a=this.visibleName,i=!(""!==this.name)&&void 0!==this.placeholder&&""!==this.placeholder,t=void 0!==this.caption&&""!==this.caption,e=this.maintainLabelHeight&&"image-only"!==this.mode,l=""!==a||e&&!i,n=t||e,p="image-only"!==this.mode&&(l||n||i),_=this.clickable&&!this.disabled,d=_&&!p&&(this.name||this.placeholder)||void 0,c=this.loading||this.isLoading,h=this.disableTooltip||""===this.tooltipName&&!this.hasTooltipSlot,g={"ip-avatar__trigger":!0,[`ip-avatar__trigger--size-${this.size}`]:!0,[`ip-avatar__trigger--label-${this.labelPosition}`]:p,"ip-avatar__trigger--framed":p,"ip-avatar__trigger--clickable":_,"ip-avatar__trigger--selected":this.selected,"ip-avatar__trigger--disabled":this.disabled},v=this.gap?{"--ip-avatar-gap":this.gap}:void 0,b=`ip-avatar__media ip-avatar__media--${this.size}`,f="custom"===this.size&&this.customSize?{width:this.customSize,height:this.customSize,fontSize:`calc(${this.customSize} * 0.4)`}:void 0,m="default"!==this.ringVariant&&"custom"!==this.ringVariant,y={"ip-avatar__circle":!0,[`ip-avatar__circle--ring-${this.ringVariant}`]:m},u={};return"custom"===this.ringVariant&&this.ringColor&&(u["--ip-avatar-ring-color"]=this.ringColor),"solid"!==this.ringStyle&&(u["--ip-avatar-ring-style"]=this.ringStyle),this.ringGap&&(u["--ip-avatar-ring-gap"]=this.ringGap),r(o,{key:"89037a252299f20a22bd8257fc2c4cd88f2f2de0"},r("ip-tooltip",{key:"8159bbc51d3c8a45e67e25646b23bfd6c5f429f3",disabled:h,position:this.tooltipPosition,size:this.tooltipSize,variant:this.tooltipVariant},r("span",{key:"b502b53a68f8f8a1337c6c64a01791384307548c",slot:"trigger",class:g,style:v,role:_?"button":void 0,tabIndex:_?0:void 0,"aria-label":d,"aria-disabled":this.clickable&&this.disabled?"true":void 0,onClick:this.handleActivate,onKeyDown:this.handleKeyDown},r("span",{key:"c8a378c2b98543bdb1c24b5e8c3b003c447c33b4",class:b,style:f,"aria-busy":c?"true":"false"},r("span",{key:"e807e0d5a7cb20bbe550c3083dd8595a616daba7",class:y,style:u},r("span",{key:"8dc60e67688bc4a87a3f765b156ee35a3ad1bb3a",class:"ip-avatar__inner"},this.renderMediaContent()),c&&r(s,{key:"f211ec648a94365b9491ad8fd2d5f9af86918363"},r("span",{key:"c1856d78d73e8a6a7f79f0d6a231e21e490dd241",class:"ip-avatar__spinner-wrap","aria-hidden":"true"},r("span",{key:"8757a26af5bb9ea5ccff6ed5b145cab26ec5b10d",class:"ip-avatar__spinner"},r("span",{key:"d364c150800cccfe43ccca884d8fec8c3742f758",class:"ip-avatar__spinner-bar"}),r("span",{key:"a5f58ea79e0201b238093dfd271db0474429b11c",class:"ip-avatar__spinner-bar"}),r("span",{key:"84633df6b4711d10d4501b22dcaef5ab2ef3a0bb",class:"ip-avatar__spinner-bar"}))),r("span",{key:"803c91d37ca7ef6ab2f5e9a42418d04022d061b6",class:"ip-avatar__sr-only"},"Loading..."))),r("span",{key:"c7970991c9033aee86d132b33eac7301b54be206",class:"ip-avatar__adornment ip-avatar__adornment--top-left"},r("slot",{key:"4cd3c9892ec156873e724d130f9f120b81fe97d9",name:"top-left"})),r("span",{key:"be16dd14dbf6aba831baa1980dd4f12a59a1e403",class:"ip-avatar__adornment ip-avatar__adornment--top-right"},r("slot",{key:"d0bdb23f9f0f7e216d4dcd4c488c7cbaa5673167",name:"top-right"})),r("span",{key:"c5df472354c07b343a964b8d68020543db486fba",class:"ip-avatar__adornment ip-avatar__adornment--bottom-left"},r("slot",{key:"81318dff9b26c48d1cc76b446274e54d9c4e3f62",name:"bottom-left"})),r("span",{key:"d28414abe128d8b60bf3a55b640dccd01f3828d9",class:"ip-avatar__adornment ip-avatar__adornment--bottom-right"},r("slot",{key:"0e07911a0ae6baf4dbc9e49bcfebd2ea8bb1be98",name:"bottom-right"}))),p&&r("span",{key:"5e57464b27a42545ba06fffa606e2a2a1944ab34",class:`ip-avatar__label ip-avatar__label--${this.size}`},l&&r("span",{key:"88b5abcd6fc8f555d5a9526f2306de80c84bb74f",class:"ip-avatar__name"},""!==a?a:" "),i&&r("span",{key:"deda511dd62712668bb42e15efc0d5aead005c6f",class:"ip-avatar__placeholder"},this.placeholder),n&&r("span",{key:"fe705ffc2f39fa3165a705e1a4ee2a69edee7c85",class:"ip-avatar__caption"},t?this.caption:" "))),r("slot",{key:"c44373dc5a3a9390925d69ae101a0c63acd271ce",name:"tooltip",onSlotchange:this.handleTooltipSlotChange},this.tooltipName)))}static get watchers(){return{src:[{resetImageState:0}],fallbackSrc:[{resetImageState:0}]}}static get style(){return":host{display:inline-flex}:host([full-width]){display:flex;width:100%}:host([full-width]) .ip-avatar__trigger{width:100%}:host([full-width]) .ip-avatar__label{flex:1}.ip-avatar__trigger{display:inline-flex;align-items:center;gap:var(--ip-avatar-gap, var(--ip_spacing_space_200));box-sizing:border-box;transition:background-color 150ms ease}.ip-avatar__trigger--size-small{--ip-avatar-gap:var(--ip_spacing_space_100)}.ip-avatar__trigger--size-medium{--ip-avatar-gap:var(--ip_spacing_space_200)}.ip-avatar__trigger--size-large{--ip-avatar-gap:var(--ip_spacing_space_300)}.ip-avatar__trigger--label-right{flex-direction:row}.ip-avatar__trigger--label-left{flex-direction:row-reverse}.ip-avatar__trigger--label-bottom{flex-direction:column}.ip-avatar__trigger--label-top{flex-direction:column-reverse}.ip-avatar__trigger--label-top,.ip-avatar__trigger--label-bottom{text-align:center}.ip-avatar__trigger--framed{padding:var(--ip_spacing_space_050) var(--ip_spacing_space_200);border-radius:var(--ip_radius_size_small)}.ip-avatar__trigger--clickable{cursor:pointer}.ip-avatar__trigger--clickable.ip-avatar__trigger--framed:hover{background-color:var(--ip_color_border_opaque_10)}.ip-avatar__trigger--clickable:focus-visible{outline:2px solid var(--ip_color_button_focus_default);outline-offset:2px;border-radius:var(--ip_radius_size_small)}.ip-avatar__trigger--selected.ip-avatar__trigger--framed{background-color:var(--ip_color_border_opaque_20)}.ip-avatar__trigger--disabled{cursor:not-allowed;opacity:0.4}.ip-avatar__media{position:relative;display:inline-flex;flex-shrink:0}.ip-avatar__media--small{width:40px;height:40px;font-size:var(--ip_typography_body_font_size_small)}.ip-avatar__media--medium{width:50px;height:50px;font-size:var(--ip_typography_body_font_size_medium)}.ip-avatar__media--large{width:64px;height:64px;font-size:var(--ip_typography_body_font_size_large)}.ip-avatar__circle{position:relative;box-sizing:border-box;width:100%;height:100%;border-radius:50%;padding:var(--ip-avatar-ring-gap, 2px);background-color:var(--ip_color_surface_primary_default);color:var(--ip_color_text_primary_blue);border-width:2px;border-style:var(--ip-avatar-ring-style, solid);border-color:var(--ip-avatar-ring-color, var(--ip_color_text_primary_blue))}.ip-avatar__circle--ring-brand{--ip-avatar-ring-color:var(--ip_color_brand_accent_primary_default)}.ip-avatar__circle--ring-success{--ip-avatar-ring-color:var(--ip_color_extended_green-500)}.ip-avatar__circle--ring-warning{--ip-avatar-ring-color:var(--ip_color_extended_yellow-500)}.ip-avatar__circle--ring-error{--ip-avatar-ring-color:var(--ip_color_extended_red-500)}.ip-avatar__inner{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden;border-radius:50%;font-family:var(--ip_typography_font_family_primary);background-color:var(--ip_color_border_opaque_15)}:host([striped]) .ip-avatar__inner{background-image:repeating-linear-gradient(135deg, transparent 0, transparent 2.5px, var(--ip_color_border_opaque_10) 2.5px, var(--ip_color_border_opaque_10) 3.25px)}.ip-avatar__media[aria-busy=true] .ip-avatar__image,.ip-avatar__media[aria-busy=true] .ip-avatar__initials,.ip-avatar__media[aria-busy=true] .ip-avatar__silhouette{opacity:0}.ip-avatar__image{width:100%;height:100%;object-fit:cover;display:block}.ip-avatar__initials{line-height:1;font-weight:var(--ip_typography_font_weight_bold_700);user-select:none}.ip-avatar__silhouette{display:inline-flex;align-items:flex-end;justify-content:center;width:100%;height:100%}.ip-avatar__silhouette svg{width:80%;height:80%;display:block}.ip-avatar__adornment{position:absolute;display:inline-flex;z-index:1}.ip-avatar__adornment--top-left{top:0;left:0;transform:translate(-30%, -30%)}.ip-avatar__adornment--top-right{top:0;right:0;transform:translate(30%, -30%)}.ip-avatar__adornment--bottom-left{bottom:0;left:0;transform:translate(-30%, 30%)}.ip-avatar__adornment--bottom-right{bottom:0;right:0;transform:translate(30%, 30%)}.ip-avatar__label{display:flex;flex-direction:column;min-width:0;font-family:var(--ip_typography_font_family_primary);color:var(--ip-avatar-text-color, var(--ip_color_text_primary_black))}.ip-avatar__label--small{font-size:var(--ip_typography_body_font_size_small)}.ip-avatar__label--medium{font-size:var(--ip_typography_body_font_size_medium)}.ip-avatar__label--large{font-size:var(--ip_typography_body_font_size_large)}.ip-avatar__name{line-height:var(--ip_typography_body_line_height_compact);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ip-avatar__caption,.ip-avatar__placeholder{font-weight:var(--ip_typography_font_weight_light_300);font-style:italic;line-height:var(--ip_typography_body_line_height_compact);font-size:var(--ip_typography_body_font_size_small);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ip-avatar__spinner-wrap{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.ip-avatar__spinner{display:flex;align-items:center;gap:0.22em;height:1em}.ip-avatar__spinner-bar{width:2px;height:100%;background-color:currentColor;border-radius:1px;animation:ip-avatar-wave 1000ms ease-in-out infinite}.ip-avatar__spinner-bar:nth-child(2){animation-delay:150ms}.ip-avatar__spinner-bar:nth-child(3){animation-delay:300ms}.ip-avatar__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}@keyframes ip-avatar-wave{0%,100%{transform:scaleY(0.4)}50%{transform:scaleY(1)}}"}},[257,"ip-avatar",{name:[513],altName:[513,"alt-name"],caption:[513],placeholder:[513],src:[513],fallbackSrc:[513,"fallback-src"],mode:[513],fallback:[513],labelPosition:[513,"label-position"],gap:[513],size:[513],customSize:[513,"custom-size"],imageLoading:[513,"image-loading"],loading:[516],ringVariant:[513,"ring-variant"],ringColor:[513,"ring-color"],ringStyle:[513,"ring-style"],ringGap:[513,"ring-gap"],clickable:[516],selected:[516],fullWidth:[516,"full-width"],maintainLabelHeight:[516,"maintain-label-height"],striped:[516],disabled:[516],disableTooltip:[516,"disable-tooltip"],tooltipPosition:[513,"tooltip-position"],tooltipSize:[513,"tooltip-size"],tooltipVariant:[513,"tooltip-variant"],srcIndex:[32],isLoading:[32],hasTooltipSlot:[32]},void 0,{src:[{resetImageState:0}],fallbackSrc:[{resetImageState:0}]}]);function d(){"undefined"!=typeof customElements&&["ip-avatar","ip-tooltip"].forEach((i=>{switch(i){case"ip-avatar":customElements.get(a(i))||customElements.define(a(i),_);break;case"ip-tooltip":customElements.get(a(i))||n()}}))}d();export{_ as I,d}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as i,p as o,H as n,h as t,d as c}from"./p-BB9-AZXH.js";const e=o(class extends n{constructor(i){super(),!1!==i&&this.__registerHost(),this.__attachShadow(),this.value="",this.variant="default",this.size="medium",this.label=""}render(){const i=""===this.value?"-":this.value,o=""!==this.label;return t(c,{key:"d9e8c640eeb54d724ed02c136bdda6834175c291",role:o?"img":void 0,"aria-label":o?this.label:void 0},t("span",{key:"107c6445345cb9b060ad34b6a4bcef8afd4b841f",class:`ip-icon-count ip-icon-count--${this.variant} ip-icon-count--${this.size}`},t("span",{key:"43d4e46f97e6992af6e10a290256f4357ffc06fd",class:"ip-icon-count__icon","aria-hidden":"true"},t("slot",{key:"0fc35e7b9a43dde8a4667c560b69796627e343cc",name:"icon"})),t("span",{key:"9715a91bb7335cbb5097506337a83f3f1d0c620d",class:"ip-icon-count__value"},i)))}static get style(){return":host{display:inline-block}.ip-icon-count{display:inline-flex;align-items:center;gap:var(--ip_spacing_space_075);padding:var(--ip_spacing_space_025) var(--ip_spacing_space_050);border-radius:var(--ip_radius_size_medium);font-family:var(--ip_typography_mono_spaced_numbers_font_family_default);line-height:1}.ip-icon-count__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ip-icon-count__value{font-weight:var(--ip_typography_mono_spaced_numbers_font_weight_default);letter-spacing:var(--ip_typography_mono_spaced_numbers_letter_spacing_default);white-space:nowrap}.ip-icon-count--small .ip-icon-count__icon{font-size:var(--ip_iconography_size_tiny)}.ip-icon-count--small .ip-icon-count__value{font-size:var(--ip_typography_mono_spaced_numbers_font_size_tiny)}.ip-icon-count--medium .ip-icon-count__icon{font-size:var(--ip_iconography_size_small)}.ip-icon-count--medium .ip-icon-count__value{font-size:var(--ip_typography_mono_spaced_numbers_font_size_small)}.ip-icon-count--large .ip-icon-count__icon{font-size:var(--ip_iconography_size_medium)}.ip-icon-count--large .ip-icon-count__value{font-size:var(--ip_typography_mono_spaced_numbers_font_size_default)}.ip-icon-count--default .ip-icon-count__icon{color:var(--ip_color_icon_primary_default)}.ip-icon-count--default .ip-icon-count__value{color:var(--ip_color_text_secondary_default)}.ip-icon-count--brand .ip-icon-count__icon,.ip-icon-count--brand .ip-icon-count__value{color:var(--ip_color_brand_accent_primary_default)}.ip-icon-count--warning .ip-icon-count__icon,.ip-icon-count--warning .ip-icon-count__value{color:var(--ip_color_extended_orange-700)}.ip-icon-count--error .ip-icon-count__icon,.ip-icon-count--error .ip-icon-count__value{color:var(--ip_color_extended_red-700)}::slotted([slot=icon]){display:inline-flex !important;align-items:center;justify-content:center}.ip-icon-count--small ::slotted([slot=icon]){font-size:var(--ip_iconography_size_tiny);width:var(--ip_iconography_size_tiny) !important;height:var(--ip_iconography_size_tiny) !important}.ip-icon-count--medium ::slotted([slot=icon]){font-size:var(--ip_iconography_size_small);width:var(--ip_iconography_size_small) !important;height:var(--ip_iconography_size_small) !important}.ip-icon-count--large ::slotted([slot=icon]){font-size:var(--ip_iconography_size_medium);width:var(--ip_iconography_size_medium) !important;height:var(--ip_iconography_size_medium) !important}"}},[257,"ip-icon-count",{value:[513],variant:[513],size:[513],label:[513]}]);function a(){"undefined"!=typeof customElements&&["ip-icon-count"].forEach((o=>{"ip-icon-count"===o&&(customElements.get(i(o))||customElements.define(i(o),e))}))}a();export{e as I,a as d}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t,p as o,H as i,h as r,F as a}from"./p-BB9-AZXH.js";const e=o(class extends i{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.internals=this.attachInternals(),this.ariaLabel=null,this.hasLabel=!1,this.variant="primary",this.loading=!1,this.disabled=!1,this.type="submit",this.size="medium",this.alignIcon="start",this.onLabelSlotChange=t=>{this.hasLabel=t.target.assignedNodes({flatten:!0}).length>0},this.handleClick=()=>"submit"===this.type?this.internals.form?.requestSubmit():"reset"===this.type?this.internals.form?.reset():void 0}render(){const t=this.disabled||this.loading;return r("button",{key:"
|
|
1
|
+
import{t,p as o,H as i,h as r,F as a}from"./p-BB9-AZXH.js";const e=o(class extends i{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.internals=this.attachInternals(),this.ariaLabel=null,this.hasLabel=!1,this.variant="primary",this.loading=!1,this.disabled=!1,this.type="submit",this.size="medium",this.alignIcon="start",this.onLabelSlotChange=t=>{this.hasLabel=t.target.assignedNodes({flatten:!0}).length>0},this.handleClick=()=>"submit"===this.type?this.internals.form?.requestSubmit():"reset"===this.type?this.internals.form?.reset():void 0}render(){const t=this.disabled||this.loading;return r("button",{key:"d6f52382f84c4ef103a654d24100ed7691da942f",class:`ip-button ip-button--${this.variant} ip-button--${this.size}`,type:"button",disabled:t,"aria-disabled":t?"true":"false","aria-busy":this.loading?"true":"false","aria-label":this.ariaLabel??void 0,onClick:this.handleClick},"start"===this.alignIcon&&r("slot",{key:"icon-start",name:"icon"}),this.hasLabel?r("span",{class:`ip-button__label ip-button__label--${this.size}`},r("slot",{onSlotchange:this.onLabelSlotChange})):r("slot",{onSlotchange:this.onLabelSlotChange}),"end"===this.alignIcon&&r("slot",{key:"icon-end",name:"icon"}),this.loading&&r(a,{key:"19af5e4c1af27773b43e4e9193a188e820997630"},r("span",{key:"997052604a30c04a2455928f7b5b0c1ac8783d14",class:"ip-button__spinner","aria-hidden":"true"}),r("span",{key:"88d154fe6adc2adcd783f11d6568dd2af85b8161",class:"ip-button__sr-only"},"Loading...")))}static get formAssociated(){return!0}static get style(){return":host{display:inline-flex}.ip-button{border:none;border-radius:var(--ip_radius_size_medium);margin:0;cursor:pointer;position:relative;overflow:hidden;display:inline-flex;width:100%;align-items:center;justify-content:center;font-family:var(--ip_typography_font_family_primary);transition:background-color 150ms ease-in-out, color 150ms ease-in-out}.ip-button:disabled{cursor:not-allowed}.ip-button:focus-visible{outline:2px solid var(--ip_color_button_focus_default);outline-offset:2px}.ip-button--small{padding:var(--ip_spacing_space_100) var(--ip_spacing_space_150);gap:var(--ip_spacing_space_125);font-size:var(--ip_typography_body_font_size_small)}.ip-button--medium{padding:var(--ip_spacing_space_125) var(--ip_spacing_space_200);gap:var(--ip_spacing_space_150);font-size:var(--ip_typography_body_font_size_medium)}.ip-button--large{padding:var(--ip_spacing_space_150) var(--ip_spacing_space_250);gap:var(--ip_spacing_space_200);font-size:var(--ip_typography_body_font_size_large)}.ip-button--primary{background-color:var(--ip_color_button_background_primary_default);color:var(--ip_color_button_text_primary_default)}.ip-button--primary:hover:not(:disabled){background-color:var(--ip_color_button_background_primary_hover)}.ip-button--primary:active:not(:disabled){background-color:var(--ip_color_button_background_primary_active)}.ip-button--primary:disabled{background-color:var(--ip_color_button_background_primary_disabled);color:var(--ip_color_button_text_primary_disabled)}.ip-button--secondary{background-color:var(--ip_color_button_background_secondary_default);color:var(--ip_color_button_text_secondary_default)}.ip-button--secondary:hover:not(:disabled){background-color:var(--ip_color_button_background_secondary_hover)}.ip-button--secondary:active:not(:disabled){background-color:var(--ip_color_button_background_secondary_active)}.ip-button--secondary:disabled{background-color:var(--ip_color_button_background_secondary_disabled);color:var(--ip_color_button_text_secondary_disabled)}.ip-button--tertiary{background-color:var(--ip_color_button_background_tertiary_default);color:var(--ip_color_button_text_tertiary_default)}.ip-button--tertiary:hover:not(:disabled){background-color:var(--ip_color_button_background_tertiary_hover)}.ip-button--tertiary:active:not(:disabled){background-color:var(--ip_color_button_background_tertiary_active)}.ip-button--tertiary:disabled{background-color:var(--ip_color_button_background_tertiary_disabled);color:var(--ip_color_button_text_tertiary_disabled)}.ip-button--brand{background-color:var(--ip_color_button_background_brand_default);color:var(--ip_color_button_text_brand_default)}.ip-button--brand:hover:not(:disabled){background-color:var(--ip_color_button_background_brand_hover)}.ip-button--brand:active:not(:disabled){background-color:var(--ip_color_button_background_brand_active)}.ip-button--brand:disabled{background-color:var(--ip_color_button_background_brand_disabled);color:var(--ip_color_button_text_brand_disabled)}.ip-button--destructive{background-color:var(--ip_color_button_background_destructive_default);color:var(--ip_color_button_text_destructive_default)}.ip-button--destructive:hover:not(:disabled){background-color:var(--ip_color_button_background_destructive_hover)}.ip-button--destructive:active:not(:disabled){background-color:var(--ip_color_button_background_destructive_active)}.ip-button--destructive:disabled{background-color:var(--ip_color_button_background_destructive_disabled);color:var(--ip_color_button_text_destructive_disabled)}.ip-button__label{display:inline-flex;align-items:center}.ip-button__label--small{height:18px}.ip-button__label--medium{height:20px}.ip-button__label--large{height:22px}.ip-button__spinner{width:0.75em;height:0.75em;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:ip-button-spin 900ms linear infinite;flex-shrink:0}.ip-button__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}@keyframes ip-button-spin{to{transform:rotate(360deg)}}::slotted([slot=icon]){display:inline-flex !important;align-items:center;justify-content:center}:host([size=small]) ::slotted([slot=icon]){font-size:var(--ip_iconography_size_small);width:18px !important;height:18px !important}:host([size=medium]) ::slotted([slot=icon]){font-size:var(--ip_iconography_size_medium);width:20px !important;height:20px !important}:host([size=large]) ::slotted([slot=icon]){font-size:var(--ip_iconography_size_large);width:22px !important;height:22px !important}"}},[321,"ip-button",{ariaLabel:[1,"aria-label"],variant:[513],loading:[516],disabled:[516],type:[513],size:[513],alignIcon:[513,"align-icon"],hasLabel:[32]}]);function n(){"undefined"!=typeof customElements&&["ip-button"].forEach((o=>{"ip-button"===o&&(customElements.get(t(o))||customElements.define(t(o),e))}))}n();export{e as I,n as d}
|