@nuraly/lumenui 0.2.1 → 0.3.2
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/dist/cdn.js +1 -0
- package/dist/nuralyui.bundle.js +3434 -2085
- package/dist/nuralyui.bundle.js.gz +0 -0
- package/dist/src/components/button/controllers/base.controller.d.ts +15 -0
- package/dist/src/components/button/controllers/base.controller.js +13 -0
- package/dist/src/components/button/controllers/index.d.ts +10 -0
- package/dist/src/components/button/controllers/index.js +10 -0
- package/dist/src/components/button/controllers/keyboard.controller.d.ts +32 -0
- package/dist/src/components/button/controllers/keyboard.controller.js +78 -0
- package/dist/src/components/button/controllers/link.controller.d.ts +30 -0
- package/dist/src/components/button/controllers/link.controller.js +75 -0
- package/dist/src/components/button/controllers/ripple.controller.d.ts +23 -0
- package/dist/src/components/button/controllers/ripple.controller.js +69 -0
- package/dist/src/components/button/interfaces/base-controller.interface.d.ts +61 -0
- package/dist/src/components/button/interfaces/base-controller.interface.js +7 -0
- package/dist/src/components/button/interfaces/index.d.ts +2 -0
- package/dist/src/components/button/interfaces/index.js +2 -0
- package/dist/src/components/button/test/nr-button_test.d.ts +2 -0
- package/dist/src/components/button/test/nr-button_test.js +91 -0
- package/dist/src/components/canvas/base-canvas.component.d.ts +2 -1
- package/dist/src/components/canvas/base-canvas.component.js +6 -0
- package/dist/src/components/canvas/bundle.js +1083 -491
- package/dist/src/components/canvas/bundle.js.gz +0 -0
- package/dist/src/components/canvas/canvas.constants.d.ts +1 -1
- package/dist/src/components/canvas/canvas.constants.js +1 -1
- package/dist/src/components/canvas/chatbot-panel.style.js +50 -59
- package/dist/src/components/canvas/chatbot-trigger/chatbot-trigger-fields.component.d.ts +115 -0
- package/dist/src/components/canvas/chatbot-trigger/chatbot-trigger-fields.component.js +480 -0
- package/dist/src/components/canvas/chatbot-trigger/chatbot-trigger-fields.style.d.ts +7 -0
- package/dist/src/components/canvas/chatbot-trigger/chatbot-trigger-fields.style.js +323 -0
- package/dist/src/components/canvas/chatbot-trigger/chatbot-trigger.types.d.ts +162 -0
- package/dist/src/components/canvas/chatbot-trigger/chatbot-trigger.types.js +88 -0
- package/dist/src/components/canvas/chatbot-trigger/index.d.ts +9 -0
- package/dist/src/components/canvas/chatbot-trigger/index.js +12 -0
- package/dist/src/components/canvas/controllers/base.controller.d.ts +53 -0
- package/dist/src/components/canvas/controllers/base.controller.js +80 -0
- package/dist/src/components/canvas/controllers/clipboard.controller.d.ts +80 -0
- package/dist/src/components/canvas/controllers/clipboard.controller.js +300 -0
- package/dist/src/components/canvas/controllers/collaboration.controller.d.ts +54 -0
- package/dist/src/components/canvas/controllers/collaboration.controller.js +425 -0
- package/dist/src/components/canvas/controllers/config.controller.d.ts +61 -0
- package/dist/src/components/canvas/controllers/config.controller.js +118 -0
- package/dist/src/components/canvas/controllers/connection.controller.d.ts +69 -0
- package/dist/src/components/canvas/controllers/connection.controller.js +183 -0
- package/dist/src/components/canvas/controllers/drag.controller.d.ts +56 -0
- package/dist/src/components/canvas/controllers/drag.controller.js +195 -0
- package/dist/src/components/canvas/controllers/frame.controller.d.ts +94 -0
- package/dist/src/components/canvas/controllers/frame.controller.js +456 -0
- package/dist/src/components/canvas/controllers/index.d.ts +19 -0
- package/dist/src/components/canvas/controllers/index.js +32 -0
- package/dist/src/components/canvas/controllers/keyboard.controller.d.ts +44 -0
- package/dist/src/components/canvas/controllers/keyboard.controller.js +275 -0
- package/dist/src/components/canvas/controllers/marquee.controller.d.ts +71 -0
- package/dist/src/components/canvas/controllers/marquee.controller.js +128 -0
- package/dist/src/components/canvas/controllers/selection.controller.d.ts +85 -0
- package/dist/src/components/canvas/controllers/selection.controller.js +202 -0
- package/dist/src/components/canvas/controllers/touch.controller.d.ts +55 -0
- package/dist/src/components/canvas/controllers/touch.controller.js +299 -0
- package/dist/src/components/canvas/controllers/undo.controller.d.ts +100 -0
- package/dist/src/components/canvas/controllers/undo.controller.js +218 -0
- package/dist/src/components/canvas/controllers/viewport.controller.d.ts +91 -0
- package/dist/src/components/canvas/controllers/viewport.controller.js +287 -0
- package/dist/src/components/canvas/data-node/data-node-config.component.d.ts +67 -0
- package/dist/src/components/canvas/data-node/data-node-config.component.js +496 -0
- package/dist/src/components/canvas/data-node/data-node-fields.component.d.ts +198 -0
- package/dist/src/components/canvas/data-node/data-node-fields.component.js +931 -0
- package/dist/src/components/canvas/data-node/data-node-fields.style.d.ts +7 -0
- package/dist/src/components/canvas/data-node/data-node-fields.style.js +448 -0
- package/dist/src/components/canvas/data-node/data-node.types.d.ts +245 -0
- package/dist/src/components/canvas/data-node/data-node.types.js +158 -0
- package/dist/src/components/canvas/data-node/index.d.ts +9 -0
- package/dist/src/components/canvas/data-node/index.js +12 -0
- package/dist/src/components/canvas/data-node/schema-select.component.d.ts +36 -0
- package/dist/src/components/canvas/data-node/schema-select.component.js +196 -0
- package/dist/src/components/canvas/data-node/table-select.component.d.ts +38 -0
- package/dist/src/components/canvas/data-node/table-select.component.js +199 -0
- package/dist/src/components/canvas/interfaces/canvas-host.interface.d.ts +91 -0
- package/dist/src/components/canvas/interfaces/canvas-host.interface.js +7 -0
- package/dist/src/components/canvas/interfaces/collaboration.interface.d.ts +58 -0
- package/dist/src/components/canvas/interfaces/collaboration.interface.js +10 -0
- package/dist/src/components/canvas/interfaces/index.d.ts +8 -0
- package/dist/src/components/canvas/interfaces/index.js +7 -0
- package/dist/src/components/canvas/templates/chatbot-panel.template.d.ts +28 -0
- package/dist/src/components/canvas/templates/chatbot-panel.template.js +49 -0
- package/dist/src/components/canvas/templates/config-panel.template.d.ts +22 -0
- package/dist/src/components/canvas/templates/config-panel.template.js +22 -0
- package/dist/src/components/canvas/templates/context-menu.template.d.ts +30 -0
- package/dist/src/components/canvas/templates/context-menu.template.js +80 -0
- package/dist/src/components/canvas/templates/edges.template.d.ts +41 -0
- package/dist/src/components/canvas/templates/edges.template.js +243 -0
- package/dist/src/components/canvas/templates/empty-state.template.d.ts +17 -0
- package/dist/src/components/canvas/templates/empty-state.template.js +25 -0
- package/dist/src/components/canvas/templates/frame.template.d.ts +24 -0
- package/dist/src/components/canvas/templates/frame.template.js +74 -0
- package/dist/src/components/canvas/templates/index.d.ts +18 -0
- package/dist/src/components/canvas/templates/index.js +30 -0
- package/dist/src/components/canvas/templates/palette.template.d.ts +27 -0
- package/dist/src/components/canvas/templates/palette.template.js +110 -0
- package/dist/src/components/canvas/templates/presence-bar.template.d.ts +18 -0
- package/dist/src/components/canvas/templates/presence-bar.template.js +60 -0
- package/dist/src/components/canvas/templates/remote-cursors.template.d.ts +19 -0
- package/dist/src/components/canvas/templates/remote-cursors.template.js +43 -0
- package/dist/src/components/canvas/templates/toolbar.template.d.ts +52 -0
- package/dist/src/components/canvas/templates/toolbar.template.js +118 -0
- package/dist/src/components/canvas/templates/wb-floating-toolbar.template.d.ts +30 -0
- package/dist/src/components/canvas/templates/wb-floating-toolbar.template.js +219 -0
- package/dist/src/components/canvas/templates/wb-sidebar.template.d.ts +23 -0
- package/dist/src/components/canvas/templates/wb-sidebar.template.js +152 -0
- package/dist/src/components/canvas/utils/variable-resolver.d.ts +71 -0
- package/dist/src/components/canvas/utils/variable-resolver.js +280 -0
- package/dist/src/components/canvas/workflow-canvas.component.d.ts +7 -0
- package/dist/src/components/canvas/workflow-canvas.component.js +52 -2
- package/dist/src/components/canvas/workflow-canvas.style.js +46 -55
- package/dist/src/components/canvas/workflow-canvas.types.d.ts +8 -1
- package/dist/src/components/canvas/workflow-canvas.types.js +157 -0
- package/dist/src/components/carousel/demo/carousel-demo.d.ts +6 -0
- package/dist/src/components/carousel/demo/carousel-demo.js +68 -0
- package/dist/src/components/chat-panel/bundle.js +216 -0
- package/dist/src/components/chat-panel/bundle.js.gz +0 -0
- package/dist/src/components/chat-panel/chat-panel.component.d.ts +85 -0
- package/dist/src/components/chat-panel/chat-panel.component.js +510 -0
- package/dist/src/components/chat-panel/chat-panel.style.d.ts +2 -0
- package/dist/src/components/chat-panel/chat-panel.style.js +127 -0
- package/dist/src/components/chat-panel/chat-panel.types.d.ts +54 -0
- package/dist/src/components/chat-panel/chat-panel.types.js +2 -0
- package/dist/src/components/chat-panel/index.d.ts +3 -0
- package/dist/src/components/chat-panel/index.js +2 -0
- package/dist/src/components/chatbot/audio-compress.d.ts +26 -0
- package/dist/src/components/chatbot/audio-compress.js +84 -0
- package/dist/src/components/chatbot/bundle.js +388 -144
- package/dist/src/components/chatbot/bundle.js.gz +0 -0
- package/dist/src/components/chatbot/chatbot-audio.controller.d.ts +35 -0
- package/dist/src/components/chatbot/chatbot-audio.controller.js +160 -0
- package/dist/src/components/chatbot/chatbot.component.d.ts +12 -0
- package/dist/src/components/chatbot/chatbot.component.js +41 -2
- package/dist/src/components/chatbot/chatbot.style.js +141 -0
- package/dist/src/components/chatbot/chatbot.types.d.ts +8 -0
- package/dist/src/components/chatbot/controllers/index.d.ts +8 -0
- package/dist/src/components/chatbot/controllers/index.js +8 -0
- package/dist/src/components/chatbot/controllers/scroll.controller.d.ts +34 -0
- package/dist/src/components/chatbot/controllers/scroll.controller.js +43 -0
- package/dist/src/components/chatbot/core/chatbot-core.controller.d.ts +283 -0
- package/dist/src/components/chatbot/core/chatbot-core.controller.js +824 -0
- package/dist/src/components/chatbot/core/event-bus.d.ts +54 -0
- package/dist/src/components/chatbot/core/event-bus.js +102 -0
- package/dist/src/components/chatbot/core/index.d.ts +12 -0
- package/dist/src/components/chatbot/core/index.js +15 -0
- package/dist/src/components/chatbot/core/types.d.ts +403 -0
- package/dist/src/components/chatbot/core/types.js +16 -0
- package/dist/src/components/chatbot/locales/locale-codes.d.ts +14 -0
- package/dist/src/components/chatbot/locales/locale-codes.js +23 -0
- package/dist/src/components/chatbot/plugins/analytics-plugin.d.ts +23 -0
- package/dist/src/components/chatbot/plugins/analytics-plugin.js +52 -0
- package/dist/src/components/chatbot/plugins/artifact-plugin.d.ts +71 -0
- package/dist/src/components/chatbot/plugins/artifact-plugin.js +313 -0
- package/dist/src/components/chatbot/plugins/chat-plugin.d.ts +44 -0
- package/dist/src/components/chatbot/plugins/chat-plugin.js +58 -0
- package/dist/src/components/chatbot/plugins/flight-card-plugin.d.ts +116 -0
- package/dist/src/components/chatbot/plugins/flight-card-plugin.js +594 -0
- package/dist/src/components/chatbot/plugins/flow-diagram-plugin.d.ts +23 -0
- package/dist/src/components/chatbot/plugins/flow-diagram-plugin.js +495 -0
- package/dist/src/components/chatbot/plugins/index.d.ts +16 -0
- package/dist/src/components/chatbot/plugins/index.js +17 -0
- package/dist/src/components/chatbot/plugins/json-graph-renderer-plugin.d.ts +43 -0
- package/dist/src/components/chatbot/plugins/json-graph-renderer-plugin.js +166 -0
- package/dist/src/components/chatbot/plugins/markdown-plugin.d.ts +26 -0
- package/dist/src/components/chatbot/plugins/markdown-plugin.js +68 -0
- package/dist/src/components/chatbot/plugins/persistence-plugin.d.ts +30 -0
- package/dist/src/components/chatbot/plugins/persistence-plugin.js +91 -0
- package/dist/src/components/chatbot/plugins/print-job-card-plugin.d.ts +110 -0
- package/dist/src/components/chatbot/plugins/print-job-card-plugin.js +505 -0
- package/dist/src/components/chatbot/plugins/selection-card-plugin.d.ts +111 -0
- package/dist/src/components/chatbot/plugins/selection-card-plugin.js +318 -0
- package/dist/src/components/chatbot/providers/custom-api-provider.d.ts +63 -0
- package/dist/src/components/chatbot/providers/custom-api-provider.js +240 -0
- package/dist/src/components/chatbot/providers/index.d.ts +16 -0
- package/dist/src/components/chatbot/providers/index.js +13 -0
- package/dist/src/components/chatbot/providers/mock-provider.d.ts +154 -0
- package/dist/src/components/chatbot/providers/mock-provider.js +411 -0
- package/dist/src/components/chatbot/providers/native-ws-provider.d.ts +184 -0
- package/dist/src/components/chatbot/providers/native-ws-provider.js +544 -0
- package/dist/src/components/chatbot/providers/openai-provider.d.ts +32 -0
- package/dist/src/components/chatbot/providers/openai-provider.js +246 -0
- package/dist/src/components/chatbot/providers/socket-provider.d.ts +159 -0
- package/dist/src/components/chatbot/providers/socket-provider.js +390 -0
- package/dist/src/components/chatbot/providers/workflow-socket-provider.d.ts +116 -0
- package/dist/src/components/chatbot/providers/workflow-socket-provider.js +484 -0
- package/dist/src/components/chatbot/storage/index.d.ts +7 -0
- package/dist/src/components/chatbot/storage/index.js +8 -0
- package/dist/src/components/chatbot/storage/storage-implementations.d.ts +43 -0
- package/dist/src/components/chatbot/storage/storage-implementations.js +179 -0
- package/dist/src/components/chatbot/templates/artifact-panel.template.d.ts +22 -0
- package/dist/src/components/chatbot/templates/artifact-panel.template.js +81 -0
- package/dist/src/components/chatbot/templates/chatbot-main.template.d.ts +49 -0
- package/dist/src/components/chatbot/templates/chatbot-main.template.js +115 -0
- package/dist/src/components/chatbot/templates/file-preview-modal.template.d.ts +19 -0
- package/dist/src/components/chatbot/templates/file-preview-modal.template.js +74 -0
- package/dist/src/components/chatbot/templates/file-upload-area.template.d.ts +19 -0
- package/dist/src/components/chatbot/templates/file-upload-area.template.js +29 -0
- package/dist/src/components/chatbot/templates/index.d.ts +15 -0
- package/dist/src/components/chatbot/templates/index.js +15 -0
- package/dist/src/components/chatbot/templates/input-box.template.d.ts +49 -0
- package/dist/src/components/chatbot/templates/input-box.template.js +317 -0
- package/dist/src/components/chatbot/templates/message.template.d.ts +31 -0
- package/dist/src/components/chatbot/templates/message.template.js +214 -0
- package/dist/src/components/chatbot/templates/suggestion.template.d.ts +20 -0
- package/dist/src/components/chatbot/templates/suggestion.template.js +40 -0
- package/dist/src/components/chatbot/templates/thread-sidebar.template.d.ts +24 -0
- package/dist/src/components/chatbot/templates/thread-sidebar.template.js +160 -0
- package/dist/src/components/chatbot/templates/url-modal.template.d.ts +25 -0
- package/dist/src/components/chatbot/templates/url-modal.template.js +100 -0
- package/dist/src/components/chatbot/utils/format.d.ts +23 -0
- package/dist/src/components/chatbot/utils/format.js +84 -0
- package/dist/src/components/chatbot/utils/index.d.ts +7 -0
- package/dist/src/components/chatbot/utils/index.js +7 -0
- package/dist/src/components/checkbox/mixins/checkbox-event-mixin.d.ts +87 -0
- package/dist/src/components/checkbox/mixins/checkbox-event-mixin.js +94 -0
- package/dist/src/components/checkbox/mixins/checkbox-focus-mixin.d.ts +55 -0
- package/dist/src/components/checkbox/mixins/checkbox-focus-mixin.js +57 -0
- package/dist/src/components/checkbox/mixins/index.d.ts +10 -0
- package/dist/src/components/checkbox/mixins/index.js +8 -0
- package/dist/src/components/checkbox/test/checkbox_test.d.ts +2 -0
- package/dist/src/components/checkbox/test/checkbox_test.js +88 -0
- package/dist/src/components/collapse/controllers/accordion.controller.d.ts +60 -0
- package/dist/src/components/collapse/controllers/accordion.controller.js +132 -0
- package/dist/src/components/collapse/controllers/animation.controller.d.ts +40 -0
- package/dist/src/components/collapse/controllers/animation.controller.js +125 -0
- package/dist/src/components/collapse/controllers/base.controller.d.ts +48 -0
- package/dist/src/components/collapse/controllers/base.controller.js +69 -0
- package/dist/src/components/collapse/controllers/index.d.ts +12 -0
- package/dist/src/components/collapse/controllers/index.js +11 -0
- package/dist/src/components/collapse/controllers/keyboard.controller.d.ts +73 -0
- package/dist/src/components/collapse/controllers/keyboard.controller.js +186 -0
- package/dist/src/components/colorpicker/controllers/base.controller.d.ts +14 -0
- package/dist/src/components/colorpicker/controllers/base.controller.js +15 -0
- package/dist/src/components/colorpicker/controllers/dropdown.controller.d.ts +60 -0
- package/dist/src/components/colorpicker/controllers/dropdown.controller.js +243 -0
- package/dist/src/components/colorpicker/controllers/event.controller.d.ts +46 -0
- package/dist/src/components/colorpicker/controllers/event.controller.js +130 -0
- package/dist/src/components/colorpicker/controllers/index.d.ts +4 -0
- package/dist/src/components/colorpicker/controllers/index.js +4 -0
- package/dist/src/components/colorpicker/interfaces/index.d.ts +60 -0
- package/dist/src/components/colorpicker/interfaces/index.js +2 -0
- package/dist/src/components/datepicker/controllers/calendar.controller.d.ts +78 -0
- package/dist/src/components/datepicker/controllers/calendar.controller.js +225 -0
- package/dist/src/components/datepicker/controllers/index.d.ts +11 -0
- package/dist/src/components/datepicker/controllers/index.js +11 -0
- package/dist/src/components/datepicker/controllers/keyboard.controller.d.ts +96 -0
- package/dist/src/components/datepicker/controllers/keyboard.controller.js +246 -0
- package/dist/src/components/datepicker/controllers/month-year-dropdown.controller.d.ts +48 -0
- package/dist/src/components/datepicker/controllers/month-year-dropdown.controller.js +92 -0
- package/dist/src/components/datepicker/controllers/positioning.controller.d.ts +82 -0
- package/dist/src/components/datepicker/controllers/positioning.controller.js +247 -0
- package/dist/src/components/datepicker/controllers/selection.controller.d.ts +92 -0
- package/dist/src/components/datepicker/controllers/selection.controller.js +267 -0
- package/dist/src/components/datepicker/interfaces/base-controller.interface.d.ts +40 -0
- package/dist/src/components/datepicker/interfaces/base-controller.interface.js +7 -0
- package/dist/src/components/datepicker/interfaces/datepicker-controllers.interface.d.ts +112 -0
- package/dist/src/components/datepicker/interfaces/datepicker-controllers.interface.js +7 -0
- package/dist/src/components/datepicker/interfaces/index.d.ts +8 -0
- package/dist/src/components/datepicker/interfaces/index.js +7 -0
- package/dist/src/components/datepicker/templates/days.template.d.ts +4 -0
- package/dist/src/components/datepicker/templates/days.template.js +40 -0
- package/dist/src/components/datepicker/templates/dropdown.template.d.ts +10 -0
- package/dist/src/components/datepicker/templates/dropdown.template.js +50 -0
- package/dist/src/components/datepicker/templates/headers.template.d.ts +2 -0
- package/dist/src/components/datepicker/templates/headers.template.js +5 -0
- package/dist/src/components/datepicker/templates/months.template.d.ts +6 -0
- package/dist/src/components/datepicker/templates/months.template.js +10 -0
- package/dist/src/components/datepicker/templates/years.template.d.ts +6 -0
- package/dist/src/components/datepicker/templates/years.template.js +11 -0
- package/dist/src/components/datepicker/test/datepicker_test.d.ts +2 -0
- package/dist/src/components/datepicker/test/datepicker_test.js +134 -0
- package/dist/src/components/datepicker/utils/day.helper.d.ts +5 -0
- package/dist/src/components/datepicker/utils/day.helper.js +53 -0
- package/dist/src/components/datepicker/utils/formatter.d.ts +2 -0
- package/dist/src/components/datepicker/utils/formatter.js +9 -0
- package/dist/src/components/datepicker/utils/index.d.ts +11 -0
- package/dist/src/components/datepicker/utils/index.js +11 -0
- package/dist/src/components/datepicker/utils/locale.helper.d.ts +144 -0
- package/dist/src/components/datepicker/utils/locale.helper.js +151 -0
- package/dist/src/components/datepicker/utils/month.helper.d.ts +3 -0
- package/dist/src/components/datepicker/utils/month.helper.js +24 -0
- package/dist/src/components/datepicker/utils/string.helper.d.ts +2 -0
- package/dist/src/components/datepicker/utils/string.helper.js +4 -0
- package/dist/src/components/document/demo/document-demo.d.ts +12 -0
- package/dist/src/components/document/demo/document-demo.js +40 -0
- package/dist/src/components/dropdown/controllers/base.controller.d.ts +18 -0
- package/dist/src/components/dropdown/controllers/base.controller.js +22 -0
- package/dist/src/components/dropdown/controllers/dropdown.controller.d.ts +50 -0
- package/dist/src/components/dropdown/controllers/dropdown.controller.js +408 -0
- package/dist/src/components/dropdown/controllers/index.d.ts +3 -0
- package/dist/src/components/dropdown/controllers/index.js +3 -0
- package/dist/src/components/dropdown/interfaces/controller-interfaces.d.ts +79 -0
- package/dist/src/components/dropdown/interfaces/controller-interfaces.js +2 -0
- package/dist/src/components/dropdown/interfaces/index.d.ts +2 -0
- package/dist/src/components/dropdown/interfaces/index.js +2 -0
- package/dist/src/components/dropdown/templates/nr-dropdown-item.d.ts +12 -0
- package/dist/src/components/dropdown/templates/nr-dropdown-item.js +55 -0
- package/dist/src/components/dropdown/templates/nr-dropdown-item.style.d.ts +2 -0
- package/dist/src/components/dropdown/templates/nr-dropdown-item.style.js +34 -0
- package/dist/src/components/dropdown/templates/nr-dropdown-menu.d.ts +18 -0
- package/dist/src/components/dropdown/templates/nr-dropdown-menu.js +70 -0
- package/dist/src/components/dropdown/templates/nr-dropdown-menu.style.d.ts +2 -0
- package/dist/src/components/dropdown/templates/nr-dropdown-menu.style.js +49 -0
- package/dist/src/components/file-upload/demo/file-upload-demo.d.ts +18 -0
- package/dist/src/components/file-upload/demo/file-upload-demo.js +156 -0
- package/dist/src/components/form/controllers/submission.controller.d.ts +60 -0
- package/dist/src/components/form/controllers/submission.controller.js +220 -0
- package/dist/src/components/form/controllers/validation.controller.d.ts +87 -0
- package/dist/src/components/form/controllers/validation.controller.js +236 -0
- package/dist/src/components/form/interfaces/validation.interface.d.ts +118 -0
- package/dist/src/components/form/interfaces/validation.interface.js +7 -0
- package/dist/src/components/icon/mixins/clickable-mixin.d.ts +57 -0
- package/dist/src/components/icon/mixins/clickable-mixin.js +111 -0
- package/dist/src/components/icon/mixins/index.d.ts +7 -0
- package/dist/src/components/icon/mixins/index.js +7 -0
- package/dist/src/components/iconpicker/controllers/event.controller.d.ts +38 -0
- package/dist/src/components/iconpicker/controllers/event.controller.js +68 -0
- package/dist/src/components/iconpicker/controllers/index.d.ts +9 -0
- package/dist/src/components/iconpicker/controllers/index.js +9 -0
- package/dist/src/components/iconpicker/controllers/search.controller.d.ts +34 -0
- package/dist/src/components/iconpicker/controllers/search.controller.js +55 -0
- package/dist/src/components/iconpicker/controllers/selection.controller.d.ts +27 -0
- package/dist/src/components/iconpicker/controllers/selection.controller.js +39 -0
- package/dist/src/components/iconpicker/interfaces/icon-picker.interface.d.ts +13 -0
- package/dist/src/components/iconpicker/interfaces/icon-picker.interface.js +7 -0
- package/dist/src/components/iconpicker/interfaces/index.d.ts +7 -0
- package/dist/src/components/iconpicker/interfaces/index.js +7 -0
- package/dist/src/components/iconpicker/utils/icon-filter.utils.d.ts +29 -0
- package/dist/src/components/iconpicker/utils/icon-filter.utils.js +96 -0
- package/dist/src/components/iconpicker/utils/icon-loader.utils.d.ts +39 -0
- package/dist/src/components/iconpicker/utils/icon-loader.utils.js +115 -0
- package/dist/src/components/iconpicker/utils/index.d.ts +8 -0
- package/dist/src/components/iconpicker/utils/index.js +8 -0
- package/dist/src/components/iconpicker/utils/lucide-icons.d.ts +10 -0
- package/dist/src/components/iconpicker/utils/lucide-icons.js +1624 -0
- package/dist/src/components/input/controllers/base.controller.d.ts +35 -0
- package/dist/src/components/input/controllers/base.controller.js +13 -0
- package/dist/src/components/input/controllers/event.controller.d.ts +111 -0
- package/dist/src/components/input/controllers/event.controller.js +355 -0
- package/dist/src/components/input/controllers/index.d.ts +14 -0
- package/dist/src/components/input/controllers/index.js +10 -0
- package/dist/src/components/input/controllers/state.controller.d.ts +153 -0
- package/dist/src/components/input/controllers/state.controller.js +245 -0
- package/dist/src/components/input/controllers/validation.controller.d.ts +205 -0
- package/dist/src/components/input/controllers/validation.controller.js +698 -0
- package/dist/src/components/input/mixins/focus-mixin.d.ts +60 -0
- package/dist/src/components/input/mixins/focus-mixin.js +65 -0
- package/dist/src/components/input/mixins/index.d.ts +12 -0
- package/dist/src/components/input/mixins/index.js +9 -0
- package/dist/src/components/input/mixins/number-mixin.d.ts +51 -0
- package/dist/src/components/input/mixins/number-mixin.js +128 -0
- package/dist/src/components/input/mixins/selection-mixin.d.ts +57 -0
- package/dist/src/components/input/mixins/selection-mixin.js +80 -0
- package/dist/src/components/input/test/nr-input_test.d.ts +2 -0
- package/dist/src/components/input/test/nr-input_test.js +159 -0
- package/dist/src/components/input/utils/index.d.ts +8 -0
- package/dist/src/components/input/utils/index.js +8 -0
- package/dist/src/components/input/utils/input-renderers.d.ts +54 -0
- package/dist/src/components/input/utils/input-renderers.js +178 -0
- package/dist/src/components/input/utils/input-validation.utils.d.ts +26 -0
- package/dist/src/components/input/utils/input-validation.utils.js +103 -0
- package/dist/src/components/menu/controllers/accessibility.controller.d.ts +86 -0
- package/dist/src/components/menu/controllers/accessibility.controller.js +235 -0
- package/dist/src/components/menu/controllers/base.controller.d.ts +41 -0
- package/dist/src/components/menu/controllers/base.controller.js +61 -0
- package/dist/src/components/menu/controllers/index.d.ts +10 -0
- package/dist/src/components/menu/controllers/index.js +10 -0
- package/dist/src/components/menu/controllers/keyboard.controller.d.ts +84 -0
- package/dist/src/components/menu/controllers/keyboard.controller.js +328 -0
- package/dist/src/components/menu/controllers/state.controller.d.ts +106 -0
- package/dist/src/components/menu/controllers/state.controller.js +249 -0
- package/dist/src/components/menu/interfaces/controller.interface.d.ts +51 -0
- package/dist/src/components/menu/interfaces/controller.interface.js +7 -0
- package/dist/src/components/menu/interfaces/index.d.ts +7 -0
- package/dist/src/components/menu/interfaces/index.js +7 -0
- package/dist/src/components/modal/controllers/index.d.ts +8 -0
- package/dist/src/components/modal/controllers/index.js +8 -0
- package/dist/src/components/modal/controllers/modal-drag-controller.d.ts +39 -0
- package/dist/src/components/modal/controllers/modal-drag-controller.js +108 -0
- package/dist/src/components/modal/controllers/modal-keyboard-controller.d.ts +36 -0
- package/dist/src/components/modal/controllers/modal-keyboard-controller.js +128 -0
- package/dist/src/components/panel/controllers/index.d.ts +8 -0
- package/dist/src/components/panel/controllers/index.js +8 -0
- package/dist/src/components/panel/controllers/panel-drag-controller.d.ts +40 -0
- package/dist/src/components/panel/controllers/panel-drag-controller.js +118 -0
- package/dist/src/components/panel/controllers/panel-resize-controller.d.ts +37 -0
- package/dist/src/components/panel/controllers/panel-resize-controller.js +124 -0
- package/dist/src/components/presence/bundle.js +555 -0
- package/dist/src/components/presence/bundle.js.gz +0 -0
- package/dist/src/components/presence/index.d.ts +10 -0
- package/dist/src/components/presence/index.js +10 -0
- package/dist/src/components/presence/presence-avatars.component.d.ts +40 -0
- package/dist/src/components/presence/presence-avatars.component.js +83 -0
- package/dist/src/components/presence/presence-avatars.style.d.ts +7 -0
- package/dist/src/components/presence/presence-avatars.style.js +105 -0
- package/dist/src/components/presence/presence-chat.component.d.ts +55 -0
- package/dist/src/components/presence/presence-chat.component.js +238 -0
- package/dist/src/components/presence/presence-chat.style.d.ts +7 -0
- package/dist/src/components/presence/presence-chat.style.js +248 -0
- package/dist/src/components/presence/presence.component.d.ts +95 -0
- package/dist/src/components/presence/presence.component.js +510 -0
- package/dist/src/components/presence/presence.style.d.ts +7 -0
- package/dist/src/components/presence/presence.style.js +12 -0
- package/dist/src/components/presence/presence.types.d.ts +33 -0
- package/dist/src/components/presence/presence.types.js +7 -0
- package/dist/src/components/presence/react.d.ts +24 -0
- package/dist/src/components/presence/react.js +41 -0
- package/dist/src/components/radio-group/controllers/focus.controller.d.ts +98 -0
- package/dist/src/components/radio-group/controllers/focus.controller.js +216 -0
- package/dist/src/components/radio-group/controllers/group.controller.d.ts +140 -0
- package/dist/src/components/radio-group/controllers/group.controller.js +179 -0
- package/dist/src/components/radio-group/controllers/index.d.ts +11 -0
- package/dist/src/components/radio-group/controllers/index.js +11 -0
- package/dist/src/components/radio-group/controllers/keyboard.controller.d.ts +24 -0
- package/dist/src/components/radio-group/controllers/keyboard.controller.js +93 -0
- package/dist/src/components/radio-group/controllers/ripple.controller.d.ts +59 -0
- package/dist/src/components/radio-group/controllers/ripple.controller.js +208 -0
- package/dist/src/components/radio-group/controllers/validation.controller.d.ts +73 -0
- package/dist/src/components/radio-group/controllers/validation.controller.js +108 -0
- package/dist/src/components/radio-group/interfaces/base-controller.interface.d.ts +75 -0
- package/dist/src/components/radio-group/interfaces/base-controller.interface.js +7 -0
- package/dist/src/components/radio-group/interfaces/focus-controller.interface.d.ts +40 -0
- package/dist/src/components/radio-group/interfaces/focus-controller.interface.js +7 -0
- package/dist/src/components/radio-group/interfaces/index.d.ts +11 -0
- package/dist/src/components/radio-group/interfaces/index.js +7 -0
- package/dist/src/components/radio-group/interfaces/ripple-controller.interface.d.ts +31 -0
- package/dist/src/components/radio-group/interfaces/ripple-controller.interface.js +7 -0
- package/dist/src/components/radio-group/interfaces/selection-controller.interface.d.ts +45 -0
- package/dist/src/components/radio-group/interfaces/selection-controller.interface.js +7 -0
- package/dist/src/components/radio-group/interfaces/validation-controller.interface.d.ts +48 -0
- package/dist/src/components/radio-group/interfaces/validation-controller.interface.js +7 -0
- package/dist/src/components/radio-group/test/radio_test.d.ts +2 -0
- package/dist/src/components/radio-group/test/radio_test.js +79 -0
- package/dist/src/components/select/controllers/base.controller.d.ts +10 -0
- package/dist/src/components/select/controllers/base.controller.js +8 -0
- package/dist/src/components/select/controllers/dropdown.controller.d.ts +76 -0
- package/dist/src/components/select/controllers/dropdown.controller.js +281 -0
- package/dist/src/components/select/controllers/event.controller.d.ts +54 -0
- package/dist/src/components/select/controllers/event.controller.js +113 -0
- package/dist/src/components/select/controllers/focus.controller.d.ts +79 -0
- package/dist/src/components/select/controllers/focus.controller.js +230 -0
- package/dist/src/components/select/controllers/index.d.ts +9 -0
- package/dist/src/components/select/controllers/index.js +9 -0
- package/dist/src/components/select/controllers/keyboard.controller.d.ts +75 -0
- package/dist/src/components/select/controllers/keyboard.controller.js +369 -0
- package/dist/src/components/select/controllers/search.controller.d.ts +71 -0
- package/dist/src/components/select/controllers/search.controller.js +167 -0
- package/dist/src/components/select/controllers/selection.controller.d.ts +67 -0
- package/dist/src/components/select/controllers/selection.controller.js +217 -0
- package/dist/src/components/select/controllers/validation.controller.d.ts +66 -0
- package/dist/src/components/select/controllers/validation.controller.js +189 -0
- package/dist/src/components/select/interfaces/base-controller.interface.d.ts +147 -0
- package/dist/src/components/select/interfaces/base-controller.interface.js +2 -0
- package/dist/src/components/select/interfaces/controller-interfaces.d.ts +94 -0
- package/dist/src/components/select/interfaces/controller-interfaces.js +11 -0
- package/dist/src/components/select/interfaces/index.d.ts +3 -0
- package/dist/src/components/select/interfaces/index.js +3 -0
- package/dist/src/components/slider-input/utils/debounce.d.ts +2 -0
- package/dist/src/components/slider-input/utils/debounce.js +8 -0
- package/dist/src/components/slider-input/utils/index.d.ts +2 -0
- package/dist/src/components/slider-input/utils/index.js +2 -0
- package/dist/src/components/table/controllers/base.controller.d.ts +15 -0
- package/dist/src/components/table/controllers/base.controller.js +13 -0
- package/dist/src/components/table/controllers/filter.controller.d.ts +48 -0
- package/dist/src/components/table/controllers/filter.controller.js +152 -0
- package/dist/src/components/table/controllers/index.d.ts +11 -0
- package/dist/src/components/table/controllers/index.js +11 -0
- package/dist/src/components/table/controllers/pagination.controller.d.ts +36 -0
- package/dist/src/components/table/controllers/pagination.controller.js +110 -0
- package/dist/src/components/table/controllers/selection.controller.d.ts +40 -0
- package/dist/src/components/table/controllers/selection.controller.js +120 -0
- package/dist/src/components/table/controllers/sort.controller.d.ts +32 -0
- package/dist/src/components/table/controllers/sort.controller.js +102 -0
- package/dist/src/components/table/interfaces/index.d.ts +7 -0
- package/dist/src/components/table/interfaces/index.js +7 -0
- package/dist/src/components/table/interfaces/table-host.interface.d.ts +48 -0
- package/dist/src/components/table/interfaces/table-host.interface.js +7 -0
- package/dist/src/components/table/templates/actions.template.d.ts +14 -0
- package/dist/src/components/table/templates/actions.template.js +15 -0
- package/dist/src/components/table/templates/column-filter.template.d.ts +24 -0
- package/dist/src/components/table/templates/column-filter.template.js +76 -0
- package/dist/src/components/table/templates/content.template.d.ts +37 -0
- package/dist/src/components/table/templates/content.template.js +208 -0
- package/dist/src/components/table/templates/empty.template.d.ts +8 -0
- package/dist/src/components/table/templates/empty.template.js +47 -0
- package/dist/src/components/table/templates/filter.template.d.ts +14 -0
- package/dist/src/components/table/templates/filter.template.js +28 -0
- package/dist/src/components/table/templates/index.d.ts +8 -0
- package/dist/src/components/table/templates/index.js +8 -0
- package/dist/src/components/table/templates/loading.template.d.ts +21 -0
- package/dist/src/components/table/templates/loading.template.js +51 -0
- package/dist/src/components/table/templates/pagination.template.d.ts +24 -0
- package/dist/src/components/table/templates/pagination.template.js +52 -0
- package/dist/src/components/tabs/controllers/base.controller.d.ts +49 -0
- package/dist/src/components/tabs/controllers/base.controller.js +26 -0
- package/dist/src/components/tabs/controllers/dragdrop.controller.d.ts +84 -0
- package/dist/src/components/tabs/controllers/dragdrop.controller.js +202 -0
- package/dist/src/components/tabs/controllers/editable.controller.d.ts +100 -0
- package/dist/src/components/tabs/controllers/editable.controller.js +242 -0
- package/dist/src/components/tabs/controllers/event.controller.d.ts +104 -0
- package/dist/src/components/tabs/controllers/event.controller.js +239 -0
- package/dist/src/components/tabs/controllers/index.d.ts +12 -0
- package/dist/src/components/tabs/controllers/index.js +18 -0
- package/dist/src/components/tabs/controllers/keyboard.controller.d.ts +85 -0
- package/dist/src/components/tabs/controllers/keyboard.controller.js +233 -0
- package/dist/src/components/tabs/controllers/popout.controller.d.ts +96 -0
- package/dist/src/components/tabs/controllers/popout.controller.js +441 -0
- package/dist/src/components/textarea/controllers/base.controller.d.ts +43 -0
- package/dist/src/components/textarea/controllers/base.controller.js +19 -0
- package/dist/src/components/textarea/controllers/event.controller.d.ts +169 -0
- package/dist/src/components/textarea/controllers/event.controller.js +408 -0
- package/dist/src/components/textarea/controllers/index.d.ts +9 -0
- package/dist/src/components/textarea/controllers/index.js +9 -0
- package/dist/src/components/textarea/controllers/validation.controller.d.ts +133 -0
- package/dist/src/components/textarea/controllers/validation.controller.js +315 -0
- package/dist/src/components/timepicker/controllers/formatting.controller.d.ts +93 -0
- package/dist/src/components/timepicker/controllers/formatting.controller.js +195 -0
- package/dist/src/components/timepicker/controllers/index.d.ts +9 -0
- package/dist/src/components/timepicker/controllers/index.js +9 -0
- package/dist/src/components/timepicker/controllers/selection.controller.d.ts +72 -0
- package/dist/src/components/timepicker/controllers/selection.controller.js +175 -0
- package/dist/src/components/timepicker/controllers/validation.controller.d.ts +88 -0
- package/dist/src/components/timepicker/controllers/validation.controller.js +200 -0
- package/dist/src/components/timepicker/interfaces/timepicker.interface.d.ts +103 -0
- package/dist/src/components/timepicker/interfaces/timepicker.interface.js +7 -0
- package/dist/src/components/timepicker/test/timepicker_test.d.ts +7 -0
- package/dist/src/components/timepicker/test/timepicker_test.js +218 -0
- package/dist/src/components/timepicker/utils/time.utils.d.ts +87 -0
- package/dist/src/components/timepicker/utils/time.utils.js +235 -0
- package/dist/src/components/toast/bundle.js +11 -9
- package/dist/src/components/toast/bundle.js.gz +0 -0
- package/dist/src/components/toast/controllers/base.controller.d.ts +20 -0
- package/dist/src/components/toast/controllers/base.controller.js +12 -0
- package/dist/src/components/toast/controllers/index.d.ts +8 -0
- package/dist/src/components/toast/controllers/index.js +7 -0
- package/dist/src/components/toast/toast.component.d.ts +8 -0
- package/dist/src/components/toast/toast.component.js +17 -7
- package/dist/src/components/tooltips/demo/tooltips-demo.d.ts +18 -0
- package/dist/src/components/tooltips/demo/tooltips-demo.js +132 -0
- package/dist/src/components/tooltips/test/tooltips_test.d.ts +2 -0
- package/dist/src/components/tooltips/test/tooltips_test.js +145 -0
- package/dist/src/components/video/bundle.js +13 -12
- package/dist/src/components/video/bundle.js.gz +0 -0
- package/dist/src/components/video/video.component.d.ts +15 -1
- package/dist/src/components/video/video.component.js +131 -3
- package/package.json +31 -10
- package/packages/common/dist/VERSIONS.md +1 -1
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Nuraly, Laabidi Aymen
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*/
|
|
6
|
+
import { RadioBaseController } from './base-controller.interface.js';
|
|
7
|
+
/**
|
|
8
|
+
* Interface for controllers that handle visual effects like ripples
|
|
9
|
+
*/
|
|
10
|
+
export interface RippleController extends RadioBaseController {
|
|
11
|
+
/**
|
|
12
|
+
* Add a ripple effect at the event location
|
|
13
|
+
* @param event - The event that triggered the ripple (click, touch, etc.)
|
|
14
|
+
*/
|
|
15
|
+
addRippleEffect(event: Event): void;
|
|
16
|
+
/**
|
|
17
|
+
* Add a ripple effect at a specific element
|
|
18
|
+
* @param element - The element to add ripple effect to
|
|
19
|
+
*/
|
|
20
|
+
addRippleEffectToElement(element: HTMLElement): void;
|
|
21
|
+
/**
|
|
22
|
+
* Clear all active ripple effects
|
|
23
|
+
*/
|
|
24
|
+
clearRipples(): void;
|
|
25
|
+
/**
|
|
26
|
+
* Set whether ripple effects are enabled
|
|
27
|
+
* @param enabled - True to enable ripple effects
|
|
28
|
+
*/
|
|
29
|
+
setRippleEnabled(enabled: boolean): void;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=ripple-controller.interface.d.ts.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Nuraly, Laabidi Aymen
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*/
|
|
6
|
+
import { RadioBaseController } from './base-controller.interface.js';
|
|
7
|
+
import { RadioButtonOption } from '../radio-group.types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Interface for controllers that handle radio button selection logic
|
|
10
|
+
*/
|
|
11
|
+
export interface SelectionController extends RadioBaseController {
|
|
12
|
+
/**
|
|
13
|
+
* Select a radio option programmatically
|
|
14
|
+
* @param option - The option to select
|
|
15
|
+
* @throws {Error} When option is disabled or invalid
|
|
16
|
+
*/
|
|
17
|
+
selectOption(option: RadioButtonOption): void;
|
|
18
|
+
/**
|
|
19
|
+
* Get the currently selected option
|
|
20
|
+
* @returns The selected option or undefined if none selected
|
|
21
|
+
*/
|
|
22
|
+
getSelectedOption(): RadioButtonOption | undefined;
|
|
23
|
+
/**
|
|
24
|
+
* Check if a specific option is currently selected
|
|
25
|
+
* @param option - The option to check
|
|
26
|
+
* @returns True if the option is selected
|
|
27
|
+
*/
|
|
28
|
+
isOptionSelected(option: RadioButtonOption): boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Check if a specific option is disabled
|
|
31
|
+
* @param option - The option to check
|
|
32
|
+
* @returns True if the option is disabled
|
|
33
|
+
*/
|
|
34
|
+
isOptionDisabled(option: RadioButtonOption): boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Get the current selected value as a string
|
|
37
|
+
* @returns The selected value or empty string
|
|
38
|
+
*/
|
|
39
|
+
getSelectedValue(): string;
|
|
40
|
+
/**
|
|
41
|
+
* Reset the selection to no option selected
|
|
42
|
+
*/
|
|
43
|
+
reset(): void;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=selection-controller.interface.d.ts.map
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Nuraly, Laabidi Aymen
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*/
|
|
6
|
+
import { RadioBaseController } from './base-controller.interface.js';
|
|
7
|
+
/**
|
|
8
|
+
* Interface for controllers that handle form validation
|
|
9
|
+
*/
|
|
10
|
+
export interface ValidationController extends RadioBaseController {
|
|
11
|
+
/**
|
|
12
|
+
* Validate the current radio group state
|
|
13
|
+
* @returns True if the radio group passes validation
|
|
14
|
+
*/
|
|
15
|
+
validate(): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Get the current validation message
|
|
18
|
+
* @returns The validation message or empty string if valid
|
|
19
|
+
*/
|
|
20
|
+
get validationMessage(): string;
|
|
21
|
+
/**
|
|
22
|
+
* Check if the radio group is currently valid
|
|
23
|
+
* @returns True if the radio group is valid
|
|
24
|
+
*/
|
|
25
|
+
get isValid(): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Get form data for form submission
|
|
28
|
+
* @returns Object with name-value pairs for form submission
|
|
29
|
+
*/
|
|
30
|
+
getFormData(): {
|
|
31
|
+
[key: string]: string;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Get FormData object for native form submission
|
|
35
|
+
* @returns FormData object or null if no data to submit
|
|
36
|
+
*/
|
|
37
|
+
getFormDataObject(): FormData | null;
|
|
38
|
+
/**
|
|
39
|
+
* Reset validation state and clear any validation messages
|
|
40
|
+
*/
|
|
41
|
+
reset(): void;
|
|
42
|
+
/**
|
|
43
|
+
* Report validation state (HTML5 form validation API)
|
|
44
|
+
* @returns True if valid, dispatches invalid event if not
|
|
45
|
+
*/
|
|
46
|
+
reportValidity(): boolean;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=validation-controller.interface.d.ts.map
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { fixture, expect, html } from '@open-wc/testing';
|
|
11
|
+
import '../radio-group.component';
|
|
12
|
+
suite('NrRadioGroupElement', () => {
|
|
13
|
+
test('should render options correctly', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
14
|
+
const options = [
|
|
15
|
+
{ label: 'Option 1', value: '1' },
|
|
16
|
+
{ label: 'Option 2', value: '2' },
|
|
17
|
+
];
|
|
18
|
+
const value = options[0].value;
|
|
19
|
+
const el = yield fixture(html `<nr-radio-group .options=${options} .value=${value}></nr-radio-group>`);
|
|
20
|
+
const radioOptions = el.shadowRoot.querySelectorAll('.radio');
|
|
21
|
+
expect(radioOptions.length).to.equal(options.length);
|
|
22
|
+
const selectedRadio = el.shadowRoot.querySelector('input[type="radio"]:checked');
|
|
23
|
+
expect(selectedRadio.value).to.equal(value);
|
|
24
|
+
}));
|
|
25
|
+
test('should handle option change', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
26
|
+
const options = [
|
|
27
|
+
{ label: 'Option 1', value: '1' },
|
|
28
|
+
{ label: 'Option 2', value: '2' },
|
|
29
|
+
];
|
|
30
|
+
const value = options[0].value;
|
|
31
|
+
const el = yield fixture(html `<nr-radio-group .options=${options} .value=${value}></nr-radio-group>`);
|
|
32
|
+
expect(el.selectedOption).to.equal(value);
|
|
33
|
+
const radioInputs = el.shadowRoot.querySelectorAll('input[type="radio"]');
|
|
34
|
+
radioInputs[1].click();
|
|
35
|
+
expect(el.selectedOption).to.equal('2');
|
|
36
|
+
}));
|
|
37
|
+
test('should disable all options if one default option is disabled', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
38
|
+
const options = [
|
|
39
|
+
{ label: 'Option 1', value: '1', disabled: true },
|
|
40
|
+
{ label: 'Option 2', value: '2' },
|
|
41
|
+
];
|
|
42
|
+
const value = options[0].value;
|
|
43
|
+
const el = yield fixture(html `<nr-radio-group .options=${options} .value=${value}></nr-radio-group>`);
|
|
44
|
+
const radioInputs = el.shadowRoot.querySelectorAll('input[type="radio"]');
|
|
45
|
+
radioInputs.forEach((input) => {
|
|
46
|
+
expect(input.disabled).to.be.true;
|
|
47
|
+
});
|
|
48
|
+
}));
|
|
49
|
+
test('should dispatch a change event when option is changed', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
50
|
+
const options = [
|
|
51
|
+
{ label: 'Option 1', value: '1' },
|
|
52
|
+
{ label: 'Option 2', value: '2' },
|
|
53
|
+
];
|
|
54
|
+
const el = yield fixture(html `<nr-radio-group .options=${options}></nr-radio-group>`);
|
|
55
|
+
const radioInput = el.shadowRoot.querySelector('input[type="radio"]');
|
|
56
|
+
let changeEventTriggered = false;
|
|
57
|
+
el.addEventListener('change', () => {
|
|
58
|
+
changeEventTriggered = true;
|
|
59
|
+
});
|
|
60
|
+
radioInput.click();
|
|
61
|
+
expect(changeEventTriggered).to.be.true;
|
|
62
|
+
}));
|
|
63
|
+
test('should not dispatch a change event when the same option is clicked', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
64
|
+
const options = [
|
|
65
|
+
{ label: 'Option 1', value: '1' },
|
|
66
|
+
{ label: 'Option 2', value: '2' },
|
|
67
|
+
];
|
|
68
|
+
const defaultOption = options[0].value;
|
|
69
|
+
const el = yield fixture(html `<nr-radio-group .options=${options} .value=${defaultOption}></nr-radio-group>`);
|
|
70
|
+
const radioInput = el.shadowRoot.querySelectorAll('input[type="radio"]')[0];
|
|
71
|
+
let changeEventTriggered = false;
|
|
72
|
+
el.addEventListener('change', () => {
|
|
73
|
+
changeEventTriggered = true;
|
|
74
|
+
});
|
|
75
|
+
radioInput.click();
|
|
76
|
+
expect(changeEventTriggered).to.be.false;
|
|
77
|
+
}));
|
|
78
|
+
});
|
|
79
|
+
//# sourceMappingURL=radio_test.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ReactiveControllerHost } from 'lit';
|
|
2
|
+
import { SelectBaseController, SelectHost, ErrorHandler } from '../interfaces/index.js';
|
|
3
|
+
import { BaseComponentController } from '@nuralyui/common/controllers';
|
|
4
|
+
/**
|
|
5
|
+
* Abstract base controller class that implements common functionality
|
|
6
|
+
* for all select component controllers
|
|
7
|
+
*/
|
|
8
|
+
export declare abstract class BaseSelectController extends BaseComponentController<SelectHost & ReactiveControllerHost> implements SelectBaseController, ErrorHandler {
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=base.controller.d.ts.map
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BaseComponentController } from '@nuralyui/common/controllers';
|
|
2
|
+
/**
|
|
3
|
+
* Abstract base controller class that implements common functionality
|
|
4
|
+
* for all select component controllers
|
|
5
|
+
*/
|
|
6
|
+
export class BaseSelectController extends BaseComponentController {
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=base.controller.js.map
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { DropdownController, DropdownPosition, DropdownSpace } from '../interfaces/index.js';
|
|
2
|
+
import { BaseSelectController } from './base.controller.js';
|
|
3
|
+
/**
|
|
4
|
+
* Dropdown controller manages dropdown positioning, visibility, and interactions
|
|
5
|
+
*/
|
|
6
|
+
export declare class SelectDropdownController extends BaseSelectController implements DropdownController {
|
|
7
|
+
private _isOpen;
|
|
8
|
+
private _position;
|
|
9
|
+
private _dropdownElement;
|
|
10
|
+
private _triggerElement;
|
|
11
|
+
/**
|
|
12
|
+
* Check if dropdown is open
|
|
13
|
+
*/
|
|
14
|
+
get isOpen(): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Get current dropdown position
|
|
17
|
+
*/
|
|
18
|
+
get position(): DropdownPosition;
|
|
19
|
+
/**
|
|
20
|
+
* Open the dropdown
|
|
21
|
+
*/
|
|
22
|
+
open(): void;
|
|
23
|
+
/**
|
|
24
|
+
* Close the dropdown
|
|
25
|
+
*/
|
|
26
|
+
close(): void;
|
|
27
|
+
/**
|
|
28
|
+
* Toggle dropdown visibility
|
|
29
|
+
*/
|
|
30
|
+
toggle(): void;
|
|
31
|
+
/**
|
|
32
|
+
* Focus the search input if searchable is enabled
|
|
33
|
+
*/
|
|
34
|
+
private focusSearchInput;
|
|
35
|
+
/**
|
|
36
|
+
* Calculate optimal dropdown placement using fixed positioning
|
|
37
|
+
*/
|
|
38
|
+
calculatePosition(): void;
|
|
39
|
+
/**
|
|
40
|
+
* Reset dropdown position
|
|
41
|
+
*/
|
|
42
|
+
resetPosition(): void;
|
|
43
|
+
/**
|
|
44
|
+
* Set dropdown and trigger element references
|
|
45
|
+
*/
|
|
46
|
+
setElements(dropdownElement: HTMLElement, triggerElement: HTMLElement): void;
|
|
47
|
+
/**
|
|
48
|
+
* Find dropdown and trigger elements
|
|
49
|
+
*/
|
|
50
|
+
private findElements;
|
|
51
|
+
/**
|
|
52
|
+
* Apply calculated position to dropdown element using fixed positioning
|
|
53
|
+
*/
|
|
54
|
+
private applyPosition;
|
|
55
|
+
/**
|
|
56
|
+
* Calculate available space around trigger
|
|
57
|
+
*/
|
|
58
|
+
getAvailableSpace(): DropdownSpace;
|
|
59
|
+
/**
|
|
60
|
+
* Handle window resize to recalculate position
|
|
61
|
+
*/
|
|
62
|
+
private handleResize;
|
|
63
|
+
/**
|
|
64
|
+
* Handle scroll to manage dropdown visibility and position
|
|
65
|
+
*/
|
|
66
|
+
private handleScroll;
|
|
67
|
+
/**
|
|
68
|
+
* Host connected lifecycle
|
|
69
|
+
*/
|
|
70
|
+
hostConnected(): void;
|
|
71
|
+
/**
|
|
72
|
+
* Host disconnected lifecycle
|
|
73
|
+
*/
|
|
74
|
+
hostDisconnected(): void;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=dropdown.controller.d.ts.map
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
import { BaseSelectController } from './base.controller.js';
|
|
2
|
+
import { calculateFixedPosition, applyFixedPosition, applyHeightConstraints, resetDropdownPosition, isTriggerInViewport } from '../../../shared/utils/dropdown-positioning.js';
|
|
3
|
+
/**
|
|
4
|
+
* Dropdown controller manages dropdown positioning, visibility, and interactions
|
|
5
|
+
*/
|
|
6
|
+
export class SelectDropdownController extends BaseSelectController {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this._isOpen = false;
|
|
10
|
+
this._position = { top: 0, left: 0, width: 0, placement: 'bottom' };
|
|
11
|
+
this._dropdownElement = null;
|
|
12
|
+
this._triggerElement = null;
|
|
13
|
+
/**
|
|
14
|
+
* Handle window resize to recalculate position
|
|
15
|
+
*/
|
|
16
|
+
this.handleResize = () => {
|
|
17
|
+
if (this._isOpen) {
|
|
18
|
+
this.calculatePosition();
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Handle scroll to manage dropdown visibility and position
|
|
23
|
+
*/
|
|
24
|
+
this.handleScroll = () => {
|
|
25
|
+
if (this._isOpen && this._triggerElement) {
|
|
26
|
+
// Close dropdown if trigger is scrolled out of view
|
|
27
|
+
if (!isTriggerInViewport(this._triggerElement)) {
|
|
28
|
+
this.close();
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
// With fixed positioning, we need to recalculate position on scroll
|
|
32
|
+
// to keep the dropdown aligned with the trigger
|
|
33
|
+
this.calculatePosition();
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Check if dropdown is open
|
|
40
|
+
*/
|
|
41
|
+
get isOpen() {
|
|
42
|
+
return this._isOpen;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Get current dropdown position
|
|
46
|
+
*/
|
|
47
|
+
get position() {
|
|
48
|
+
return Object.assign({}, this._position);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Open the dropdown
|
|
52
|
+
*/
|
|
53
|
+
open() {
|
|
54
|
+
try {
|
|
55
|
+
if (!this._isOpen) {
|
|
56
|
+
this._isOpen = true;
|
|
57
|
+
this.host.show = true;
|
|
58
|
+
this.requestUpdate();
|
|
59
|
+
// Always refresh elements before calculating position
|
|
60
|
+
this.findElements();
|
|
61
|
+
// Calculate position after DOM update
|
|
62
|
+
setTimeout(() => {
|
|
63
|
+
this.calculatePosition();
|
|
64
|
+
}, 10);
|
|
65
|
+
// Notify host to setup event listeners
|
|
66
|
+
if (this.host && typeof this.host.setupEventListeners === 'function') {
|
|
67
|
+
setTimeout(() => {
|
|
68
|
+
this.host.setupEventListeners();
|
|
69
|
+
}, 50);
|
|
70
|
+
}
|
|
71
|
+
// Focus search input if searchable
|
|
72
|
+
this.focusSearchInput();
|
|
73
|
+
this.dispatchEvent(new CustomEvent('nr-dropdown-open', {
|
|
74
|
+
bubbles: true,
|
|
75
|
+
composed: true,
|
|
76
|
+
}));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
this.handleError(error, 'open');
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Close the dropdown
|
|
85
|
+
*/
|
|
86
|
+
close() {
|
|
87
|
+
try {
|
|
88
|
+
if (this._isOpen) {
|
|
89
|
+
this._isOpen = false;
|
|
90
|
+
this.host.show = false;
|
|
91
|
+
this.resetPosition();
|
|
92
|
+
this.requestUpdate();
|
|
93
|
+
// Notify host to remove event listeners
|
|
94
|
+
if (this.host && typeof this.host.removeEventListeners === 'function') {
|
|
95
|
+
this.host.removeEventListeners();
|
|
96
|
+
}
|
|
97
|
+
this.dispatchEvent(new CustomEvent('nr-dropdown-close', {
|
|
98
|
+
bubbles: true,
|
|
99
|
+
composed: true,
|
|
100
|
+
}));
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
this.handleError(error, 'close');
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Toggle dropdown visibility
|
|
109
|
+
*/
|
|
110
|
+
toggle() {
|
|
111
|
+
if (this._isOpen) {
|
|
112
|
+
this.close();
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
this.open();
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Focus the search input if searchable is enabled
|
|
120
|
+
*/
|
|
121
|
+
focusSearchInput() {
|
|
122
|
+
try {
|
|
123
|
+
// Check if the host has searchable enabled
|
|
124
|
+
const host = this.host;
|
|
125
|
+
if (host && host.searchable) {
|
|
126
|
+
// Wait for the DOM to update and the input to be rendered
|
|
127
|
+
setTimeout(() => {
|
|
128
|
+
var _a;
|
|
129
|
+
const searchInput = (_a = host.querySelector) === null || _a === void 0 ? void 0 : _a.call(host, '.search-input');
|
|
130
|
+
if (searchInput && typeof searchInput.focus === 'function') {
|
|
131
|
+
searchInput.focus();
|
|
132
|
+
}
|
|
133
|
+
}, 100); // Slightly longer delay to ensure the input is fully rendered
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
catch (error) {
|
|
137
|
+
// Silently handle any focus errors to avoid breaking the dropdown
|
|
138
|
+
console.warn('Failed to focus search input:', error);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Calculate optimal dropdown placement using fixed positioning
|
|
143
|
+
*/
|
|
144
|
+
calculatePosition() {
|
|
145
|
+
try {
|
|
146
|
+
if (!this._dropdownElement || !this._triggerElement) {
|
|
147
|
+
this.findElements();
|
|
148
|
+
}
|
|
149
|
+
if (!this._dropdownElement || !this._triggerElement) {
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
// Use shared positioning utility
|
|
153
|
+
const position = calculateFixedPosition(this._triggerElement, this._dropdownElement, { offset: 4, viewportMargin: 8 });
|
|
154
|
+
// Store the calculated position
|
|
155
|
+
this._position = position;
|
|
156
|
+
this.applyPosition();
|
|
157
|
+
}
|
|
158
|
+
catch (error) {
|
|
159
|
+
this.handleError(error, 'calculatePosition');
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Reset dropdown position
|
|
164
|
+
*/
|
|
165
|
+
resetPosition() {
|
|
166
|
+
try {
|
|
167
|
+
if (this._dropdownElement) {
|
|
168
|
+
resetDropdownPosition(this._dropdownElement);
|
|
169
|
+
// Only remove max-height if host doesn't have a custom maxHeight
|
|
170
|
+
const customMaxHeight = this.host.maxHeight;
|
|
171
|
+
if (!customMaxHeight) {
|
|
172
|
+
this._dropdownElement.style.removeProperty('max-height');
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
catch (error) {
|
|
177
|
+
this.handleError(error, 'resetPosition');
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Set dropdown and trigger element references
|
|
182
|
+
*/
|
|
183
|
+
setElements(dropdownElement, triggerElement) {
|
|
184
|
+
this._dropdownElement = dropdownElement;
|
|
185
|
+
this._triggerElement = triggerElement;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Find dropdown and trigger elements
|
|
189
|
+
*/
|
|
190
|
+
findElements() {
|
|
191
|
+
try {
|
|
192
|
+
const hostElement = this._host;
|
|
193
|
+
// First priority: use the elements that were explicitly set via setElements()
|
|
194
|
+
// This ensures each instance gets its own elements
|
|
195
|
+
if (hostElement.optionsElement && hostElement.wrapper) {
|
|
196
|
+
this._dropdownElement = hostElement.optionsElement;
|
|
197
|
+
this._triggerElement = hostElement.wrapper;
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
// Fallback: try to find from Light DOM
|
|
201
|
+
if (hostElement.querySelector) {
|
|
202
|
+
this._dropdownElement = hostElement.querySelector('.options');
|
|
203
|
+
this._triggerElement = hostElement.querySelector('.wrapper');
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
catch (error) {
|
|
207
|
+
this.handleError(error, 'findElements');
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Apply calculated position to dropdown element using fixed positioning
|
|
212
|
+
*/
|
|
213
|
+
applyPosition() {
|
|
214
|
+
var _a;
|
|
215
|
+
try {
|
|
216
|
+
if (!this._dropdownElement || !this._triggerElement) {
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
// Check if host has a custom maxHeight set
|
|
220
|
+
const hostMaxHeight = this.host.maxHeight;
|
|
221
|
+
// Check if CSS max-height is set to auto via CSS custom property
|
|
222
|
+
const computedStyle = getComputedStyle(this._dropdownElement);
|
|
223
|
+
const cssMaxHeight = (_a = computedStyle.getPropertyValue('--nuraly-select-local-dropdown-max-height')) === null || _a === void 0 ? void 0 : _a.trim();
|
|
224
|
+
const isAutoHeight = cssMaxHeight === 'auto' || (!hostMaxHeight && cssMaxHeight === 'auto');
|
|
225
|
+
// Apply fixed positioning using shared utility
|
|
226
|
+
applyFixedPosition(this._dropdownElement, this._position, '9999');
|
|
227
|
+
// Handle max-height based on configuration
|
|
228
|
+
if (!hostMaxHeight && !isAutoHeight) {
|
|
229
|
+
this._dropdownElement.style.maxHeight = 'none';
|
|
230
|
+
}
|
|
231
|
+
// Apply height constraints using shared utility
|
|
232
|
+
if (hostMaxHeight) {
|
|
233
|
+
applyHeightConstraints(this._dropdownElement, this._triggerElement, this._position.placement, { viewportMargin: 10, maxHeight: hostMaxHeight });
|
|
234
|
+
}
|
|
235
|
+
else if (isAutoHeight) {
|
|
236
|
+
// If max-height is set to auto, don't constrain the dropdown
|
|
237
|
+
this._dropdownElement.style.removeProperty('max-height');
|
|
238
|
+
this._dropdownElement.style.overflowY = 'visible';
|
|
239
|
+
}
|
|
240
|
+
else {
|
|
241
|
+
applyHeightConstraints(this._dropdownElement, this._triggerElement, this._position.placement, { viewportMargin: 10 });
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
catch (error) {
|
|
245
|
+
this.handleError(error, 'applyPosition');
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Calculate available space around trigger
|
|
250
|
+
*/
|
|
251
|
+
getAvailableSpace() {
|
|
252
|
+
var _a, _b;
|
|
253
|
+
if (!this._triggerElement) {
|
|
254
|
+
return { above: 0, below: 0, left: 0, right: 0 };
|
|
255
|
+
}
|
|
256
|
+
const triggerRect = this._triggerElement.getBoundingClientRect();
|
|
257
|
+
const viewportHeight = ((_a = window.visualViewport) === null || _a === void 0 ? void 0 : _a.height) || window.innerHeight;
|
|
258
|
+
const viewportWidth = ((_b = window.visualViewport) === null || _b === void 0 ? void 0 : _b.width) || window.innerWidth;
|
|
259
|
+
return {
|
|
260
|
+
above: triggerRect.top,
|
|
261
|
+
below: viewportHeight - triggerRect.bottom,
|
|
262
|
+
left: triggerRect.left,
|
|
263
|
+
right: viewportWidth - triggerRect.right,
|
|
264
|
+
};
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* Host connected lifecycle
|
|
268
|
+
*/
|
|
269
|
+
hostConnected() {
|
|
270
|
+
window.addEventListener('resize', this.handleResize);
|
|
271
|
+
window.addEventListener('scroll', this.handleScroll, true);
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Host disconnected lifecycle
|
|
275
|
+
*/
|
|
276
|
+
hostDisconnected() {
|
|
277
|
+
window.removeEventListener('resize', this.handleResize);
|
|
278
|
+
window.removeEventListener('scroll', this.handleScroll, true);
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
//# sourceMappingURL=dropdown.controller.js.map
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { SelectOption } from '../select.types.js';
|
|
2
|
+
import { EventController } from '../interfaces/index.js';
|
|
3
|
+
import { BaseSelectController } from './base.controller.js';
|
|
4
|
+
/**
|
|
5
|
+
* Event controller manages all event handling for the select component
|
|
6
|
+
*/
|
|
7
|
+
export declare class SelectEventController extends BaseSelectController implements EventController {
|
|
8
|
+
/**
|
|
9
|
+
* Handles clicks on the select trigger element
|
|
10
|
+
*/
|
|
11
|
+
handleTriggerClick: (event: Event) => void;
|
|
12
|
+
/**
|
|
13
|
+
* Handles clicks on individual options
|
|
14
|
+
*/
|
|
15
|
+
handleOptionClick: (event: Event, option: SelectOption) => void;
|
|
16
|
+
/**
|
|
17
|
+
* Handles removal of selected tags in multiple selection mode
|
|
18
|
+
*/
|
|
19
|
+
handleTagRemove: (event: Event, option: SelectOption) => void;
|
|
20
|
+
/**
|
|
21
|
+
* Handles the clear all selections button
|
|
22
|
+
*/
|
|
23
|
+
handleClearAll: (event: Event) => void;
|
|
24
|
+
/**
|
|
25
|
+
* Handles keyboard navigation and interactions
|
|
26
|
+
*/
|
|
27
|
+
handleKeyDown: (event: KeyboardEvent) => void;
|
|
28
|
+
/**
|
|
29
|
+
* Handles focus events
|
|
30
|
+
*/
|
|
31
|
+
handleFocus: () => void;
|
|
32
|
+
/**
|
|
33
|
+
* Handles blur events
|
|
34
|
+
*/
|
|
35
|
+
handleBlur: () => void;
|
|
36
|
+
/**
|
|
37
|
+
* Handles clicks outside the component to close dropdown
|
|
38
|
+
* Uses composedPath() to properly detect clicks on slotted content
|
|
39
|
+
*/
|
|
40
|
+
handleWindowClick: (event: Event) => void;
|
|
41
|
+
/**
|
|
42
|
+
* Sets up global event listeners (called when dropdown opens)
|
|
43
|
+
*/
|
|
44
|
+
setupEventListeners(): void;
|
|
45
|
+
/**
|
|
46
|
+
* Removes global event listeners (called on disconnect or dropdown close)
|
|
47
|
+
*/
|
|
48
|
+
removeEventListeners(): void;
|
|
49
|
+
/**
|
|
50
|
+
* Cleanup when host disconnects
|
|
51
|
+
*/
|
|
52
|
+
hostDisconnected(): void;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=event.controller.d.ts.map
|