@aquera/nile-elements 0.1.74 → 0.1.75-beta-1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/demo/index.html +95 -9
- package/dist/{fixture-3bfb4490.cjs.js → fixture-5b79f853.cjs.js} +2 -2
- package/dist/{fixture-3bfb4490.cjs.js.map → fixture-5b79f853.cjs.js.map} +1 -1
- package/dist/fixture-90b199c4.esm.js +569 -0
- package/dist/{fixture-8edec91c.esm.js → fixture-cf7bfcf5.esm.js} +1 -1
- package/dist/fixture-dbd66009.cjs.js +395 -0
- package/dist/fixture-dbd66009.cjs.js.map +1 -0
- package/dist/index.js +41 -17
- package/dist/nile-accordion/nile-accordian.test.cjs.js +1 -1
- package/dist/nile-accordion/nile-accordian.test.esm.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +1 -1
- package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
- package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
- package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.test.esm.js +1 -1
- package/dist/nile-button/nile-button.test.cjs.js +1 -1
- package/dist/nile-button/nile-button.test.esm.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +1 -1
- package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
- package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
- package/dist/nile-card/nile-card.test.cjs.js +1 -1
- package/dist/nile-card/nile-card.test.esm.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
- package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
- package/dist/nile-chip/nile-chip.test.esm.js +1 -1
- package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
- package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
- package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.test.cjs.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.test.esm.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.test.esm.js +1 -1
- package/dist/nile-error-message/nile-error-message.test.cjs.js +1 -1
- package/dist/nile-error-message/nile-error-message.test.esm.js +1 -1
- package/dist/nile-file-preview/nile-file-preview.test.cjs.js +1 -1
- package/dist/nile-file-preview/nile-file-preview.test.esm.js +1 -1
- package/dist/nile-file-upload/nile-file-upload.test.cjs.js +1 -1
- package/dist/nile-file-upload/nile-file-upload.test.esm.js +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.test.esm.js +1 -1
- package/dist/nile-form-group/nile-form-group.test.cjs.js +1 -1
- package/dist/nile-form-group/nile-form-group.test.esm.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +1 -1
- package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
- package/dist/nile-hero/nile-hero.test.esm.js +1 -1
- package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
- package/dist/nile-icon/nile-icon.test.esm.js +1 -1
- package/dist/nile-input/nile-input.test.cjs.js +1 -1
- package/dist/nile-input/nile-input.test.esm.js +1 -1
- package/dist/nile-link/nile-link.test.cjs.js +1 -1
- package/dist/nile-link/nile-link.test.esm.js +1 -1
- package/dist/nile-loader/nile-loader.test.cjs.js +1 -1
- package/dist/nile-loader/nile-loader.test.esm.js +1 -1
- package/dist/nile-popover/nile-popover.test.cjs.js +1 -1
- package/dist/nile-popover/nile-popover.test.esm.js +1 -1
- package/dist/nile-popup/nile-popup.test.cjs.js +1 -1
- package/dist/nile-popup/nile-popup.test.esm.js +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -1
- package/dist/nile-radio/nile-radio.test.cjs.js +1 -1
- package/dist/nile-radio/nile-radio.test.esm.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.test.cjs.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.test.esm.js +1 -1
- package/dist/nile-select/index.cjs.js +1 -1
- package/dist/nile-select/index.esm.js +1 -1
- package/dist/nile-select/nile-select.cjs.js +1 -1
- package/dist/nile-select/nile-select.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.esm.js +2 -2
- package/dist/nile-select/nile-select.test.cjs.js +1 -1
- package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.test.esm.js +1 -1
- package/dist/nile-select/virtual-scroll-helper.cjs.js +1 -1
- package/dist/nile-select/virtual-scroll-helper.cjs.js.map +1 -1
- package/dist/nile-select/virtual-scroll-helper.esm.js +1 -0
- package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
- package/dist/nile-textarea/nile-textarea.test.cjs.js +1 -1
- package/dist/nile-textarea/nile-textarea.test.esm.js +1 -1
- package/dist/nile-virtual-select/index.cjs.js +1 -1
- package/dist/nile-virtual-select/index.esm.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js.map +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.css.esm.js +18 -0
- package/dist/nile-virtual-select/nile-virtual-select.esm.js +15 -11
- package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.test.esm.js +1 -1
- package/dist/nile-virtual-select/renderer.cjs.js +1 -1
- package/dist/nile-virtual-select/renderer.cjs.js.map +1 -1
- package/dist/nile-virtual-select/renderer.esm.js +11 -10
- package/dist/nile-virtual-select/selection-manager.cjs.js +1 -1
- package/dist/nile-virtual-select/selection-manager.cjs.js.map +1 -1
- package/dist/nile-virtual-select/selection-manager.esm.js +1 -1
- package/dist/nile-virtual-select/temp_nile-virtual-select copy.cjs.js +2 -0
- package/dist/nile-virtual-select/temp_nile-virtual-select copy.cjs.js.map +1 -0
- package/dist/nile-virtual-select/temp_nile-virtual-select copy.esm.js +231 -0
- package/dist/src/internal/resizable-helper.d.ts +59 -0
- package/dist/src/internal/resizable-helper.js +115 -0
- package/dist/src/internal/resizable-helper.js.map +1 -0
- package/dist/src/internal/resizable-styles.d.ts +16 -0
- package/dist/src/internal/resizable-styles.js +144 -0
- package/dist/src/internal/resizable-styles.js.map +1 -0
- package/dist/src/internal/virtualizer-error-handler.d.ts +30 -0
- package/dist/src/internal/virtualizer-error-handler.js +82 -0
- package/dist/src/internal/virtualizer-error-handler.js.map +1 -0
- package/dist/src/lib/index.d.ts +7 -0
- package/dist/src/lib/index.js +8 -0
- package/dist/src/lib/index.js.map +1 -0
- package/dist/src/lib/virtualize.d.ts +32 -0
- package/dist/src/lib/virtualize.js +105 -0
- package/dist/src/lib/virtualize.js.map +1 -0
- package/dist/src/lib/virtualize.test.d.ts +7 -0
- package/dist/src/lib/virtualize.test.js +57 -0
- package/dist/src/lib/virtualize.test.js.map +1 -0
- package/dist/src/nile-badge/__snapshots__/nile-badge.test.snap.js +17 -0
- package/dist/src/nile-calendar/__snapshots__/nile-calendar.test.snap.js +310 -0
- package/dist/src/nile-card/__snapshots__/nile-card.test.snap.js +34 -0
- package/dist/src/nile-checkbox/__snapshots__/nile-checkbox.test.snap.js +31 -0
- package/dist/src/nile-grid/data-processor.d.ts +37 -0
- package/dist/src/nile-grid/data-processor.js +122 -0
- package/dist/src/nile-grid/data-processor.js.map +1 -0
- package/dist/src/nile-grid/event-handlers.d.ts +35 -0
- package/dist/src/nile-grid/event-handlers.js +158 -0
- package/dist/src/nile-grid/event-handlers.js.map +1 -0
- package/dist/src/nile-grid/index.d.ts +5 -0
- package/dist/src/nile-grid/index.js +6 -0
- package/dist/src/nile-grid/index.js.map +1 -0
- package/dist/src/nile-grid/nile-grid.css.d.ts +1 -0
- package/dist/src/nile-grid/nile-grid.css.js +120 -0
- package/dist/src/nile-grid/nile-grid.css.js.map +1 -0
- package/dist/src/nile-grid/nile-grid.d.ts +39 -0
- package/dist/src/nile-grid/nile-grid.js +182 -0
- package/dist/src/nile-grid/nile-grid.js.map +1 -0
- package/dist/src/nile-grid/renderer.d.ts +8 -0
- package/dist/src/nile-grid/renderer.js +78 -0
- package/dist/src/nile-grid/renderer.js.map +1 -0
- package/dist/src/nile-grid/resize-handler.d.ts +4 -0
- package/dist/src/nile-grid/resize-handler.js +36 -0
- package/dist/src/nile-grid/resize-handler.js.map +1 -0
- package/dist/src/nile-grid/types.d.ts +32 -0
- package/dist/src/nile-grid/types.js +2 -0
- package/dist/src/nile-grid/types.js.map +1 -0
- package/dist/src/nile-grid/utils.d.ts +4 -0
- package/dist/src/nile-grid/utils.js +32 -0
- package/dist/src/nile-grid/utils.js.map +1 -0
- package/dist/src/nile-hero/__snapshots__/nile-hero.test.snap.js +47 -0
- package/dist/src/nile-icon/__snapshots__/nile-icon.test.snap.js +16 -0
- package/dist/src/nile-icon/icons/svg/ng-action.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-action.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-action.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-activity.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-activity.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-activity.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-alert-circle.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-alert-circle.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-alert-circle.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-align-center.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-align-center.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-align-center.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-annotation-x.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-annotation-x.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-annotation-x.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-down.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-down.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-down.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-up.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-up.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-up.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-bell-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-bell-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-bell-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-bold-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-bold-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-bold-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-building-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-building-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-building-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-building-05.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-building-05.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-building-05.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-calendar.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-calendar.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-calendar.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-check-square-broken.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-check.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-down.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-down.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-down.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-left.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-left.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-left.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-right.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-right.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-right.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-up.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-up.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-chevron-up.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-copy-03.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-copy-03.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-copy-03.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-dataflow-04.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-dataflow-04.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-dataflow-04.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-dots-grid.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-dots-grid.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-dots-grid.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-dots-vertical.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-download-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-download-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-download-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-dropdown.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-dropdown.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-dropdown.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-edit-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-edit-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-edit-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-edit-05.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-edit-05.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-edit-05.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-expand-06.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-expand-06.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-expand-06.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-eye-off.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-eye-off.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-eye-off.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-eye.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-eye.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-eye.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-file-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-file-06.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-06.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-06.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-file-check-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-check-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-check-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-file-question-03.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-question-03.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-question-03.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-filter-lines.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-filter-lines.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-filter-lines.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-grid-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-grid-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-grid-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-help-circle.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-help-circle.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-help-circle.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-image-03.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-image-03.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-image-03.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-image-user-left.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-image-user-left.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-image-user-left.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-info-circle.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-info-circle.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-info-circle.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-italic-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-italic-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-italic-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-layers-three-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-layers-three-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-layers-three-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-list.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-list.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-list.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-lock-03.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-lock-03.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-lock-03.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-log-out-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-log-out-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-log-out-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-mail-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-mail-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-mail-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-mail-04.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-mail-04.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-mail-04.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-marker-pin-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-marker-pin-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-marker-pin-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-menu-05.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-menu-05.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-menu-05.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-minimize-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-minimize-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-minimize-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-minus.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-minus.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-minus.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-plus.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-plus.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-plus.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-rocket-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-rocket-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-rocket-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-search-lg.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-search-lg.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-search-lg.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-send-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-send-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-send-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-settings-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-settings-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-settings-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-share-04.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-share-04.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-share-04.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-share-06.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-share-06.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-share-06.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-stars-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-stars-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-stars-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-trash-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-trash-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-trash-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-trash-03.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-trash-03.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-trash-03.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-trend-up-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-underline-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-underline-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-underline-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-upload-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-upload-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-upload-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-user-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-user-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-user-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-user-check-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-user-check-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-user-check-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-user-plus-02.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-user-right-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-user-right-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-user-right-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-users-01.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-users-01.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-users-01.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-x-circle.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-x-circle.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-x-circle.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-x-close.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-x-close.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-x-close.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-x-square.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-x-square.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-x-square.js.map +1 -0
- package/dist/src/nile-input/__snapshots__/nile-input.test.snap.js +75 -0
- package/dist/src/nile-popover/__snapshots__/nile-popover.test.snap.js +22 -0
- package/dist/src/nile-select/nile-select.d.ts +2 -0
- package/dist/src/nile-select/nile-select.js +8 -2
- package/dist/src/nile-select/nile-select.js.map +1 -1
- package/dist/src/nile-select/virtual-scroll-helper.js +1 -0
- package/dist/src/nile-select/virtual-scroll-helper.js.map +1 -1
- package/dist/src/nile-table-body/virtual-scroll-helper.d.ts +9 -0
- package/dist/src/nile-table-body/virtual-scroll-helper.js +24 -0
- package/dist/src/nile-table-body/virtual-scroll-helper.js.map +1 -0
- package/dist/src/nile-virtual-select/nile-virtual-select.css.js +18 -0
- package/dist/src/nile-virtual-select/nile-virtual-select.css.js.map +1 -1
- package/dist/src/nile-virtual-select/nile-virtual-select.d.ts +18 -1
- package/dist/src/nile-virtual-select/nile-virtual-select.js +106 -21
- package/dist/src/nile-virtual-select/nile-virtual-select.js.map +1 -1
- package/dist/src/nile-virtual-select/renderer.d.ts +2 -2
- package/dist/src/nile-virtual-select/renderer.js +9 -8
- package/dist/src/nile-virtual-select/renderer.js.map +1 -1
- package/dist/src/nile-virtual-select/selection-manager.js +1 -1
- package/dist/src/nile-virtual-select/selection-manager.js.map +1 -1
- package/dist/src/nile-virtual-select/temp_nile-virtual-select copy.d.ts +273 -0
- package/dist/src/nile-virtual-select/temp_nile-virtual-select copy.js +1305 -0
- package/dist/src/nile-virtual-select/temp_nile-virtual-select copy.js.map +1 -0
- package/dist/src/nile-virtual-select/virtualizer-error-handler.d.ts +21 -0
- package/dist/src/nile-virtual-select/virtualizer-error-handler.js +56 -0
- package/dist/src/nile-virtual-select/virtualizer-error-handler.js.map +1 -0
- package/dist/src/nile-virtual-table-body/index.d.ts +2 -0
- package/dist/src/nile-virtual-table-body/index.js +3 -0
- package/dist/src/nile-virtual-table-body/index.js.map +1 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.css.d.ts +1 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.css.js +44 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.css.js.map +1 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.d.ts +50 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.js +135 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.js.map +1 -0
- package/dist/src/nile-virtual-table-body/renderer.d.ts +16 -0
- package/dist/src/nile-virtual-table-body/renderer.js +49 -0
- package/dist/src/nile-virtual-table-body/renderer.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/nile-select/nile-select.ts +6 -2
- package/src/nile-select/virtual-scroll-helper.ts +1 -0
- package/src/nile-virtual-select/nile-virtual-select.css.ts +18 -0
- package/src/nile-virtual-select/nile-virtual-select.ts +121 -25
- package/src/nile-virtual-select/renderer.ts +10 -8
- package/src/nile-virtual-select/selection-manager.ts +1 -1
- package/vscode-html-custom-data.json +28 -2
@@ -8,8 +8,9 @@ import '../nile-icon';
|
|
8
8
|
import '../nile-popup/nile-popup';
|
9
9
|
import '../nile-tag/nile-tag';
|
10
10
|
import '../nile-checkbox/nile-checkbox';
|
11
|
+
import '../nile-loader/nile-loader';
|
11
12
|
import NileElement from '../internal/nile-element';
|
12
|
-
import type { CSSResultGroup, TemplateResult } from 'lit';
|
13
|
+
import type { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
|
13
14
|
import type { NileFormControl } from '../internal/nile-element';
|
14
15
|
import type NilePopup from '../nile-popup/nile-popup';
|
15
16
|
import type { VirtualOption, RenderItemConfig } from './types.js';
|
@@ -45,6 +46,10 @@ import type { VirtualOption, RenderItemConfig } from './types.js';
|
|
45
46
|
* @event nile-hide - Emitted when the select's menu closes.
|
46
47
|
* @event nile-after-hide - Emitted after the select's menu closes and all animations are complete.
|
47
48
|
* @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
|
49
|
+
* @event nile-search - Emitted when the user types in the search input. The event payload includes the search query for backend search functionality.
|
50
|
+
* @event nile-scroll - Emitted when the user scrolls within the virtualized container. The event payload includes scroll position information.
|
51
|
+
* @event nile-scroll-start - Emitted when the user starts scrolling within the virtualized container.
|
52
|
+
* @event nile-scroll-end - Emitted when the user stops scrolling and reaches the bottom of the virtualized container (debounced).
|
48
53
|
*
|
49
54
|
* @csspart form-control - The form control that wraps the label, input, and help text.
|
50
55
|
* @csspart form-control-label - The label's wrapper.
|
@@ -72,6 +77,8 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
|
|
72
77
|
displayLabel: string;
|
73
78
|
selectedOptions: VirtualOption[];
|
74
79
|
oldValue: string | string[];
|
80
|
+
private scrollTimeout;
|
81
|
+
private scrolling;
|
75
82
|
/** The name of the select, submitted as a name/value pair with form data. */
|
76
83
|
name: string;
|
77
84
|
/** Array of all option items for virtual scrolling */
|
@@ -98,6 +105,8 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
|
|
98
105
|
disableLocalSearch: boolean;
|
99
106
|
/** Show loading state */
|
100
107
|
optionsLoading: boolean;
|
108
|
+
/** Show loading state using nile-loader */
|
109
|
+
loading: boolean;
|
101
110
|
/** Allows more than one option to be selected. */
|
102
111
|
multiple: boolean;
|
103
112
|
/** Help text */
|
@@ -164,6 +173,7 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
|
|
164
173
|
get validationMessage(): string;
|
165
174
|
connectedCallback(): void;
|
166
175
|
disconnectedCallback(): void;
|
176
|
+
protected updated(changedProperties: PropertyValues): void;
|
167
177
|
private initializeComponent;
|
168
178
|
/**
|
169
179
|
* Get display text for an item using renderItemConfig
|
@@ -190,6 +200,12 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
|
|
190
200
|
private isEnterOrSpaceKey;
|
191
201
|
private handleEnterOrSpaceKey;
|
192
202
|
private handleDocumentMouseDown;
|
203
|
+
/**
|
204
|
+
* This is a workaround for an error in the Lit Labs virtualizer.
|
205
|
+
* Since there are no specific guidelines available to fix the issue,
|
206
|
+
* we are catching only the error message related to the virtualizer.
|
207
|
+
*/
|
208
|
+
private handleWindowError;
|
193
209
|
private handleFooterClick;
|
194
210
|
private toggleShowSelected;
|
195
211
|
private unSelectAll;
|
@@ -212,6 +228,7 @@ export declare class NileVirtualSelect extends NileElement implements NileFormCo
|
|
212
228
|
handleSearchFocus(): void;
|
213
229
|
handleSearchBlur(): void;
|
214
230
|
handleSearchChange(e: any): void;
|
231
|
+
handleScroll(e: Event): void;
|
215
232
|
filterVirtualOptions(searchValue: string): void;
|
216
233
|
private handleInvalid;
|
217
234
|
handleDisabledChange(): void;
|
@@ -12,6 +12,7 @@ import '../nile-icon';
|
|
12
12
|
import '../nile-popup/nile-popup';
|
13
13
|
import '../nile-tag/nile-tag';
|
14
14
|
import '../nile-checkbox/nile-checkbox';
|
15
|
+
import '../nile-loader/nile-loader';
|
15
16
|
import { animateTo, stopAnimations } from '../internal/animate';
|
16
17
|
import { classMap } from 'lit/directives/class-map.js';
|
17
18
|
import { query, state } from 'lit/decorators.js';
|
@@ -58,6 +59,10 @@ import { VirtualSelectRenderer } from './renderer.js';
|
|
58
59
|
* @event nile-hide - Emitted when the select's menu closes.
|
59
60
|
* @event nile-after-hide - Emitted after the select's menu closes and all animations are complete.
|
60
61
|
* @event nile-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
|
62
|
+
* @event nile-search - Emitted when the user types in the search input. The event payload includes the search query for backend search functionality.
|
63
|
+
* @event nile-scroll - Emitted when the user scrolls within the virtualized container. The event payload includes scroll position information.
|
64
|
+
* @event nile-scroll-start - Emitted when the user starts scrolling within the virtualized container.
|
65
|
+
* @event nile-scroll-end - Emitted when the user stops scrolling and reaches the bottom of the virtualized container (debounced).
|
61
66
|
*
|
62
67
|
* @csspart form-control - The form control that wraps the label, input, and help text.
|
63
68
|
* @csspart form-control-label - The label's wrapper.
|
@@ -84,6 +89,7 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
84
89
|
this.displayLabel = '';
|
85
90
|
this.selectedOptions = [];
|
86
91
|
this.oldValue = '';
|
92
|
+
this.scrolling = false;
|
87
93
|
/** The name of the select, submitted as a name/value pair with form data. */
|
88
94
|
this.name = '';
|
89
95
|
/** Array of all option items for virtual scrolling */
|
@@ -110,6 +116,8 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
110
116
|
this.disableLocalSearch = false;
|
111
117
|
/** Show loading state */
|
112
118
|
this.optionsLoading = false;
|
119
|
+
/** Show loading state using nile-loader */
|
120
|
+
this.loading = false;
|
113
121
|
/** Allows more than one option to be selected. */
|
114
122
|
this.multiple = false;
|
115
123
|
/** Help text */
|
@@ -178,6 +186,18 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
178
186
|
this.hide();
|
179
187
|
}
|
180
188
|
};
|
189
|
+
/**
|
190
|
+
* This is a workaround for an error in the Lit Labs virtualizer.
|
191
|
+
* Since there are no specific guidelines available to fix the issue,
|
192
|
+
* we are catching only the error message related to the virtualizer.
|
193
|
+
*/
|
194
|
+
this.handleWindowError = (event) => {
|
195
|
+
const errorMessage = event.error?.message || event.message || '';
|
196
|
+
if (errorMessage.includes('Cannot read properties of null (reading \'insertBefore\')')) {
|
197
|
+
event.preventDefault();
|
198
|
+
return;
|
199
|
+
}
|
200
|
+
};
|
181
201
|
}
|
182
202
|
/** Gets the validity state object */
|
183
203
|
get validity() {
|
@@ -199,6 +219,16 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
199
219
|
}
|
200
220
|
disconnectedCallback() {
|
201
221
|
this.removeOpenListeners();
|
222
|
+
// Clear any pending scroll timeout to prevent memory leaks
|
223
|
+
if (this.scrollTimeout) {
|
224
|
+
clearTimeout(this.scrollTimeout);
|
225
|
+
this.scrollTimeout = undefined;
|
226
|
+
}
|
227
|
+
}
|
228
|
+
updated(changedProperties) {
|
229
|
+
if (changedProperties.has('value')) {
|
230
|
+
this.selectionChanged();
|
231
|
+
}
|
202
232
|
}
|
203
233
|
initializeComponent() {
|
204
234
|
this.open = false;
|
@@ -236,16 +266,19 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
236
266
|
this.handleDocumentFocusIn = this.handleDocumentFocusIn.bind(this);
|
237
267
|
this.handleDocumentKeyDown = this.handleDocumentKeyDown.bind(this);
|
238
268
|
this.handleDocumentMouseDown = this.handleDocumentMouseDown.bind(this);
|
269
|
+
this.handleWindowError = this.handleWindowError.bind(this);
|
239
270
|
}
|
240
271
|
addOpenListeners() {
|
241
272
|
document.addEventListener('focusin', this.handleDocumentFocusIn);
|
242
273
|
document.addEventListener('keydown', this.handleDocumentKeyDown);
|
243
274
|
document.addEventListener('mousedown', this.handleDocumentMouseDown);
|
275
|
+
window.addEventListener('error', this.handleWindowError);
|
244
276
|
}
|
245
277
|
removeOpenListeners() {
|
246
278
|
document.removeEventListener('focusin', this.handleDocumentFocusIn);
|
247
279
|
document.removeEventListener('keydown', this.handleDocumentKeyDown);
|
248
280
|
document.removeEventListener('mousedown', this.handleDocumentMouseDown);
|
281
|
+
window.removeEventListener('error', this.handleWindowError);
|
249
282
|
}
|
250
283
|
handleFocus() {
|
251
284
|
this.hasFocus = true;
|
@@ -319,7 +352,10 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
319
352
|
this.showSelected = !this.showSelected;
|
320
353
|
if (this.showSelected) {
|
321
354
|
const selectedValues = Array.isArray(this.value) ? this.value : [this.value];
|
322
|
-
this.data = this.originalOptionItems.filter((item) =>
|
355
|
+
this.data = this.originalOptionItems.filter((item) => {
|
356
|
+
const itemValue = this.getItemValue(item);
|
357
|
+
return selectedValues.some(val => String(val) === String(itemValue));
|
358
|
+
});
|
323
359
|
}
|
324
360
|
else {
|
325
361
|
this.data = [...this.originalOptionItems];
|
@@ -483,11 +519,49 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
483
519
|
}
|
484
520
|
handleSearchChange(e) {
|
485
521
|
this.searchValue = e.detail.value;
|
522
|
+
this.emit('nile-search', {
|
523
|
+
query: this.searchValue,
|
524
|
+
name: this.name
|
525
|
+
});
|
486
526
|
if (!this.disableLocalSearch) {
|
487
527
|
this.filterVirtualOptions(this.searchValue);
|
488
528
|
this.resetScrollPosition();
|
489
529
|
}
|
490
530
|
}
|
531
|
+
handleScroll(e) {
|
532
|
+
if (this.showSelected) {
|
533
|
+
return;
|
534
|
+
}
|
535
|
+
const target = e.target;
|
536
|
+
this.emit('nile-scroll', {
|
537
|
+
scrollTop: target.scrollTop,
|
538
|
+
scrollLeft: target.scrollLeft,
|
539
|
+
name: this.name
|
540
|
+
});
|
541
|
+
if (!this.scrolling) {
|
542
|
+
this.scrolling = true;
|
543
|
+
this.emit('nile-scroll-start', {
|
544
|
+
scrollTop: target.scrollTop,
|
545
|
+
scrollLeft: target.scrollLeft,
|
546
|
+
name: this.name
|
547
|
+
});
|
548
|
+
}
|
549
|
+
clearTimeout(this.scrollTimeout);
|
550
|
+
this.scrollTimeout = window.setTimeout(() => {
|
551
|
+
if (this.scrolling) {
|
552
|
+
this.scrolling = false;
|
553
|
+
}
|
554
|
+
}, 300);
|
555
|
+
const isAtBottom = Math.ceil(target.scrollTop) >= Math.floor(target.scrollHeight - target.offsetHeight);
|
556
|
+
if (isAtBottom) {
|
557
|
+
this.emit('nile-scroll-end', {
|
558
|
+
scrollTop: target.scrollTop,
|
559
|
+
scrollLeft: target.scrollLeft,
|
560
|
+
name: this.name,
|
561
|
+
isAtBottom: true
|
562
|
+
});
|
563
|
+
}
|
564
|
+
}
|
491
565
|
filterVirtualOptions(searchValue) {
|
492
566
|
const result = VirtualSelectSearchManager.filterVirtualOptions(searchValue, this.originalOptionItems, this.data, this.getDisplayText.bind(this), this.renderItemConfig?.getSearchText);
|
493
567
|
this.data = result.filteredItems;
|
@@ -510,18 +584,18 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
510
584
|
this.requestUpdate();
|
511
585
|
}
|
512
586
|
handleDataChange() {
|
587
|
+
if (this.data.length > 0 && this.open && !this.showSelected && !this.searchValue) {
|
588
|
+
this.originalOptionItems = [...this.data];
|
589
|
+
}
|
513
590
|
this.selectionChanged();
|
514
591
|
// Show no results message when data is empty and not loading
|
515
|
-
if (!this.optionsLoading && this.data.length === 0) {
|
592
|
+
if (!this.optionsLoading && !this.loading && this.data.length === 0) {
|
516
593
|
this.showNoResults = true;
|
517
594
|
}
|
518
595
|
else if (this.data.length > 0) {
|
519
596
|
this.showNoResults = false;
|
520
597
|
}
|
521
598
|
this.requestUpdate();
|
522
|
-
if (this.open) {
|
523
|
-
this.resetScrollPosition();
|
524
|
-
}
|
525
599
|
}
|
526
600
|
handleRenderItemConfigChange() {
|
527
601
|
if (this.value && this.data.length > 0) {
|
@@ -572,7 +646,7 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
572
646
|
this.emit('nile-after-hide', { value: this.value, name: this.name });
|
573
647
|
}
|
574
648
|
initializeOriginalItems() {
|
575
|
-
if (this.
|
649
|
+
if (this.data.length > 0) {
|
576
650
|
this.originalOptionItems = [...this.data];
|
577
651
|
}
|
578
652
|
}
|
@@ -915,23 +989,31 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
915
989
|
: html ``;
|
916
990
|
}
|
917
991
|
renderLoader() {
|
918
|
-
|
919
|
-
|
920
|
-
|
921
|
-
|
922
|
-
|
923
|
-
|
924
|
-
|
925
|
-
|
926
|
-
|
927
|
-
|
992
|
+
if (this.loading) {
|
993
|
+
return html `
|
994
|
+
<span part="loader" class="virtual-select-loader">
|
995
|
+
<nile-loader size="sm"></nile-loader>
|
996
|
+
</span>
|
997
|
+
`;
|
998
|
+
}
|
999
|
+
if (this.optionsLoading) {
|
1000
|
+
return html `
|
1001
|
+
<span part="loader" class="select__loader">
|
1002
|
+
<nile-icon
|
1003
|
+
class="select__loader--icon"
|
1004
|
+
name="button-loading-blue"
|
1005
|
+
></nile-icon>
|
1006
|
+
</span>
|
1007
|
+
`;
|
1008
|
+
}
|
1009
|
+
return html ``;
|
928
1010
|
}
|
929
1011
|
renderFooter() {
|
930
1012
|
return this.multiple
|
931
1013
|
? html `
|
932
1014
|
<div
|
933
1015
|
part="footer"
|
934
|
-
class="select__footer"
|
1016
|
+
class="select__footer ${this.loading ? 'loading' : ''}"
|
935
1017
|
@click="${this.handleFooterClick}"
|
936
1018
|
>
|
937
1019
|
<span
|
@@ -974,7 +1056,7 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
974
1056
|
`;
|
975
1057
|
}
|
976
1058
|
getVirtualizedContent() {
|
977
|
-
return VirtualSelectRenderer.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);
|
1059
|
+
return VirtualSelectRenderer.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));
|
978
1060
|
}
|
979
1061
|
nileInput(value) {
|
980
1062
|
this.emit('nile-input', value);
|
@@ -1034,14 +1116,14 @@ let NileVirtualSelect = class NileVirtualSelect extends NileElement {
|
|
1034
1116
|
}
|
1035
1117
|
resetScrollPosition() {
|
1036
1118
|
this.updateComplete.then(() => {
|
1037
|
-
if (this.virtualizedContainer) {
|
1119
|
+
if (this.virtualizedContainer && this.virtualizedContainer.isConnected) {
|
1038
1120
|
this.virtualizedContainer.scrollTop = 0;
|
1039
1121
|
const listbox = this.shadowRoot?.querySelector('.select__listbox');
|
1040
|
-
if (listbox) {
|
1122
|
+
if (listbox && listbox.isConnected) {
|
1041
1123
|
listbox.scrollTop = 0;
|
1042
1124
|
}
|
1043
1125
|
const virtualizer = this.virtualizedContainer.querySelector('lit-virtualizer');
|
1044
|
-
if (virtualizer) {
|
1126
|
+
if (virtualizer && virtualizer.isConnected) {
|
1045
1127
|
virtualizer.scrollTop = 0;
|
1046
1128
|
}
|
1047
1129
|
}
|
@@ -1114,6 +1196,9 @@ __decorate([
|
|
1114
1196
|
__decorate([
|
1115
1197
|
property({ type: Boolean, reflect: true })
|
1116
1198
|
], NileVirtualSelect.prototype, "optionsLoading", void 0);
|
1199
|
+
__decorate([
|
1200
|
+
property({ type: Boolean, reflect: true, attribute: true })
|
1201
|
+
], NileVirtualSelect.prototype, "loading", void 0);
|
1117
1202
|
__decorate([
|
1118
1203
|
property({ type: Boolean, reflect: true })
|
1119
1204
|
], NileVirtualSelect.prototype, "multiple", void 0);
|