@aquera/nile-elements 0.0.38-6 → 0.0.39
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/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/index.d.ts +3 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/index.js +3 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/index.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-filter/index.d.ts +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-filter/index.js +2 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-filter/index.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-filter/nile-button-filter.css.d.ts +12 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-filter/nile-button-filter.css.js +38 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-filter/nile-button-filter.css.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-filter/nile-button-filter.d.ts +36 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-filter/nile-button-filter.js +100 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-filter/nile-button-filter.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-toggle/nile-button-toggle.css.js +2 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-button-toggle/nile-button-toggle.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-calendar/nile-calendar.css.js +50 -28
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-calendar/nile-calendar.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-calendar/nile-calendar.js +13 -13
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-calendar/nile-calendar.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-chip/nile-chip.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-chip/nile-chip.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-form-group/index.d.ts +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-form-group/index.js +2 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-form-group/index.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-form-group/nile-form-group.css.d.ts +12 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-form-group/nile-form-group.css.js +85 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-form-group/nile-form-group.css.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-form-group/nile-form-group.d.ts +37 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-form-group/nile-form-group.js +80 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-form-group/nile-form-group.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/bar-chart-square-02.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/bar-chart-square-02.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/bar-chart-square-02.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/border_all.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/border_all.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/border_all.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/check-done-01.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/check-done-01.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/check-done-01.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/columns-03.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/columns-03.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/columns-03.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/combo1.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/combo1.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/combo1.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/database-1.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/database-1.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/database-1.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/donut.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/donut.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/donut.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/dots-grid.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/dots-grid.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/dots-grid.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/file-shield-02.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/file-shield-02.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/file-shield-02.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/filter-1.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/filter-1.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/filter-1.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/fingerprint-03.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/fingerprint-03.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/fingerprint-03.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/graph.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/graph.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/graph.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/graphedit.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/graphedit.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/graphedit.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/index.d.ts +27 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/index.js +27 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/index.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/laptop-01.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/laptop-01.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/laptop-01.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/layers-three-01.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/layers-three-01.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/layers-three-01.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/life-buoy-01.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/life-buoy-01.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/life-buoy-01.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/line.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/line.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/line.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/list.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/list.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/list.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/message-notification-square.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/message-notification-square.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/message-notification-square.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/numbers.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/numbers.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/numbers.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/pie.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/pie.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/pie.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/settings-1.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/settings-1.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/settings-1.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/shield-01.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/shield-01.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/shield-01.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/table-1.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/table-1.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/table-1.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/user-03.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/user-03.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/user-03.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/user-square.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/user-square.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/user-square.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/users-02.d.ts +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/users-02.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-icon/icons/svg/users-02.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-menu/nile-menu.css.js +2 -2
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-menu/nile-menu.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-menu/nile-menu.d.ts +6 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-menu/nile-menu.js +65 -8
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-menu/nile-menu.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-menu-item/nile-menu-item.css.js +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-menu-item/nile-menu-item.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-popover/index.d.ts +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-popover/index.js +2 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-popover/index.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-popover/nile-popover.css.d.ts +12 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-popover/nile-popover.css.js +50 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-popover/nile-popover.css.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-popover/nile-popover.d.ts +46 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-popover/nile-popover.js +114 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-popover/nile-popover.js.map +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-radio/nile-radio.css.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-radio/nile-radio.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-radio/nile-radio.d.ts +2 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-radio/nile-radio.js +6 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-radio/nile-radio.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-radio-group/nile-radio-group.css.js +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-radio-group/nile-radio-group.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-radio-group/nile-radio-group.d.ts +2 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-radio-group/nile-radio-group.js +13 -2
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-radio-group/nile-radio-group.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-select/nile-select.d.ts +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-select/nile-select.js +6 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-select/nile-select.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tab/nile-tab.css.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tab/nile-tab.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tab/nile-tab.d.ts +1 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tab/nile-tab.js +5 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tab/nile-tab.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tab-group/nile-tab-group.d.ts +2 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tab-group/nile-tab-group.js +8 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tab-group/nile-tab-group.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tooltip/nile-tooltip.css.d.ts +5 -5
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tooltip/nile-tooltip.css.js +14 -9
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tooltip/nile-tooltip.css.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tooltip/nile-tooltip.d.ts +2 -0
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tooltip/nile-tooltip.js +22 -10
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/src/nile-tooltip/nile-tooltip.js.map +1 -1
- package/.rollup.cache/opt/atlassian/pipelines/agent/build/packages/nile-elements/dist/tsconfig.tsbuildinfo +1 -1
- package/demo/filenames.txt +1 -1
- package/demo/filenames.txt +1 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.iife.js +439 -181
- package/dist/nile-badge/index.cjs.js +1 -1
- package/dist/nile-badge/index.esm.js +1 -1
- package/dist/nile-badge/nile-badge.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
- package/dist/nile-badge/nile-badge.esm.js +1 -1
- package/dist/nile-button/index.cjs.js +1 -1
- package/dist/nile-button/index.esm.js +1 -1
- package/dist/nile-button/nile-button.cjs.js +1 -1
- package/dist/nile-button/nile-button.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.esm.js +11 -11
- package/dist/nile-button-filter/index.cjs.js +2 -0
- package/dist/nile-button-filter/index.cjs.js.map +1 -0
- package/dist/nile-button-filter/index.esm.js +1 -0
- package/dist/nile-button-filter/nile-button-filter.cjs.js +2 -0
- package/dist/nile-button-filter/nile-button-filter.cjs.js.map +1 -0
- package/dist/nile-button-filter/nile-button-filter.css.cjs.js +2 -0
- package/dist/nile-button-filter/nile-button-filter.css.cjs.js.map +1 -0
- package/dist/nile-button-filter/nile-button-filter.css.esm.js +26 -0
- package/dist/nile-button-filter/nile-button-filter.esm.js +31 -0
- package/dist/nile-button-toggle/nile-button-toggle.css.cjs.js +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.css.cjs.js.map +1 -1
- package/dist/nile-button-toggle/nile-button-toggle.css.esm.js +2 -1
- package/dist/nile-calendar/nile-calendar.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.cjs.js.map +1 -1
- package/dist/nile-calendar/nile-calendar.css.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.css.cjs.js.map +1 -1
- package/dist/nile-calendar/nile-calendar.css.esm.js +50 -28
- package/dist/nile-calendar/nile-calendar.esm.js +22 -23
- package/dist/nile-chip/nile-chip.cjs.js +1 -1
- package/dist/nile-chip/nile-chip.cjs.js.map +1 -1
- package/dist/nile-chip/nile-chip.esm.js +1 -1
- package/dist/nile-dialog/index.cjs.js +1 -1
- package/dist/nile-dialog/index.esm.js +1 -1
- package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
- package/dist/nile-dialog/nile-dialog.esm.js +1 -1
- package/dist/nile-form-group/index.cjs.js +2 -0
- package/dist/nile-form-group/index.cjs.js.map +1 -0
- package/dist/nile-form-group/index.esm.js +1 -0
- package/dist/nile-form-group/nile-form-group.cjs.js +2 -0
- package/dist/nile-form-group/nile-form-group.cjs.js.map +1 -0
- package/dist/nile-form-group/nile-form-group.css.cjs.js +2 -0
- package/dist/nile-form-group/nile-form-group.css.cjs.js.map +1 -0
- package/dist/nile-form-group/nile-form-group.css.esm.js +73 -0
- package/dist/nile-form-group/nile-form-group.esm.js +19 -0
- package/dist/nile-icon/icons/svg/bar-chart-square-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/bar-chart-square-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/bar-chart-square-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/border_all.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/border_all.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/border_all.esm.js +1 -0
- package/dist/nile-icon/icons/svg/check-done-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/check-done-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/check-done-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/columns-03.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/columns-03.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/columns-03.esm.js +1 -0
- package/dist/nile-icon/icons/svg/combo1.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/combo1.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/combo1.esm.js +1 -0
- package/dist/nile-icon/icons/svg/database-1.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/database-1.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/database-1.esm.js +1 -0
- package/dist/nile-icon/icons/svg/donut.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/donut.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/donut.esm.js +1 -0
- package/dist/nile-icon/icons/svg/dots-grid.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/dots-grid.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/dots-grid.esm.js +1 -0
- package/dist/nile-icon/icons/svg/file-shield-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/file-shield-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/file-shield-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/filter-1.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/filter-1.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/filter-1.esm.js +1 -0
- package/dist/nile-icon/icons/svg/fingerprint-03.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/fingerprint-03.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/fingerprint-03.esm.js +1 -0
- package/dist/nile-icon/icons/svg/graph.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/graph.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/graph.esm.js +1 -0
- package/dist/nile-icon/icons/svg/graphedit.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/graphedit.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/graphedit.esm.js +1 -0
- package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
- package/dist/nile-icon/icons/svg/index.esm.js +1 -1
- package/dist/nile-icon/icons/svg/laptop-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/laptop-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/laptop-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/layers-three-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/layers-three-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/layers-three-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/life-buoy-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/life-buoy-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/life-buoy-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/line.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/line.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/line.esm.js +1 -0
- package/dist/nile-icon/icons/svg/list.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/list.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/list.esm.js +1 -0
- package/dist/nile-icon/icons/svg/message-notification-square.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/message-notification-square.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/message-notification-square.esm.js +1 -0
- package/dist/nile-icon/icons/svg/numbers.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/numbers.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/numbers.esm.js +1 -0
- package/dist/nile-icon/icons/svg/pie.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/pie.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/pie.esm.js +1 -0
- package/dist/nile-icon/icons/svg/settings-1.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/settings-1.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/settings-1.esm.js +1 -0
- package/dist/nile-icon/icons/svg/shield-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/shield-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/shield-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/table-1.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/table-1.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/table-1.esm.js +1 -0
- package/dist/nile-icon/icons/svg/user-03.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/user-03.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/user-03.esm.js +1 -0
- package/dist/nile-icon/icons/svg/user-square.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/user-square.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/user-square.esm.js +1 -0
- package/dist/nile-icon/icons/svg/users-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/users-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/users-02.esm.js +1 -0
- package/dist/nile-icon/index.cjs.js +1 -1
- package/dist/nile-icon/index.cjs.js.map +1 -1
- package/dist/nile-icon/index.esm.js +2 -2
- package/dist/nile-icon-button/index.cjs.js +1 -1
- package/dist/nile-icon-button/index.esm.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
- package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
- package/dist/nile-input/index.cjs.js +1 -1
- package/dist/nile-input/index.esm.js +1 -1
- package/dist/nile-input/nile-input.cjs.js +1 -1
- package/dist/nile-input/nile-input.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.esm.js +1 -1
- package/dist/nile-menu/nile-menu.cjs.js +1 -1
- package/dist/nile-menu/nile-menu.cjs.js.map +1 -1
- package/dist/nile-menu/nile-menu.css.cjs.js +1 -1
- package/dist/nile-menu/nile-menu.css.cjs.js.map +1 -1
- package/dist/nile-menu/nile-menu.css.esm.js +2 -2
- package/dist/nile-menu/nile-menu.esm.js +21 -8
- package/dist/nile-menu-item/index.cjs.js +1 -1
- package/dist/nile-menu-item/index.esm.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
- package/dist/nile-menu-item/nile-menu-item.css.cjs.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.css.cjs.js.map +1 -1
- package/dist/nile-menu-item/nile-menu-item.css.esm.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.esm.js +1 -1
- package/dist/nile-option/index.cjs.js +1 -1
- package/dist/nile-option/index.esm.js +1 -1
- package/dist/nile-option/nile-option.cjs.js +1 -1
- package/dist/nile-option/nile-option.cjs.js.map +1 -1
- package/dist/nile-option/nile-option.esm.js +1 -1
- package/dist/nile-popover/index.cjs.js +2 -0
- package/dist/nile-popover/index.cjs.js.map +1 -0
- package/dist/nile-popover/index.esm.js +1 -0
- package/dist/nile-popover/nile-popover.cjs.js +2 -0
- package/dist/nile-popover/nile-popover.cjs.js.map +1 -0
- package/dist/nile-popover/nile-popover.css.cjs.js +2 -0
- package/dist/nile-popover/nile-popover.css.cjs.js.map +1 -0
- package/dist/nile-popover/nile-popover.css.esm.js +38 -0
- package/dist/nile-popover/nile-popover.esm.js +27 -0
- package/dist/nile-radio/nile-radio.cjs.js +1 -1
- package/dist/nile-radio/nile-radio.cjs.js.map +1 -1
- package/dist/nile-radio/nile-radio.css.cjs.js +1 -1
- package/dist/nile-radio/nile-radio.css.cjs.js.map +1 -1
- package/dist/nile-radio/nile-radio.css.esm.js +5 -0
- package/dist/nile-radio/nile-radio.esm.js +3 -3
- package/dist/nile-radio-group/nile-radio-group.cjs.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.cjs.js.map +1 -1
- package/dist/nile-radio-group/nile-radio-group.css.cjs.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.css.cjs.js.map +1 -1
- package/dist/nile-radio-group/nile-radio-group.css.esm.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.esm.js +2 -2
- package/dist/nile-select/index.cjs.js +1 -1
- package/dist/nile-select/index.esm.js +1 -1
- package/dist/nile-select/nile-select.cjs.js +1 -1
- package/dist/nile-select/nile-select.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.esm.js +3 -3
- package/dist/nile-tab/index.cjs.js +1 -1
- package/dist/nile-tab/index.esm.js +1 -1
- package/dist/nile-tab/nile-tab.cjs.js +1 -1
- package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
- package/dist/nile-tab/nile-tab.css.cjs.js +1 -1
- package/dist/nile-tab/nile-tab.css.cjs.js.map +1 -1
- package/dist/nile-tab/nile-tab.css.esm.js +7 -2
- package/dist/nile-tab/nile-tab.esm.js +3 -3
- package/dist/nile-tab-group/index.cjs.js +1 -1
- package/dist/nile-tab-group/index.esm.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
- package/dist/nile-tab-group/nile-tab-group.esm.js +2 -2
- package/dist/nile-tag/index.cjs.js +1 -1
- package/dist/nile-tag/index.esm.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
- package/dist/nile-tag/nile-tag.esm.js +2 -2
- package/dist/nile-toast/index.cjs.js +1 -1
- package/dist/nile-toast/index.esm.js +1 -1
- package/dist/nile-toast/nile-toast.cjs.js +1 -1
- package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
- package/dist/nile-toast/nile-toast.esm.js +2 -2
- package/dist/nile-tooltip/nile-tooltip.cjs.js +1 -1
- package/dist/nile-tooltip/nile-tooltip.cjs.js.map +1 -1
- package/dist/nile-tooltip/nile-tooltip.css.cjs.js +1 -1
- package/dist/nile-tooltip/nile-tooltip.css.cjs.js.map +1 -1
- package/dist/nile-tooltip/nile-tooltip.css.esm.js +9 -4
- package/dist/nile-tooltip/nile-tooltip.esm.js +3 -3
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.js +3 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/nile-button-filter/index.d.ts +1 -0
- package/dist/src/nile-button-filter/index.js +2 -0
- package/dist/src/nile-button-filter/index.js.map +1 -0
- package/dist/src/nile-button-filter/nile-button-filter.css.d.ts +12 -0
- package/dist/src/nile-button-filter/nile-button-filter.css.js +38 -0
- package/dist/src/nile-button-filter/nile-button-filter.css.js.map +1 -0
- package/dist/src/nile-button-filter/nile-button-filter.d.ts +36 -0
- package/dist/src/nile-button-filter/nile-button-filter.js +100 -0
- package/dist/src/nile-button-filter/nile-button-filter.js.map +1 -0
- package/dist/src/nile-button-toggle/nile-button-toggle.css.js +2 -1
- package/dist/src/nile-button-toggle/nile-button-toggle.css.js.map +1 -1
- package/dist/src/nile-calendar/nile-calendar.css.js +50 -28
- package/dist/src/nile-calendar/nile-calendar.css.js.map +1 -1
- package/dist/src/nile-calendar/nile-calendar.js +13 -13
- package/dist/src/nile-calendar/nile-calendar.js.map +1 -1
- package/dist/src/nile-chip/nile-chip.js +5 -0
- package/dist/src/nile-chip/nile-chip.js.map +1 -1
- package/dist/src/nile-form-group/index.d.ts +1 -0
- package/dist/src/nile-form-group/index.js +2 -0
- package/dist/src/nile-form-group/index.js.map +1 -0
- package/dist/src/nile-form-group/nile-form-group.css.d.ts +12 -0
- package/dist/src/nile-form-group/nile-form-group.css.js +85 -0
- package/dist/src/nile-form-group/nile-form-group.css.js.map +1 -0
- package/dist/src/nile-form-group/nile-form-group.d.ts +37 -0
- package/dist/src/nile-form-group/nile-form-group.js +80 -0
- package/dist/src/nile-form-group/nile-form-group.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/bar-chart-square-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/bar-chart-square-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/bar-chart-square-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/border_all.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/border_all.js +5 -0
- package/dist/src/nile-icon/icons/svg/border_all.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/check-done-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/check-done-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/check-done-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/columns-03.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/columns-03.js +5 -0
- package/dist/src/nile-icon/icons/svg/columns-03.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/combo1.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/combo1.js +5 -0
- package/dist/src/nile-icon/icons/svg/combo1.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/database-1.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/database-1.js +5 -0
- package/dist/src/nile-icon/icons/svg/database-1.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/donut.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/donut.js +5 -0
- package/dist/src/nile-icon/icons/svg/donut.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/dots-grid.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/dots-grid.js +5 -0
- package/dist/src/nile-icon/icons/svg/dots-grid.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/file-shield-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/file-shield-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/file-shield-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/filter-1.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/filter-1.js +5 -0
- package/dist/src/nile-icon/icons/svg/filter-1.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/fingerprint-03.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/fingerprint-03.js +5 -0
- package/dist/src/nile-icon/icons/svg/fingerprint-03.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/graph.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/graph.js +5 -0
- package/dist/src/nile-icon/icons/svg/graph.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/graphedit.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/graphedit.js +5 -0
- package/dist/src/nile-icon/icons/svg/graphedit.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/index.d.ts +27 -0
- package/dist/src/nile-icon/icons/svg/index.js +27 -0
- package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
- package/dist/src/nile-icon/icons/svg/laptop-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/laptop-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/laptop-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/layers-three-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/layers-three-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/layers-three-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/life-buoy-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/life-buoy-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/life-buoy-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/line.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/line.js +5 -0
- package/dist/src/nile-icon/icons/svg/line.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/list.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/list.js +5 -0
- package/dist/src/nile-icon/icons/svg/list.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/message-notification-square.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/message-notification-square.js +5 -0
- package/dist/src/nile-icon/icons/svg/message-notification-square.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/numbers.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/numbers.js +5 -0
- package/dist/src/nile-icon/icons/svg/numbers.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/pie.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/pie.js +5 -0
- package/dist/src/nile-icon/icons/svg/pie.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/settings-1.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/settings-1.js +5 -0
- package/dist/src/nile-icon/icons/svg/settings-1.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/shield-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/shield-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/shield-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/table-1.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/table-1.js +5 -0
- package/dist/src/nile-icon/icons/svg/table-1.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/user-03.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/user-03.js +5 -0
- package/dist/src/nile-icon/icons/svg/user-03.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/user-square.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/user-square.js +5 -0
- package/dist/src/nile-icon/icons/svg/user-square.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/users-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/users-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/users-02.js.map +1 -0
- package/dist/src/nile-menu/nile-menu.css.js +2 -2
- package/dist/src/nile-menu/nile-menu.css.js.map +1 -1
- package/dist/src/nile-menu/nile-menu.d.ts +6 -0
- package/dist/src/nile-menu/nile-menu.js +65 -8
- package/dist/src/nile-menu/nile-menu.js.map +1 -1
- package/dist/src/nile-menu-item/nile-menu-item.css.js +1 -1
- package/dist/src/nile-menu-item/nile-menu-item.css.js.map +1 -1
- package/dist/src/nile-popover/index.d.ts +1 -0
- package/dist/src/nile-popover/index.js +2 -0
- package/dist/src/nile-popover/index.js.map +1 -0
- package/dist/src/nile-popover/nile-popover.css.d.ts +12 -0
- package/dist/src/nile-popover/nile-popover.css.js +50 -0
- package/dist/src/nile-popover/nile-popover.css.js.map +1 -0
- package/dist/src/nile-popover/nile-popover.d.ts +46 -0
- package/dist/src/nile-popover/nile-popover.js +114 -0
- package/dist/src/nile-popover/nile-popover.js.map +1 -0
- package/dist/src/nile-radio/nile-radio.css.js +5 -0
- package/dist/src/nile-radio/nile-radio.css.js.map +1 -1
- package/dist/src/nile-radio/nile-radio.d.ts +2 -0
- package/dist/src/nile-radio/nile-radio.js +6 -0
- package/dist/src/nile-radio/nile-radio.js.map +1 -1
- package/dist/src/nile-radio-group/nile-radio-group.css.js +1 -1
- package/dist/src/nile-radio-group/nile-radio-group.css.js.map +1 -1
- package/dist/src/nile-radio-group/nile-radio-group.d.ts +2 -0
- package/dist/src/nile-radio-group/nile-radio-group.js +13 -2
- package/dist/src/nile-radio-group/nile-radio-group.js.map +1 -1
- package/dist/src/nile-select/nile-select.d.ts +1 -0
- package/dist/src/nile-select/nile-select.js +6 -1
- package/dist/src/nile-select/nile-select.js.map +1 -1
- package/dist/src/nile-tab/nile-tab.css.js +5 -0
- package/dist/src/nile-tab/nile-tab.css.js.map +1 -1
- package/dist/src/nile-tab/nile-tab.d.ts +1 -0
- package/dist/src/nile-tab/nile-tab.js +5 -0
- package/dist/src/nile-tab/nile-tab.js.map +1 -1
- package/dist/src/nile-tab-group/nile-tab-group.d.ts +2 -0
- package/dist/src/nile-tab-group/nile-tab-group.js +8 -0
- package/dist/src/nile-tab-group/nile-tab-group.js.map +1 -1
- package/dist/src/nile-tooltip/nile-tooltip.css.d.ts +5 -5
- package/dist/src/nile-tooltip/nile-tooltip.css.js +14 -9
- package/dist/src/nile-tooltip/nile-tooltip.css.js.map +1 -1
- package/dist/src/nile-tooltip/nile-tooltip.d.ts +2 -0
- package/dist/src/nile-tooltip/nile-tooltip.js +22 -10
- package/dist/src/nile-tooltip/nile-tooltip.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/index.ts +3 -0
- package/src/nile-button-filter/index.ts +1 -0
- package/src/nile-button-filter/nile-button-filter.css.ts +40 -0
- package/src/nile-button-filter/nile-button-filter.ts +108 -0
- package/src/nile-button-toggle/nile-button-toggle.css.ts +2 -1
- package/src/nile-calendar/nile-calendar.css.ts +50 -28
- package/src/nile-calendar/nile-calendar.ts +13 -13
- package/src/nile-chip/nile-chip.ts +6 -0
- package/src/nile-form-group/index.ts +1 -0
- package/src/nile-form-group/nile-form-group.css.ts +86 -0
- package/src/nile-form-group/nile-form-group.ts +88 -0
- package/src/nile-icon/icons/svg/bar-chart-square-02.ts +5 -0
- package/src/nile-icon/icons/svg/border_all.ts +5 -0
- package/src/nile-icon/icons/svg/check-done-01.ts +5 -0
- package/src/nile-icon/icons/svg/columns-03.ts +5 -0
- package/src/nile-icon/icons/svg/combo1.ts +5 -0
- package/src/nile-icon/icons/svg/database-1.ts +5 -0
- package/src/nile-icon/icons/svg/donut.ts +5 -0
- package/src/nile-icon/icons/svg/dots-grid.ts +5 -0
- package/src/nile-icon/icons/svg/file-shield-02.ts +5 -0
- package/src/nile-icon/icons/svg/filter-1.ts +5 -0
- package/src/nile-icon/icons/svg/fingerprint-03.ts +5 -0
- package/src/nile-icon/icons/svg/graph.ts +5 -0
- package/src/nile-icon/icons/svg/graphedit.ts +5 -0
- package/src/nile-icon/icons/svg/index.ts +27 -0
- package/src/nile-icon/icons/svg/laptop-01.ts +5 -0
- package/src/nile-icon/icons/svg/layers-three-01.ts +5 -0
- package/src/nile-icon/icons/svg/life-buoy-01.ts +5 -0
- package/src/nile-icon/icons/svg/line.ts +5 -0
- package/src/nile-icon/icons/svg/list.ts +5 -0
- package/src/nile-icon/icons/svg/message-notification-square.ts +5 -0
- package/src/nile-icon/icons/svg/numbers.ts +5 -0
- package/src/nile-icon/icons/svg/pie.ts +5 -0
- package/src/nile-icon/icons/svg/settings-1.ts +5 -0
- package/src/nile-icon/icons/svg/shield-01.ts +5 -0
- package/src/nile-icon/icons/svg/table-1.ts +5 -0
- package/src/nile-icon/icons/svg/user-03.ts +5 -0
- package/src/nile-icon/icons/svg/user-square.ts +5 -0
- package/src/nile-icon/icons/svg/users-02.ts +5 -0
- package/src/nile-menu/nile-menu.css.ts +2 -2
- package/src/nile-menu/nile-menu.ts +65 -18
- package/src/nile-menu-item/nile-menu-item.css.ts +1 -1
- package/src/nile-popover/index.ts +1 -0
- package/src/nile-popover/nile-popover.css.ts +52 -0
- package/src/nile-popover/nile-popover.ts +138 -0
- package/src/nile-radio/nile-radio.css.ts +5 -0
- package/src/nile-radio/nile-radio.ts +4 -0
- package/src/nile-radio-group/nile-radio-group.css.ts +1 -1
- package/src/nile-radio-group/nile-radio-group.ts +11 -3
- package/src/nile-select/nile-select.ts +4 -1
- package/src/nile-tab/nile-tab.css.ts +5 -0
- package/src/nile-tab/nile-tab.ts +3 -0
- package/src/nile-tab-group/nile-tab-group.ts +7 -0
- package/src/nile-tooltip/nile-tooltip.css.ts +15 -10
- package/src/nile-tooltip/nile-tooltip.ts +38 -23
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nile-select.cjs.js","sources":["../../../src/nile-select/nile-select.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n LitElement,\n html,\n property,\n CSSResultArray,\n TemplateResult,\n} from 'lit-element';\nimport { customElement } from 'lit/decorators.js';\nimport { styles } from './nile-select.css';\n\nimport '../nile-icon';\nimport '../nile-popup/nile-popup';\nimport '../nile-tag/nile-tag';\nimport { animateTo, stopAnimations } from '../internal/animate';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { query, state } from 'lit/decorators.js';\nimport { defaultValue } from '../internal/default-value';\nimport { FormControlController } from '../internal/form';\nimport {\n getAnimation,\n setDefaultAnimation,\n} from '../utilities/animation-registry';\nimport { HasSlotController } from '../internal/slot';\nimport { scrollIntoView } from '../internal/scroll';\nimport { waitForEvent } from '../internal/event';\nimport { watch } from '../internal/watch';\nimport NileElement from '../internal/nile-element';\nimport type { CSSResultGroup } from 'lit';\nimport type { NileFormControl } from '../internal/nile-element';\nimport type NileOption from '../nile-option/nile-option';\nimport type NilePopup from '../nile-popup/nile-popup';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\n\ntype NileRemoveEvent = CustomEvent<Record<PropertyKey, never>>;\n\n/**\n * Nile icon component.\n *\n * @tag nile-select\n *\n */\n\n/**\n * @summary Selects allow you to choose items from a menu of predefined options.\n * @status stable\n * @since 2.0\n *\n * @dependency nile-icon\n * @dependency nile-popup\n * @dependency nile-tag\n *\n * @slot - The listbox options. Must be `<nile-option>` elements. You can use `<nile-divider>` to group items visually.\n * @slot label - The input's label. Alternatively, you can use the `label` attribute.\n * @slot prefix - Used to prepend a presentational icon or similar element to the combobox.\n * @slot clear-icon - An icon to use in lieu of the default clear icon.\n * @slot expand-icon - The icon to show when the control is expanded and collapsed. Rotates on open and close.\n * @slot help-text - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n *\n * @event nile-change - Emitted when the control's value changes.\n * @event nile-clear - Emitted when the control's value is cleared.\n * @event nile-input - Emitted when the control receives input.\n * @event nile-focus - Emitted when the control gains focus.\n * @event nile-blur - Emitted when the control loses focus.\n * @event nile-show - Emitted when the select's menu opens.\n * @event nile-after-show - Emitted after the select's menu opens and all animations are complete.\n * @event nile-hide - Emitted when the select's menu closes.\n * @event nile-after-hide - Emitted after the select's menu closes and all animations are complete.\n * @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n *\n * @csspart form-control - The form control that wraps the label, input, and help text.\n * @csspart form-control-label - The label's wrapper.\n * @csspart form-control-input - The select's wrapper.\n * @csspart form-control-help-text - The help text's wrapper.\n * @csspart combobox - The container the wraps the prefix, combobox, clear icon, and expand button.\n * @csspart prefix - The container that wraps the prefix slot.\n * @csspart display-input - The element that displays the selected option's label, an `<input>` element.\n * @csspart listbox - The listbox container where options are slotted.\n * @csspart tags - The container that houses option tags when `multiselect` is used.\n * @csspart tag - The individual tags that represent each multiselect option.\n * @csspart tag__base - The tag's base part.\n * @csspart tag__content - The tag's content part.\n * @csspart tag__remove-button - The tag's remove button.\n * @csspart tag__remove-button__base - The tag's remove button base part.\n * @csspart clear-button - The clear button.\n * @csspart expand-icon - The container that wraps the expand icon.\n */\n\n@customElement('nile-select')\nexport class NileSelect extends NileElement implements NileFormControl {\n static styles: CSSResultGroup = styles;\n\n private readonly formControlController = new FormControlController(this, {\n assumeInteractionOn: ['nile-blur', 'nile-input'],\n });\n private readonly hasSlotController = new HasSlotController(\n this,\n 'help-text',\n 'label'\n );\n private typeToSelectString = '';\n private typeToSelectTimeout: number;\n\n @query('.select') popup: NilePopup;\n @query('.select__combobox') combobox: HTMLSlotElement;\n @query('.select__display-input') displayInput: HTMLInputElement;\n @query('.select__value-input') valueInput: HTMLInputElement;\n @query('.select__listbox') listbox: HTMLSlotElement;\n\n @state() private hasFocus = false;\n @state() displayLabel = '';\n @state() currentOption: NileOption;\n @state() selectedOptions: NileOption[] = [];\n @state() oldValue: string | string[] = '';\n\n /** The name of the select, submitted as a name/value pair with form data. */\n @property() name = '';\n\n /**\n * The current value of the select, submitted as a name/value pair with form data. When `multiple` is enabled, the\n * value will be a space-delimited list of values based on the options selected.\n */\n @property({\n converter: {\n fromAttribute: (value: string) => value.split(' '),\n toAttribute: (value: string[]) => value.join(' '),\n },\n })\n value: string | string[] = '';\n\n /** The default value of the form control. Primarily used for resetting the form control. */\n @defaultValue() defaultValue: string | string[] = '';\n\n /** The select's size. */\n @property() size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Placeholder text to show as a hint when the select is empty. */\n @property() placeholder = 'Select...';\n\n /** Placeholder text to show as a hint when the select is empty. */\n @state() searchValue = '';\n\n @property({ type: Boolean, reflect: true }) searchEnabled = false;\n\n @property({ type: Boolean, reflect: true }) blockValueChange = false;\n\n @property({ type: Boolean, reflect: true }) optionsLoading = false;\n\n /** Allows more than one option to be selected. */\n @property({ type: Boolean, reflect: true }) multiple = false;\n\n @property({ attribute: 'help-text' }) helpText = '';\n\n @property({ attribute: 'error-message' }) errorMessage = '';\n\n /** Sets the input to a warning state, changing its visual appearance. */\n @property({ type: Boolean }) warning = false;\n\n /** Sets the input to an error state, changing its visual appearance. */\n @property({ type: Boolean }) error = false;\n\n /** Sets the input to a success state, changing its visual appearance. */\n @property({ type: Boolean }) success = false;\n\n /**\n * The maximum number of selected options to show when `multiple` is true. After the maximum, \"+n\" will be shown to\n * indicate the number of additional items that are selected. Set to 0 to remove the limit.\n */\n @property({ attribute: 'max-options-visible', type: Number })\n maxOptionsVisible = 3;\n\n /** Disables the select control. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Adds a clear button when the select is not empty. */\n @property({ type: Boolean }) clearable = false;\n\n /**\n * Indicates whether or not the select is open. You can toggle this attribute to show and hide the menu, or you can\n * use the `show()` and `hide()` methods and this attribute will reflect the select's open state.\n */\n @property({ type: Boolean, reflect: true }) open = false;\n\n /**\n * Enable this option to prevent the listbox from being clipped when the component is placed inside a container with\n * `overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.\n */\n @property({ type: Boolean }) hoist = false;\n\n /** Draws a filled select. */\n @property({ type: Boolean, reflect: true }) filled = false;\n\n /** Draws a pill-style select with rounded edges. */\n @property({ type: Boolean, reflect: true }) pill = false;\n\n /** The select's label. If you need to display HTML, use the `label` slot instead. */\n @property() label = '';\n\n /**\n * The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox\n * inside of the viewport.\n */\n @property({ reflect: true }) placement: 'top' | 'bottom' = 'bottom';\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** The select's required attribute. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n @property({ type: Boolean }) showSelected = false;\n\n @state() oldMaxOptionsVisible: number = 1;\n\n @property({ type: Boolean }) showNoResults: boolean = false;\n\n @property({ type: String }) noResultsMessage: string = 'No results found';\n\n /** Gets the validity state object */\n get validity() {\n return this.valueInput?.validity;\n }\n\n /** Gets the validation message */\n get validationMessage() {\n return this.valueInput?.validationMessage;\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.handleDocumentFocusIn = this.handleDocumentFocusIn.bind(this);\n this.handleDocumentKeyDown = this.handleDocumentKeyDown.bind(this);\n this.handleDocumentMouseDown = this.handleDocumentMouseDown.bind(this);\n\n // Because this is a form control, it shouldn't be opened initially\n this.open = false;\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n private addOpenListeners() {\n document.addEventListener('focusin', this.handleDocumentFocusIn);\n document.addEventListener('keydown', this.handleDocumentKeyDown);\n document.addEventListener('mousedown', this.handleDocumentMouseDown);\n }\n\n private removeOpenListeners() {\n document.removeEventListener('focusin', this.handleDocumentFocusIn);\n document.removeEventListener('keydown', this.handleDocumentKeyDown);\n document.removeEventListener('mousedown', this.handleDocumentMouseDown);\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.displayInput.setSelectionRange(0, 0);\n this.emit('nile-focus', { value: this.value, name: this.name });\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('nile-blur', { value: this.value, name: this.name });\n }\n\n private handleDocumentFocusIn(event: FocusEvent) {\n // Close when focusing out of the select\n const path = event.composedPath();\n if (this && !path.includes(this)) {\n this.hide();\n }\n }\n\n /**\n * Handles the click event on the footer.\n * @param event - The click event.\n */\n private handleFooterClick(event: MouseEvent): void {\n event.stopPropagation();\n event.preventDefault();\n }\n\n /**\n * Toggles the display of selected options in the dropdown\n * @param event - the event object\n */\n private toggleShowSelected(event: Event): void {\n event.stopPropagation();\n event.preventDefault();\n // Only toggle if there are selected options\n if (this.selectedOptions?.length === 0) {\n return;\n }\n // Toggle the showSelected property\n this.showSelected = !this.showSelected;\n\n // Hide unselected options if showSelected is true\n const allOptions = this.getAllOptions();\n allOptions.forEach(el => {\n if (!el.selected) {\n el.hidden = this.showSelected;\n }\n });\n\n this.requestUpdate();\n }\n\n /**\n * Deselects all options and updates the value, selectedOptions, and displayLabel properties accordingly\n */\n private unSlectAll(): void {\n this.showSelected = false;\n const allOptions = this.getAllOptions();\n allOptions.forEach(el => {\n el.selected = false;\n el.hidden = false;\n });\n this.value = '';\n this.selectionChanged();\n this.emit('nile-change', { value: this.value, name: this.name });\n }\n\n private handleDocumentKeyDown(event: KeyboardEvent) {\n const target = event.target as HTMLElement;\n const isClearButton = target.closest('.select__clear') !== null;\n const isIconButton = target.closest('nile-icon-button') !== null;\n\n // Ignore presses when the target is an icon button (e.g. the remove button in <nile-tag>)\n if (isClearButton || isIconButton) {\n return;\n }\n\n // Close when pressing escape\n if (event.key === 'Escape' && this.open) {\n event.preventDefault();\n event.stopPropagation();\n this.hide();\n this.displayInput.focus({ preventScroll: true });\n }\n\n // Handle enter and space. When pressing space, we allow for type to select behaviors so if there's anything in the\n // buffer we _don't_ close it.\n if (\n event.key === 'Enter' ||\n (event.key === ' ' && this.typeToSelectString === '')\n ) {\n event.preventDefault();\n event.stopImmediatePropagation();\n\n // If it's not open, open it\n if (!this.open) {\n this.show();\n return;\n }\n\n // If it is open, update the value based on the current selection and close it\n if (this.currentOption && !this.currentOption.disabled) {\n if (this.multiple) {\n this.toggleOptionSelection(this.currentOption);\n } else {\n this.setSelectedOptions(this.currentOption);\n }\n\n // Emit after updating\n this.updateComplete.then(() => {\n this.emit('nile-input', { value: this.value, name: this.name });\n this.emit('nile-change', { value: this.value, name: this.name });\n });\n\n if (!this.multiple) {\n this.hide();\n this.displayInput.focus({ preventScroll: true });\n }\n }\n\n return;\n }\n\n // Navigate options\n if (['ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {\n const allOptions = this.getAllOptions();\n const currentIndex = allOptions.indexOf(this.currentOption);\n let newIndex = Math.max(0, currentIndex);\n\n // Prevent scrolling\n event.preventDefault();\n\n // Open it\n if (!this.open) {\n this.show();\n\n // If an option is already selected, stop here because we want that one to remain highlighted when the listbox\n // opens for the first time\n if (this.currentOption) {\n return;\n }\n }\n\n if (event.key === 'ArrowDown') {\n newIndex = currentIndex + 1;\n if (newIndex > allOptions.length - 1) newIndex = 0;\n } else if (event.key === 'ArrowUp') {\n newIndex = currentIndex - 1;\n if (newIndex < 0) newIndex = allOptions.length - 1;\n } else if (event.key === 'Home') {\n newIndex = 0;\n } else if (event.key === 'End') {\n newIndex = allOptions.length - 1;\n }\n\n this.setCurrentOption(allOptions[newIndex]);\n }\n\n // All other \"printable\" keys trigger type to select\n if (event.key.length === 1 || event.key === 'Backspace') {\n const allOptions = this.getAllOptions();\n\n // Don't block important key combos like CMD+R\n if (event.metaKey || event.ctrlKey || event.altKey) {\n return;\n }\n\n // Open, unless the key that triggered is backspace\n if (!this.open) {\n if (event.key === 'Backspace') {\n return;\n }\n\n this.show();\n }\n\n event.stopPropagation();\n event.preventDefault();\n\n clearTimeout(this.typeToSelectTimeout);\n this.typeToSelectTimeout = window.setTimeout(\n () => (this.typeToSelectString = ''),\n 1000\n );\n\n if (event.key === 'Backspace') {\n this.typeToSelectString = this.typeToSelectString.slice(0, -1);\n } else {\n this.typeToSelectString += event.key.toLowerCase();\n }\n\n for (const option of allOptions) {\n const label = option.getTextLabel().toLowerCase();\n\n if (label.startsWith(this.typeToSelectString)) {\n this.setCurrentOption(option);\n break;\n }\n }\n }\n }\n\n private handleDocumentMouseDown(event: MouseEvent) {\n // Close when clicking outside of the select\n const path = event.composedPath();\n if (this && !path.includes(this)) {\n this.hide();\n }\n }\n\n private handleLabelClick() {\n this.displayInput.focus();\n this.hide();\n }\n\n private handleComboboxMouseDown(event: MouseEvent) {\n const path = event.composedPath();\n const isIconButton = path.some(\n el =>\n el instanceof Element && el.tagName.toLowerCase() === 'nile-icon-button'\n );\n\n // Ignore disabled controls and clicks on tags (remove buttons)\n if (this.disabled || isIconButton) {\n return;\n }\n\n event.preventDefault();\n this.displayInput.focus({ preventScroll: true });\n this.open = !this.open;\n }\n\n private handleComboboxKeyDown(event: KeyboardEvent) {\n event.stopPropagation();\n this.handleDocumentKeyDown(event);\n }\n\n private handleClearClick(event: MouseEvent) {\n event.stopPropagation();\n\n if (this.value !== '') {\n this.setSelectedOptions([]);\n this.displayInput.focus({ preventScroll: true });\n\n // Emit after update\n this.updateComplete.then(() => {\n this.emit('nile-clear', { value: this.value, name: this.name });\n this.emit('nile-input', { value: this.value, name: this.name });\n this.emit('nile-change', { value: this.value, name: this.name });\n });\n }\n }\n\n private handleClearMouseDown(event: MouseEvent) {\n // Don't lose focus or propagate events when clicking the clear button\n event.stopPropagation();\n event.preventDefault();\n }\n\n private handleOptionClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n const option = target.closest('nile-option');\n\n if(this.blockValueChange){\n this.emit('nile-block-change', { value: option?.value, name: this.name });\n this.hide();\n return;\n }\n\n const oldValue = this.value;\n this.oldValue = oldValue;\n\n if (option && !option.disabled) {\n if (this.multiple) {\n this.toggleOptionSelection(option);\n } else {\n this.setSelectedOptions(option);\n }\n\n // Set focus after updating so the value is announced by screen readers\n this.updateComplete.then(() =>\n this.displayInput.focus({ preventScroll: true })\n );\n\n if (this.value !== oldValue) {\n // Emit after updating\n this.updateComplete.then(() => {\n this.emit('nile-input', { value: this.value, name: this.name });\n this.emit('nile-change', { value: this.value, name: this.name });\n });\n }\n\n if (!this.multiple) {\n this.hide();\n this.displayInput.focus({ preventScroll: true });\n }\n }\n\n if (this.showSelected) {\n const allOptions = this.getAllOptions();\n allOptions.forEach(el => {\n if (!el.selected) {\n el.hidden = this.showSelected;\n }\n });\n\n this.requestUpdate();\n }\n }\n\n private handleDefaultSlotChange() {\n const allOptions = this.getAllOptions();\n const value = Array.isArray(this.value) ? this.value : [this.value];\n const values: string[] = [];\n\n // Check for duplicate values in menu items\n if (customElements.get('nile-option')) {\n allOptions.forEach(option => values.push(option.value));\n\n // Select only the options that match the new value\n this.setSelectedOptions(\n allOptions.filter(el => value.map(String).includes(el.value))\n );\n } else {\n // Rerun this handler when <nile-option> is registered\n customElements\n .whenDefined('nile-option')\n .then(() => this.handleDefaultSlotChange());\n }\n }\n\n private handleTagRemove(event: NileRemoveEvent, option: NileOption) {\n event.stopPropagation();\n\n if (!this.disabled) {\n this.toggleOptionSelection(option, false);\n\n const allOptions = this.getAllOptions();\n allOptions.forEach(el => {\n if (!el.selected) {\n el.hidden = this.showSelected;\n }\n });\n\n // Emit after updating\n this.updateComplete.then(() => {\n this.emit('nile-input', { value: this.value, name: this.name });\n this.emit('nile-change', { value: this.value, name: this.name });\n });\n }\n }\n\n // Gets an array of all <nile-option> elements\n private getAllOptions() {\n // Get all options as an array\n const options = [...this.querySelectorAll<NileOption>('nile-option')];\n\n // Sort the options based on the order of values selected\n if (this.multiple && this.oldValue?.length > 0) {\n options.sort((a, b) => {\n let indexA = this.oldValue.indexOf(a.value);\n let indexB = this.oldValue.indexOf(b.value);\n\n // Handle cases where a __value is not found\n if (indexA === -1) {\n indexA = Infinity; // Place at the end if not found\n }\n if (indexB === -1) {\n indexB = Infinity; // Place at the end if not found\n }\n\n if (indexA < indexB) {\n return -1;\n }\n if (indexA > indexB) {\n return 1;\n }\n return 0;\n });\n }\n\n return options;\n }\n\n private getOptionPrefix(option: NileOption): string {\n const prefixSlot = option.shadowRoot?.querySelector(\n 'slot[name=\"prefix\"]'\n ) as HTMLSlotElement;\n if (!prefixSlot) return '';\n\n const assignedNodes = prefixSlot.assignedNodes();\n const htmlStrings: string[] = [];\n\n assignedNodes.forEach(node => {\n if (node instanceof HTMLElement) {\n htmlStrings.push(node.outerHTML);\n } else if (node.nodeType === Node.TEXT_NODE) {\n // Text node\n htmlStrings.push(node.textContent || '');\n }\n });\n\n return htmlStrings.join('');\n }\n\n // Gets the first <nile-option> element\n private getFirstOption() {\n return this.querySelector<NileOption>('nile-option');\n }\n\n // Sets the current option, which is the option the user is currently interacting with (e.g. via keyboard). Only one\n // option may be \"current\" at a time.\n private setCurrentOption(option: NileOption | null) {\n const allOptions = this.getAllOptions();\n\n // Clear selection\n allOptions.forEach(el => {\n el.current = false;\n el.tabIndex = -1;\n });\n\n // Select the target option\n if (option) {\n this.currentOption = option;\n option.current = true;\n option.tabIndex = 0;\n option.focus();\n }\n }\n\n // Sets the selected option(s)\n private setSelectedOptions(option: NileOption | NileOption[]) {\n const allOptions = this.getAllOptions();\n const newSelectedOptions = Array.isArray(option) ? option : [option];\n\n // Clear existing selection\n allOptions.forEach(el => (el.selected = false));\n\n // Set the new selection\n if (newSelectedOptions.length) {\n newSelectedOptions.forEach(el => (el.selected = true));\n }\n\n // Update selection, value, and display label\n this.selectionChanged();\n }\n\n // Toggles an option's selected state\n private toggleOptionSelection(option: NileOption, force?: boolean) {\n if (force === true || force === false) {\n option.selected = force;\n } else {\n option.selected = !option.selected;\n }\n\n this.selectionChanged();\n }\n\n // This method must be called whenever the selection changes. It will update the selected options cache, the current\n // value, and the display value\n private selectionChanged() {\n // Update selected options cache\n this.selectedOptions = this.getAllOptions().filter(el => el.selected);\n\n // Update the value and display label\n if (this.multiple) {\n this.value = this.selectedOptions.map(el => el.value);\n\n if (this.placeholder && this.value.length === 0) {\n // When no items are selected, keep the value empty so the placeholder shows\n this.displayLabel = '';\n } else {\n this.displayLabel = this.selectedOptions.length + ' selected';\n }\n\n if (this.selectedOptions.length === 0) {\n this.showSelected = false;\n const allOptions = this.getAllOptions();\n allOptions.forEach(el => {\n if (!el.selected) {\n el.hidden = this.showSelected;\n }\n });\n\n this.requestUpdate();\n }\n } else {\n this.value = this.selectedOptions[0]?.value ?? this.value;\n this.displayLabel = this.selectedOptions[0]?.getTextLabel()\n ? this.selectedOptions[0].getTextLabel()\n : this.value ?? '';\n }\n\n // Update validity\n this.updateComplete.then(() => {\n this.formControlController.updateValidity();\n });\n\n this.calculateTotalWidthOfTags();\n }\n\n handleSearchFocus() {\n document.removeEventListener('keydown', this.handleDocumentKeyDown);\n }\n\n handleSearchBlur() {\n document.addEventListener('keydown', this.handleDocumentKeyDown);\n }\n\n handleSearchChange(e: any) {\n this.searchValue = e.detail.value;\n let filteredOptions = this.filterOptions(this.searchValue);\n\n if (filteredOptions.length === 0) {\n // Display 'No results found' message.\n this.showNoResults = true;\n } else {\n this.showNoResults = false;\n }\n }\n\n filterOptions(searchValue: string) {\n const allOptions = this.getAllOptions();\n const lowerCaseSearchValue = searchValue.toLowerCase();\n\n let filteredOptions: NileOption[] = [];\n\n allOptions.forEach(el => {\n const lowerCaseLabel = el.getTextLabel().toLowerCase();\n const lowerCaseValue = (el.value || '').toLowerCase();\n if (\n lowerCaseLabel.includes(lowerCaseSearchValue) ||\n lowerCaseValue.includes(lowerCaseSearchValue)\n ) {\n el.hidden = false;\n filteredOptions.push(el);\n } else {\n el.hidden = true;\n }\n });\n\n return filteredOptions;\n }\n\n private handleInvalid(event: Event) {\n this.formControlController.setValidity(false);\n this.formControlController.emitInvalidEvent(event);\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n // Close the listbox when the control is disabled\n if (this.disabled) {\n this.open = false;\n this.handleOpenChange();\n }\n }\n\n @watch('value', { waitUntilFirstUpdate: true })\n handleValueChange() {\n const allOptions = this.getAllOptions();\n const value = Array.isArray(this.value) ? this.value : [this.value];\n\n // Select only the options that match the new value\n this.setSelectedOptions(allOptions.filter(el => value.includes(el.value)));\n }\n\n @watch('open', { waitUntilFirstUpdate: true })\n async handleOpenChange() {\n if (this.open && !this.disabled) {\n // Reset the current option\n this.setCurrentOption(this.selectedOptions[0] || this.getFirstOption());\n\n // Show\n this.emit('nile-show', { value: this.value, name: this.name });\n this.addOpenListeners();\n\n await stopAnimations(this);\n this.listbox.hidden = false;\n this.popup.active = true;\n\n // Select the appropriate option based on value after the listbox opens\n requestAnimationFrame(() => {\n this.setCurrentOption(this.currentOption);\n });\n\n const { keyframes, options } = getAnimation(this, 'select.show', {\n dir: 'ltr',\n });\n await animateTo(this.popup.popup, keyframes, options);\n\n // Make sure the current option is scrolled into view (required for Safari)\n if (this.currentOption) {\n scrollIntoView(this.currentOption, this.listbox, 'vertical', 'auto');\n }\n\n this.emit('nile-after-show', { value: this.value, name: this.name });\n } else {\n // Hide\n this.emit('nile-hide', { value: this.value, name: this.name });\n this.removeOpenListeners();\n\n await stopAnimations(this);\n const { keyframes, options } = getAnimation(this, 'select.hide', {\n dir: 'ltr',\n });\n await animateTo(this.popup.popup, keyframes, options);\n this.listbox.hidden = true;\n this.popup.active = false;\n\n this.emit('nile-after-hide', { value: this.value, name: this.name });\n }\n }\n\n /** Shows the listbox. */\n async show() {\n if (this.open || this.disabled) {\n this.open = false;\n return undefined;\n }\n\n this.open = true;\n return waitForEvent(this, 'nile-after-show');\n }\n\n /** Hides the listbox. */\n async hide() {\n if (!this.open || this.disabled) {\n this.open = false;\n return undefined;\n }\n\n this.open = false;\n return waitForEvent(this, 'nile-after-hide');\n }\n\n /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */\n checkValidity() {\n return this.valueInput.checkValidity();\n }\n\n /** Gets the associated form, if one exists. */\n getForm(): HTMLFormElement | null {\n return this.formControlController.getForm();\n }\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n reportValidity() {\n return this.valueInput.reportValidity();\n }\n\n /** Sets a custom validation message. Pass an empty string to restore validity. */\n setCustomValidity(message: string) {\n this.valueInput.setCustomValidity(message);\n this.formControlController.updateValidity();\n }\n\n /** Sets focus on the control. */\n focus(options?: FocusOptions) {\n this.displayInput.focus(options);\n }\n\n /** Removes focus from the control. */\n blur() {\n this.displayInput.blur();\n }\n\n onInputChange(event: Event) {\n // This will stop the event from bubbling up to the parent `nile-select` component\n event.stopPropagation();\n }\n\n calculateWidthOfSelectTagsDiv() {\n if (this.shadowRoot) {\n const selectTagsDiv = this.shadowRoot.querySelector('div.select__tags');\n if (selectTagsDiv instanceof HTMLElement) {\n const width = selectTagsDiv.offsetWidth;\n return width - 70;\n }\n }\n }\n\n calculateTotalWidthOfTags() {\n\n if(this.maxOptionsVisible !== Infinity){\n this.oldMaxOptionsVisible = this.maxOptionsVisible;\n }\n\n this.maxOptionsVisible = Infinity;\n setTimeout(() => {\n let widths: number[] = [];\n if (this.shadowRoot) {\n const tags = this.shadowRoot.querySelectorAll('nile-tag');\n tags.forEach(tag => {\n if (tag instanceof HTMLElement) {\n widths.push(tag.offsetWidth);\n }\n });\n }\n if (this.value.length !== widths.length) {\n return;\n }\n\n let sum = widths.reduce(\n (accumulator, currentValue) => accumulator + currentValue,\n 0\n );\n const widthOfSelectTagsDiv = this.calculateWidthOfSelectTagsDiv();\n if (!widthOfSelectTagsDiv) {\n return;\n }\n\n let summ = 0;\n let lastindex = 0;\n\n for (let i = 0; i < widths.length; i++) {\n summ += widths[i];\n\n if (summ > widthOfSelectTagsDiv) {\n lastindex = i;\n break;\n }\n }\n this.maxOptionsVisible = lastindex;\n }, 1);\n }\n\n render() {\n const hasLabelSlot = this.hasSlotController.test('label');\n const hasHelpTextSlot = this.hasSlotController.test('help-text');\n const hasLabelSuffixSlot = this.hasSlotController.test('label-suffix');\n const hasLabel = this.label ? true : !!hasLabelSlot;\n const hasClearIcon =\n this.clearable && !this.disabled && this.value.length > 0;\n const isPlaceholderVisible = this.placeholder && this.value.length === 0;\n const searchValue = this.searchValue || '';\n const hasHelpText = this.helpText ? true : false;\n const hasErrorMessage = this.errorMessage ? true : false;\n const prefixContent = this.selectedOptions[0] ? this.getOptionPrefix(this.selectedOptions[0]) : '';\n\n return html`\n <div\n part=\"form-control\"\n class=${classMap({\n 'form-control': true,\n 'form-control--small': this.size === 'small',\n 'form-control--medium': this.size === 'medium',\n 'form-control--large': this.size === 'large',\n 'form-control--has-label': hasLabel,\n 'form-control--has-help-text': hasHelpText,\n })}\n >\n <label\n id=\"label\"\n part=\"form-control-label\"\n class=\"form-control__label\"\n aria-hidden=${hasLabel ? 'false' : 'true'}\n @click=${this.handleLabelClick}\n >\n <slot name=\"label\">${this.label}</slot>\n </label>\n\n ${hasLabelSuffixSlot ? html` <slot name=\"label-suffix\"></slot> ` : ``}\n\n <div part=\"form-control-input\" class=\"form-control-input\">\n <nile-popup\n class=${classMap({\n select: true,\n 'select--warning': this.warning,\n 'select--error': this.error,\n 'select--success': this.success,\n 'select--standard': true,\n 'select--filled': this.filled,\n 'select--pill': this.pill,\n 'select--open': this.open,\n 'select--disabled': this.disabled,\n 'select--multiple': this.multiple,\n 'select--focused': this.hasFocus,\n 'select--placeholder-visible': isPlaceholderVisible,\n 'select--top': this.placement === 'top',\n 'select--bottom': this.placement === 'bottom',\n 'select--small': this.size === 'small',\n 'select--medium': this.size === 'medium',\n 'select--large': this.size === 'large',\n })}\n placement=${this.placement}\n strategy=${this.hoist ? 'fixed' : 'absolute'}\n distance=\"6\"\n flip\n shift\n sync=\"width\"\n auto-size=\"vertical\"\n auto-size-padding=\"10\"\n >\n <div\n part=\"combobox\"\n class=\"select__combobox\"\n slot=\"anchor\"\n @keydown=${this.handleComboboxKeyDown}\n @mousedown=${this.handleComboboxMouseDown}\n >\n\n ${prefixContent && !this.multiple\n ? html`<div class=\"select__prefix--from-options\">\n ${unsafeHTML(prefixContent)}\n </div>`\n : html`<slot\n part=\"prefix\"\n name=\"prefix\"\n class=${classMap({\n select__prefix: true,\n multiple: this.multiple,\n })}\n ></slot>`}\n\n <input\n part=\"display-input\"\n class=\"select__display-input\"\n type=\"text\"\n placeholder=${this.placeholder}\n .disabled=${this.disabled}\n .value=${this.displayLabel}\n autocomplete=\"off\"\n spellcheck=\"false\"\n autocapitalize=\"off\"\n readonly\n aria-controls=\"listbox\"\n aria-expanded=${this.open ? 'true' : 'false'}\n aria-haspopup=\"listbox\"\n aria-labelledby=\"label\"\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-describedby=\"help-text\"\n role=\"combobox\"\n tabindex=\"0\"\n @focus=${this.handleFocus}\n @blur=${this.handleBlur}\n />\n\n ${this.multiple\n ? html`\n <div part=\"tags\" class=\"select__tags\">\n ${this.selectedOptions.map((option, index) => {\n if (\n index < this.maxOptionsVisible ||\n this.maxOptionsVisible <= 0\n ) {\n const classes = {\n select__invisible:\n index + 1 > this.oldMaxOptionsVisible &&\n this.maxOptionsVisible === Infinity,\n };\n return html`\n <nile-tag\n class=${classMap(classes)}\n part=\"tag\"\n exportparts=\"\n base:tag__base,\n content:tag__content,\n remove-button:tag__remove-button,\n remove-button__base:tag__remove-button__base\n \"\n ?pill=${this.pill}\n size=${this.size}\n removable\n @nile-remove=${(event: NileRemoveEvent) =>\n this.handleTagRemove(event, option)}\n >\n ${this.getOptionPrefix(option)\n ? html`<span class=\"tag__prefix\" slot=\"prefix\"\n >${unsafeHTML(\n this.getOptionPrefix(option)\n )}</span\n >`\n : ''}\n ${option.getTextLabel()}\n </nile-tag>\n `;\n } else if (index === this.maxOptionsVisible) {\n return html`\n <span class=\"select__tags-count\"\n >+${this.selectedOptions.length - index} More\n </span>\n `;\n } else {\n return null;\n }\n })}\n </div>\n `\n : ''}\n\n <input\n class=\"select__value-input\"\n type=\"text\"\n ?disabled=${this.disabled}\n ?required=${this.required}\n .value=${Array.isArray(this.value)\n ? this.value.join(', ')\n : this.value}\n tabindex=\"-1\"\n aria-hidden=\"true\"\n @focus=${() => this.focus()}\n @invalid=${this.handleInvalid}\n />\n\n ${hasClearIcon\n ? html`\n <button\n part=\"clear-button\"\n class=\"select__clear\"\n type=\"button\"\n aria-label=\"clearEntry\"\n @mousedown=${this.handleClearMouseDown}\n @click=${this.handleClearClick}\n tabindex=\"-1\"\n >\n <slot name=\"clear-icon\">\n <nile-icon name=\"close\" library=\"system\"></nile-icon>\n </slot>\n </button>\n `\n : ''}\n\n <slot\n part=\"suffix\"\n name=\"suffix\"\n class=${classMap({\n select__suffix: true,\n })}\n ></slot>\n\n <slot\n name=\"expand-icon\"\n part=\"expand-icon\"\n class=\"select__expand-icon\"\n >\n <nile-icon library=\"system\" name=\"arrowdown\"></nile-icon>\n </slot>\n </div>\n\n <div\n id=\"listbox\"\n role=\"listbox\"\n aria-expanded=${this.open ? 'true' : 'false'}\n aria-multiselectable=${this.multiple ? 'true' : 'false'}\n aria-labelledby=\"label\"\n part=\"listbox\"\n class=\"select__listbox ${this.searchEnabled\n ? 'select__search-enabled '\n : ''}\"\n tabindex=\"-1\"\n @mouseup=${this.handleOptionClick}\n @slotchange=${this.handleDefaultSlotChange}\n >\n ${this.optionsLoading\n ? html`\n <span class=\"select__loader\">\n <nile-icon\n class=\"select__loader--icon\"\n name=\"button-loading-blue\"\n ></nile-icon>\n </span>\n `\n : ''}\n ${this.searchEnabled\n ? html` <div class=\"select__search\">\n <nile-input\n size=\"small\"\n clearable\n .value=${searchValue}\n placeholder=\"Search...\"\n @nile-input=${this.handleSearchChange}\n @nile-focus=${this.handleSearchFocus}\n @nile-change=\"${this.onInputChange}\"\n >\n <nile-icon name=\"search\" slot=\"suffix\"> </nile-icon>\n </nile-input>\n </div>`\n : ``}\n <div\n class=\"select__options ${this.searchEnabled\n ? 'select__options__search-enabled'\n : ``}\"\n >\n ${this.showNoResults\n ? html`\n <div class=\"select__no-results\">\n ${this.noResultsMessage}\n </div>\n `\n : ''}\n <slot></slot>\n </div>\n\n ${this.multiple\n ? html` <div\n part=\"footer\"\n class=\"select__footer\"\n @click=\"${this.handleFooterClick}\"\n >\n <span\n @click=\"${this.toggleShowSelected}\"\n style=\"cursor: pointer;\"\n >\n <nile-checkbox\n ?disabled=\"${this.selectedOptions.length === 0}\"\n ?checked=\"${this.showSelected}\"\n >\n Show Selected</nile-checkbox\n >\n </span>\n ${this.selectedOptions.length !== 0\n ? html` <span\n class=\"select__clear\"\n @click=\"${this.unSlectAll}\"\n >Clear All</span\n >`\n : ``}\n </div>`\n : ``}\n </div>\n </nile-popup>\n </div>\n\n ${hasHelpText\n ? html` <nile-form-help-text>${this.helpText}</nile-form-help-text> `\n : ``}\n ${hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``}\n </div>\n `;\n }\n}\n\nsetDefaultAnimation('select.show', {\n keyframes: [\n { opacity: 0, scale: 0.9 },\n { opacity: 1, scale: 1 },\n ],\n options: { duration: 100, easing: 'ease' },\n});\n\nsetDefaultAnimation('select.hide', {\n keyframes: [\n { opacity: 1, scale: 1 },\n { opacity: 0, scale: 0.9 },\n ],\n options: { duration: 100, easing: 'ease' },\n});\n\nexport default NileSelect;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-select': NileSelect;\n }\n}\n"],"names":["NileSelect","_u","_inherits","w","_super","_createSuper","this","formControlController","FormControlController","assumeInteractionOn","hasSlotController","HasSlotController","typeToSelectString","hasFocus","displayLabel","selectedOptions","oldValue","name","value","defaultValue","size","placeholder","searchValue","searchEnabled","blockValueChange","optionsLoading","multiple","helpText","errorMessage","warning","error","success","maxOptionsVisible","disabled","clearable","open","hoist","filled","pill","label","placement","form","required","showSelected","oldMaxOptionsVisible","showNoResults","noResultsMessage","_this","_createClass","key","get","validity","_this$valueInput","valueInput","validationMessage","_this$valueInput2","connectedCallback","super","handleDocumentFocusIn","bind","handleDocumentKeyDown","handleDocumentMouseDown","emit","disconnectedCallback","addOpenListeners","document","addEventListener","removeOpenListeners","removeEventListener","handleFocus","displayInput","setSelectionRange","handleBlur","event","path","composedPath","includes","hide","handleFooterClick","stopPropagation","preventDefault","toggleShowSelected","_this$selectedOptions","length","getAllOptions","forEach","el","selected","hidden","requestUpdate","unSlectAll","selectionChanged","_this3","target","isClearButton","closest","isIconButton","focus","preventScroll","stopImmediatePropagation","currentOption","toggleOptionSelection","setSelectedOptions","updateComplete","then","show","allOptions","currentIndex","indexOf","newIndex","Math","max","setCurrentOption","metaKey","ctrlKey","altKey","clearTimeout","typeToSelectTimeout","window","setTimeout","slice","toLowerCase","_iterator","_createForOfIteratorHelper","_step","s","n","done","option","getTextLabel","startsWith","err","e","f","handleLabelClick","handleComboboxMouseDown","some","Element","tagName","handleComboboxKeyDown","handleClearClick","handleClearMouseDown","handleOptionClick","_this5","handleDefaultSlotChange","Array","isArray","values","customElements","push","filter","map","String","whenDefined","handleTagRemove","_this$oldValue","_this8","options","_toConsumableArray","querySelectorAll","sort","a","b","indexA","indexB","Infinity","getOptionPrefix","_i$shadowRoot","prefixSlot","shadowRoot","querySelector","assignedNodes","htmlStrings","node","HTMLElement","outerHTML","nodeType","Node","TEXT_NODE","textContent","join","getFirstOption","current","tabIndex","newSelectedOptions","force","_this9","_this$selectedOptions2","_this$selectedOptions3","_this$selectedOptions4","_this$value","updateValidity","calculateTotalWidthOfTags","handleSearchFocus","handleSearchBlur","handleSearchChange","detail","filterOptions","lowerCaseSearchValue","filteredOptions","lowerCaseLabel","lowerCaseValue","handleInvalid","setValidity","emitInvalidEvent","handleDisabledChange","handleOpenChange","handleValueChange","_handleOpenChange","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_this10","_m","_i2","_s3","_m2","_i3","_s4","wrap","_callee$","_context2","prev","next","stopAnimations","listbox","popup","active","requestAnimationFrame","getAnimation","dir","keyframes","animateTo","scrollIntoView","stop","apply","arguments","_show","_callee2","_callee2$","_context3","waitForEvent","_hide","_callee3","_callee3$","_context4","abrupt","checkValidity","getForm","reportValidity","setCustomValidity","message","blur","onInputChange","calculateWidthOfSelectTagsDiv","selectTagsDiv","offsetWidth","widths","tag","widthOfSelectTagsDiv","summ","lastindex","i","render","hasLabelSlot","test","hasLabelSuffixSlot","hasLabel","hasClearIcon","isPlaceholderVisible","hasHelpText","hasErrorMessage","prefixContent","html","_templateObject","_taggedTemplateLiteral","classMap","_templateObject2","select","_templateObject3","unsafeHTML","_templateObject4","select__prefix","_templateObject5","index","classes","select__invisible","_templateObject6","_templateObject7","_templateObject8","_templateObject9","select__suffix","_templateObject10","_templateObject11","_templateObject12","_templateObject13","_templateObject14","_templateObject15","_templateObject16","NileElement","styles","__decorate","query","prototype","state","property","converter","fromAttribute","split","toAttribute","type","Boolean","reflect","attribute","Number","watch","waitUntilFirstUpdate","_export","customElement","setDefaultAnimation","opacity","scale","duration","easing"],"mappings":"ogmDA+FaA,CAAN,uBAAAC,EAAA,EAAAC,SAAA,CAAAC,CAAA,CAAAF,EAAA,MAAAG,MAAA,CAAAC,YAAA,CAAAF,CAAA,EAAA,SAAAA,EAAA,qEAGYG,EAAAA,KAAAA,CAAAC,qBAAwB,CAAA,GAAIC,CAAAA,CAAsBF,CAAAA,sBAAAA,CAAAA,KAAAA,EAAM,CACvEG,mBAAAA,CAAqB,CAAC,WAAa,CAAA,YAAA,CAAA,CAAA,CAAA,CAEpBH,KAAAA,CAAiBI,iBAAAA,CAAG,GAAIC,CAAAA,CAAAA,CAAAA,sBAAAA,CAAAA,KAAAA,EAEvC,WAAA,CACA,OAEML,CAAAA,CAAAA,KAAAA,CAAkBM,kBAAG,CAAA,EAAA,CASZN,KAAAA,CAAQO,QAAAA,CAAAA,CAAG,CACnBP,CAAAA,KAAAA,CAAYQ,aAAG,EAEfR,CAAAA,KAAAA,CAAeS,eAAiB,CAAA,EAAA,CAChCT,KAAAA,CAAQU,QAAAA,CAAsB,EAG3BV,CAAAA,KAAAA,CAAIW,IAAG,CAAA,EAAA,CAYnBX,KAAAA,CAAKY,KAAAA,CAAsB,EAGXZ,CAAAA,KAAAA,CAAYa,YAAsB,CAAA,EAAA,CAGtCb,KAAAA,CAAIc,IAAiC,CAAA,QAAA,CAGrCd,KAAAA,CAAWe,WAAAA,CAAG,WAGjBf,CAAAA,KAAAA,CAAWgB,WAAG,CAAA,EAAA,CAEqBhB,KAAAA,CAAaiB,aAAAA,CAAAA,CAAG,CAEhBjB,CAAAA,KAAAA,CAAgBkB,gBAAG,CAAA,CAAA,CAAA,CAEnBlB,KAAAA,CAAcmB,cAAAA,CAAAA,CAAG,EAGjBnB,KAAAA,CAAQoB,QAAAA,CAAAA,CAAG,CAEjBpB,CAAAA,KAAAA,CAAQqB,QAAG,CAAA,EAAA,CAEPrB,KAAAA,CAAYsB,YAAAA,CAAG,GAG5BtB,KAAAA,CAAOuB,OAAAA,CAAAA,CAAG,CAGVvB,CAAAA,KAAAA,CAAKwB,KAAG,CAAA,CAAA,CAAA,CAGRxB,KAAAA,CAAOyB,OAAAA,CAAAA,CAAG,EAOvCzB,KAAAA,CAAiB0B,iBAAAA,CAAG,CAGwB1B,CAAAA,KAAAA,CAAQ2B,QAAG,CAAA,CAAA,CAAA,CAG1B3B,KAAAA,CAAS4B,SAAAA,CAAAA,CAAG,CAMG5B,CAAAA,KAAAA,CAAI6B,IAAG,CAAA,CAAA,CAAA,CAMtB7B,KAAAA,CAAK8B,KAAAA,CAAAA,CAAG,CAGO9B,CAAAA,KAAAA,CAAM+B,QAAG,CAGT/B,CAAAA,KAAAA,CAAIgC,IAAG,CAAA,CAAA,CAAA,CAGvChC,KAAAA,CAAKiC,KAAAA,CAAG,EAMSjC,CAAAA,KAAAA,CAASkC,SAAqB,CAAA,QAAA,CAO9BlC,KAAAA,CAAImC,IAAAA,CAAG,EAGQnC,CAAAA,KAAAA,CAAQoC,QAAG,CAAA,CAAA,CAAA,CAE1BpC,KAAAA,CAAYqC,YAAG,CAAA,CAAA,CAAA,CAEnCrC,KAAAA,CAAoBsC,oBAAAA,CAAW,CAEXtC,CAAAA,KAAAA,CAAauC,aAAY,CAAA,CAAA,CAAA,CAE1BvC,KAAAA,CAAgBwC,gBAAAA,CAAW,kBAsjCxD,QAAAC,KAAA,EAnjCCC,YAAA,CAAA7C,CAAA,GAAA8C,GAAA,YAAAC,GAAA,UAAAA,IAAA,CAAIC,KAAAA,gBAAAA,CACF,OAAAC,gBAAA,CAAO9C,IAAAA,CAAK+C,qDAAL/C,gBAAAA,CAAiB6C,QACzB,EAGD,GAAAF,GAAA,qBAAAC,GAAA,UAAAA,IAAA,CAAII,KAAAA,iBAAAA,CACF,OAAAC,iBAAA,CAAOjD,IAAAA,CAAK+C,UAAYC,UAAAA,iBAAAA,iBAAjBhD,iBAAAA,CAAiBgD,iBACzB,EAED,GAAAL,GAAA,qBAAA/B,KAAA,UAAAsC,kBAAA,CACEC,CAAAA,IAAAA,CAAAA,eAAAA,CAAAA,CAAAA,CAAAA,SAAAA,4BAAAA,IAAAA,OACAnD,IAAAA,CAAKoD,qBAAwBpD,CAAAA,IAAAA,CAAKoD,sBAAsBC,IAAKrD,CAAAA,IAAAA,CAAAA,CAC7DA,IAAKsD,CAAAA,qBAAAA,CAAwBtD,IAAKsD,CAAAA,qBAAAA,CAAsBD,IAAKrD,CAAAA,IAAAA,CAAAA,CAC7DA,IAAKuD,CAAAA,uBAAAA,CAA0BvD,IAAKuD,CAAAA,uBAAAA,CAAwBF,IAAKrD,CAAAA,IAAAA,CAAAA,CAGjEA,IAAK6B,CAAAA,IAAAA,CAAAA,CAAO,EACZ7B,IAAKwD,CAAAA,IAAAA,CAAK,WACX,CAAA,EAED,GAAAb,GAAA,wBAAA/B,KAAA,UAAA6C,qBAAA,CAAAA,CACEN,IAAAA,CAAAA,eAAAA,CAAAA,CAAAA,CAAAA,SAAAA,+BAAAA,IAAAA,OACAnD,IAAKwD,CAAAA,IAAAA,CAAK,cACX,CAAA,EAEO,GAAAb,GAAA,oBAAA/B,KAAA,UAAA8C,iBAAA,CAAAA,CACNC,QAASC,CAAAA,gBAAAA,CAAiB,UAAW5D,IAAKoD,CAAAA,qBAAAA,CAAAA,CAC1CO,QAASC,CAAAA,gBAAAA,CAAiB,SAAW5D,CAAAA,IAAAA,CAAKsD,qBAC1CK,CAAAA,CAAAA,QAAAA,CAASC,gBAAiB,CAAA,WAAA,CAAa5D,IAAKuD,CAAAA,uBAAAA,CAC7C,EAEO,GAAAZ,GAAA,uBAAA/B,KAAA,UAAAiD,oBAAA,CACNF,CAAAA,QAAAA,CAASG,oBAAoB,SAAW9D,CAAAA,IAAAA,CAAKoD,qBAC7CO,CAAAA,CAAAA,QAAAA,CAASG,mBAAoB,CAAA,SAAA,CAAW9D,IAAKsD,CAAAA,qBAAAA,CAAAA,CAC7CK,QAASG,CAAAA,mBAAAA,CAAoB,WAAa9D,CAAAA,IAAAA,CAAKuD,uBAChD,CAAA,EAEO,GAAAZ,GAAA,eAAA/B,KAAA,UAAAmD,YAAA,CAAAA,CACN/D,KAAKO,QAAW,CAAA,CAAA,CAAA,CAChBP,IAAKgE,CAAAA,YAAAA,CAAaC,iBAAkB,CAAA,CAAA,CAAG,CACvCjE,CAAAA,CAAAA,IAAAA,CAAKwD,IAAK,CAAA,YAAA,CAAc,CAAE5C,KAAAA,CAAOZ,IAAKY,CAAAA,KAAAA,CAAOD,IAAMX,CAAAA,IAAAA,CAAKW,MACzD,EAEO,GAAAgC,GAAA,cAAA/B,KAAA,UAAAsD,WAAA,CACNlE,CAAAA,IAAAA,CAAKO,QAAW,CAAA,CAAA,CAAA,CAChBP,IAAKwD,CAAAA,IAAAA,CAAK,WAAa,CAAA,CAAE5C,KAAOZ,CAAAA,IAAAA,CAAKY,KAAOD,CAAAA,IAAAA,CAAMX,IAAKW,CAAAA,IAAAA,CAAAA,CACxD,EAEO,GAAAgC,GAAA,yBAAA/B,KAAA,UAAAwC,sBAAsBe,CAE5B,CAAA,CAAA,GAAMC,CAAAA,CAAOD,CAAAA,CAAAA,CAAME,YACfrE,CAAAA,CAAAA,CAAAA,IAAAA,EAAAA,CAASoE,CAAKE,CAAAA,QAAAA,CAAStE,IACzBA,CAAAA,EAAAA,IAAAA,CAAKuE,IAER,CAAA,CAAA,EAMO,GAAA5B,GAAA,qBAAA/B,KAAA,UAAA4D,kBAAkBL,GACxBA,CAAMM,CAAAA,eAAAA,CAAAA,CAAAA,CACNN,CAAMO,CAAAA,cAAAA,CAAAA,CACP,EAMO,GAAA/B,GAAA,sBAAA/B,KAAA,UAAA+D,mBAAmBR,CAAAA,CAAAA,KAAAA,qBAAAA,CAAAA,MAAAA,MAIzB,GAHAA,CAAAA,CAAMM,eACNN,CAAAA,CAAAA,CAAAA,CAAAA,CAAMO,cAE+B,CAAA,CAAA,CAAA,CAAA,KAAAE,qBAAA,CAAjC5E,IAAKS,CAAAA,eAAAA,UAAAA,qBAAAA,iBAALT,qBAAAA,CAAsB6E,QACxB,OAGF7E,IAAAA,CAAKqC,YAAgBrC,CAAAA,CAAAA,IAAAA,CAAKqC,YAGPrC,CAAAA,IAAAA,CAAK8E,aACbC,CAAAA,CAAAA,CAAAA,OAAAA,CAAQC,SAAAA,CACZA,CAAAA,CAAAA,CAAAA,CAAGC,QACND,GAAAA,CAAAA,CAAGE,MAASlF,CAAAA,MAAAA,CAAKqC,YAClB,CAAA,EAAA,CAAA,CAGHrC,KAAKmF,aACN,CAAA,CAAA,EAKO,GAAAxC,GAAA,cAAA/B,KAAA,UAAAwE,WAAA,CAAAA,CACNpF,IAAKqC,CAAAA,YAAAA,CAAAA,CAAe,CACDrC,CAAAA,IAAAA,CAAK8E,aACbC,CAAAA,CAAAA,CAAAA,OAAAA,CAAQC,SAAAA,CACjBA,CAAAA,CAAAA,CAAAA,CAAGC,QAAW,CAAA,CAAA,CAAA,CACdD,CAAGE,CAAAA,MAAAA,CAAAA,CAAS,CAAK,EAEnBlF,CAAAA,CAAAA,IAAAA,CAAKY,KAAQ,CAAA,EAAA,CACbZ,IAAKqF,CAAAA,gBAAAA,CAAAA,CAAAA,CACLrF,IAAKwD,CAAAA,IAAAA,CAAK,aAAe,CAAA,CAAE5C,KAAOZ,CAAAA,IAAAA,CAAKY,KAAOD,CAAAA,IAAAA,CAAMX,IAAKW,CAAAA,IAAAA,CAAAA,CAC1D,EAEO,GAAAgC,GAAA,yBAAA/B,KAAA,UAAA0C,sBAAsBa,CAC5B,CAAA,KAAAmB,MAAA,MAAA,GAAMC,CAAAA,CAASpB,CAAAA,CAAAA,CAAMoB,MACfC,CAAAA,CAAAA,CAAqD,IAArCD,GAAAA,CAAAA,CAAOE,OAAQ,CAAA,gBAAA,CAAA,CAC/BC,CAAsD,CAAA,IAAA,GAAvCH,CAAOE,CAAAA,OAAAA,CAAQ,oBAGpC,GAAID,CAAAA,CAAAA,EAAAA,CAAiBE,CAArB,CAAA,CAcA,GATkB,QAAA,GAAdvB,CAAMxB,CAAAA,GAAAA,EAAoB3C,IAAK6B,CAAAA,IAAAA,GACjCsC,CAAMO,CAAAA,cAAAA,CAAAA,CAAAA,CACNP,CAAMM,CAAAA,eAAAA,CAAAA,CAAAA,CACNzE,IAAKuE,CAAAA,IAAAA,CAAAA,CAAAA,CACLvE,KAAKgE,YAAa2B,CAAAA,KAAAA,CAAM,CAAEC,aAAAA,CAAAA,CAAe,CAM3B,CAAA,CAAA,CAAA,CAAA,OAAA,GAAdzB,CAAMxB,CAAAA,GAAAA,EACS,GAAdwB,GAAAA,CAAAA,CAAMxB,GAA2C,EAAA,EAAA,GAA5B3C,IAAKM,CAAAA,kBAAAA,CAM3B,MAJA6D,CAAAA,CAAAA,CAAMO,iBACNP,CAAM0B,CAAAA,wBAAAA,CAAAA,CAAAA,CAGD7F,IAAK6B,CAAAA,IAAAA,CAAAA,KAMN7B,IAAK8F,CAAAA,aAAAA,EAAAA,CAAkB9F,IAAK8F,CAAAA,aAAAA,CAAcnE,QACxC3B,GAAAA,IAAAA,CAAKoB,QACPpB,CAAAA,IAAAA,CAAK+F,qBAAsB/F,CAAAA,IAAAA,CAAK8F,aAEhC9F,CAAAA,CAAAA,IAAAA,CAAKgG,mBAAmBhG,IAAK8F,CAAAA,aAAAA,CAAAA,CAI/B9F,IAAKiG,CAAAA,cAAAA,CAAeC,IAAK,CAAA,UAAA,CACvBlG,MAAKwD,CAAAA,IAAAA,CAAK,YAAc,CAAA,CAAE5C,KAAOZ,CAAAA,MAAAA,CAAKY,KAAOD,CAAAA,IAAAA,CAAMX,MAAKW,CAAAA,IAAAA,CAAAA,CAAAA,CACxDX,OAAKwD,IAAK,CAAA,aAAA,CAAe,CAAE5C,KAAAA,CAAOZ,MAAKY,CAAAA,KAAAA,CAAOD,IAAMX,CAAAA,MAAAA,CAAKW,IAAO,CAAA,CAAA,EAAA,CAAA,CAG7DX,IAAKoB,CAAAA,QAAAA,GACRpB,IAAKuE,CAAAA,IAAAA,CAAAA,CAAAA,CACLvE,IAAKgE,CAAAA,YAAAA,CAAa2B,MAAM,CAAEC,aAAAA,CAAAA,CAAe,CApB3C5F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,KAAAA,CAAKmG,IA4BT,CAAA,CAAA,CAAA,GAAI,CAAC,SAAA,CAAW,WAAa,CAAA,MAAA,CAAQ,KAAO7B,CAAAA,CAAAA,QAAAA,CAASH,CAAMxB,CAAAA,GAAAA,CAAAA,CAAM,CAC/D,GAAMyD,CAAAA,GAAapG,IAAK8E,CAAAA,aAAAA,CAAAA,CAAAA,CAClBuB,EAAeD,CAAAA,EAAAA,CAAWE,OAAQtG,CAAAA,IAAAA,CAAK8F,aAC7C,CAAA,CAAA,GAAIS,CAAAA,EAAWC,CAAAA,IAAAA,CAAKC,GAAI,CAAA,CAAA,CAAGJ,EAM3B,CAAA,CAAA,GAHAlC,CAAMO,CAAAA,cAAAA,CAAAA,CAAAA,CAAAA,CAGD1E,KAAK6B,IACR7B,GAAAA,IAAAA,CAAKmG,IAIDnG,CAAAA,CAAAA,CAAAA,IAAAA,CAAK8F,aACP,CAAA,CAAA,OAIc,WAAd3B,GAAAA,CAAAA,CAAMxB,GACR4D,EAAAA,EAAAA,CAAWF,EAAe,CAAA,CAAA,CACtBE,EAAWH,CAAAA,EAAAA,CAAWvB,MAAS,CAAA,CAAA,GAAG0B,GAAW,CAC1B,CAAA,EAAA,SAAA,GAAdpC,CAAMxB,CAAAA,GAAAA,EACf4D,EAAWF,CAAAA,EAAAA,CAAe,CACtBE,CAAAA,EAAAA,CAAW,CAAGA,GAAAA,EAAAA,CAAWH,EAAWvB,CAAAA,MAAAA,CAAS,CAC1B,CAAA,EAAA,MAAA,GAAdV,CAAMxB,CAAAA,GAAAA,CACf4D,GAAW,CACY,CAAA,KAAA,GAAdpC,CAAMxB,CAAAA,GAAAA,GACf4D,EAAWH,CAAAA,EAAAA,CAAWvB,MAAS,CAAA,CAAA,CAAA,CAGjC7E,IAAK0G,CAAAA,gBAAAA,CAAiBN,EAAWG,CAAAA,EAAAA,CAAAA,CAClC,EAGD,GAAyB,CAArBpC,GAAAA,CAAAA,CAAMxB,IAAIkC,MAA8B,EAAA,WAAA,GAAdV,CAAMxB,CAAAA,GAAAA,CAAqB,CACvD,GAAMyD,CAAAA,GAAapG,CAAAA,IAAAA,CAAK8E,aAGxB,CAAA,CAAA,CAAA,GAAIX,CAAMwC,CAAAA,OAAAA,EAAWxC,CAAMyC,CAAAA,OAAAA,EAAWzC,CAAM0C,CAAAA,MAAAA,CAC1C,OAIF,GAAK7G,CAAAA,IAAAA,CAAK6B,IAAM,CAAA,CACd,GAAkB,WAAA,GAAdsC,CAAMxB,CAAAA,GAAAA,CACR,OAGF3C,IAAAA,CAAKmG,IACN,CAAA,CAAA,EAEDhC,CAAMM,CAAAA,eAAAA,CAAAA,CAAAA,CACNN,CAAMO,CAAAA,cAAAA,CAAAA,CAAAA,CAENoC,aAAa9G,IAAK+G,CAAAA,mBAAAA,CAAAA,CAClB/G,IAAK+G,CAAAA,mBAAAA,CAAsBC,MAAOC,CAAAA,UAAAA,CAChC,iBAAOjH,CAAAA,MAAAA,CAAKM,kBAAqB,CAAA,EAAA,GACjC,GAGgB,CAAA,CAAA,WAAA,GAAd6D,CAAMxB,CAAAA,GAAAA,CACR3C,IAAKM,CAAAA,kBAAAA,CAAqBN,KAAKM,kBAAmB4G,CAAAA,KAAAA,CAAM,CAAI,CAAA,CAAA,CAAA,CAAA,CAE5DlH,IAAKM,CAAAA,kBAAAA,EAAsB6D,CAAMxB,CAAAA,GAAAA,CAAIwE,WAGvC,CAAA,CAAA,CAAA,IAAAC,SAAA,CAAAC,0BAAA,CAAqBjB,GAAY,EAAAkB,KAAA,KAAjC,IAAAF,SAAA,CAAAG,CAAA,KAAAD,KAAA,CAAAF,SAAA,CAAAI,CAAA,IAAAC,IAAA,EAAiC,IAAtBC,CAAAA,EAAAA,CAAAA,KAAAA,CAAAA,KAAAA,CAGT,GAFcA,EAAAA,CAAOC,eAAeR,WAE1BS,CAAAA,CAAAA,CAAAA,UAAAA,CAAW5H,IAAKM,CAAAA,kBAAAA,CAAAA,CAAqB,CAC7CN,IAAAA,CAAK0G,gBAAiBgB,CAAAA,EAAAA,CAAAA,CACtB,MACD,CACF,CACF,OAAAG,GAAA,EAAAT,SAAA,CAAAU,CAAA,CAAAD,GAAA,WAAAT,SAAA,CAAAW,CAAA,KA5HA,CA6HF,CAEO,GAAApF,GAAA,2BAAA/B,KAAA,UAAA2C,wBAAwBY,GAE9B,GAAMC,CAAAA,CAAAA,CAAOD,CAAME,CAAAA,YAAAA,CAAAA,CAAAA,CACfrE,IAASoE,EAAAA,CAAAA,CAAAA,CAAKE,QAAStE,CAAAA,IAAAA,CAAAA,EACzBA,KAAKuE,IAER,CAAA,CAAA,EAEO,GAAA5B,GAAA,oBAAA/B,KAAA,UAAAoH,iBAAA,CAAAA,CACNhI,IAAKgE,CAAAA,YAAAA,CAAa2B,KAClB3F,CAAAA,CAAAA,CAAAA,IAAAA,CAAKuE,MACN,EAEO,GAAA5B,GAAA,2BAAA/B,KAAA,UAAAqH,wBAAwB9D,CAAAA,CAAAA,CAC9B,GACMuB,CAAAA,CAAAA,CADOvB,CAAME,CAAAA,YAAAA,CAAAA,CAAAA,CACO6D,IACxBlD,CAAAA,SAAAA,CAAAA,QACEA,CAAAA,CAAcmD,WAAAA,CAAAA,OAAAA,EAAwC,kBAA7BnD,GAAAA,CAAAA,CAAGoD,OAAQjB,CAAAA,WAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAIpCnH,KAAK2B,QAAY+D,EAAAA,CAAAA,GAIrBvB,CAAMO,CAAAA,cAAAA,CAAAA,CAAAA,CACN1E,IAAKgE,CAAAA,YAAAA,CAAa2B,KAAM,CAAA,CAAEC,aAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CACzC5F,IAAK6B,CAAAA,IAAAA,CAAAA,CAAQ7B,IAAK6B,CAAAA,IAAAA,CACnB,EAEO,GAAAc,GAAA,yBAAA/B,KAAA,UAAAyH,sBAAsBlE,CAC5BA,CAAAA,CAAAA,CAAAA,CAAMM,eACNzE,CAAAA,CAAAA,CAAAA,IAAAA,CAAKsD,qBAAsBa,CAAAA,CAAAA,CAC5B,EAEO,GAAAxB,GAAA,oBAAA/B,KAAA,UAAA0H,iBAAiBnE,CAAAA,CAAAA,KAAAA,MAAAA,MACvBA,CAAMM,CAAAA,eAAAA,CAAAA,CAAAA,CAEa,EAAfzE,GAAAA,IAAAA,CAAKY,KACPZ,GAAAA,IAAAA,CAAKgG,mBAAmB,EACxBhG,CAAAA,CAAAA,IAAAA,CAAKgE,YAAa2B,CAAAA,KAAAA,CAAM,CAAEC,aAAAA,CAAAA,CAAe,CAGzC5F,CAAAA,CAAAA,CAAAA,IAAAA,CAAKiG,cAAeC,CAAAA,IAAAA,CAAK,UACvBlG,CAAAA,MAAAA,CAAKwD,IAAK,CAAA,YAAA,CAAc,CAAE5C,KAAAA,CAAOZ,OAAKY,KAAOD,CAAAA,IAAAA,CAAMX,MAAKW,CAAAA,IAAAA,CAAAA,CAAAA,CACxDX,MAAKwD,CAAAA,IAAAA,CAAK,YAAc,CAAA,CAAE5C,KAAOZ,CAAAA,MAAAA,CAAKY,KAAOD,CAAAA,IAAAA,CAAMX,MAAKW,CAAAA,IAAAA,CAAAA,CAAAA,CACxDX,MAAKwD,CAAAA,IAAAA,CAAK,cAAe,CAAE5C,KAAAA,CAAOZ,MAAKY,CAAAA,KAAAA,CAAOD,IAAMX,CAAAA,MAAAA,CAAKW,IAAO,CAAA,CAAA,EAAA,CAAA,CAGrE,EAEO,GAAAgC,GAAA,wBAAA/B,KAAA,UAAA2H,qBAAqBpE,CAAAA,CAAAA,CAE3BA,CAAMM,CAAAA,eAAAA,CAAAA,CAAAA,CACNN,CAAMO,CAAAA,cAAAA,CAAAA,CACP,EAEO,GAAA/B,GAAA,qBAAA/B,KAAA,UAAA4H,kBAAkBrE,CACxB,CAAA,KAAAsE,MAAA,MAAA,GACMf,CAAAA,CADSvD,CAAAA,CAAAA,CAAMoB,MACCE,CAAAA,OAAAA,CAAQ,aAE9B,CAAA,CAAA,GAAGzF,IAAKkB,CAAAA,gBAAAA,CAGN,MAFAlB,KAAAA,CAAKwD,IAAK,CAAA,mBAAA,CAAqB,CAAE5C,KAAO8G,CAAAA,CAAAA,SAAAA,CAAAA,iBAAAA,CAAAA,CAAQ9G,KAAOD,CAAAA,IAAAA,CAAMX,IAAKW,CAAAA,IAAAA,CAAAA,CAAAA,CAAAA,IAClEX,KAAKuE,CAAAA,IAAAA,CAAAA,CAAAA,CAIP,GAAM7D,CAAAA,CAAAA,CAAWV,IAAKY,CAAAA,KAAAA,CA6BtB,GA5BAZ,IAAAA,CAAKU,QAAWA,CAAAA,CAAAA,CAEZgH,IAAWA,CAAO/F,CAAAA,QAAAA,GAChB3B,IAAKoB,CAAAA,QAAAA,CACPpB,IAAK+F,CAAAA,qBAAAA,CAAsB2B,CAE3B1H,CAAAA,CAAAA,IAAAA,CAAKgG,kBAAmB0B,CAAAA,CAAAA,CAAAA,CAI1B1H,IAAKiG,CAAAA,cAAAA,CAAeC,IAAK,CAAA,iBACvBlG,CAAAA,MAAKgE,CAAAA,YAAAA,CAAa2B,MAAM,CAAEC,aAAAA,CAAAA,CAAe,CAGvC5F,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,IAAAA,CAAKY,KAAUF,GAAAA,CAAAA,EAEjBV,IAAKiG,CAAAA,cAAAA,CAAeC,IAAK,CAAA,UAAA,CACvBlG,MAAKwD,CAAAA,IAAAA,CAAK,YAAc,CAAA,CAAE5C,KAAOZ,CAAAA,MAAAA,CAAKY,MAAOD,IAAMX,CAAAA,MAAAA,CAAKW,IACxDX,CAAAA,CAAAA,CAAAA,MAAAA,CAAKwD,IAAK,CAAA,aAAA,CAAe,CAAE5C,KAAAA,CAAOZ,MAAKY,CAAAA,KAAAA,CAAOD,IAAMX,CAAAA,MAAAA,CAAKW,IAAO,CAAA,CAAA,EAAA,CAAA,CAI/DX,IAAKoB,CAAAA,QAAAA,GACRpB,KAAKuE,IACLvE,CAAAA,CAAAA,CAAAA,IAAAA,CAAKgE,YAAa2B,CAAAA,KAAAA,CAAM,CAAEC,aAAAA,CAAAA,CAAe,CAIzC5F,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAKqC,YAAc,CAAA,CACFrC,IAAK8E,CAAAA,aAAAA,CAAAA,CAAAA,CACbC,OAAQC,CAAAA,SAAAA,CAAAA,CAAAA,CACZA,CAAGC,CAAAA,QAAAA,GACND,EAAGE,MAASlF,CAAAA,MAAAA,CAAKqC,YAClB,CAAA,EAAA,CAAA,CAGHrC,IAAKmF,CAAAA,aAAAA,CAAAA,CACN,EACF,CAEO,GAAAxC,GAAA,2BAAA/B,KAAA,UAAA8H,wBAAA,CAAAA,KAAAA,MAAAA,MACN,GAAMtC,CAAAA,CAAAA,CAAapG,IAAK8E,CAAAA,aAAAA,CAAAA,CAAAA,CAClBlE,CAAQ+H,CAAAA,KAAAA,CAAMC,QAAQ5I,IAAKY,CAAAA,KAAAA,CAAAA,CAASZ,IAAKY,CAAAA,KAAAA,CAAQ,CAACZ,IAAAA,CAAKY,KACvDiI,CAAAA,CAAAA,CAAAA,CAAmB,EAGrBC,CAAAA,cAAAA,CAAelG,GAAI,CAAA,aAAA,CAAA,EACrBwD,CAAWrB,CAAAA,OAAAA,CAAQ2C,SAAAA,CAAUmB,QAAAA,CAAAA,CAAAA,CAAOE,KAAKrB,CAAO9G,CAAAA,KAAAA,CAAAA,EAAAA,CAAAA,CAGhDZ,IAAKgG,CAAAA,kBAAAA,CACHI,CAAW4C,CAAAA,MAAAA,CAAOhE,SAAAA,CAAMpE,QAAAA,CAAAA,CAAAA,CAAMqI,GAAIC,CAAAA,MAAAA,CAAAA,CAAQ5E,QAASU,CAAAA,CAAAA,CAAGpE,KAIxDkI,CAAAA,EAAAA,CAAAA,CAAAA,EAAAA,cAAAA,CACGK,WAAY,CAAA,aAAA,CAAA,CACZjD,KAAK,iBAAMlG,CAAAA,MAAAA,CAAK0I,uBAEtB,CAAA,CAAA,EAAA,CAAA,EAEO,GAAA/F,GAAA,mBAAA/B,KAAA,UAAAwI,gBAAgBjF,CAAwBuD,CAAAA,CAAAA,CAAAA,KAAAA,MAAAA,MAG9C,GAFAvD,CAAAA,CAAMM,eAEDzE,CAAAA,CAAAA,CAAAA,CAAAA,IAAAA,CAAK2B,QAAU,CAAA,CAClB3B,IAAK+F,CAAAA,qBAAAA,CAAsB2B,GAAQ,CAEhB1H,CAAAA,CAAAA,IAAAA,CAAK8E,aACbC,CAAAA,CAAAA,CAAAA,OAAAA,CAAQC,SAAAA,CACZA,CAAAA,CAAAA,CAAAA,CAAGC,QACND,GAAAA,CAAAA,CAAGE,MAASlF,CAAAA,MAAAA,CAAKqC,YAClB,CAAA,EAAA,CAAA,CAIHrC,IAAKiG,CAAAA,cAAAA,CAAeC,IAAK,CAAA,UAAA,CACvBlG,OAAKwD,IAAK,CAAA,YAAA,CAAc,CAAE5C,KAAAA,CAAOZ,MAAKY,CAAAA,KAAAA,CAAOD,IAAMX,CAAAA,MAAAA,CAAKW,IACxDX,CAAAA,CAAAA,CAAAA,MAAAA,CAAKwD,IAAK,CAAA,aAAA,CAAe,CAAE5C,KAAAA,CAAOZ,MAAKY,CAAAA,KAAAA,CAAOD,KAAMX,MAAKW,CAAAA,IAAAA,CAAAA,CAAO,EAEnE,CAAA,EACF,CAGO,GAAAgC,GAAA,iBAAA/B,KAAA,UAAAkE,cAAA,CAEN,KAAAuE,cAAA,CAAAC,MAAA,MAAA,GAAMC,CAAAA,CAAU,CAAAC,kBAAA,CAAIxJ,IAAKyJ,CAAAA,gBAAAA,CAA6B,aA0BtD,CAAA,CAAA,CAAA,MAvBIzJ,KAAKoB,CAAAA,QAAAA,EAAYpB,EAAAA,cAAAA,MAAKU,QAAUmE,UAAAA,cAAAA,iBAAf7E,cAAAA,CAAe6E,MAAAA,EAAS,CAC3C0E,EAAAA,CAAAA,CAAQG,IAAK,CAAA,SAACC,CAAGC,CAAAA,CAAAA,CAAAA,CACf,GAAIC,CAAAA,CAAAA,CAAS7J,MAAKU,CAAAA,QAAAA,CAAS4F,OAAQqD,CAAAA,CAAAA,CAAE/I,KACjCkJ,CAAAA,CAAAA,CAAAA,CAAS9J,OAAKU,QAAS4F,CAAAA,OAAAA,CAAQsD,CAAEhJ,CAAAA,KAAAA,CAAAA,CAUrC,MAPgB,CAAA,CAAA,GAAZiJ,CACFA,GAAAA,CAAAA,CAASE,CAEK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAZD,CACFA,GAAAA,CAAAA,CAASC,CAGPF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASC,CACH,CAAA,CAAA,CAAA,CAEND,EAASC,CACJ,CAAA,CAAA,CAEF,CAAC,EAAA,CAAA,CAILP,CACR,EAEO,GAAA5G,GAAA,mBAAA/B,KAAA,UAAAoJ,gBAAgBtC,CACtB,CAAA,KAAAuC,aAAA,CAAA,GAAMC,CAAAA,CAAaxC,EAAAA,aAAAA,CAAAA,CAAAA,CAAOyC,UAAYC,UAAAA,aAAAA,iBAAnB1C,aAAAA,CAAmB0C,aAAAA,CACpC,qBAEF,CAAA,CAAA,GAAA,CAAKF,EAAY,MAAO,EAAA,CAExB,GAAMG,CAAAA,CAAAA,CAAgBH,CAAWG,CAAAA,aAAAA,CAAAA,CAAAA,CAC3BC,CAAwB,CAAA,EAAA,CAW9B,MATAD,CAAAA,CAAAA,CAActF,OAAQwF,CAAAA,SAAAA,CAAAA,CAAAA,CAChBA,CAAgBC,WAAAA,CAAAA,WAAAA,CAClBF,CAAYvB,CAAAA,IAAAA,CAAKwB,EAAKE,SACbF,CAAAA,CAAAA,CAAAA,CAAKG,QAAaC,GAAAA,IAAAA,CAAKC,SAEhCN,EAAAA,CAAAA,CAAYvB,IAAKwB,CAAAA,CAAAA,CAAKM,WAAe,EAAA,EAAA,CACtC,EAGIP,CAAAA,CAAAA,CAAAA,CAAYQ,IAAK,CAAA,EAAA,CACzB,EAGO,GAAAnI,GAAA,kBAAA/B,KAAA,UAAAmK,eAAA,EACN,MAAO/K,KAAAA,CAAKoK,aAA0B,CAAA,aAAA,CACvC,EAIO,GAAAzH,GAAA,oBAAA/B,KAAA,UAAA8F,iBAAiBgB,CAAAA,CAAAA,CACJ1H,IAAK8E,CAAAA,aAAAA,CAAAA,CAAAA,CAGbC,OAAQC,CAAAA,SAAAA,CAAAA,CAAAA,CACjBA,CAAGgG,CAAAA,OAAAA,CAAAA,CAAU,CACbhG,CAAAA,CAAAA,CAAGiG,UAAY,CAAC,EAAA,CAAA,CAIdvD,CACF1H,GAAAA,IAAAA,CAAK8F,aAAgB4B,CAAAA,CAAAA,CACrBA,CAAOsD,CAAAA,OAAAA,CAAAA,CAAU,CACjBtD,CAAAA,CAAAA,CAAOuD,QAAW,CAAA,CAAA,CAClBvD,CAAO/B,CAAAA,KAAAA,CAAAA,CAAAA,CAEV,EAGO,GAAAhD,GAAA,sBAAA/B,KAAA,UAAAoF,mBAAmB0B,CACzB,CAAA,CAAA,GAAMtB,CAAAA,CAAapG,CAAAA,IAAAA,CAAK8E,aAClBoG,CAAAA,CAAAA,CAAAA,CAAAA,CAAqBvC,KAAMC,CAAAA,OAAAA,CAAQlB,CAAUA,CAAAA,CAAAA,CAAAA,CAAS,CAACA,CAAAA,CAAAA,CAG7DtB,CAAWrB,CAAAA,OAAAA,CAAQC,SAAAA,CAAOA,QAAAA,CAAAA,CAAAA,CAAGC,UAAW,CAGpCiG,EAAAA,CAAAA,CAAAA,CAAAA,CAAmBrG,MACrBqG,EAAAA,CAAAA,CAAmBnG,OAAQC,CAAAA,SAAAA,CAAAA,QAAOA,CAAAA,CAAGC,CAAAA,QAAAA,CAAAA,CAAW,CAIlDjF,EAAAA,CAAAA,CAAAA,IAAAA,CAAKqF,gBACN,CAAA,CAAA,EAGO,GAAA1C,GAAA,yBAAA/B,KAAA,UAAAmF,sBAAsB2B,CAAoByD,CAAAA,CAAAA,CAAAA,CAE9CzD,EAAOzC,QADK,CAAA,CAAA,CAAA,GAAVkG,CAA4B,EAAA,CAAA,CAAA,GAAVA,CACFA,CAAAA,CAAAA,CAAAA,CAECzD,CAAOzC,CAAAA,QAAAA,CAG5BjF,IAAKqF,CAAAA,gBAAAA,CAAAA,CACN,EAIO,GAAA1C,GAAA,oBAAA/B,KAAA,UAAAyE,iBAAA,CAKN,KAAA+F,MAAA,MAAAC,sBAAA,CAAAC,sBAAA,CAAAC,sBAAA,CAAAC,WAAA,CAAA,GAHAxL,IAAKS,CAAAA,eAAAA,CAAkBT,KAAK8E,aAAgBkE,CAAAA,CAAAA,CAAAA,MAAAA,CAAOhE,SAAAA,CAAMA,QAAAA,CAAAA,CAAAA,CAAGC,QAGxDjF,EAAAA,CAAAA,CAAAA,IAAAA,CAAKoB,QAUP,CAAA,CAAA,GATApB,IAAKY,CAAAA,KAAAA,CAAQZ,IAAKS,CAAAA,eAAAA,CAAgBwI,GAAIjE,CAAAA,SAAAA,CAAAA,QAAMA,CAAAA,CAAGpE,CAAAA,KAAAA,EAAAA,CAAAA,CAE3CZ,KAAKe,WAAqC,EAAA,CAAA,GAAtBf,IAAKY,CAAAA,KAAAA,CAAMiE,MAEjC7E,CAAAA,IAAAA,CAAKQ,YAAe,CAAA,EAAA,CAEpBR,IAAKQ,CAAAA,YAAAA,CAAeR,IAAKS,CAAAA,eAAAA,CAAgBoE,MAAS,CAAA,WAAA,CAGhB,CAAhC7E,GAAAA,IAAAA,CAAKS,gBAAgBoE,MAAc,CAAA,CACrC7E,IAAKqC,CAAAA,YAAAA,CAAAA,CAAe,CACDrC,CAAAA,IAAAA,CAAK8E,aACbC,CAAAA,CAAAA,CAAAA,OAAAA,CAAQC,SAAAA,GACZA,CAAGC,CAAAA,QAAAA,GACND,CAAGE,CAAAA,MAAAA,CAASlF,MAAKqC,CAAAA,YAAAA,CAClB,EAGHrC,CAAAA,CAAAA,IAAAA,CAAKmF,eACN,EAEDnF,CAAAA,IAAAA,KAAAA,CAAKY,KAAQZ,EAAAA,sBAAAA,EAAAA,sBAAAA,CAAAA,IAAAA,CAAKS,eAAgB,CAAA,CAAA,CAAA,UAAA6K,sBAAA,iBAArBtL,sBAAAA,CAAyBY,KAASZ,UAAAA,sBAAAA,UAAAA,sBAAAA,CAAAA,IAAAA,CAAKY,KACpDZ,CAAAA,IAAAA,CAAKQ,YAAeR,CAAAA,CAAAA,sBAAAA,KAAAA,CAAKS,eAAgB,CAAA,CAAA,CAAA,UAAA8K,sBAAA,WAArBvL,sBAAAA,CAAyB2H,YACzC3H,CAAAA,CAAAA,CAAAA,IAAAA,CAAKS,gBAAgB,CAAGkH,CAAAA,CAAAA,YAAAA,CAAAA,CAAAA,EAAAA,WAAAA,CACxB3H,IAAKY,CAAAA,KAAAA,UAAAA,WAAAA,UAAAA,WAAAA,CAAS,EAIpBZ,CAAAA,IAAAA,CAAKiG,cAAeC,CAAAA,IAAAA,CAAK,UACvBlG,CAAAA,MAAAA,CAAKC,qBAAsBwL,CAAAA,cAAAA,CAAAA,CAAgB,EAG7CzL,CAAAA,CAAAA,IAAAA,CAAK0L,yBACN,CAAA,CAAA,EAED,GAAA/I,GAAA,qBAAA/B,KAAA,UAAA+K,kBAAA,CACEhI,CAAAA,QAAAA,CAASG,mBAAoB,CAAA,SAAA,CAAW9D,IAAKsD,CAAAA,qBAAAA,CAC9C,EAED,GAAAX,GAAA,oBAAA/B,KAAA,UAAAgL,iBAAA,CACEjI,CAAAA,QAAAA,CAASC,gBAAiB,CAAA,SAAA,CAAW5D,IAAKsD,CAAAA,qBAAAA,CAC3C,EAED,GAAAX,GAAA,sBAAA/B,KAAA,UAAAiL,mBAAmB/D,CACjB9H,CAAAA,CAAAA,IAAAA,CAAKgB,WAAc8G,CAAAA,CAAAA,CAAEgE,MAAOlL,CAAAA,KAAAA,CAGG,CAFTZ,GAAAA,IAAAA,CAAK+L,aAAc/L,CAAAA,IAAAA,CAAKgB,WAE1B6D,CAAAA,CAAAA,MAAAA,CAElB7E,IAAKuC,CAAAA,aAAAA,CAAAA,CAAgB,CAErBvC,CAAAA,IAAAA,CAAKuC,eAAgB,CAExB,EAED,GAAAI,GAAA,iBAAA/B,KAAA,UAAAmL,cAAc/K,CACZ,CAAA,CAAA,GAAMoF,CAAAA,CAAapG,CAAAA,IAAAA,CAAK8E,aAClBkH,CAAAA,CAAAA,CAAAA,CAAAA,CAAuBhL,CAAYmG,CAAAA,WAAAA,CAAAA,CAAAA,CAEzC,GAAI8E,CAAAA,CAAAA,CAAgC,EAgBpC,CAAA,MAdA7F,CAAAA,EAAWrB,OAAQC,CAAAA,SAAAA,CAAAA,CAAAA,CACjB,GAAMkH,CAAAA,CAAAA,CAAiBlH,CAAG2C,CAAAA,YAAAA,CAAAA,CAAAA,CAAeR,WACnCgF,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAkBnH,CAAGpE,CAAAA,KAAAA,EAAS,EAAIuG,EAAAA,WAAAA,CAAAA,CAAAA,CAEtC+E,CAAe5H,CAAAA,QAAAA,CAAS0H,CACxBG,CAAAA,EAAAA,CAAAA,CAAe7H,SAAS0H,CAExBhH,CAAAA,EAAAA,CAAAA,CAAGE,MAAS,CAAA,CAAA,CAAA,CACZ+G,CAAgBlD,CAAAA,IAAAA,CAAK/D,CAErBA,CAAAA,EAAAA,CAAAA,CAAGE,MAAS,CAAA,CAAA,CACb,EAGI+G,CAAAA,CAAAA,CACR,EAEO,GAAAtJ,GAAA,iBAAA/B,KAAA,UAAAwL,cAAcjI,CAAAA,CAAAA,CACpBnE,KAAKC,qBAAsBoM,CAAAA,WAAAA,CAAAA,CAAY,CACvCrM,CAAAA,CAAAA,IAAAA,CAAKC,qBAAsBqM,CAAAA,gBAAAA,CAAiBnI,CAC7C,CAAA,EAGD,GAAAxB,GAAA,wBAAA/B,KAAA,UAAA2L,qBAAA,CAAAA,CAEMvM,IAAK2B,CAAAA,QAAAA,GACP3B,IAAK6B,CAAAA,IAAAA,CAAAA,CAAO,CACZ7B,CAAAA,IAAAA,CAAKwM,mBAER,EAGD,GAAA7J,GAAA,qBAAA/B,KAAA,UAAA6L,kBAAA,CACE,CAAA,GAAMrG,CAAAA,CAAapG,CAAAA,IAAAA,CAAK8E,aAClBlE,CAAAA,CAAAA,CAAAA,CAAAA,CAAQ+H,KAAMC,CAAAA,OAAAA,CAAQ5I,IAAKY,CAAAA,KAAAA,CAAAA,CAASZ,IAAKY,CAAAA,KAAAA,CAAQ,CAACZ,IAAAA,CAAKY,OAG7DZ,IAAKgG,CAAAA,kBAAAA,CAAmBI,CAAW4C,CAAAA,MAAAA,CAAOhE,SAAAA,CAAMpE,QAAAA,CAAAA,CAAAA,CAAM0D,QAASU,CAAAA,CAAAA,CAAGpE,KACnE,CAAA,EAAA,CAAA,CAAA,EAGK,GAAA+B,GAAA,oBAAA/B,KAAA,gBAAA8L,iBAAA,CAAAC,iBAAA,cAAAC,mBAAA,GAAAC,IAAA,UAAAC,QAAA,MAAAC,OAAA,UAAAC,EAAA,CAAAC,GAAA,CAAAC,GAAA,CAAAC,GAAA,CAAAC,GAAA,CAAAC,GAAA,QAAAT,mBAAA,GAAAU,IAAA,UAAAC,SAAAC,SAAA,iBAAAA,SAAA,CAAAC,IAAA,CAAAD,SAAA,CAAAE,IAAA,cACA1N,IAAAA,CAAK6B,IAAS7B,EAAAA,CAAAA,IAAAA,CAAK2B,oCAErB3B,IAAAA,CAAK0G,gBAAiB1G,CAAAA,IAAAA,CAAKS,eAAgB,CAAA,CAAA,CAAA,EAAMT,IAAK+K,CAAAA,cAAAA,CAAAA,CAAAA,CAAAA,CAGtD/K,IAAKwD,CAAAA,IAAAA,CAAK,WAAa,CAAA,CAAE5C,KAAOZ,CAAAA,IAAAA,CAAKY,KAAOD,CAAAA,IAAAA,CAAMX,KAAKW,IACvDX,CAAAA,CAAAA,CAAAA,IAAAA,CAAK0D,gBAECiK,CAAAA,CAAAA,CAAAA,SAAAA,CAAAA,IAAAA,SAAAA,CAAAA,CAAAA,CAAe3N,IACrBA,CAAAA,QAAAA,IAAAA,CAAK4N,OAAQ1I,CAAAA,MAAAA,CAAAA,CAAS,CACtBlF,CAAAA,IAAAA,CAAK6N,KAAMC,CAAAA,MAAAA,CAAAA,CAAS,CAGpBC,CAAAA,qBAAAA,CAAsB,UACpB/N,CAAAA,OAAAA,CAAK0G,iBAAiB1G,OAAK8F,CAAAA,aAAAA,CAAc,EAG3C,CAAA,CAAAkH,EAAA,CAA+BgB,CAAahO,CAAAA,IAAAA,CAAM,aAAe,CAAA,CAC/DiO,GAAK,CAAA,KAAA,CAAA,CAAA,CADCC,GAAAA,CAAAA,EAAAA,CAAFA,SAAEA,CAAW3E,GAAAA,CAAAA,EAAAA,CAAFA,OAAEA,CAAAA,SAAAA,CAAAA,IAAAA,UAGb4E,CAAAA,CAAUnO,CAAAA,IAAAA,CAAK6N,MAAMA,KAAOK,CAAAA,GAAAA,CAAW3E,GAGzCvJ,CAAAA,SAAAA,IAAAA,CAAK8F,aACPsI,EAAAA,CAAAA,CAAepO,IAAK8F,CAAAA,aAAAA,CAAe9F,IAAK4N,CAAAA,OAAAA,CAAS,UAAY,CAAA,MAAA,CAAA,CAG/D5N,IAAKwD,CAAAA,IAAAA,CAAK,iBAAmB,CAAA,CAAE5C,MAAOZ,IAAKY,CAAAA,KAAAA,CAAOD,IAAMX,CAAAA,IAAAA,CAAKW,IAC9D,CAAA,CAAA,CAAA6M,SAAA,CAAAE,IAAA,kBAEC1N,IAAAA,CAAKwD,IAAK,CAAA,WAAA,CAAa,CAAE5C,KAAAA,CAAOZ,IAAKY,CAAAA,KAAAA,CAAOD,IAAMX,CAAAA,IAAAA,CAAKW,OACvDX,IAAK6D,CAAAA,mBAAAA,CAAAA,CAAAA,CAAAA,SAAAA,CAAAA,IAAAA,UAEC8J,CAAAA,CAAe3N,CAAAA,IAAAA,CAAAA,SAAAA,GAAAA,CACUgO,CAAAA,CAAahO,IAAM,CAAA,aAAA,CAAe,CAC/DiO,GAAAA,CAAK,KAEDE,CAAAA,CAAAA,CAHED,GAAS3E,CAAAA,GAAAA,CAAX2E,SAAAA,CAAa3E,GAAYyE,CAAAA,GAAAA,CAAdzE,OAAAA,CAAAA,SAAAA,CAAAA,IAAAA,UAGX4E,CAAAA,CAAAA,CAAUnO,KAAK6N,KAAMA,CAAAA,KAAAA,CAAOK,GAAW3E,CAAAA,GAAAA,CAAAA,SAC7CvJ,IAAK4N,CAAAA,OAAAA,CAAQ1I,MAAS,CAAA,CAAA,CAAA,CACtBlF,IAAK6N,CAAAA,KAAAA,CAAMC,MAAS,CAAA,CAAA,CAAA,CAEpB9N,IAAKwD,CAAAA,IAAAA,CAAK,iBAAmB,CAAA,CAAE5C,MAAOZ,IAAKY,CAAAA,KAAAA,CAAOD,IAAMX,CAAAA,IAAAA,CAAKW,IAC9D,CAAA,CAAA,0BAAA6M,SAAA,CAAAa,IAAA,MAAAvB,OAAA,QAIH,YAAAN,iBAAA,SAAAE,iBAAA,CAAA4B,KAAA,MAAAC,SAAA,UAAA/B,gBAAA,OAAA7J,GAAA,QAAA/B,KAAA,gBAAA4N,KAAA,CAAA7B,iBAAA,cAAAC,mBAAA,GAAAC,IAAA,UAAA4B,SAAA,SAAA7B,mBAAA,GAAAU,IAAA,UAAAoB,UAAAC,SAAA,iBAAAA,SAAA,CAAAlB,IAAA,CAAAkB,SAAA,CAAAjB,IAAA,cACE,CAAI1N,IAAK6B,CAAAA,IAAAA,EAAAA,CAAQ7B,IAAK2B,CAAAA,QAAAA,GAAAA,SAAAA,CAAAA,IAAAA,iBAAAA,SAAAA,CAAAA,MAAAA,WAKtB3B,IAAAA,CAAK6B,MAAO,CACL+M,CAAAA,CAAAA,CAAa5O,IAAM,CAAA,iBAAA,CAAA,UALxBA,IAAK6B,CAAAA,IAAAA,CAAAA,CAAO,CAMf,yBAAA8M,SAAA,CAAAN,IAAA,MAAAI,QAAA,QAGD,YAAAtI,KAAA,SAAAqI,KAAA,CAAAF,KAAA,MAAAC,SAAA,UAAApI,IAAA,OAAAxD,GAAA,QAAA/B,KAAA,gBAAAiO,KAAA,CAAAlC,iBAAA,cAAAC,mBAAA,GAAAC,IAAA,UAAAiC,SAAA,SAAAlC,mBAAA,GAAAU,IAAA,UAAAyB,UAAAC,SAAA,iBAAAA,SAAA,CAAAvB,IAAA,CAAAuB,SAAA,CAAAtB,IAAA,cACO1N,IAAAA,CAAK6B,IAAQ7B,EAAAA,CAAAA,IAAAA,CAAK2B,QAMvB,GAAAqN,SAAA,CAAAtB,IAAA,iBAAAsB,SAAA,CAAAC,MAAA,WADAjP,KAAK6B,IAAO,CAAA,CAAA,CAAA,CACL+M,CAAa5O,CAAAA,IAAAA,CAAM,iBALxBA,CAAAA,UAAAA,IAAAA,CAAK6B,IAAO,CAAA,CAAA,CAMf,yBAAAmN,SAAA,CAAAX,IAAA,MAAAS,QAAA,QAGD,YAAAvK,KAAA,SAAAsK,KAAA,CAAAP,KAAA,MAAAC,SAAA,UAAAhK,IAAA,OAAA5B,GAAA,iBAAA/B,KAAA,UAAAsO,cAAA,CACE,CAAA,MAAOlP,KAAK+C,CAAAA,UAAAA,CAAWmM,aACxB,CAAA,CAAA,EAGD,GAAAvM,GAAA,WAAA/B,KAAA,UAAAuO,QAAA,CACE,CAAA,MAAOnP,KAAKC,CAAAA,qBAAAA,CAAsBkP,OACnC,CAAA,CAAA,EAGD,GAAAxM,GAAA,kBAAA/B,KAAA,UAAAwO,eAAA,CAAAA,CACE,MAAOpP,KAAAA,CAAK+C,UAAWqM,CAAAA,cAAAA,CAAAA,CACxB,EAGD,GAAAzM,GAAA,qBAAA/B,KAAA,UAAAyO,kBAAkBC,CAAAA,CAAAA,CAChBtP,KAAK+C,UAAWsM,CAAAA,iBAAAA,CAAkBC,CAClCtP,CAAAA,CAAAA,IAAAA,CAAKC,qBAAsBwL,CAAAA,cAAAA,CAAAA,CAC5B,EAGD,GAAA9I,GAAA,SAAA/B,KAAA,UAAA+E,MAAM4D,CAAAA,CAAAA,CACJvJ,IAAKgE,CAAAA,YAAAA,CAAa2B,KAAM4D,CAAAA,CAAAA,CACzB,EAGD,GAAA5G,GAAA,QAAA/B,KAAA,UAAA2O,KAAA,EACEvP,IAAKgE,CAAAA,YAAAA,CAAauL,IACnB,CAAA,CAAA,EAED,GAAA5M,GAAA,iBAAA/B,KAAA,UAAA4O,cAAcrL,CAEZA,CAAAA,CAAAA,CAAAA,CAAMM,eACP,CAAA,CAAA,EAED,GAAA9B,GAAA,iCAAA/B,KAAA,UAAA6O,8BAAA,CAAAA,CACE,GAAIzP,IAAAA,CAAKmK,UAAY,CAAA,CACnB,GAAMuF,CAAAA,GAAgB1P,CAAAA,IAAAA,CAAKmK,UAAWC,CAAAA,aAAAA,CAAc,kBACpD,CAAA,CAAA,GAAIsF,GAAyBlF,WAAAA,CAAAA,WAAAA,CAAa,CAExC,MADckF,CAAAA,GAAcC,CAAAA,WAAAA,CACb,EAChB,EACF,CACF,CAED,GAAAhN,GAAA,6BAAA/B,KAAA,UAAA8K,0BAAA,CAEK1L,KAAAA,OAAAA,MAAAA,IAAAA,CAAK0B,iBAAsBqI,GAAAA,CAAAA,CAAAA,CAAAA,GAC5B/J,IAAKsC,CAAAA,oBAAAA,CAAuBtC,IAAK0B,CAAAA,iBAAAA,CAAAA,CAGnC1B,IAAK0B,CAAAA,iBAAAA,CAAoBqI,CACzB9C,CAAAA,CAAAA,CAAAA,UAAAA,CAAW,UACT,CAAA,GAAI2I,CAAAA,CAAmB,CAAA,EAAA,CACvB,GAAI5P,OAAKmK,CAAAA,UAAAA,CAAY,CACNnK,OAAAA,CAAKmK,UAAWV,CAAAA,gBAAAA,CAAiB,UACzC1E,CAAAA,CAAAA,OAAAA,CAAQ8K,SAAAA,CACPA,CAAAA,CAAAA,CAAAA,WAAerF,CAAAA,WACjBoF,EAAAA,CAAAA,CAAO7G,IAAK8G,CAAAA,CAAAA,CAAIF,WACjB,CAAA,EAAA,CAEJ,EACD,GAAI3P,OAAAA,CAAKY,KAAMiE,CAAAA,MAAAA,GAAW+K,CAAO/K,CAAAA,MAAAA,CAC/B,OAOF,GAAMiL,CAAAA,CAAuB9P,CAAAA,OAAAA,CAAKyP,6BAClC,CAAA,CAAA,CAAA,GAAA,CAAKK,CACH,CAAA,OAGF,GAAIC,CAAAA,CAAAA,CAAO,EACPC,CAAY,CAAA,CAAA,CAEhB,IAAK,GAAIC,CAAAA,EAAI,CAAA,CAAA,CAAGA,EAAIL,CAAAA,CAAAA,CAAO/K,MAAQoL,CAAAA,EAAAA,EAAAA,CAGjC,GAFAF,CAAAA,EAAQH,CAAOK,CAAAA,EAAAA,CAAAA,CAEXF,CAAOD,CAAAA,CAAAA,CAAsB,CAC/BE,CAAYC,CAAAA,EAAAA,CACZ,MACD,CAEHjQ,OAAK0B,CAAAA,iBAAAA,CAAoBsO,CAAS,EAAA,CACjC,CACJ,CAAA,EAED,GAAArN,GAAA,UAAA/B,KAAA,UAAAsP,OAAA,CAAAA,KAAAA,OAAAA,MACE,GAAMC,CAAAA,CAAAA,CAAenQ,IAAKI,CAAAA,iBAAAA,CAAkBgQ,KAAK,OACzBpQ,CAAAA,CAAAA,IAAAA,CAAKI,iBAAkBgQ,CAAAA,IAAAA,CAAK,WACpD,CAAA,CAAA,GAAMC,CAAAA,CAAqBrQ,CAAAA,IAAAA,CAAKI,iBAAkBgQ,CAAAA,IAAAA,CAAK,cACjDE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWtQ,IAAKiC,CAAAA,KAAAA,EAAAA,CAAAA,CAAiBkO,CACjCI,CAAAA,CAAAA,CACJvQ,KAAK4B,SAAc5B,EAAAA,CAAAA,IAAAA,CAAK2B,QAAY3B,EAAAA,IAAAA,CAAKY,KAAMiE,CAAAA,MAAAA,CAAS,CACpD2L,CAAAA,CAAAA,CAAuBxQ,IAAKe,CAAAA,WAAAA,EAAqC,CAAtBf,GAAAA,IAAAA,CAAKY,KAAMiE,CAAAA,MAAAA,CACtD7D,CAAchB,CAAAA,IAAAA,CAAKgB,aAAe,EAClCyP,CAAAA,CAAAA,CAAAA,CAAAA,CAAczQ,IAAKqB,CAAAA,QAAAA,CACnBqP,CAAkB1Q,CAAAA,CAAAA,CAAAA,IAAAA,CAAKsB,YACvBqP,CAAAA,CAAAA,CAAgB3Q,KAAKS,eAAgB,CAAA,CAAA,CAAA,CAAKT,IAAKgK,CAAAA,eAAAA,CAAgBhK,IAAKS,CAAAA,eAAAA,CAAgB,CAAM,CAAA,CAAA,CAAA,EAAA,CAEhG,MAAOmQ,CAAAA,CAAI,CAAAC,eAAA,GAAAA,eAAA,CAAAC,sBAAA,6mGAGCC,CAAAA,CAAS,CACf,cAAgB,CAAA,CAAA,CAAA,CAChB,qBAAqC,CAAA,OAAA,GAAd/Q,KAAKc,IAC5B,CAAA,sBAAA,CAAsC,QAAdd,GAAAA,IAAAA,CAAKc,KAC7B,qBAAqC,CAAA,OAAA,GAAdd,KAAKc,IAC5B,CAAA,yBAAA,CAA2BwP,EAC3B,6BAA+BG,CAAAA,CAAAA,CAAAA,CAAAA,CAOjBH,CAAAA,CAAW,OAAU,CAAA,MAAA,CAC1BtQ,IAAKgI,CAAAA,gBAAAA,CAEOhI,IAAKiC,CAAAA,KAAAA,CAG1BoO,CAAAA,CAAqBO,CAAI,CAAAI,gBAAA,GAAAA,gBAAA,CAAAF,sBAAA,8CAAwC,EAAA,CAIvDC,CAAS,CAAA,CACfE,MAAQ,CAAA,CAAA,CAAA,CACR,iBAAmBjR,CAAAA,IAAAA,CAAKuB,QACxB,eAAiBvB,CAAAA,IAAAA,CAAKwB,KACtB,CAAA,iBAAA,CAAmBxB,IAAKyB,CAAAA,OAAAA,CACxB,oBAAoB,CACpB,CAAA,gBAAA,CAAkBzB,IAAK+B,CAAAA,MAAAA,CACvB,cAAgB/B,CAAAA,IAAAA,CAAKgC,KACrB,cAAgBhC,CAAAA,IAAAA,CAAK6B,IACrB,CAAA,kBAAA,CAAoB7B,IAAK2B,CAAAA,QAAAA,CACzB,mBAAoB3B,IAAKoB,CAAAA,QAAAA,CACzB,iBAAmBpB,CAAAA,IAAAA,CAAKO,QACxB,CAAA,6BAAA,CAA+BiQ,EAC/B,aAAkC,CAAA,KAAA,GAAnBxQ,IAAKkC,CAAAA,SAAAA,CACpB,gBAAqC,CAAA,QAAA,GAAnBlC,KAAKkC,SACvB,CAAA,eAAA,CAA+B,OAAdlC,GAAAA,IAAAA,CAAKc,IACtB,CAAA,gBAAA,CAAgC,WAAdd,IAAKc,CAAAA,IAAAA,CACvB,eAA+B,CAAA,OAAA,GAAdd,IAAKc,CAAAA,IAAAA,CAAAA,CAAAA,CAEZd,IAAKkC,CAAAA,SAAAA,CACNlC,IAAAA,CAAK8B,MAAQ,OAAU,CAAA,UAAA,CAYrB9B,IAAKqI,CAAAA,qBAAAA,CACHrI,IAAKiI,CAAAA,uBAAAA,CAGhB0I,CAAkB3Q,EAAAA,CAAAA,IAAAA,CAAKoB,SACrBwP,CAAI,CAAAM,gBAAA,GAAAA,gBAAA,CAAAJ,sBAAA,uGACAK,CAAWR,CAAAA,CAAAA,CAAAA,EAEfC,CAAI,CAAAQ,gBAAA,GAAAA,gBAAA,CAAAN,sBAAA,kJAGMC,CAAAA,CAAS,CACfM,cAAAA,CAAAA,CAAgB,CAChBjQ,CAAAA,QAAAA,CAAUpB,IAAKoB,CAAAA,QAAAA,CAAAA,CAAAA,EAQPpB,IAAKe,CAAAA,WAAAA,CACPf,IAAK2B,CAAAA,QAAAA,CACR3B,IAAKQ,CAAAA,YAAAA,CAMER,IAAAA,CAAK6B,KAAO,MAAS,CAAA,OAAA,CAGrB7B,IAAAA,CAAK2B,SAAW,MAAS,CAAA,OAAA,CAIhC3B,IAAK+D,CAAAA,WAAAA,CACN/D,IAAKkE,CAAAA,UAAAA,CAGblE,IAAAA,CAAKoB,SACHwP,CAAI,CAAAU,gBAAA,GAAAA,gBAAA,CAAAR,sBAAA,mJAEE9Q,IAAKS,CAAAA,eAAAA,CAAgBwI,GAAI,CAAA,SAACvB,CAAQ6J,CAAAA,CAAAA,CAAAA,CAClC,GACEA,CAAQvR,CAAAA,OAAAA,CAAK0B,iBACb1B,EAAAA,OAAAA,CAAK0B,iBAAqB,EAAA,CAAA,CAC1B,CACA,GAAM8P,CAAAA,GAAAA,CAAU,CACdC,iBAAAA,CACEF,CAAQ,CAAA,CAAA,CAAIvR,OAAKsC,CAAAA,oBAAAA,EACjBtC,OAAK0B,CAAAA,iBAAAA,GAAsBqI,CAE/B,CAAA,CAAA,CAAA,CAAA,MAAO6G,CAAAA,CAAI,CAAAc,gBAAA,GAAAA,gBAAA,CAAAZ,sBAAA,2yBAECC,CAASS,CAAAA,GAAAA,CAAAA,CAQTxR,OAAKgC,CAAAA,IAAAA,CACNhC,OAAKc,CAAAA,IAAAA,CAEIqD,SAAAA,CACdnE,QAAAA,CAAAA,OAAAA,CAAKoJ,gBAAgBjF,CAAOuD,CAAAA,CAAAA,CAAAA,GAE5B1H,OAAKgK,CAAAA,eAAAA,CAAgBtC,GACnBkJ,CAAI,CAAAe,gBAAA,GAAAA,gBAAA,CAAAb,sBAAA,wIACCK,CAAAA,CACDnR,QAAKgK,eAAgBtC,CAAAA,CAAAA,CAAAA,CAAAA,EAGzB,EAAA,CACFA,CAAOC,CAAAA,YAAAA,CAAAA,CAAAA,EAGd,CAAM,MAAI4J,CAAAA,CAAAA,GAAUvR,OAAK0B,CAAAA,iBAAAA,CACjBkP,CAAI,CAAAgB,gBAAA,GAAAA,gBAAA,CAAAd,sBAAA,mLAEH9Q,OAAAA,CAAKS,gBAAgBoE,MAAS0M,CAAAA,CAAAA,EAI/B,IACR,EAAA,CAAA,EAIP,EAAA,CAKUvR,IAAK2B,CAAAA,QAAAA,CACL3B,IAAKoC,CAAAA,QAAAA,CACRuG,KAAAA,CAAMC,QAAQ5I,IAAKY,CAAAA,KAAAA,CAAAA,CACxBZ,KAAKY,KAAMkK,CAAAA,IAAAA,CAAK,MAChB9K,IAAKY,CAAAA,KAAAA,CAGA,iBAAMZ,CAAAA,OAAK2F,CAAAA,KAAAA,CAAAA,CAAAA,GACT3F,IAAKoM,CAAAA,aAAAA,CAGhBmE,CAAAA,CACEK,CAAI,CAAAiB,gBAAA,GAAAA,gBAAA,CAAAf,sBAAA,sjBAMa9Q,IAAKuI,CAAAA,oBAAAA,CACTvI,IAAKsI,CAAAA,gBAAAA,EAQlB,EAAA,CAKMyI,CAAAA,CAAS,CACfe,cAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAgBJ9R,IAAAA,CAAK6B,KAAO,MAAS,CAAA,OAAA,CACd7B,IAAAA,CAAKoB,SAAW,MAAS,CAAA,OAAA,CAGvBpB,IAAAA,CAAKiB,cAC1B,yBACA,CAAA,EAAA,CAEOjB,IAAKwI,CAAAA,iBAAAA,CACFxI,IAAK0I,CAAAA,uBAAAA,CAEjB1I,IAAAA,CAAKmB,eACHyP,CAAI,CAAAmB,iBAAA,GAAAA,iBAAA,CAAAjB,sBAAA,oSAQJ,EAAA,CACF9Q,IAAAA,CAAKiB,cACH2P,CAAI,CAAAoB,iBAAA,GAAAA,iBAAA,CAAAlB,sBAAA,ggBAIS9P,CAAAA,CAEKhB,IAAK6L,CAAAA,kBAAAA,CACL7L,IAAK2L,CAAAA,iBAAAA,CACH3L,IAAKwP,CAAAA,aAAAA,EAKzB,EAAA,CAEuBxP,IAAAA,CAAKiB,cAC1B,iCACA,CAAA,EAAA,CAEFjB,IAAAA,CAAKuC,cACHqO,CAAI,CAAAqB,iBAAA,GAAAA,iBAAA,CAAAnB,sBAAA,mJAEE9Q,IAAKwC,CAAAA,gBAAAA,EAGX,EAAA,CAIJxC,IAAAA,CAAKoB,SACHwP,CAAI,CAAAsB,iBAAA,GAAAA,iBAAA,CAAApB,sBAAA,6lBAGQ9Q,IAAKwE,CAAAA,iBAAAA,CAGHxE,IAAK2E,CAAAA,kBAAAA,CAIgC,CAAA,GAAhC3E,KAAKS,eAAgBoE,CAAAA,MAAAA,CACtB7E,IAAKqC,CAAAA,YAAAA,CAKa,CAAhCrC,GAAAA,IAAAA,CAAKS,eAAgBoE,CAAAA,MAAAA,CACnB+L,CAAI,CAAAuB,iBAAA,GAAAA,iBAAA,CAAArB,sBAAA,kLAEQ9Q,IAAKoF,CAAAA,UAAAA,EAGjB,EAAA,EAEN,EAAA,CAKRqL,CACEG,CAAAA,CAAI,CAAAwB,iBAAA,GAAAA,iBAAA,CAAAtB,sBAAA,wDAAyB9Q,IAAAA,CAAKqB,QAClC,EAAA,EAAA,CACFqP,CAAAA,CACEE,CAAI,CAAAyB,iBAAA,GAAAA,iBAAA,CAAAvB,sBAAA,8HAEG9Q,IAAKsB,CAAAA,YAAAA,EAGZ,EAAA,EAGT,CAvrCM5B,WAAAA,CAAAA,GADuB4S,CAAzB,GACE5S,CAAAA,CAAM6S,MAAmBA,CAAAA,CAAAA,CAadC,CAAA,CAAA,CAAjBC,EAAM,SAA4B/S,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,OAAA,CAAA,IAAA,EACPF,CAAAA,CAAAA,CAAAA,CAAA,CAA3BC,CAAM,CAAA,mBAAA,CAAA,CAAA,CAA+C/S,CAAAgT,CAAAA,SAAAA,CAAA,UAAA,CAAA,IAAA,EAAA,CAAA,CACrBF,CAAA,CAAA,CAAhCC,CAAM,CAAA,wBAAA,CAAA,CAAA,CAAyD/S,CAAAgT,CAAAA,SAAAA,CAAA,cAAA,CAAA,IAAA,EAAA,CAAA,CACjCF,EAAA,CAA9BC,CAAAA,CAAM,sBAAqD/S,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,YAAA,CAAA,IAAA,IACjCF,CAAA,CAAA,CAA1BC,CAAM,CAAA,kBAAA,CAAA,CAAA,CAA6C/S,CAAAgT,CAAAA,SAAAA,CAAA,cAAA,EAE3CF,CAAAA,CAAAA,CAAAA,CAAA,CAARG,CAAAA,CAAAA,CAAAA,CAAAA,CAAiCjT,CAAAgT,CAAAA,SAAAA,CAAA,UAAA,CAAA,IAAA,EAAA,CAAA,CACzBF,CAAA,CAAA,CAARG,CAA0BjT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,cAAA,CAAA,IAAA,IAClBF,CAAA,CAAA,CAARG,CAAkCjT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,eAAA,CAAA,IAAA,IAC1BF,CAAA,CAAA,CAARG,CAA2CjT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,iBAAA,CAAA,IAAA,IACnCF,CAAA,CAAA,CAARG,CAAyCjT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,UAAA,CAAA,IAAA,EAG9BF,CAAAA,CAAAA,CAAAA,CAAA,CAAXI,CAAAA,CAAAA,CAAAA,CAAAA,CAAqBlT,CAAAgT,CAAAA,SAAAA,CAAA,MAAA,CAAA,IAAA,EAAA,CAAA,CAYtBF,EAAA,CANCI,CAAAA,CAAS,CACRC,SAAAA,CAAW,CACTC,aAAAA,CAAgBlS,SAAAA,cAAAA,CAAkBA,QAAAA,CAAAA,CAAAA,CAAMmS,KAAM,CAAA,GAAA,CAAA,GAC9CC,WAAcpS,CAAAA,SAAAA,YAAAA,CAAAA,QAAoBA,CAAAA,CAAMkK,CAAAA,IAAAA,CAAK,WAGnBpL,CAAAgT,CAAAA,SAAAA,CAAA,OAAA,CAAA,IAAA,EAAA,CAAA,CAGdF,CAAA,CAAA,CAAf3R,CAAoDnB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,cAAA,CAAA,IAAA,EAGzCF,CAAAA,CAAAA,CAAAA,CAAA,CAAXI,CAAAA,CAAAA,CAAAA,CAAAA,CAAyDlT,EAAAgT,SAAA,CAAA,MAAA,CAAA,IAAA,EAG9CF,CAAAA,CAAAA,CAAAA,CAAA,CAAXI,CAAAA,CAAAA,CAAAA,CAAAA,CAAqClT,EAAAgT,SAAA,CAAA,aAAA,CAAA,IAAA,EAG7BF,CAAAA,CAAAA,CAAAA,CAAA,CAARG,CAAAA,CAAAA,CAAAA,CAAAA,CAAyBjT,EAAAgT,SAAA,CAAA,aAAA,CAAA,IAAA,EAEkBF,CAAAA,CAAAA,CAAAA,CAAA,CAA3CI,CAAAA,CAAS,CAAEK,IAAAA,CAAMC,OAASC,CAAAA,OAAAA,CAAAA,CAAS,CAA8BzT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,eAAA,CAAA,IAAA,IAEtBF,CAAA,CAAA,CAA3CI,CAAS,CAAA,CAAEK,IAAMC,CAAAA,OAAAA,CAASC,OAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiCzT,CAAAgT,CAAAA,SAAAA,CAAA,kBAAA,CAAA,IAAA,EAAA,CAAA,CAEzBF,CAAA,CAAA,CAA3CI,EAAS,CAAEK,IAAAA,CAAMC,OAASC,CAAAA,OAAAA,CAAAA,CAAS,CAA+BzT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,gBAAA,CAAA,IAAA,EAGvBF,CAAAA,CAAAA,CAAAA,CAAA,CAA3CI,CAAAA,CAAS,CAAEK,IAAAA,CAAMC,QAASC,OAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAyBzT,CAAAgT,CAAAA,SAAAA,CAAA,UAAA,CAAA,IAAA,EAAA,CAAA,CAEvBF,EAAA,CAArCI,CAAAA,CAAS,CAAEQ,SAAAA,CAAW,WAA6B1T,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,UAAA,UAAA,CAAA,IAAA,EAAA,CAAA,CAEVF,CAAA,CAAA,CAAzCI,CAAS,CAAA,CAAEQ,SAAW,CAAA,eAAA,CAAA,CAAA,CAAA,CAAqC1T,CAAAgT,CAAAA,SAAAA,CAAA,cAAA,CAAA,IAAA,EAAA,CAAA,CAG/BF,CAAA,CAAA,CAA5BI,EAAS,CAAEK,IAAAA,CAAMC,OAA2BxT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,SAAA,CAAA,IAAA,EAGhBF,CAAAA,CAAAA,CAAAA,CAAA,CAA5BI,CAAAA,CAAS,CAAEK,IAAAA,CAAMC,OAAyBxT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,UAAA,OAAA,CAAA,IAAA,EAAA,CAAA,CAGdF,CAAA,CAAA,CAA5BI,CAAS,CAAA,CAAEK,IAAMC,CAAAA,OAAAA,CAAAA,CAAAA,CAAAA,CAA2BxT,CAAAgT,CAAAA,SAAAA,CAAA,SAAA,CAAA,IAAA,EAAA,CAAA,CAO7CF,CAAA,CAAA,CADCI,EAAS,CAAEQ,SAAAA,CAAW,qBAAuBH,CAAAA,IAAAA,CAAMI,MAC9B3T,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,UAAA,mBAAA,CAAA,IAAA,EAAA,CAAA,CAGsBF,CAAA,CAAA,CAA3CI,CAAS,CAAA,CAAEK,KAAMC,OAASC,CAAAA,OAAAA,CAAAA,CAAS,CAAyBzT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,UAAA,CAAA,IAAA,EAGhCF,CAAAA,CAAAA,CAAAA,CAAA,CAA5BI,CAAAA,CAAS,CAAEK,IAAAA,CAAMC,OAA6BxT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,UAAA,WAAA,CAAA,IAAA,EAAA,CAAA,CAMHF,CAAA,CAAA,CAA3CI,CAAS,CAAA,CAAEK,IAAMC,CAAAA,OAAAA,CAASC,OAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqBzT,CAAAgT,CAAAA,SAAAA,CAAA,MAAA,CAAA,IAAA,EAAA,CAAA,CAM5BF,EAAA,CAA5BI,CAAAA,CAAS,CAAEK,IAAAA,CAAMC,OAAyBxT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,OAAA,CAAA,IAAA,EAGCF,CAAAA,CAAAA,CAAAA,CAAA,CAA3CI,CAAAA,CAAS,CAAEK,IAAAA,CAAMC,QAASC,OAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAuBzT,CAAAgT,CAAAA,SAAAA,CAAA,QAAA,CAAA,IAAA,EAAA,CAAA,CAGfF,EAAA,CAA3CI,CAAAA,CAAS,CAAEK,IAAAA,CAAMC,OAASC,CAAAA,OAAAA,CAAAA,CAAS,KAAqBzT,CAAAgT,CAAAA,SAAAA,CAAA,MAAA,CAAA,IAAA,EAAA,CAAA,CAG7CF,CAAA,CAAA,CAAXI,CAAsBlT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,OAAA,CAAA,IAAA,EAMMF,CAAAA,CAAAA,CAAAA,CAAA,CAA5BI,CAAAA,CAAS,CAAEO,OAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA+CzT,CAAAgT,CAAAA,SAAAA,CAAA,WAAA,CAAA,IAAA,EAAA,CAAA,CAOvCF,CAAA,CAAA,CAA5BI,CAAS,CAAA,CAAEO,OAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkBzT,CAAAgT,CAAAA,SAAAA,CAAA,WAAA,EAGKF,CAAAA,CAAAA,CAAAA,CAAA,CAA3CI,CAAAA,CAAS,CAAEK,IAAAA,CAAMC,OAASC,CAAAA,OAAAA,CAAAA,CAAS,CAAyBzT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,UAAA,CAAA,IAAA,EAEhCF,CAAAA,CAAAA,CAAAA,CAAA,CAA5BI,CAAS,CAAA,CAAEK,IAAMC,CAAAA,OAAAA,CAAAA,CAAAA,CAAAA,CAAgCxT,CAAAgT,CAAAA,SAAAA,CAAA,mBAAA,EAEzCF,CAAAA,CAAAA,CAAAA,CAAA,CAARG,CAAAA,CAAAA,CAAAA,CAAAA,CAAyCjT,CAAAgT,CAAAA,SAAAA,CAAA,2BAAA,EAEbF,CAAAA,CAAAA,CAAAA,CAAA,CAA5BI,CAAAA,CAAS,CAAEK,IAAAA,CAAMC,OAA0CxT,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,eAAA,CAAA,IAAA,EAEhCF,CAAAA,CAAAA,CAAAA,CAAA,CAA3BI,CAAAA,CAAS,CAAEK,IAAM/J,CAAAA,MAAAA,CAAAA,CAAAA,CAAAA,CAAwDxJ,CAAAgT,CAAAA,SAAAA,CAAA,kBAAA,CAAA,IAAA,EAAA,CAAA,CA+kB1EF,CAAA,CAAA,CADCc,CAAM,CAAA,UAAA,CAAY,CAAEC,oBAAAA,CAAAA,CAAsB,CAO1C7T,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,UAAA,sBAAA,CAAA,IAAA,CAAA,CAGDF,CAAA,CAAA,CADCc,CAAM,CAAA,OAAA,CAAS,CAAEC,oBAAAA,CAAAA,CAAsB,CAOvC7T,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,SAAA,CAAA,mBAAA,CAAA,IAGKF,CAAAA,CAAAA,CAAAA,CAAA,CADLc,CAAM,CAAA,MAAA,CAAQ,CAAEC,oBAAAA,CAAAA,CAAsB,CA6CtC7T,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAgT,UAAA,kBAAA,CAAA,IAAA,CAAA,CAAAc,OAAA,KAhxBU9T,CAAU8S,CAAAA,CAAAA,CAAA,CADtBiB,CAAAA,CAAc,gBACF/T,CA2rCbgU,CAAAA,EAAAA,CAAAA,CAAoB,aAAe,CAAA,CACjCxF,SAAW,CAAA,CACT,CAAEyF,OAAAA,CAAS,CAAGC,CAAAA,KAAAA,CAAO,EACrB,CAAA,CAAA,CAAED,OAAS,CAAA,CAAA,CAAGC,MAAO,CAEvBrK,CAAAA,CAAAA,CAAAA,OAAAA,CAAS,CAAEsK,QAAAA,CAAU,GAAKC,CAAAA,MAAAA,CAAQ,MAGpCJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAoB,aAAe,CAAA,CACjCxF,SAAW,CAAA,CACT,CAAEyF,OAAAA,CAAS,EAAGC,KAAO,CAAA,CAAA,CAAA,CACrB,CAAED,OAAAA,CAAS,CAAGC,CAAAA,KAAAA,CAAO,EAEvBrK,CAAAA,CAAAA,CAAAA,OAAAA,CAAS,CAAEsK,QAAAA,CAAU,GAAKC,CAAAA,MAAAA,CAAQ"}
|
1
|
+
{"version":3,"file":"nile-select.cjs.js","sources":["../../../src/nile-select/nile-select.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n LitElement,\n html,\n property,\n CSSResultArray,\n TemplateResult,\n} from 'lit-element';\nimport { customElement } from 'lit/decorators.js';\nimport { styles } from './nile-select.css';\n\nimport '../nile-icon';\nimport '../nile-popup/nile-popup';\nimport '../nile-tag/nile-tag';\nimport { animateTo, stopAnimations } from '../internal/animate';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { query, state } from 'lit/decorators.js';\nimport { defaultValue } from '../internal/default-value';\nimport { FormControlController } from '../internal/form';\nimport {\n getAnimation,\n setDefaultAnimation,\n} from '../utilities/animation-registry';\nimport { HasSlotController } from '../internal/slot';\nimport { scrollIntoView } from '../internal/scroll';\nimport { waitForEvent } from '../internal/event';\nimport { watch } from '../internal/watch';\nimport NileElement from '../internal/nile-element';\nimport type { CSSResultGroup } from 'lit';\nimport type { NileFormControl } from '../internal/nile-element';\nimport type NileOption from '../nile-option/nile-option';\nimport type NilePopup from '../nile-popup/nile-popup';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\n\ntype NileRemoveEvent = CustomEvent<Record<PropertyKey, never>>;\n\n/**\n * Nile icon component.\n *\n * @tag nile-select\n *\n */\n\n/**\n * @summary Selects allow you to choose items from a menu of predefined options.\n * @status stable\n * @since 2.0\n *\n * @dependency nile-icon\n * @dependency nile-popup\n * @dependency nile-tag\n *\n * @slot - The listbox options. Must be `<nile-option>` elements. You can use `<nile-divider>` to group items visually.\n * @slot label - The input's label. Alternatively, you can use the `label` attribute.\n * @slot prefix - Used to prepend a presentational icon or similar element to the combobox.\n * @slot clear-icon - An icon to use in lieu of the default clear icon.\n * @slot expand-icon - The icon to show when the control is expanded and collapsed. Rotates on open and close.\n * @slot help-text - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.\n *\n * @event nile-change - Emitted when the control's value changes.\n * @event nile-clear - Emitted when the control's value is cleared.\n * @event nile-input - Emitted when the control receives input.\n * @event nile-focus - Emitted when the control gains focus.\n * @event nile-blur - Emitted when the control loses focus.\n * @event nile-show - Emitted when the select's menu opens.\n * @event nile-after-show - Emitted after the select's menu opens and all animations are complete.\n * @event nile-hide - Emitted when the select's menu closes.\n * @event nile-after-hide - Emitted after the select's menu closes and all animations are complete.\n * @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n *\n * @csspart form-control - The form control that wraps the label, input, and help text.\n * @csspart form-control-label - The label's wrapper.\n * @csspart form-control-input - The select's wrapper.\n * @csspart form-control-help-text - The help text's wrapper.\n * @csspart combobox - The container the wraps the prefix, combobox, clear icon, and expand button.\n * @csspart prefix - The container that wraps the prefix slot.\n * @csspart display-input - The element that displays the selected option's label, an `<input>` element.\n * @csspart listbox - The listbox container where options are slotted.\n * @csspart tags - The container that houses option tags when `multiselect` is used.\n * @csspart tag - The individual tags that represent each multiselect option.\n * @csspart tag__base - The tag's base part.\n * @csspart tag__content - The tag's content part.\n * @csspart tag__remove-button - The tag's remove button.\n * @csspart tag__remove-button__base - The tag's remove button base part.\n * @csspart clear-button - The clear button.\n * @csspart expand-icon - The container that wraps the expand icon.\n */\n\n@customElement('nile-select')\nexport class NileSelect extends NileElement implements NileFormControl {\n static styles: CSSResultGroup = styles;\n\n private readonly formControlController = new FormControlController(this, {\n assumeInteractionOn: ['nile-blur', 'nile-input'],\n });\n private readonly hasSlotController = new HasSlotController(\n this,\n 'help-text',\n 'label'\n );\n private typeToSelectString = '';\n private typeToSelectTimeout: number;\n\n @query('.select') popup: NilePopup;\n @query('.select__combobox') combobox: HTMLSlotElement;\n @query('.select__display-input') displayInput: HTMLInputElement;\n @query('.select__value-input') valueInput: HTMLInputElement;\n @query('.select__listbox') listbox: HTMLSlotElement;\n\n @state() private hasFocus = false;\n @state() displayLabel = '';\n @state() currentOption: NileOption;\n @state() selectedOptions: NileOption[] = [];\n @state() oldValue: string | string[] = '';\n\n /** The name of the select, submitted as a name/value pair with form data. */\n @property() name = '';\n\n /**\n * The current value of the select, submitted as a name/value pair with form data. When `multiple` is enabled, the\n * value will be a space-delimited list of values based on the options selected.\n */\n @property({\n converter: {\n fromAttribute: (value: string) => value.split(' '),\n toAttribute: (value: string[]) => value.join(' '),\n },\n })\n value: string | string[] = '';\n\n /** The default value of the form control. Primarily used for resetting the form control. */\n @defaultValue() defaultValue: string | string[] = '';\n\n /** The select's size. */\n @property() size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Placeholder text to show as a hint when the select is empty. */\n @property() placeholder = 'Select...';\n\n /** Placeholder text to show as a hint when the select is empty. */\n @state() searchValue = '';\n\n @property({ type: Boolean, reflect: true }) searchEnabled = false;\n\n @property({ type: Boolean, reflect: true }) blockValueChange = false;\n\n @property({ type: Boolean, reflect: true }) optionsLoading = false;\n\n @property({ type: Boolean, reflect: true }) noWidthSync = false;\n\n /** Allows more than one option to be selected. */\n @property({ type: Boolean, reflect: true }) multiple = false;\n\n @property({ attribute: 'help-text' }) helpText = '';\n\n @property({ attribute: 'error-message' }) errorMessage = '';\n\n /** Sets the input to a warning state, changing its visual appearance. */\n @property({ type: Boolean }) warning = false;\n\n /** Sets the input to an error state, changing its visual appearance. */\n @property({ type: Boolean }) error = false;\n\n /** Sets the input to a success state, changing its visual appearance. */\n @property({ type: Boolean }) success = false;\n\n /**\n * The maximum number of selected options to show when `multiple` is true. After the maximum, \"+n\" will be shown to\n * indicate the number of additional items that are selected. Set to 0 to remove the limit.\n */\n @property({ attribute: 'max-options-visible', type: Number })\n maxOptionsVisible = 3;\n\n /** Disables the select control. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** Adds a clear button when the select is not empty. */\n @property({ type: Boolean }) clearable = false;\n\n /**\n * Indicates whether or not the select is open. You can toggle this attribute to show and hide the menu, or you can\n * use the `show()` and `hide()` methods and this attribute will reflect the select's open state.\n */\n @property({ type: Boolean, reflect: true }) open = false;\n\n /**\n * Enable this option to prevent the listbox from being clipped when the component is placed inside a container with\n * `overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.\n */\n @property({ type: Boolean }) hoist = false;\n\n /** Draws a filled select. */\n @property({ type: Boolean, reflect: true }) filled = false;\n\n /** Draws a pill-style select with rounded edges. */\n @property({ type: Boolean, reflect: true }) pill = false;\n\n /** The select's label. If you need to display HTML, use the `label` slot instead. */\n @property() label = '';\n\n /**\n * The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox\n * inside of the viewport.\n */\n @property({ reflect: true }) placement: 'top' | 'bottom' = 'bottom';\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** The select's required attribute. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n @property({ type: Boolean }) showSelected = false;\n\n @state() oldMaxOptionsVisible: number = 1;\n\n @property({ type: Boolean }) showNoResults: boolean = false;\n\n @property({ type: String }) noResultsMessage: string = 'No results found';\n\n /** Gets the validity state object */\n get validity() {\n return this.valueInput?.validity;\n }\n\n /** Gets the validation message */\n get validationMessage() {\n return this.valueInput?.validationMessage;\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.handleDocumentFocusIn = this.handleDocumentFocusIn.bind(this);\n this.handleDocumentKeyDown = this.handleDocumentKeyDown.bind(this);\n this.handleDocumentMouseDown = this.handleDocumentMouseDown.bind(this);\n\n // Because this is a form control, it shouldn't be opened initially\n this.open = false;\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n private addOpenListeners() {\n document.addEventListener('focusin', this.handleDocumentFocusIn);\n document.addEventListener('keydown', this.handleDocumentKeyDown);\n document.addEventListener('mousedown', this.handleDocumentMouseDown);\n }\n\n private removeOpenListeners() {\n document.removeEventListener('focusin', this.handleDocumentFocusIn);\n document.removeEventListener('keydown', this.handleDocumentKeyDown);\n document.removeEventListener('mousedown', this.handleDocumentMouseDown);\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.displayInput.setSelectionRange(0, 0);\n this.emit('nile-focus', { value: this.value, name: this.name });\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('nile-blur', { value: this.value, name: this.name });\n }\n\n private handleDocumentFocusIn(event: FocusEvent) {\n // Close when focusing out of the select\n const path = event.composedPath();\n if (this && !path.includes(this)) {\n this.hide();\n }\n }\n\n /**\n * Handles the click event on the footer.\n * @param event - The click event.\n */\n private handleFooterClick(event: MouseEvent): void {\n event.stopPropagation();\n event.preventDefault();\n }\n\n /**\n * Toggles the display of selected options in the dropdown\n * @param event - the event object\n */\n private toggleShowSelected(event: Event): void {\n event.stopPropagation();\n event.preventDefault();\n // Only toggle if there are selected options\n if (this.selectedOptions?.length === 0) {\n return;\n }\n // Toggle the showSelected property\n this.showSelected = !this.showSelected;\n\n // Hide unselected options if showSelected is true\n const allOptions = this.getAllOptions();\n allOptions.forEach(el => {\n if (!el.selected) {\n el.hidden = this.showSelected;\n }\n });\n\n this.requestUpdate();\n }\n\n /**\n * Deselects all options and updates the value, selectedOptions, and displayLabel properties accordingly\n */\n private unSlectAll(): void {\n this.showSelected = false;\n const allOptions = this.getAllOptions();\n allOptions.forEach(el => {\n el.selected = false;\n el.hidden = false;\n });\n this.value = '';\n this.selectionChanged();\n this.emit('nile-change', { value: this.value, name: this.name });\n }\n\n private handleDocumentKeyDown(event: KeyboardEvent) {\n const target = event.target as HTMLElement;\n const isClearButton = target.closest('.select__clear') !== null;\n const isIconButton = target.closest('nile-icon-button') !== null;\n\n // Ignore presses when the target is an icon button (e.g. the remove button in <nile-tag>)\n if (isClearButton || isIconButton) {\n return;\n }\n\n // Close when pressing escape\n if (event.key === 'Escape' && this.open) {\n event.preventDefault();\n event.stopPropagation();\n this.hide();\n this.displayInput.focus({ preventScroll: true });\n }\n\n // Handle enter and space. When pressing space, we allow for type to select behaviors so if there's anything in the\n // buffer we _don't_ close it.\n if (\n event.key === 'Enter' ||\n (event.key === ' ' && this.typeToSelectString === '')\n ) {\n event.preventDefault();\n event.stopImmediatePropagation();\n\n // If it's not open, open it\n if (!this.open) {\n this.show();\n return;\n }\n\n // If it is open, update the value based on the current selection and close it\n if (this.currentOption && !this.currentOption.disabled) {\n if (this.multiple) {\n this.toggleOptionSelection(this.currentOption);\n } else {\n this.setSelectedOptions(this.currentOption);\n }\n\n // Emit after updating\n this.updateComplete.then(() => {\n this.emit('nile-input', { value: this.value, name: this.name });\n this.emit('nile-change', { value: this.value, name: this.name });\n });\n\n if (!this.multiple) {\n this.hide();\n this.displayInput.focus({ preventScroll: true });\n }\n }\n\n return;\n }\n\n // Navigate options\n if (['ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {\n const allOptions = this.getAllOptions();\n const currentIndex = allOptions.indexOf(this.currentOption);\n let newIndex = Math.max(0, currentIndex);\n\n // Prevent scrolling\n event.preventDefault();\n\n // Open it\n if (!this.open) {\n this.show();\n\n // If an option is already selected, stop here because we want that one to remain highlighted when the listbox\n // opens for the first time\n if (this.currentOption) {\n return;\n }\n }\n\n if (event.key === 'ArrowDown') {\n newIndex = currentIndex + 1;\n if (newIndex > allOptions.length - 1) newIndex = 0;\n } else if (event.key === 'ArrowUp') {\n newIndex = currentIndex - 1;\n if (newIndex < 0) newIndex = allOptions.length - 1;\n } else if (event.key === 'Home') {\n newIndex = 0;\n } else if (event.key === 'End') {\n newIndex = allOptions.length - 1;\n }\n\n this.setCurrentOption(allOptions[newIndex]);\n }\n\n // All other \"printable\" keys trigger type to select\n if (event.key.length === 1 || event.key === 'Backspace') {\n const allOptions = this.getAllOptions();\n\n // Don't block important key combos like CMD+R\n if (event.metaKey || event.ctrlKey || event.altKey) {\n return;\n }\n\n // Open, unless the key that triggered is backspace\n if (!this.open) {\n if (event.key === 'Backspace') {\n return;\n }\n\n this.show();\n }\n\n event.stopPropagation();\n event.preventDefault();\n\n clearTimeout(this.typeToSelectTimeout);\n this.typeToSelectTimeout = window.setTimeout(\n () => (this.typeToSelectString = ''),\n 1000\n );\n\n if (event.key === 'Backspace') {\n this.typeToSelectString = this.typeToSelectString.slice(0, -1);\n } else {\n this.typeToSelectString += event.key.toLowerCase();\n }\n\n for (const option of allOptions) {\n const label = option.getTextLabel().toLowerCase();\n\n if (label.startsWith(this.typeToSelectString)) {\n this.setCurrentOption(option);\n break;\n }\n }\n }\n }\n\n private handleDocumentMouseDown(event: MouseEvent) {\n // Close when clicking outside of the select\n const path = event.composedPath();\n if (this && !path.includes(this)) {\n this.hide();\n }\n }\n\n private handleLabelClick() {\n this.displayInput.focus();\n this.hide();\n }\n\n private handleComboboxMouseDown(event: MouseEvent) {\n const path = event.composedPath();\n const isIconButton = path.some(\n el =>\n el instanceof Element && el.tagName.toLowerCase() === 'nile-icon-button'\n );\n\n // Ignore disabled controls and clicks on tags (remove buttons)\n if (this.disabled || isIconButton) {\n return;\n }\n\n event.preventDefault();\n this.displayInput.focus({ preventScroll: true });\n this.open = !this.open;\n }\n\n private handleComboboxKeyDown(event: KeyboardEvent) {\n event.stopPropagation();\n this.handleDocumentKeyDown(event);\n }\n\n private handleClearClick(event: MouseEvent) {\n event.stopPropagation();\n\n if (this.value !== '') {\n this.setSelectedOptions([]);\n this.displayInput.focus({ preventScroll: true });\n\n // Emit after update\n this.updateComplete.then(() => {\n this.emit('nile-clear', { value: this.value, name: this.name });\n this.emit('nile-input', { value: this.value, name: this.name });\n this.emit('nile-change', { value: this.value, name: this.name });\n });\n }\n }\n\n private handleClearMouseDown(event: MouseEvent) {\n // Don't lose focus or propagate events when clicking the clear button\n event.stopPropagation();\n event.preventDefault();\n }\n\n private handleOptionClick(event: MouseEvent) {\n const target = event.target as HTMLElement;\n const option = target.closest('nile-option');\n\n if(this.blockValueChange){\n this.emit('nile-block-change', { value: option?.value, name: this.name });\n this.hide();\n return;\n }\n\n const oldValue = this.value;\n this.oldValue = oldValue;\n\n if (option && !option.disabled) {\n if (this.multiple) {\n this.toggleOptionSelection(option);\n } else {\n this.setSelectedOptions(option);\n }\n\n // Set focus after updating so the value is announced by screen readers\n this.updateComplete.then(() =>\n this.displayInput.focus({ preventScroll: true })\n );\n\n if (this.value !== oldValue) {\n // Emit after updating\n this.updateComplete.then(() => {\n this.emit('nile-input', { value: this.value, name: this.name });\n this.emit('nile-change', { value: this.value, name: this.name });\n });\n }\n\n if (!this.multiple) {\n this.hide();\n this.displayInput.focus({ preventScroll: true });\n }\n }\n\n if (this.showSelected) {\n const allOptions = this.getAllOptions();\n allOptions.forEach(el => {\n if (!el.selected) {\n el.hidden = this.showSelected;\n }\n });\n\n this.requestUpdate();\n }\n }\n\n private handleDefaultSlotChange() {\n const allOptions = this.getAllOptions();\n const value = Array.isArray(this.value) ? this.value : [this.value];\n const values: string[] = [];\n\n // Check for duplicate values in menu items\n if (customElements.get('nile-option')) {\n allOptions.forEach(option => values.push(option.value));\n\n // Select only the options that match the new value\n this.setSelectedOptions(\n allOptions.filter(el => value.map(String).includes(el.value))\n );\n } else {\n // Rerun this handler when <nile-option> is registered\n customElements\n .whenDefined('nile-option')\n .then(() => this.handleDefaultSlotChange());\n }\n }\n\n private handleTagRemove(event: NileRemoveEvent, option: NileOption) {\n event.stopPropagation();\n\n if (!this.disabled) {\n this.toggleOptionSelection(option, false);\n\n const allOptions = this.getAllOptions();\n allOptions.forEach(el => {\n if (!el.selected) {\n el.hidden = this.showSelected;\n }\n });\n\n // Emit after updating\n this.updateComplete.then(() => {\n this.emit('nile-input', { value: this.value, name: this.name });\n this.emit('nile-change', { value: this.value, name: this.name });\n });\n }\n }\n\n // Gets an array of all <nile-option> elements\n private getAllOptions() {\n // Get all options as an array\n const options = [...this.querySelectorAll<NileOption>('nile-option')];\n\n // Sort the options based on the order of values selected\n if (this.multiple && this.oldValue?.length > 0) {\n options.sort((a, b) => {\n let indexA = this.oldValue.indexOf(a.value);\n let indexB = this.oldValue.indexOf(b.value);\n\n // Handle cases where a __value is not found\n if (indexA === -1) {\n indexA = Infinity; // Place at the end if not found\n }\n if (indexB === -1) {\n indexB = Infinity; // Place at the end if not found\n }\n\n if (indexA < indexB) {\n return -1;\n }\n if (indexA > indexB) {\n return 1;\n }\n return 0;\n });\n }\n\n return options;\n }\n\n private getOptionPrefix(option: NileOption): string {\n const prefixSlot = option.shadowRoot?.querySelector(\n 'slot[name=\"prefix\"]'\n ) as HTMLSlotElement;\n if (!prefixSlot) return '';\n\n const assignedNodes = prefixSlot.assignedNodes();\n const htmlStrings: string[] = [];\n\n assignedNodes.forEach(node => {\n if (node instanceof HTMLElement) {\n htmlStrings.push(node.outerHTML);\n } else if (node.nodeType === Node.TEXT_NODE) {\n // Text node\n htmlStrings.push(node.textContent || '');\n }\n });\n\n return htmlStrings.join('');\n }\n\n // Gets the first <nile-option> element\n private getFirstOption() {\n return this.querySelector<NileOption>('nile-option');\n }\n\n // Sets the current option, which is the option the user is currently interacting with (e.g. via keyboard). Only one\n // option may be \"current\" at a time.\n private setCurrentOption(option: NileOption | null) {\n const allOptions = this.getAllOptions();\n\n // Clear selection\n allOptions.forEach(el => {\n el.current = false;\n el.tabIndex = -1;\n });\n\n // Select the target option\n if (option) {\n this.currentOption = option;\n option.current = true;\n option.tabIndex = 0;\n option.focus();\n }\n }\n\n // Sets the selected option(s)\n private setSelectedOptions(option: NileOption | NileOption[]) {\n const allOptions = this.getAllOptions();\n const newSelectedOptions = Array.isArray(option) ? option : [option];\n\n // Clear existing selection\n allOptions.forEach(el => (el.selected = false));\n\n // Set the new selection\n if (newSelectedOptions.length) {\n newSelectedOptions.forEach(el => (el.selected = true));\n }\n\n // Update selection, value, and display label\n this.selectionChanged();\n }\n\n // Toggles an option's selected state\n private toggleOptionSelection(option: NileOption, force?: boolean) {\n if (force === true || force === false) {\n option.selected = force;\n } else {\n option.selected = !option.selected;\n }\n\n this.selectionChanged();\n }\n\n // This method must be called whenever the selection changes. It will update the selected options cache, the current\n // value, and the display value\n private selectionChanged() {\n // Update selected options cache\n this.selectedOptions = this.getAllOptions().filter(el => el.selected);\n\n // Update the value and display label\n if (this.multiple) {\n this.value = this.selectedOptions.map(el => el.value);\n\n if (this.placeholder && this.value.length === 0) {\n // When no items are selected, keep the value empty so the placeholder shows\n this.displayLabel = '';\n } else {\n this.displayLabel = this.selectedOptions.length + ' selected';\n }\n\n if (this.selectedOptions.length === 0) {\n this.showSelected = false;\n const allOptions = this.getAllOptions();\n allOptions.forEach(el => {\n if (!el.selected) {\n el.hidden = this.showSelected;\n }\n });\n\n this.requestUpdate();\n }\n } else {\n this.value = this.selectedOptions[0]?.value ?? this.value;\n this.displayLabel = this.selectedOptions[0]?.getTextLabel()\n ? this.selectedOptions[0].getTextLabel()\n : this.value ?? '';\n }\n\n // Update validity\n this.updateComplete.then(() => {\n this.formControlController.updateValidity();\n });\n\n this.calculateTotalWidthOfTags();\n }\n\n handleSearchFocus() {\n document.removeEventListener('keydown', this.handleDocumentKeyDown);\n }\n\n handleSearchBlur() {\n document.addEventListener('keydown', this.handleDocumentKeyDown);\n }\n\n handleSearchChange(e: any) {\n this.searchValue = e.detail.value;\n let filteredOptions = this.filterOptions(this.searchValue);\n\n if (filteredOptions.length === 0) {\n // Display 'No results found' message.\n this.showNoResults = true;\n } else {\n this.showNoResults = false;\n }\n }\n\n filterOptions(searchValue: string) {\n const allOptions = this.getAllOptions();\n const lowerCaseSearchValue = searchValue.toLowerCase();\n\n let filteredOptions: NileOption[] = [];\n\n allOptions.forEach(el => {\n const lowerCaseLabel = el.getTextLabel().toLowerCase();\n const lowerCaseValue = (el.value || '').toLowerCase();\n if (\n lowerCaseLabel.includes(lowerCaseSearchValue) ||\n lowerCaseValue.includes(lowerCaseSearchValue)\n ) {\n el.hidden = false;\n filteredOptions.push(el);\n } else {\n el.hidden = true;\n }\n });\n\n return filteredOptions;\n }\n\n private handleInvalid(event: Event) {\n this.formControlController.setValidity(false);\n this.formControlController.emitInvalidEvent(event);\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n // Close the listbox when the control is disabled\n if (this.disabled) {\n this.open = false;\n this.handleOpenChange();\n }\n }\n\n @watch('value', { waitUntilFirstUpdate: true })\n handleValueChange() {\n const allOptions = this.getAllOptions();\n const value = Array.isArray(this.value) ? this.value : [this.value];\n\n // Select only the options that match the new value\n this.setSelectedOptions(allOptions.filter(el => value.includes(el.value)));\n }\n\n @watch('open', { waitUntilFirstUpdate: true })\n async handleOpenChange() {\n if (this.open && !this.disabled) {\n // Reset the current option\n this.setCurrentOption(this.selectedOptions[0] || this.getFirstOption());\n\n // Show\n this.emit('nile-show', { value: this.value, name: this.name });\n this.addOpenListeners();\n\n await stopAnimations(this);\n this.listbox.hidden = false;\n this.popup.active = true;\n\n // Select the appropriate option based on value after the listbox opens\n requestAnimationFrame(() => {\n this.setCurrentOption(this.currentOption);\n });\n\n const { keyframes, options } = getAnimation(this, 'select.show', {\n dir: 'ltr',\n });\n await animateTo(this.popup.popup, keyframes, options);\n\n // Make sure the current option is scrolled into view (required for Safari)\n if (this.currentOption) {\n scrollIntoView(this.currentOption, this.listbox, 'vertical', 'auto');\n }\n\n this.emit('nile-after-show', { value: this.value, name: this.name });\n } else {\n // Hide\n this.emit('nile-hide', { value: this.value, name: this.name });\n this.removeOpenListeners();\n\n await stopAnimations(this);\n const { keyframes, options } = getAnimation(this, 'select.hide', {\n dir: 'ltr',\n });\n await animateTo(this.popup.popup, keyframes, options);\n this.listbox.hidden = true;\n this.popup.active = false;\n\n this.emit('nile-after-hide', { value: this.value, name: this.name });\n }\n }\n\n /** Shows the listbox. */\n async show() {\n if (this.open || this.disabled) {\n this.open = false;\n return undefined;\n }\n\n this.open = true;\n return waitForEvent(this, 'nile-after-show');\n }\n\n /** Hides the listbox. */\n async hide() {\n if (!this.open || this.disabled) {\n this.open = false;\n return undefined;\n }\n\n this.open = false;\n return waitForEvent(this, 'nile-after-hide');\n }\n\n /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */\n checkValidity() {\n return this.valueInput.checkValidity();\n }\n\n /** Gets the associated form, if one exists. */\n getForm(): HTMLFormElement | null {\n return this.formControlController.getForm();\n }\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n reportValidity() {\n return this.valueInput.reportValidity();\n }\n\n /** Sets a custom validation message. Pass an empty string to restore validity. */\n setCustomValidity(message: string) {\n this.valueInput.setCustomValidity(message);\n this.formControlController.updateValidity();\n }\n\n /** Sets focus on the control. */\n focus(options?: FocusOptions) {\n this.displayInput.focus(options);\n }\n\n /** Removes focus from the control. */\n blur() {\n this.displayInput.blur();\n }\n\n onInputChange(event: Event) {\n // This will stop the event from bubbling up to the parent `nile-select` component\n event.stopPropagation();\n }\n\n calculateWidthOfSelectTagsDiv() {\n if (this.shadowRoot) {\n const selectTagsDiv = this.shadowRoot.querySelector('div.select__tags');\n if (selectTagsDiv instanceof HTMLElement) {\n const width = selectTagsDiv.offsetWidth;\n return width - 70;\n }\n }\n }\n\n calculateTotalWidthOfTags() {\n\n if(this.maxOptionsVisible !== Infinity){\n this.oldMaxOptionsVisible = this.maxOptionsVisible;\n }\n\n this.maxOptionsVisible = Infinity;\n setTimeout(() => {\n let widths: number[] = [];\n if (this.shadowRoot) {\n const tags = this.shadowRoot.querySelectorAll('nile-tag');\n tags.forEach(tag => {\n if (tag instanceof HTMLElement) {\n widths.push(tag.offsetWidth);\n }\n });\n }\n if (this.value.length !== widths.length) {\n return;\n }\n\n let sum = widths.reduce(\n (accumulator, currentValue) => accumulator + currentValue,\n 0\n );\n const widthOfSelectTagsDiv = this.calculateWidthOfSelectTagsDiv();\n if (!widthOfSelectTagsDiv) {\n return;\n }\n\n let summ = 0;\n let lastindex = 0;\n\n for (let i = 0; i < widths.length; i++) {\n summ += widths[i];\n\n if (summ > widthOfSelectTagsDiv) {\n lastindex = i;\n break;\n }\n }\n this.maxOptionsVisible = lastindex;\n }, 1);\n }\n\n render() {\n const hasLabelSlot = this.hasSlotController.test('label');\n const hasHelpTextSlot = this.hasSlotController.test('help-text');\n const hasLabelSuffixSlot = this.hasSlotController.test('label-suffix');\n const hasLabel = this.label ? true : !!hasLabelSlot;\n const hasClearIcon =\n this.clearable && !this.disabled && this.value.length > 0;\n const isPlaceholderVisible = this.placeholder && this.value.length === 0;\n const searchValue = this.searchValue || '';\n const hasHelpText = this.helpText ? true : false;\n const hasErrorMessage = this.errorMessage ? true : false;\n const prefixContent = this.selectedOptions[0] ? this.getOptionPrefix(this.selectedOptions[0]) : '';\n\n return html`\n <div\n part=\"form-control\"\n class=${classMap({\n 'form-control': true,\n 'form-control--small': this.size === 'small',\n 'form-control--medium': this.size === 'medium',\n 'form-control--large': this.size === 'large',\n 'form-control--has-label': hasLabel,\n 'form-control--has-help-text': hasHelpText,\n })}\n >\n <label\n id=\"label\"\n part=\"form-control-label\"\n class=\"form-control__label\"\n aria-hidden=${hasLabel ? 'false' : 'true'}\n @click=${this.handleLabelClick}\n >\n <slot name=\"label\">${this.label}</slot>\n </label>\n\n ${hasLabelSuffixSlot ? html` <slot name=\"label-suffix\"></slot> ` : ``}\n\n <div part=\"form-control-input\" class=\"form-control-input\">\n <nile-popup\n class=${classMap({\n select: true,\n 'select--warning': this.warning,\n 'select--error': this.error,\n 'select--success': this.success,\n 'select--standard': true,\n 'select--filled': this.filled,\n 'select--pill': this.pill,\n 'select--open': this.open,\n 'select--disabled': this.disabled,\n 'select--multiple': this.multiple,\n 'select--focused': this.hasFocus,\n 'select--placeholder-visible': isPlaceholderVisible,\n 'select--top': this.placement === 'top',\n 'select--bottom': this.placement === 'bottom',\n 'select--small': this.size === 'small',\n 'select--medium': this.size === 'medium',\n 'select--large': this.size === 'large',\n })}\n placement=${this.placement}\n strategy=${this.hoist ? 'fixed' : 'absolute'}\n distance=\"6\"\n flip\n shift\n sync=${ifDefined(!this.noWidthSync ? 'width' : undefined)}\n auto-size=\"vertical\"\n auto-size-padding=\"10\"\n >\n <div\n part=\"combobox\"\n class=\"select__combobox\"\n slot=\"anchor\"\n @keydown=${this.handleComboboxKeyDown}\n @mousedown=${this.handleComboboxMouseDown}\n >\n\n ${prefixContent && !this.multiple\n ? html`<div class=\"select__prefix--from-options\">\n ${unsafeHTML(prefixContent)}\n </div>`\n : html`<slot\n part=\"prefix\"\n name=\"prefix\"\n class=${classMap({\n select__prefix: true,\n multiple: this.multiple,\n })}\n ></slot>`}\n\n <input\n part=\"display-input\"\n class=\"select__display-input\"\n type=\"text\"\n placeholder=${this.placeholder}\n .disabled=${this.disabled}\n .value=${this.displayLabel}\n autocomplete=\"off\"\n spellcheck=\"false\"\n autocapitalize=\"off\"\n readonly\n aria-controls=\"listbox\"\n aria-expanded=${this.open ? 'true' : 'false'}\n aria-haspopup=\"listbox\"\n aria-labelledby=\"label\"\n aria-disabled=${this.disabled ? 'true' : 'false'}\n aria-describedby=\"help-text\"\n role=\"combobox\"\n tabindex=\"0\"\n @focus=${this.handleFocus}\n @blur=${this.handleBlur}\n />\n\n ${this.multiple\n ? html`\n <div part=\"tags\" class=\"select__tags\">\n ${this.selectedOptions.map((option, index) => {\n if (\n index < this.maxOptionsVisible ||\n this.maxOptionsVisible <= 0\n ) {\n const classes = {\n select__invisible:\n index + 1 > this.oldMaxOptionsVisible &&\n this.maxOptionsVisible === Infinity,\n };\n return html`\n <nile-tag\n class=${classMap(classes)}\n part=\"tag\"\n exportparts=\"\n base:tag__base,\n content:tag__content,\n remove-button:tag__remove-button,\n remove-button__base:tag__remove-button__base\n \"\n ?pill=${this.pill}\n size=${this.size}\n removable\n @nile-remove=${(event: NileRemoveEvent) =>\n this.handleTagRemove(event, option)}\n >\n ${this.getOptionPrefix(option)\n ? html`<span class=\"tag__prefix\" slot=\"prefix\"\n >${unsafeHTML(\n this.getOptionPrefix(option)\n )}</span\n >`\n : ''}\n ${option.getTextLabel()}\n </nile-tag>\n `;\n } else if (index === this.maxOptionsVisible) {\n return html`\n <span class=\"select__tags-count\"\n >+${this.selectedOptions.length - index} More\n </span>\n `;\n } else {\n return null;\n }\n })}\n </div>\n `\n : ''}\n\n <input\n class=\"select__value-input\"\n type=\"text\"\n ?disabled=${this.disabled}\n ?required=${this.required}\n .value=${Array.isArray(this.value)\n ? this.value.join(', ')\n : this.value}\n tabindex=\"-1\"\n aria-hidden=\"true\"\n @focus=${() => this.focus()}\n @invalid=${this.handleInvalid}\n />\n\n ${hasClearIcon\n ? html`\n <button\n part=\"clear-button\"\n class=\"select__clear\"\n type=\"button\"\n aria-label=\"clearEntry\"\n @mousedown=${this.handleClearMouseDown}\n @click=${this.handleClearClick}\n tabindex=\"-1\"\n >\n <slot name=\"clear-icon\">\n <nile-icon name=\"close\" library=\"system\"></nile-icon>\n </slot>\n </button>\n `\n : ''}\n\n <slot\n part=\"suffix\"\n name=\"suffix\"\n class=${classMap({\n select__suffix: true,\n })}\n ></slot>\n\n <slot\n name=\"expand-icon\"\n part=\"expand-icon\"\n class=\"select__expand-icon\"\n >\n <nile-icon library=\"system\" name=\"arrowdown\"></nile-icon>\n </slot>\n </div>\n\n <div\n id=\"listbox\"\n role=\"listbox\"\n aria-expanded=${this.open ? 'true' : 'false'}\n aria-multiselectable=${this.multiple ? 'true' : 'false'}\n aria-labelledby=\"label\"\n part=\"listbox\"\n class=\"select__listbox ${this.searchEnabled\n ? 'select__search-enabled '\n : ''}\"\n tabindex=\"-1\"\n @mouseup=${this.handleOptionClick}\n @slotchange=${this.handleDefaultSlotChange}\n >\n ${this.optionsLoading\n ? html`\n <span class=\"select__loader\">\n <nile-icon\n class=\"select__loader--icon\"\n name=\"button-loading-blue\"\n ></nile-icon>\n </span>\n `\n : ''}\n ${this.searchEnabled\n ? html` <div class=\"select__search\">\n <nile-input\n size=\"small\"\n clearable\n .value=${searchValue}\n placeholder=\"Search...\"\n @nile-input=${this.handleSearchChange}\n @nile-focus=${this.handleSearchFocus}\n @nile-change=\"${this.onInputChange}\"\n >\n <nile-icon name=\"search\" slot=\"suffix\"> </nile-icon>\n </nile-input>\n </div>`\n : ``}\n <div\n class=\"select__options ${this.searchEnabled\n ? 'select__options__search-enabled'\n : ``}\"\n >\n ${this.showNoResults\n ? html`\n <div class=\"select__no-results\">\n ${this.noResultsMessage}\n </div>\n `\n : ''}\n <slot></slot>\n </div>\n\n ${this.multiple\n ? html` <div\n part=\"footer\"\n class=\"select__footer\"\n @click=\"${this.handleFooterClick}\"\n >\n <span\n @click=\"${this.toggleShowSelected}\"\n style=\"cursor: pointer;\"\n >\n <nile-checkbox\n ?disabled=\"${this.selectedOptions.length === 0}\"\n ?checked=\"${this.showSelected}\"\n >\n Show Selected</nile-checkbox\n >\n </span>\n ${this.selectedOptions.length !== 0\n ? html` <span\n class=\"select__clear\"\n @click=\"${this.unSlectAll}\"\n >Clear All</span\n >`\n : ``}\n </div>`\n : ``}\n </div>\n </nile-popup>\n </div>\n\n ${hasHelpText\n ? html` <nile-form-help-text>${this.helpText}</nile-form-help-text> `\n : ``}\n ${hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``}\n </div>\n `;\n }\n}\n\nsetDefaultAnimation('select.show', {\n keyframes: [\n { opacity: 0, scale: 0.9 },\n { opacity: 1, scale: 1 },\n ],\n options: { duration: 100, easing: 'ease' },\n});\n\nsetDefaultAnimation('select.hide', {\n keyframes: [\n { opacity: 1, scale: 1 },\n { opacity: 0, scale: 0.9 },\n ],\n options: { duration: 100, easing: 'ease' },\n});\n\nexport default NileSelect;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-select': NileSelect;\n }\n}\n"],"names":["NileSelect","_u","_inherits","y","_super","_createSuper","this","formControlController","FormControlController","assumeInteractionOn","hasSlotController","HasSlotController","typeToSelectString","hasFocus","displayLabel","selectedOptions","oldValue","name","value","defaultValue","size","placeholder","searchValue","searchEnabled","blockValueChange","optionsLoading","noWidthSync","multiple","helpText","errorMessage","warning","error","success","maxOptionsVisible","disabled","clearable","open","hoist","filled","pill","label","placement","form","required","showSelected","oldMaxOptionsVisible","showNoResults","noResultsMessage","_this","_createClass","key","get","_this$valueInput","valueInput","validity","validationMessage","_this$valueInput2","connectedCallback","super","handleDocumentFocusIn","bind","handleDocumentKeyDown","handleDocumentMouseDown","emit","disconnectedCallback","addOpenListeners","document","addEventListener","removeOpenListeners","removeEventListener","handleFocus","displayInput","setSelectionRange","handleBlur","event","path","composedPath","includes","hide","handleFooterClick","stopPropagation","preventDefault","toggleShowSelected","length","getAllOptions","forEach","el","selected","hidden","requestUpdate","unSlectAll","selectionChanged","target","isClearButton","closest","isIconButton","focus","preventScroll","stopImmediatePropagation","currentOption","toggleOptionSelection","setSelectedOptions","updateComplete","then","show","allOptions","currentIndex","indexOf","newIndex","Math","max","setCurrentOption","metaKey","ctrlKey","altKey","clearTimeout","typeToSelectTimeout","window","setTimeout","slice","toLowerCase","_iterator","_createForOfIteratorHelper","s","_step","n","done","option","getTextLabel","startsWith","err","e","f","handleLabelClick","handleComboboxMouseDown","some","Element","tagName","handleComboboxKeyDown","handleClearClick","handleClearMouseDown","handleOptionClick","_this5","handleDefaultSlotChange","Array","isArray","values","customElements","push","filter","map","String","whenDefined","handleTagRemove","_this7","options","querySelectorAll","sort","a","b","indexA","indexB","Infinity","getOptionPrefix","_i$shadowRoot","prefixSlot","shadowRoot","querySelector","assignedNodes","htmlStrings","node","HTMLElement","outerHTML","nodeType","Node","TEXT_NODE","textContent","join","getFirstOption","current","tabIndex","newSelectedOptions","force","_this9","_this$selectedOptions2","_this$selectedOptions3","_this$selectedOptions4","_this$value","updateValidity","calculateTotalWidthOfTags","handleSearchFocus","handleSearchBlur","handleSearchChange","detail","filterOptions","lowerCaseSearchValue","filteredOptions","lowerCaseLabel","lowerCaseValue","handleInvalid","setValidity","emitInvalidEvent","handleDisabledChange","handleOpenChange","handleValueChange","_handleOpenChange","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_this10","_m","_i2","_s3","_m2","_i3","_s4","wrap","_callee$","_context2","prev","next","stopAnimations","listbox","popup","active","requestAnimationFrame","getAnimation","dir","keyframes","animateTo","scrollIntoView","stop","apply","arguments","_show","_callee2","_callee2$","_context3","abrupt","waitForEvent","_hide","_callee3","_callee3$","_context4","checkValidity","getForm","reportValidity","setCustomValidity","message","blur","onInputChange","calculateWidthOfSelectTagsDiv","selectTagsDiv","offsetWidth","widths","tag","widthOfSelectTagsDiv","summ","lastindex","i","render","_this12","hasLabelSlot","test","hasLabelSuffixSlot","hasLabel","hasClearIcon","isPlaceholderVisible","hasHelpText","hasErrorMessage","prefixContent","html","_templateObject","_taggedTemplateLiteral","classMap","_templateObject2","select","ifDefined","undefined","_templateObject3","unsafeHTML","_templateObject4","select__prefix","_templateObject5","index","classes","select__invisible","_templateObject6","_templateObject7","_templateObject8","_templateObject9","select__suffix","_templateObject10","_templateObject11","_templateObject12","_templateObject13","_templateObject14","_templateObject15","_templateObject16","NileElement","styles","__decorate","query","prototype","state","property","converter","fromAttribute","split","toAttribute","type","Boolean","reflect","attribute","Number","watch","waitUntilFirstUpdate","customElement","setDefaultAnimation","opacity","scale","duration","easing"],"mappings":"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"}
|