@mozaic-ds/web-components 0.29.1 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -73
- package/package.json +1 -1
- package/public/adeo/components/autocomplete/Autocomplete.js +1 -1
- package/public/adeo/components/autocomplete/Autocomplete.js.map +1 -1
- package/public/adeo/components/autocomplete/Autocomplete.svelte +3 -0
- package/public/adeo/components/button/Button.js +1 -1
- package/public/adeo/components/button/Button.js.map +1 -1
- package/public/adeo/components/button/Button.svelte +46 -22
- package/public/adeo/components/fileuploader/FileUploader.js +1 -1
- package/public/adeo/components/fileuploader/FileUploader.js.map +1 -1
- package/public/adeo/components/fileuploader/FileUploader.svelte +9 -5
- package/public/adeo/components/listbox/Listbox.nested.js +1 -1
- package/public/adeo/components/listbox/Listbox.nested.js.map +1 -1
- package/public/adeo/components/listbox/Listbox.nested.svelte +19 -2
- package/public/adeo/components/menu/Menu.js +1 -1
- package/public/adeo/components/menu/Menu.js.map +1 -1
- package/public/adeo/components/menu/Menu.svelte +17 -6
- package/public/adeo/components/menu/menu.types.d.ts +1 -0
- package/public/adeo/components/menu/menu.types.d.ts.map +1 -1
- package/public/adeo/components/textinput/Textinput.nested.js +1 -1
- package/public/adeo/components/textinput/Textinput.nested.js.map +1 -1
- package/public/adeo/components/textinput/Textinput.nested.svelte +1 -0
- package/public/adeo/utilities/components/menu/menu.types.d.ts +1 -0
- package/public/adeo/utilities/components/menu/menu.types.d.ts.map +1 -1
- package/public/adeo/utilities/stories/autocomplete/Autocomplete.stories.d.ts.map +1 -1
- package/public/adeo/utilities/stories/button/Button.stories.d.ts +1 -0
- package/public/adeo/utilities/stories/button/Button.stories.d.ts.map +1 -1
- package/public/bricoman/components/autocomplete/Autocomplete.js +1 -1
- package/public/bricoman/components/autocomplete/Autocomplete.js.map +1 -1
- package/public/bricoman/components/autocomplete/Autocomplete.svelte +3 -0
- package/public/bricoman/components/button/Button.js +1 -1
- package/public/bricoman/components/button/Button.js.map +1 -1
- package/public/bricoman/components/button/Button.svelte +46 -22
- package/public/bricoman/components/fileuploader/FileUploader.js +1 -1
- package/public/bricoman/components/fileuploader/FileUploader.js.map +1 -1
- package/public/bricoman/components/fileuploader/FileUploader.svelte +9 -5
- package/public/bricoman/components/listbox/Listbox.nested.js +1 -1
- package/public/bricoman/components/listbox/Listbox.nested.js.map +1 -1
- package/public/bricoman/components/listbox/Listbox.nested.svelte +19 -2
- package/public/bricoman/components/menu/Menu.js +1 -1
- package/public/bricoman/components/menu/Menu.js.map +1 -1
- package/public/bricoman/components/menu/Menu.svelte +17 -6
- package/public/bricoman/components/menu/menu.types.d.ts +1 -0
- package/public/bricoman/components/menu/menu.types.d.ts.map +1 -1
- package/public/bricoman/components/textinput/Textinput.nested.js +1 -1
- package/public/bricoman/components/textinput/Textinput.nested.js.map +1 -1
- package/public/bricoman/components/textinput/Textinput.nested.svelte +1 -0
- package/public/bricoman/utilities/components/menu/menu.types.d.ts +1 -0
- package/public/bricoman/utilities/components/menu/menu.types.d.ts.map +1 -1
- package/public/bricoman/utilities/stories/autocomplete/Autocomplete.stories.d.ts.map +1 -1
- package/public/bricoman/utilities/stories/button/Button.stories.d.ts +1 -0
- package/public/bricoman/utilities/stories/button/Button.stories.d.ts.map +1 -1
- package/public/components/autocomplete/Autocomplete.js +1 -1
- package/public/components/autocomplete/Autocomplete.js.map +1 -1
- package/public/components/autocomplete/Autocomplete.svelte +3 -0
- package/public/components/button/Button.js +1 -1
- package/public/components/button/Button.js.map +1 -1
- package/public/components/button/Button.svelte +46 -22
- package/public/components/fileuploader/FileUploader.js +1 -1
- package/public/components/fileuploader/FileUploader.js.map +1 -1
- package/public/components/fileuploader/FileUploader.svelte +9 -5
- package/public/components/listbox/Listbox.nested.js +1 -1
- package/public/components/listbox/Listbox.nested.js.map +1 -1
- package/public/components/listbox/Listbox.nested.svelte +19 -2
- package/public/components/menu/Menu.js +1 -1
- package/public/components/menu/Menu.js.map +1 -1
- package/public/components/menu/Menu.svelte +17 -6
- package/public/components/menu/menu.types.d.ts +1 -0
- package/public/components/menu/menu.types.d.ts.map +1 -1
- package/public/components/textinput/Textinput.nested.js +1 -1
- package/public/components/textinput/Textinput.nested.js.map +1 -1
- package/public/components/textinput/Textinput.nested.svelte +1 -0
- package/public/utilities/components/menu/menu.types.d.ts +1 -0
- package/public/utilities/components/menu/menu.types.d.ts.map +1 -1
- package/public/utilities/stories/autocomplete/Autocomplete.stories.d.ts.map +1 -1
- package/public/utilities/stories/button/Button.stories.d.ts +1 -0
- package/public/utilities/stories/button/Button.stories.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.js","sources":["../../../../src/components/button/Button.svelte"],"sourcesContent":["<svelte:options tag={null} />\n\n<script lang=\"ts\">\n import { get_current_component } from 'svelte/internal';\n import { createEventForwarder } from '../../utilities/EventForward';\n import Loader from '../loader/Loader.nested.svelte';\n import type {\n ButtonIconMode,\n ButtonSize,\n ButtonTheme,\n ButtonResponsiveSize,\n ButtonResponsiveWidth,\n ButtonType,\n ButtonLoader,\n } from './button.types';\n\n export let bordered = false;\n export let theme: ButtonTheme | undefined = undefined;\n export let size: ButtonSize = 'm';\n export let full = false;\n export let label: string;\n export let iconname: string | undefined;\n export let iconmode: ButtonIconMode | undefined;\n export let disabled = false;\n export let responsivesize: ButtonResponsiveSize = undefined;\n export let responsivewidth: ButtonResponsiveWidth = undefined;\n export let type: ButtonType = 'button';\n export let loader: string;\n\n const forwardEvents = createEventForwarder(get_current_component());\n\n $: loaderOpts = loader ? (JSON.parse(loader) as ButtonLoader) : undefined;\n $: isLoading = loaderOpts?.enabled ?? false;\n $: loaderPosition = loaderOpts?.position ?? 'left';\n $: loaderTheme = loaderOpts?.theme ?? 'primary';\n $: userClass = $$props.class;\n $: attributes = { ...$$restProps };\n $: delete attributes.class;\n\n function generateIconName(\n size: ButtonSize,\n iconMode: ButtonIconMode,\n iconName: string,\n ): string {\n const isIconOnly = iconMode === 'only';\n let iconSize: string;\n\n switch (size) {\n case 's':\n iconSize = '24px';\n break;\n case 'm':\n iconSize = isIconOnly ? '32px' : '24px';\n break;\n case 'l':\n iconSize = isIconOnly ? '100%' : '32px';\n break;\n }\n\n return `${iconName} size=\"${iconSize}\" class=\"no\"`;\n }\n\n function getAppearanceClass(theme: ButtonTheme, isBordered: boolean): string {\n if (!isBordered && !theme) {\n return '';\n }\n\n const type = isBordered ? 'bordered' : 'solid';\n\n if (theme) {\n return `mc-button--${type}-${theme}`;\n }\n return `mc-button--${type}`;\n }\n\n function getClasses(\n theme: ButtonTheme,\n isBordered: boolean,\n size: ButtonSize,\n isFull: boolean,\n ): string {\n const classes = ['mc-button'];\n\n const appearanceClass = getAppearanceClass(theme, isBordered);\n if (appearanceClass) {\n classes.push(appearanceClass);\n }\n\n if (size) {\n classes.push(`mc-button--${size}`);\n }\n\n if (isFull) {\n classes.push(`mc-button--full`);\n } else {\n classes.push(`mc-button--fit`);\n }\n\n if (iconmode === 'only') {\n classes.push('mc-button--square');\n }\n\n if (responsivesize) {\n classes.push(`mc-button--${responsivesize}`);\n }\n\n if (responsivewidth) {\n classes.push(`mc-button--${responsivewidth}`);\n }\n\n return classes.join(' ');\n }\n</script>\n\n<button\n use:forwardEvents\n {type}\n class=\"{getClasses(theme, bordered, size, full)} {userClass}\"\n class:mc-button--square={iconmode == 'only'}\n {disabled}\n {...attributes}\n>\n {#if (iconname || $$slots.icon) && iconmode === 'left'}\n <span class=\"mc-button__icon\">\n {#if isLoading && loaderPosition === 'left'}\n <Loader size=\"s\" theme={loaderTheme} text=\"\" />\n {:else if $$slots.icon}\n <slot name=\"icon\" />\n {:else if iconname}\n {@html `<${generateIconName(size, iconmode, iconname)} />`}\n {/if}\n </span>\n {/if}\n\n {#if (iconname || $$slots.icon) && iconmode === 'only'}\n <span class=\"mc-button__icon\">\n {#if isLoading}\n <Loader size=\"m\" theme={loaderTheme} text=\"\" />\n {:else if $$slots.icon}\n <slot name=\"icon\" />\n {:else if iconname}\n {@html `<${generateIconName(size, iconmode, iconname)} />`}\n {/if}\n </span>\n {:else}\n {#if isLoading && loaderPosition === 'left' && !iconname && !$$slots.icon}\n <span class=\"mc-button__icon\">\n <Loader size=\"s\" theme={loaderTheme} text=\"\" />\n </span>\n {/if}\n <span class=\"mc-button__label\">{label}</span>\n {#if isLoading && loaderPosition === 'right' && !iconname && !$$slots.icon}\n <span class=\"mc-button__icon\">\n <Loader size=\"s\" theme={loaderTheme} text=\"\" />\n </span>\n {/if}\n {/if}\n\n {#if (iconname || $$slots.icon) && iconmode === 'right'}\n <span class=\"mc-button__icon\">\n {#if isLoading && loaderPosition === 'right'}\n <Loader size=\"s\" theme={loaderTheme} text=\"\" />\n {:else if $$slots.icon}\n <slot name=\"icon\" />\n {:else if iconname}\n {@html `<${generateIconName(size, iconmode, iconname)} />`}\n {/if}\n </span>\n {/if}\n</button>\n\n<style lang=\"scss\">\n @import '@mozaic-ds/styles/settings-tools/_all-settings';\n @import '@mozaic-ds/styles/components/c.button';\n\n .mc-button__icon {\n pointer-events: none;\n }\n</style>\n"],"names":["ctx","icon","insert","target","span","anchor","raw_value","generateIconName","dirty","html_tag","p","slot","create_if_block_9","create_if_block_8","if_block0","create_if_block_10","if_block2","create_if_block","toggle_class","button","class","button_class_value","size","iconMode","iconName","isIconOnly","iconSize","_a","_b","_c","bordered","$$props","theme","full","label","iconname","iconmode","disabled","responsivesize","responsivewidth","type","loader","forwardEvents","createEventForwarder","get_current_component","$$invalidate","loaderOpts","JSON","parse","undefined","isLoading","enabled","loaderPosition","position","loaderTheme","userClass","attributes","Object","assign","$$restProps","isBordered","isFull","classes","appearanceClass","getAppearanceClass","push","join"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Button.js","sources":["../../../../src/components/button/Button.svelte"],"sourcesContent":["<svelte:options tag={null} />\n\n<script lang=\"ts\">\n import { get_current_component } from 'svelte/internal';\n import { createEventForwarder } from '../../utilities/EventForward';\n import Loader from '../loader/Loader.nested.svelte';\n import type {\n ButtonIconMode,\n ButtonSize,\n ButtonTheme,\n ButtonResponsiveSize,\n ButtonResponsiveWidth,\n ButtonType,\n ButtonLoader,\n } from './button.types';\n\n export let bordered = false;\n export let theme: ButtonTheme | undefined = undefined;\n export let size: ButtonSize = 'm';\n export let full = false;\n export let label: string;\n export let iconname: string | undefined;\n export let iconmode: ButtonIconMode | undefined;\n export let disabled = false;\n export let responsivesize: ButtonResponsiveSize = undefined;\n export let responsivewidth: ButtonResponsiveWidth = undefined;\n export let type: ButtonType = 'button';\n export let loader: string;\n export let iconpath: string;\n const forwardEvents = createEventForwarder(get_current_component());\n\n $: loaderOpts = loader ? (JSON.parse(loader) as ButtonLoader) : undefined;\n $: isLoading = loaderOpts?.enabled ?? false;\n $: loaderPosition = loaderOpts?.position ?? 'left';\n $: loaderTheme = loaderOpts?.theme ?? 'primary';\n $: userClass = $$props.class;\n $: attributes = { ...$$restProps };\n $: delete attributes.class;\n\n function generateIconName(\n size: ButtonSize,\n iconMode: ButtonIconMode,\n iconName: string,\n ): string {\n const isIconOnly = iconMode === 'only';\n let iconSize: string;\n\n switch (size) {\n case 's':\n iconSize = '24px';\n break;\n case 'm':\n iconSize = isIconOnly ? '32px' : '24px';\n break;\n case 'l':\n iconSize = isIconOnly ? '100%' : '32px';\n break;\n }\n\n return `${iconName} size=\"${iconSize}\" class=\"no\"`;\n }\n\n function getAppearanceClass(theme: ButtonTheme, isBordered: boolean): string {\n if (!isBordered && !theme) {\n return '';\n }\n\n const type = isBordered ? 'bordered' : 'solid';\n\n if (theme) {\n return `mc-button--${type}-${theme}`;\n }\n return `mc-button--${type}`;\n }\n\n function getClasses(\n theme: ButtonTheme,\n isBordered: boolean,\n size: ButtonSize,\n isFull: boolean,\n ): string {\n const classes = ['mc-button'];\n\n const appearanceClass = getAppearanceClass(theme, isBordered);\n if (appearanceClass) {\n classes.push(appearanceClass);\n }\n\n if (size) {\n classes.push(`mc-button--${size}`);\n }\n\n if (isFull) {\n classes.push(`mc-button--full`);\n } else {\n classes.push(`mc-button--fit`);\n }\n\n if (iconmode === 'only') {\n classes.push('mc-button--square');\n }\n\n if (responsivesize) {\n classes.push(`mc-button--${responsivesize}`);\n }\n\n if (responsivewidth) {\n classes.push(`mc-button--${responsivewidth}`);\n }\n\n return classes.join(' ');\n }\n</script>\n\n<button\n use:forwardEvents\n {type}\n class=\"{getClasses(theme, bordered, size, full)} {userClass}\"\n class:mc-button--square={iconmode == 'only'}\n {disabled}\n {...attributes}\n>\n {#if (iconname || $$slots.icon || iconpath) && iconmode === 'left'}\n {#if isLoading && loaderPosition === 'left'}\n <span class=\"mc-button__icon\">\n <Loader size=\"s\" theme={loaderTheme} text=\"\" />\n </span>\n {:else if iconpath}\n <svg class=\"mc-button__icon\">\n <use href={iconpath} />\n </svg>\n {:else if $$slots.icon}\n <span class=\"mc-button__icon\">\n <slot name=\"icon\" />\n </span>\n {:else if iconname}\n <span class=\"mc-button__icon\">\n {@html `<${generateIconName(size, iconmode, iconname)} />`}\n </span>\n {/if}\n {/if}\n\n {#if (iconname || $$slots.icon || iconpath) && iconmode === 'only'}\n {#if isLoading}\n <span class=\"mc-button__icon\">\n <Loader size=\"m\" theme={loaderTheme} text=\"\" />\n </span>\n {:else if $$slots.icon}\n <span class=\"mc-button__icon\">\n <slot name=\"icon\" />\n </span>\n {:else if iconpath}\n <svg class=\"mc-button__icon\">\n <use href={iconpath} />\n </svg>\n {:else if iconname}\n <span class=\"mc-button__icon\">\n {@html `<${generateIconName(size, iconmode, iconname)} />`}\n </span>\n {/if}\n {:else}\n {#if isLoading && loaderPosition === 'left' && !iconname && !$$slots.icon}\n <span class=\"mc-button__icon\">\n <Loader size=\"s\" theme={loaderTheme} text=\"\" />\n </span>\n {/if}\n <span class=\"mc-button__label\">{label}</span>\n {#if isLoading && loaderPosition === 'right' && !iconname && !$$slots.icon}\n <span class=\"mc-button__icon\">\n <Loader size=\"s\" theme={loaderTheme} text=\"\" />\n </span>\n {/if}\n {/if}\n\n {#if (iconname || $$slots.icon || iconpath) && iconmode === 'right'}\n {#if isLoading && loaderPosition === 'right'}\n <span class=\"mc-button__icon\">\n <Loader size=\"s\" theme={loaderTheme} text=\"\" />\n </span>\n {:else if iconpath}\n <svg class=\"mc-button__icon\">\n <use href={iconpath} />\n </svg>\n {:else if $$slots.icon}\n <span class=\"mc-button__icon\">\n <slot name=\"icon\" />\n </span>\n {:else if iconname}\n <span class=\"mc-button__icon\">\n {@html `<${generateIconName(size, iconmode, iconname)} />`}\n </span>\n {/if}\n {/if}\n</button>\n\n<style lang=\"scss\">\n @import '@mozaic-ds/styles/settings-tools/_all-settings';\n @import '@mozaic-ds/styles/components/c.button';\n\n .mc-button__icon {\n pointer-events: none;\n }\n</style>\n"],"names":["ctx","icon","raw_value","generateIconName","insert","target","span","anchor","dirty","innerHTML","svg","append","use","create_if_block_11","create_if_block_10","create_if_block_12","create_if_block","toggle_class","button","class","button_class_value","size","iconMode","iconName","isIconOnly","iconSize","_a","_b","_c","bordered","$$props","theme","full","label","iconname","iconmode","disabled","responsivesize","responsivewidth","type","loader","iconpath","forwardEvents","createEventForwarder","get_current_component","$$invalidate","loaderOpts","JSON","parse","undefined","isLoading","enabled","loaderPosition","position","loaderTheme","userClass","attributes","Object","assign","$$restProps","isBordered","isFull","classes","appearanceClass","getAppearanceClass","push","join"],"mappings":"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"}
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
export let responsivewidth: ButtonResponsiveWidth = undefined;
|
|
27
27
|
export let type: ButtonType = 'button';
|
|
28
28
|
export let loader: string;
|
|
29
|
-
|
|
29
|
+
export let iconpath: string;
|
|
30
30
|
const forwardEvents = createEventForwarder(get_current_component());
|
|
31
31
|
|
|
32
32
|
$: loaderOpts = loader ? (JSON.parse(loader) as ButtonLoader) : undefined;
|
|
@@ -120,28 +120,44 @@
|
|
|
120
120
|
{disabled}
|
|
121
121
|
{...attributes}
|
|
122
122
|
>
|
|
123
|
-
{#if (iconname || $$slots.icon) && iconmode === 'left'}
|
|
124
|
-
|
|
125
|
-
|
|
123
|
+
{#if (iconname || $$slots.icon || iconpath) && iconmode === 'left'}
|
|
124
|
+
{#if isLoading && loaderPosition === 'left'}
|
|
125
|
+
<span class="mc-button__icon">
|
|
126
126
|
<Loader size="s" theme={loaderTheme} text="" />
|
|
127
|
-
|
|
127
|
+
</span>
|
|
128
|
+
{:else if iconpath}
|
|
129
|
+
<svg class="mc-button__icon">
|
|
130
|
+
<use href={iconpath} />
|
|
131
|
+
</svg>
|
|
132
|
+
{:else if $$slots.icon}
|
|
133
|
+
<span class="mc-button__icon">
|
|
128
134
|
<slot name="icon" />
|
|
129
|
-
|
|
135
|
+
</span>
|
|
136
|
+
{:else if iconname}
|
|
137
|
+
<span class="mc-button__icon">
|
|
130
138
|
{@html `<${generateIconName(size, iconmode, iconname)} />`}
|
|
131
|
-
|
|
132
|
-
|
|
139
|
+
</span>
|
|
140
|
+
{/if}
|
|
133
141
|
{/if}
|
|
134
142
|
|
|
135
|
-
{#if (iconname || $$slots.icon) && iconmode === 'only'}
|
|
136
|
-
|
|
137
|
-
|
|
143
|
+
{#if (iconname || $$slots.icon || iconpath) && iconmode === 'only'}
|
|
144
|
+
{#if isLoading}
|
|
145
|
+
<span class="mc-button__icon">
|
|
138
146
|
<Loader size="m" theme={loaderTheme} text="" />
|
|
139
|
-
|
|
147
|
+
</span>
|
|
148
|
+
{:else if $$slots.icon}
|
|
149
|
+
<span class="mc-button__icon">
|
|
140
150
|
<slot name="icon" />
|
|
141
|
-
|
|
151
|
+
</span>
|
|
152
|
+
{:else if iconpath}
|
|
153
|
+
<svg class="mc-button__icon">
|
|
154
|
+
<use href={iconpath} />
|
|
155
|
+
</svg>
|
|
156
|
+
{:else if iconname}
|
|
157
|
+
<span class="mc-button__icon">
|
|
142
158
|
{@html `<${generateIconName(size, iconmode, iconname)} />`}
|
|
143
|
-
|
|
144
|
-
|
|
159
|
+
</span>
|
|
160
|
+
{/if}
|
|
145
161
|
{:else}
|
|
146
162
|
{#if isLoading && loaderPosition === 'left' && !iconname && !$$slots.icon}
|
|
147
163
|
<span class="mc-button__icon">
|
|
@@ -156,16 +172,24 @@
|
|
|
156
172
|
{/if}
|
|
157
173
|
{/if}
|
|
158
174
|
|
|
159
|
-
{#if (iconname || $$slots.icon) && iconmode === 'right'}
|
|
160
|
-
|
|
161
|
-
|
|
175
|
+
{#if (iconname || $$slots.icon || iconpath) && iconmode === 'right'}
|
|
176
|
+
{#if isLoading && loaderPosition === 'right'}
|
|
177
|
+
<span class="mc-button__icon">
|
|
162
178
|
<Loader size="s" theme={loaderTheme} text="" />
|
|
163
|
-
|
|
179
|
+
</span>
|
|
180
|
+
{:else if iconpath}
|
|
181
|
+
<svg class="mc-button__icon">
|
|
182
|
+
<use href={iconpath} />
|
|
183
|
+
</svg>
|
|
184
|
+
{:else if $$slots.icon}
|
|
185
|
+
<span class="mc-button__icon">
|
|
164
186
|
<slot name="icon" />
|
|
165
|
-
|
|
187
|
+
</span>
|
|
188
|
+
{:else if iconname}
|
|
189
|
+
<span class="mc-button__icon">
|
|
166
190
|
{@html `<${generateIconName(size, iconmode, iconname)} />`}
|
|
167
|
-
|
|
168
|
-
|
|
191
|
+
</span>
|
|
192
|
+
{/if}
|
|
169
193
|
{/if}
|
|
170
194
|
</button>
|
|
171
195
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{S as e,i as l,a as t,b as s,f as i,s as a,e as r,d as o,v as n,n as d,h as c,k as p,x as f,y as m,B as u,z as b,A as h,m as $,q as x,r as g,E as v,F as w,G as _,C as k,K as y}from"../../index-c222d0b7.js";import{E}from"../../EventHandler-f7ee47ca.js";import C from"./fileuploader-result.nested.js";function z(e){let l,t;return l=new C({props:{files:e[8],allowedExtensions:e[11],disabled:e[6],maxSize:e[12],removelabel:e[7],errorLabels:e[13]}}),l.$on("file-removed",e[15]),{c(){v(l.$$.fragment)},m(e,s){w(l,e,s),t=!0},p(e,t){const s={};256&t&&(s.files=e[8]),2048&t&&(s.allowedExtensions=e[11]),64&t&&(s.disabled=e[6]),4096&t&&(s.maxSize=e[12]),128&t&&(s.removelabel=e[7]),8192&t&&(s.errorLabels=e[13]),l.$set(s)},i(e){t||(u(l.$$.fragment,e),t=!0)},o(e){b(l.$$.fragment,e),t=!1},d(e){_(l,e)}}}function S(e){let l,t;return l=new C({props:{files:e[10],allowedExtensions:e[11],disabled:e[6],maxSize:e[12],removelabel:e[7],errorLabels:e[13]}}),l.$on("file-removed",e[16]),{c(){v(l.$$.fragment)},m(e,s){w(l,e,s),t=!0},p(e,t){const s={};1024&t&&(s.files=e[10]),2048&t&&(s.allowedExtensions=e[11]),64&t&&(s.disabled=e[6]),4096&t&&(s.maxSize=e[12]),128&t&&(s.removelabel=e[7]),8192&t&&(s.errorLabels=e[13]),l.$set(s)},i(e){t||(u(l.$$.fragment,e),t=!0)},o(e){b(l.$$.fragment,e),t=!1},d(e){_(l,e)}}}function P(e){let l,t,i,a,x,g,v,w,_,y,E,C=e[0]&&e[8]&&e[8].length>0&&z(e),P=e[10].length>0&&S(e);return{c(){l=r("div"),t=r("input"),i=o(),a=r("label"),x=r("span"),g=n(e[3]),v=o(),C&&C.c(),w=o(),P&&P.c(),this.c=d,c(t,"id",e[1]),c(t,"name",e[2]),c(t,"type","file"),c(t,"class","mc-fileuploader__input"),c(t,"accept",e[4]),t.multiple=e[5],t.disabled=e[6],c(x,"class","mc-fileuploader__label--center"),c(a,"for",e[1]),c(a,"class","mc-fileuploader__label"),c(l,"class","mc-fileuploader")},m(r,o){s(r,l,o),p(l,t),p(l,i),p(l,a),p(a,x),p(x,g),p(l,v),C&&C.m(l,null),p(l,w),P&&P.m(l,null),e[23](l),_=!0,y||(E=f(t,"change",e[14]),y=!0)},p(e,[s]){(!_||2&s)&&c(t,"id",e[1]),(!_||4&s)&&c(t,"name",e[2]),(!_||16&s)&&c(t,"accept",e[4]),(!_||32&s)&&(t.multiple=e[5]),(!_||64&s)&&(t.disabled=e[6]),(!_||8&s)&&m(g,e[3]),(!_||2&s)&&c(a,"for",e[1]),e[0]&&e[8]&&e[8].length>0?C?(C.p(e,s),257&s&&u(C,1)):(C=z(e),C.c(),u(C,1),C.m(l,w)):C&&(k(),b(C,1,1,(()=>{C=null})),h()),e[10].length>0?P?(P.p(e,s),1024&s&&u(P,1)):(P=S(e),P.c(),u(P,1),P.m(l,null)):P&&(k(),b(P,1,1,(()=>{P=null})),h())},i(e){_||(u(C),u(P),_=!0)},o(e){b(C),b(P),_=!1},d(t){t&&$(l),C&&C.d(),P&&P.d(),e[23](null),y=!1,E()}}}function A(e,l){const t=Array.from(e),s=t.indexOf(l)
|
|
1
|
+
import{S as e,i as l,a as t,b as s,f as i,s as a,e as r,d as o,v as n,n as d,h as c,k as p,x as f,y as m,B as u,z as b,A as h,m as $,q as x,r as g,E as v,F as w,G as _,C as k,K as y}from"../../index-c222d0b7.js";import{E}from"../../EventHandler-f7ee47ca.js";import C from"./fileuploader-result.nested.js";function z(e){let l,t;return l=new C({props:{files:e[8],allowedExtensions:e[11],disabled:e[6],maxSize:e[12],removelabel:e[7],errorLabels:e[13]}}),l.$on("file-removed",e[15]),{c(){v(l.$$.fragment)},m(e,s){w(l,e,s),t=!0},p(e,t){const s={};256&t&&(s.files=e[8]),2048&t&&(s.allowedExtensions=e[11]),64&t&&(s.disabled=e[6]),4096&t&&(s.maxSize=e[12]),128&t&&(s.removelabel=e[7]),8192&t&&(s.errorLabels=e[13]),l.$set(s)},i(e){t||(u(l.$$.fragment,e),t=!0)},o(e){b(l.$$.fragment,e),t=!1},d(e){_(l,e)}}}function S(e){let l,t;return l=new C({props:{files:e[10],allowedExtensions:e[11],disabled:e[6],maxSize:e[12],removelabel:e[7],errorLabels:e[13]}}),l.$on("file-removed",e[16]),{c(){v(l.$$.fragment)},m(e,s){w(l,e,s),t=!0},p(e,t){const s={};1024&t&&(s.files=e[10]),2048&t&&(s.allowedExtensions=e[11]),64&t&&(s.disabled=e[6]),4096&t&&(s.maxSize=e[12]),128&t&&(s.removelabel=e[7]),8192&t&&(s.errorLabels=e[13]),l.$set(s)},i(e){t||(u(l.$$.fragment,e),t=!0)},o(e){b(l.$$.fragment,e),t=!1},d(e){_(l,e)}}}function P(e){let l,t,i,a,x,g,v,w,_,y,E,C=e[0]&&e[8]&&e[8].length>0&&z(e),P=e[10].length>0&&S(e);return{c(){l=r("div"),t=r("input"),i=o(),a=r("label"),x=r("span"),g=n(e[3]),v=o(),C&&C.c(),w=o(),P&&P.c(),this.c=d,c(t,"id",e[1]),c(t,"name",e[2]),c(t,"type","file"),c(t,"class","mc-fileuploader__input"),c(t,"accept",e[4]),t.multiple=e[5],t.disabled=e[6],c(x,"class","mc-fileuploader__label--center"),c(a,"for",e[1]),c(a,"class","mc-fileuploader__label"),c(l,"class","mc-fileuploader")},m(r,o){s(r,l,o),p(l,t),p(l,i),p(l,a),p(a,x),p(x,g),p(l,v),C&&C.m(l,null),p(l,w),P&&P.m(l,null),e[23](l),_=!0,y||(E=f(t,"change",e[14]),y=!0)},p(e,[s]){(!_||2&s)&&c(t,"id",e[1]),(!_||4&s)&&c(t,"name",e[2]),(!_||16&s)&&c(t,"accept",e[4]),(!_||32&s)&&(t.multiple=e[5]),(!_||64&s)&&(t.disabled=e[6]),(!_||8&s)&&m(g,e[3]),(!_||2&s)&&c(a,"for",e[1]),e[0]&&e[8]&&e[8].length>0?C?(C.p(e,s),257&s&&u(C,1)):(C=z(e),C.c(),u(C,1),C.m(l,w)):C&&(k(),b(C,1,1,(()=>{C=null})),h()),e[10].length>0?P?(P.p(e,s),1024&s&&u(P,1)):(P=S(e),P.c(),u(P,1),P.m(l,null)):P&&(k(),b(P,1,1,(()=>{P=null})),h())},i(e){_||(u(C),u(P),_=!0)},o(e){b(C),b(P),_=!1},d(t){t&&$(l),C&&C.d(),P&&P.d(),e[23](null),y=!1,E()}}}function A(e,l){const t=Array.from(e),s=t.indexOf(l);if(-1!==s&&t.splice(s,1),l instanceof File){const e=new DataTransfer;return t.forEach((l=>e.items.add(l))),e.files}return t}function M(e,l,t){let s,i,a,r,o,n,{id:d}=l,{name:c}=l,{label:p}=l,{accept:f}=l,{multiple:m=!0}=l,{allowedextensions:u}=l,{maxsize:b}=l,{displayfileslist:h=!1}=l,{disabled:$=!1}=l,{removelabel:v="Remove"}=l,{uploadedfiles:w}=l,{errorlabels:_}=l,{stateless:k}=l,{keepPrevious:C}=l,z=new E(x(),g());return e.$$set=e=>{"id"in e&&t(1,d=e.id),"name"in e&&t(2,c=e.name),"label"in e&&t(3,p=e.label),"accept"in e&&t(4,f=e.accept),"multiple"in e&&t(5,m=e.multiple),"allowedextensions"in e&&t(17,u=e.allowedextensions),"maxsize"in e&&t(18,b=e.maxsize),"displayfileslist"in e&&t(0,h=e.displayfileslist),"disabled"in e&&t(6,$=e.disabled),"removelabel"in e&&t(7,v=e.removelabel),"uploadedfiles"in e&&t(19,w=e.uploadedfiles),"errorlabels"in e&&t(20,_=e.errorlabels),"stateless"in e&&t(21,k=e.stateless),"keepPrevious"in e&&t(22,C=e.keepPrevious)},e.$$.update=()=>{131072&e.$$.dirty&&t(11,s=u?JSON.parse(u):[]),524288&e.$$.dirty&&t(10,i=w?JSON.parse(w):[]),e.$$.dirty,262144&e.$$.dirty&&t(12,a=b||void 0),1048576&e.$$.dirty&&t(13,r=_?JSON.parse(_):[])},[h,d,c,p,f,m,$,v,o,n,i,s,a,r,function(e){const l=e.target;if(C&&(null==o?void 0:o.length)>0){const e=[...o],s=[...l.files],i=new DataTransfer;e.forEach((e=>i.items.add(e))),s.forEach((e=>i.items.add(e))),t(8,o=i.files)}else t(8,o=l.files);t(0,h=!0);const i=[];[...o].forEach(((e,l)=>{const t=e.name,r=e.size,o=function(e){if(s&&s.length>0){const l=e.slice(2+(e.lastIndexOf(".")-1>>>0));if(s&&!s.includes(String(l)))return!1}return!0}(t),n=function(e){return!(a&&e/1024/1024>a)}(r);let d="";o||(d="invalid-extension"),n||(d="invalid-size"),o&&n||i.push({index:l,fileName:t,fileSize:r,errorType:d})})),i.length>0&&z.dispatch(x(),"invalid-files",i),z.dispatch("change",o);const r=n.querySelector(".mc-fileuploader__input");k?r.value="":r.files=o},function(e){t(8,o=A(o,e.detail)),n.querySelector(".mc-fileuploader__input").files=o,z.dispatch("change",o),z.dispatch("file-removed",e.detail)},function(e){const l=A(i,e.detail);t(10,i=l),z.dispatch("uploaded-file-removed",e.detail)},u,b,w,_,k,C,function(e){y[e?"unshift":"push"]((()=>{n=e,t(9,n)}))}]}class L extends e{constructor(e){super();const r=document.createElement("style");r.textContent=".mc-fileuploader{position:relative;display:block}.mc-fileuploader__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0;visibility:visible;white-space:nowrap}.mc-fileuploader__label{font-family:\"LeroyMerlin\", sans-serif;font-weight:600;cursor:pointer;border-radius:4px;text-align:center;border:2px solid transparent;-webkit-transition:all ease 200ms;transition:all ease 200ms;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;vertical-align:middle;font-size:1rem;line-height:1.375;padding:0.6875rem 1.5rem;min-height:3rem;min-width:3rem;color:#c34400;border-color:#c34400;background-color:#ffffff;margin:0;-webkit-box-shadow:none;box-shadow:none;text-decoration:none;outline:none;-webkit-box-sizing:border-box;box-sizing:border-box}.mc-fileuploader__label:hover{background-color:#ffe2bd;color:#004ea8}.mc-fileuploader__label:active{background-color:#ffbf6b;color:#00387a}.mc-fileuploader__label:active{background-color:#ffbf6b;color:#00387a}.mc-fileuploader__label:disabled{background-color:#cccccc;border-color:transparent;color:#666666;cursor:not-allowed}.mc-fileuploader__label::before{content:\"\";width:1.5rem;height:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:transparent url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1.5rem' width='1.5rem' fill='%23c34400' viewBox='0 0 24 24'%3E%3Ctitle%3EMedia_Upload_24px%3C/title%3E%3Cpath d='M8.71,7.71,11,5.41V16a1,1,0,0,0,2,0V5.41l2.29,2.3a1,1,0,0,0,1.42,0,1,1,0,0,0,0-1.42l-4-4a1,1,0,0,0-1.42,0l-4,4A1,1,0,1,0,8.71,7.71Z'/%3E%3Cpath d='M16.22,12.44a1,1,0,0,0-1.2.77,1,1,0,0,0,.76,1.19C18.55,15,20,16.17,20,17c0,1.22-3.12,3-8,3s-8-1.78-8-3c0-.83,1.45-2,4.22-2.6A1,1,0,0,0,9,13.21a1,1,0,0,0-1.2-.77C4.16,13.25,2,15,2,17c0,2.85,4.3,5,10,5s10-2.15,10-5C22,15,19.84,13.25,16.22,12.44Z'/%3E%3C/svg%3E\") no-repeat;background-size:1.5rem;margin-right:0.5rem;margin-left:-0.5rem}:focus+.mc-fileuploader__label{-webkit-box-shadow:0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #0b96cc;box-shadow:0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #0b96cc}:hover+.mc-fileuploader__label{color:#004ea8;background-color:#ffe2bd}:disabled+.mc-fileuploader__label{color:#666666;background-color:#cccccc;border-color:transparent;cursor:not-allowed}:disabled+.mc-fileuploader__label::before{background:transparent url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1.5rem' width='1.5rem' fill='%23666666' viewBox='0 0 24 24'%3E%3Ctitle%3EMedia_Upload_24px%3C/title%3E%3Cpath d='M8.71,7.71,11,5.41V16a1,1,0,0,0,2,0V5.41l2.29,2.3a1,1,0,0,0,1.42,0,1,1,0,0,0,0-1.42l-4-4a1,1,0,0,0-1.42,0l-4,4A1,1,0,1,0,8.71,7.71Z'/%3E%3Cpath d='M16.22,12.44a1,1,0,0,0-1.2.77,1,1,0,0,0,.76,1.19C18.55,15,20,16.17,20,17c0,1.22-3.12,3-8,3s-8-1.78-8-3c0-.83,1.45-2,4.22-2.6A1,1,0,0,0,9,13.21a1,1,0,0,0-1.2-.77C4.16,13.25,2,15,2,17c0,2.85,4.3,5,10,5s10-2.15,10-5C22,15,19.84,13.25,16.22,12.44Z'/%3E%3C/svg%3E\") no-repeat}",this.shadowRoot.appendChild(r),l(this,{target:this.shadowRoot,props:t(this.attributes),customElement:!0},M,P,a,{id:1,name:2,label:3,accept:4,multiple:5,allowedextensions:17,maxsize:18,displayfileslist:0,disabled:6,removelabel:7,uploadedfiles:19,errorlabels:20,stateless:21,keepPrevious:22},null),e&&(e.target&&s(e.target,this,e.anchor),e.props&&(this.$set(e.props),i()))}static get observedAttributes(){return["id","name","label","accept","multiple","allowedextensions","maxsize","displayfileslist","disabled","removelabel","uploadedfiles","errorlabels","stateless","keepPrevious"]}get id(){return this.$$.ctx[1]}set id(e){this.$$set({id:e}),i()}get name(){return this.$$.ctx[2]}set name(e){this.$$set({name:e}),i()}get label(){return this.$$.ctx[3]}set label(e){this.$$set({label:e}),i()}get accept(){return this.$$.ctx[4]}set accept(e){this.$$set({accept:e}),i()}get multiple(){return this.$$.ctx[5]}set multiple(e){this.$$set({multiple:e}),i()}get allowedextensions(){return this.$$.ctx[17]}set allowedextensions(e){this.$$set({allowedextensions:e}),i()}get maxsize(){return this.$$.ctx[18]}set maxsize(e){this.$$set({maxsize:e}),i()}get displayfileslist(){return this.$$.ctx[0]}set displayfileslist(e){this.$$set({displayfileslist:e}),i()}get disabled(){return this.$$.ctx[6]}set disabled(e){this.$$set({disabled:e}),i()}get removelabel(){return this.$$.ctx[7]}set removelabel(e){this.$$set({removelabel:e}),i()}get uploadedfiles(){return this.$$.ctx[19]}set uploadedfiles(e){this.$$set({uploadedfiles:e}),i()}get errorlabels(){return this.$$.ctx[20]}set errorlabels(e){this.$$set({errorlabels:e}),i()}get stateless(){return this.$$.ctx[21]}set stateless(e){this.$$set({stateless:e}),i()}get keepPrevious(){return this.$$.ctx[22]}set keepPrevious(e){this.$$set({keepPrevious:e}),i()}}export{L as default};
|
|
2
2
|
//# sourceMappingURL=FileUploader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileUploader.js","sources":["../../../../src/components/fileuploader/FileUploader.svelte"],"sourcesContent":["<svelte:options tag={null} />\n\n<script lang=\"ts\">\n // @ts-nocheck\n import {\n get_current_component,\n createEventDispatcher,\n } from 'svelte/internal';\n import { EventHandler } from '../../utilities/EventHandler';\n import ResultFile from './fileuploader-result.nested.svelte';\n\n export let id: string;\n export let name: string;\n export let label: string;\n export let accept: string;\n export let multiple = true;\n export let allowedextensions: string;\n export let maxsize: number;\n export let displayfileslist = false;\n export let disabled = false;\n export let removelabel = 'Remove';\n export let uploadedfiles: string;\n export let errorlabels: string;\n export let stateless: false;\n export let keepPrevious: boolean;\n\n let files: FileList;\n let root: HTMLElement;\n let eventHandler = new EventHandler(\n get_current_component(),\n createEventDispatcher(),\n );\n\n $: allowedExtensions = allowedextensions ? JSON.parse(allowedextensions) : [];\n $: uploadedFiles = uploadedfiles ? JSON.parse(uploadedfiles) : [];\n $: files;\n $: maxSize = maxsize ? maxsize : undefined;\n $: errorLabels = errorlabels ? JSON.parse(errorlabels) : [];\n\n function checkFileSize(fileSize: number): boolean {\n const fileSizeMB = fileSize / 1024 / 1024; // in MB\n if (maxSize && fileSizeMB > maxSize) {\n return false; // invalid\n }\n\n return true; // valid\n }\n function checkFileExtension(fileName: string): boolean {\n if (allowedExtensions && allowedExtensions.length > 0) {\n const extension: string = fileName.slice(\n ((fileName.lastIndexOf('.') - 1) >>> 0) + 2,\n );\n if (allowedExtensions && !allowedExtensions.includes(String(extension))) {\n return false; // invalid\n }\n }\n\n return true; // valid\n }\n function handleChange(e: Event): void {\n const target = e.target as HTMLInputElement;\n\n if(keepPrevious && files?.length > 0){\n const previousSelection: File[] = [...files]\n const newSelection: File[] = [...target.files as FileList]\n const dataTransfer: DataTransfer = new DataTransfer()\n previousSelection.forEach((item) => dataTransfer.items.add(item))\n newSelection.forEach((item) => dataTransfer.items.add(item))\n\n files = dataTransfer.files\n\n } else {\n files = target.files as FileList;\n }\n\n displayfileslist = true;\n const invalidFiles: Array<any> = [];\n const fileList = [...files];\n\n fileList.forEach((file, index) => {\n const fileName = file.name;\n const fileSize = file.size;\n const validExtension = checkFileExtension(fileName);\n const validSize = checkFileSize(fileSize);\n let errorType = '';\n\n if (!validExtension) {\n errorType = 'invalid-extension';\n }\n\n if (!validSize) {\n errorType = 'invalid-size';\n }\n\n if (!validExtension || !validSize) {\n invalidFiles.push({\n index: index,\n fileName: fileName,\n fileSize: fileSize,\n errorType: errorType,\n });\n }\n });\n\n if (invalidFiles.length > 0) {\n eventHandler.dispatch(\n get_current_component(),\n 'invalid-files',\n invalidFiles,\n );\n }\n eventHandler.dispatch('change', files);\n\n const fileuploader = root.querySelector(\n '.mc-fileuploader__input',\n ) as HTMLInputElement;\n if (stateless) {\n fileuploader.value = '';\n } else {\n fileuploader.files = files\n }\n }\n\n function removeFromArray(fileList: FileList, value: File): FileList {\n const array = Array.from(fileList);\n const idx = array.indexOf(value);\n if (idx !== -1) {\n array.splice(idx, 1);\n }\n\n const dataTransfer: DataTransfer = new DataTransfer()\n
|
|
1
|
+
{"version":3,"file":"FileUploader.js","sources":["../../../../src/components/fileuploader/FileUploader.svelte"],"sourcesContent":["<svelte:options tag={null} />\n\n<script lang=\"ts\">\n // @ts-nocheck\n import {\n get_current_component,\n createEventDispatcher,\n } from 'svelte/internal';\n import { EventHandler } from '../../utilities/EventHandler';\n import ResultFile from './fileuploader-result.nested.svelte';\n\n export let id: string;\n export let name: string;\n export let label: string;\n export let accept: string;\n export let multiple = true;\n export let allowedextensions: string;\n export let maxsize: number;\n export let displayfileslist = false;\n export let disabled = false;\n export let removelabel = 'Remove';\n export let uploadedfiles: string;\n export let errorlabels: string;\n export let stateless: false;\n export let keepPrevious: boolean;\n\n let files: FileList;\n let root: HTMLElement;\n let eventHandler = new EventHandler(\n get_current_component(),\n createEventDispatcher(),\n );\n\n $: allowedExtensions = allowedextensions ? JSON.parse(allowedextensions) : [];\n $: uploadedFiles = uploadedfiles ? JSON.parse(uploadedfiles) : [];\n $: files;\n $: maxSize = maxsize ? maxsize : undefined;\n $: errorLabels = errorlabels ? JSON.parse(errorlabels) : [];\n\n function checkFileSize(fileSize: number): boolean {\n const fileSizeMB = fileSize / 1024 / 1024; // in MB\n if (maxSize && fileSizeMB > maxSize) {\n return false; // invalid\n }\n\n return true; // valid\n }\n function checkFileExtension(fileName: string): boolean {\n if (allowedExtensions && allowedExtensions.length > 0) {\n const extension: string = fileName.slice(\n ((fileName.lastIndexOf('.') - 1) >>> 0) + 2,\n );\n if (allowedExtensions && !allowedExtensions.includes(String(extension))) {\n return false; // invalid\n }\n }\n\n return true; // valid\n }\n function handleChange(e: Event): void {\n const target = e.target as HTMLInputElement;\n\n if(keepPrevious && files?.length > 0){\n const previousSelection: File[] = [...files]\n const newSelection: File[] = [...target.files as FileList]\n const dataTransfer: DataTransfer = new DataTransfer()\n previousSelection.forEach((item) => dataTransfer.items.add(item))\n newSelection.forEach((item) => dataTransfer.items.add(item))\n\n files = dataTransfer.files\n\n } else {\n files = target.files as FileList;\n }\n\n displayfileslist = true;\n const invalidFiles: Array<any> = [];\n const fileList = [...files];\n\n fileList.forEach((file, index) => {\n const fileName = file.name;\n const fileSize = file.size;\n const validExtension = checkFileExtension(fileName);\n const validSize = checkFileSize(fileSize);\n let errorType = '';\n\n if (!validExtension) {\n errorType = 'invalid-extension';\n }\n\n if (!validSize) {\n errorType = 'invalid-size';\n }\n\n if (!validExtension || !validSize) {\n invalidFiles.push({\n index: index,\n fileName: fileName,\n fileSize: fileSize,\n errorType: errorType,\n });\n }\n });\n\n if (invalidFiles.length > 0) {\n eventHandler.dispatch(\n get_current_component(),\n 'invalid-files',\n invalidFiles,\n );\n }\n eventHandler.dispatch('change', files);\n\n const fileuploader = root.querySelector(\n '.mc-fileuploader__input',\n ) as HTMLInputElement;\n if (stateless) {\n fileuploader.value = '';\n } else {\n fileuploader.files = files\n }\n }\n\n function removeFromArray(fileList: FileList, value: File): FileList {\n const array = Array.from(fileList);\n const idx = array.indexOf(value);\n if (idx !== -1) {\n array.splice(idx, 1);\n }\n \n if(value instanceof File) {\n const dataTransfer: DataTransfer = new DataTransfer()\n array.forEach((item) => dataTransfer.items.add(item))\n return dataTransfer.files\n }\n else {\n return array\n }\n }\n\n function deleteFile(e: CustomEvent): void {\n files = removeFromArray(files, e.detail);\n const fileuploader = root.querySelector(\n '.mc-fileuploader__input',\n ) as HTMLInputElement;\n fileuploader.files = files;\n\n eventHandler.dispatch('change', files);\n eventHandler.dispatch('file-removed', e.detail);\n }\n\n function deleteUploadedFile(e: CustomEvent): void {\n const files = removeFromArray(uploadedFiles, e.detail);\n uploadedFiles = files;\n eventHandler.dispatch('uploaded-file-removed', e.detail);\n }\n\n function hasInvalidFiles(e: CustomEvent): void {\n eventHandler.dispatch('invalid-files', e.detail);\n }\n</script>\n\n<div class=\"mc-fileuploader\" bind:this={root}>\n <input\n {id}\n {name}\n type=\"file\"\n class=\"mc-fileuploader__input\"\n {accept}\n {multiple}\n {disabled}\n on:change={handleChange}\n />\n <label for={id} class=\"mc-fileuploader__label\">\n <span class=\"mc-fileuploader__label--center\">\n {label}\n </span>\n </label>\n {#if displayfileslist && files && files.length > 0}\n <ResultFile\n {files}\n {allowedExtensions}\n {disabled}\n {maxSize}\n {removelabel}\n {errorLabels}\n on:file-removed={deleteFile}\n />\n {/if}\n {#if uploadedFiles.length > 0}\n <ResultFile\n files={uploadedFiles}\n {allowedExtensions}\n {disabled}\n {maxSize}\n {removelabel}\n {errorLabels}\n on:file-removed={deleteUploadedFile}\n />\n {/if}\n</div>\n\n<style lang=\"scss\">\n @import '@mozaic-ds/styles/settings-tools/all-settings';\n @import '@mozaic-ds/styles/components/c.file-uploader';\n</style>\n"],"names":["ctx","if_block0","length","create_if_block_1","create_if_block","insert","target","div","anchor","append","input","label_1","span","removeFromArray","fileList","value","array","Array","from","idx","indexOf","splice","File","dataTransfer","DataTransfer","forEach","item","items","add","files","root","id","$$props","name","label","accept","multiple","allowedextensions","maxsize","displayfileslist","disabled","removelabel","uploadedfiles","errorlabels","stateless","keepPrevious","eventHandler","EventHandler","get_current_component","createEventDispatcher","$$invalidate","allowedExtensions","JSON","parse","uploadedFiles","maxSize","undefined","errorLabels","e","previousSelection","newSelection","invalidFiles","file","index","fileName","fileSize","size","validExtension","extension","slice","lastIndexOf","includes","String","checkFileExtension","validSize","checkFileSize","errorType","push","dispatch","fileuploader","querySelector","detail","$$value"],"mappings":"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"}
|
|
@@ -127,11 +127,15 @@
|
|
|
127
127
|
if (idx !== -1) {
|
|
128
128
|
array.splice(idx, 1);
|
|
129
129
|
}
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
130
|
+
|
|
131
|
+
if(value instanceof File) {
|
|
132
|
+
const dataTransfer: DataTransfer = new DataTransfer()
|
|
133
|
+
array.forEach((item) => dataTransfer.items.add(item))
|
|
134
|
+
return dataTransfer.files
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
return array
|
|
138
|
+
}
|
|
135
139
|
}
|
|
136
140
|
|
|
137
141
|
function deleteFile(e: CustomEvent): void {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{H as e,i as t,s as l,I as s,e as n,h as i,M as o,t as a,b,n as c,m as r,q as d,r as m,V as v,a0 as k,v as x,k as h,y as u,d as p,N as _,R as f,x as g,P as w,a1 as y}from"../../index-c222d0b7.js";import{E}from"../../EventHandler-f7ee47ca.js";function C(e){s(e,"svelte-110k7bn",".mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn{font-family:\"LeroyMerlin\", sans-serif;font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;margin:0;-webkit-box-shadow:none;box-shadow:none;border:none;min-width:20px;min-height:20px;width:1.25rem;height:1.25rem;border-radius:4px;border:2px solid #808080;background-color:#ffffff;position:relative;-webkit-transition:all 200ms ease;transition:all 200ms ease;cursor:pointer}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn::-ms-check{background-color:#ffffff;border:2px solid #808080;border-radius:4px;color:#002a5b}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:hover{border-color:#191919}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:hover::-ms-check{border-color:#191919}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:focus{-webkit-box-shadow:0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #0b96cc;box-shadow:0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #0b96cc}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:focus::-ms-check{box-shadow:0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #0b96cc}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:checked,.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:indeterminate{background-color:#ff941a;border-color:#ff941a;background-size:1rem 1rem}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:checked{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' fill='%23002a5b' viewBox='0 0 16 16'%3E%3Cpath d='M7.63 11.21a1 1 0 0 1-1.38 0l-2.92-2.6a1 1 0 1 1 1.34-1.48l2.22 2 4.41-4.34a1 1 0 1 1 1.4 1.42z'/%3E%3C/svg%3E\");background-position:center center}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:checked::-ms-check{background-color:#ff941a;border-color:#ff941a}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:checked:hover:not(:disabled){border-color:#ef7f00}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:checked:hover:not(:disabled)::-ms-check{border-color:#ef7f00}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:indeterminate{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' fill='%23002a5b' viewBox='0 0 16 16'%3E%3Cpath d='M12 9H4a1 1 0 010-2h8a1 1 0 010 2z'/%3E%3C/svg%3E\")}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:disabled{background-color:#e6e6e6;border-color:#e6e6e6;cursor:not-allowed}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:disabled::-ms-check{background-color:#e6e6e6;border-color:#e6e6e6}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:disabled:checked{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' fill='%23999999' viewBox='0 0 16 16'%3E%3Cpath d='M7.63 11.21a1 1 0 0 1-1.38 0l-2.92-2.6a1 1 0 1 1 1.34-1.48l2.22 2 4.41-4.34a1 1 0 1 1 1.4 1.42z'/%3E%3C/svg%3E\")}.mc-checkbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:disabled:indeterminate{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' fill='%23999999' viewBox='0 0 16 16'%3E%3Cpath d='M12 9H4a1 1 0 010-2h8a1 1 0 010 2z'/%3E%3C/svg%3E\")}.mc-listbox.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn{background-color:#ffffff;border:1px solid #666666;border-radius:3px;overflow-y:auto;max-width:var(--listbox-maxwidth, none);width:var(--listbox-width, auto)}.mc-listbox.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn::-webkit-scrollbar{background-color:#e6e6e6;width:0.25rem}.mc-listbox.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn::-webkit-scrollbar-thumb{background:#666666}.mc-listbox__list.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn{list-style:none;margin-left:0;padding-left:0;margin-top:0;margin-right:0;margin-bottom:0}.mc-listbox__tile.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;gap:0.5rem;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;padding-left:0.75rem;padding-right:0.75rem;position:relative}.mc-listbox__tile.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:not(.mc-listbox__tile--empty):not(.is-disabled):hover,.mc-listbox__tile.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:has(.mc-listbox__input:focus),.mc-listbox__tile.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn:has(.mc-listbox__label:focus){background-color:#e6e6e6;-webkit-box-shadow:inset 9px 0 0 -7px #191919;box-shadow:inset 9px 0 0 -7px #191919}.mc-listbox__tile--empty.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn{color:#666666;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mc-listbox__tile--empty.svelte-110k7bn .mc-listbox__label.svelte-110k7bn.svelte-110k7bn{cursor:default}.mc-listbox__tile.is-disabled.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn{-webkit-box-shadow:none;box-shadow:none;background-color:#cccccc;color:#666666;pointer-events:none}.mc-listbox__label.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn{font-size:1rem;line-height:1.375;color:currentColor;cursor:pointer;white-space:nowrap;outline:transparent}.mc-listbox__label.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn::after{content:\"\";position:absolute;inset:0;z-index:var(--listbox-label-z-index, 2)}.mc-listbox__input.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn{margin-left:auto;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.mc-listbox.svelte-110k7bn:not(.mc-listbox--multi) .mc-listbox__input.svelte-110k7bn.svelte-110k7bn{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.mc-listbox--options.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn{max-height:13.8125rem;min-width:var(--listbox-minwidth, 6rem)}.mc-listbox--options.svelte-110k7bn .mc-listbox__tile.svelte-110k7bn.svelte-110k7bn{height:3rem}.mc-listbox--options.svelte-110k7bn .mc-listbox__tile.svelte-110k7bn.svelte-110k7bn:not(:last-child){border-bottom:1px solid #b3b3b3}.mc-listbox--options.svelte-110k7bn .mc-listbox__tile.is-selected .mc-listbox__label.svelte-110k7bn.svelte-110k7bn::before{visibility:visible}.mc-listbox--options.svelte-110k7bn .mc-listbox__tile.is-selected.is-disabled .mc-listbox__label.svelte-110k7bn.svelte-110k7bn::before{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666666' height='1.5rem' width='1.5rem'%3E%3Cpath d='M10 18.68a1 1 0 01-.7-.29l-5-5A1 1 0 015.73 12L10 16.27 18.31 8a1 1 0 011.42 1.42l-9 9a1 1 0 01-.73.26z'/%3E%3C/svg%3E\")}.mc-listbox--options.svelte-110k7bn .mc-listbox__input.svelte-110k7bn:checked+.mc-listbox__label.svelte-110k7bn::before{visibility:visible}.mc-listbox--options.svelte-110k7bn .mc-listbox__input.svelte-110k7bn:checked:disabled+.mc-listbox__label.svelte-110k7bn::before{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666666' height='1.5rem' width='1.5rem'%3E%3Cpath d='M10 18.68a1 1 0 01-.7-.29l-5-5A1 1 0 015.73 12L10 16.27 18.31 8a1 1 0 011.42 1.42l-9 9a1 1 0 01-.73.26z'/%3E%3C/svg%3E\")}.mc-listbox--options.svelte-110k7bn .mc-listbox__label.svelte-110k7bn.svelte-110k7bn::before{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23191919' height='1.5rem' width='1.5rem'%3E%3Cpath d='M10 18.68a1 1 0 01-.7-.29l-5-5A1 1 0 015.73 12L10 16.27 18.31 8a1 1 0 011.42 1.42l-9 9a1 1 0 01-.73.26z'/%3E%3C/svg%3E\");background-position:center;background-repeat:no-repeat;background-size:1.5rem;content:\"\";height:1.5rem;position:absolute;right:0.75rem;top:0;-webkit-transform:translateY(50%);-ms-transform:translateY(50%);transform:translateY(50%);width:1.5rem;visibility:hidden}.mc-listbox--overlay.svelte-110k7bn.svelte-110k7bn.svelte-110k7bn{position:absolute;z-index:var(--listbox-overlay-z-index, 10)}")}function z(e,t,l){const s=e.slice();return s[30]=t[l],s[32]=l,s}function $(e){let t,l,s;return{c(){t=n("div"),l=n("span"),s=x(e[4]),i(l,"class","mc-listbox__label svelte-110k7bn"),i(t,"class","mc-listbox__tile mc-listbox__tile--empty svelte-110k7bn")},m(e,n){b(e,t,n),h(t,l),h(l,s)},p(e,t){16&t[0]&&u(s,e[4])},d(e){e&&r(t)}}}function B(e){let t,l,s,o,a=e[2]&&e[9]&&M(e),c=e[14],d=[];for(let t=0;t<c.length;t+=1)d[t]=j(z(e,c,t));return{c(){t=n("ul"),a&&a.c(),l=p();for(let e=0;e<d.length;e+=1)d[e].c();i(t,"role","listbox"),i(t,"class","mc-listbox__list svelte-110k7bn"),i(t,"aria-labelledby","listbox")},m(n,i){b(n,t,i),a&&a.m(t,null),h(t,l);for(let e=0;e<d.length;e+=1)d[e]&&d[e].m(t,null);s||(o=_(e[18].call(null,t)),s=!0)},p(e,s){if(e[2]&&e[9]?a?a.p(e,s):(a=M(e),a.c(),a.m(t,l)):a&&(a.d(1),a=null),147687&s[0]){let l;for(c=e[14],l=0;l<c.length;l+=1){const n=z(e,c,l);d[l]?d[l].p(n,s):(d[l]=j(n),d[l].c(),d[l].m(t,null))}for(;l<d.length;l+=1)d[l].d(1);d.length=c.length}},d(e){e&&r(t),a&&a.d(),f(d,e),s=!1,o()}}}function M(e){let t,l,s,o,a,c,d;return{c(){t=n("li"),l=n("input"),s=p(),o=n("label"),a=x(e[10]),i(l,"id","select-all"),i(l,"class","mc-listbox__input mc-checkbox__input svelte-110k7bn"),i(l,"type","checkbox"),l.indeterminate=e[16],i(o,"for","select-all"),i(o,"class","mc-listbox__label svelte-110k7bn"),i(t,"class","mc-listbox__tile svelte-110k7bn")},m(n,i){b(n,t,i),h(t,l),l.checked=e[15],h(t,s),h(t,o),h(o,a),c||(d=[g(l,"change",e[23]),g(l,"change",e[19])],c=!0)},p(e,t){65536&t[0]&&(l.indeterminate=e[16]),32768&t[0]&&(l.checked=e[15]),1024&t[0]&&u(a,e[10])},d(e){e&&r(t),c=!1,w(d)}}}function H(e){let t,l,s,o,a,c,d,m=!1;return a=y(e[25][0]),{c(){t=n("input"),i(t,"id",e[17](e[32])),i(t,"class","mc-listbox__input mc-checkbox__input svelte-110k7bn"),i(t,"type","checkbox"),t.__value=l=e[30][e[6]],t.value=t.__value,t.checked=s=e[0].includes(e[30][e[6]]),t.disabled=o=Boolean(e[30][e[7]]),a.p(t)},m(l,s){b(l,t,s),t.checked=~(e[0]||[]).indexOf(t.__value),c||(d=[g(t,"change",e[26]),g(t,"change",e[22])],c=!0)},p(e,n){16448&n[0]&&l!==(l=e[30][e[6]])&&(t.__value=l,t.value=t.__value,m=!0),16449&n[0]&&s!==(s=e[0].includes(e[30][e[6]]))&&(t.checked=s),16512&n[0]&&o!==(o=Boolean(e[30][e[7]]))&&(t.disabled=o),(m||16385&n[0])&&(t.checked=~(e[0]||[]).indexOf(t.__value))},d(e){e&&r(t),a.r(),c=!1,w(d)}}}function L(e){let t,l,s,o,c,d,m=!1;return o=y(e[25][0]),{c(){t=n("input"),i(t,"id",e[17](e[32])),i(t,"class","mc-listbox__input svelte-110k7bn"),i(t,"type","radio"),t.__value=l=e[30][e[6]],t.value=t.__value,i(t,"name",e[1]),t.disabled=s=Boolean(e[30][e[7]]),a(t,"is-disabled",e[30][e[7]]),o.p(t)},m(l,s){b(l,t,s),t.checked=t.__value===e[0],c||(d=[g(t,"change",e[24]),g(t,"change",e[21])],c=!0)},p(e,n){16448&n[0]&&l!==(l=e[30][e[6]])&&(t.__value=l,t.value=t.__value,m=!0),2&n[0]&&i(t,"name",e[1]),16512&n[0]&&s!==(s=Boolean(e[30][e[7]]))&&(t.disabled=s),(m||16385&n[0])&&(t.checked=t.__value===e[0]),16512&n[0]&&a(t,"is-disabled",e[30][e[7]])},d(e){e&&r(t),o.r(),c=!1,w(d)}}}function j(e){let t,l,s,o,c,d=e[30][e[5]]+"";function m(e,t){return e[2]?H:L}let v=m(e),k=v(e);return{c(){t=n("li"),k.c(),l=p(),s=n("label"),o=x(d),c=p(),i(s,"for",e[17](e[32])),i(s,"class","mc-listbox__label svelte-110k7bn"),i(t,"class","mc-listbox__tile svelte-110k7bn"),a(t,"is-disabled",e[30][e[7]])},m(e,n){b(e,t,n),k.m(t,null),h(t,l),h(t,s),h(s,o),h(t,c)},p(e,s){v===(v=m(e))&&k?k.p(e,s):(k.d(1),k=v(e),k&&(k.c(),k.m(t,l))),16416&s[0]&&d!==(d=e[30][e[5]]+"")&&u(o,d),16512&s[0]&&a(t,"is-disabled",e[30][e[7]])},d(e){e&&r(t),k.d()}}}function O(e){let t;function l(e,t){return e[3]?$:B}let s=l(e),d=s(e);return{c(){t=n("div"),d.c(),i(t,"class","mc-listbox svelte-110k7bn"),o(t,"--listbox-maxwidth",e[8]),o(t,"--listbox-width",e[12]),o(t,"--listbox-minwidth",e[12]),a(t,"mc-listbox--options","options"===e[13]),a(t,"mc-listbox--multi",e[2]),a(t,"mc-listbox--overlay",e[11])},m(e,l){b(e,t,l),d.m(t,null)},p(e,n){s===(s=l(e))&&d?d.p(e,n):(d.d(1),d=s(e),d&&(d.c(),d.m(t,null))),256&n[0]&&o(t,"--listbox-maxwidth",e[8]),4096&n[0]&&o(t,"--listbox-width",e[12]),4096&n[0]&&o(t,"--listbox-minwidth",e[12]),8192&n[0]&&a(t,"mc-listbox--options","options"===e[13]),4&n[0]&&a(t,"mc-listbox--multi",e[2]),2048&n[0]&&a(t,"mc-listbox--overlay",e[11])},i:c,o:c,d(e){e&&r(t),d.d()}}}function A(e,t,l){let s,n,i;const o=Math.random();let{name:a=`listboxradio-${o}`}=t,{items:b}=t,{value:c}=t,{multiple:r}=t,{isfiltered:x}=t,{emptysearchlabel:h="No results found"}=t,{datatextexpr:u="label"}=t,{datavalueexpr:p="value"}=t,{datadisabledexpr:_="disabled"}=t,{maxwidth:f}=t,{selectall:g=!1}=t,{labelselectall:w="Select all"}=t,{overlay:y}=t,{width:C}=t,{type:z="options"}=t,$=new E(d(),m());const B=[[]];return e.$$set=e=>{"name"in e&&l(1,a=e.name),"items"in e&&l(20,b=e.items),"value"in e&&l(0,c=e.value),"multiple"in e&&l(2,r=e.multiple),"isfiltered"in e&&l(3,x=e.isfiltered),"emptysearchlabel"in e&&l(4,h=e.emptysearchlabel),"datatextexpr"in e&&l(5,u=e.datatextexpr),"datavalueexpr"in e&&l(6,p=e.datavalueexpr),"datadisabledexpr"in e&&l(7,_=e.datadisabledexpr),"maxwidth"in e&&l(8,f=e.maxwidth),"selectall"in e&&l(9,g=e.selectall),"labelselectall"in e&&l(10,w=e.labelselectall),"overlay"in e&&l(11,y=e.overlay),"width"in e&&l(12,C=e.width),"type"in e&&l(13,z=e.type)},e.$$.update=()=>{512&e.$$.dirty[0]&&l(15,s=null!=g&&g),1048576&e.$$.dirty[0]&&l(14,n=b?JSON.parse(b):[]),1&e.$$.dirty[0]&&l(0,c=c?(l(15,s=!1),l(16,i=!1),c&&0===c.length?(l(15,s=!1),l(16,i=!1)):c&&c.length<n.length?l(16,i=!0):c&&c.length===n.length&&l(15,s=!0),c):[])},l(16,i=!0),[c,a,r,x,h,u,p,_,f,g,w,y,C,z,n,s,i,function(e){return`listboxItem-${e+o}`},function(e){e.addEventListener("scroll",(()=>{e.offsetHeight+e.scrollTop>=e.scrollHeight&&$.dispatch("scrollend",{})}))},function(e){const t=e.target.checked;l(15,s=!!t),s?n.map((e=>{e[_]||-1!==c.indexOf(e[p])||c.push(e[p])})):l(0,c=[]),$.dispatch("select-all",c),l(0,c)},b,function(t){v.call(this,e,t)},function(t){v.call(this,e,t)},function(){s=this.checked,l(15,s),l(9,g)},function(){c=this.__value,l(0,c)},B,function(){c=k(B[0],this.__value,this.checked),l(0,c)}]}class N extends e{constructor(e){super(),t(this,e,A,O,l,{name:1,items:20,value:0,multiple:2,isfiltered:3,emptysearchlabel:4,datatextexpr:5,datavalueexpr:6,datadisabledexpr:7,maxwidth:8,selectall:9,labelselectall:10,overlay:11,width:12,type:13},C,[-1,-1])}}export{N as default};
|
|
1
|
+
import{H as e,i as t,s,I as l,e as a,h as i,M as o,t as c,b as n,n as r,m as p,q as b,r as d,V as m,a0 as v,v as x,k as h,y as u,d as _,N as j,R as f,x as g,P as w,a1 as k}from"../../index-c222d0b7.js";import{E as y}from"../../EventHandler-f7ee47ca.js";function z(e){l(e,"svelte-38jpas",".mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas{font-family:\"LeroyMerlin\", sans-serif;font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;margin:0;-webkit-box-shadow:none;box-shadow:none;border:none;min-width:20px;min-height:20px;width:1.25rem;height:1.25rem;border-radius:4px;border:2px solid #808080;background-color:#ffffff;position:relative;-webkit-transition:all 200ms ease;transition:all 200ms ease;cursor:pointer}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas::-ms-check{background-color:#ffffff;border:2px solid #808080;border-radius:4px;color:#002a5b}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:hover{border-color:#191919}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:hover::-ms-check{border-color:#191919}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:focus{-webkit-box-shadow:0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #0b96cc;box-shadow:0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #0b96cc}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:focus::-ms-check{box-shadow:0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #0b96cc}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:checked,.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:indeterminate{background-color:#ff941a;border-color:#ff941a;background-size:1rem 1rem}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:checked{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' fill='%23002a5b' viewBox='0 0 16 16'%3E%3Cpath d='M7.63 11.21a1 1 0 0 1-1.38 0l-2.92-2.6a1 1 0 1 1 1.34-1.48l2.22 2 4.41-4.34a1 1 0 1 1 1.4 1.42z'/%3E%3C/svg%3E\");background-position:center center}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:checked::-ms-check{background-color:#ff941a;border-color:#ff941a}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:checked:hover:not(:disabled){border-color:#ef7f00}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:checked:hover:not(:disabled)::-ms-check{border-color:#ef7f00}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:indeterminate{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' fill='%23002a5b' viewBox='0 0 16 16'%3E%3Cpath d='M12 9H4a1 1 0 010-2h8a1 1 0 010 2z'/%3E%3C/svg%3E\")}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:disabled{background-color:#e6e6e6;border-color:#e6e6e6;cursor:not-allowed}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:disabled::-ms-check{background-color:#e6e6e6;border-color:#e6e6e6}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:disabled:checked{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' fill='%23999999' viewBox='0 0 16 16'%3E%3Cpath d='M7.63 11.21a1 1 0 0 1-1.38 0l-2.92-2.6a1 1 0 1 1 1.34-1.48l2.22 2 4.41-4.34a1 1 0 1 1 1.4 1.42z'/%3E%3C/svg%3E\")}.mc-checkbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas:disabled:indeterminate{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' fill='%23999999' viewBox='0 0 16 16'%3E%3Cpath d='M12 9H4a1 1 0 010-2h8a1 1 0 010 2z'/%3E%3C/svg%3E\")}.mc-listbox.svelte-38jpas.svelte-38jpas.svelte-38jpas{background-color:#ffffff;border:1px solid #666666;border-radius:3px;overflow-y:auto;max-width:var(--listbox-maxwidth, none);width:var(--listbox-width, auto)}.mc-listbox.svelte-38jpas.svelte-38jpas.svelte-38jpas::-webkit-scrollbar{background-color:#e6e6e6;width:0.25rem}.mc-listbox.svelte-38jpas.svelte-38jpas.svelte-38jpas::-webkit-scrollbar-thumb{background:#666666}.mc-listbox__list.svelte-38jpas.svelte-38jpas.svelte-38jpas{list-style:none;margin-left:0;padding-left:0;margin-top:0;margin-right:0;margin-bottom:0}.mc-listbox__tile.svelte-38jpas.svelte-38jpas.svelte-38jpas{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;gap:0.5rem;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;padding-left:0.75rem;padding-right:0.75rem;position:relative}.mc-listbox__tile.svelte-38jpas.svelte-38jpas.svelte-38jpas:not(.mc-listbox__tile--empty):not(.is-disabled):hover,.mc-listbox__tile.svelte-38jpas.svelte-38jpas.svelte-38jpas:has(.mc-listbox__input:focus),.mc-listbox__tile.svelte-38jpas.svelte-38jpas.svelte-38jpas:has(.mc-listbox__label:focus){background-color:#e6e6e6;-webkit-box-shadow:inset 9px 0 0 -7px #191919;box-shadow:inset 9px 0 0 -7px #191919}.mc-listbox__tile--empty.svelte-38jpas.svelte-38jpas.svelte-38jpas{color:#666666;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mc-listbox__tile--empty.svelte-38jpas .mc-listbox__label.svelte-38jpas.svelte-38jpas{cursor:default}.mc-listbox__tile.is-disabled.svelte-38jpas.svelte-38jpas.svelte-38jpas{-webkit-box-shadow:none;box-shadow:none;background-color:#cccccc;color:#666666;pointer-events:none}.mc-listbox__label.svelte-38jpas.svelte-38jpas.svelte-38jpas{font-size:1rem;line-height:1.375;color:currentColor;cursor:pointer;white-space:nowrap;outline:transparent}.mc-listbox__label.svelte-38jpas.svelte-38jpas.svelte-38jpas::after{content:\"\";position:absolute;inset:0;z-index:var(--listbox-label-z-index, 2)}.mc-listbox__input.svelte-38jpas.svelte-38jpas.svelte-38jpas{margin-left:auto;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.mc-listbox.svelte-38jpas:not(.mc-listbox--multi) .mc-listbox__input.svelte-38jpas.svelte-38jpas{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.mc-listbox--options.svelte-38jpas.svelte-38jpas.svelte-38jpas{max-height:13.8125rem;min-width:var(--listbox-minwidth, 6rem)}.mc-listbox--options.svelte-38jpas .mc-listbox__tile.svelte-38jpas.svelte-38jpas{height:3rem}.mc-listbox--options.svelte-38jpas .mc-listbox__tile.svelte-38jpas.svelte-38jpas:not(:last-child){border-bottom:1px solid #b3b3b3}.mc-listbox--options.svelte-38jpas .mc-listbox__tile.is-selected .mc-listbox__label.svelte-38jpas.svelte-38jpas::before{visibility:visible}.mc-listbox--options.svelte-38jpas .mc-listbox__tile.is-selected.is-disabled .mc-listbox__label.svelte-38jpas.svelte-38jpas::before{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666666' height='1.5rem' width='1.5rem'%3E%3Cpath d='M10 18.68a1 1 0 01-.7-.29l-5-5A1 1 0 015.73 12L10 16.27 18.31 8a1 1 0 011.42 1.42l-9 9a1 1 0 01-.73.26z'/%3E%3C/svg%3E\")}.mc-listbox--options.svelte-38jpas .mc-listbox__input.svelte-38jpas:checked+.mc-listbox__label.svelte-38jpas::before{visibility:visible}.mc-listbox--options.svelte-38jpas .mc-listbox__input.svelte-38jpas:checked:disabled+.mc-listbox__label.svelte-38jpas::before{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666666' height='1.5rem' width='1.5rem'%3E%3Cpath d='M10 18.68a1 1 0 01-.7-.29l-5-5A1 1 0 015.73 12L10 16.27 18.31 8a1 1 0 011.42 1.42l-9 9a1 1 0 01-.73.26z'/%3E%3C/svg%3E\")}.mc-listbox--options.svelte-38jpas .mc-listbox__label.svelte-38jpas.svelte-38jpas::before{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23191919' height='1.5rem' width='1.5rem'%3E%3Cpath d='M10 18.68a1 1 0 01-.7-.29l-5-5A1 1 0 015.73 12L10 16.27 18.31 8a1 1 0 011.42 1.42l-9 9a1 1 0 01-.73.26z'/%3E%3C/svg%3E\");background-position:center;background-repeat:no-repeat;background-size:1.5rem;content:\"\";height:1.5rem;position:absolute;right:0.75rem;top:0;-webkit-transform:translateY(50%);-ms-transform:translateY(50%);transform:translateY(50%);width:1.5rem;visibility:hidden}.mc-listbox--overlay.svelte-38jpas.svelte-38jpas.svelte-38jpas{position:absolute;z-index:var(--listbox-overlay-z-index, 10)}.mc-listbox__tile--auto-size.svelte-38jpas.svelte-38jpas.svelte-38jpas{height:auto !important;min-height:3rem}.mc-listbox__label--no-overflow.svelte-38jpas.svelte-38jpas.svelte-38jpas{white-space:break-spaces}")}function E(e,t,s){const l=e.slice();return l[31]=t[s],l[33]=s,l}function C(e){let t,s,l;return{c(){t=a("div"),s=a("span"),l=x(e[4]),i(s,"class","mc-listbox__label svelte-38jpas"),i(t,"class","mc-listbox__tile mc-listbox__tile--empty svelte-38jpas")},m(e,a){n(e,t,a),h(t,s),h(s,l)},p(e,t){16&t[0]&&u(l,e[4])},d(e){e&&p(t)}}}function $(e){let t,s,l,o,c=e[2]&&e[9]&&B(e),r=e[15],b=[];for(let t=0;t<r.length;t+=1)b[t]=L(E(e,r,t));return{c(){t=a("ul"),c&&c.c(),s=_();for(let e=0;e<b.length;e+=1)b[e].c();i(t,"role","listbox"),i(t,"class","mc-listbox__list svelte-38jpas"),i(t,"aria-labelledby","listbox")},m(a,i){n(a,t,i),c&&c.m(t,null),h(t,s);for(let e=0;e<b.length;e+=1)b[e]&&b[e].m(t,null);l||(o=j(e[19].call(null,t)),l=!0)},p(e,l){if(e[2]&&e[9]?c?c.p(e,l):(c=B(e),c.c(),c.m(t,s)):c&&(c.d(1),c=null),311527&l[0]){let s;for(r=e[15],s=0;s<r.length;s+=1){const a=E(e,r,s);b[s]?b[s].p(a,l):(b[s]=L(a),b[s].c(),b[s].m(t,null))}for(;s<b.length;s+=1)b[s].d(1);b.length=r.length}},d(e){e&&p(t),c&&c.d(),f(b,e),l=!1,o()}}}function B(e){let t,s,l,o,c,r,b;return{c(){t=a("li"),s=a("input"),l=_(),o=a("label"),c=x(e[10]),i(s,"id","select-all"),i(s,"class","mc-listbox__input mc-checkbox__input svelte-38jpas"),i(s,"type","checkbox"),s.indeterminate=e[17],i(o,"for","select-all"),i(o,"class","mc-listbox__label svelte-38jpas"),i(t,"class","mc-listbox__tile svelte-38jpas")},m(a,i){n(a,t,i),h(t,s),s.checked=e[16],h(t,l),h(t,o),h(o,c),r||(b=[g(s,"change",e[24]),g(s,"change",e[20])],r=!0)},p(e,t){131072&t[0]&&(s.indeterminate=e[17]),65536&t[0]&&(s.checked=e[16]),1024&t[0]&&u(c,e[10])},d(e){e&&p(t),r=!1,w(b)}}}function M(e){let t,s,l,o,c,r,b,d=!1;return c=k(e[26][0]),{c(){t=a("input"),i(t,"id",e[18](e[33])),i(t,"class","mc-listbox__input mc-checkbox__input svelte-38jpas"),i(t,"type","checkbox"),t.__value=s=e[31][e[6]],t.value=t.__value,t.checked=l=e[0].includes(e[31][e[6]]),t.disabled=o=Boolean(e[31][e[7]]),c.p(t)},m(s,l){n(s,t,l),t.checked=~(e[0]||[]).indexOf(t.__value),r||(b=[g(t,"change",e[27]),g(t,"change",e[23])],r=!0)},p(e,a){32832&a[0]&&s!==(s=e[31][e[6]])&&(t.__value=s,t.value=t.__value,d=!0),32833&a[0]&&l!==(l=e[0].includes(e[31][e[6]]))&&(t.checked=l),32896&a[0]&&o!==(o=Boolean(e[31][e[7]]))&&(t.disabled=o),(d||32769&a[0])&&(t.checked=~(e[0]||[]).indexOf(t.__value))},d(e){e&&p(t),c.r(),r=!1,w(b)}}}function H(e){let t,s,l,o,r,b,d=!1;return o=k(e[26][0]),{c(){t=a("input"),i(t,"id",e[18](e[33])),i(t,"class","mc-listbox__input svelte-38jpas"),i(t,"type","radio"),t.__value=s=e[31][e[6]],t.value=t.__value,i(t,"name",e[1]),t.disabled=l=Boolean(e[31][e[7]]),c(t,"is-disabled",e[31][e[7]]),o.p(t)},m(s,l){n(s,t,l),t.checked=t.__value===e[0],r||(b=[g(t,"change",e[25]),g(t,"change",e[22])],r=!0)},p(e,a){32832&a[0]&&s!==(s=e[31][e[6]])&&(t.__value=s,t.value=t.__value,d=!0),2&a[0]&&i(t,"name",e[1]),32896&a[0]&&l!==(l=Boolean(e[31][e[7]]))&&(t.disabled=l),(d||32769&a[0])&&(t.checked=t.__value===e[0]),32896&a[0]&&c(t,"is-disabled",e[31][e[7]])},d(e){e&&p(t),o.r(),r=!1,w(b)}}}function L(e){let t,s,l,o,r,b=e[31][e[5]]+"";function d(e,t){return e[2]?M:H}let m=d(e),v=m(e);return{c(){t=a("li"),v.c(),s=_(),l=a("label"),o=x(b),r=_(),i(l,"for",e[18](e[33])),i(l,"class","mc-listbox__label svelte-38jpas"),c(l,"mc-listbox__label--no-overflow",e[14]),i(t,"class","mc-listbox__tile svelte-38jpas"),c(t,"is-disabled",e[31][e[7]]),c(t,"mc-listbox__tile--auto-size",e[14])},m(e,a){n(e,t,a),v.m(t,null),h(t,s),h(t,l),h(l,o),h(t,r)},p(e,a){m===(m=d(e))&&v?v.p(e,a):(v.d(1),v=m(e),v&&(v.c(),v.m(t,s))),32800&a[0]&&b!==(b=e[31][e[5]]+"")&&u(o,b),16384&a[0]&&c(l,"mc-listbox__label--no-overflow",e[14]),32896&a[0]&&c(t,"is-disabled",e[31][e[7]]),16384&a[0]&&c(t,"mc-listbox__tile--auto-size",e[14])},d(e){e&&p(t),v.d()}}}function O(e){let t;function s(e,t){return e[3]?C:$}let l=s(e),b=l(e);return{c(){t=a("div"),b.c(),i(t,"class","mc-listbox svelte-38jpas"),o(t,"--listbox-maxwidth",e[8]),o(t,"--listbox-width",e[12]),o(t,"--listbox-minwidth",e[12]),c(t,"mc-listbox--options","options"===e[13]),c(t,"mc-listbox--multi",e[2]),c(t,"mc-listbox--overlay",e[11])},m(e,s){n(e,t,s),b.m(t,null)},p(e,a){l===(l=s(e))&&b?b.p(e,a):(b.d(1),b=l(e),b&&(b.c(),b.m(t,null))),256&a[0]&&o(t,"--listbox-maxwidth",e[8]),4096&a[0]&&o(t,"--listbox-width",e[12]),4096&a[0]&&o(t,"--listbox-minwidth",e[12]),8192&a[0]&&c(t,"mc-listbox--options","options"===e[13]),4&a[0]&&c(t,"mc-listbox--multi",e[2]),2048&a[0]&&c(t,"mc-listbox--overlay",e[11])},i:r,o:r,d(e){e&&p(t),b.d()}}}function A(e,t,s){let l,a,i;const o=Math.random();let{name:c=`listboxradio-${o}`}=t,{items:n}=t,{value:r}=t,{multiple:p}=t,{isfiltered:x}=t,{emptysearchlabel:h="No results found"}=t,{datatextexpr:u="label"}=t,{datavalueexpr:_="value"}=t,{datadisabledexpr:j="disabled"}=t,{maxwidth:f}=t,{selectall:g=!1}=t,{labelselectall:w="Select all"}=t,{overlay:k}=t,{width:z}=t,{type:E="options"}=t,{labelautosize:C=!1}=t,$=new y(b(),d());const B=[[]];return e.$$set=e=>{"name"in e&&s(1,c=e.name),"items"in e&&s(21,n=e.items),"value"in e&&s(0,r=e.value),"multiple"in e&&s(2,p=e.multiple),"isfiltered"in e&&s(3,x=e.isfiltered),"emptysearchlabel"in e&&s(4,h=e.emptysearchlabel),"datatextexpr"in e&&s(5,u=e.datatextexpr),"datavalueexpr"in e&&s(6,_=e.datavalueexpr),"datadisabledexpr"in e&&s(7,j=e.datadisabledexpr),"maxwidth"in e&&s(8,f=e.maxwidth),"selectall"in e&&s(9,g=e.selectall),"labelselectall"in e&&s(10,w=e.labelselectall),"overlay"in e&&s(11,k=e.overlay),"width"in e&&s(12,z=e.width),"type"in e&&s(13,E=e.type),"labelautosize"in e&&s(14,C=e.labelautosize)},e.$$.update=()=>{512&e.$$.dirty[0]&&s(16,l=null!=g&&g),2097152&e.$$.dirty[0]&&s(15,a=n?JSON.parse(n):[]),1&e.$$.dirty[0]&&s(0,r=r?(s(16,l=!1),s(17,i=!1),r&&0===r.length?(s(16,l=!1),s(17,i=!1)):r&&r.length<a.length?s(17,i=!0):r&&r.length===a.length&&s(16,l=!0),r):[])},s(17,i=!0),[r,c,p,x,h,u,_,j,f,g,w,k,z,E,C,a,l,i,function(e){return`listboxItem-${e+o}`},function(e){e.addEventListener("scroll",(()=>{e.offsetHeight+e.scrollTop>=e.scrollHeight&&$.dispatch("scrollend",{})}))},function(e){const t=e.target.checked;s(16,l=!!t),l?a.map((e=>{e[j]||-1!==r.indexOf(e[_])||r.push(e[_])})):s(0,r=[]),$.dispatch("select-all",r),s(0,r)},n,function(t){m.call(this,e,t)},function(t){m.call(this,e,t)},function(){l=this.checked,s(16,l),s(9,g)},function(){r=this.__value,s(0,r)},B,function(){r=v(B[0],this.__value,this.checked),s(0,r)}]}class N extends e{constructor(e){super(),t(this,e,A,O,s,{name:1,items:21,value:0,multiple:2,isfiltered:3,emptysearchlabel:4,datatextexpr:5,datavalueexpr:6,datadisabledexpr:7,maxwidth:8,selectall:9,labelselectall:10,overlay:11,width:12,type:13,labelautosize:14},z,[-1,-1])}}export{N as default};
|
|
2
2
|
//# sourceMappingURL=Listbox.nested.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Listbox.nested.js","sources":["../../../../src/components/listbox/Listbox.nested.svelte"],"sourcesContent":["<svelte:options tag={null} />\n\n<script lang=\"ts\">\n import type { ListboxItems } from './listbox.types';\n import { EventHandler } from '../../utilities/EventHandler';\n import {\n get_current_component,\n createEventDispatcher,\n } from 'svelte/internal';\n\n const uuid = Math.random();\n\n export let name: string = `listboxradio-${uuid}`;\n export let items: string;\n export let value: any;\n export let multiple: boolean;\n export let isfiltered: boolean;\n export let emptysearchlabel = 'No results found';\n export let datatextexpr = 'label';\n export let datavalueexpr = 'value';\n export let datadisabledexpr = 'disabled';\n export let maxwidth: string;\n export let selectall = false;\n export let labelselectall = 'Select all';\n export let overlay: boolean;\n export let width: string;\n export let type = 'options';\n\n let eventHandler = new EventHandler(\n get_current_component(),\n createEventDispatcher(),\n );\n\n $: allSelected = selectall ?? false;\n $: parsedItems = items ? (JSON.parse(items) as ListboxItems[]) : [];\n $: value = value ? (determineSelectionState() as []) : [];\n $: selectAllIndeterminate = true;\n\n function determineSelectionState(): [] {\n allSelected = false;\n selectAllIndeterminate = false;\n if (value && value.length === 0) {\n allSelected = false;\n selectAllIndeterminate = false;\n } else if (value && value.length < parsedItems.length) {\n selectAllIndeterminate = true;\n } else if (value && value.length === parsedItems.length) {\n allSelected = true;\n }\n\n return value;\n }\n\n function setItemId(index: number) {\n return `listboxItem-${index + uuid}`;\n }\n\n function scrollEnd(node: HTMLElement) {\n node.addEventListener('scroll', () => {\n if (node.offsetHeight + node.scrollTop >= node.scrollHeight) {\n eventHandler.dispatch('scrollend', {});\n }\n });\n }\n\n function onSelectAll(e: Event) {\n const ischecked = (<HTMLInputElement>e.target).checked;\n allSelected = ischecked ? true : false;\n if (allSelected) {\n parsedItems.map((item) => {\n if (\n !item[datadisabledexpr] &&\n value.indexOf(item[datavalueexpr]) === -1\n )\n value.push(item[datavalueexpr]);\n });\n } else {\n value = [];\n }\n eventHandler.dispatch('select-all', value);\n value = value;\n }\n</script>\n\n<div\n class=\"mc-listbox\"\n class:mc-listbox--options={type === 'options'}\n class:mc-listbox--multi={multiple}\n class:mc-listbox--overlay={overlay}\n style=\"--listbox-maxwidth: {maxwidth}; --listbox-width: {width}; --listbox-minwidth: {width};\"\n>\n {#if !isfiltered}\n <ul\n role=\"listbox\"\n class=\"mc-listbox__list\"\n aria-labelledby=\"listbox\"\n use:scrollEnd\n >\n {#if multiple && selectall}\n <li class=\"mc-listbox__tile\">\n <input\n id=\"select-all\"\n class=\"mc-listbox__input mc-checkbox__input\"\n type=\"checkbox\"\n indeterminate={selectAllIndeterminate}\n bind:checked={allSelected}\n on:change={onSelectAll}\n />\n <label for=\"select-all\" class=\"mc-listbox__label\">\n {labelselectall}\n </label>\n </li>\n {/if}\n {#each parsedItems as item, index}\n <li
|
|
1
|
+
{"version":3,"file":"Listbox.nested.js","sources":["../../../../src/components/listbox/Listbox.nested.svelte"],"sourcesContent":["<svelte:options tag={null} />\n\n<script lang=\"ts\">\n import type { ListboxItems } from './listbox.types';\n import { EventHandler } from '../../utilities/EventHandler';\n import {\n get_current_component,\n createEventDispatcher,\n } from 'svelte/internal';\n\n const uuid = Math.random();\n\n export let name: string = `listboxradio-${uuid}`;\n export let items: string;\n export let value: any;\n export let multiple: boolean;\n export let isfiltered: boolean;\n export let emptysearchlabel = 'No results found';\n export let datatextexpr = 'label';\n export let datavalueexpr = 'value';\n export let datadisabledexpr = 'disabled';\n export let maxwidth: string;\n export let selectall = false;\n export let labelselectall = 'Select all';\n export let overlay: boolean;\n export let width: string;\n export let type = 'options';\n export let labelautosize = false;\n\n let eventHandler = new EventHandler(\n get_current_component(),\n createEventDispatcher(),\n );\n\n $: allSelected = selectall ?? false;\n $: parsedItems = items ? (JSON.parse(items) as ListboxItems[]) : [];\n $: value = value ? (determineSelectionState() as []) : [];\n $: selectAllIndeterminate = true;\n\n function determineSelectionState(): [] {\n allSelected = false;\n selectAllIndeterminate = false;\n if (value && value.length === 0) {\n allSelected = false;\n selectAllIndeterminate = false;\n } else if (value && value.length < parsedItems.length) {\n selectAllIndeterminate = true;\n } else if (value && value.length === parsedItems.length) {\n allSelected = true;\n }\n\n return value;\n }\n\n function setItemId(index: number) {\n return `listboxItem-${index + uuid}`;\n }\n\n function scrollEnd(node: HTMLElement) {\n node.addEventListener('scroll', () => {\n if (node.offsetHeight + node.scrollTop >= node.scrollHeight) {\n eventHandler.dispatch('scrollend', {});\n }\n });\n }\n\n function onSelectAll(e: Event) {\n const ischecked = (<HTMLInputElement>e.target).checked;\n allSelected = ischecked ? true : false;\n if (allSelected) {\n parsedItems.map((item) => {\n if (\n !item[datadisabledexpr] &&\n value.indexOf(item[datavalueexpr]) === -1\n )\n value.push(item[datavalueexpr]);\n });\n } else {\n value = [];\n }\n eventHandler.dispatch('select-all', value);\n value = value;\n }\n</script>\n\n<div\n class=\"mc-listbox\"\n class:mc-listbox--options={type === 'options'}\n class:mc-listbox--multi={multiple}\n class:mc-listbox--overlay={overlay}\n style=\"--listbox-maxwidth: {maxwidth}; --listbox-width: {width}; --listbox-minwidth: {width};\"\n>\n {#if !isfiltered}\n <ul\n role=\"listbox\"\n class=\"mc-listbox__list\"\n aria-labelledby=\"listbox\"\n use:scrollEnd\n >\n {#if multiple && selectall}\n <li class=\"mc-listbox__tile\">\n <input\n id=\"select-all\"\n class=\"mc-listbox__input mc-checkbox__input\"\n type=\"checkbox\"\n indeterminate={selectAllIndeterminate}\n bind:checked={allSelected}\n on:change={onSelectAll}\n />\n <label for=\"select-all\" class=\"mc-listbox__label\">\n {labelselectall}\n </label>\n </li>\n {/if}\n {#each parsedItems as item, index}\n <li\n class=\"mc-listbox__tile\"\n class:is-disabled={item[datadisabledexpr]}\n class:mc-listbox__tile--auto-size={labelautosize}\n >\n {#if !multiple}\n <input\n id={setItemId(index)}\n class=\"mc-listbox__input\"\n class:is-disabled={item[datadisabledexpr]}\n type=\"radio\"\n value={item[datavalueexpr]}\n {name}\n disabled={Boolean(item[datadisabledexpr])}\n bind:group={value}\n on:change\n />\n {:else}\n <input\n id={setItemId(index)}\n class=\"mc-listbox__input mc-checkbox__input\"\n type=\"checkbox\"\n value={item[datavalueexpr]}\n checked={value.includes(item[datavalueexpr])}\n disabled={Boolean(item[datadisabledexpr])}\n bind:group={value}\n on:change\n />\n {/if}\n\n <label\n for={setItemId(index)}\n class=\"mc-listbox__label\"\n class:mc-listbox__label--no-overflow={labelautosize}\n >\n {item[datatextexpr]}\n </label>\n </li>\n {/each}\n </ul>\n {:else}\n <div class=\"mc-listbox__tile mc-listbox__tile--empty\">\n <span class=\"mc-listbox__label\">{emptysearchlabel}</span>\n </div>\n {/if}\n</div>\n\n<style lang=\"scss\">\n @import '@mozaic-ds/styles/settings-tools/all-settings';\n @import '@mozaic-ds/styles/components/c.checkbox';\n @import '@mozaic-ds/styles/components/c.listbox';\n\n .mc-listbox__tile--auto-size {\n height: auto !important;\n min-height: 3rem;\n }\n .mc-listbox__label--no-overflow {\n white-space: break-spaces;\n }\n</style>\n"],"names":["ctx","insert","target","div","anchor","append","span","if_block","create_if_block_2","length","i","ul","li","input","label","attr","__value","input_value_value","checked","input_checked_value","includes","Boolean","indexOf","dirty","toggle_class","t1_value","create_if_block_1","set_data","t1","create_if_block","uuid","Math","random","name","$$props","items","value","multiple","isfiltered","emptysearchlabel","datatextexpr","datavalueexpr","datadisabledexpr","maxwidth","selectall","labelselectall","overlay","width","type","labelautosize","eventHandler","EventHandler","get_current_component","createEventDispatcher","$$invalidate","allSelected","parsedItems","JSON","parse","selectAllIndeterminate","index","node","addEventListener","offsetHeight","scrollTop","scrollHeight","dispatch","e","ischecked","map","item","push","this","get_binding_group_value","$$binding_groups"],"mappings":"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"}
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
export let overlay: boolean;
|
|
26
26
|
export let width: string;
|
|
27
27
|
export let type = 'options';
|
|
28
|
+
export let labelautosize = false;
|
|
28
29
|
|
|
29
30
|
let eventHandler = new EventHandler(
|
|
30
31
|
get_current_component(),
|
|
@@ -112,7 +113,11 @@
|
|
|
112
113
|
</li>
|
|
113
114
|
{/if}
|
|
114
115
|
{#each parsedItems as item, index}
|
|
115
|
-
<li
|
|
116
|
+
<li
|
|
117
|
+
class="mc-listbox__tile"
|
|
118
|
+
class:is-disabled={item[datadisabledexpr]}
|
|
119
|
+
class:mc-listbox__tile--auto-size={labelautosize}
|
|
120
|
+
>
|
|
116
121
|
{#if !multiple}
|
|
117
122
|
<input
|
|
118
123
|
id={setItemId(index)}
|
|
@@ -138,7 +143,11 @@
|
|
|
138
143
|
/>
|
|
139
144
|
{/if}
|
|
140
145
|
|
|
141
|
-
<label
|
|
146
|
+
<label
|
|
147
|
+
for={setItemId(index)}
|
|
148
|
+
class="mc-listbox__label"
|
|
149
|
+
class:mc-listbox__label--no-overflow={labelautosize}
|
|
150
|
+
>
|
|
142
151
|
{item[datatextexpr]}
|
|
143
152
|
</label>
|
|
144
153
|
</li>
|
|
@@ -155,4 +164,12 @@
|
|
|
155
164
|
@import '@mozaic-ds/styles/settings-tools/all-settings';
|
|
156
165
|
@import '@mozaic-ds/styles/components/c.checkbox';
|
|
157
166
|
@import '@mozaic-ds/styles/components/c.listbox';
|
|
167
|
+
|
|
168
|
+
.mc-listbox__tile--auto-size {
|
|
169
|
+
height: auto !important;
|
|
170
|
+
min-height: 3rem;
|
|
171
|
+
}
|
|
172
|
+
.mc-listbox__label--no-overflow {
|
|
173
|
+
white-space: break-spaces;
|
|
174
|
+
}
|
|
158
175
|
</style>
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{S as e,i as t,a as i,g as n,b as s,f as a,s as o,e as l,n as r,h as m,k as c,m as d,R as u,p as f,q as b,r as
|
|
1
|
+
import{S as e,i as t,a as i,g as n,b as s,f as a,s as o,e as l,n as r,h as m,k as c,m as d,R as u,p as f,q as b,r as h,d as g,v as p,t as _,x as w,y as x,J as k,M as v}from"../../index-c222d0b7.js";import{E as $}from"../../EventHandler-f7ee47ca.js";function y(e,t,i){const n=e.slice();return n[8]=t[i],n[10]=i,n}function E(e){let t,i=`<${N(e[8].iconName,e[0]===e[10])} />`;return{c(){t=l("span"),m(t,"class","mc-menu__icon")},m(e,n){s(e,t,n),t.innerHTML=i},p(e,n){3&n&&i!==(i=`<${N(e[8].iconName,e[0]===e[10])} />`)&&(t.innerHTML=i)},d(e){e&&d(t)}}}function C(e){let t,i,n;return{c(){t=l("span"),i=l("slot"),m(i,"prop",n=e[8]),m(i,"name","icon"),m(t,"class","mc-menu__icon")},m(e,n){s(e,t,n),c(t,i)},p(e,t){2&t&&n!==(n=e[8])&&m(i,"prop",n)},d(e){e&&d(t)}}}function z(e){let t,i,n,a;return{c(){t=k("svg"),i=k("use"),m(i,"href",n=e[8].iconPath),m(t,"class","mc-menu__icon"),m(t,"fill",a=e[0]===e[10]?"white":""),v(t,"width","2rem")},m(e,n){s(e,t,n),c(t,i)},p(e,s){2&s&&n!==(n=e[8].iconPath)&&m(i,"href",n),1&s&&a!==(a=e[0]===e[10]?"white":"")&&m(t,"fill",a)},d(e){e&&d(t)}}}function M(e){let t,i,n,a,o,r,u,f,b,h,k=e[8].label+"",v=e[8].iconName&&E(e),$=e[3].icon&&C(e),y=e[8].iconPath&&z(e);function M(){return e[6](e[10],e[8])}return{c(){t=l("li"),i=l("div"),v&&v.c(),n=g(),$&&$.c(),a=g(),y&&y.c(),o=g(),r=l("span"),u=p(k),f=g(),m(r,"class","mc-menu__label"),m(i,"class","mc-menu__link"),_(i,"is-active",e[0]===e[10]),_(i,"is-disabled",e[8].disabled),m(t,"class","mc-menu__item")},m(e,l){s(e,t,l),c(t,i),v&&v.m(i,null),c(i,n),$&&$.m(i,null),c(i,a),y&&y.m(i,null),c(i,o),c(i,r),c(r,u),c(t,f),b||(h=w(i,"click",M),b=!0)},p(t,s){(e=t)[8].iconName?v?v.p(e,s):(v=E(e),v.c(),v.m(i,n)):v&&(v.d(1),v=null),e[3].icon?$?$.p(e,s):($=C(e),$.c(),$.m(i,a)):$&&($.d(1),$=null),e[8].iconPath?y?y.p(e,s):(y=z(e),y.c(),y.m(i,o)):y&&(y.d(1),y=null),2&s&&k!==(k=e[8].label+"")&&x(u,k),1&s&&_(i,"is-active",e[0]===e[10]),2&s&&_(i,"is-disabled",e[8].disabled)},d(e){e&&d(t),v&&v.d(),$&&$.d(),y&&y.d(),b=!1,h()}}}function L(e){let t,i,n=e[1],a=[];for(let t=0;t<n.length;t+=1)a[t]=M(y(e,n,t));return{c(){t=l("nav"),i=l("ul");for(let e=0;e<a.length;e+=1)a[e].c();this.c=r,m(i,"class","mc-menu__list"),m(t,"class","mc-menu"),m(t,"aria-label","menu")},m(e,n){s(e,t,n),c(t,i);for(let e=0;e<a.length;e+=1)a[e]&&a[e].m(i,null)},p(e,[t]){if(15&t){let s;for(n=e[1],s=0;s<n.length;s+=1){const o=y(e,n,s);a[s]?a[s].p(o,t):(a[s]=M(o),a[s].c(),a[s].m(i,null))}for(;s<a.length;s+=1)a[s].d(1);a.length=n.length}},i:r,o:r,d(e){e&&d(t),u(a,e)}}}function N(e,t){return t?`${e} fill="white" `:`${e} `}function P(e,t,i){let n,s,{$$slots:a={},$$scope:o}=t;const l=f(a);let{items:r}=t,{selected:m}=t,c=new $(b(),h());function d(e,t){i(0,s=e),c.dispatch("item-selected",{index:e,item:t})}return e.$$set=e=>{"items"in e&&i(4,r=e.items),"selected"in e&&i(5,m=e.selected)},e.$$.update=()=>{16&e.$$.dirty&&i(1,n=r?JSON.parse(r):[]),32&e.$$.dirty&&i(0,s=m?Number(m):"")},[s,n,d,l,r,m,(e,t)=>d(e,t)]}class B extends e{constructor(e){super();const l=document.createElement("style");l.textContent=".mc-menu,.mc-menu *{-webkit-box-sizing:border-box;box-sizing:border-box}.mc-menu__list{list-style:none;padding:0;margin:0}.mc-menu__item{position:relative}.mc-menu__item:not(:last-child) .mc-menu__link::after{background:#b3b3b3;content:\"\";display:block;margin:0 auto;height:1px;width:100%}.mc-menu__item:not(:last-child) .mc-menu__link::after{bottom:0;position:absolute;left:0}.mc-menu__item:not(:last-child) .mc-menu__link.is-active::after{display:none}.mc-menu__item:first-of-type .mc-menu__link{border-radius:0.25rem 0.25rem 0 0}.mc-menu__item:last-of-type .mc-menu__link{border-radius:0 0 0.25rem 0.25rem}.mc-menu__link{font-weight:400;position:relative;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#ffffff;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' viewBox='0 0 16 16' fill='%23191919'%3E%3Cpath d='M5.5 14a1 1 0 01-.71-.29 1 1 0 010-1.42L9.09 8l-4.3-4.29a1 1 0 011.42-1.42l5 5a1 1 0 010 1.42l-5 5a1 1 0 01-.71.29z'/%3E%3C/svg%3E\");background-position:center right 1rem;background-repeat:no-repeat;background-size:1rem;border:none;cursor:pointer;color:#191919;display:-webkit-box;display:-ms-flexbox;display:flex;gap:0.5rem;height:3.5rem;font-family:inherit;padding-right:3rem;padding-left:1rem;position:relative;text-decoration:none;outline:none;width:100%}.mc-menu__link::before{border-radius:2px;-webkit-box-shadow:0 0 0 0 transparent;box-shadow:0 0 0 0 transparent;content:\"\";display:block;pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-transition:-webkit-box-shadow 200ms ease;transition:-webkit-box-shadow 200ms ease;transition:box-shadow 200ms ease;transition:box-shadow 200ms ease, -webkit-box-shadow 200ms ease;z-index:var(--menu-link-z-index, 1)}.mc-menu__link.is-active,.mc-menu__link.is-disabled{background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' viewBox='0 0 16 16' fill='%23ffffff'%3E%3Cpath d='M5.5 14a1 1 0 01-.71-.29 1 1 0 010-1.42L9.09 8l-4.3-4.29a1 1 0 011.42-1.42l5 5a1 1 0 010 1.42l-5 5a1 1 0 01-.71.29z'/%3E%3C/svg%3E\");color:#ffffff}.mc-menu__link:hover{background-color:#ffe2bd}.mc-menu__link:active{background-color:#ff941a}.mc-menu__link:focus::before{-webkit-box-shadow:0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #0b96cc;box-shadow:0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #0b96cc}.mc-menu__link.is-active{background-color:#ff941a;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='1rem' width='1rem' viewBox='0 0 16 16' fill='%23002a5b'%3E%3Cpath d='M5.5 14a1 1 0 01-.71-.29 1 1 0 010-1.42L9.09 8l-4.3-4.29a1 1 0 011.42-1.42l5 5a1 1 0 010 1.42l-5 5a1 1 0 01-.71.29z'/%3E%3C/svg%3E\");color:#002a5b}.mc-menu__link.is-active .mc-menu__label{font-family:\"LeroyMerlin\", sans-serif;font-weight:600}.mc-menu__link.is-disabled{background-color:#e6e6e6;cursor:not-allowed}.mc-menu__icon{-ms-flex-negative:0;flex-shrink:0}.mc-menu__label{font-size:1rem;line-height:1.375;font-family:\"LeroyMerlin\", sans-serif;font-weight:400;display:-webkit-box;max-height:2.75rem;overflow:hidden;text-align:left;-webkit-line-clamp:2;-webkit-box-orient:vertical}",this.shadowRoot.appendChild(l),t(this,{target:this.shadowRoot,props:{...i(this.attributes),$$slots:n(this)},customElement:!0},P,L,o,{items:4,selected:5},null),e&&(e.target&&s(e.target,this,e.anchor),e.props&&(this.$set(e.props),a()))}static get observedAttributes(){return["items","selected"]}get items(){return this.$$.ctx[4]}set items(e){this.$$set({items:e}),a()}get selected(){return this.$$.ctx[5]}set selected(e){this.$$set({selected:e}),a()}}export{B as default};
|
|
2
2
|
//# sourceMappingURL=Menu.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","sources":["../../../../src/components/menu/Menu.svelte"],"sourcesContent":["<svelte:options tag={null} />\n\n<script lang=\"ts\">\n import {\n get_current_component,\n createEventDispatcher,\n } from 'svelte/internal';\n import { EventHandler } from '../../utilities/EventHandler';\n import type { menuType } from './menu.types';\n export let items: string;\n export let selected: string;\n $: menuItems = items ? (JSON.parse(items) as menuType[]) : [];\n $: itemSelected = selected ? Number(selected) : '';\n\n let eventHandler = new EventHandler(\n get_current_component(),\n createEventDispatcher(),\n );\n\n function generateIconName(\n iconName: string | undefined,\n isActive: boolean,\n ): string {\n if (isActive) return `${iconName} fill=\"white\" `;\n else return `${iconName} `;\n }\n\n function manageMenu(index: any, item: any) {\n itemSelected = index;\n eventHandler.dispatch('item-selected', {\n index,\n item,\n });\n }\n</script>\n\n<nav class=\"mc-menu\" aria-label=\"menu\">\n <ul class=\"mc-menu__list\">\n {#each menuItems as item, index}\n <li class=\"mc-menu__item\">\n <!-- svelte-ignore a11y-click-events-have-key-events -->\n <div\n class=\"mc-menu__link\"\n class:is-active={itemSelected === index}\n class:is-disabled={item.disabled}\n on:click={() => manageMenu(index, item)}\n >\n <span class=\"mc-menu__icon\">\n
|
|
1
|
+
{"version":3,"file":"Menu.js","sources":["../../../../src/components/menu/Menu.svelte"],"sourcesContent":["<svelte:options tag={null} />\n\n<script lang=\"ts\">\n import {\n get_current_component,\n createEventDispatcher,\n } from 'svelte/internal';\n import { EventHandler } from '../../utilities/EventHandler';\n import type { menuType } from './menu.types';\n export let items: string;\n export let selected: string;\n $: menuItems = items ? (JSON.parse(items) as menuType[]) : [];\n $: itemSelected = selected ? Number(selected) : '';\n\n let eventHandler = new EventHandler(\n get_current_component(),\n createEventDispatcher(),\n );\n\n function generateIconName(\n iconName: string | undefined,\n isActive: boolean,\n ): string {\n if (isActive) return `${iconName} fill=\"white\" `;\n else return `${iconName} `;\n }\n\n function manageMenu(index: any, item: any) {\n itemSelected = index;\n eventHandler.dispatch('item-selected', {\n index,\n item,\n });\n }\n</script>\n\n<nav class=\"mc-menu\" aria-label=\"menu\">\n <ul class=\"mc-menu__list\">\n {#each menuItems as item, index}\n <li class=\"mc-menu__item\">\n <!-- svelte-ignore a11y-click-events-have-key-events -->\n <div\n class=\"mc-menu__link\"\n class:is-active={itemSelected === index}\n class:is-disabled={item.disabled}\n on:click={() => manageMenu(index, item)}\n >\n {#if item.iconName}\n <span class=\"mc-menu__icon\">\n {@html `<${generateIconName(\n item.iconName,\n itemSelected === index,\n )} />`}\n </span>\n {/if}\n {#if $$slots.icon}\n <span class=\"mc-menu__icon\"><slot prop={item} name=\"icon\" /></span>\n {/if}\n {#if item.iconPath}\n <svg\n class=\"mc-menu__icon\"\n fill={itemSelected === index ? 'white' : ''}\n style=\"width: 2rem\"\n >\n <use href={item.iconPath} />\n </svg>\n {/if}\n <span class=\"mc-menu__label\">{item.label}</span>\n </div>\n </li>\n {/each}\n </ul>\n</nav>\n\n<style lang=\"scss\">\n @import '@mozaic-ds/styles/settings-tools/all-settings';\n @import '@mozaic-ds/styles/components/c.menu';\n</style>\n"],"names":["raw_value","generateIconName","ctx","iconName","insert","target","span","anchor","dirty","innerHTML","append","slot","attr","use","use_href_value","iconPath","svg","svg_fill_value","t3_value","label","if_block0","create_if_block_2","if_block1","icon","create_if_block_1","if_block2","create_if_block","toggle_class","div","disabled","li","set_data","t3","length","i","nav","ul","isActive","items","$$props","selected","eventHandler","EventHandler","get_current_component","createEventDispatcher","manageMenu","index","item","$$invalidate","itemSelected","dispatch","menuItems","JSON","parse","Number"],"mappings":"4UAiDyBA,EAAA,IAAAC,EACTC,EAAI,GAACC,SACLD,OAAiBA,EAAK,sEAH1BE,EAKMC,EAAAC,EAAAC,yBAJO,EAAAC,GAAAR,KAAAA,EAAA,IAAAC,EACTC,EAAI,GAACC,SACLD,OAAiBA,EAAK,aAAAI,EAAAG,UAAAT,2FAKcE,EAAI,4DAA5CE,EAAkEC,EAAAC,EAAAC,GAAtCG,EAAgCJ,EAAAK,uBAApBT,EAAI,8FAQ/BU,EAAAC,EAAA,OAAAC,EAAAZ,KAAKa,uCAHVH,EAAAI,EAAA,OAAAC,EAAAf,OAAiBA,EAAK,IAAG,QAAU,gCAF3CE,EAMKC,EAAAW,EAAAT,GADHG,EAA2BM,EAAAH,WAAhB,EAAAL,GAAAM,KAAAA,EAAAZ,KAAKa,yBAHV,EAAAP,GAAAS,KAAAA,EAAAf,OAAiBA,EAAK,IAAG,QAAU,yEAMfgB,EAAAhB,KAAKiB,MAAK,GApBnCC,EAAAlB,KAAKC,UAAQkB,EAAAnB,GAQboB,EAAApB,KAAQqB,MAAIC,EAAAtB,GAGZuB,EAAAvB,KAAKa,UAAQW,EAAAxB,yMAfDyB,EAAAC,EAAA,YAAA1B,OAAiBA,EAAK,KACpByB,EAAAC,EAAA,cAAA1B,KAAK2B,+CAL5BzB,EA8BIC,EAAAyB,EAAAvB,GA5BFG,EA2BKoB,EAAAF,qEADHlB,EAA+CkB,EAAAtB,6DApBrCH,+DAQLD,KAAQqB,2DAGRrB,KAAKa,+DASoB,EAAAP,GAAAU,KAAAA,EAAAhB,KAAKiB,MAAK,KAAAY,EAAAC,EAAAd,QAxBvBS,EAAAC,EAAA,YAAA1B,OAAiBA,EAAK,UACpByB,EAAAC,EAAA,cAAA1B,KAAK2B,sFANvB3B,EAAS,wBAAd+B,OAAIC,GAAA,sLAFV9B,EAoCKC,EAAA8B,EAAA5B,GAnCHG,EAkCIyB,EAAAC,mFAjCKlC,EAAS,WAAd+B,OAAIC,GAAA,EAAA,iHAAJD,gDAnBKhC,EACPE,EACAkC,UAEIA,EAAQ,GAAYlC,kBAAQ,GACjBA,iFAfNmC,GAAaC,YACbC,GAAgBD,EAIvBE,EAAmB,IAAAC,EACrBC,IACAC,cAWOC,EAAWC,EAAYC,GAC9BC,EAAA,EAAAC,EAAeH,GACfL,EAAaS,SAAS,gBACpB,CAAAJ,QACAC,2HApBHC,EAAA,EAAEG,EAAYb,EAASc,KAAKC,MAAMf,GAAK,mBACvCU,EAAA,EAAEC,EAAeT,EAAWc,OAAOd,GAAY,yBAiCxBK,EAAWC,EAAOC"}
|
|
@@ -45,15 +45,26 @@
|
|
|
45
45
|
class:is-disabled={item.disabled}
|
|
46
46
|
on:click={() => manageMenu(index, item)}
|
|
47
47
|
>
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
48
|
+
{#if item.iconName}
|
|
49
|
+
<span class="mc-menu__icon">
|
|
50
|
+
{@html `<${generateIconName(
|
|
51
|
+
item.iconName,
|
|
52
|
+
itemSelected === index,
|
|
53
|
+
)} />`}
|
|
54
|
+
</span>
|
|
55
|
+
{/if}
|
|
54
56
|
{#if $$slots.icon}
|
|
55
57
|
<span class="mc-menu__icon"><slot prop={item} name="icon" /></span>
|
|
56
58
|
{/if}
|
|
59
|
+
{#if item.iconPath}
|
|
60
|
+
<svg
|
|
61
|
+
class="mc-menu__icon"
|
|
62
|
+
fill={itemSelected === index ? 'white' : ''}
|
|
63
|
+
style="width: 2rem"
|
|
64
|
+
>
|
|
65
|
+
<use href={item.iconPath} />
|
|
66
|
+
</svg>
|
|
67
|
+
{/if}
|
|
57
68
|
<span class="mc-menu__label">{item.label}</span>
|
|
58
69
|
</div>
|
|
59
70
|
</li>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.types.d.ts","sourceRoot":"","sources":["../../../../src/components/menu/menu.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC"}
|
|
1
|
+
{"version":3,"file":"menu.types.d.ts","sourceRoot":"","sources":["../../../../src/components/menu/menu.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC"}
|