@aquera/nile-elements 0.1.75-beta-1.4 → 0.1.75-beta-1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/demo/index.html +0 -25
  2. package/dist/index.js +357 -331
  3. package/dist/nile-button/nile-button.cjs.js +1 -1
  4. package/dist/nile-button/nile-button.cjs.js.map +1 -1
  5. package/dist/nile-button/nile-button.esm.js +1 -1
  6. package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
  7. package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
  8. package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
  9. package/dist/nile-select/index.cjs.js +1 -1
  10. package/dist/nile-select/index.esm.js +1 -1
  11. package/dist/nile-select/nile-select.cjs.js +1 -5
  12. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  13. package/dist/nile-select/nile-select.css.cjs.js +1 -1
  14. package/dist/nile-select/nile-select.css.cjs.js.map +1 -1
  15. package/dist/nile-select/nile-select.css.esm.js +1 -1
  16. package/dist/nile-select/nile-select.esm.js +2 -7
  17. package/dist/nile-select/nile-select.test.cjs.js +1 -1
  18. package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
  19. package/dist/nile-select/nile-select.test.esm.js +1 -1
  20. package/dist/nile-select/virtual-scroll-helper.cjs.js +1 -1
  21. package/dist/nile-select/virtual-scroll-helper.cjs.js.map +1 -1
  22. package/dist/nile-select/virtual-scroll-helper.esm.js +2 -0
  23. package/dist/nile-virtual-select/index.cjs.js +1 -1
  24. package/dist/nile-virtual-select/index.esm.js +1 -1
  25. package/dist/nile-virtual-select/nile-virtual-select.cjs.js +5 -1
  26. package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -1
  27. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js +1 -1
  28. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js.map +1 -1
  29. package/dist/nile-virtual-select/nile-virtual-select.css.esm.js +20 -1
  30. package/dist/nile-virtual-select/nile-virtual-select.esm.js +21 -12
  31. package/dist/nile-virtual-select/renderer.cjs.js +1 -1
  32. package/dist/nile-virtual-select/renderer.cjs.js.map +1 -1
  33. package/dist/nile-virtual-select/renderer.esm.js +11 -10
  34. package/dist/nile-virtual-select/selection-manager.cjs.js +1 -1
  35. package/dist/nile-virtual-select/selection-manager.cjs.js.map +1 -1
  36. package/dist/nile-virtual-select/selection-manager.esm.js +1 -1
  37. package/dist/src/nile-button/nile-button.d.ts +1 -1
  38. package/dist/src/nile-button/nile-button.js +1 -1
  39. package/dist/src/nile-button/nile-button.js.map +1 -1
  40. package/dist/src/nile-select/nile-select.css.js +1 -1
  41. package/dist/src/nile-select/nile-select.css.js.map +1 -1
  42. package/dist/src/nile-select/nile-select.d.ts +5 -1
  43. package/dist/src/nile-select/nile-select.js +31 -15
  44. package/dist/src/nile-select/nile-select.js.map +1 -1
  45. package/dist/src/nile-select/virtual-scroll-helper.js +2 -0
  46. package/dist/src/nile-select/virtual-scroll-helper.js.map +1 -1
  47. package/dist/src/nile-virtual-select/nile-virtual-select.css.js +20 -1
  48. package/dist/src/nile-virtual-select/nile-virtual-select.css.js.map +1 -1
  49. package/dist/src/nile-virtual-select/nile-virtual-select.d.ts +22 -1
  50. package/dist/src/nile-virtual-select/nile-virtual-select.js +148 -22
  51. package/dist/src/nile-virtual-select/nile-virtual-select.js.map +1 -1
  52. package/dist/src/nile-virtual-select/renderer.d.ts +2 -2
  53. package/dist/src/nile-virtual-select/renderer.js +9 -8
  54. package/dist/src/nile-virtual-select/renderer.js.map +1 -1
  55. package/dist/src/nile-virtual-select/selection-manager.js +1 -1
  56. package/dist/src/nile-virtual-select/selection-manager.js.map +1 -1
  57. package/dist/tsconfig.tsbuildinfo +1 -1
  58. package/package.json +15 -15
  59. package/src/nile-button/nile-button.ts +1 -1
  60. package/src/nile-select/nile-select.css.ts +1 -1
  61. package/src/nile-select/nile-select.ts +31 -17
  62. package/src/nile-select/virtual-scroll-helper.ts +2 -0
  63. package/src/nile-virtual-select/nile-virtual-select.css.ts +20 -1
  64. package/src/nile-virtual-select/nile-virtual-select.ts +158 -26
  65. package/src/nile-virtual-select/renderer.ts +10 -8
  66. package/src/nile-virtual-select/selection-manager.ts +1 -1
  67. package/vscode-html-custom-data.json +61 -34
@@ -20,6 +20,11 @@ import{css as e}from"lit";const o=e`
20
20
  flex-direction: column;
21
21
  }
22
22
 
23
+ .virtualized.no-scroll {
24
+ overflow-y: hidden !important;
25
+ max-height: none !important;
26
+ }
27
+
23
28
  .virtualized:not(:has(lit-virtualizer)) nile-option {
24
29
  flex-shrink: 0;
25
30
  }
@@ -409,7 +414,7 @@ import{css as e}from"lit";const o=e`
409
414
  position: sticky;
410
415
  bottom: 0px;
411
416
  background: var(--nile-colors-neutral-100);
412
- border: 1px solid var(--nile-colors-neutral-400);
417
+ border-top: 1px solid var(--nile-colors-neutral-400);
413
418
  display: flex;
414
419
  height: 15px;
415
420
  /* Auto layout */
@@ -474,4 +479,18 @@ import{css as e}from"lit";const o=e`
474
479
  .virtualized nile-option[selected]::part(base) {
475
480
  color: var(--nile-colors-primary-600);
476
481
  }
482
+
483
+ .virtual-select-loader {
484
+ position: absolute;
485
+ display: flex;
486
+ justify-content: center;
487
+ align-items: center;
488
+ width: 100%;
489
+ height: 75%;
490
+ }
491
+
492
+ .select__footer.loading, .select__options.loading {
493
+ opacity: 0.5;
494
+ pointer-events: none;
495
+ }
477
496
  `;export{o as s};
@@ -1,4 +1,9 @@
1
- import{__decorate as i}from"tslib";import{html as s}from"lit";import{query as e,state as o,property as n,customElement as t}from"lit/decorators.js";import{s as c}from"./nile-virtual-select.css.esm.js";import"../nile-icon/index.esm.js";import"../nile-popup/nile-popup.esm.js";import"../nile-tag/nile-tag.esm.js";import"../nile-checkbox/nile-checkbox.esm.js";import{s as l,a as r}from"../internal/animate.esm.js";import{classMap as m}from"lit/directives/class-map.js";import{d as a}from"../internal/default-value.esm.js";import{F as p}from"../internal/form.esm.js";import{s as h,g}from"../utilities/animation-registry.esm.js";import{H as v}from"../internal/slot.esm.js";import{w as j}from"../internal/event.esm.js";import{w as d}from"../internal/watch.esm.js";import{N as u}from"../internal/nile-element.esm.js";import{ifDefined as f}from"lit/directives/if-defined.js";import{V as b}from"./selection-manager.esm.js";import{V as y}from"./search-manager.esm.js";import{V as w}from"./renderer.esm.js";import"lit/directives/unsafe-svg.js";import"../nile-icon/icons/svg/index.esm.js";import"../nile-icon/icons/svg/access-request.esm.js";import"../nile-icon/icons/svg/accessreview.esm.js";import"../nile-icon/icons/svg/action.esm.js";import"../nile-icon/icons/svg/activity-logs.esm.js";import"../nile-icon/icons/svg/address.esm.js";import"../nile-icon/icons/svg/admin-users.esm.js";import"../nile-icon/icons/svg/agent.esm.js";import"../nile-icon/icons/svg/aggregation.esm.js";import"../nile-icon/icons/svg/alert-circle.esm.js";import"../nile-icon/icons/svg/alert.esm.js";import"../nile-icon/icons/svg/allapplication.esm.js";import"../nile-icon/icons/svg/allsearch.esm.js";import"../nile-icon/icons/svg/analytics.esm.js";import"../nile-icon/icons/svg/api.esm.js";import"../nile-icon/icons/svg/applications-2.esm.js";import"../nile-icon/icons/svg/apply-filter.esm.js";import"../nile-icon/icons/svg/apps.esm.js";import"../nile-icon/icons/svg/aquera.esm.js";import"../nile-icon/icons/svg/aquerasupport.esm.js";import"../nile-icon/icons/svg/array-loop.esm.js";import"../nile-icon/icons/svg/array-of-boolean.esm.js";import"../nile-icon/icons/svg/array-of-integer.esm.js";import"../nile-icon/icons/svg/array-of-string.esm.js";import"../nile-icon/icons/svg/array.esm.js";import"../nile-icon/icons/svg/arrayofobject.esm.js";import"../nile-icon/icons/svg/arrow-narrow-left.esm.js";import"../nile-icon/icons/svg/arrow.esm.js";import"../nile-icon/icons/svg/arrowdown.esm.js";import"../nile-icon/icons/svg/arrowdropdown.esm.js";import"../nile-icon/icons/svg/arrowdropup.esm.js";import"../nile-icon/icons/svg/arrowleft.esm.js";import"../nile-icon/icons/svg/arrowright.esm.js";import"../nile-icon/icons/svg/arrowup.esm.js";import"../nile-icon/icons/svg/attribute-map-analysis-icon.esm.js";import"../nile-icon/icons/svg/attribute.esm.js";import"../nile-icon/icons/svg/attributemap.esm.js";import"../nile-icon/icons/svg/automation-details.esm.js";import"../nile-icon/icons/svg/back.esm.js";import"../nile-icon/icons/svg/bar-and-line-chart.esm.js";import"../nile-icon/icons/svg/bar-chart-square-02.esm.js";import"../nile-icon/icons/svg/bar-chart.esm.js";import"../nile-icon/icons/svg/bargraph.esm.js";import"../nile-icon/icons/svg/block.esm.js";import"../nile-icon/icons/svg/bluedot.esm.js";import"../nile-icon/icons/svg/book-closed.esm.js";import"../nile-icon/icons/svg/boolean.esm.js";import"../nile-icon/icons/svg/border_all.esm.js";import"../nile-icon/icons/svg/box.esm.js";import"../nile-icon/icons/svg/bubble-chart.esm.js";import"../nile-icon/icons/svg/bulk-sync.esm.js";import"../nile-icon/icons/svg/button-loading-black.esm.js";import"../nile-icon/icons/svg/button-loading-blue-animated.esm.js";import"../nile-icon/icons/svg/button-loading-blue.esm.js";import"../nile-icon/icons/svg/button-loading-white.esm.js";import"../nile-icon/icons/svg/calendar.esm.js";import"../nile-icon/icons/svg/cases.esm.js";import"../nile-icon/icons/svg/cell-loader.esm.js";import"../nile-icon/icons/svg/certification.esm.js";import"../nile-icon/icons/svg/check-circle.esm.js";import"../nile-icon/icons/svg/check-done-01.esm.js";import"../nile-icon/icons/svg/check-done-02.esm.js";import"../nile-icon/icons/svg/chevron-left-double.esm.js";import"../nile-icon/icons/svg/chevron-up.esm.js";import"../nile-icon/icons/svg/class.esm.js";import"../nile-icon/icons/svg/clock-check.esm.js";import"../nile-icon/icons/svg/clock-rewind.esm.js";import"../nile-icon/icons/svg/clock.esm.js";import"../nile-icon/icons/svg/close.esm.js";import"../nile-icon/icons/svg/cloud-01.esm.js";import"../nile-icon/icons/svg/code-generator.esm.js";import"../nile-icon/icons/svg/collapse-1.esm.js";import"../nile-icon/icons/svg/collapse.esm.js";import"../nile-icon/icons/svg/color.esm.js";import"../nile-icon/icons/svg/column-02.esm.js";import"../nile-icon/icons/svg/column-add.esm.js";import"../nile-icon/icons/svg/columns-03.esm.js";import"../nile-icon/icons/svg/combo1.esm.js";import"../nile-icon/icons/svg/comment.esm.js";import"../nile-icon/icons/svg/compact.esm.js";import"../nile-icon/icons/svg/compare-tiles.esm.js";import"../nile-icon/icons/svg/compare.esm.js";import"../nile-icon/icons/svg/component-menu.esm.js";import"../nile-icon/icons/svg/component.esm.js";import"../nile-icon/icons/svg/components-icon.esm.js";import"../nile-icon/icons/svg/componenttext.esm.js";import"../nile-icon/icons/svg/condition.esm.js";import"../nile-icon/icons/svg/conditions.esm.js";import"../nile-icon/icons/svg/connect.esm.js";import"../nile-icon/icons/svg/connectivitymap.esm.js";import"../nile-icon/icons/svg/connectorrightarrow.esm.js";import"../nile-icon/icons/svg/copy-06.esm.js";import"../nile-icon/icons/svg/copy.esm.js";import"../nile-icon/icons/svg/cor-analysis.esm.js";import"../nile-icon/icons/svg/correlation.esm.js";import"../nile-icon/icons/svg/cost-analytics.esm.js";import"../nile-icon/icons/svg/create.esm.js";import"../nile-icon/icons/svg/createuser.esm.js";import"../nile-icon/icons/svg/dashboard.esm.js";import"../nile-icon/icons/svg/data-insight.esm.js";import"../nile-icon/icons/svg/data-type-array.esm.js";import"../nile-icon/icons/svg/data-type-boolean.esm.js";import"../nile-icon/icons/svg/data-type-json.esm.js";import"../nile-icon/icons/svg/data-type-null.esm.js";import"../nile-icon/icons/svg/data-type-number.esm.js";import"../nile-icon/icons/svg/data-type-string.esm.js";import"../nile-icon/icons/svg/data-type-unknown.esm.js";import"../nile-icon/icons/svg/database.esm.js";import"../nile-icon/icons/svg/databaseview.esm.js";import"../nile-icon/icons/svg/dataflow-03.esm.js";import"../nile-icon/icons/svg/dataflow-04.esm.js";import"../nile-icon/icons/svg/default-cursor.esm.js";import"../nile-icon/icons/svg/default.esm.js";import"../nile-icon/icons/svg/delegate.esm.js";import"../nile-icon/icons/svg/delete.esm.js";import"../nile-icon/icons/svg/deligateduser.esm.js";import"../nile-icon/icons/svg/directory.esm.js";import"../nile-icon/icons/svg/disabled.esm.js";import"../nile-icon/icons/svg/dock-to-right.esm.js";import"../nile-icon/icons/svg/document-new.esm.js";import"../nile-icon/icons/svg/done-02.esm.js";import"../nile-icon/icons/svg/done.esm.js";import"../nile-icon/icons/svg/dontmap.esm.js";import"../nile-icon/icons/svg/donut.esm.js";import"../nile-icon/icons/svg/dotpoints-02.esm.js";import"../nile-icon/icons/svg/dots-grid.esm.js";import"../nile-icon/icons/svg/doublearrowleft.esm.js";import"../nile-icon/icons/svg/doublearrowright.esm.js";import"../nile-icon/icons/svg/dowhileloop.esm.js";import"../nile-icon/icons/svg/downgrade.esm.js";import"../nile-icon/icons/svg/download.esm.js";import"../nile-icon/icons/svg/drag.esm.js";import"../nile-icon/icons/svg/edit-write.esm.js";import"../nile-icon/icons/svg/else.esm.js";import"../nile-icon/icons/svg/email.esm.js";import"../nile-icon/icons/svg/enable.esm.js";import"../nile-icon/icons/svg/entities.esm.js";import"../nile-icon/icons/svg/entitlement.esm.js";import"../nile-icon/icons/svg/error.esm.js";import"../nile-icon/icons/svg/escalate.esm.js";import"../nile-icon/icons/svg/exactmatch.esm.js";import"../nile-icon/icons/svg/execute.esm.js";import"../nile-icon/icons/svg/expand-03.esm.js";import"../nile-icon/icons/svg/expand-06.esm.js";import"../nile-icon/icons/svg/expand-2.esm.js";import"../nile-icon/icons/svg/expand.esm.js";import"../nile-icon/icons/svg/eye-off.esm.js";import"../nile-icon/icons/svg/eye.esm.js";import"../nile-icon/icons/svg/eyeclosed.esm.js";import"../nile-icon/icons/svg/featured-icon.esm.js";import"../nile-icon/icons/svg/file-06.esm.js";import"../nile-icon/icons/svg/file-check-02.esm.js";import"../nile-icon/icons/svg/file-shield-01.esm.js";import"../nile-icon/icons/svg/file-shield-02.esm.js";import"../nile-icon/icons/svg/file-type-icon.esm.js";import"../nile-icon/icons/svg/file.esm.js";import"../nile-icon/icons/svg/filter-1.esm.js";import"../nile-icon/icons/svg/filter.esm.js";import"../nile-icon/icons/svg/fingerprint-03.esm.js";import"../nile-icon/icons/svg/firewall.esm.js";import"../nile-icon/icons/svg/firewallagent.esm.js";import"../nile-icon/icons/svg/flow.esm.js";import"../nile-icon/icons/svg/flowmap-agent.esm.js";import"../nile-icon/icons/svg/flowmap-application.esm.js";import"../nile-icon/icons/svg/flowmap-colorpalatte.esm.js";import"../nile-icon/icons/svg/flowmap-firewall-agent.esm.js";import"../nile-icon/icons/svg/flowmap-firewall.esm.js";import"../nile-icon/icons/svg/flowmap-gateway.esm.js";import"../nile-icon/icons/svg/flowmap-orchestration.esm.js";import"../nile-icon/icons/svg/flowmap-undo.esm.js";import"../nile-icon/icons/svg/flowmap-workflow.esm.js";import"../nile-icon/icons/svg/flowmap.esm.js";import"../nile-icon/icons/svg/folder.esm.js";import"../nile-icon/icons/svg/foreach.esm.js";import"../nile-icon/icons/svg/frequency.esm.js";import"../nile-icon/icons/svg/full-union.esm.js";import"../nile-icon/icons/svg/fullscreen.esm.js";import"../nile-icon/icons/svg/fullscreenexit.esm.js";import"../nile-icon/icons/svg/fullscreenshrink.esm.js";import"../nile-icon/icons/svg/function.esm.js";import"../nile-icon/icons/svg/funnel-02.esm.js";import"../nile-icon/icons/svg/funnel.esm.js";import"../nile-icon/icons/svg/gateway.esm.js";import"../nile-icon/icons/svg/gauge.esm.js";import"../nile-icon/icons/svg/general.esm.js";import"../nile-icon/icons/svg/generationphase.esm.js";import"../nile-icon/icons/svg/global-search.esm.js";import"../nile-icon/icons/svg/globe-03.esm.js";import"../nile-icon/icons/svg/globe.esm.js";import"../nile-icon/icons/svg/goto.esm.js";import"../nile-icon/icons/svg/graph.esm.js";import"../nile-icon/icons/svg/graphedit.esm.js";import"../nile-icon/icons/svg/greendot.esm.js";import"../nile-icon/icons/svg/greydot.esm.js";import"../nile-icon/icons/svg/greylightdot.esm.js";import"../nile-icon/icons/svg/grid-01.esm.js";import"../nile-icon/icons/svg/group-analysis-icon.esm.js";import"../nile-icon/icons/svg/group.esm.js";import"../nile-icon/icons/svg/groupby.esm.js";import"../nile-icon/icons/svg/groups.esm.js";import"../nile-icon/icons/svg/guide-01.esm.js";import"../nile-icon/icons/svg/guide.esm.js";import"../nile-icon/icons/svg/handtool.esm.js";import"../nile-icon/icons/svg/header-child-workflow.esm.js";import"../nile-icon/icons/svg/header-flows.esm.js";import"../nile-icon/icons/svg/header-tasks.esm.js";import"../nile-icon/icons/svg/headphones-01.esm.js";import"../nile-icon/icons/svg/help.esm.js";import"../nile-icon/icons/svg/helpandsupport.esm.js";import"../nile-icon/icons/svg/helpers.esm.js";import"../nile-icon/icons/svg/helpsupport.esm.js";import"../nile-icon/icons/svg/history.esm.js";import"../nile-icon/icons/svg/identitygraph.esm.js";import"../nile-icon/icons/svg/identityledger.esm.js";import"../nile-icon/icons/svg/ifelse.esm.js";import"../nile-icon/icons/svg/ifelsenew.esm.js";import"../nile-icon/icons/svg/image.esm.js";import"../nile-icon/icons/svg/immutable.esm.js";import"../nile-icon/icons/svg/info-icon.esm.js";import"../nile-icon/icons/svg/info.esm.js";import"../nile-icon/icons/svg/inner-union.esm.js";import"../nile-icon/icons/svg/inprogress.esm.js";import"../nile-icon/icons/svg/insert-at-cursor.esm.js";import"../nile-icon/icons/svg/integer.esm.js";import"../nile-icon/icons/svg/intersection.esm.js";import"../nile-icon/icons/svg/js.esm.js";import"../nile-icon/icons/svg/key-performance-indicator.esm.js";import"../nile-icon/icons/svg/keyboard-01.esm.js";import"../nile-icon/icons/svg/keyword.esm.js";import"../nile-icon/icons/svg/kill.esm.js";import"../nile-icon/icons/svg/laptop-01.esm.js";import"../nile-icon/icons/svg/layers-three-02.esm.js";import"../nile-icon/icons/svg/layout-alt-02.esm.js";import"../nile-icon/icons/svg/layout-alt-03.esm.js";import"../nile-icon/icons/svg/left-join.esm.js";import"../nile-icon/icons/svg/left-union.esm.js";import"../nile-icon/icons/svg/leftpointarrow.esm.js";import"../nile-icon/icons/svg/life-buoy-01.esm.js";import"../nile-icon/icons/svg/line.esm.js";import"../nile-icon/icons/svg/link.esm.js";import"../nile-icon/icons/svg/list-attribute.esm.js";import"../nile-icon/icons/svg/list.esm.js";import"../nile-icon/icons/svg/loader.esm.js";import"../nile-icon/icons/svg/loading.esm.js";import"../nile-icon/icons/svg/loading2.esm.js";import"../nile-icon/icons/svg/lock.esm.js";import"../nile-icon/icons/svg/log-info.esm.js";import"../nile-icon/icons/svg/log.esm.js";import"../nile-icon/icons/svg/logo-white.esm.js";import"../nile-icon/icons/svg/logout.esm.js";import"../nile-icon/icons/svg/logs.esm.js";import"../nile-icon/icons/svg/loop.esm.js";import"../nile-icon/icons/svg/manage.esm.js";import"../nile-icon/icons/svg/map.esm.js";import"../nile-icon/icons/svg/mapcreate.esm.js";import"../nile-icon/icons/svg/mapdont.esm.js";import"../nile-icon/icons/svg/maponcreate.esm.js";import"../nile-icon/icons/svg/maponupdate.esm.js";import"../nile-icon/icons/svg/mapper.esm.js";import"../nile-icon/icons/svg/mapupdate.esm.js";import"../nile-icon/icons/svg/marker-pin-01.esm.js";import"../nile-icon/icons/svg/maximize.esm.js";import"../nile-icon/icons/svg/menu.esm.js";import"../nile-icon/icons/svg/message-notification-square.esm.js";import"../nile-icon/icons/svg/minus.esm.js";import"../nile-icon/icons/svg/monitor-01.esm.js";import"../nile-icon/icons/svg/mouse.esm.js";import"../nile-icon/icons/svg/move-application.esm.js";import"../nile-icon/icons/svg/moveleft.esm.js";import"../nile-icon/icons/svg/moveright.esm.js";import"../nile-icon/icons/svg/mute.esm.js";import"../nile-icon/icons/svg/my-integration.esm.js";import"../nile-icon/icons/svg/new-calendar.esm.js";import"../nile-icon/icons/svg/nightingale-chart.esm.js";import"../nile-icon/icons/svg/nlp.esm.js";import"../nile-icon/icons/svg/nomatch.esm.js";import"../nile-icon/icons/svg/note.esm.js";import"../nile-icon/icons/svg/notification.esm.js";import"../nile-icon/icons/svg/notificationadd.esm.js";import"../nile-icon/icons/svg/notificationadded.esm.js";import"../nile-icon/icons/svg/null.esm.js";import"../nile-icon/icons/svg/number.esm.js";import"../nile-icon/icons/svg/numberinput.esm.js";import"../nile-icon/icons/svg/numbers.esm.js";import"../nile-icon/icons/svg/object.esm.js";import"../nile-icon/icons/svg/operators.esm.js";import"../nile-icon/icons/svg/options.esm.js";import"../nile-icon/icons/svg/orchestration-solid.esm.js";import"../nile-icon/icons/svg/orchestration.esm.js";import"../nile-icon/icons/svg/organization.esm.js";import"../nile-icon/icons/svg/other.esm.js";import"../nile-icon/icons/svg/otherdetails.esm.js";import"../nile-icon/icons/svg/override.esm.js";import"../nile-icon/icons/svg/palletemenu.esm.js";import"../nile-icon/icons/svg/paperclip.esm.js";import"../nile-icon/icons/svg/partner.esm.js";import"../nile-icon/icons/svg/partners.esm.js";import"../nile-icon/icons/svg/pause.esm.js";import"../nile-icon/icons/svg/pencil.esm.js";import"../nile-icon/icons/svg/peopletask.esm.js";import"../nile-icon/icons/svg/persistent-variable.esm.js";import"../nile-icon/icons/svg/persistentdata.esm.js";import"../nile-icon/icons/svg/phone.esm.js";import"../nile-icon/icons/svg/pie.esm.js";import"../nile-icon/icons/svg/pin.esm.js";import"../nile-icon/icons/svg/play.esm.js";import"../nile-icon/icons/svg/play_pause.esm.js";import"../nile-icon/icons/svg/plus.esm.js";import"../nile-icon/icons/svg/pluscircle.esm.js";import"../nile-icon/icons/svg/plussquare.esm.js";import"../nile-icon/icons/svg/policy.esm.js";import"../nile-icon/icons/svg/potentialmatch.esm.js";import"../nile-icon/icons/svg/poweron.esm.js";import"../nile-icon/icons/svg/predefined.esm.js";import"../nile-icon/icons/svg/preview.esm.js";import"../nile-icon/icons/svg/printer.esm.js";import"../nile-icon/icons/svg/priority-high.esm.js";import"../nile-icon/icons/svg/priority-highest.esm.js";import"../nile-icon/icons/svg/priority-low.esm.js";import"../nile-icon/icons/svg/priority-medium.esm.js";import"../nile-icon/icons/svg/privilage.esm.js";import"../nile-icon/icons/svg/privilege.esm.js";import"../nile-icon/icons/svg/privilegeobject.esm.js";import"../nile-icon/icons/svg/process.esm.js";import"../nile-icon/icons/svg/professionaldetails.esm.js";import"../nile-icon/icons/svg/question.esm.js";import"../nile-icon/icons/svg/radar.esm.js";import"../nile-icon/icons/svg/radio.esm.js";import"../nile-icon/icons/svg/radioactive.esm.js";import"../nile-icon/icons/svg/radiodone.esm.js";import"../nile-icon/icons/svg/read.esm.js";import"../nile-icon/icons/svg/readexpression.esm.js";import"../nile-icon/icons/svg/readonly.esm.js";import"../nile-icon/icons/svg/readonlyuser.esm.js";import"../nile-icon/icons/svg/readuser.esm.js";import"../nile-icon/icons/svg/reddot.esm.js";import"../nile-icon/icons/svg/redo-02.esm.js";import"../nile-icon/icons/svg/redo.esm.js";import"../nile-icon/icons/svg/refresh.esm.js";import"../nile-icon/icons/svg/reminder.esm.js";import"../nile-icon/icons/svg/resize.esm.js";import"../nile-icon/icons/svg/resource.esm.js";import"../nile-icon/icons/svg/resource_analysis.esm.js";import"../nile-icon/icons/svg/resource_graph.esm.js";import"../nile-icon/icons/svg/restart_alt.esm.js";import"../nile-icon/icons/svg/revocation-cycle.esm.js";import"../nile-icon/icons/svg/right-join.esm.js";import"../nile-icon/icons/svg/right-union.esm.js";import"../nile-icon/icons/svg/rocket-02.esm.js";import"../nile-icon/icons/svg/role.esm.js";import"../nile-icon/icons/svg/run.esm.js";import"../nile-icon/icons/svg/sankey.esm.js";import"../nile-icon/icons/svg/save.esm.js";import"../nile-icon/icons/svg/savings.esm.js";import"../nile-icon/icons/svg/scatter-plot.esm.js";import"../nile-icon/icons/svg/schedule.esm.js";import"../nile-icon/icons/svg/schema.esm.js";import"../nile-icon/icons/svg/script.esm.js";import"../nile-icon/icons/svg/search-steps-icon.esm.js";import"../nile-icon/icons/svg/search.esm.js";import"../nile-icon/icons/svg/section.esm.js";import"../nile-icon/icons/svg/select-02.esm.js";import"../nile-icon/icons/svg/select.esm.js";import"../nile-icon/icons/svg/selectapplication.esm.js";import"../nile-icon/icons/svg/selectattributes.esm.js";import"../nile-icon/icons/svg/semi-circle-donut-chart.esm.js";import"../nile-icon/icons/svg/send.esm.js";import"../nile-icon/icons/svg/sendemail.esm.js";import"../nile-icon/icons/svg/sendescalation.esm.js";import"../nile-icon/icons/svg/sendreminder.esm.js";import"../nile-icon/icons/svg/server-03.esm.js";import"../nile-icon/icons/svg/settings-02.esm.js";import"../nile-icon/icons/svg/settings.esm.js";import"../nile-icon/icons/svg/share.esm.js";import"../nile-icon/icons/svg/shield-01.esm.js";import"../nile-icon/icons/svg/smartcode.esm.js";import"../nile-icon/icons/svg/sort.esm.js";import"../nile-icon/icons/svg/sort_ascending.esm.js";import"../nile-icon/icons/svg/sort_descending.esm.js";import"../nile-icon/icons/svg/sortascending.esm.js";import"../nile-icon/icons/svg/sortdescending.esm.js";import"../nile-icon/icons/svg/sortdown.esm.js";import"../nile-icon/icons/svg/sortup.esm.js";import"../nile-icon/icons/svg/stacked-bar-chart.esm.js";import"../nile-icon/icons/svg/step_into.esm.js";import"../nile-icon/icons/svg/step_out.esm.js";import"../nile-icon/icons/svg/step_over.esm.js";import"../nile-icon/icons/svg/stop.esm.js";import"../nile-icon/icons/svg/storybook.esm.js";import"../nile-icon/icons/svg/string.esm.js";import"../nile-icon/icons/svg/stringinput.esm.js";import"../nile-icon/icons/svg/stringletters.esm.js";import"../nile-icon/icons/svg/support.esm.js";import"../nile-icon/icons/svg/swap.esm.js";import"../nile-icon/icons/svg/switch.esm.js";import"../nile-icon/icons/svg/sync.esm.js";import"../nile-icon/icons/svg/table.esm.js";import"../nile-icon/icons/svg/tag.esm.js";import"../nile-icon/icons/svg/test.esm.js";import"../nile-icon/icons/svg/text-02.esm.js";import"../nile-icon/icons/svg/text.esm.js";import"../nile-icon/icons/svg/textarea-expander.esm.js";import"../nile-icon/icons/svg/thumbsdown.esm.js";import"../nile-icon/icons/svg/thumbsup.esm.js";import"../nile-icon/icons/svg/thumsup.esm.js";import"../nile-icon/icons/svg/tick.esm.js";import"../nile-icon/icons/svg/timeupdate.esm.js";import"../nile-icon/icons/svg/timezone.esm.js";import"../nile-icon/icons/svg/transaction_monitor.esm.js";import"../nile-icon/icons/svg/trend-up-02.esm.js";import"../nile-icon/icons/svg/trigger.esm.js";import"../nile-icon/icons/svg/undo-02.esm.js";import"../nile-icon/icons/svg/undo.esm.js";import"../nile-icon/icons/svg/union.esm.js";import"../nile-icon/icons/svg/unmute.esm.js";import"../nile-icon/icons/svg/update.esm.js";import"../nile-icon/icons/svg/updown.esm.js";import"../nile-icon/icons/svg/upgrade.esm.js";import"../nile-icon/icons/svg/upload.esm.js";import"../nile-icon/icons/svg/user-group.esm.js";import"../nile-icon/icons/svg/user.esm.js";import"../nile-icon/icons/svg/useractive.esm.js";import"../nile-icon/icons/svg/useradd.esm.js";import"../nile-icon/icons/svg/useraddgroup.esm.js";import"../nile-icon/icons/svg/userfind.esm.js";import"../nile-icon/icons/svg/userimport.esm.js";import"../nile-icon/icons/svg/userimportgroup.esm.js";import"../nile-icon/icons/svg/usermixed.esm.js";import"../nile-icon/icons/svg/userremove.esm.js";import"../nile-icon/icons/svg/userremovegroup.esm.js";import"../nile-icon/icons/svg/users-plus.esm.js";import"../nile-icon/icons/svg/users-up.esm.js";import"../nile-icon/icons/svg/users.esm.js";import"../nile-icon/icons/svg/userupdate.esm.js";import"../nile-icon/icons/svg/validationexpression.esm.js";import"../nile-icon/icons/svg/variable-global.esm.js";import"../nile-icon/icons/svg/variable-local.esm.js";import"../nile-icon/icons/svg/variable-new.esm.js";import"../nile-icon/icons/svg/variable.esm.js";import"../nile-icon/icons/svg/video.esm.js";import"../nile-icon/icons/svg/view.esm.js";import"../nile-icon/icons/svg/virtualserver.esm.js";import"../nile-icon/icons/svg/virtualservergroup.esm.js";import"../nile-icon/icons/svg/visibility.esm.js";import"../nile-icon/icons/svg/visibilityoff.esm.js";import"../nile-icon/icons/svg/wait.esm.js";import"../nile-icon/icons/svg/warning-01.esm.js";import"../nile-icon/icons/svg/warning.esm.js";import"../nile-icon/icons/svg/whileloop.esm.js";import"../nile-icon/icons/svg/workflow-application.esm.js";import"../nile-icon/icons/svg/workflow-text.esm.js";import"../nile-icon/icons/svg/workflow.esm.js";import"../nile-icon/icons/svg/writeexpression.esm.js";import"../nile-icon/aliasmap.esm.js";import"../nile-popup/nile-popup.css.esm.js";import"../nile-tag/nile-tag.css.esm.js";import"../nile-icon-button/nile-icon-button.esm.js";import"../nile-icon-button/nile-icon-button.css.esm.js";import"lit/static-html.js";import"../nile-checkbox/nile-checkbox.css.esm.js";import"lit/directives/live.js";import"../virtualize-73f68d08.esm.js";import"lit/directive.js";import"lit/async-directive.js";import"lit/directives/repeat.js";import"lit/directives/unsafe-html.js";let x=class extends u{constructor(){super(...arguments),this.formControlController=new p(this,{assumeInteractionOn:["nile-blur","nile-input"]}),this.hasSlotController=new v(this,"help-text","label"),this.hasFocus=!1,this.displayLabel="",this.selectedOptions=[],this.oldValue="",this.name="",this.data=[],this.originalOptionItems=[],this.value="",this.defaultValue="",this.size="medium",this.placeholder="Select...",this.searchValue="",this.searchEnabled=!1,this.internalSearchPlaceHolder="Search...",this.disableLocalSearch=!1,this.optionsLoading=!1,this.multiple=!1,this.helpText="",this.errorMessage="",this.warning=!1,this.error=!1,this.success=!1,this.disabled=!1,this.clearable=!1,this.open=!1,this.hoist=!1,this.filled=!1,this.pill=!1,this.label="",this.placement="bottom",this.form="",this.required=!1,this.showNoResults=!1,this.noResultsMessage="No results found",this.showSelected=!1,this.blockValueChange=!1,this.noWidthSync=!1,this.maxOptionsVisible=3,this.oldMaxOptionsVisible=1,this.handleDocumentMouseDown=i=>{if(!this.open)return;const s=i.composedPath(),e=s.includes(this),o=this.popup&&s.includes(this.popup);e||o||this.hide()}}get validity(){return this.valueInput?.validity}get validationMessage(){return this.valueInput?.validationMessage??""}connectedCallback(){super.connectedCallback(),this.initializeComponent(),this.setupEventListeners(),this.updateComplete.then((()=>{this.value&&this.data.length>0&&this.selectionChanged()}))}disconnectedCallback(){this.removeOpenListeners()}initializeComponent(){this.open=!1,this.emit("nile-init")}getDisplayText(i){return this.renderItemConfig?.getDisplayText?this.renderItemConfig.getDisplayText(i):i?.label||i?.name||i?.toString()||""}getItemValue(i){return this.renderItemConfig?.getValue?this.renderItemConfig.getValue(i):i?.value||i}getSearchText(i){return this.renderItemConfig?.getSearchText?this.renderItemConfig.getSearchText(i):this.getDisplayText(i)}setupEventListeners(){this.handleDocumentFocusIn=this.handleDocumentFocusIn.bind(this),this.handleDocumentKeyDown=this.handleDocumentKeyDown.bind(this),this.handleDocumentMouseDown=this.handleDocumentMouseDown.bind(this)}addOpenListeners(){document.addEventListener("focusin",this.handleDocumentFocusIn),document.addEventListener("keydown",this.handleDocumentKeyDown),document.addEventListener("mousedown",this.handleDocumentMouseDown)}removeOpenListeners(){document.removeEventListener("focusin",this.handleDocumentFocusIn),document.removeEventListener("keydown",this.handleDocumentKeyDown),document.removeEventListener("mousedown",this.handleDocumentMouseDown)}handleFocus(){this.hasFocus=!0,this.emit("nile-focus")}handleBlur(){this.hasFocus=!1,this.emit("nile-blur")}handleDocumentFocusIn(i){if(!this.open)return;const s=i.composedPath(),e=s.includes(this),o=this.popup&&s.includes(this.popup);e||o||this.hide()}handleDocumentKeyDown(i){this.shouldIgnoreKeyPress(i)||(this.isEscapeKey(i)&&this.handleEscapeKey(i),this.isEnterOrSpaceKey(i)&&this.handleEnterOrSpaceKey(i))}shouldIgnoreKeyPress(i){const s=i.target,e=null!==s.closest(".select__clear"),o=null!==s.closest("nile-icon-button");return e||o}isEscapeKey(i){return"Escape"===i.key&&this.open}handleEscapeKey(i){i.preventDefault(),i.stopPropagation(),this.hide(),this.displayInput.focus({preventScroll:!0})}isEnterOrSpaceKey(i){return"Enter"===i.key||" "===i.key}handleEnterOrSpaceKey(i){i.preventDefault(),i.stopImmediatePropagation(),this.open?this.multiple||(this.hide(),this.displayInput.focus({preventScroll:!0})):this.show()}handleFooterClick(i){i.stopPropagation(),i.preventDefault()}toggleShowSelected(i){if(i.stopPropagation(),i.preventDefault(),0!==this.selectedOptions?.length){if(this.showSelected=!this.showSelected,this.showSelected){const i=Array.isArray(this.value)?this.value:[this.value];this.data=this.originalOptionItems.filter((s=>i.includes(s.value)))}else this.data=[...this.originalOptionItems];this.requestUpdate(),this.resetScrollPosition()}}unSelectAll(){this.showSelected=!1,this.value=this.multiple?[]:"",this.data=[...this.originalOptionItems],this.selectionChanged(),this.emit("nile-change",{value:this.value,name:this.name}),this.emit("nile-clear",{value:this.multiple?this.value:"",name:this.name}),this.resetScrollPosition()}handleLabelClick(){this.displayInput.focus(),this.hide()}handleComboboxMouseDown(i){this.shouldIgnoreComboboxClick(i)||(i.preventDefault(),this.displayInput.focus({preventScroll:!0}),this.open=!this.open)}shouldIgnoreComboboxClick(i){const s=i.composedPath().some((i=>i instanceof Element&&"nile-icon-button"===i.tagName.toLowerCase()));return this.disabled||s}handleComboboxKeyDown(i){this.isEnterOrSpaceKey(i)&&(i.preventDefault(),this.open=!this.open)}handleClearClick(i){i.stopPropagation(),this.clearSelection()}clearSelection(){this.value,this.value=this.multiple?[]:"",this.selectionChanged(),this.updateComplete.then((()=>{this.nileInput({value:this.value,name:this.name}),this.nileChange({value:this.value,name:this.name}),this.emit("nile-clear")}))}handleClearMouseDown(i){i.stopPropagation()}handleOptionClick(i){const s=i.target.closest("nile-option");if(this.shouldBlockValueChange(s))return;const e=this.value;this.oldValue=e,s&&!s.disabled&&this.handleOptionSelection(s)}shouldBlockValueChange(i){return!(!this.blockValueChange||!i)&&(this.emit("nile-block-change",{value:i?.value,name:this.name}),this.hide(),!0)}handleOptionSelection(i){const s=i.value;this.multiple?this.toggleOptionSelection(s):this.setSelectedOptions(s),this.updateComplete.then((()=>this.displayInput.focus({preventScroll:!0}))),this.value!==this.oldValue&&this.updateComplete.then((()=>{this.nileInput({value:this.value,name:this.name}),this.nileChange({value:this.value,name:this.name})})),this.multiple||(this.hide(),this.displayInput.focus({preventScroll:!0}))}setSelectedOptions(i){this.value=i,this.selectionChanged()}toggleOptionSelection(i){const s=Array.isArray(this.value)?this.value:[];s.includes(i)?this.value=s.filter((s=>s!==i)):this.value=[...s,i],this.selectionChanged()}handleTagRemove(i,s){i.stopPropagation(),this.disabled||(this.removeTagFromSelection(s),this.emitTagRemovalEvent(s))}removeTagFromSelection(i){let s=this.value;Array.isArray(s)||(s=s?[s]:[]);const e=s.filter((s=>s!==i.value));this.value=e,this.selectionChanged()}emitTagRemovalEvent(i){this.updateComplete.then((()=>{this.nileInput({value:this.value,name:this.name}),this.nileChange({value:this.value,name:this.name}),this.emit("nile-tag-remove",{value:this.value,name:this.name,removedtagvalue:i.value})}))}selectionChanged(){const i=this.originalOptionItems.length>0?this.originalOptionItems:this.data;if(this.selectedOptions=b.createVirtualOptionsFromValues(this.value,i,this.getDisplayText.bind(this),this.renderItemConfig?.getValue),this.multiple)this.placeholder&&0===this.value.length?this.displayLabel="":this.displayLabel=this.selectedOptions.length+" selected";else{const i=Array.isArray(this.value)?this.value[0]:this.value,s=this.selectedOptions[0]?.getTextLabel();this.displayLabel=s||(i??"")}this.updateValidity(),0===this.selectedOptions.length&&(this.showSelected=!1),this.calculateTotalWidthOfTags()}handleSearchFocus(){document.removeEventListener("keydown",this.handleDocumentKeyDown)}handleSearchBlur(){document.addEventListener("keydown",this.handleDocumentKeyDown)}handleSearchChange(i){this.searchValue=i.detail.value,this.disableLocalSearch||(this.filterVirtualOptions(this.searchValue),this.resetScrollPosition())}filterVirtualOptions(i){const s=y.filterVirtualOptions(i,this.originalOptionItems,this.data,this.getDisplayText.bind(this),this.renderItemConfig?.getSearchText);this.data=s.filteredItems,this.showNoResults=s.showNoResults,this.showSelected=!1,this.requestUpdate()}handleInvalid(i){this.formControlController.setValidity(!1),this.formControlController.emitInvalidEvent(i)}handleDisabledChange(){this.disabled&&(this.open=!1,this.handleOpenChange())}handleValueChange(){this.selectionChanged(),this.requestUpdate()}handleDataChange(){this.selectionChanged(),this.optionsLoading||0!==this.data.length?this.data.length>0&&(this.showNoResults=!1):this.showNoResults=!0,this.requestUpdate(),this.open&&this.resetScrollPosition()}handleRenderItemConfigChange(){this.value&&this.data.length>0&&(this.selectionChanged(),this.requestUpdate())}handleOptionsLoadingChange(){this.optionsLoading||0!==this.data.length||(this.showNoResults=!0),this.requestUpdate()}async handleOpenChange(){this.open&&!this.disabled?await this.handleOpen():await this.handleClose()}async handleOpen(){this.emit("nile-show",{value:this.value,name:this.name}),this.addOpenListeners(),this.showNoResults=!this.data?.length,await l(this),this.popup.active=!0;const{keyframes:i,options:s}=g(this,"select.show",{dir:"ltr"});await r(this.popup.popup,i,s),this.initializeOriginalItems(),this.filterVirtualOptions(this.searchValue),this.resetScrollPosition(),this.emit("nile-after-show",{value:this.value,name:this.name})}async handleClose(){this.emit("nile-hide",{value:this.value,name:this.name}),this.removeOpenListeners(),await l(this);const{keyframes:i,options:s}=g(this,"select.hide",{dir:"ltr"});await r(this.popup.popup,i,s),this.popup.active=!1,this.searchValue="",this.emit("nile-after-hide",{value:this.value,name:this.name})}initializeOriginalItems(){0===this.originalOptionItems.length&&this.data.length>0&&(this.originalOptionItems=[...this.data])}async show(){if(!this.open&&!this.disabled)return this.open=!0,j(this,"nile-after-show");this.open=!1}async hide(){if(this.open&&!this.disabled)return this.open=!1,j(this,"nile-after-hide");this.open=!1}checkValidity(){return this.valueInput.checkValidity()}getForm(){return this.formControlController.getForm()}reportValidity(){return this.valueInput.reportValidity()}setCustomValidity(i){this.valueInput.setCustomValidity(i),this.formControlController.updateValidity()}focus(i){this.displayInput.focus(i)}blur(){this.displayInput.blur()}onInputChange(i){i.stopPropagation()}render(){const i=this.hasSlotController.test("label");this.hasSlotController.test("help-text");const e=this.hasSlotController.test("label-suffix"),o=this.hasSlotController.test("custom-select"),n=!!this.label||!!i,t=this.clearable&&!this.disabled&&this.value.length>0,c=!!this.placeholder&&0===this.value.length,l=!!this.helpText,r=!!this.errorMessage;return s`
1
+ import{__decorate as i}from"tslib";import{html as s}from"lit";import{query as e,state as o,property as n,customElement as t}from"lit/decorators.js";import{s as c}from"./nile-virtual-select.css.esm.js";import"../nile-icon/index.esm.js";import"../nile-popup/nile-popup.esm.js";import"../nile-tag/nile-tag.esm.js";import"../nile-checkbox/nile-checkbox.esm.js";import"../nile-loader/nile-loader.esm.js";import{s as l,a as r}from"../internal/animate.esm.js";import{classMap as m}from"lit/directives/class-map.js";import{d as a}from"../internal/default-value.esm.js";import{F as p}from"../internal/form.esm.js";import{s as h,g}from"../utilities/animation-registry.esm.js";import{H as v}from"../internal/slot.esm.js";import{w as j}from"../internal/event.esm.js";import{w as d}from"../internal/watch.esm.js";import{N as u}from"../internal/nile-element.esm.js";import{ifDefined as f}from"lit/directives/if-defined.js";import{V as b}from"./selection-manager.esm.js";import{V as y}from"./search-manager.esm.js";import{V as w}from"./renderer.esm.js";import"lit/directives/unsafe-svg.js";import"../nile-icon/icons/svg/index.esm.js";import"../nile-icon/icons/svg/access-request.esm.js";import"../nile-icon/icons/svg/accessreview.esm.js";import"../nile-icon/icons/svg/action.esm.js";import"../nile-icon/icons/svg/activity-logs.esm.js";import"../nile-icon/icons/svg/address.esm.js";import"../nile-icon/icons/svg/admin-users.esm.js";import"../nile-icon/icons/svg/agent.esm.js";import"../nile-icon/icons/svg/aggregation.esm.js";import"../nile-icon/icons/svg/alert-circle.esm.js";import"../nile-icon/icons/svg/alert.esm.js";import"../nile-icon/icons/svg/allapplication.esm.js";import"../nile-icon/icons/svg/allsearch.esm.js";import"../nile-icon/icons/svg/analytics.esm.js";import"../nile-icon/icons/svg/api.esm.js";import"../nile-icon/icons/svg/applications-2.esm.js";import"../nile-icon/icons/svg/apply-filter.esm.js";import"../nile-icon/icons/svg/apps.esm.js";import"../nile-icon/icons/svg/aquera.esm.js";import"../nile-icon/icons/svg/aquerasupport.esm.js";import"../nile-icon/icons/svg/array-loop.esm.js";import"../nile-icon/icons/svg/array-of-boolean.esm.js";import"../nile-icon/icons/svg/array-of-integer.esm.js";import"../nile-icon/icons/svg/array-of-string.esm.js";import"../nile-icon/icons/svg/array.esm.js";import"../nile-icon/icons/svg/arrayofobject.esm.js";import"../nile-icon/icons/svg/arrow-narrow-left.esm.js";import"../nile-icon/icons/svg/arrow.esm.js";import"../nile-icon/icons/svg/arrowdown.esm.js";import"../nile-icon/icons/svg/arrowdropdown.esm.js";import"../nile-icon/icons/svg/arrowdropup.esm.js";import"../nile-icon/icons/svg/arrowleft.esm.js";import"../nile-icon/icons/svg/arrowright.esm.js";import"../nile-icon/icons/svg/arrowup.esm.js";import"../nile-icon/icons/svg/attribute-map-analysis-icon.esm.js";import"../nile-icon/icons/svg/attribute.esm.js";import"../nile-icon/icons/svg/attributemap.esm.js";import"../nile-icon/icons/svg/automation-details.esm.js";import"../nile-icon/icons/svg/back.esm.js";import"../nile-icon/icons/svg/bar-and-line-chart.esm.js";import"../nile-icon/icons/svg/bar-chart-square-02.esm.js";import"../nile-icon/icons/svg/bar-chart.esm.js";import"../nile-icon/icons/svg/bargraph.esm.js";import"../nile-icon/icons/svg/block.esm.js";import"../nile-icon/icons/svg/bluedot.esm.js";import"../nile-icon/icons/svg/book-closed.esm.js";import"../nile-icon/icons/svg/boolean.esm.js";import"../nile-icon/icons/svg/border_all.esm.js";import"../nile-icon/icons/svg/box.esm.js";import"../nile-icon/icons/svg/bubble-chart.esm.js";import"../nile-icon/icons/svg/bulk-sync.esm.js";import"../nile-icon/icons/svg/button-loading-black.esm.js";import"../nile-icon/icons/svg/button-loading-blue-animated.esm.js";import"../nile-icon/icons/svg/button-loading-blue.esm.js";import"../nile-icon/icons/svg/button-loading-white.esm.js";import"../nile-icon/icons/svg/calendar.esm.js";import"../nile-icon/icons/svg/cases.esm.js";import"../nile-icon/icons/svg/cell-loader.esm.js";import"../nile-icon/icons/svg/certification.esm.js";import"../nile-icon/icons/svg/check-circle.esm.js";import"../nile-icon/icons/svg/check-done-01.esm.js";import"../nile-icon/icons/svg/check-done-02.esm.js";import"../nile-icon/icons/svg/chevron-left-double.esm.js";import"../nile-icon/icons/svg/chevron-up.esm.js";import"../nile-icon/icons/svg/class.esm.js";import"../nile-icon/icons/svg/clock-check.esm.js";import"../nile-icon/icons/svg/clock-rewind.esm.js";import"../nile-icon/icons/svg/clock.esm.js";import"../nile-icon/icons/svg/close.esm.js";import"../nile-icon/icons/svg/cloud-01.esm.js";import"../nile-icon/icons/svg/code-generator.esm.js";import"../nile-icon/icons/svg/collapse-1.esm.js";import"../nile-icon/icons/svg/collapse.esm.js";import"../nile-icon/icons/svg/color.esm.js";import"../nile-icon/icons/svg/column-02.esm.js";import"../nile-icon/icons/svg/column-add.esm.js";import"../nile-icon/icons/svg/columns-03.esm.js";import"../nile-icon/icons/svg/combo1.esm.js";import"../nile-icon/icons/svg/comment.esm.js";import"../nile-icon/icons/svg/compact.esm.js";import"../nile-icon/icons/svg/compare-tiles.esm.js";import"../nile-icon/icons/svg/compare.esm.js";import"../nile-icon/icons/svg/component-menu.esm.js";import"../nile-icon/icons/svg/component.esm.js";import"../nile-icon/icons/svg/components-icon.esm.js";import"../nile-icon/icons/svg/componenttext.esm.js";import"../nile-icon/icons/svg/condition.esm.js";import"../nile-icon/icons/svg/conditions.esm.js";import"../nile-icon/icons/svg/connect.esm.js";import"../nile-icon/icons/svg/connectivitymap.esm.js";import"../nile-icon/icons/svg/connectorrightarrow.esm.js";import"../nile-icon/icons/svg/copy-06.esm.js";import"../nile-icon/icons/svg/copy.esm.js";import"../nile-icon/icons/svg/cor-analysis.esm.js";import"../nile-icon/icons/svg/correlation.esm.js";import"../nile-icon/icons/svg/cost-analytics.esm.js";import"../nile-icon/icons/svg/create.esm.js";import"../nile-icon/icons/svg/createuser.esm.js";import"../nile-icon/icons/svg/dashboard.esm.js";import"../nile-icon/icons/svg/data-insight.esm.js";import"../nile-icon/icons/svg/data-type-array.esm.js";import"../nile-icon/icons/svg/data-type-boolean.esm.js";import"../nile-icon/icons/svg/data-type-json.esm.js";import"../nile-icon/icons/svg/data-type-null.esm.js";import"../nile-icon/icons/svg/data-type-number.esm.js";import"../nile-icon/icons/svg/data-type-string.esm.js";import"../nile-icon/icons/svg/data-type-unknown.esm.js";import"../nile-icon/icons/svg/database.esm.js";import"../nile-icon/icons/svg/databaseview.esm.js";import"../nile-icon/icons/svg/dataflow-03.esm.js";import"../nile-icon/icons/svg/dataflow-04.esm.js";import"../nile-icon/icons/svg/default-cursor.esm.js";import"../nile-icon/icons/svg/default.esm.js";import"../nile-icon/icons/svg/delegate.esm.js";import"../nile-icon/icons/svg/delete.esm.js";import"../nile-icon/icons/svg/deligateduser.esm.js";import"../nile-icon/icons/svg/directory.esm.js";import"../nile-icon/icons/svg/disabled.esm.js";import"../nile-icon/icons/svg/dock-to-right.esm.js";import"../nile-icon/icons/svg/document-new.esm.js";import"../nile-icon/icons/svg/done-02.esm.js";import"../nile-icon/icons/svg/done.esm.js";import"../nile-icon/icons/svg/dontmap.esm.js";import"../nile-icon/icons/svg/donut.esm.js";import"../nile-icon/icons/svg/dotpoints-02.esm.js";import"../nile-icon/icons/svg/dots-grid.esm.js";import"../nile-icon/icons/svg/doublearrowleft.esm.js";import"../nile-icon/icons/svg/doublearrowright.esm.js";import"../nile-icon/icons/svg/dowhileloop.esm.js";import"../nile-icon/icons/svg/downgrade.esm.js";import"../nile-icon/icons/svg/download.esm.js";import"../nile-icon/icons/svg/drag.esm.js";import"../nile-icon/icons/svg/edit-write.esm.js";import"../nile-icon/icons/svg/else.esm.js";import"../nile-icon/icons/svg/email.esm.js";import"../nile-icon/icons/svg/enable.esm.js";import"../nile-icon/icons/svg/entities.esm.js";import"../nile-icon/icons/svg/entitlement.esm.js";import"../nile-icon/icons/svg/error.esm.js";import"../nile-icon/icons/svg/escalate.esm.js";import"../nile-icon/icons/svg/exactmatch.esm.js";import"../nile-icon/icons/svg/execute.esm.js";import"../nile-icon/icons/svg/expand-03.esm.js";import"../nile-icon/icons/svg/expand-06.esm.js";import"../nile-icon/icons/svg/expand-2.esm.js";import"../nile-icon/icons/svg/expand.esm.js";import"../nile-icon/icons/svg/eye-off.esm.js";import"../nile-icon/icons/svg/eye.esm.js";import"../nile-icon/icons/svg/eyeclosed.esm.js";import"../nile-icon/icons/svg/featured-icon.esm.js";import"../nile-icon/icons/svg/file-06.esm.js";import"../nile-icon/icons/svg/file-check-02.esm.js";import"../nile-icon/icons/svg/file-shield-01.esm.js";import"../nile-icon/icons/svg/file-shield-02.esm.js";import"../nile-icon/icons/svg/file-type-icon.esm.js";import"../nile-icon/icons/svg/file.esm.js";import"../nile-icon/icons/svg/filter-1.esm.js";import"../nile-icon/icons/svg/filter.esm.js";import"../nile-icon/icons/svg/fingerprint-03.esm.js";import"../nile-icon/icons/svg/firewall.esm.js";import"../nile-icon/icons/svg/firewallagent.esm.js";import"../nile-icon/icons/svg/flow.esm.js";import"../nile-icon/icons/svg/flowmap-agent.esm.js";import"../nile-icon/icons/svg/flowmap-application.esm.js";import"../nile-icon/icons/svg/flowmap-colorpalatte.esm.js";import"../nile-icon/icons/svg/flowmap-firewall-agent.esm.js";import"../nile-icon/icons/svg/flowmap-firewall.esm.js";import"../nile-icon/icons/svg/flowmap-gateway.esm.js";import"../nile-icon/icons/svg/flowmap-orchestration.esm.js";import"../nile-icon/icons/svg/flowmap-undo.esm.js";import"../nile-icon/icons/svg/flowmap-workflow.esm.js";import"../nile-icon/icons/svg/flowmap.esm.js";import"../nile-icon/icons/svg/folder.esm.js";import"../nile-icon/icons/svg/foreach.esm.js";import"../nile-icon/icons/svg/frequency.esm.js";import"../nile-icon/icons/svg/full-union.esm.js";import"../nile-icon/icons/svg/fullscreen.esm.js";import"../nile-icon/icons/svg/fullscreenexit.esm.js";import"../nile-icon/icons/svg/fullscreenshrink.esm.js";import"../nile-icon/icons/svg/function.esm.js";import"../nile-icon/icons/svg/funnel-02.esm.js";import"../nile-icon/icons/svg/funnel.esm.js";import"../nile-icon/icons/svg/gateway.esm.js";import"../nile-icon/icons/svg/gauge.esm.js";import"../nile-icon/icons/svg/general.esm.js";import"../nile-icon/icons/svg/generationphase.esm.js";import"../nile-icon/icons/svg/global-search.esm.js";import"../nile-icon/icons/svg/globe-03.esm.js";import"../nile-icon/icons/svg/globe.esm.js";import"../nile-icon/icons/svg/goto.esm.js";import"../nile-icon/icons/svg/graph.esm.js";import"../nile-icon/icons/svg/graphedit.esm.js";import"../nile-icon/icons/svg/greendot.esm.js";import"../nile-icon/icons/svg/greydot.esm.js";import"../nile-icon/icons/svg/greylightdot.esm.js";import"../nile-icon/icons/svg/grid-01.esm.js";import"../nile-icon/icons/svg/group-analysis-icon.esm.js";import"../nile-icon/icons/svg/group.esm.js";import"../nile-icon/icons/svg/groupby.esm.js";import"../nile-icon/icons/svg/groups.esm.js";import"../nile-icon/icons/svg/guide-01.esm.js";import"../nile-icon/icons/svg/guide.esm.js";import"../nile-icon/icons/svg/handtool.esm.js";import"../nile-icon/icons/svg/header-child-workflow.esm.js";import"../nile-icon/icons/svg/header-flows.esm.js";import"../nile-icon/icons/svg/header-tasks.esm.js";import"../nile-icon/icons/svg/headphones-01.esm.js";import"../nile-icon/icons/svg/help.esm.js";import"../nile-icon/icons/svg/helpandsupport.esm.js";import"../nile-icon/icons/svg/helpers.esm.js";import"../nile-icon/icons/svg/helpsupport.esm.js";import"../nile-icon/icons/svg/history.esm.js";import"../nile-icon/icons/svg/identitygraph.esm.js";import"../nile-icon/icons/svg/identityledger.esm.js";import"../nile-icon/icons/svg/ifelse.esm.js";import"../nile-icon/icons/svg/ifelsenew.esm.js";import"../nile-icon/icons/svg/image.esm.js";import"../nile-icon/icons/svg/immutable.esm.js";import"../nile-icon/icons/svg/info-icon.esm.js";import"../nile-icon/icons/svg/info.esm.js";import"../nile-icon/icons/svg/inner-union.esm.js";import"../nile-icon/icons/svg/inprogress.esm.js";import"../nile-icon/icons/svg/insert-at-cursor.esm.js";import"../nile-icon/icons/svg/integer.esm.js";import"../nile-icon/icons/svg/intersection.esm.js";import"../nile-icon/icons/svg/js.esm.js";import"../nile-icon/icons/svg/key-performance-indicator.esm.js";import"../nile-icon/icons/svg/keyboard-01.esm.js";import"../nile-icon/icons/svg/keyword.esm.js";import"../nile-icon/icons/svg/kill.esm.js";import"../nile-icon/icons/svg/laptop-01.esm.js";import"../nile-icon/icons/svg/layers-three-02.esm.js";import"../nile-icon/icons/svg/layout-alt-02.esm.js";import"../nile-icon/icons/svg/layout-alt-03.esm.js";import"../nile-icon/icons/svg/left-join.esm.js";import"../nile-icon/icons/svg/left-union.esm.js";import"../nile-icon/icons/svg/leftpointarrow.esm.js";import"../nile-icon/icons/svg/life-buoy-01.esm.js";import"../nile-icon/icons/svg/line.esm.js";import"../nile-icon/icons/svg/link.esm.js";import"../nile-icon/icons/svg/list-attribute.esm.js";import"../nile-icon/icons/svg/list.esm.js";import"../nile-icon/icons/svg/loader.esm.js";import"../nile-icon/icons/svg/loading.esm.js";import"../nile-icon/icons/svg/loading2.esm.js";import"../nile-icon/icons/svg/lock.esm.js";import"../nile-icon/icons/svg/log-info.esm.js";import"../nile-icon/icons/svg/log.esm.js";import"../nile-icon/icons/svg/logo-white.esm.js";import"../nile-icon/icons/svg/logout.esm.js";import"../nile-icon/icons/svg/logs.esm.js";import"../nile-icon/icons/svg/loop.esm.js";import"../nile-icon/icons/svg/manage.esm.js";import"../nile-icon/icons/svg/map.esm.js";import"../nile-icon/icons/svg/mapcreate.esm.js";import"../nile-icon/icons/svg/mapdont.esm.js";import"../nile-icon/icons/svg/maponcreate.esm.js";import"../nile-icon/icons/svg/maponupdate.esm.js";import"../nile-icon/icons/svg/mapper.esm.js";import"../nile-icon/icons/svg/mapupdate.esm.js";import"../nile-icon/icons/svg/marker-pin-01.esm.js";import"../nile-icon/icons/svg/maximize.esm.js";import"../nile-icon/icons/svg/menu.esm.js";import"../nile-icon/icons/svg/message-notification-square.esm.js";import"../nile-icon/icons/svg/minus.esm.js";import"../nile-icon/icons/svg/monitor-01.esm.js";import"../nile-icon/icons/svg/mouse.esm.js";import"../nile-icon/icons/svg/move-application.esm.js";import"../nile-icon/icons/svg/moveleft.esm.js";import"../nile-icon/icons/svg/moveright.esm.js";import"../nile-icon/icons/svg/mute.esm.js";import"../nile-icon/icons/svg/my-integration.esm.js";import"../nile-icon/icons/svg/new-calendar.esm.js";import"../nile-icon/icons/svg/nightingale-chart.esm.js";import"../nile-icon/icons/svg/nlp.esm.js";import"../nile-icon/icons/svg/nomatch.esm.js";import"../nile-icon/icons/svg/note.esm.js";import"../nile-icon/icons/svg/notification.esm.js";import"../nile-icon/icons/svg/notificationadd.esm.js";import"../nile-icon/icons/svg/notificationadded.esm.js";import"../nile-icon/icons/svg/null.esm.js";import"../nile-icon/icons/svg/number.esm.js";import"../nile-icon/icons/svg/numberinput.esm.js";import"../nile-icon/icons/svg/numbers.esm.js";import"../nile-icon/icons/svg/object.esm.js";import"../nile-icon/icons/svg/operators.esm.js";import"../nile-icon/icons/svg/options.esm.js";import"../nile-icon/icons/svg/orchestration-solid.esm.js";import"../nile-icon/icons/svg/orchestration.esm.js";import"../nile-icon/icons/svg/organization.esm.js";import"../nile-icon/icons/svg/other.esm.js";import"../nile-icon/icons/svg/otherdetails.esm.js";import"../nile-icon/icons/svg/override.esm.js";import"../nile-icon/icons/svg/palletemenu.esm.js";import"../nile-icon/icons/svg/paperclip.esm.js";import"../nile-icon/icons/svg/partner.esm.js";import"../nile-icon/icons/svg/partners.esm.js";import"../nile-icon/icons/svg/pause.esm.js";import"../nile-icon/icons/svg/pencil.esm.js";import"../nile-icon/icons/svg/peopletask.esm.js";import"../nile-icon/icons/svg/persistent-variable.esm.js";import"../nile-icon/icons/svg/persistentdata.esm.js";import"../nile-icon/icons/svg/phone.esm.js";import"../nile-icon/icons/svg/pie.esm.js";import"../nile-icon/icons/svg/pin.esm.js";import"../nile-icon/icons/svg/play.esm.js";import"../nile-icon/icons/svg/play_pause.esm.js";import"../nile-icon/icons/svg/plus.esm.js";import"../nile-icon/icons/svg/pluscircle.esm.js";import"../nile-icon/icons/svg/plussquare.esm.js";import"../nile-icon/icons/svg/policy.esm.js";import"../nile-icon/icons/svg/potentialmatch.esm.js";import"../nile-icon/icons/svg/poweron.esm.js";import"../nile-icon/icons/svg/predefined.esm.js";import"../nile-icon/icons/svg/preview.esm.js";import"../nile-icon/icons/svg/printer.esm.js";import"../nile-icon/icons/svg/priority-high.esm.js";import"../nile-icon/icons/svg/priority-highest.esm.js";import"../nile-icon/icons/svg/priority-low.esm.js";import"../nile-icon/icons/svg/priority-medium.esm.js";import"../nile-icon/icons/svg/privilage.esm.js";import"../nile-icon/icons/svg/privilege.esm.js";import"../nile-icon/icons/svg/privilegeobject.esm.js";import"../nile-icon/icons/svg/process.esm.js";import"../nile-icon/icons/svg/professionaldetails.esm.js";import"../nile-icon/icons/svg/question.esm.js";import"../nile-icon/icons/svg/radar.esm.js";import"../nile-icon/icons/svg/radio.esm.js";import"../nile-icon/icons/svg/radioactive.esm.js";import"../nile-icon/icons/svg/radiodone.esm.js";import"../nile-icon/icons/svg/read.esm.js";import"../nile-icon/icons/svg/readexpression.esm.js";import"../nile-icon/icons/svg/readonly.esm.js";import"../nile-icon/icons/svg/readonlyuser.esm.js";import"../nile-icon/icons/svg/readuser.esm.js";import"../nile-icon/icons/svg/reddot.esm.js";import"../nile-icon/icons/svg/redo-02.esm.js";import"../nile-icon/icons/svg/redo.esm.js";import"../nile-icon/icons/svg/refresh.esm.js";import"../nile-icon/icons/svg/reminder.esm.js";import"../nile-icon/icons/svg/resize.esm.js";import"../nile-icon/icons/svg/resource.esm.js";import"../nile-icon/icons/svg/resource_analysis.esm.js";import"../nile-icon/icons/svg/resource_graph.esm.js";import"../nile-icon/icons/svg/restart_alt.esm.js";import"../nile-icon/icons/svg/revocation-cycle.esm.js";import"../nile-icon/icons/svg/right-join.esm.js";import"../nile-icon/icons/svg/right-union.esm.js";import"../nile-icon/icons/svg/rocket-02.esm.js";import"../nile-icon/icons/svg/role.esm.js";import"../nile-icon/icons/svg/run.esm.js";import"../nile-icon/icons/svg/sankey.esm.js";import"../nile-icon/icons/svg/save.esm.js";import"../nile-icon/icons/svg/savings.esm.js";import"../nile-icon/icons/svg/scatter-plot.esm.js";import"../nile-icon/icons/svg/schedule.esm.js";import"../nile-icon/icons/svg/schema.esm.js";import"../nile-icon/icons/svg/script.esm.js";import"../nile-icon/icons/svg/search-steps-icon.esm.js";import"../nile-icon/icons/svg/search.esm.js";import"../nile-icon/icons/svg/section.esm.js";import"../nile-icon/icons/svg/select-02.esm.js";import"../nile-icon/icons/svg/select.esm.js";import"../nile-icon/icons/svg/selectapplication.esm.js";import"../nile-icon/icons/svg/selectattributes.esm.js";import"../nile-icon/icons/svg/semi-circle-donut-chart.esm.js";import"../nile-icon/icons/svg/send.esm.js";import"../nile-icon/icons/svg/sendemail.esm.js";import"../nile-icon/icons/svg/sendescalation.esm.js";import"../nile-icon/icons/svg/sendreminder.esm.js";import"../nile-icon/icons/svg/server-03.esm.js";import"../nile-icon/icons/svg/settings-02.esm.js";import"../nile-icon/icons/svg/settings.esm.js";import"../nile-icon/icons/svg/share.esm.js";import"../nile-icon/icons/svg/shield-01.esm.js";import"../nile-icon/icons/svg/smartcode.esm.js";import"../nile-icon/icons/svg/sort.esm.js";import"../nile-icon/icons/svg/sort_ascending.esm.js";import"../nile-icon/icons/svg/sort_descending.esm.js";import"../nile-icon/icons/svg/sortascending.esm.js";import"../nile-icon/icons/svg/sortdescending.esm.js";import"../nile-icon/icons/svg/sortdown.esm.js";import"../nile-icon/icons/svg/sortup.esm.js";import"../nile-icon/icons/svg/stacked-bar-chart.esm.js";import"../nile-icon/icons/svg/step_into.esm.js";import"../nile-icon/icons/svg/step_out.esm.js";import"../nile-icon/icons/svg/step_over.esm.js";import"../nile-icon/icons/svg/stop.esm.js";import"../nile-icon/icons/svg/storybook.esm.js";import"../nile-icon/icons/svg/string.esm.js";import"../nile-icon/icons/svg/stringinput.esm.js";import"../nile-icon/icons/svg/stringletters.esm.js";import"../nile-icon/icons/svg/support.esm.js";import"../nile-icon/icons/svg/swap.esm.js";import"../nile-icon/icons/svg/switch.esm.js";import"../nile-icon/icons/svg/sync.esm.js";import"../nile-icon/icons/svg/table.esm.js";import"../nile-icon/icons/svg/tag.esm.js";import"../nile-icon/icons/svg/test.esm.js";import"../nile-icon/icons/svg/text-02.esm.js";import"../nile-icon/icons/svg/text.esm.js";import"../nile-icon/icons/svg/textarea-expander.esm.js";import"../nile-icon/icons/svg/thumbsdown.esm.js";import"../nile-icon/icons/svg/thumbsup.esm.js";import"../nile-icon/icons/svg/thumsup.esm.js";import"../nile-icon/icons/svg/tick.esm.js";import"../nile-icon/icons/svg/timeupdate.esm.js";import"../nile-icon/icons/svg/timezone.esm.js";import"../nile-icon/icons/svg/transaction_monitor.esm.js";import"../nile-icon/icons/svg/trend-up-02.esm.js";import"../nile-icon/icons/svg/trigger.esm.js";import"../nile-icon/icons/svg/undo-02.esm.js";import"../nile-icon/icons/svg/undo.esm.js";import"../nile-icon/icons/svg/union.esm.js";import"../nile-icon/icons/svg/unmute.esm.js";import"../nile-icon/icons/svg/update.esm.js";import"../nile-icon/icons/svg/updown.esm.js";import"../nile-icon/icons/svg/upgrade.esm.js";import"../nile-icon/icons/svg/upload.esm.js";import"../nile-icon/icons/svg/user-group.esm.js";import"../nile-icon/icons/svg/user.esm.js";import"../nile-icon/icons/svg/useractive.esm.js";import"../nile-icon/icons/svg/useradd.esm.js";import"../nile-icon/icons/svg/useraddgroup.esm.js";import"../nile-icon/icons/svg/userfind.esm.js";import"../nile-icon/icons/svg/userimport.esm.js";import"../nile-icon/icons/svg/userimportgroup.esm.js";import"../nile-icon/icons/svg/usermixed.esm.js";import"../nile-icon/icons/svg/userremove.esm.js";import"../nile-icon/icons/svg/userremovegroup.esm.js";import"../nile-icon/icons/svg/users-plus.esm.js";import"../nile-icon/icons/svg/users-up.esm.js";import"../nile-icon/icons/svg/users.esm.js";import"../nile-icon/icons/svg/userupdate.esm.js";import"../nile-icon/icons/svg/validationexpression.esm.js";import"../nile-icon/icons/svg/variable-global.esm.js";import"../nile-icon/icons/svg/variable-local.esm.js";import"../nile-icon/icons/svg/variable-new.esm.js";import"../nile-icon/icons/svg/variable.esm.js";import"../nile-icon/icons/svg/video.esm.js";import"../nile-icon/icons/svg/view.esm.js";import"../nile-icon/icons/svg/virtualserver.esm.js";import"../nile-icon/icons/svg/virtualservergroup.esm.js";import"../nile-icon/icons/svg/visibility.esm.js";import"../nile-icon/icons/svg/visibilityoff.esm.js";import"../nile-icon/icons/svg/wait.esm.js";import"../nile-icon/icons/svg/warning-01.esm.js";import"../nile-icon/icons/svg/warning.esm.js";import"../nile-icon/icons/svg/whileloop.esm.js";import"../nile-icon/icons/svg/workflow-application.esm.js";import"../nile-icon/icons/svg/workflow-text.esm.js";import"../nile-icon/icons/svg/workflow.esm.js";import"../nile-icon/icons/svg/writeexpression.esm.js";import"../nile-icon/aliasmap.esm.js";import"../nile-popup/nile-popup.css.esm.js";import"../nile-tag/nile-tag.css.esm.js";import"../nile-icon-button/nile-icon-button.esm.js";import"../nile-icon-button/nile-icon-button.css.esm.js";import"lit/static-html.js";import"../nile-checkbox/nile-checkbox.css.esm.js";import"lit/directives/live.js";import"../nile-loader/nile-loader.css.esm.js";import"../virtualize-73f68d08.esm.js";import"lit/directive.js";import"lit/async-directive.js";import"lit/directives/repeat.js";import"lit/directives/unsafe-html.js";
2
+ /**
3
+ * @license
4
+ * Copyright 2021 Google LLC
5
+ * SPDX-License-Identifier: BSD-3-Clause
6
+ */class x{constructor(i,{target:s,config:e,callback:o,skipInitial:n}){this.t=new Set,this.o=!1,this.i=!1,this.h=i,null!==s&&this.t.add(s??i),this.l=e,this.o=n??this.o,this.callback=o,window.ResizeObserver?(this.u=new ResizeObserver((i=>{this.handleChanges(i),this.h.requestUpdate()})),i.addController(this)):console.warn("ResizeController error: browser does not support ResizeObserver.")}handleChanges(i){this.value=this.callback?.(i,this.u)}hostConnected(){for(const i of this.t)this.observe(i)}hostDisconnected(){this.disconnect()}async hostUpdated(){!this.o&&this.i&&this.handleChanges([]),this.i=!1}observe(i){this.t.add(i),this.u.observe(i,this.l),this.i=!0,this.h.requestUpdate()}unobserve(i){this.t.delete(i),this.u.unobserve(i)}disconnect(){this.u.disconnect()}}let _=class extends u{constructor(){super(...arguments),this.formControlController=new p(this,{assumeInteractionOn:["nile-blur","nile-input"]}),this.hasSlotController=new v(this,"help-text","label"),this.hasFocus=!1,this.displayLabel="",this.selectedOptions=[],this.oldValue="",this.scrolling=!1,this.name="",this.data=[],this.originalOptionItems=[],this.value="",this.defaultValue="",this.size="medium",this.placeholder="Select...",this.autoResize=!1,this.searchValue="",this.searchEnabled=!1,this.internalSearchPlaceHolder="Search...",this.disableLocalSearch=!1,this.optionsLoading=!1,this.loading=!1,this.multiple=!1,this.helpText="",this.errorMessage="",this.warning=!1,this.error=!1,this.success=!1,this.disabled=!1,this.clearable=!1,this.open=!1,this.hoist=!1,this.filled=!1,this.pill=!1,this.label="",this.placement="bottom",this.form="",this.required=!1,this.showNoResults=!1,this.noResultsMessage="No results found",this.showSelected=!1,this.blockValueChange=!1,this.noWidthSync=!1,this.maxOptionsVisible=3,this.oldMaxOptionsVisible=1,this.showListbox=!1,this.handleDocumentMouseDown=i=>{if(!this.open)return;const s=i.composedPath(),e=s.includes(this),o=this.popup&&s.includes(this.popup);e||o||this.hide()},this.handleWindowError=i=>{(i.error?.message||i.message||"").includes("Cannot read properties of null (reading 'insertBefore')")&&i.preventDefault()},this.resizeController=new x(this,{callback:i=>{for(const s of i)s.target.classList.contains("select__tags")&&this.calculateTotalWidthOfTags()}})}get validity(){return this.valueInput?.validity}get validationMessage(){return this.valueInput?.validationMessage??""}connectedCallback(){super.connectedCallback(),this.initializeComponent(),this.setupEventListeners(),this.updateComplete.then((()=>{this.value&&this.data.length>0&&this.selectionChanged()}))}disconnectedCallback(){this.removeOpenListeners(),this.scrollTimeout&&(clearTimeout(this.scrollTimeout),this.scrollTimeout=void 0)}updated(i){if(i.has("value")&&this.selectionChanged(),i.has("autoResize")){const i=this.shadowRoot?.querySelector(".select__tags");this.autoResize&&i?this.resizeController.observe(i):i&&this.resizeController.unobserve(i)}}initializeComponent(){this.open=!1,this.emit("nile-init")}getDisplayText(i){return this.renderItemConfig?.getDisplayText?this.renderItemConfig.getDisplayText(i):i?.label||i?.name||i?.toString()||""}getItemValue(i){return this.renderItemConfig?.getValue?this.renderItemConfig.getValue(i):i?.value||i}getSearchText(i){return this.renderItemConfig?.getSearchText?this.renderItemConfig.getSearchText(i):this.getDisplayText(i)}setupEventListeners(){this.handleDocumentFocusIn=this.handleDocumentFocusIn.bind(this),this.handleDocumentKeyDown=this.handleDocumentKeyDown.bind(this),this.handleDocumentMouseDown=this.handleDocumentMouseDown.bind(this),this.handleWindowError=this.handleWindowError.bind(this)}addOpenListeners(){document.addEventListener("focusin",this.handleDocumentFocusIn),document.addEventListener("keydown",this.handleDocumentKeyDown),document.addEventListener("mousedown",this.handleDocumentMouseDown),window.addEventListener("error",this.handleWindowError)}removeOpenListeners(){document.removeEventListener("focusin",this.handleDocumentFocusIn),document.removeEventListener("keydown",this.handleDocumentKeyDown),document.removeEventListener("mousedown",this.handleDocumentMouseDown),window.removeEventListener("error",this.handleWindowError)}handleFocus(){this.hasFocus=!0,this.emit("nile-focus")}handleBlur(){this.hasFocus=!1,this.emit("nile-blur")}handleDocumentFocusIn(i){if(!this.open)return;const s=i.composedPath(),e=s.includes(this),o=this.popup&&s.includes(this.popup);e||o||this.hide()}handleDocumentKeyDown(i){this.shouldIgnoreKeyPress(i)||(this.isEscapeKey(i)&&this.handleEscapeKey(i),this.isEnterOrSpaceKey(i)&&this.handleEnterOrSpaceKey(i))}shouldIgnoreKeyPress(i){const s=i.target,e=null!==s.closest(".select__clear"),o=null!==s.closest("nile-icon-button");return e||o}isEscapeKey(i){return"Escape"===i.key&&this.open}handleEscapeKey(i){i.preventDefault(),i.stopPropagation(),this.hide(),this.displayInput.focus({preventScroll:!0})}isEnterOrSpaceKey(i){return"Enter"===i.key||" "===i.key}handleEnterOrSpaceKey(i){i.preventDefault(),i.stopImmediatePropagation(),this.open?this.multiple||(this.hide(),this.displayInput.focus({preventScroll:!0})):this.show()}handleFooterClick(i){i.stopPropagation(),i.preventDefault()}toggleShowSelected(i){if(i.stopPropagation(),i.preventDefault(),0!==this.selectedOptions?.length){if(this.showSelected=!this.showSelected,this.showSelected){const i=Array.isArray(this.value)?this.value:[this.value];this.data=this.originalOptionItems.filter((s=>{const e=this.getItemValue(s);return i.some((i=>String(i)===String(e)))}))}else this.data=[...this.originalOptionItems];this.requestUpdate(),this.resetScrollPosition()}}unSelectAll(){this.showSelected=!1,this.value=this.multiple?[]:"",this.data=[...this.originalOptionItems],this.selectionChanged(),this.emit("nile-change",{value:this.value,name:this.name}),this.emit("nile-clear",{value:this.multiple?this.value:"",name:this.name}),this.resetScrollPosition()}handleLabelClick(){this.displayInput.focus(),this.hide()}handleComboboxMouseDown(i){this.shouldIgnoreComboboxClick(i)||(i.preventDefault(),this.displayInput.focus({preventScroll:!0}),this.open=!this.open)}shouldIgnoreComboboxClick(i){const s=i.composedPath().some((i=>i instanceof Element&&"nile-icon-button"===i.tagName.toLowerCase()));return this.disabled||s}handleComboboxKeyDown(i){this.isEnterOrSpaceKey(i)&&(i.preventDefault(),this.open=!this.open)}handleClearClick(i){i.stopPropagation(),this.clearSelection()}clearSelection(){this.value,this.value=this.multiple?[]:"",this.selectionChanged(),this.updateComplete.then((()=>{this.nileInput({value:this.value,name:this.name}),this.nileChange({value:this.value,name:this.name}),this.emit("nile-clear")}))}handleClearMouseDown(i){i.stopPropagation()}handleOptionClick(i){const s=i.target.closest("nile-option");if(this.shouldBlockValueChange(s))return;const e=this.value;this.oldValue=e,s&&!s.disabled&&this.handleOptionSelection(s)}shouldBlockValueChange(i){return!(!this.blockValueChange||!i)&&(this.emit("nile-block-change",{value:i?.value,name:this.name}),this.hide(),!0)}handleOptionSelection(i){const s=i.value;this.multiple?this.toggleOptionSelection(s):this.setSelectedOptions(s),this.updateComplete.then((()=>this.displayInput.focus({preventScroll:!0}))),this.value!==this.oldValue&&this.updateComplete.then((()=>{this.nileInput({value:this.value,name:this.name}),this.nileChange({value:this.value,name:this.name})})),this.multiple||(this.hide(),this.displayInput.focus({preventScroll:!0}))}setSelectedOptions(i){this.value=i,this.selectionChanged()}toggleOptionSelection(i){const s=Array.isArray(this.value)?this.value:[];s.includes(i)?this.value=s.filter((s=>s!==i)):this.value=[...s,i],this.selectionChanged()}handleTagRemove(i,s){i.stopPropagation(),this.disabled||(this.removeTagFromSelection(s),this.emitTagRemovalEvent(s))}removeTagFromSelection(i){let s=this.value;Array.isArray(s)||(s=s?[s]:[]);const e=s.filter((s=>s!==i.value));this.value=e,this.selectionChanged()}emitTagRemovalEvent(i){this.updateComplete.then((()=>{this.nileInput({value:this.value,name:this.name}),this.nileChange({value:this.value,name:this.name}),this.emit("nile-tag-remove",{value:this.value,name:this.name,removedtagvalue:i.value})}))}selectionChanged(){const i=this.originalOptionItems.length>0?this.originalOptionItems:this.data;if(this.selectedOptions=b.createVirtualOptionsFromValues(this.value,i,this.getDisplayText.bind(this),this.renderItemConfig?.getValue),this.multiple)this.placeholder&&0===this.value.length?this.displayLabel="":this.displayLabel=this.selectedOptions.length+" selected";else{const i=Array.isArray(this.value)?this.value[0]:this.value,s=this.selectedOptions[0]?.getTextLabel();this.displayLabel=s||(i??"")}this.updateValidity(),0===this.selectedOptions.length&&(this.showSelected=!1),this.calculateTotalWidthOfTags()}handleSearchFocus(){document.removeEventListener("keydown",this.handleDocumentKeyDown)}handleSearchBlur(){document.addEventListener("keydown",this.handleDocumentKeyDown)}handleSearchChange(i){this.searchValue=i.detail.value,this.emit("nile-search",{query:this.searchValue,name:this.name}),this.disableLocalSearch||(this.filterVirtualOptions(this.searchValue),this.resetScrollPosition(),this.updateComplete.then((()=>{const i=this.shadowRoot?.querySelector(".virtualized");i&&(this.data.length<=5?i.classList.add("no-scroll"):i.classList.remove("no-scroll"))})))}handleScroll(i){if(this.showSelected)return;const s=i.target;this.emit("nile-scroll",{scrollTop:s.scrollTop,scrollLeft:s.scrollLeft,name:this.name}),this.scrolling||(this.scrolling=!0,this.emit("nile-scroll-start",{scrollTop:s.scrollTop,scrollLeft:s.scrollLeft,name:this.name})),clearTimeout(this.scrollTimeout),this.scrollTimeout=window.setTimeout((()=>{this.scrolling&&(this.scrolling=!1)}),300);Math.ceil(s.scrollTop)>=Math.floor(s.scrollHeight-s.offsetHeight)&&!this.searchValue&&this.emit("nile-scroll-end",{scrollTop:s.scrollTop,scrollLeft:s.scrollLeft,name:this.name,isAtBottom:!0})}filterVirtualOptions(i){const s=y.filterVirtualOptions(i,this.originalOptionItems,this.data,this.getDisplayText.bind(this),this.renderItemConfig?.getSearchText);this.data=s.filteredItems,this.showNoResults=s.showNoResults,this.showSelected=!1,this.requestUpdate()}handleInvalid(i){this.formControlController.setValidity(!1),this.formControlController.emitInvalidEvent(i)}handleDisabledChange(){this.disabled&&(this.open=!1,this.handleOpenChange())}handleValueChange(){this.selectionChanged(),this.requestUpdate()}handleDataChange(){this.data.length>0&&this.open&&!this.showSelected&&!this.searchValue&&(this.originalOptionItems=[...this.data]),this.selectionChanged(),this.optionsLoading||this.loading||0!==this.data.length?this.data.length>0&&(this.showNoResults=!1):this.showNoResults=!0,this.requestUpdate()}handleRenderItemConfigChange(){this.value&&this.data.length>0&&(this.selectionChanged(),this.requestUpdate())}handleOptionsLoadingChange(){this.optionsLoading||0!==this.data.length||(this.showNoResults=!0),this.requestUpdate()}async handleOpenChange(){this.open&&!this.disabled?(await this.handleOpen(),this.showListbox=!0):(await this.handleClose(),this.showListbox=!1)}async handleOpen(){this.emit("nile-show",{value:this.value,name:this.name}),this.addOpenListeners(),this.showNoResults=!this.data?.length,await l(this),this.popup.active=!0;const{keyframes:i,options:s}=g(this,"select.show",{dir:"ltr"});await r(this.popup.popup,i,s),this.initializeOriginalItems(),this.filterVirtualOptions(this.searchValue),this.resetScrollPosition(),this.emit("nile-after-show",{value:this.value,name:this.name})}async handleClose(){this.emit("nile-hide",{value:this.value,name:this.name}),this.removeOpenListeners(),await l(this);const{keyframes:i,options:s}=g(this,"select.hide",{dir:"ltr"});await r(this.popup.popup,i,s),this.popup.active=!1,this.searchValue="",this.emit("nile-after-hide",{value:this.value,name:this.name})}initializeOriginalItems(){this.data.length>0&&(this.originalOptionItems=[...this.data])}async show(){if(!this.open&&!this.disabled)return this.open=!0,j(this,"nile-after-show");this.open=!1}async hide(){if(this.open&&!this.disabled)return this.open=!1,j(this,"nile-after-hide");this.open=!1}checkValidity(){return this.valueInput.checkValidity()}getForm(){return this.formControlController.getForm()}reportValidity(){return this.valueInput.reportValidity()}setCustomValidity(i){this.valueInput.setCustomValidity(i),this.formControlController.updateValidity()}focus(i){this.displayInput.focus(i)}blur(){this.displayInput.blur()}onInputChange(i){i.stopPropagation()}render(){const i=this.hasSlotController.test("label");this.hasSlotController.test("help-text");const e=this.hasSlotController.test("label-suffix"),o=this.hasSlotController.test("custom-select"),n=!!this.label||!!i,t=this.clearable&&!this.disabled&&this.value.length>0,c=!!this.placeholder&&0===this.value.length,l=!!this.helpText,r=!!this.errorMessage;return s`
2
7
  <div
3
8
  part="form-control"
4
9
  class=${m({"form-control":!0,"form-control--small":"small"===this.size,"form-control--medium":"medium"===this.size,"form-control--large":"large"===this.size,"form-control--has-label":n,"form-control--has-help-text":l})}
@@ -37,7 +42,7 @@ import{__decorate as i}from"tslib";import{html as s}from"lit";import{query as e,
37
42
  >
38
43
  ${this.renderCustomSelect(i)}
39
44
  ${this.renderCombobox(i,e)}
40
- ${this.renderListbox()}
45
+ ${this.showListbox?this.renderListbox():s``}
41
46
  </nile-popup>
42
47
  `}renderCustomSelect(i){return i?s`<slot
43
48
  slot="anchor"
@@ -184,17 +189,21 @@ import{__decorate as i}from"tslib";import{html as s}from"lit";import{query as e,
184
189
  <nile-icon name="search" slot="suffix"> </nile-icon>
185
190
  </nile-input>
186
191
  </div>
187
- `:s``}renderLoader(){return this.optionsLoading?s`
188
- <span part="loader" class="select__loader">
189
- <nile-icon
190
- class="select__loader--icon"
191
- name="button-loading-blue"
192
- ></nile-icon>
193
- </span>
194
- `:s``}renderFooter(){return this.multiple?s`
192
+ `:s``}renderLoader(){return this.loading?s`
193
+ <span part="loader" class="virtual-select-loader">
194
+ <nile-loader size="sm"></nile-loader>
195
+ </span>
196
+ `:this.optionsLoading?s`
197
+ <span part="loader" class="select__loader">
198
+ <nile-icon
199
+ class="select__loader--icon"
200
+ name="button-loading-blue"
201
+ ></nile-icon>
202
+ </span>
203
+ `:s``}renderFooter(){return this.multiple?s`
195
204
  <div
196
205
  part="footer"
197
- class="select__footer"
206
+ class="select__footer ${this.loading?"loading":""}"
198
207
  @click="${this.handleFooterClick}"
199
208
  >
200
209
  <span
@@ -224,4 +233,4 @@ import{__decorate as i}from"tslib";import{html as s}from"lit";import{query as e,
224
233
  >${this.errorMessage}</nile-form-error-message
225
234
  >
226
235
  `:""}
227
- `}getVirtualizedContent(){return w.getVirtualizedContent(this.data,this.searchEnabled,this.getDisplayText.bind(this),this.value,this.multiple,this.renderItemConfig?.getDisplayText,this.renderItemConfig?.getValue,this.showNoResults,this.noResultsMessage,this.optionsLoading)}nileInput(i){this.emit("nile-input",i)}nileChange(i){this.emit("nile-change",i)}updateValidity(){this.updateComplete.then((()=>{this.formControlController.updateValidity()}))}calculateWidthOfSelectTagsDiv(){if(this.shadowRoot){const i=this.shadowRoot.querySelector(".select__tags");if(i){return i.offsetWidth-70}}return null}calculateTotalWidthOfTags(){this.maxOptionsVisible!==1/0&&(this.oldMaxOptionsVisible=this.maxOptionsVisible),this.maxOptionsVisible=1/0,setTimeout((()=>{let i=[];if(this.shadowRoot){this.shadowRoot.querySelectorAll("nile-tag").forEach((s=>{s instanceof HTMLElement&&i.push(s.offsetWidth)}))}if(this.value.length!==i.length)return;const s=this.calculateWidthOfSelectTagsDiv();if(!s)return;let e=0,o=0;for(let n=0;n<i.length;n++)if(e+=i[n],e>s){o=n;break}this.maxOptionsVisible=o}),1)}resetScrollPosition(){this.updateComplete.then((()=>{if(this.virtualizedContainer){this.virtualizedContainer.scrollTop=0;const i=this.shadowRoot?.querySelector(".select__listbox");i&&(i.scrollTop=0);const s=this.virtualizedContainer.querySelector("lit-virtualizer");s&&(s.scrollTop=0)}}))}};x.styles=c,i([e(".select")],x.prototype,"popup",void 0),i([e(".select__display-input")],x.prototype,"displayInput",void 0),i([e(".select__value-input")],x.prototype,"valueInput",void 0),i([e(".virtualized")],x.prototype,"virtualizedContainer",void 0),i([o()],x.prototype,"hasFocus",void 0),i([o()],x.prototype,"displayLabel",void 0),i([o()],x.prototype,"selectedOptions",void 0),i([o()],x.prototype,"oldValue",void 0),i([n()],x.prototype,"name",void 0),i([n({type:Array})],x.prototype,"data",void 0),i([o()],x.prototype,"originalOptionItems",void 0),i([n({converter:{fromAttribute:i=>i.split(" "),toAttribute:i=>i.join(" ")}})],x.prototype,"value",void 0),i([a()],x.prototype,"defaultValue",void 0),i([n()],x.prototype,"size",void 0),i([n()],x.prototype,"placeholder",void 0),i([o()],x.prototype,"searchValue",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"searchEnabled",void 0),i([n({attribute:"internal-search-placeholder"})],x.prototype,"internalSearchPlaceHolder",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"disableLocalSearch",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"optionsLoading",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"multiple",void 0),i([n({attribute:"help-text",reflect:!0})],x.prototype,"helpText",void 0),i([n({attribute:"error-message",reflect:!0})],x.prototype,"errorMessage",void 0),i([n({type:Boolean})],x.prototype,"warning",void 0),i([n({type:Boolean})],x.prototype,"error",void 0),i([n({type:Boolean})],x.prototype,"success",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"disabled",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"clearable",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"open",void 0),i([n({type:Boolean})],x.prototype,"hoist",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"filled",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"pill",void 0),i([n()],x.prototype,"label",void 0),i([n({reflect:!0})],x.prototype,"placement",void 0),i([n({reflect:!0})],x.prototype,"form",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"required",void 0),i([n({type:Boolean})],x.prototype,"showNoResults",void 0),i([n({type:String})],x.prototype,"noResultsMessage",void 0),i([n({type:Boolean})],x.prototype,"showSelected",void 0),i([n({attribute:!1})],x.prototype,"renderItemConfig",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"blockValueChange",void 0),i([n({type:Boolean,reflect:!0})],x.prototype,"noWidthSync",void 0),i([n({attribute:"max-options-visible",type:Number})],x.prototype,"maxOptionsVisible",void 0),i([o()],x.prototype,"oldMaxOptionsVisible",void 0),i([d("disabled",{waitUntilFirstUpdate:!0})],x.prototype,"handleDisabledChange",null),i([d("value",{waitUntilFirstUpdate:!0})],x.prototype,"handleValueChange",null),i([d("data",{waitUntilFirstUpdate:!0})],x.prototype,"handleDataChange",null),i([d("renderItemConfig",{waitUntilFirstUpdate:!0})],x.prototype,"handleRenderItemConfigChange",null),i([d("optionsLoading",{waitUntilFirstUpdate:!0})],x.prototype,"handleOptionsLoadingChange",null),i([d("open",{waitUntilFirstUpdate:!0})],x.prototype,"handleOpenChange",null),x=i([t("nile-virtual-select")],x),h("select.show",{keyframes:[{opacity:0,scale:.9},{opacity:1,scale:1}],options:{duration:100,easing:"ease"}}),h("select.hide",{keyframes:[{opacity:1,scale:1},{opacity:0,scale:.9}],options:{duration:100,easing:"ease"}});export{x as N};
236
+ `}getVirtualizedContent(){return w.getVirtualizedContent(this.data,this.searchEnabled,this.getDisplayText.bind(this),this.value,this.multiple,this.renderItemConfig?.getDisplayText,this.renderItemConfig?.getValue,this.showNoResults,this.noResultsMessage,this.optionsLoading||this.loading,this.handleScroll.bind(this))}nileInput(i){this.emit("nile-input",i)}nileChange(i){this.emit("nile-change",i)}updateValidity(){this.updateComplete.then((()=>{this.formControlController.updateValidity()}))}calculateWidthOfSelectTagsDiv(){if(this.shadowRoot){const i=this.shadowRoot.querySelector(".select__tags");if(i){return i.offsetWidth-70}}return null}calculateTotalWidthOfTags(){this.maxOptionsVisible!==1/0&&(this.oldMaxOptionsVisible=this.maxOptionsVisible),this.maxOptionsVisible=1/0,setTimeout((()=>{let i=[];if(this.shadowRoot){this.shadowRoot.querySelectorAll("nile-tag").forEach((s=>{s instanceof HTMLElement&&i.push(s.offsetWidth)}))}if(this.value.length!==i.length)return;const s=this.calculateWidthOfSelectTagsDiv();if(!s)return;let e=0,o=0;for(let n=0;n<i.length;n++)if(e+=i[n],e>s){o=n;break}this.maxOptionsVisible=o}),1)}resetScrollPosition(){this.updateComplete.then((()=>{if(this.virtualizedContainer&&this.virtualizedContainer.isConnected){this.virtualizedContainer.scrollTop=0;const i=this.shadowRoot?.querySelector(".select__listbox");i&&i.isConnected&&(i.scrollTop=0);const s=this.virtualizedContainer.querySelector("lit-virtualizer");s&&s.isConnected&&(s.scrollTop=0)}}))}};_.styles=c,i([e(".select")],_.prototype,"popup",void 0),i([e(".select__display-input")],_.prototype,"displayInput",void 0),i([e(".select__value-input")],_.prototype,"valueInput",void 0),i([e(".virtualized")],_.prototype,"virtualizedContainer",void 0),i([o()],_.prototype,"hasFocus",void 0),i([o()],_.prototype,"displayLabel",void 0),i([o()],_.prototype,"selectedOptions",void 0),i([o()],_.prototype,"oldValue",void 0),i([n()],_.prototype,"name",void 0),i([n({type:Array})],_.prototype,"data",void 0),i([o()],_.prototype,"originalOptionItems",void 0),i([n({converter:{fromAttribute:i=>i.split(" "),toAttribute:i=>i.join(" ")}})],_.prototype,"value",void 0),i([a()],_.prototype,"defaultValue",void 0),i([n()],_.prototype,"size",void 0),i([n()],_.prototype,"placeholder",void 0),i([n({type:Boolean})],_.prototype,"autoResize",void 0),i([o()],_.prototype,"searchValue",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"searchEnabled",void 0),i([n({attribute:"internal-search-placeholder"})],_.prototype,"internalSearchPlaceHolder",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"disableLocalSearch",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"optionsLoading",void 0),i([n({type:Boolean,reflect:!0,attribute:!0})],_.prototype,"loading",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"multiple",void 0),i([n({attribute:"help-text",reflect:!0})],_.prototype,"helpText",void 0),i([n({attribute:"error-message",reflect:!0})],_.prototype,"errorMessage",void 0),i([n({type:Boolean})],_.prototype,"warning",void 0),i([n({type:Boolean})],_.prototype,"error",void 0),i([n({type:Boolean})],_.prototype,"success",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"disabled",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"clearable",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"open",void 0),i([n({type:Boolean})],_.prototype,"hoist",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"filled",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"pill",void 0),i([n()],_.prototype,"label",void 0),i([n({reflect:!0})],_.prototype,"placement",void 0),i([n({reflect:!0})],_.prototype,"form",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"required",void 0),i([n({type:Boolean})],_.prototype,"showNoResults",void 0),i([n({type:String})],_.prototype,"noResultsMessage",void 0),i([n({type:Boolean})],_.prototype,"showSelected",void 0),i([n({attribute:!1})],_.prototype,"renderItemConfig",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"blockValueChange",void 0),i([n({type:Boolean,reflect:!0})],_.prototype,"noWidthSync",void 0),i([n({attribute:"max-options-visible",type:Number})],_.prototype,"maxOptionsVisible",void 0),i([o()],_.prototype,"oldMaxOptionsVisible",void 0),i([o()],_.prototype,"showListbox",void 0),i([d("disabled",{waitUntilFirstUpdate:!0})],_.prototype,"handleDisabledChange",null),i([d("value",{waitUntilFirstUpdate:!0})],_.prototype,"handleValueChange",null),i([d("data",{waitUntilFirstUpdate:!0})],_.prototype,"handleDataChange",null),i([d("renderItemConfig",{waitUntilFirstUpdate:!0})],_.prototype,"handleRenderItemConfigChange",null),i([d("optionsLoading",{waitUntilFirstUpdate:!0})],_.prototype,"handleOptionsLoadingChange",null),i([d("open",{waitUntilFirstUpdate:!0})],_.prototype,"handleOpenChange",null),_=i([t("nile-virtual-select")],_),h("select.show",{keyframes:[{opacity:0,scale:.9},{opacity:1,scale:1}],options:{duration:100,easing:"ease"}}),h("select.hide",{keyframes:[{opacity:1,scale:1},{opacity:0,scale:.9}],options:{duration:100,easing:"ease"}});export{_ as N,x as t};
@@ -1,2 +1,2 @@
1
- System.register(["lit","../virtualize-eb33a9a0.cjs.js","lit/directives/unsafe-html.js","lit/directives/if-defined.js","lit/directive.js","lit/async-directive.js","lit/directives/repeat.js"],function(_export,_context){"use strict";var t,e,i,s,_templateObject,_templateObject2,_templateObject3,_templateObject4,_templateObject5,_templateObject6,r;function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}));}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}return{setters:[function(_lit){t=_lit.html;},function(_virtualize001CjsJs){e=_virtualize001CjsJs.v;},function(_litDirectivesUnsafeHtmlJs){i=_litDirectivesUnsafeHtmlJs.unsafeHTML;},function(_litDirectivesIfDefinedJs){s=_litDirectivesIfDefinedJs.ifDefined;},function(_litDirectiveJs){},function(_litAsyncDirectiveJs){},function(_litDirectivesRepeatJs){}],execute:function execute(){_export("V",r=/*#__PURE__*/function(){function r(){_classCallCheck(this,r);}return _createClass(r,null,[{key:"getVirtualizedContent",value:function getVirtualizedContent(i,s,l,o,a,c,d,n,p,v){return t(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n <div part=\"select-options\" class=\"select__options ","\">\n ","\n </div>"])),s?"select__options__search-enabled":"",n&&!v?t(_templateObject2||(_templateObject2=_taggedTemplateLiteral(["\n <div part=\"select-no-results\" class=\"select__no-results\">\n ","\n </div>\n "])),p||"No results found"):t(_templateObject3||(_templateObject3=_taggedTemplateLiteral(["\n <div\n class=\"virtualized\"\n part=\"virtualized\"\n >\n ","\n </div>\n "])),r.shouldUseVirtualizer(i)?t(_templateObject4||(_templateObject4=_taggedTemplateLiteral(["\n ","\n "])),e({items:i,renderItem:function renderItem(t){return r.getItemRenderFunction(t,l,o,a,c,d);},scroller:!0})):t(_templateObject5||(_templateObject5=_taggedTemplateLiteral(["\n ","\n "])),i.map(function(t){return r.getItemRenderFunction(t,l,o,a,c,d);}))));}},{key:"getItemRenderFunction",value:function getItemRenderFunction(e,_r,l,o,a,c){var d=a||_r,n=c||function(t){return(t===null||t===void 0?void 0:t.value)||t;},p=n(e),v=d(e),u=e.disabled||!1,m=e.className;var $=!1;return $=o?Array.isArray(l)&&l.includes(p):(Array.isArray(l)?l[0]:l)===p,t(_templateObject6||(_templateObject6=_taggedTemplateLiteral(["\n <nile-option \n value="," \n .selected="," \n .disabled=","\n .showCheckbox=","\n class=","\n >\n ","\n </nile-option>\n "])),p,$,u,o,s(m||void 0),i(v));}},{key:"shouldUseVirtualizer",value:function shouldUseVirtualizer(t){return t.length>=50;}}]);}());}};});
1
+ System.register(["lit","../virtualize-eb33a9a0.cjs.js","lit/directives/unsafe-html.js","lit/directives/if-defined.js","lit/directive.js","lit/async-directive.js","lit/directives/repeat.js"],function(_export,_context){"use strict";var t,e,i,s,_templateObject,_templateObject2,_templateObject3,_templateObject4,_templateObject5,_templateObject6,r;function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}));}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}return{setters:[function(_lit){t=_lit.html;},function(_virtualize001CjsJs){e=_virtualize001CjsJs.v;},function(_litDirectivesUnsafeHtmlJs){i=_litDirectivesUnsafeHtmlJs.unsafeHTML;},function(_litDirectivesIfDefinedJs){s=_litDirectivesIfDefinedJs.ifDefined;},function(_litDirectiveJs){},function(_litAsyncDirectiveJs){},function(_litDirectivesRepeatJs){}],execute:function execute(){_export("V",r=/*#__PURE__*/function(){function r(){_classCallCheck(this,r);}return _createClass(r,null,[{key:"getVirtualizedContent",value:function getVirtualizedContent(i,s,l,o,a,c,n,d,p,v,u){return t(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n <div part=\"select-options\" class=\"select__options "," ","\">\n ","\n </div>"])),s?"select__options__search-enabled":"",v?"loading":"",d&&!v?t(_templateObject2||(_templateObject2=_taggedTemplateLiteral(["\n <div part=\"select-no-results\" class=\"select__no-results\">\n ","\n </div>\n "])),p||"No results found"):t(_templateObject3||(_templateObject3=_taggedTemplateLiteral(["\n <div\n class=\"virtualized\"\n part=\"virtualized\"\n @scroll=","\n >\n ","\n </div>\n "])),u,r.shouldUseVirtualizer(i)?t(_templateObject4||(_templateObject4=_taggedTemplateLiteral(["\n ","\n "])),e({items:i,renderItem:function renderItem(t){return r.getItemRenderFunction(t,l,o,a,c,n);},scroller:!0})):t(_templateObject5||(_templateObject5=_taggedTemplateLiteral(["\n ","\n "])),i.map(function(t){return r.getItemRenderFunction(t,l,o,a,c,n);}))));}},{key:"getItemRenderFunction",value:function getItemRenderFunction(e,_r,l,o,a,c){var n=a||_r,d=c||function(t){return(t===null||t===void 0?void 0:t.value)||t;},p=d(e),v=n(e),u=(e===null||e===void 0?void 0:e.disabled)||!1,m=e===null||e===void 0?void 0:e.className;var $=!1;return $=o?Array.isArray(l)&&l.some(function(t){return String(t)===String(p);}):(Array.isArray(l)?l[0]:l)===p,t(_templateObject6||(_templateObject6=_taggedTemplateLiteral(["\n <nile-option \n value="," \n .selected="," \n .disabled=","\n .showCheckbox=","\n class=","\n >\n ","\n </nile-option>\n "])),p,$,u,o,s(m||void 0),i(v));}},{key:"shouldUseVirtualizer",value:function shouldUseVirtualizer(t){return t.length>=5;}}]);}());}};});
2
2
  //# sourceMappingURL=renderer.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.cjs.js","sources":["../../../src/nile-virtual-select/renderer.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2025\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 { html, type TemplateResult } from 'lit';\nimport { virtualize } from '@lit-labs/virtualizer/virtualize.js';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\n\nexport class VirtualSelectRenderer {\n static getVirtualizedContent(\n data: any[], \n searchEnabled: boolean, \n renderItemFunction: (item: any) => string,\n value: string | string[],\n multiple: boolean,\n getDisplayText?: (item: any) => string,\n getItemValue?: (item: any) => string,\n showNoResults?: boolean,\n noResultsMessage?: string,\n optionsLoading?: boolean\n ): TemplateResult {\n return html`\n <div part=\"select-options\" class=\"select__options ${\n searchEnabled ? 'select__options__search-enabled' : ``\n }\">\n ${showNoResults && !optionsLoading\n ? html`\n <div part=\"select-no-results\" class=\"select__no-results\">\n ${noResultsMessage || 'No results found'}\n </div>\n `\n : html`\n <div\n class=\"virtualized\"\n part=\"virtualized\"\n >\n ${VirtualSelectRenderer.shouldUseVirtualizer(data)\n ? html`\n ${virtualize({\n items: data,\n renderItem: (item: any): TemplateResult =>\n VirtualSelectRenderer.getItemRenderFunction(item, renderItemFunction, value, multiple, getDisplayText, getItemValue),\n scroller: true,\n })}\n `\n : html`\n ${data.map((item: any) => \n VirtualSelectRenderer.getItemRenderFunction(item, renderItemFunction, value, multiple, getDisplayText, getItemValue)\n )}\n `}\n </div>\n `}\n </div>`;\n }\n\n static getItemRenderFunction(\n item: any, \n renderItemFunction: (item: any) => string, \n value: string | string[], \n multiple: boolean,\n getDisplayText?: (item: any) => string,\n getItemValue?: (item: any) => string\n ): TemplateResult {\n const displayTextFn = getDisplayText || renderItemFunction;\n const valueFn = getItemValue || ((item: any) => item?.value || item);\n \n const optionValue = valueFn(item);\n const displayText = displayTextFn(item);\n const isDisabled = item.disabled || false;\n const className = item.className;\n \n let isSelected = false;\n if (multiple) {\n isSelected = Array.isArray(value) && value.includes(optionValue);\n } else {\n isSelected = (Array.isArray(value) ? value[0] : value) === optionValue;\n }\n \n return html`\n <nile-option \n value=${optionValue} \n .selected=${isSelected} \n .disabled=${isDisabled}\n .showCheckbox=${multiple}\n class=${ifDefined(className || undefined)}\n >\n ${unsafeHTML(displayText)}\n </nile-option>\n `;\n }\n\n /**\n * Determines whether to use virtualizer based on dataset size\n * For small datasets (less than 50 items), use regular rendering for better sizing\n */\n private static shouldUseVirtualizer(data: any[]): boolean {\n return data.length >= 50;\n }\n} \n"],"names":["VirtualSelectRenderer","static","data","searchEnabled","renderItemFunction","value","multiple","getDisplayText","getItemValue","showNoResults","noResultsMessage","optionsLoading","html","_templateObject","_taggedTemplateLiteral","_templateObject2","_templateObject3","shouldUseVirtualizer","_templateObject4","virtualize","items","renderItem","item","getItemRenderFunction","scroller","_templateObject5","map","displayTextFn","valueFn","optionValue","displayText","isDisabled","disabled","className","isSelected","Array","isArray","includes","_templateObject6","ifDefined","undefined","unsafeHTML","length"],"mappings":"47DAYaA,CAAAA,kCAAAA,EAAAA,EAAAA,eAAAA,MAAAA,CAAAA,UAAAA,YAAAA,CAAAA,CAAAA,QAAAA,GAAAA,yBAAAA,KAAAA,CACXC,+BACEC,CACAC,CAAAA,CAAAA,CACAC,CACAC,CAAAA,CAAAA,CACAC,CACAC,CAAAA,CAAAA,CACAC,EACAC,CACAC,CAAAA,CAAAA,CACAC,CAEA,CAAA,CAAA,MAAOC,CAAAA,CAAI,CAAAC,eAAA,GAAAA,eAAA,CAAAC,sBAAA,sGAEPX,CAAAA,CAAgB,iCAAoC,CAAA,EAAA,CAElDM,CAAAA,EAAAA,CAAkBE,EAChBC,CAAI,CAAAG,gBAAA,GAAAA,gBAAA,CAAAD,sBAAA,8IAEEJ,CAAoB,EAAA,kBAAA,EAG1BE,CAAI,CAAAI,gBAAA,GAAAA,gBAAA,CAAAF,sBAAA,mLAKEd,CAAsBiB,CAAAA,oBAAAA,CAAqBf,GACzCU,CAAI,CAAAM,gBAAA,GAAAA,gBAAA,CAAAJ,sBAAA,yDACAK,CAAAA,CAAW,CACXC,KAAAA,CAAOlB,CACPmB,CAAAA,UAAAA,CAAaC,QAAbD,CAAAA,UAAAA,CAAaC,CACXtB,QAAAA,CAAAA,CAAAA,CAAsBuB,qBAAsBD,CAAAA,CAAAA,CAAMlB,CAAoBC,CAAAA,CAAAA,CAAOC,CAAUC,CAAAA,CAAAA,CAAgBC,KACzGgB,QAAU,CAAA,CAAA,CAAA,CAAA,CAAA,EAGdZ,CAAI,CAAAa,gBAAA,GAAAA,gBAAA,CAAAX,sBAAA,yDACAZ,CAAKwB,CAAAA,GAAAA,CAAKJ,SAAAA,SACVtB,CAAAA,CAAsBuB,CAAAA,qBAAAA,CAAsBD,EAAMlB,CAAoBC,CAAAA,CAAAA,CAAOC,EAAUC,CAAgBC,CAAAA,CAAAA,CAAAA,EAAAA,CAAAA,IAM5H,CAEDP,GAAAA,GAAAA,yBAAAA,KAAAA,SAAAA,CAAAA,qBAAAA,CACEqB,EACAlB,EACAC,CAAAA,CAAAA,CACAC,EACAC,CACAC,CAAAA,CAAAA,CAAAA,CAEA,GAAMmB,CAAAA,CAAAA,CAAgBpB,CAAkBH,EAAAA,EAAAA,CAClCwB,EAAUpB,GAAkBc,SAAAA,CAAcA,QAAAA,CAAAA,CAAAA,SAAAA,CAAAA,iBAAAA,CAAAA,CAAMjB,KAASiB,GAAAA,CAAAA,EAAAA,CAEzDO,EAAcD,CAAQN,CAAAA,CAAAA,CAAAA,CACtBQ,CAAcH,CAAAA,CAAAA,CAAcL,CAC5BS,CAAAA,CAAAA,CAAAA,CAAaT,EAAKU,QAAY,EAAA,CAAA,CAAA,CAC9BC,EAAYX,CAAKW,CAAAA,SAAAA,CAEvB,GAAIC,CAAAA,CAAa,CAAA,CAAA,CAAA,CAOjB,MALEA,CAAAA,CAAAA,CADE5B,CACW6B,CAAAA,KAAAA,CAAMC,QAAQ/B,CAAUA,CAAAA,EAAAA,CAAAA,CAAMgC,QAASR,CAAAA,CAAAA,CAAAA,CAAAA,CAEtCM,KAAMC,CAAAA,OAAAA,CAAQ/B,GAASA,CAAM,CAAA,CAAA,CAAA,CAAKA,CAAWwB,IAAAA,CAAAA,CAGtDjB,CAAI,CAAA0B,gBAAA,GAAAA,gBAAA,CAAAxB,sBAAA,gMAECe,CAAAA,CACIK,CAAAA,CACAH,CAAAA,CACIzB,CAAAA,CACRiC,CAAAA,CAAUN,CAAaO,EAAAA,IAAAA,EAAAA,CAAAA,CAE7BC,CAAWX,CAAAA,CAAAA,CAAAA,CAGlB,EAMO7B,GAAAA,GAAAA,wBAAAA,KAAAA,+BAA4BC,CAClC,CAAA,CAAA,MAAOA,CAAAA,CAAKwC,CAAAA,MAAAA,EAAU,EACvB"}
1
+ {"version":3,"file":"renderer.cjs.js","sources":["../../../src/nile-virtual-select/renderer.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2025\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 { html, type TemplateResult } from 'lit';\nimport { virtualize } from '@lit-labs/virtualizer/virtualize.js';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\n\nexport class VirtualSelectRenderer {\n static getVirtualizedContent(\n data: any[], \n searchEnabled: boolean, \n renderItemFunction: (item: any) => string,\n value: string | string[],\n multiple: boolean,\n getDisplayText?: (item: any) => string,\n getItemValue?: (item: any) => string,\n showNoResults?: boolean,\n noResultsMessage?: string,\n loading?: boolean,\n onScroll?: (e: Event) => void\n ): TemplateResult {\n return html`\n <div part=\"select-options\" class=\"select__options ${\n searchEnabled ? 'select__options__search-enabled' : ``\n } ${loading ? 'loading' : ''}\">\n ${showNoResults && !loading\n ? html`\n <div part=\"select-no-results\" class=\"select__no-results\">\n ${noResultsMessage || 'No results found'}\n </div>\n `\n : html`\n <div\n class=\"virtualized\"\n part=\"virtualized\"\n @scroll=${onScroll}\n >\n ${VirtualSelectRenderer.shouldUseVirtualizer(data)\n ? html`\n ${virtualize({\n items: data,\n renderItem: (item: any): TemplateResult =>\n VirtualSelectRenderer.getItemRenderFunction(item, renderItemFunction, value, multiple, getDisplayText, getItemValue),\n scroller: true,\n })}\n `\n : html`\n ${data.map((item: any) => \n VirtualSelectRenderer.getItemRenderFunction(item, renderItemFunction, value, multiple, getDisplayText, getItemValue)\n )}\n `}\n </div>\n `}\n </div>`;\n }\n\n static getItemRenderFunction(\n item: any, \n renderItemFunction: (item: any) => string, \n value: string | string[], \n multiple: boolean,\n getDisplayText?: (item: any) => string,\n getItemValue?: (item: any) => string\n ): TemplateResult {\n const displayTextFn = getDisplayText || renderItemFunction;\n const valueFn = getItemValue || ((item: any) => item?.value || item);\n \n const optionValue = valueFn(item);\n const displayText = displayTextFn(item);\n const isDisabled = item?.disabled || false;\n const className = item?.className;\n \n let isSelected = false;\n if (multiple) {\n isSelected = Array.isArray(value) && value.some(v => String(v) === String(optionValue));\n } else {\n isSelected = (Array.isArray(value) ? value[0] : value) === optionValue;\n }\n \n return html`\n <nile-option \n value=${optionValue} \n .selected=${isSelected} \n .disabled=${isDisabled}\n .showCheckbox=${multiple}\n class=${ifDefined(className || undefined)}\n >\n ${unsafeHTML(displayText)}\n </nile-option>\n `;\n }\n\n /**\n * Determines whether to use virtualizer based on dataset size\n * For small datasets (less than 5 items), use regular rendering for better sizing\n */\n private static shouldUseVirtualizer(data: any[]): boolean {\n return data.length >= 5;\n }\n} \n"],"names":["VirtualSelectRenderer","static","data","searchEnabled","renderItemFunction","value","multiple","getDisplayText","getItemValue","showNoResults","noResultsMessage","loading","onScroll","html","_templateObject","_taggedTemplateLiteral","_templateObject2","_templateObject3","shouldUseVirtualizer","_templateObject4","virtualize","items","renderItem","item","getItemRenderFunction","scroller","_templateObject5","map","displayTextFn","valueFn","optionValue","displayText","isDisabled","disabled","className","isSelected","Array","isArray","some","v","String","_templateObject6","ifDefined","undefined","unsafeHTML","length"],"mappings":"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"}
@@ -1,22 +1,23 @@
1
- import{html as e}from"lit";import{v as t}from"../virtualize-73f68d08.esm.js";import{unsafeHTML as i}from"lit/directives/unsafe-html.js";import{ifDefined as s}from"lit/directives/if-defined.js";import"lit/directive.js";import"lit/async-directive.js";import"lit/directives/repeat.js";class r{static getVirtualizedContent(i,s,l,o,a,c,d,n,p,v){return e`
2
- <div part="select-options" class="select__options ${s?"select__options__search-enabled":""}">
3
- ${n&&!v?e`
1
+ import{html as t}from"lit";import{v as e}from"../virtualize-73f68d08.esm.js";import{unsafeHTML as i}from"lit/directives/unsafe-html.js";import{ifDefined as s}from"lit/directives/if-defined.js";import"lit/directive.js";import"lit/async-directive.js";import"lit/directives/repeat.js";class r{static getVirtualizedContent(i,s,l,o,a,n,c,d,p,v,m){return t`
2
+ <div part="select-options" class="select__options ${s?"select__options__search-enabled":""} ${v?"loading":""}">
3
+ ${d&&!v?t`
4
4
  <div part="select-no-results" class="select__no-results">
5
5
  ${p||"No results found"}
6
6
  </div>
7
- `:e`
7
+ `:t`
8
8
  <div
9
9
  class="virtualized"
10
10
  part="virtualized"
11
+ @scroll=${m}
11
12
  >
12
- ${r.shouldUseVirtualizer(i)?e`
13
- ${t({items:i,renderItem:e=>r.getItemRenderFunction(e,l,o,a,c,d),scroller:!0})}
14
- `:e`
15
- ${i.map((e=>r.getItemRenderFunction(e,l,o,a,c,d)))}
13
+ ${r.shouldUseVirtualizer(i)?t`
14
+ ${e({items:i,renderItem:t=>r.getItemRenderFunction(t,l,o,a,n,c),scroller:!0})}
15
+ `:t`
16
+ ${i.map((t=>r.getItemRenderFunction(t,l,o,a,n,c)))}
16
17
  `}
17
18
  </div>
18
19
  `}
19
- </div>`}static getItemRenderFunction(t,r,l,o,a,c){const d=a||r,n=c||(e=>e?.value||e),p=n(t),v=d(t),m=t.disabled||!1,u=t.className;let $=!1;return $=o?Array.isArray(l)&&l.includes(p):(Array.isArray(l)?l[0]:l)===p,e`
20
+ </div>`}static getItemRenderFunction(e,r,l,o,a,n){const c=a||r,d=n||(t=>t?.value||t),p=d(e),v=c(e),m=e?.disabled||!1,u=e?.className;let $=!1;return $=o?Array.isArray(l)&&l.some((t=>String(t)===String(p))):(Array.isArray(l)?l[0]:l)===p,t`
20
21
  <nile-option
21
22
  value=${p}
22
23
  .selected=${$}
@@ -26,4 +27,4 @@ import{html as e}from"lit";import{v as t}from"../virtualize-73f68d08.esm.js";imp
26
27
  >
27
28
  ${i(v)}
28
29
  </nile-option>
29
- `}static shouldUseVirtualizer(e){return e.length>=50}}export{r as V};
30
+ `}static shouldUseVirtualizer(t){return t.length>=5}}export{r as V};
@@ -1,2 +1,2 @@
1
- System.register([],function(_export,_context){"use strict";var t;function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}return{setters:[],execute:function execute(){_export("V",t=/*#__PURE__*/function(){function t(){_classCallCheck(this,t);}return _createClass(t,null,[{key:"createVirtualOptionsFromValues",value:function createVirtualOptionsFromValues(_t,e,r,a){if(!_t||Array.isArray(_t)&&0===_t.length)return[];return(Array.isArray(_t)?_t:[_t]).map(function(_t2){var n=r,s=a||function(_t3){return(_t3===null||_t3===void 0?void 0:_t3.value)||_t3;},u=e.find(function(e){var r=s(e),a=n(e);return r===_t2||a===_t2;}),i=u?n(u):_t2;return{value:_t2,selected:!0,getTextLabel:function getTextLabel(){if("string"==typeof i&&/<[^>]+>/.test(i)){var _t4=document.createElement("div");return _t4.innerHTML=i,_t4.textContent||_t4.innerText||"";}return i;},getOptionPrefix:function getOptionPrefix(){return"";}};});}},{key:"updateDisplayLabel",value:function updateDisplayLabel(_t5,e,r,a){if(r)return e&&0===_t5.length?"":_t5.length+" selected";{var _t5$;var _e=Array.isArray(a)?a[0]:a;return(_t5$=_t5[0])!==null&&_t5$!==void 0&&_t5$.getTextLabel()?_t5[0].getTextLabel():_e!==null&&_e!==void 0?_e:"";}}},{key:"updateValue",value:function updateValue(_t6,e){var _t6$0$value,_t6$;return e?_t6.map(function(_t7){return _t7.value;}):(_t6$0$value=(_t6$=_t6[0])===null||_t6$===void 0?void 0:_t6$.value)!==null&&_t6$0$value!==void 0?_t6$0$value:"";}}]);}());}};});
1
+ System.register([],function(_export,_context){"use strict";var t;function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}return{setters:[],execute:function execute(){_export("V",t=/*#__PURE__*/function(){function t(){_classCallCheck(this,t);}return _createClass(t,null,[{key:"createVirtualOptionsFromValues",value:function createVirtualOptionsFromValues(_t,r,e,n){if(!_t||Array.isArray(_t)&&0===_t.length)return[];return(Array.isArray(_t)?_t:[_t]).map(function(_t2){var a=e,i=n||function(_t3){return(_t3===null||_t3===void 0?void 0:_t3.value)||_t3;},s=r.find(function(r){var e=i(r),n=a(r);return String(e)===String(_t2)||String(n)===String(_t2);}),u=s?a(s):_t2;return{value:_t2,selected:!0,getTextLabel:function getTextLabel(){if("string"==typeof u&&/<[^>]+>/.test(u)){var _t4=document.createElement("div");return _t4.innerHTML=u,_t4.textContent||_t4.innerText||"";}return u;},getOptionPrefix:function getOptionPrefix(){return"";}};});}},{key:"updateDisplayLabel",value:function updateDisplayLabel(_t5,r,e,n){if(e)return r&&0===_t5.length?"":_t5.length+" selected";{var _t5$;var _r=Array.isArray(n)?n[0]:n;return(_t5$=_t5[0])!==null&&_t5$!==void 0&&_t5$.getTextLabel()?_t5[0].getTextLabel():_r!==null&&_r!==void 0?_r:"";}}},{key:"updateValue",value:function updateValue(_t6,r){var _t6$0$value,_t6$;return r?_t6.map(function(_t7){return _t7.value;}):(_t6$0$value=(_t6$=_t6[0])===null||_t6$===void 0?void 0:_t6$.value)!==null&&_t6$0$value!==void 0?_t6$0$value:"";}}]);}());}};});
2
2
  //# sourceMappingURL=selection-manager.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"selection-manager.cjs.js","sources":["../../../src/nile-virtual-select/selection-manager.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2025\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 type { VirtualOption } from './types.js';\n\nexport class VirtualSelectSelectionManager {\n static createVirtualOptionsFromValues(\n value: string | string[], \n data: any[], \n getDisplayText: (item: any) => string,\n getItemValue?: (item: any) => string\n ): VirtualOption[] {\n if (!value || (Array.isArray(value) && value.length === 0)) {\n return [];\n }\n\n const values = Array.isArray(value) ? value : [value];\n \n return values.map(valueItem => {\n // Use enhanced functions if available, otherwise fallback to basic logic\n const displayTextFn = getDisplayText;\n const valueFn = getItemValue || ((item: any) => item?.value || item);\n \n const item = data.find((item: any) => {\n const itemValue = valueFn(item);\n const itemDisplayText = displayTextFn(item);\n return itemValue === valueItem || itemDisplayText === valueItem;\n });\n \n const displayText = item ? displayTextFn(item) : valueItem;\n \n return {\n value: valueItem,\n selected: true,\n getTextLabel: () => {\n // If displayText contains HTML, strip tags\n if (typeof displayText === 'string' && /<[^>]+>/.test(displayText)) {\n const div = document.createElement('div');\n div.innerHTML = displayText;\n return div.textContent || div.innerText || '';\n }\n return displayText;\n },\n getOptionPrefix: () => '',\n };\n });\n }\n\n static updateDisplayLabel(selectedOptions: VirtualOption[], placeholder: string, multiple: boolean, value: string | string[]): string {\n if (multiple) {\n if (placeholder && selectedOptions.length === 0) {\n return '';\n } else {\n return selectedOptions.length + ' selected';\n }\n } else {\n const currentValue = Array.isArray(value) ? value[0] : value;\n return selectedOptions[0]?.getTextLabel()\n ? selectedOptions[0].getTextLabel()\n : currentValue ?? '';\n }\n }\n\n static updateValue(selectedOptions: VirtualOption[], multiple: boolean): string | string[] {\n if (multiple) {\n return selectedOptions.map(el => el.value);\n } else {\n return selectedOptions[0]?.value ?? '';\n }\n }\n} \n"],"names":["VirtualSelectSelectionManager","static","value","data","getDisplayText","getItemValue","Array","isArray","length","map","valueItem","displayTextFn","valueFn","item","find","itemValue","itemDisplayText","displayText","selected","getTextLabel","test","div","document","createElement","innerHTML","textContent","innerText","getOptionPrefix","selectedOptions","placeholder","multiple","_t5$","currentValue","el"],"mappings":"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"}
1
+ {"version":3,"file":"selection-manager.cjs.js","sources":["../../../src/nile-virtual-select/selection-manager.ts"],"sourcesContent":["/**\n * Copyright Aquera Inc 2025\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 type { VirtualOption } from './types.js';\n\nexport class VirtualSelectSelectionManager {\n static createVirtualOptionsFromValues(\n value: string | string[], \n data: any[], \n getDisplayText: (item: any) => string,\n getItemValue?: (item: any) => string\n ): VirtualOption[] {\n if (!value || (Array.isArray(value) && value.length === 0)) {\n return [];\n }\n\n const values = Array.isArray(value) ? value : [value];\n \n return values.map(valueItem => {\n // Use enhanced functions if available, otherwise fallback to basic logic\n const displayTextFn = getDisplayText;\n const valueFn = getItemValue || ((item: any) => item?.value || item);\n \n const item = data.find((item: any) => {\n const itemValue = valueFn(item);\n const itemDisplayText = displayTextFn(item);\n return String(itemValue) === String(valueItem) || String(itemDisplayText) === String(valueItem);\n });\n \n const displayText = item ? displayTextFn(item) : valueItem;\n \n return {\n value: valueItem,\n selected: true,\n getTextLabel: () => {\n // If displayText contains HTML, strip tags\n if (typeof displayText === 'string' && /<[^>]+>/.test(displayText)) {\n const div = document.createElement('div');\n div.innerHTML = displayText;\n return div.textContent || div.innerText || '';\n }\n return displayText;\n },\n getOptionPrefix: () => '',\n };\n });\n }\n\n static updateDisplayLabel(selectedOptions: VirtualOption[], placeholder: string, multiple: boolean, value: string | string[]): string {\n if (multiple) {\n if (placeholder && selectedOptions.length === 0) {\n return '';\n } else {\n return selectedOptions.length + ' selected';\n }\n } else {\n const currentValue = Array.isArray(value) ? value[0] : value;\n return selectedOptions[0]?.getTextLabel()\n ? selectedOptions[0].getTextLabel()\n : currentValue ?? '';\n }\n }\n\n static updateValue(selectedOptions: VirtualOption[], multiple: boolean): string | string[] {\n if (multiple) {\n return selectedOptions.map(el => el.value);\n } else {\n return selectedOptions[0]?.value ?? '';\n }\n }\n} \n"],"names":["VirtualSelectSelectionManager","static","value","data","getDisplayText","getItemValue","Array","isArray","length","map","valueItem","displayTextFn","valueFn","item","find","itemValue","itemDisplayText","String","displayText","selected","getTextLabel","test","div","document","createElement","innerHTML","textContent","innerText","getOptionPrefix","selectedOptions","placeholder","multiple","_t5$","currentValue","el"],"mappings":"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"}
@@ -1 +1 @@
1
- class t{static createVirtualOptionsFromValues(t,e,r,a){if(!t||Array.isArray(t)&&0===t.length)return[];return(Array.isArray(t)?t:[t]).map((t=>{const n=r,s=a||(t=>t?.value||t),u=e.find((e=>{const r=s(e),a=n(e);return r===t||a===t})),i=u?n(u):t;return{value:t,selected:!0,getTextLabel:()=>{if("string"==typeof i&&/<[^>]+>/.test(i)){const t=document.createElement("div");return t.innerHTML=i,t.textContent||t.innerText||""}return i},getOptionPrefix:()=>""}}))}static updateDisplayLabel(t,e,r,a){if(r)return e&&0===t.length?"":t.length+" selected";{const e=Array.isArray(a)?a[0]:a;return t[0]?.getTextLabel()?t[0].getTextLabel():e??""}}static updateValue(t,e){return e?t.map((t=>t.value)):t[0]?.value??""}}export{t as V};
1
+ class t{static createVirtualOptionsFromValues(t,r,e,n){if(!t||Array.isArray(t)&&0===t.length)return[];return(Array.isArray(t)?t:[t]).map((t=>{const a=e,i=n||(t=>t?.value||t),s=r.find((r=>{const e=i(r),n=a(r);return String(e)===String(t)||String(n)===String(t)})),u=s?a(s):t;return{value:t,selected:!0,getTextLabel:()=>{if("string"==typeof u&&/<[^>]+>/.test(u)){const t=document.createElement("div");return t.innerHTML=u,t.textContent||t.innerText||""}return u},getOptionPrefix:()=>""}}))}static updateDisplayLabel(t,r,e,n){if(e)return r&&0===t.length?"":t.length+" selected";{const r=Array.isArray(n)?n[0]:n;return t[0]?.getTextLabel()?t[0].getTextLabel():r??""}}static updateValue(t,r){return r?t.map((t=>t.value)):t[0]?.value??""}}export{t as V};
@@ -35,7 +35,7 @@ export declare class NileButton extends NileElement implements NileFormControl {
35
35
  /** The button's theme variant. */
36
36
  variant: 'primary' | 'secondary' | 'tertiary' | 'caution' | 'ghost' | 'destructive' | 'secondary-grey' | 'secondary-blue';
37
37
  /** The button's size. */
38
- size: 'medium';
38
+ size: string;
39
39
  /** Draws the button with a caret. Used to indicate that the button triggers a dropdown menu or similar behavior. */
40
40
  caret: boolean;
41
41
  /** Disables the button. */
@@ -351,7 +351,7 @@ __decorate([
351
351
  property({ reflect: true })
352
352
  ], NileButton.prototype, "variant", void 0);
353
353
  __decorate([
354
- property({ reflect: true })
354
+ state()
355
355
  ], NileButton.prototype, "size", void 0);
356
356
  __decorate([
357
357
  property({ type: Boolean, reflect: true })