@mozaic-ds/web-components 0.15.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/package.json +1 -1
  2. package/public/DataTableUtilities-e254e96d.js +2 -0
  3. package/public/DataTableUtilities-e254e96d.js.map +1 -0
  4. package/public/adeo/DataTableUtilities-e254e96d.js +2 -0
  5. package/public/adeo/DataTableUtilities-e254e96d.js.map +1 -0
  6. package/public/adeo/components/autocomplete/Autocomplete.js +1 -1
  7. package/public/adeo/components/autocomplete/Autocomplete.js.map +1 -1
  8. package/public/adeo/components/autocomplete/Autocomplete.svelte +23 -16
  9. package/public/adeo/components/datatable/DataTable.js +1 -1
  10. package/public/adeo/components/datatable/DataTable.js.map +1 -1
  11. package/public/adeo/components/datatable/DataTable.svelte +1 -0
  12. package/public/adeo/components/datatable/data.d.ts +3 -1
  13. package/public/adeo/components/datatable/data.d.ts.map +1 -1
  14. package/public/adeo/components/datatable/datatable-default-action.nested.js +1 -1
  15. package/public/adeo/components/datatable/datatable-default-edtion.nested.js +1 -1
  16. package/public/adeo/components/datatable/datatable-default-filter-tags.nested.js +1 -1
  17. package/public/adeo/components/datatable/datatable-default-footer.nested.js +1 -1
  18. package/public/adeo/components/datatable/datatable-default-selection.nested.js +1 -1
  19. package/public/adeo/components/datatable/datatable-default-selection.nested.js.map +1 -1
  20. package/public/adeo/components/datatable/datatable-default-selection.nested.svelte +16 -1
  21. package/public/adeo/components/datatable/datatable.types.d.ts +2 -0
  22. package/public/adeo/components/datatable/datatable.types.d.ts.map +1 -1
  23. package/public/adeo/components/dropdown/Dropdown.js +1 -1
  24. package/public/adeo/components/dropdown/Dropdown.js.map +1 -1
  25. package/public/adeo/components/dropdown/Dropdown.svelte +3 -3
  26. package/public/adeo/components/fileuploader/FileUploader.js +1 -1
  27. package/public/adeo/components/fileuploader/FileUploader.js.map +1 -1
  28. package/public/adeo/components/fileuploader/FileUploader.svelte +5 -14
  29. package/public/adeo/components/fileuploader/fileuploader-result.js +1 -1
  30. package/public/adeo/components/fileuploader/fileuploader-result.js.map +1 -1
  31. package/public/adeo/components/fileuploader-result/fileuploader-result.svelte +4 -0
  32. package/public/adeo/components/pagination/Pagination.js +1 -1
  33. package/public/adeo/components/pagination/Pagination.js.map +1 -1
  34. package/public/adeo/components/pagination/Pagination.svelte +4 -6
  35. package/public/adeo/components/textinput/Textinput.js +1 -1
  36. package/public/adeo/components/textinput/Textinput.js.map +1 -1
  37. package/public/adeo/components/textinput/Textinput.svelte +9 -6
  38. package/public/adeo/utilities/DataTableUtilities.d.ts.map +1 -1
  39. package/public/adeo/utilities/DataTableUtilities.ts +3 -1
  40. package/public/bricoman/DataTableUtilities-e254e96d.js +2 -0
  41. package/public/bricoman/DataTableUtilities-e254e96d.js.map +1 -0
  42. package/public/bricoman/components/autocomplete/Autocomplete.js +1 -1
  43. package/public/bricoman/components/autocomplete/Autocomplete.js.map +1 -1
  44. package/public/bricoman/components/autocomplete/Autocomplete.svelte +23 -16
  45. package/public/bricoman/components/datatable/DataTable.js +1 -1
  46. package/public/bricoman/components/datatable/DataTable.js.map +1 -1
  47. package/public/bricoman/components/datatable/DataTable.svelte +1 -0
  48. package/public/bricoman/components/datatable/data.d.ts +3 -1
  49. package/public/bricoman/components/datatable/data.d.ts.map +1 -1
  50. package/public/bricoman/components/datatable/datatable-default-action.nested.js +1 -1
  51. package/public/bricoman/components/datatable/datatable-default-edtion.nested.js +1 -1
  52. package/public/bricoman/components/datatable/datatable-default-filter-tags.nested.js +1 -1
  53. package/public/bricoman/components/datatable/datatable-default-footer.nested.js +1 -1
  54. package/public/bricoman/components/datatable/datatable-default-selection.nested.js +1 -1
  55. package/public/bricoman/components/datatable/datatable-default-selection.nested.js.map +1 -1
  56. package/public/bricoman/components/datatable/datatable-default-selection.nested.svelte +16 -1
  57. package/public/bricoman/components/datatable/datatable.types.d.ts +2 -0
  58. package/public/bricoman/components/datatable/datatable.types.d.ts.map +1 -1
  59. package/public/bricoman/components/dropdown/Dropdown.js +1 -1
  60. package/public/bricoman/components/dropdown/Dropdown.js.map +1 -1
  61. package/public/bricoman/components/dropdown/Dropdown.svelte +3 -3
  62. package/public/bricoman/components/fileuploader/FileUploader.js +1 -1
  63. package/public/bricoman/components/fileuploader/FileUploader.js.map +1 -1
  64. package/public/bricoman/components/fileuploader/FileUploader.svelte +5 -14
  65. package/public/bricoman/components/fileuploader/fileuploader-result.js +1 -1
  66. package/public/bricoman/components/fileuploader/fileuploader-result.js.map +1 -1
  67. package/public/bricoman/components/fileuploader-result/fileuploader-result.svelte +4 -0
  68. package/public/bricoman/components/pagination/Pagination.js +1 -1
  69. package/public/bricoman/components/pagination/Pagination.js.map +1 -1
  70. package/public/bricoman/components/pagination/Pagination.svelte +4 -6
  71. package/public/bricoman/components/textinput/Textinput.js +1 -1
  72. package/public/bricoman/components/textinput/Textinput.js.map +1 -1
  73. package/public/bricoman/components/textinput/Textinput.svelte +9 -6
  74. package/public/bricoman/utilities/DataTableUtilities.d.ts.map +1 -1
  75. package/public/bricoman/utilities/DataTableUtilities.ts +3 -1
  76. package/public/components/autocomplete/Autocomplete.js +1 -1
  77. package/public/components/autocomplete/Autocomplete.js.map +1 -1
  78. package/public/components/autocomplete/Autocomplete.svelte +23 -16
  79. package/public/components/datatable/DataTable.js +1 -1
  80. package/public/components/datatable/DataTable.js.map +1 -1
  81. package/public/components/datatable/DataTable.svelte +1 -0
  82. package/public/components/datatable/data.d.ts +3 -1
  83. package/public/components/datatable/data.d.ts.map +1 -1
  84. package/public/components/datatable/datatable-default-action.nested.js +1 -1
  85. package/public/components/datatable/datatable-default-edtion.nested.js +1 -1
  86. package/public/components/datatable/datatable-default-filter-tags.nested.js +1 -1
  87. package/public/components/datatable/datatable-default-footer.nested.js +1 -1
  88. package/public/components/datatable/datatable-default-selection.nested.js +1 -1
  89. package/public/components/datatable/datatable-default-selection.nested.js.map +1 -1
  90. package/public/components/datatable/datatable-default-selection.nested.svelte +16 -1
  91. package/public/components/datatable/datatable.types.d.ts +2 -0
  92. package/public/components/datatable/datatable.types.d.ts.map +1 -1
  93. package/public/components/dropdown/Dropdown.js +1 -1
  94. package/public/components/dropdown/Dropdown.js.map +1 -1
  95. package/public/components/dropdown/Dropdown.svelte +3 -3
  96. package/public/components/fileuploader/FileUploader.js +1 -1
  97. package/public/components/fileuploader/FileUploader.js.map +1 -1
  98. package/public/components/fileuploader/FileUploader.svelte +5 -14
  99. package/public/components/fileuploader/fileuploader-result.js +1 -1
  100. package/public/components/fileuploader/fileuploader-result.js.map +1 -1
  101. package/public/components/fileuploader-result/fileuploader-result.svelte +4 -0
  102. package/public/components/pagination/Pagination.js +1 -1
  103. package/public/components/pagination/Pagination.js.map +1 -1
  104. package/public/components/pagination/Pagination.svelte +4 -6
  105. package/public/components/textinput/Textinput.js +1 -1
  106. package/public/components/textinput/Textinput.js.map +1 -1
  107. package/public/components/textinput/Textinput.svelte +9 -6
  108. package/public/utilities/ClickOutside.js +2 -0
  109. package/public/utilities/ClickOutside.js.map +1 -0
  110. package/public/utilities/DataTableUtilities.d.ts.map +1 -1
  111. package/public/utilities/DataTableUtilities.ts +3 -1
  112. package/public/utilities/components/datatable/data.d.ts +3 -1
  113. package/public/utilities/components/datatable/data.d.ts.map +1 -1
  114. package/public/utilities/components/datatable/datatable.types.d.ts +2 -0
  115. package/public/utilities/components/datatable/datatable.types.d.ts.map +1 -1
  116. package/public/utilities/stories/datatable/DataTable.stories.d.ts.map +1 -1
  117. package/public/utilities/utilities/DataTableUtilities.d.ts.map +1 -1
  118. package/public/DataTableUtilities-ccffa53e.js +0 -2
  119. package/public/DataTableUtilities-ccffa53e.js.map +0 -1
  120. package/public/adeo/DataTableUtilities-ccffa53e.js +0 -2
  121. package/public/adeo/DataTableUtilities-ccffa53e.js.map +0 -1
  122. package/public/bricoman/DataTableUtilities-ccffa53e.js +0 -2
  123. package/public/bricoman/DataTableUtilities-ccffa53e.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Autocomplete.js","sources":["../../../src/components/autocomplete/Autocomplete.svelte"],"sourcesContent":["<svelte:options tag={null} />\n\n<script lang=\"ts\">\n import { tick } from 'svelte';\n import {\n get_current_component,\n createEventDispatcher,\n } from 'svelte/internal';\n import { EventHandler } from '../../utilities/EventHandler';\n import { clickOutside } from '../../utilities/ClickOutside';\n import type { ListboxItems } from '../listbox/listbox.types';\n import type { TextInputSize } from '../textinput/textinput.types';\n\n import Tag from '../tag/Tag.nested.svelte';\n import Loader from '../loader/Loader.nested.svelte';\n import TextInput from '../textinput/Textinput.nested.svelte';\n import Listbox from '../listbox/Listbox.nested.svelte';\n\n export let maxwidth = '100%';\n export let tagid: string;\n export let taglabel = '';\n export let placeholder: string;\n export let filter = true;\n export let nofilter = false;\n export let disabled = false;\n export let size: TextInputSize = 'm';\n export let isinvalid: boolean;\n export let inputvalue: string;\n export let id: string;\n export let loading = false;\n export let required = false;\n export let items: string;\n export let value: any;\n export let open = false;\n export let multiple = false;\n export let emptysearchlabel = 'No results found';\n export let datatextexpr = 'label';\n export let datavalueexpr = 'value';\n export let nosort = false;\n export let layertitle = 'Title layer';\n export let showmoretagslabel = 'Show more';\n export let maxnumbertoshowtags = 12;\n export let alltags = false;\n export let selectall = false;\n export let labelselectall = 'Select all';\n\n const component: any = get_current_component();\n const uuid = Math.random();\n let eventHandler = new EventHandler(\n get_current_component(),\n createEventDispatcher(),\n );\n let tag: any;\n let tagWidth = '0px';\n let tagValue: any;\n let sortedListItems: any;\n let isfiltered = false;\n let selectedItems: ListboxItems[] = [];\n let openLayer: any = null;\n\n $: localInputValue = inputvalue;\n $: parsedItems = items ? (JSON.parse(items) as ListboxItems[]) : [];\n $: localItems = parsedItems;\n $: listboxValue = !value && multiple ? [] : value ? JSON.parse(value) : value;\n $: setTagLabel = () => {\n return listboxValue.length.toString() + ' ' + taglabel;\n };\n $: watchListboxValue(listboxValue);\n $: setTagWidth(tagValue);\n $: openState = open;\n $: {\n const eventName = openState ? 'open' : 'close';\n eventHandler.dispatch(eventName, openState);\n }\n $: attributes = { ...$$restProps };\n $: delete attributes.class;\n\n function clearListbox() {\n if (!disabled) {\n listboxValue = multiple ? [] : '';\n closeListBox();\n eventHandler.dispatch('clear', true);\n }\n }\n\n function closeListBox() {\n openState = false;\n\n if (multiple && !nosort) {\n sortItems();\n } else {\n localItems = parsedItems;\n }\n }\n\n function onChange() {\n eventHandler.dispatch('onchange', listboxValue);\n\n if (!multiple) {\n closeListBox();\n }\n }\n\n function getSelectedItems(val?: string) {\n const value = val ? val : listboxValue;\n\n const selectedItems = parsedItems.filter((item: ListboxItems) => {\n return multiple\n ? value.includes(item[datavalueexpr])\n : value === item[datavalueexpr];\n });\n return selectedItems;\n }\n\n function sortItems() {\n sortedListItems = parsedItems;\n const selectedItems = getSelectedItems();\n\n sortedListItems.sort((a: any, b: any) => {\n const hasItemA = selectedItems.includes(a);\n const hasItemB = selectedItems.includes(b);\n\n if (hasItemA === hasItemB) {\n return a[datavalueexpr] - b[datavalueexpr];\n } else if (hasItemA < hasItemB) {\n return 1;\n } else {\n return -1;\n }\n });\n\n localItems = sortedListItems;\n }\n\n function openLayerFn() {\n openLayer = true;\n }\n\n function closeLayerFn() {\n openLayer = null;\n }\n\n function handleInputValue(value: any) {\n eventHandler.dispatch('oninput', value);\n }\n\n function filterListbox(value: any) {\n if (nofilter || !filter) {\n return;\n }\n\n if (value.length) {\n localItems = parsedItems.filter((item: any) =>\n item[datatextexpr].toUpperCase().includes(value.toUpperCase()),\n );\n } else {\n localItems = parsedItems;\n }\n\n isfiltered = !localItems.length;\n\n eventHandler.dispatch('onfilter', localItems);\n }\n\n function onInput(e: Event) {\n const value = (e.target as HTMLInputElement).value;\n handleInputValue(value);\n filterListbox(value);\n }\n\n function onScrollEnd() {\n eventHandler.dispatch('scrollend', true);\n }\n\n function onSelectAll(e: CustomEvent) {\n eventHandler.dispatch('select-all', e.detail);\n }\n\n function removeTagSelected(itemSelectedId: any) {\n listboxValue = listboxValue.filter(\n (value: any) => value !== itemSelectedId,\n );\n eventHandler.dispatch('onchange', listboxValue);\n }\n\n // Watch Functions\n async function watchListboxValue(value: any) {\n await tick();\n selectedItems = getSelectedItems(value);\n if (!multiple) {\n const seletedLabels = selectedItems.map((item) => item[datatextexpr]);\n localInputValue = seletedLabels.join(', ');\n } else {\n tagValue = value;\n }\n }\n\n async function setTagWidth(tagValue: any) {\n await tick();\n\n tagWidth =\n tag && tagValue && tagValue.length\n ? `${\n component.shadowRoot.querySelector('.mc-tag-removable').clientWidth\n }px`\n : '0px';\n }\n</script>\n\n<div\n class=\"mc-autocomplete\"\n class:mc-autocomplete--multi={multiple}\n style=\"--autocomplete-tag-width: {tagWidth}; --autocomplete-width: {maxwidth};\"\n use:clickOutside\n on:outclick={closeListBox}\n {...attributes}\n>\n <div class=\"mc-autocomplete__main\">\n <!-- TAG REMOVABLE -->\n {#if multiple && listboxValue.length > 0 && !alltags}\n <Tag\n id={tagid ? tagid : `autocompleteTag-${uuid}`}\n class=\"mc-autocomplete__tag\"\n label={setTagLabel()}\n size=\"s\"\n type=\"removable\"\n dark={false}\n disabled={false}\n href=\"\"\n name=\"\"\n value=\"\"\n selected={false}\n bind:this={tag}\n on:tag-removed={clearListbox}\n />\n {/if}\n\n <!-- TEXT INPUT -->\n <TextInput\n classinput=\"mc-autocomplete__trigger\"\n name={id}\n bind:value={localInputValue}\n {placeholder}\n inputtype=\"text\"\n {isinvalid}\n {disabled}\n {size}\n {required}\n iconname=\"navigation-display-search-24px\"\n rightalign={false}\n isvalid={false}\n min=\"\"\n max=\"\"\n on:input={onInput}\n on:click={() => (openState = true)}\n on:change\n on:blur\n />\n\n <div class=\"mc-autocomplete__tools\">\n <!-- LOADER -->\n {#if loading}\n <Loader\n size=\"s\"\n theme=\"primary\"\n text=\"\"\n class=\"mc-autocomplete__loader\"\n />\n {/if}\n\n <!-- CLEAR BUTTON -->\n {#if localInputValue != null && localInputValue != '' && !disabled}\n <button\n class=\"mc-autocomplete__clear\"\n type=\"button\"\n on:click|stopPropagation={() => {\n localInputValue = '';\n localItems = parsedItems;\n isfiltered = false;\n if (!multiple) {\n clearListbox();\n }\n }}\n >\n <navigation-control-tag--cross-24px />\n <span class=\"mc-autocomplete__clear-text\">Clear</span>\n </button>\n {/if}\n </div>\n </div>\n\n <!-- LISTBOX -->\n <Listbox\n items={JSON.stringify(localItems)}\n open={openState}\n {multiple}\n {isfiltered}\n {emptysearchlabel}\n {maxwidth}\n {datatextexpr}\n {datavalueexpr}\n {selectall}\n {labelselectall}\n bind:value={listboxValue}\n on:change={onChange}\n on:scrollend={onScrollEnd}\n on:select-all={onSelectAll}\n />\n\n {#if multiple && alltags}\n <div class=\"tags-selected\">\n {#each selectedItems as selectedItem, index}\n {#if index < maxnumbertoshowtags}\n <div class=\"tag-selected\">\n {#if disabled}\n <m-tag\n type=\"link\"\n id={selectedItem.id}\n label={selectedItem.label}\n size=\"s\"\n dark={true}\n />\n {:else}\n <m-tag\n id={selectedItem.id}\n label={selectedItem.label}\n size=\"s\"\n type=\"removable\"\n on:tag-removed={() => removeTagSelected(selectedItem.id)}\n />\n {/if}\n </div>\n {/if}\n {/each}\n {#if listboxValue.length > maxnumbertoshowtags}\n <!-- svelte-ignore a11y-click-events-have-key-events -->\n <div class=\"tag-selected\" on:click={() => openLayerFn()}>\n <m-tag\n id=\"id-tag\"\n label=\"({listboxValue.length}) {showmoretagslabel} \"\n size=\"s\"\n type=\"link\"\n />\n </div>\n {/if}\n </div>\n {/if}\n\n <!-- <span class=\"mc-autocomplete__tag\" style=\"display:none;\" /> -->\n <span class=\"mc-autocomplete__loader\" style=\"display:none;\" />\n <span class=\"mc-text-input mc-autocomplete__trigger\" style=\"display:none;\" />\n\n {#if multiple && alltags}\n <div>\n <m-layer\n title={layertitle}\n layertitletag=\"h3\"\n isopen={openLayer}\n on:layer-closed={() => closeLayerFn()}\n >\n <small slot=\"content\">\n <div class=\"tags-selected\">\n {#each selectedItems as selectedItem}\n <div class=\"tag-selected\">\n {#if disabled}\n <m-tag\n type=\"text\"\n id={selectedItem.id}\n label={selectedItem.label}\n size=\"s\"\n />\n {:else}\n <m-tag\n id={selectedItem.id}\n label={selectedItem.label}\n size=\"s\"\n type=\"removable\"\n on:tag-removed={() => removeTagSelected(selectedItem.id)}\n />\n {/if}\n </div>\n {/each}\n </div>\n </small>\n </m-layer>\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.autocomplete';\n\n // Autocomplete\n // NOTE: These styles with the \"!important\" allow to overload the edge effects\n // due to the scoping applied by Svelte on the CSS selectors\n .mc-autocomplete {\n &__tag {\n position: absolute !important; // due to the Svelte CSS scope\n }\n\n &--multi {\n .mc-autocomplete__trigger {\n padding-left: calc(\n 2.9375rem + var(--autocomplete-tag-width)\n ) !important;\n }\n }\n }\n\n // Selected Tags\n .tags-selected {\n display: flex;\n flex-wrap: wrap;\n }\n\n .tag-selected {\n margin-top: 1em;\n margin-left: 5px;\n margin-right: 5px;\n }\n</style>\n"],"names":["ctx","insert","target","button","anchor","length","i","create_if_block_3","div","create_if_block_5","set_custom_element_data","m_tag","m_tag_id_value","id","m_tag_label_value","label","dirty","if_block","create_if_block_4","append","div1","m_layer","small","div0","create_if_block_1","if_block0","create_if_block_8","create_if_block_7","if_block2","create_if_block_6","JSON","stringify","if_block3","create_if_block_2","if_block4","create_if_block","style","div2_style_value","div2","span0","span1","current","maxwidth","$$props","tagid","taglabel","placeholder","filter","nofilter","disabled","size","isinvalid","inputvalue","loading","required","items","value","open","multiple","emptysearchlabel","datatextexpr","datavalueexpr","nosort","layertitle","showmoretagslabel","maxnumbertoshowtags","alltags","selectall","labelselectall","component","get_current_component","uuid","Math","random","tag","tagValue","sortedListItems","eventHandler","EventHandler","createEventDispatcher","tagWidth","isfiltered","selectedItems","openLayer","clearListbox","listboxValue","closeListBox","dispatch","$$invalidate","openState","parsedItems","getSelectedItems","sort","a","b","hasItemA","includes","hasItemB","localItems","sortItems","val","item","openLayerFn","closeLayerFn","removeTagSelected","itemSelectedId","localInputValue","parse","setTagLabel","toString","async","tick","seletedLabels","map","join","watchListboxValue","shadowRoot","querySelector","clientWidth","setTagWidth","eventName","attributes","Object","assign","$$restProps","class","e","handleInputValue","toUpperCase","filterListbox","detail","$$value","value$1","selectedItem"],"mappings":"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"}
1
+ {"version":3,"file":"Autocomplete.js","sources":["../../../src/components/autocomplete/Autocomplete.svelte"],"sourcesContent":["<svelte:options tag={null} />\n\n<script lang=\"ts\">\n import { tick } from 'svelte';\n import {\n get_current_component,\n createEventDispatcher,\n } from 'svelte/internal';\n import { EventHandler } from '../../utilities/EventHandler';\n import { clickOutside } from '../../utilities/ClickOutside';\n import type { ListboxItems } from '../listbox/listbox.types';\n import type { TextInputSize } from '../textinput/textinput.types';\n\n import Tag from '../tag/Tag.nested.svelte';\n import Loader from '../loader/Loader.nested.svelte';\n import TextInput from '../textinput/Textinput.nested.svelte';\n import Listbox from '../listbox/Listbox.nested.svelte';\n\n export let maxwidth = '100%';\n export let tagid: string;\n export let taglabel = '';\n export let placeholder: string;\n export let filter = true;\n export let nofilter = false;\n export let disabled = false;\n export let size: TextInputSize = 'm';\n export let isinvalid: boolean;\n export let inputvalue: string;\n export let id: string;\n export let loading = false;\n export let required = false;\n export let items: string;\n export let value: any;\n export let open = false;\n export let multiple = false;\n export let emptysearchlabel = 'No results found';\n export let datatextexpr = 'label';\n export let datavalueexpr = 'value';\n export let nosort = false;\n export let layertitle = 'Title layer';\n export let showmoretagslabel = 'Show more';\n export let maxnumbertoshowtags = 12;\n export let alltags = false;\n export let selectall = false;\n export let labelselectall = 'Select all';\n\n let component: HTMLDivElement;\n const uuid = Math.random();\n let eventHandler = new EventHandler(\n get_current_component(),\n createEventDispatcher(),\n );\n let tag: any;\n let tagWidth = '0px';\n let tagValue: any;\n let sortedListItems: any;\n let isfiltered = false;\n let selectedItems: ListboxItems[] = [];\n let openLayer: any = null;\n\n $: localInputValue = inputvalue;\n $: parsedItems = items ? (JSON.parse(items) as ListboxItems[]) : [];\n $: localItems = parsedItems;\n $: listboxValue = !value && multiple ? [] : value ? JSON.parse(value) : value;\n $: setTagLabel = () => {\n return listboxValue.length.toString() + ' ' + taglabel;\n };\n $: watchListboxValue(listboxValue);\n $: setTagWidth(tagValue);\n $: openState = open;\n $: {\n const eventName = openState ? 'open' : 'close';\n eventHandler.dispatch(eventName, openState);\n }\n $: attributes = { ...$$restProps };\n $: delete attributes.class;\n\n function clearListbox() {\n if (!disabled) {\n listboxValue = multiple ? [] : '';\n closeListBox();\n eventHandler.dispatch('clear', true);\n }\n }\n\n function closeListBox() {\n openState = false;\n\n if (multiple && !nosort) {\n sortItems();\n } else {\n localItems = parsedItems;\n }\n }\n\n function onChange() {\n eventHandler.dispatch('onchange', listboxValue);\n\n if (!multiple) {\n closeListBox();\n }\n }\n\n function getSelectedItems(val?: string) {\n const value = val ? val : listboxValue;\n\n const selectedItems = parsedItems.filter((item: ListboxItems) => {\n return multiple\n ? value.includes(item[datavalueexpr])\n : value === item[datavalueexpr];\n });\n return selectedItems;\n }\n\n function sortItems() {\n sortedListItems = parsedItems;\n const selectedItems = getSelectedItems();\n\n sortedListItems.sort((a: any, b: any) => {\n const hasItemA = selectedItems.includes(a);\n const hasItemB = selectedItems.includes(b);\n\n if (hasItemA === hasItemB) {\n return a[datavalueexpr] - b[datavalueexpr];\n } else if (hasItemA < hasItemB) {\n return 1;\n } else {\n return -1;\n }\n });\n\n localItems = sortedListItems;\n }\n\n function openLayerFn() {\n openLayer = true;\n }\n\n function closeLayerFn() {\n openLayer = null;\n }\n\n function handleInputValue(value: any) {\n eventHandler.dispatch('oninput', value);\n }\n\n function filterListbox(value: any) {\n if (nofilter || !filter) {\n return;\n }\n\n if (value.length) {\n localItems = parsedItems.filter((item: any) =>\n item[datatextexpr].toUpperCase().includes(value.toUpperCase()),\n );\n } else {\n localItems = parsedItems;\n }\n\n isfiltered = !localItems.length;\n\n eventHandler.dispatch('onfilter', localItems);\n }\n\n function onInput(e: Event) {\n const value = (e.target as HTMLInputElement).value;\n handleInputValue(value);\n filterListbox(value);\n }\n\n function onScrollEnd() {\n eventHandler.dispatch('scrollend', true);\n }\n\n function onSelectAll(e: CustomEvent) {\n eventHandler.dispatch('select-all', e.detail);\n }\n\n function removeTagSelected(itemSelectedId: any) {\n listboxValue = listboxValue.filter(\n (value: any) => value !== itemSelectedId,\n );\n eventHandler.dispatch('onchange', listboxValue);\n }\n\n // Watch Functions\n async function watchListboxValue(value: any) {\n try {\n await tick();\n selectedItems = getSelectedItems(value);\n if (!multiple) {\n const seletedLabels = selectedItems.map((item) => item[datatextexpr]);\n localInputValue = seletedLabels.join(', ');\n } else {\n tagValue = value;\n }\n } catch (e) {\n console.error(e);\n }\n }\n\n async function setTagWidth(tagValue: any) {\n try {\n await tick();\n\n tagWidth =\n tag && tagValue && tagValue.length\n ? `${component?.querySelector('.mc-tag-removable')?.clientWidth}px`\n : '0px';\n } catch (e) {\n console.error(e);\n }\n }\n</script>\n\n<div\n class=\"mc-autocomplete\"\n class:mc-autocomplete--multi={multiple}\n style=\"--autocomplete-tag-width: {tagWidth}; --autocomplete-width: {maxwidth};\"\n use:clickOutside\n on:outclick={closeListBox}\n {...attributes}\n bind:this={component}\n>\n <div class=\"mc-autocomplete__main\">\n <!-- TAG REMOVABLE -->\n {#if multiple && listboxValue.length > 0 && !alltags}\n <Tag\n id={tagid ? tagid : `autocompleteTag-${uuid}`}\n class=\"mc-autocomplete__tag\"\n label={setTagLabel()}\n size=\"s\"\n type=\"removable\"\n dark={false}\n disabled={false}\n href=\"\"\n name=\"\"\n value=\"\"\n selected={false}\n bind:this={tag}\n on:tag-removed={clearListbox}\n />\n {/if}\n\n <!-- TEXT INPUT -->\n <TextInput\n classinput=\"mc-autocomplete__trigger\"\n name={id}\n bind:value={localInputValue}\n {placeholder}\n inputtype=\"text\"\n {isinvalid}\n {disabled}\n {size}\n {required}\n iconname=\"navigation-display-search-24px\"\n rightalign={false}\n isvalid={false}\n min=\"\"\n max=\"\"\n on:input={onInput}\n on:click={() => (openState = true)}\n on:change\n on:blur\n />\n\n <div class=\"mc-autocomplete__tools\">\n <!-- LOADER -->\n {#if loading}\n <Loader\n size=\"s\"\n theme=\"primary\"\n text=\"\"\n class=\"mc-autocomplete__loader\"\n />\n {/if}\n\n <!-- CLEAR BUTTON -->\n {#if localInputValue != null && localInputValue != '' && !disabled}\n <button\n class=\"mc-autocomplete__clear\"\n type=\"button\"\n on:click|stopPropagation={() => {\n localInputValue = '';\n localItems = parsedItems;\n isfiltered = false;\n if (!multiple) {\n clearListbox();\n }\n }}\n >\n <navigation-control-tag--cross-24px />\n <span class=\"mc-autocomplete__clear-text\">Clear</span>\n </button>\n {/if}\n </div>\n </div>\n\n <!-- LISTBOX -->\n <Listbox\n items={JSON.stringify(localItems)}\n open={openState}\n {multiple}\n {isfiltered}\n {emptysearchlabel}\n {maxwidth}\n {datatextexpr}\n {datavalueexpr}\n {selectall}\n {labelselectall}\n bind:value={listboxValue}\n on:change={onChange}\n on:scrollend={onScrollEnd}\n on:select-all={onSelectAll}\n />\n\n {#if multiple && alltags}\n <div class=\"tags-selected\">\n {#each selectedItems as selectedItem, index}\n {#if index < maxnumbertoshowtags}\n <div class=\"tag-selected\">\n {#if disabled}\n <m-tag\n type=\"link\"\n id={selectedItem.id}\n label={selectedItem.label}\n size=\"s\"\n dark={true}\n />\n {:else}\n <m-tag\n id={selectedItem.id}\n label={selectedItem.label}\n size=\"s\"\n type=\"removable\"\n on:tag-removed={() => removeTagSelected(selectedItem.id)}\n />\n {/if}\n </div>\n {/if}\n {/each}\n {#if listboxValue.length > maxnumbertoshowtags}\n <!-- svelte-ignore a11y-click-events-have-key-events -->\n <div class=\"tag-selected\" on:click={() => openLayerFn()}>\n <m-tag\n id=\"id-tag\"\n label=\"({listboxValue.length}) {showmoretagslabel} \"\n size=\"s\"\n type=\"link\"\n />\n </div>\n {/if}\n </div>\n {/if}\n\n <!-- <span class=\"mc-autocomplete__tag\" style=\"display:none;\" /> -->\n <span class=\"mc-autocomplete__loader\" style=\"display:none;\" />\n <span class=\"mc-text-input mc-autocomplete__trigger\" style=\"display:none;\" />\n\n {#if multiple && alltags}\n <div>\n <m-layer\n title={layertitle}\n layertitletag=\"h3\"\n isopen={openLayer}\n on:layer-closed={() => closeLayerFn()}\n >\n <small slot=\"content\">\n <div class=\"tags-selected\">\n {#each selectedItems as selectedItem}\n <div class=\"tag-selected\">\n {#if disabled}\n <m-tag\n type=\"text\"\n id={selectedItem.id}\n label={selectedItem.label}\n size=\"s\"\n />\n {:else}\n <m-tag\n id={selectedItem.id}\n label={selectedItem.label}\n size=\"s\"\n type=\"removable\"\n on:tag-removed={() => removeTagSelected(selectedItem.id)}\n />\n {/if}\n </div>\n {/each}\n </div>\n </small>\n </m-layer>\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.autocomplete';\n\n // Autocomplete\n // NOTE: These styles with the \"!important\" allow to overload the edge effects\n // due to the scoping applied by Svelte on the CSS selectors\n .mc-autocomplete {\n &__tag {\n position: absolute !important; // due to the Svelte CSS scope\n }\n\n &--multi {\n .mc-autocomplete__trigger {\n padding-left: calc(\n 2.9375rem + var(--autocomplete-tag-width)\n ) !important;\n }\n }\n }\n\n // Selected Tags\n .tags-selected {\n display: flex;\n flex-wrap: wrap;\n }\n\n .tag-selected {\n margin-top: 1em;\n margin-left: 5px;\n margin-right: 5px;\n }\n</style>\n"],"names":["ctx","insert","target","button","anchor","length","i","create_if_block_3","div","create_if_block_5","set_custom_element_data","m_tag","m_tag_id_value","id","m_tag_label_value","label","dirty","if_block","create_if_block_4","append","div1","m_layer","small","div0","create_if_block_1","if_block0","create_if_block_8","create_if_block_7","if_block2","create_if_block_6","JSON","stringify","if_block3","create_if_block_2","if_block4","create_if_block","style","div2_style_value","div2","span0","span1","current","component","maxwidth","$$props","tagid","taglabel","placeholder","filter","nofilter","disabled","size","isinvalid","inputvalue","loading","required","items","value","open","multiple","emptysearchlabel","datatextexpr","datavalueexpr","nosort","layertitle","showmoretagslabel","maxnumbertoshowtags","alltags","selectall","labelselectall","uuid","Math","random","tag","tagValue","sortedListItems","eventHandler","EventHandler","get_current_component","createEventDispatcher","tagWidth","isfiltered","selectedItems","openLayer","clearListbox","listboxValue","closeListBox","dispatch","$$invalidate","openState","parsedItems","getSelectedItems","sort","a","b","hasItemA","includes","hasItemB","localItems","sortItems","val","item","openLayerFn","closeLayerFn","removeTagSelected","itemSelectedId","localInputValue","parse","setTagLabel","toString","async","tick","seletedLabels","map","join","e","console","error","watchListboxValue","_a","querySelector","clientWidth","setTagWidth","eventName","attributes","Object","assign","$$restProps","class","handleInputValue","toUpperCase","filterListbox","detail","$$value","value$1","selectedItem"],"mappings":"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"}
@@ -44,7 +44,7 @@
44
44
  export let selectall = false;
45
45
  export let labelselectall = 'Select all';
46
46
 
47
- const component: any = get_current_component();
47
+ let component: HTMLDivElement;
48
48
  const uuid = Math.random();
49
49
  let eventHandler = new EventHandler(
50
50
  get_current_component(),
@@ -185,25 +185,31 @@
185
185
 
186
186
  // Watch Functions
187
187
  async function watchListboxValue(value: any) {
188
- await tick();
189
- selectedItems = getSelectedItems(value);
190
- if (!multiple) {
191
- const seletedLabels = selectedItems.map((item) => item[datatextexpr]);
192
- localInputValue = seletedLabels.join(', ');
193
- } else {
194
- tagValue = value;
188
+ try {
189
+ await tick();
190
+ selectedItems = getSelectedItems(value);
191
+ if (!multiple) {
192
+ const seletedLabels = selectedItems.map((item) => item[datatextexpr]);
193
+ localInputValue = seletedLabels.join(', ');
194
+ } else {
195
+ tagValue = value;
196
+ }
197
+ } catch (e) {
198
+ console.error(e);
195
199
  }
196
200
  }
197
201
 
198
202
  async function setTagWidth(tagValue: any) {
199
- await tick();
200
-
201
- tagWidth =
202
- tag && tagValue && tagValue.length
203
- ? `${
204
- component.shadowRoot.querySelector('.mc-tag-removable').clientWidth
205
- }px`
206
- : '0px';
203
+ try {
204
+ await tick();
205
+
206
+ tagWidth =
207
+ tag && tagValue && tagValue.length
208
+ ? `${component?.querySelector('.mc-tag-removable')?.clientWidth}px`
209
+ : '0px';
210
+ } catch (e) {
211
+ console.error(e);
212
+ }
207
213
  }
208
214
  </script>
209
215
 
@@ -214,6 +220,7 @@
214
220
  use:clickOutside
215
221
  on:outclick={closeListBox}
216
222
  {...attributes}
223
+ bind:this={component}
217
224
  >
218
225
  <div class="mc-autocomplete__main">
219
226
  <!-- TAG REMOVABLE -->