snice 7.8.0 → 7.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/adapters/react/SniceProvider.js +1 -1
- package/adapters/react/SniceRouter.js +1 -1
- package/adapters/react/matchRoute.js +1 -1
- package/adapters/react/table.d.ts +1 -0
- package/adapters/react/table.d.ts.map +1 -1
- package/adapters/react/table.js +1 -1
- package/adapters/react/table.js.map +1 -1
- package/adapters/react/table.tsx +2 -1
- package/adapters/react/useRequestHandler.js +1 -1
- package/bin/analyzer-contracts.js +17 -1
- package/custom-elements.json +57 -3
- package/dist/cdn/accordion/snice-accordion.js +1 -1
- package/dist/cdn/action-bar/snice-action-bar.js +1 -1
- package/dist/cdn/activity-feed/snice-activity-feed.js +1 -1
- package/dist/cdn/alert/snice-alert.js +1 -1
- package/dist/cdn/app-tiles/snice-app-tiles.js +1 -1
- package/dist/cdn/approval-flow/snice-approval-flow.js +1 -1
- package/dist/cdn/audio-recorder/snice-audio-recorder.js +1 -1
- package/dist/cdn/availability/snice-availability.js +1 -1
- package/dist/cdn/avatar/snice-avatar.js +1 -1
- package/dist/cdn/avatar-group/snice-avatar-group.js +1 -1
- package/dist/cdn/badge/snice-badge.js +1 -1
- package/dist/cdn/banner/snice-banner.js +1 -1
- package/dist/cdn/binpack/snice-binpack.js +1 -1
- package/dist/cdn/book/snice-book.js +1 -1
- package/dist/cdn/booking/snice-booking.js +1 -1
- package/dist/cdn/breadcrumbs/snice-breadcrumbs.js +1 -1
- package/dist/cdn/button/snice-button.js +1 -1
- package/dist/cdn/calendar/README.md +2 -2
- package/dist/cdn/calendar/snice-calendar.js +537 -44
- package/dist/cdn/calendar/snice-calendar.js.map +1 -1
- package/dist/cdn/calendar/snice-calendar.min.js +2 -2
- package/dist/cdn/calendar/snice-calendar.min.js.map +1 -1
- package/dist/cdn/camera/snice-camera.js +1 -1
- package/dist/cdn/camera-annotate/snice-camera-annotate.js +1 -1
- package/dist/cdn/candlestick/snice-candlestick.js +1 -1
- package/dist/cdn/card/snice-card.js +1 -1
- package/dist/cdn/carousel/snice-carousel.js +1 -1
- package/dist/cdn/cart/snice-cart.js +1 -1
- package/dist/cdn/chart/snice-chart.js +1 -1
- package/dist/cdn/chat/snice-chat.js +1 -1
- package/dist/cdn/checkbox/snice-checkbox.js +1 -1
- package/dist/cdn/chip/snice-chip.js +1 -1
- package/dist/cdn/code-block/README.md +2 -2
- package/dist/cdn/code-block/snice-code-block.js +177 -167
- package/dist/cdn/code-block/snice-code-block.js.map +1 -1
- package/dist/cdn/code-block/snice-code-block.min.js +2 -2
- package/dist/cdn/code-block/snice-code-block.min.js.map +1 -1
- package/dist/cdn/color-display/snice-color-display.js +1 -1
- package/dist/cdn/color-picker/snice-color-picker.js +1 -1
- package/dist/cdn/command-palette/README.md +1 -1
- package/dist/cdn/command-palette/snice-command-palette.js +2 -2
- package/dist/cdn/command-palette/snice-command-palette.js.map +1 -1
- package/dist/cdn/command-palette/snice-command-palette.min.js +1 -1
- package/dist/cdn/command-palette/snice-command-palette.min.js.map +1 -1
- package/dist/cdn/comments/snice-comments.js +1 -1
- package/dist/cdn/countdown/snice-countdown.js +1 -1
- package/dist/cdn/cropper/snice-cropper.js +1 -1
- package/dist/cdn/data-card/snice-data-card.js +1 -1
- package/dist/cdn/date-picker/snice-date-picker.js +1 -1
- package/dist/cdn/date-range-picker/snice-date-range-picker.js +1 -1
- package/dist/cdn/date-time-picker/snice-date-time-picker.js +1 -1
- package/dist/cdn/diff/snice-diff.js +1 -1
- package/dist/cdn/divider/snice-divider.js +1 -1
- package/dist/cdn/doc/snice-doc.js +1 -1
- package/dist/cdn/draw/snice-draw.js +1 -1
- package/dist/cdn/drawer/snice-drawer.js +1 -1
- package/dist/cdn/empty-state/snice-empty-state.js +1 -1
- package/dist/cdn/estimate/snice-estimate.js +1 -1
- package/dist/cdn/file-gallery/snice-file-gallery.js +1 -1
- package/dist/cdn/file-upload/snice-file-upload.js +1 -1
- package/dist/cdn/flip-card/snice-flip-card.js +1 -1
- package/dist/cdn/flow/snice-flow.js +1 -1
- package/dist/cdn/form-layout/snice-form-layout.js +1 -1
- package/dist/cdn/funnel/snice-funnel.js +1 -1
- package/dist/cdn/gantt/snice-gantt.js +1 -1
- package/dist/cdn/gauge/snice-gauge.js +1 -1
- package/dist/cdn/grid/snice-grid.js +1 -1
- package/dist/cdn/heatmap/snice-heatmap.js +1 -1
- package/dist/cdn/image/snice-image.js +1 -1
- package/dist/cdn/input/snice-input.js +1 -1
- package/dist/cdn/invoice/snice-invoice.js +1 -1
- package/dist/cdn/kanban/snice-kanban.js +1 -1
- package/dist/cdn/key-value/snice-key-value.js +1 -1
- package/dist/cdn/kpi/snice-kpi.js +1 -1
- package/dist/cdn/layout/snice-layout.js +1 -1
- package/dist/cdn/leaderboard/snice-leaderboard.js +1 -1
- package/dist/cdn/link/snice-link.js +1 -1
- package/dist/cdn/link-preview/snice-link-preview.js +1 -1
- package/dist/cdn/list/snice-list.js +1 -1
- package/dist/cdn/location/snice-location.js +1 -1
- package/dist/cdn/login/snice-login.js +1 -1
- package/dist/cdn/map/snice-map.js +1 -1
- package/dist/cdn/markdown/snice-markdown.js +1 -1
- package/dist/cdn/masonry/snice-masonry.js +1 -1
- package/dist/cdn/menu/snice-menu.js +1 -1
- package/dist/cdn/message-strip/snice-message-strip.js +1 -1
- package/dist/cdn/modal/snice-modal.js +1 -1
- package/dist/cdn/music-player/snice-music-player.js +1 -1
- package/dist/cdn/nav/snice-nav.js +1 -1
- package/dist/cdn/network-graph/snice-network-graph.js +1 -1
- package/dist/cdn/notification-center/snice-notification-center.js +1 -1
- package/dist/cdn/order-tracker/snice-order-tracker.js +1 -1
- package/dist/cdn/org-chart/snice-org-chart.js +1 -1
- package/dist/cdn/pagination/snice-pagination.js +1 -1
- package/dist/cdn/paint/snice-paint.js +1 -1
- package/dist/cdn/pdf-viewer/snice-pdf-viewer.js +1 -1
- package/dist/cdn/permission-matrix/snice-permission-matrix.js +1 -1
- package/dist/cdn/podcast-player/snice-podcast-player.js +1 -1
- package/dist/cdn/popover/snice-popover.js +1 -1
- package/dist/cdn/pricing-table/snice-pricing-table.js +1 -1
- package/dist/cdn/product-card/snice-product-card.js +1 -1
- package/dist/cdn/progress/snice-progress.js +2 -2
- package/dist/cdn/progress/snice-progress.js.map +1 -1
- package/dist/cdn/progress/snice-progress.min.js +1 -1
- package/dist/cdn/progress/snice-progress.min.js.map +1 -1
- package/dist/cdn/progress-ring/snice-progress-ring.js +1 -1
- package/dist/cdn/qr-code/README.md +2 -2
- package/dist/cdn/qr-code/snice-qr-code.js +19 -3
- package/dist/cdn/qr-code/snice-qr-code.js.map +1 -1
- package/dist/cdn/qr-code/snice-qr-code.min.js +2 -2
- package/dist/cdn/qr-code/snice-qr-code.min.js.map +1 -1
- package/dist/cdn/qr-reader/snice-qr-reader.js +1 -1
- package/dist/cdn/radio/snice-radio.js +1 -1
- package/dist/cdn/range-slider/snice-range-slider.js +1 -1
- package/dist/cdn/rating/snice-rating.js +1 -1
- package/dist/cdn/receipt/snice-receipt.js +5 -2
- package/dist/cdn/receipt/snice-receipt.js.map +1 -1
- package/dist/cdn/receipt/snice-receipt.min.js +1 -1
- package/dist/cdn/receipt/snice-receipt.min.js.map +1 -1
- package/dist/cdn/recipe/snice-recipe.js +1 -1
- package/dist/cdn/runtime/snice-runtime.esm.js +4 -4
- package/dist/cdn/runtime/snice-runtime.esm.js.map +1 -1
- package/dist/cdn/runtime/snice-runtime.esm.min.js.map +1 -1
- package/dist/cdn/runtime/snice-runtime.js +4 -4
- package/dist/cdn/runtime/snice-runtime.js.map +1 -1
- package/dist/cdn/runtime/snice-runtime.min.js.map +1 -1
- package/dist/cdn/sankey/snice-sankey.js +1 -1
- package/dist/cdn/segmented-control/snice-segmented-control.js +1 -1
- package/dist/cdn/select/README.md +2 -2
- package/dist/cdn/select/snice-select.js +6 -9
- package/dist/cdn/select/snice-select.js.map +1 -1
- package/dist/cdn/select/snice-select.min.js +2 -2
- package/dist/cdn/select/snice-select.min.js.map +1 -1
- package/dist/cdn/skeleton/snice-skeleton.js +1 -1
- package/dist/cdn/slider/snice-slider.js +1 -1
- package/dist/cdn/sortable/snice-sortable.js +1 -1
- package/dist/cdn/sparkline/snice-sparkline.js +1 -1
- package/dist/cdn/spinner/snice-spinner.js +1 -1
- package/dist/cdn/split-button/snice-split-button.js +1 -1
- package/dist/cdn/split-pane/snice-split-pane.js +1 -1
- package/dist/cdn/spotlight/snice-spotlight.js +1 -1
- package/dist/cdn/stat-group/snice-stat-group.js +1 -1
- package/dist/cdn/step-input/snice-step-input.js +1 -1
- package/dist/cdn/stepper/snice-stepper.js +1 -1
- package/dist/cdn/switch/snice-switch.js +1 -1
- package/dist/cdn/table/README.md +2 -2
- package/dist/cdn/table/snice-table.esm.js +1940 -407
- package/dist/cdn/table/snice-table.esm.js.map +1 -1
- package/dist/cdn/table/snice-table.esm.min.js +242 -53
- package/dist/cdn/table/snice-table.esm.min.js.map +1 -1
- package/dist/cdn/table/snice-table.js +1940 -407
- package/dist/cdn/table/snice-table.js.map +1 -1
- package/dist/cdn/table/snice-table.min.js +234 -45
- package/dist/cdn/table/snice-table.min.js.map +1 -1
- package/dist/cdn/tabs/snice-tabs.js +1 -1
- package/dist/cdn/tag/snice-tag.js +1 -1
- package/dist/cdn/tag-input/snice-tag-input.js +1 -1
- package/dist/cdn/terminal/snice-terminal.js +1 -1
- package/dist/cdn/testimonial/snice-testimonial.js +1 -1
- package/dist/cdn/textarea/snice-textarea.js +1 -1
- package/dist/cdn/time-picker/snice-time-picker.js +1 -1
- package/dist/cdn/time-range-picker/snice-time-range-picker.js +1 -1
- package/dist/cdn/timeline/snice-timeline.js +1 -1
- package/dist/cdn/timer/snice-timer.js +1 -1
- package/dist/cdn/toast/snice-toast.js +1 -1
- package/dist/cdn/tooltip/snice-tooltip.js +1 -1
- package/dist/cdn/tree/snice-tree.js +1 -1
- package/dist/cdn/treemap/snice-treemap.js +1 -1
- package/dist/cdn/user-card/snice-user-card.js +1 -1
- package/dist/cdn/video-player/snice-video-player.js +1 -1
- package/dist/cdn/virtual-scroller/snice-virtual-scroller.js +1 -1
- package/dist/cdn/waterfall/snice-waterfall.js +1 -1
- package/dist/cdn/weather/snice-weather.js +1 -1
- package/dist/cdn/work-order/snice-work-order.js +1 -1
- package/dist/components/calendar/snice-calendar.d.ts +187 -5
- package/dist/components/calendar/snice-calendar.js +537 -44
- package/dist/components/calendar/snice-calendar.js.map +1 -1
- package/dist/components/calendar/snice-calendar.types.d.ts +2 -1
- package/dist/components/code-block/formatter.d.ts +6 -0
- package/dist/components/code-block/formatter.js +174 -164
- package/dist/components/code-block/formatter.js.map +1 -1
- package/dist/components/code-block/grammars/snice.json +1 -1
- package/dist/components/code-block/grammars/typescript.json +1 -1
- package/dist/components/command-palette/snice-command-palette.js +1 -1
- package/dist/components/command-palette/snice-command-palette.js.map +1 -1
- package/dist/components/progress/snice-progress.js +1 -1
- package/dist/components/progress/snice-progress.js.map +1 -1
- package/dist/components/qr-code/qrcode.d.ts +1 -1
- package/dist/components/qr-code/qrcode.js +18 -2
- package/dist/components/qr-code/qrcode.js.map +1 -1
- package/dist/components/receipt/snice-receipt.js +4 -1
- package/dist/components/receipt/snice-receipt.js.map +1 -1
- package/dist/components/select/snice-select.d.ts +1 -1
- package/dist/components/select/snice-select.js +5 -8
- package/dist/components/select/snice-select.js.map +1 -1
- package/dist/components/table/snice-cell-actions.js +1 -1
- package/dist/components/table/snice-cell-actions.js.map +1 -1
- package/dist/components/table/snice-cell-color.js +1 -1
- package/dist/components/table/snice-cell-color.js.map +1 -1
- package/dist/components/table/snice-cell-date.js +20 -8
- package/dist/components/table/snice-cell-date.js.map +1 -1
- package/dist/components/table/snice-cell-email.js +1 -1
- package/dist/components/table/snice-cell-email.js.map +1 -1
- package/dist/components/table/snice-cell-image.js +1 -1
- package/dist/components/table/snice-cell-image.js.map +1 -1
- package/dist/components/table/snice-cell-json.js +1 -1
- package/dist/components/table/snice-cell-json.js.map +1 -1
- package/dist/components/table/snice-cell-link.js +1 -1
- package/dist/components/table/snice-cell-link.js.map +1 -1
- package/dist/components/table/snice-cell-location.js +1 -1
- package/dist/components/table/snice-cell-location.js.map +1 -1
- package/dist/components/table/snice-cell-phone.js +1 -1
- package/dist/components/table/snice-cell-phone.js.map +1 -1
- package/dist/components/table/snice-cell-status.js +1 -1
- package/dist/components/table/snice-cell-status.js.map +1 -1
- package/dist/components/table/snice-cell.d.ts +10 -0
- package/dist/components/table/snice-cell.js +59 -13
- package/dist/components/table/snice-cell.js.map +1 -1
- package/dist/components/table/snice-row.d.ts +0 -1
- package/dist/components/table/snice-row.js +4 -10
- package/dist/components/table/snice-row.js.map +1 -1
- package/dist/components/table/snice-table.d.ts +170 -2
- package/dist/components/table/snice-table.js +868 -189
- package/dist/components/table/snice-table.js.map +1 -1
- package/dist/components/table/snice-table.types.d.ts +17 -0
- package/dist/components/table/table-cell-presentation.d.ts +17 -4
- package/dist/components/table/table-cell-presentation.js +37 -11
- package/dist/components/table/table-cell-presentation.js.map +1 -1
- package/dist/components/table/table-column-manager.d.ts +153 -2
- package/dist/components/table/table-column-manager.js +364 -43
- package/dist/components/table/table-column-manager.js.map +1 -1
- package/dist/components/table/table-date.d.ts +29 -0
- package/dist/components/table/table-date.js +78 -0
- package/dist/components/table/table-date.js.map +1 -0
- package/dist/components/table/table-export.js +6 -2
- package/dist/components/table/table-export.js.map +1 -1
- package/dist/components/table/table-filter-engine.d.ts +9 -0
- package/dist/components/table/table-filter-engine.js +58 -14
- package/dist/components/table/table-filter-engine.js.map +1 -1
- package/dist/components/table/table-keyboard.d.ts +8 -0
- package/dist/components/table/table-keyboard.js +14 -3
- package/dist/components/table/table-keyboard.js.map +1 -1
- package/dist/components/table/table-toolbar.js +1 -0
- package/dist/components/table/table-toolbar.js.map +1 -1
- package/dist/components/table/table-tree-data.d.ts +2 -0
- package/dist/components/table/table-tree-data.js +35 -9
- package/dist/components/table/table-tree-data.js.map +1 -1
- package/dist/components/table/table-virtualizer.d.ts +44 -7
- package/dist/components/table/table-virtualizer.js +101 -54
- package/dist/components/table/table-virtualizer.js.map +1 -1
- package/dist/components/theme/theme.css +9 -0
- package/dist/index.cjs +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.iife.js +1 -1
- package/dist/react/SniceProvider.js +1 -1
- package/dist/react/SniceRouter.js +1 -1
- package/dist/react/index.js +1 -1
- package/dist/react/matchRoute.js +1 -1
- package/dist/react/useRequestHandler.js +1 -1
- package/dist/symbols.cjs +1 -1
- package/dist/symbols.esm.js +1 -1
- package/dist/testing-dom.cjs +1 -1
- package/dist/testing-dom.esm.js +1 -1
- package/dist/transitions.cjs +1 -1
- package/dist/transitions.esm.js +1 -1
- package/docs/ai/DEVELOPMENT.md +93 -2
- package/docs/ai/components/calendar.md +113 -10
- package/docs/ai/components/code-block.md +4 -0
- package/docs/ai/components/doc.md +1 -1
- package/docs/ai/components/progress.md +1 -0
- package/docs/ai/components/receipt.md +1 -1
- package/docs/ai/components/table.md +29 -30
- package/docs/ai/components/theme.md +1 -0
- package/docs/ai/events.md +30 -0
- package/docs/ai/theme.md +1 -0
- package/docs/components/calendar.md +171 -11
- package/docs/components/code-block.md +2 -0
- package/docs/components/doc.md +1 -1
- package/docs/components/progress.md +13 -0
- package/docs/components/receipt.md +1 -0
- package/docs/components/table.md +274 -15
- package/docs/components/theme.md +5 -0
- package/docs/events.md +49 -0
- package/docs/plans/2026-03-06-date-range-picker-plan.md +4 -4
- package/docs/plans/2026-03-07-table-mui-parity-design.md +1 -1
- package/docs/plans/2026-03-09-action-bar-plan.md +11 -11
- package/docs/superpowers/specs/2026-07-09-table-incredible-design.md +1 -1
- package/docs/superpowers/specs/2026-07-09-table-phase0-implementation.md +2 -2
- package/package.json +3 -1
- package/vscode.html-custom-data.json +13 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snice-select.js","sources":["../../../components/select/snice-select.css?inline","../../../../components/select/snice-select.ts"],"sourcesContent":["export default \":host([hidden]){display:none}:host{display:inline-block;font-family:var(--snice-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif);position:relative;width:100%;max-width:18.75rem}[hidden]{display:none!important}img[src=\\\"\\\"]{display:none}.select-wrapper{position:relative;width:100%}.select-label{display:block;margin-bottom:.25rem;font-size:var(--snice-font-size-sm, .875rem);font-weight:var(--snice-font-weight-medium,500);line-height:var(--snice-line-height-normal, 1.5);color:var(--snice-color-text,rgb(23 23 23));text-align:left}.select-label--required::after{content:' *';color:var(--snice-color-danger,rgb(220 38 38))}.select-error-text,.select-helper-text{display:block;margin-top:var(--snice-spacing-2xs,.25rem);font-size:var(--snice-font-size-xs, .75rem);font-weight:var(--snice-font-weight-normal,400);line-height:var(--snice-line-height-normal, 1.5)}.select-helper-text{color:var(--snice-color-text-secondary,rgb(82 82 82))}.select-error-text{color:var(--snice-color-danger,rgb(220 38 38))}.select-trigger{box-sizing:border-box;min-width:0;width:100%;display:flex;align-items:center;justify-content:space-between;background:var(--snice-color-surface-container-lowest,rgb(248 247 245));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.25rem);cursor:pointer;transition:all var(--snice-transition-fast, 150ms) ease;position:relative;text-align:left;font-family:inherit;color:var(--snice-color-text,rgb(23 23 23))}.select-trigger--small{padding:.375rem 2rem .375rem .625rem;font-size:var(--snice-font-size-sm, .875rem);min-height:2rem}.select-trigger--medium{padding:.5rem 2.25rem .5rem .75rem;font-size:var(--snice-font-size-md, 1rem);min-height:var(--snice-select-min-height,2.5rem)}.select-trigger--large{padding:.625rem 2.5rem .625rem .875rem;font-size:var(--snice-font-size-lg, 1.125rem);min-height:3rem}.select-trigger:hover:not(.select-trigger--disabled){border-color:var(--snice-color-border-hover,rgb(180 180 180))}.select-trigger:focus-visible{outline:2px solid var(--snice-color-primary,rgb(37 99 235));outline-offset:2px;border-color:var(--snice-color-primary,rgb(37 99 235))}.select-trigger--open{border-color:var(--snice-color-primary,rgb(37 99 235))}.select-trigger--disabled{background:var(--snice-color-surface-container-low,rgb(245 245 245));cursor:not-allowed;opacity:.6}.select-trigger--readonly{background:var(--snice-color-surface-container-low,rgb(245 245 245));cursor:default}.select-trigger--invalid{border-color:var(--snice-color-danger,rgb(220 38 38))}.select-placeholder{color:var(--snice-color-text-secondary,rgb(82 82 82))}.select-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-value--single{display:flex;align-items:center;gap:.5rem}.select-value-icon{width:1rem;height:1rem;object-fit:contain;flex-shrink:0}.select-value--multiple{display:flex;gap:.25rem;flex-wrap:wrap}.select-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .375rem;background:var(--snice-color-primary-subtle,rgb(219 234 254));color:var(--snice-color-primary,rgb(37 99 235));border-radius:var(--snice-border-radius-sm,.125rem);font-size:var(--snice-font-size-xs, .75rem)}.select-tag-icon{width:.75rem;height:.75rem;object-fit:contain;flex-shrink:0}.select-tag-remove{cursor:pointer;padding:0;background:0 0;border:none;color:inherit;font-size:.75rem;line-height:1}.select-tag-remove:hover{opacity:.7}.select-icons{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.25rem;pointer-events:none;z-index:1}.select-clear{padding:.125rem;background:0 0;border:none;cursor:pointer;color:var(--snice-color-text-secondary,rgb(82 82 82));display:flex;align-items:center;justify-content:center;border-radius:var(--snice-border-radius-sm,.125rem);pointer-events:auto}.select-clear:hover{background:var(--snice-color-surface-container-low,rgb(245 245 245));color:var(--snice-color-text,rgb(23 23 23))}.select-arrow{transition:transform var(--snice-transition-fast, 150ms) ease;color:var(--snice-color-text-secondary,rgb(82 82 82));pointer-events:none}.select-arrow--open{transform:rotate(180deg)}.select-dropdown{position:absolute;top:100%;margin-top:.25rem;left:0;right:0;background:var(--snice-color-surface-container-high,rgb(252 251 249));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.25rem);box-shadow:var(--snice-shadow-lg,0 10px 15px -3px rgb(0 0 0 / .1),0 4px 6px -4px rgb(0 0 0 / .1));z-index:1000;opacity:0;transform:translateY(-8px) scaleY(.95);transform-origin:top;pointer-events:none;transition:opacity var(--snice-transition-fast, 150ms) ease,transform var(--snice-transition-fast, 150ms) ease;display:flex;flex-direction:column;overflow:hidden}.select-dropdown--open{opacity:1;transform:translateY(0) scaleY(1);pointer-events:auto}.select-search{padding:.5rem;border-bottom:1px solid var(--snice-color-border,rgb(226 226 226));flex-shrink:0}.select-search-input{width:100%;padding:.375rem .625rem;background:var(--snice-color-surface-container-lowest,rgb(248 247 245));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-sm,.125rem);font-size:var(--snice-font-size-sm, .875rem);font-family:inherit;color:var(--snice-color-text,rgb(23 23 23));box-sizing:border-box}.select-search-input:focus-visible{outline:0;border-color:var(--snice-color-primary,rgb(37 99 235))}.select-options{max-height:12.5rem;overflow-y:auto;overflow-x:hidden;padding:.25rem;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--snice-color-border,rgb(226 226 226)) var(--snice-color-surface-container-low,rgb(245 245 245))}.select-options::-webkit-scrollbar-track{background:var(--snice-color-surface-container-low,rgb(245 245 245));border-radius:var(--snice-border-radius-md,.25rem);margin:.25rem 0}.select-options::-webkit-scrollbar-thumb{background:var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.25rem);border:2px solid var(--snice-color-surface,rgb(255 255 255))}.select-option{padding:.5rem .75rem;cursor:pointer;border-radius:var(--snice-border-radius-sm,.125rem);transition:background var(--snice-transition-fast, 150ms) ease;display:flex;align-items:center;gap:.5rem}.select-option:hover:not(.select-option--disabled){background:var(--snice-color-surface-container-low,rgb(245 245 245))}.select-option--selected{background:var(--snice-color-primary-subtle,rgb(219 234 254));color:var(--snice-color-primary,rgb(37 99 235));font-weight:var(--snice-font-weight-medium,500)}.select-option--focused{background:var(--snice-color-surface-container-low,rgb(245 245 245));outline:2px solid var(--snice-color-primary,rgb(37 99 235));outline-offset:-2px}.select-option--disabled{opacity:.5;cursor:not-allowed}.select-option-icon{width:1rem;height:1rem;object-fit:contain;flex-shrink:0}.select-option-check{width:1rem;height:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.select-option-label{flex:1}.select-no-options{padding:1rem;text-align:center;color:var(--snice-color-text-secondary,rgb(82 82 82));font-size:var(--snice-font-size-sm, .875rem)}.select-native{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.select-options::-webkit-scrollbar{width:6px}.select-options::-webkit-scrollbar-track{background:var(--snice-color-surface-container-low,rgb(245 245 245));border-radius:3px}.select-options::-webkit-scrollbar-thumb{background:var(--snice-color-border,rgb(226 226 226));border-radius:3px}.select-options::-webkit-scrollbar-thumb:hover{background:var(--snice-color-border-hover,rgb(180 180 180))}.select-trigger--loading{cursor:wait;opacity:.7}.select-spinner{display:inline-block;width:.875rem;height:.875rem;margin-right:.25rem}.select-spinner::after{content:'';display:block;width:100%;height:100%;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.select-freetext-input{flex:1;border:none;outline:0;background:0 0;font-family:inherit;font-size:inherit;color:var(--snice-color-text,rgb(23 23 23));padding:0;min-width:0;width:100%}.select-freetext-input::placeholder{color:var(--snice-color-text-secondary,rgb(82 82 82))}.select-editable-container{position:relative;display:flex;align-items:center;width:100%}.select-editable-input{width:100%;box-sizing:border-box;font-family:inherit;background:var(--snice-color-surface-container-lowest,rgb(248 247 245));color:var(--snice-color-text,rgb(23 23 23));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.25rem);transition:all var(--snice-transition-fast, 150ms) ease;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.select-editable-input--small{padding:.375rem 2rem .375rem .625rem;font-size:var(--snice-font-size-sm, .875rem);min-height:2rem}.select-editable-input--medium{padding:.5rem 2.25rem .5rem .75rem;font-size:var(--snice-font-size-md, 1rem);min-height:2.5rem}.select-editable-input--large{padding:.625rem 2.5rem .625rem .875rem;font-size:var(--snice-font-size-lg, 1.125rem);min-height:3rem}.select-editable-input:hover:not(:disabled){border-color:var(--snice-color-border-hover,rgb(180 180 180))}.select-editable-input:focus-visible{border-color:var(--snice-color-primary,rgb(37 99 235));box-shadow:0 0 0 var(--snice-focus-ring-width,2px) var(--snice-focus-ring-color,rgb(59 130 246 / .5))}.select-editable-input--open{border-color:var(--snice-color-primary,rgb(37 99 235))}.select-editable-input--invalid{border-color:var(--snice-color-danger,rgb(220 38 38))}.select-editable-input:disabled{background:var(--snice-color-surface-container-low,rgb(245 245 245));color:var(--snice-color-text-secondary,rgb(82 82 82));cursor:not-allowed;opacity:.6}.select-editable-input:read-only{background:var(--snice-color-surface-container-low,rgb(245 245 245));cursor:default}.select-editable-input::placeholder{color:var(--snice-color-text-secondary,rgb(82 82 82));opacity:.7}.select-editable-arrow{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;color:var(--snice-color-text-secondary,rgb(82 82 82));pointer-events:none;transition:transform var(--snice-transition-fast, 150ms) ease}.select-editable-arrow--open{transform:translateY(-50%) rotate(180deg)}.select-loading-indicator{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;color:var(--snice-color-text-secondary,rgb(82 82 82));font-size:var(--snice-font-size-sm, .875rem)}.select-loading-spinner{display:inline-block;width:1rem;height:1rem;flex-shrink:0}.select-loading-spinner::after{content:'';display:block;width:100%;height:100%;border:2px solid var(--snice-color-border,rgb(226 226 226));border-top-color:var(--snice-color-primary,rgb(37 99 235));border-radius:50%;animation:.6s linear infinite spin}@media (prefers-reduced-motion:reduce){*{transition-duration:0s!important;animation-duration:0s!important}}\";","import { element, property, state, query, queryAll, watch, dispatch, request, ready, dispose, reconnect, render, styles, html, css as cssTag } from 'snice';\nimport cssContent from './snice-select.css?inline';\nimport type { SelectSize, SelectOption, SniceSelectElement } from './snice-select.types';\nimport { FormLabelAssociation } from '../form-label-association';\nimport { applyElementInternalsFormValue, applyElementInternalsValidity, findFormOwner, hasValidityError } from '../form-control-validity';\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport './snice-option';\n\n@element('snice-select', { formAssociated: true, delegatesFocus: true })\nexport class SniceSelect extends HTMLElement implements SniceSelectElement {\n internals!: ElementInternals;\n private dirtyValue = false;\n private readonly labelAssociation: FormLabelAssociation;\n\n @state()\n private valueState = '';\n\n @state()\n private formDisabled = false;\n\n @state()\n private constraintInvalid = false;\n\n private customValidationMessage = '';\n private validationInput?: HTMLInputElement;\n\n constructor() {\n super();\n if (typeof this.attachInternals == 'function') {\n this.internals = this.attachInternals();\n }\n this.labelAssociation = new FormLabelAssociation(\n this,\n () => this.internals,\n () => this.editable ? this.editableInput : this.trigger,\n () => this.label || 'Select'\n );\n }\n\n /**\n * Live selected value(s). Assignments do not rewrite the reset default.\n * @public\n */\n get value(): string {\n return this.valueState;\n }\n\n set value(value: string) {\n this.setValue(value, true);\n }\n\n /** The `value` content attribute and form-reset default. */\n @property({ attribute: 'value' })\n defaultValue = '';\n\n formAssociatedCallback() {\n this.syncFormState();\n }\n\n formResetCallback() {\n this.dirtyValue = false;\n this.applyDefaultValue();\n this.resetTransientState();\n }\n\n formDisabledCallback(disabled: boolean) {\n this.formDisabled = disabled;\n if (disabled && this.isOpen) this.closeDropdown();\n this.syncValidity();\n }\n\n formStateRestoreCallback(state: File | string | FormData | null) {\n if (typeof state === 'string') {\n this.setValue(state, true);\n this.resetTransientState();\n }\n }\n\n @property({ type: Boolean, })\n disabled = false;\n\n @property({ type: Boolean, })\n required = false;\n\n @property({ type: Boolean, })\n invalid = false;\n\n @property({ type: Boolean, })\n readonly = false;\n\n @property({ type: Boolean, })\n loading = false;\n\n @property({ type: Boolean, })\n multiple = false;\n\n @property({ type: Boolean, })\n searchable = false;\n\n @property({ type: Boolean, })\n clearable = false;\n\n @property({ type: Boolean, attribute: 'allow-free-text' })\n allowFreeText = false;\n\n @property({ type: Boolean, })\n editable = false;\n\n @property({ type: Boolean, })\n remote = false;\n\n @property({ type: Number, attribute: 'search-debounce' })\n searchDebounce = 300;\n\n /** Public HTML attribute (`<snice-select open>`); reflects open state. */\n @property({ type: Boolean, })\n open = false;\n\n /** Convention: `open` is a command, `isOpen` is the state. Read-only alias. */\n get isOpen(): boolean {\n return this.open;\n }\n\n @property({ })\n size: SelectSize = 'medium';\n\n @property({ })\n name = '';\n\n @property({ })\n label = '';\n\n @property({ attribute: 'helper-text' })\n helperText = '';\n\n @property({ attribute: 'error-text' })\n errorText = '';\n\n @property({ })\n placeholder = 'Select an option';\n\n private descId = `snice-select-desc-${Math.random().toString(36).slice(2, 10)}`;\n\n private get interactionDisabled(): boolean {\n return this.disabled || this.formDisabled || this.loading;\n }\n\n @property({ attribute: 'max-height' })\n maxHeight = '200px';\n\n @property({ type: Array, attribute: false })\n options: SelectOption[] = [];\n\n // Options read from child snice-option elements\n private childOptions: SelectOption[] = [];\n\n @query('.select-trigger')\n trigger?: HTMLButtonElement;\n\n @query('.select-dropdown')\n dropdown?: HTMLElement;\n\n @query('.select-value')\n valueDisplay?: HTMLElement;\n\n @query('.select-label')\n labelElement?: HTMLElement;\n\n @query('.select-search-input')\n searchInput?: HTMLInputElement;\n\n @query('.select-options')\n optionsList?: HTMLElement;\n\n @query('.select-clear')\n clearButton?: HTMLElement;\n\n @query('.select-arrow')\n arrow?: HTMLElement;\n\n @query('.select-search')\n searchContainer?: HTMLElement;\n\n @query('.select-editable-input')\n editableInput?: HTMLInputElement;\n\n @queryAll('.select-option')\n optionElements?: HTMLElement[];\n\n private filteredOptions: SelectOption[] = [];\n private selectedValues: Set<string> = new Set();\n private focusedIndex = -1;\n private editableInputValue = '';\n private remoteSearchTimeout = 0;\n private remoteSearching = false;\n\n /** Merged options: programmatic `options` array + child `<snice-option>` elements */\n private get mergedOptions(): SelectOption[] {\n // Child options take precedence if both provided (slot wins)\n if (this.childOptions.length > 0 && this.options.length > 0) {\n // Merge: children first, then programmatic options not already present\n const childValues = new Set(this.childOptions.map(o => o.value));\n return [...this.childOptions, ...this.options.filter(o => !childValues.has(o.value))];\n }\n return this.childOptions.length > 0 ? this.childOptions : this.options;\n }\n\n /**\n * Options that user interactions resolve against. Remote mode renders the\n * dropdown from `filteredOptions` (server results) while `mergedOptions`\n * stays empty, so selection, display, and sync-back must look in both.\n */\n private get resolvableOptions(): SelectOption[] {\n if (!this.remote) return this.mergedOptions;\n const merged = this.mergedOptions;\n const mergedValues = new Set(merged.map(o => o.value));\n return [...this.filteredOptions.filter(o => !mergedValues.has(o.value)), ...merged];\n }\n\n @request('select/search')\n async *performRemoteSearch(query: string): any {\n this.remoteSearching = true;\n this.updateDropdownContent();\n\n try {\n const params = { query, select: this };\n const response: SelectOption[] = await (yield params);\n this.remoteSearching = false;\n this.filteredOptions = response || [];\n this.focusedIndex = -1;\n this.updateDropdownContent();\n } catch {\n this.remoteSearching = false;\n this.filteredOptions = [];\n this.updateDropdownContent();\n }\n }\n\n private scheduleRemoteSearch(query: string) {\n clearTimeout(this.remoteSearchTimeout);\n this.remoteSearchTimeout = window.setTimeout(() => {\n this.performRemoteSearch(query);\n }, this.searchDebounce);\n }\n\n @render()\n render() {\n const displayedInvalid = this.invalid || this.constraintInvalid;\n const labelClasses = `select-label select-label--${this.size} ${this.required ? 'select-label--required' : ''}`;\n const triggerClasses = `select-trigger select-trigger--${this.size} ${this.loading ? 'select-trigger--loading' : ''} ${this.editable ? 'select-trigger--editable' : ''}`;\n const searchHidden = !this.searchable || this.editable;\n const accessibleName = this.labelAssociation.accessibleName;\n const optionsName = accessibleName ? `${accessibleName} options` : 'Options';\n\n return html/*html*/`\n <div class=\"select-wrapper\">\n <label class=\"${labelClasses}\" part=\"label\" ?hidden=\"${!this.label}\" @click=\"${() => this.focus()}\">\n ${this.label}\n </label>\n\n <if ${this.editable}>\n <div class=\"select-editable-container\">\n <input\n type=\"text\"\n class=\"select-editable-input select-editable-input--${this.size}\"\n placeholder=\"${this.placeholder}\"\n ?disabled=\"${this.interactionDisabled}\"\n ?readonly=\"${this.readonly}\"\n autocomplete=\"off\"\n role=\"combobox\"\n aria-expanded=\"${this.isOpen ? 'true' : 'false'}\"\n aria-autocomplete=\"list\"\n aria-label=\"${accessibleName}\"\n aria-describedby=\"${(this.errorText || this.helperText) ? this.descId : ''}\"\n aria-invalid=\"${displayedInvalid ? 'true' : 'false'}\"\n part=\"input\"\n @input=\"${(e: Event) => this.handleEditableInput(e)}\"\n @focus=\"${() => this.handleEditableFocus()}\"\n @blur=\"${(e: FocusEvent) => this.handleEditableBlur(e)}\"\n @keydown=\"${(e: KeyboardEvent) => this.handleEditableKeydown(e)}\"\n @click=\"${() => this.handleEditableClick()}\"\n />\n <span class=\"select-editable-arrow\" part=\"arrow\"\n @mousedown=\"${(e: MouseEvent) => this.handleEditableArrowClick(e)}\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"currentColor\">\n <path d=\"M6 9L1 4h10L6 9z\"/>\n </svg>\n </span>\n </div>\n </if>\n\n <if ${!this.editable}>\n <button\n type=\"button\"\n class=\"${triggerClasses}\"\n .disabled=${this.interactionDisabled}\n aria-haspopup=\"listbox\"\n aria-expanded=\"${this.isOpen ? 'true' : 'false'}\"\n aria-label=\"${accessibleName}\"\n aria-describedby=\"${(this.errorText || this.helperText) ? this.descId : ''}\"\n aria-invalid=\"${displayedInvalid ? 'true' : 'false'}\"\n part=\"trigger\"\n @keydown=\"${(e: KeyboardEvent) => this.handleTriggerOpen(e)}\"\n @click=\"${(e: MouseEvent) => this.handleTriggerClick(e)}\">\n\n <div class=\"select-value\" part=\"value\">\n <span class=\"select-placeholder\">${this.placeholder}</span>\n </div>\n\n <span class=\"select-icons\">\n <span role=\"button\" tabindex=\"${this.interactionDisabled ? -1 : 0}\" class=\"select-clear\" aria-label=\"Clear selection\" aria-disabled=\"${this.interactionDisabled ? 'true' : 'false'}\" style=\"display: none;\" @click=\"${(e: MouseEvent) => this.handleClearClick(e)}\" @keydown=\"${(e: KeyboardEvent) => { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); this.handleClearClick(e as unknown as MouseEvent); } }}\">\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"currentColor\" aria-hidden=\"true\">\n <path d=\"M14 1.41L12.59 0L7 5.59L1.41 0L0 1.41L5.59 7L0 12.59L1.41 14L7 8.41L12.59 14L14 12.59L8.41 7L14 1.41Z\"/>\n </svg>\n </span>\n <if ${this.loading}>\n <span class=\"select-spinner\" part=\"spinner\"></span>\n </if>\n <if ${!this.loading}>\n <span class=\"select-arrow\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"currentColor\">\n <path d=\"M6 9L1 4h10L6 9z\"/>\n </svg>\n </span>\n </if>\n </span>\n </button>\n </if>\n\n <div class=\"select-dropdown\"\n role=\"listbox\"\n aria-label=\"${optionsName}\"\n part=\"dropdown\"\n @mousedown=\"${(e: MouseEvent) => this.handleDropdownMousedown(e)}\"\n @click=\"${(e: MouseEvent) => this.handleOptionsClick(e)}\">\n\n <div class=\"select-search\" part=\"search\" ?hidden=\"${searchHidden}\">\n <input\n type=\"text\"\n class=\"select-search-input\"\n .disabled=${this.interactionDisabled}\n placeholder=\"Search...\"\n aria-label=\"Search options\"\n part=\"search-input\"\n @keydown=\"${(e: KeyboardEvent) => this.handleSearchKeydown(e)}\"\n @input=\"${(e: Event) => this.handleSearchInput(e)}\" />\n </div>\n\n <div class=\"select-options\" part=\"options\">\n <!-- Dynamic options expose part=\"option\" and render in @ready(). -->\n </div>\n </div>\n\n <case ${this.errorText ? 'error' : this.helperText ? 'helper' : 'empty'}>\n <when value=\"error\">\n <span class=\"select-error-text\" part=\"error-text\" id=\"${this.descId}\" role=\"alert\">${this.errorText}</span>\n </when>\n <when value=\"helper\">\n <span class=\"select-helper-text\" part=\"helper-text\" id=\"${this.descId}\">${this.helperText}</span>\n </when>\n <default></default>\n </case>\n </div>\n `;\n }\n\n private createIcon(className: string, source?: string): HTMLImageElement {\n const icon = document.createElement('img');\n icon.className = className;\n icon.setAttribute('src', source || '');\n icon.setAttribute('alt', '');\n icon.hidden = !source;\n return icon;\n }\n\n private renderOptions(): DocumentFragment {\n const fragment = document.createDocumentFragment();\n\n if (this.remoteSearching) {\n const indicator = document.createElement('div');\n indicator.className = 'select-loading-indicator';\n\n const spinner = document.createElement('span');\n spinner.className = 'select-loading-spinner';\n\n const message = document.createElement('span');\n message.textContent = 'Searching...';\n\n indicator.append(spinner, message);\n fragment.append(indicator);\n return fragment;\n }\n\n const options = (this.searchable || this.editable || this.remote) ? this.filteredOptions : this.mergedOptions;\n\n if (options.length === 0) {\n const noOptions = document.createElement('div');\n noOptions.className = 'select-no-options';\n\n const noMatches = document.createElement('span');\n noMatches.className = 'select-no-options-text';\n noMatches.dataset.search = 'true';\n noMatches.hidden = !(this.searchable || this.editable || this.remote) || this.filteredOptions.length > 0;\n noMatches.textContent = 'No matches found';\n\n const noAvailable = document.createElement('span');\n noAvailable.className = 'select-no-options-text';\n noAvailable.dataset.search = 'false';\n noAvailable.hidden = (this.searchable || this.editable || this.remote) && this.filteredOptions.length === 0;\n noAvailable.textContent = 'No options available';\n\n noOptions.append(noMatches, noAvailable);\n fragment.append(noOptions);\n return fragment;\n }\n\n options.forEach((opt, index) => {\n const isSelected = this.multiple ?\n this.selectedValues.has(opt.value) :\n opt.value === this.value;\n\n const option = document.createElement('div');\n option.className = 'select-option';\n option.classList.toggle('select-option--selected', isSelected);\n option.classList.toggle('select-option--disabled', Boolean(opt.disabled));\n option.classList.toggle('select-option--focused', index === this.focusedIndex);\n option.classList.toggle('select-option--has-icon', Boolean(opt.icon));\n option.setAttribute('data-value', opt.value);\n option.setAttribute('role', 'option');\n option.setAttribute('aria-selected', String(isSelected));\n option.setAttribute('aria-disabled', String(opt.disabled));\n option.setAttribute('part', 'option');\n\n const check = document.createElement('span');\n check.className = 'select-option-check';\n check.setAttribute('aria-hidden', 'true');\n check.hidden = !this.multiple;\n\n const checkMark = document.createElement('span');\n checkMark.className = 'select-option-check-mark';\n checkMark.hidden = !isSelected;\n checkMark.textContent = '✓';\n check.append(checkMark);\n\n const label = document.createElement('span');\n label.className = 'select-option-label';\n label.textContent = opt.label;\n\n option.append(check, this.createIcon('select-option-icon', opt.icon), label);\n fragment.append(option);\n });\n\n return fragment;\n }\n\n @styles()\n styles() {\n return cssTag`${cssContent}`;\n }\n\n @ready()\n init() {\n // Read options from child snice-option elements\n this.readOptionsFromChildren();\n\n if (Object.prototype.hasOwnProperty.call(this, 'value')) {\n const value = (this as { value: unknown }).value;\n delete (this as Partial<{ value: unknown }>).value;\n this.value = String(value ?? '');\n } else if (!this.dirtyValue) {\n this.applyDefaultValue();\n }\n\n // Initialize selected values\n if (this.multiple && this.value) {\n this.selectedValues = new Set(this.value.split(',').map(v => v.trim()));\n }\n\n // Initialize filtered options\n this.filteredOptions = [...this.mergedOptions];\n\n // Set initial form value\n this.syncFormState();\n\n if (this.editable) {\n this.syncEditableInputToValue();\n this.updateEditableState();\n } else {\n // Set initial imperative state\n this.updateTriggerState();\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.updateDropdownState();\n this.updateDropdownContent();\n\n // Watch for changes to child options\n this.observeChildren();\n\n // Setup global event listeners\n this.setupGlobalListeners();\n this.labelAssociation.connect();\n }\n\n private applyDefaultValue() {\n this.setValue(this.defaultValue, false);\n }\n\n private setValue(value: unknown, dirty: boolean) {\n if (dirty) this.dirtyValue = true;\n this.valueState = String(value ?? '');\n this.syncRenderedValue();\n this.syncFormState();\n }\n\n private syncRenderedValue() {\n if (this.multiple) {\n this.selectedValues = new Set(this.value ? this.value.split(',').map(value => value.trim()) : []);\n }\n if (this.editable) {\n this.syncEditableInputToValue();\n } else {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n }\n\n private resetTransientState() {\n clearTimeout(this.remoteSearchTimeout);\n this.open = false;\n this.focusedIndex = -1;\n this.filteredOptions = [...this.mergedOptions];\n if (this.searchInput) this.searchInput.value = '';\n this.syncRenderedValue();\n this.updateDropdownContent();\n }\n\n private syncFormValue() {\n applyElementInternalsFormValue(this.internals, this.value, this.value);\n }\n\n private get validationProxy(): HTMLInputElement {\n if (!this.validationInput) this.validationInput = document.createElement('input');\n return this.validationInput;\n }\n\n private syncFormState() {\n this.syncFormValue();\n this.syncValidity();\n }\n\n private syncValidity() {\n const barred = this.interactionDisabled || this.readonly;\n const valueMissing = !barred && this.required && (\n this.multiple ? this.selectedValues.size === 0 : this.value === ''\n );\n const flags: ValidityStateFlags = barred ? {} : {\n customError: Boolean(this.customValidationMessage),\n valueMissing\n };\n const hasError = hasValidityError(flags);\n const message = this.customValidationMessage ||\n (valueMissing ? 'Please select an option.' : '') ||\n (hasError ? 'Please select a valid option.' : '');\n this.constraintInvalid = hasError;\n const displayedInvalid = this.invalid || hasError;\n const anchor = this.editable ? this.editableInput : this.trigger;\n\n this.validationProxy.setCustomValidity(hasError ? message : '');\n this.trigger?.setAttribute('aria-invalid', String(displayedInvalid));\n this.trigger?.classList.toggle('select-trigger--invalid', displayedInvalid);\n this.editableInput?.setAttribute('aria-invalid', String(displayedInvalid));\n this.editableInput?.classList.toggle('select-editable-input--invalid', displayedInvalid);\n applyElementInternalsValidity(this.internals, flags, message, anchor);\n }\n\n @reconnect()\n onReconnect() {\n this.setupGlobalListeners();\n this.observeChildren();\n this.labelAssociation.connect();\n }\n\n @dispose()\n cleanup() {\n this.removeGlobalListeners();\n this.childObserver?.disconnect();\n this.labelAssociation.disconnect();\n }\n\n private outsideClickHandler?: (e: MouseEvent) => void;\n private globalKeyHandler?: (e: KeyboardEvent) => void;\n\n private setupGlobalListeners() {\n // Create bound handlers\n this.outsideClickHandler = (e: MouseEvent) => {\n if (!this.isOpen) return;\n const path = e.composedPath();\n const associatedLabelClicked = Array.from(this.labels || [])\n .some(label => path.includes(label));\n if (path.includes(this) || associatedLabelClicked) return;\n if (this.editable) {\n this.commitEditableValue();\n }\n this.closeDropdown();\n };\n\n this.globalKeyHandler = (e: KeyboardEvent) => {\n if (!this.isOpen || this.editable) return;\n\n // When focus is in the search input, Space must type a space, not\n // commit the focused option. Other keys (Arrow/Enter/Escape) still\n // navigate options as expected.\n const targetIsSearchInput = e.composedPath()[0] === this.searchInput;\n\n switch (e.key) {\n case 'Escape':\n this.closeDropdown();\n this.trigger?.focus();\n break;\n case 'ArrowDown':\n e.preventDefault();\n this.focusNextOption();\n break;\n case 'ArrowUp':\n e.preventDefault();\n this.focusPreviousOption();\n break;\n case 'Enter':\n case ' ':\n if (e.key === ' ' && targetIsSearchInput) return;\n e.preventDefault();\n if (this.focusedIndex >= 0) {\n const options = this.searchable ? this.filteredOptions : this.mergedOptions;\n const option = options[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleOptionSelect(option);\n }\n }\n break;\n }\n };\n\n // Add listeners\n document.addEventListener('click', this.outsideClickHandler);\n document.addEventListener('keydown', this.globalKeyHandler);\n }\n\n private removeGlobalListeners() {\n if (this.outsideClickHandler) {\n document.removeEventListener('click', this.outsideClickHandler);\n }\n if (this.globalKeyHandler) {\n document.removeEventListener('keydown', this.globalKeyHandler);\n }\n }\n\n // Manual observation of light DOM children (snice-option elements)\n private observeChildren() {\n const observer = new MutationObserver((mutations) => {\n this.handleChildrenChange(mutations);\n });\n\n // Observe the host element (this) for changes to its light DOM children\n observer.observe(this, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['value', 'label', 'disabled', 'selected']\n });\n\n // Store for cleanup\n this.childObserver = observer;\n }\n\n private childObserver?: MutationObserver;\n\n private handleChildrenChange(mutations: MutationRecord[]) {\n // Check if any of the mutations are relevant (snice-option elements or their attributes)\n const relevant = mutations.some(m => {\n if (m.type === 'childList') return true;\n if (m.type === 'attributes' && ['value', 'label', 'disabled', 'selected'].includes(m.attributeName!)) {\n return m.target.nodeName === 'SNICE-OPTION';\n }\n return false;\n });\n\n if (relevant) {\n this.readOptionsFromChildren();\n this.filteredOptions = [...this.mergedOptions];\n\n if (!this.editable) {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.updateDropdownContent();\n }\n }\n\n\n private readOptionsFromChildren() {\n // Get all snice-option children from light DOM\n const optionElements = Array.from(this.querySelectorAll('snice-option'));\n\n this.childOptions = optionElements.map(opt => {\n const sniceOption = opt as any;\n // Use the optionData getter if available, otherwise construct from properties\n if (sniceOption.optionData) {\n return sniceOption.optionData;\n }\n\n return {\n value: opt.getAttribute('value') || '',\n label: opt.getAttribute('label') || opt.textContent?.trim() || '',\n disabled: opt.hasAttribute('disabled'),\n selected: opt.hasAttribute('selected')\n };\n });\n }\n\n // ── Editable mode handlers ──\n\n private handleEditableInput(e: Event) {\n if (this.interactionDisabled || this.readonly) return;\n\n const input = e.target as HTMLInputElement;\n this.editableInputValue = input.value;\n\n // Filter options as user types\n this.filterEditableOptions(this.editableInputValue);\n\n if (!this.isOpen) {\n this.openDropdown();\n }\n }\n\n private handleEditableFocus() {\n if (!this.isOpen && !this.readonly) {\n this.openDropdown();\n }\n }\n\n private handleEditableBlur(e: FocusEvent) {\n // Delay close to allow option clicks via mousedown\n setTimeout(() => {\n if (this.isOpen) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n }, 200);\n }\n\n private handleEditableClick() {\n if (!this.isOpen && !this.interactionDisabled && !this.readonly) {\n this.openDropdown();\n }\n }\n\n private handleEditableArrowClick(e: MouseEvent) {\n e.preventDefault();\n e.stopPropagation();\n if (this.interactionDisabled || this.readonly) return;\n\n if (this.isOpen) {\n this.closeDropdown();\n } else {\n this.openDropdown();\n this.editableInput?.focus();\n }\n }\n\n private handleEditableKeydown(e: KeyboardEvent) {\n switch (e.key) {\n case 'ArrowDown':\n e.preventDefault();\n if (!this.isOpen) {\n this.openDropdown();\n } else {\n this.focusNextOption();\n }\n break;\n case 'ArrowUp':\n e.preventDefault();\n if (this.isOpen) {\n this.focusPreviousOption();\n }\n break;\n case 'Enter':\n e.preventDefault();\n if (this.isOpen && this.focusedIndex >= 0) {\n const option = this.filteredOptions[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleEditableOptionSelect(option);\n }\n } else if (this.isOpen) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n break;\n case 'Escape':\n if (this.isOpen) {\n this.closeDropdown();\n this.syncEditableInputToValue();\n }\n break;\n case 'Tab':\n if (this.isOpen) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n break;\n }\n }\n\n private handleEditableOptionSelect(option: SelectOption) {\n this.value = option.value;\n this.editableInputValue = option.label;\n if (this.editableInput) {\n this.editableInput.value = option.label;\n }\n this.closeDropdown();\n this.dispatchChangeEvent(option);\n this.editableInput?.focus();\n }\n\n private commitEditableValue() {\n if (!this.editableInput) return;\n const inputText = this.editableInput.value.trim();\n\n // Try to match an existing option\n const allOptions = this.mergedOptions;\n const match = allOptions.find(\n opt => opt.label.toLowerCase() === inputText.toLowerCase()\n );\n\n if (match) {\n this.value = match.value;\n this.editableInputValue = match.label;\n this.editableInput.value = match.label;\n this.dispatchChangeEvent(match);\n } else if (this.allowFreeText && inputText) {\n this.value = inputText;\n this.editableInputValue = inputText;\n this.dispatchChangeEvent();\n } else {\n // Revert to current value\n this.syncEditableInputToValue();\n }\n }\n\n private filterEditableOptions(query: string) {\n if (this.remote) {\n this.scheduleRemoteSearch(query);\n return;\n }\n\n const allOptions = this.mergedOptions;\n if (!query) {\n this.filteredOptions = [...allOptions];\n } else {\n const lower = query.toLowerCase();\n this.filteredOptions = allOptions.filter(opt =>\n opt.label.toLowerCase().includes(lower)\n );\n }\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n\n private syncEditableInputToValue() {\n if (!this.editableInput) return;\n\n if (this.value) {\n const match = this.resolvableOptions.find(opt => opt.value === this.value);\n if (match) {\n this.editableInput.value = match.label;\n this.editableInputValue = match.label;\n } else if (this.allowFreeText) {\n this.editableInput.value = this.value;\n this.editableInputValue = this.value;\n } else {\n this.editableInput.value = '';\n this.editableInputValue = '';\n }\n } else {\n this.editableInput.value = '';\n this.editableInputValue = '';\n }\n }\n\n private updateEditableState() {\n if (!this.editableInput) return;\n this.editableInput.setAttribute('aria-expanded', String(this.isOpen));\n this.editableInput.classList.toggle('select-editable-input--open', this.isOpen);\n const displayedInvalid = this.invalid || this.constraintInvalid;\n this.editableInput.setAttribute('aria-invalid', String(displayedInvalid));\n this.editableInput.classList.toggle('select-editable-input--invalid', displayedInvalid);\n }\n\n // ── Dropdown mousedown (prevents blur in editable mode) ──\n\n private handleDropdownMousedown(e: MouseEvent) {\n if (this.editable) {\n e.preventDefault();\n }\n }\n\n // ── Standard (non-editable) mode handlers ──\n\n private handleTriggerOpen(e: KeyboardEvent) {\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault();\n if (!this.isOpen) {\n this.openDropdown();\n }\n }\n }\n\n private handleSearchKeydown(e: KeyboardEvent) {\n switch (e.key) {\n case 'Escape':\n this.closeDropdown();\n this.trigger?.focus();\n break;\n case 'ArrowDown':\n e.preventDefault();\n this.focusNextOption();\n break;\n case 'ArrowUp':\n e.preventDefault();\n this.focusPreviousOption();\n break;\n case 'Enter':\n e.preventDefault();\n if (this.focusedIndex >= 0) {\n const options = this.searchable ? this.filteredOptions : this.mergedOptions;\n const option = options[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleOptionSelect(option);\n }\n }\n break;\n }\n }\n\n private focusNextOption() {\n const options = (this.searchable || this.editable) ? this.filteredOptions : this.mergedOptions;\n const enabledOptions = options.filter(opt => !opt.disabled);\n if (enabledOptions.length === 0) return;\n\n this.focusedIndex++;\n if (this.focusedIndex >= options.length) {\n this.focusedIndex = 0;\n }\n while (options[this.focusedIndex]?.disabled) {\n this.focusedIndex++;\n if (this.focusedIndex >= options.length) {\n this.focusedIndex = 0;\n }\n }\n this.updateOptionFocus();\n }\n\n private focusPreviousOption() {\n const options = (this.searchable || this.editable) ? this.filteredOptions : this.mergedOptions;\n const enabledOptions = options.filter(opt => !opt.disabled);\n if (enabledOptions.length === 0) return;\n\n this.focusedIndex--;\n if (this.focusedIndex < 0) {\n this.focusedIndex = options.length - 1;\n }\n while (options[this.focusedIndex]?.disabled) {\n this.focusedIndex--;\n if (this.focusedIndex < 0) {\n this.focusedIndex = options.length - 1;\n }\n }\n this.updateOptionFocus();\n }\n\n private updateOptionFocus() {\n if (this.optionElements) {\n this.optionElements.forEach((el, index) => {\n el.classList.toggle('select-option--focused', index === this.focusedIndex);\n });\n // Scroll focused option into view\n const focusedEl = this.optionElements?.[this.focusedIndex];\n if (focusedEl) {\n focusedEl.scrollIntoView({ block: 'nearest' });\n }\n }\n }\n\n private handleClearClick(e: MouseEvent) {\n if (this.interactionDisabled || this.readonly) return;\n e.preventDefault();\n e.stopPropagation();\n this.clear();\n }\n\n private handleTriggerClick(e: MouseEvent) {\n const target = e.target as HTMLElement;\n\n // Don't toggle if clicking on the clear button\n if (target.closest('.select-clear')) {\n return;\n }\n\n e.stopPropagation();\n\n if (!this.interactionDisabled && !this.readonly) {\n this.toggleDropdown();\n }\n }\n\n private handleOptionsClick(e: MouseEvent) {\n if (this.interactionDisabled || this.readonly) return;\n const target = e.target as HTMLElement;\n\n // Handle tag remove click\n if (target.closest('.select-tag-remove')) {\n e.stopPropagation();\n const removeBtn = target.closest('.select-tag-remove') as HTMLElement;\n const value = removeBtn.getAttribute('data-value');\n if (value && this.multiple) {\n this.selectedValues.delete(value);\n this.value = Array.from(this.selectedValues).join(',');\n\n this.updateValueDisplay();\n this.updateClearButton();\n this.dispatchChangeEvent();\n }\n return;\n }\n\n const optionEl = target.closest('.select-option') as HTMLElement;\n\n if (!optionEl) return;\n\n e.stopPropagation();\n\n const value = optionEl.getAttribute('data-value');\n if (!value) return;\n\n const option = this.resolvableOptions.find(opt => opt.value === value);\n if (option && !option.disabled) {\n if (this.editable) {\n this.handleEditableOptionSelect(option);\n } else {\n this.handleOptionSelect(option);\n }\n }\n }\n\n private handleSearchInput(e: Event) {\n const input = e.target as HTMLInputElement;\n const searchTerm = input.value;\n\n if (this.remote) {\n this.scheduleRemoteSearch(searchTerm);\n return;\n }\n\n const lower = searchTerm.toLowerCase();\n if (lower) {\n this.filteredOptions = this.mergedOptions.filter(opt =>\n opt.label.toLowerCase().includes(lower)\n );\n } else {\n this.filteredOptions = [...this.mergedOptions];\n }\n\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n\n private handleOptionSelect(option: SelectOption) {\n if (this.multiple) {\n if (this.selectedValues.has(option.value)) {\n this.selectedValues.delete(option.value);\n } else {\n this.selectedValues.add(option.value);\n }\n this.value = Array.from(this.selectedValues).join(',');\n this.updateDropdownContent();\n } else {\n this.value = option.value;\n this.closeDropdown();\n }\n\n\n this.updateValueDisplay();\n this.updateClearButton();\n this.dispatchChangeEvent(option);\n }\n\n @watch('valueState')\n handleValueChange() {\n this.syncRenderedValue();\n this.syncFormState();\n }\n\n @watch('defaultValue')\n handleDefaultValueChange() {\n if (!this.dirtyValue) this.applyDefaultValue();\n }\n\n @watch('options')\n handleOptionsPropertyChange() {\n this.filteredOptions = [...this.mergedOptions];\n this.updateDropdownContent();\n if (this.editable) {\n this.syncEditableInputToValue();\n }\n }\n\n @watch('disabled', 'loading', 'formDisabled')\n handleDisabledChange() {\n if (!this.editable) {\n this.updateTriggerState();\n this.updateClearButton();\n }\n // Side effect: close dropdown when disabled\n if (this.interactionDisabled && this.isOpen && !this.remote) {\n this.closeDropdown();\n }\n this.syncValidity();\n }\n\n @watch('required', 'readonly', 'multiple')\n handleValidationConfigurationChange() {\n this.syncRenderedValue();\n this.syncValidity();\n }\n\n @watch('editable')\n handleValidationAnchorChange() {\n queueMicrotask(() => {\n const rendered = (this as unknown as { readonly rendered: Promise<void> }).rendered;\n void rendered.then(() => {\n if (!this.isConnected) return;\n this.syncRenderedValue();\n this.syncValidity();\n this.labelAssociation.sync();\n });\n });\n }\n\n @watch('invalid')\n handleInvalidChange() {\n const displayedInvalid = this.invalid || this.constraintInvalid;\n this.trigger?.setAttribute('aria-invalid', String(displayedInvalid));\n this.trigger?.classList.toggle('select-trigger--invalid', displayedInvalid);\n this.editableInput?.setAttribute('aria-invalid', String(displayedInvalid));\n this.editableInput?.classList.toggle('select-editable-input--invalid', displayedInvalid);\n }\n\n @watch('open')\n handleOpenChange() {\n this.updateDropdownState();\n\n if (this.editable) {\n this.updateEditableState();\n\n if (this.isOpen) {\n if (this.remote) {\n // Trigger remote search with current input\n const query = this.editableInput?.value || '';\n this.scheduleRemoteSearch(query);\n } else {\n // Reset filter to show all options when opening\n this.filteredOptions = [...this.mergedOptions];\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n }\n\n if (!this.isOpen) {\n this.focusedIndex = -1;\n }\n } else {\n this.updateTriggerState();\n\n // Side effect: focus search input when opened\n if (this.isOpen && this.searchable && this.searchInput) {\n setTimeout(() => this.searchInput?.focus(), 100);\n }\n\n // Side effect: trigger initial remote search on open\n if (this.isOpen && this.remote && this.searchable) {\n const query = this.searchInput?.value || '';\n this.scheduleRemoteSearch(query);\n }\n\n // Side effect: reset search when closed\n if (!this.isOpen) {\n this.focusedIndex = -1;\n if (this.searchInput) {\n this.searchInput.value = '';\n this.filteredOptions = [...this.mergedOptions];\n this.updateDropdownContent();\n }\n }\n }\n }\n\n private updateValueDisplay() {\n if (!this.valueDisplay) return;\n\n const allOptions = this.resolvableOptions;\n const selectedOptions = allOptions.filter(opt =>\n this.multiple ? this.selectedValues.has(opt.value) : opt.value === this.value\n );\n\n if (this.multiple && selectedOptions.length > 0) {\n const values = document.createElement('div');\n values.className = 'select-value--multiple';\n\n selectedOptions.forEach(opt => {\n const tag = document.createElement('span');\n tag.className = 'select-tag';\n\n const removeButton = document.createElement('span');\n removeButton.className = 'select-tag-remove';\n removeButton.setAttribute('data-value', opt.value);\n removeButton.setAttribute('aria-label', `Remove ${opt.label}`);\n removeButton.hidden = this.interactionDisabled || this.readonly;\n removeButton.textContent = '×';\n\n tag.append(\n this.createIcon('select-tag-icon', opt.icon),\n document.createTextNode(opt.label),\n removeButton\n );\n values.append(tag);\n });\n\n this.valueDisplay.replaceChildren(values);\n } else if (selectedOptions.length > 0) {\n const selected = selectedOptions[0];\n const value = document.createElement('div');\n value.className = 'select-value--single';\n\n const label = document.createElement('span');\n label.textContent = selected.label;\n\n value.append(this.createIcon('select-value-icon', selected.icon), label);\n this.valueDisplay.replaceChildren(value);\n } else {\n const placeholder = document.createElement('span');\n placeholder.className = 'select-placeholder';\n placeholder.textContent = this.placeholder;\n this.valueDisplay.replaceChildren(placeholder);\n }\n }\n\n private updateClearButton() {\n if (!this.clearButton) return;\n\n const allOptions = this.resolvableOptions;\n const selectedOptions = allOptions.filter(opt =>\n this.multiple ? this.selectedValues.has(opt.value) : opt.value === this.value\n );\n\n const shouldShow = this.clearable && selectedOptions.length > 0 && !this.interactionDisabled && !this.readonly;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n }\n\n private updateDropdownContent() {\n if (!this.optionsList) return;\n this.optionsList.replaceChildren(this.renderOptions());\n }\n\n\n @dispatch('select-change', { bubbles: true, composed: true })\n private dispatchChangeEvent(option?: SelectOption) {\n return {\n value: this.multiple ? Array.from(this.selectedValues) : this.value,\n option,\n select: this\n };\n }\n\n @dispatch('select-open', { bubbles: true, composed: true })\n private dispatchOpenEvent() {\n return { select: this };\n }\n\n @dispatch('select-close', { bubbles: true, composed: true })\n private dispatchCloseEvent() {\n return { select: this };\n }\n\n // Public API\n focus() {\n if (this.editable) {\n this.editableInput?.focus();\n } else {\n this.trigger?.focus();\n }\n }\n\n /** Native-compatible select type. @public */\n get type(): 'select-one' | 'select-multiple' {\n return this.multiple ? 'select-multiple' : 'select-one';\n }\n\n /** Owning form, including association through a `form` attribute. @public */\n get form(): HTMLFormElement | null {\n return findFormOwner(this, this.internals);\n }\n\n /** Current constraint-validation state. @public */\n get validity(): ValidityState {\n return this.internals?.validity ?? this.validationProxy.validity;\n }\n\n /** Current validation message. @public */\n get validationMessage(): string {\n return this.internals?.validationMessage ?? this.validationProxy.validationMessage;\n }\n\n /** Whether this select currently participates in constraint validation. @public */\n get willValidate(): boolean {\n if (this.interactionDisabled || this.readonly) return false;\n return this.internals?.willValidate ?? true;\n }\n\n /** Labels associated through wrapping `<label>` or explicit `for`/`id`. @public */\n get labels(): NodeList | null {\n return this.labelAssociation.labels;\n }\n\n blur() {\n if (this.editable) {\n this.editableInput?.blur();\n } else {\n this.trigger?.blur();\n }\n if (this.isOpen) {\n this.closeDropdown();\n }\n }\n\n checkValidity(): boolean {\n this.syncValidity();\n return this.internals?.checkValidity() ?? this.validationProxy.checkValidity();\n }\n\n reportValidity(): boolean {\n this.syncValidity();\n return this.internals?.reportValidity() ?? this.validationProxy.reportValidity();\n }\n\n setCustomValidity(message: string): void {\n this.customValidationMessage = String(message);\n this.syncValidity();\n }\n\n clear() {\n if (this.multiple) {\n this.selectedValues.clear();\n this.value = '';\n } else {\n this.value = '';\n }\n\n if (this.editable) {\n this.syncEditableInputToValue();\n } else {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.dispatchChangeEvent();\n }\n\n openDropdown() {\n if (!this.isOpen && !this.interactionDisabled && !this.readonly) {\n this.open = true;\n this.dispatchOpenEvent();\n }\n }\n\n closeDropdown() {\n if (this.isOpen) {\n this.open = false;\n this.dispatchCloseEvent();\n }\n }\n\n toggleDropdown() {\n if (this.isOpen) {\n this.closeDropdown();\n } else {\n this.openDropdown();\n }\n }\n\n selectOption(value: string) {\n const option = this.resolvableOptions.find(opt => opt.value === value);\n if (option && !option.disabled) {\n if (this.editable) {\n this.handleEditableOptionSelect(option);\n } else {\n this.handleOptionSelect(option);\n }\n }\n }\n\n private updateTriggerState() {\n if (!this.trigger) return;\n\n this.trigger.classList.toggle('select-trigger--open', this.isOpen);\n this.trigger.classList.toggle('select-trigger--disabled', this.interactionDisabled);\n this.trigger.classList.toggle('select-trigger--readonly', this.readonly);\n const displayedInvalid = this.invalid || this.constraintInvalid;\n this.trigger.classList.toggle('select-trigger--invalid', displayedInvalid);\n this.trigger.setAttribute('aria-invalid', String(displayedInvalid));\n this.trigger.classList.toggle('select-trigger--loading', this.loading);\n this.trigger.setAttribute('aria-expanded', String(this.isOpen));\n this.trigger.disabled = this.interactionDisabled;\n }\n\n private updateDropdownState() {\n if (!this.dropdown) return;\n\n this.dropdown.classList.toggle('select-dropdown--open', this.isOpen);\n\n if (this.arrow) {\n this.arrow.classList.toggle('select-arrow--open', this.isOpen);\n }\n }\n\n}\n"],"names":["cssTag"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"snice-select.js","sources":["../../../components/select/snice-select.css?inline","../../../../components/select/snice-select.ts"],"sourcesContent":["export default \":host([hidden]){display:none}:host{display:inline-block;font-family:var(--snice-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif);position:relative;width:100%;max-width:18.75rem}[hidden]{display:none!important}img[src=\\\"\\\"]{display:none}.select-wrapper{position:relative;width:100%}.select-label{display:block;margin-bottom:.25rem;font-size:var(--snice-font-size-sm, .875rem);font-weight:var(--snice-font-weight-medium,500);line-height:var(--snice-line-height-normal, 1.5);color:var(--snice-color-text,rgb(23 23 23));text-align:left}.select-label--required::after{content:' *';color:var(--snice-color-danger,rgb(220 38 38))}.select-error-text,.select-helper-text{display:block;margin-top:var(--snice-spacing-2xs,.25rem);font-size:var(--snice-font-size-xs, .75rem);font-weight:var(--snice-font-weight-normal,400);line-height:var(--snice-line-height-normal, 1.5)}.select-helper-text{color:var(--snice-color-text-secondary,rgb(82 82 82))}.select-error-text{color:var(--snice-color-danger,rgb(220 38 38))}.select-trigger{box-sizing:border-box;min-width:0;width:100%;display:flex;align-items:center;justify-content:space-between;background:var(--snice-color-surface-container-lowest,rgb(248 247 245));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.25rem);cursor:pointer;transition:all var(--snice-transition-fast, 150ms) ease;position:relative;text-align:left;font-family:inherit;color:var(--snice-color-text,rgb(23 23 23))}.select-trigger--small{padding:.375rem 2rem .375rem .625rem;font-size:var(--snice-font-size-sm, .875rem);min-height:2rem}.select-trigger--medium{padding:.5rem 2.25rem .5rem .75rem;font-size:var(--snice-font-size-md, 1rem);min-height:var(--snice-select-min-height,2.5rem)}.select-trigger--large{padding:.625rem 2.5rem .625rem .875rem;font-size:var(--snice-font-size-lg, 1.125rem);min-height:3rem}.select-trigger:hover:not(.select-trigger--disabled){border-color:var(--snice-color-border-hover,rgb(180 180 180))}.select-trigger:focus-visible{outline:2px solid var(--snice-color-primary,rgb(37 99 235));outline-offset:2px;border-color:var(--snice-color-primary,rgb(37 99 235))}.select-trigger--open{border-color:var(--snice-color-primary,rgb(37 99 235))}.select-trigger--disabled{background:var(--snice-color-surface-container-low,rgb(245 245 245));cursor:not-allowed;opacity:.6}.select-trigger--readonly{background:var(--snice-color-surface-container-low,rgb(245 245 245));cursor:default}.select-trigger--invalid{border-color:var(--snice-color-danger,rgb(220 38 38))}.select-placeholder{color:var(--snice-color-text-secondary,rgb(82 82 82))}.select-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-value--single{display:flex;align-items:center;gap:.5rem}.select-value-icon{width:1rem;height:1rem;object-fit:contain;flex-shrink:0}.select-value--multiple{display:flex;gap:.25rem;flex-wrap:wrap}.select-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .375rem;background:var(--snice-color-primary-subtle,rgb(219 234 254));color:var(--snice-color-primary,rgb(37 99 235));border-radius:var(--snice-border-radius-sm,.125rem);font-size:var(--snice-font-size-xs, .75rem)}.select-tag-icon{width:.75rem;height:.75rem;object-fit:contain;flex-shrink:0}.select-tag-remove{cursor:pointer;padding:0;background:0 0;border:none;color:inherit;font-size:.75rem;line-height:1}.select-tag-remove:hover{opacity:.7}.select-icons{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.25rem;pointer-events:none;z-index:1}.select-clear{padding:.125rem;background:0 0;border:none;cursor:pointer;color:var(--snice-color-text-secondary,rgb(82 82 82));display:flex;align-items:center;justify-content:center;border-radius:var(--snice-border-radius-sm,.125rem);pointer-events:auto}.select-clear:hover{background:var(--snice-color-surface-container-low,rgb(245 245 245));color:var(--snice-color-text,rgb(23 23 23))}.select-arrow{transition:transform var(--snice-transition-fast, 150ms) ease;color:var(--snice-color-text-secondary,rgb(82 82 82));pointer-events:none}.select-arrow--open{transform:rotate(180deg)}.select-dropdown{position:absolute;top:100%;margin-top:.25rem;left:0;right:0;background:var(--snice-color-surface-container-high,rgb(252 251 249));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.25rem);box-shadow:var(--snice-shadow-lg,0 10px 15px -3px rgb(0 0 0 / .1),0 4px 6px -4px rgb(0 0 0 / .1));z-index:1000;opacity:0;transform:translateY(-8px) scaleY(.95);transform-origin:top;pointer-events:none;transition:opacity var(--snice-transition-fast, 150ms) ease,transform var(--snice-transition-fast, 150ms) ease;display:flex;flex-direction:column;overflow:hidden}.select-dropdown--open{opacity:1;transform:translateY(0) scaleY(1);pointer-events:auto}.select-search{padding:.5rem;border-bottom:1px solid var(--snice-color-border,rgb(226 226 226));flex-shrink:0}.select-search-input{width:100%;padding:.375rem .625rem;background:var(--snice-color-surface-container-lowest,rgb(248 247 245));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-sm,.125rem);font-size:var(--snice-font-size-sm, .875rem);font-family:inherit;color:var(--snice-color-text,rgb(23 23 23));box-sizing:border-box}.select-search-input:focus-visible{outline:0;border-color:var(--snice-color-primary,rgb(37 99 235))}.select-options{max-height:12.5rem;overflow-y:auto;overflow-x:hidden;padding:.25rem;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--snice-color-border,rgb(226 226 226)) var(--snice-color-surface-container-low,rgb(245 245 245))}.select-options::-webkit-scrollbar-track{background:var(--snice-color-surface-container-low,rgb(245 245 245));border-radius:var(--snice-border-radius-md,.25rem);margin:.25rem 0}.select-options::-webkit-scrollbar-thumb{background:var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.25rem);border:2px solid var(--snice-color-surface,rgb(255 255 255))}.select-option{padding:.5rem .75rem;cursor:pointer;border-radius:var(--snice-border-radius-sm,.125rem);transition:background var(--snice-transition-fast, 150ms) ease;display:flex;align-items:center;gap:.5rem}.select-option:hover:not(.select-option--disabled){background:var(--snice-color-surface-container-low,rgb(245 245 245))}.select-option--selected{background:var(--snice-color-primary-subtle,rgb(219 234 254));color:var(--snice-color-primary,rgb(37 99 235));font-weight:var(--snice-font-weight-medium,500)}.select-option--focused{background:var(--snice-color-surface-container-low,rgb(245 245 245));outline:2px solid var(--snice-color-primary,rgb(37 99 235));outline-offset:-2px}.select-option--disabled{opacity:.5;cursor:not-allowed}.select-option-icon{width:1rem;height:1rem;object-fit:contain;flex-shrink:0}.select-option-check{width:1rem;height:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.select-option-label{flex:1}.select-no-options{padding:1rem;text-align:center;color:var(--snice-color-text-secondary,rgb(82 82 82));font-size:var(--snice-font-size-sm, .875rem)}.select-native{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.select-options::-webkit-scrollbar{width:6px}.select-options::-webkit-scrollbar-track{background:var(--snice-color-surface-container-low,rgb(245 245 245));border-radius:3px}.select-options::-webkit-scrollbar-thumb{background:var(--snice-color-border,rgb(226 226 226));border-radius:3px}.select-options::-webkit-scrollbar-thumb:hover{background:var(--snice-color-border-hover,rgb(180 180 180))}.select-trigger--loading{cursor:wait;opacity:.7}.select-spinner{display:inline-block;width:.875rem;height:.875rem;margin-right:.25rem}.select-spinner::after{content:'';display:block;width:100%;height:100%;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.select-freetext-input{flex:1;border:none;outline:0;background:0 0;font-family:inherit;font-size:inherit;color:var(--snice-color-text,rgb(23 23 23));padding:0;min-width:0;width:100%}.select-freetext-input::placeholder{color:var(--snice-color-text-secondary,rgb(82 82 82))}.select-editable-container{position:relative;display:flex;align-items:center;width:100%}.select-editable-input{width:100%;box-sizing:border-box;font-family:inherit;background:var(--snice-color-surface-container-lowest,rgb(248 247 245));color:var(--snice-color-text,rgb(23 23 23));border:1px solid var(--snice-color-border,rgb(226 226 226));border-radius:var(--snice-border-radius-md,.25rem);transition:all var(--snice-transition-fast, 150ms) ease;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.select-editable-input--small{padding:.375rem 2rem .375rem .625rem;font-size:var(--snice-font-size-sm, .875rem);min-height:2rem}.select-editable-input--medium{padding:.5rem 2.25rem .5rem .75rem;font-size:var(--snice-font-size-md, 1rem);min-height:2.5rem}.select-editable-input--large{padding:.625rem 2.5rem .625rem .875rem;font-size:var(--snice-font-size-lg, 1.125rem);min-height:3rem}.select-editable-input:hover:not(:disabled){border-color:var(--snice-color-border-hover,rgb(180 180 180))}.select-editable-input:focus-visible{border-color:var(--snice-color-primary,rgb(37 99 235));box-shadow:0 0 0 var(--snice-focus-ring-width,2px) var(--snice-focus-ring-color,rgb(59 130 246 / .5))}.select-editable-input--open{border-color:var(--snice-color-primary,rgb(37 99 235))}.select-editable-input--invalid{border-color:var(--snice-color-danger,rgb(220 38 38))}.select-editable-input:disabled{background:var(--snice-color-surface-container-low,rgb(245 245 245));color:var(--snice-color-text-secondary,rgb(82 82 82));cursor:not-allowed;opacity:.6}.select-editable-input:read-only{background:var(--snice-color-surface-container-low,rgb(245 245 245));cursor:default}.select-editable-input::placeholder{color:var(--snice-color-text-secondary,rgb(82 82 82));opacity:.7}.select-editable-arrow{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;color:var(--snice-color-text-secondary,rgb(82 82 82));pointer-events:none;transition:transform var(--snice-transition-fast, 150ms) ease}.select-editable-arrow--open{transform:translateY(-50%) rotate(180deg)}.select-loading-indicator{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;color:var(--snice-color-text-secondary,rgb(82 82 82));font-size:var(--snice-font-size-sm, .875rem)}.select-loading-spinner{display:inline-block;width:1rem;height:1rem;flex-shrink:0}.select-loading-spinner::after{content:'';display:block;width:100%;height:100%;border:2px solid var(--snice-color-border,rgb(226 226 226));border-top-color:var(--snice-color-primary,rgb(37 99 235));border-radius:50%;animation:.6s linear infinite spin}@media (prefers-reduced-motion:reduce){*{transition-duration:0s!important;animation-duration:0s!important}}\";","import { element, property, state, query, queryAll, watch, dispatch, request, ready, dispose, reconnect, render, styles, html, css as cssTag } from 'snice';\nimport cssContent from './snice-select.css?inline';\nimport type { SelectSize, SelectOption, SniceSelectElement } from './snice-select.types';\nimport { FormLabelAssociation } from '../form-label-association';\nimport { applyElementInternalsFormValue, applyElementInternalsValidity, findFormOwner, hasValidityError } from '../form-control-validity';\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport './snice-option';\n\n@element('snice-select', { formAssociated: true, delegatesFocus: true })\nexport class SniceSelect extends HTMLElement implements SniceSelectElement {\n internals!: ElementInternals;\n private dirtyValue = false;\n private readonly labelAssociation: FormLabelAssociation;\n\n @state()\n private valueState = '';\n\n @state()\n private formDisabled = false;\n\n @state()\n private constraintInvalid = false;\n\n private customValidationMessage = '';\n private validationInput?: HTMLInputElement;\n\n constructor() {\n super();\n if (typeof this.attachInternals == 'function') {\n this.internals = this.attachInternals();\n }\n this.labelAssociation = new FormLabelAssociation(\n this,\n () => this.internals,\n () => this.editable ? this.editableInput : this.trigger,\n () => this.label || 'Select'\n );\n }\n\n /**\n * Live selected value(s). Assignments do not rewrite the reset default.\n * @public\n */\n get value(): string {\n return this.valueState;\n }\n\n set value(value: string) {\n this.setValue(value, true);\n }\n\n /** The `value` content attribute and form-reset default. */\n @property({ attribute: 'value' })\n defaultValue = '';\n\n formAssociatedCallback() {\n this.syncFormState();\n }\n\n formResetCallback() {\n this.dirtyValue = false;\n this.applyDefaultValue();\n this.resetTransientState();\n }\n\n formDisabledCallback(disabled: boolean) {\n this.formDisabled = disabled;\n if (disabled && this.isOpen) this.closeDropdown();\n this.syncValidity();\n }\n\n formStateRestoreCallback(state: File | string | FormData | null) {\n if (typeof state === 'string') {\n this.setValue(state, true);\n this.resetTransientState();\n }\n }\n\n @property({ type: Boolean, })\n disabled = false;\n\n @property({ type: Boolean, })\n required = false;\n\n @property({ type: Boolean, })\n invalid = false;\n\n @property({ type: Boolean, })\n readonly = false;\n\n @property({ type: Boolean, })\n loading = false;\n\n @property({ type: Boolean, })\n multiple = false;\n\n @property({ type: Boolean, })\n searchable = false;\n\n @property({ type: Boolean, })\n clearable = false;\n\n @property({ type: Boolean, attribute: 'allow-free-text' })\n allowFreeText = false;\n\n @property({ type: Boolean, })\n editable = false;\n\n @property({ type: Boolean, })\n remote = false;\n\n @property({ type: Number, attribute: 'search-debounce' })\n searchDebounce = 300;\n\n /** Public HTML attribute (`<snice-select open>`); reflects open state. */\n @property({ type: Boolean, })\n open = false;\n\n /** Convention: `open` is a command, `isOpen` is the state. Read-only alias. */\n get isOpen(): boolean {\n return this.open;\n }\n\n @property({ })\n size: SelectSize = 'medium';\n\n @property({ })\n name = '';\n\n @property({ })\n label = '';\n\n @property({ attribute: 'helper-text' })\n helperText = '';\n\n @property({ attribute: 'error-text' })\n errorText = '';\n\n @property({ })\n placeholder = 'Select an option';\n\n private descId = `snice-select-desc-${Math.random().toString(36).slice(2, 10)}`;\n\n private get interactionDisabled(): boolean {\n return this.disabled || this.formDisabled || this.loading;\n }\n\n @property({ attribute: 'max-height' })\n maxHeight = '200px';\n\n @property({ type: Array, attribute: false })\n options: SelectOption[] = [];\n\n // Options read from child snice-option elements\n private childOptions: SelectOption[] = [];\n\n @query('.select-trigger')\n trigger?: HTMLButtonElement;\n\n @query('.select-dropdown')\n dropdown?: HTMLElement;\n\n @query('.select-value')\n valueDisplay?: HTMLElement;\n\n @query('.select-label')\n labelElement?: HTMLElement;\n\n @query('.select-search-input')\n searchInput?: HTMLInputElement;\n\n @query('.select-options')\n optionsList?: HTMLElement;\n\n @query('.select-clear')\n clearButton?: HTMLElement;\n\n @query('.select-arrow')\n arrow?: HTMLElement;\n\n @query('.select-search')\n searchContainer?: HTMLElement;\n\n @query('.select-editable-input')\n editableInput?: HTMLInputElement;\n\n @queryAll('.select-option')\n optionElements?: HTMLElement[];\n\n private filteredOptions: SelectOption[] = [];\n private selectedValues: Set<string> = new Set();\n private focusedIndex = -1;\n private editableInputValue = '';\n private remoteSearchTimeout = 0;\n private remoteSearching = false;\n\n /** The documented option list: child `<snice-option>` elements win over the `options` array */\n private get mergedOptions(): SelectOption[] {\n // \"Children take precedence over `options` array\" — when children are\n // present they are the list, so a later `options` assignment cannot\n // append to or reorder what the author declared in markup.\n return this.childOptions.length > 0 ? this.childOptions : this.options;\n }\n\n /**\n * Options that user interactions resolve against. Remote mode renders the\n * dropdown from `filteredOptions` (server results) while `mergedOptions`\n * stays empty, so selection, display, and sync-back must look in both.\n */\n private get resolvableOptions(): SelectOption[] {\n if (!this.remote) return this.mergedOptions;\n const merged = this.mergedOptions;\n const mergedValues = new Set(merged.map(o => o.value));\n return [...this.filteredOptions.filter(o => !mergedValues.has(o.value)), ...merged];\n }\n\n @request('select/search')\n async *performRemoteSearch(query: string): any {\n this.remoteSearching = true;\n this.updateDropdownContent();\n\n try {\n const params = { query, select: this };\n const response: SelectOption[] = await (yield params);\n this.remoteSearching = false;\n this.filteredOptions = response || [];\n this.focusedIndex = -1;\n this.updateDropdownContent();\n } catch {\n this.remoteSearching = false;\n this.filteredOptions = [];\n this.updateDropdownContent();\n }\n }\n\n private scheduleRemoteSearch(query: string) {\n clearTimeout(this.remoteSearchTimeout);\n this.remoteSearchTimeout = window.setTimeout(() => {\n this.performRemoteSearch(query);\n }, this.searchDebounce);\n }\n\n @render()\n render() {\n const displayedInvalid = this.invalid || this.constraintInvalid;\n const labelClasses = `select-label select-label--${this.size} ${this.required ? 'select-label--required' : ''}`;\n const triggerClasses = `select-trigger select-trigger--${this.size} ${this.loading ? 'select-trigger--loading' : ''} ${this.editable ? 'select-trigger--editable' : ''}`;\n const searchHidden = !this.searchable || this.editable;\n const accessibleName = this.labelAssociation.accessibleName;\n const optionsName = accessibleName ? `${accessibleName} options` : 'Options';\n\n return html/*html*/`\n <div class=\"select-wrapper\">\n <label class=\"${labelClasses}\" part=\"label\" ?hidden=\"${!this.label}\" @click=\"${() => this.focus()}\">\n ${this.label}\n </label>\n\n <if ${this.editable}>\n <div class=\"select-editable-container\">\n <input\n type=\"text\"\n class=\"select-editable-input select-editable-input--${this.size}\"\n placeholder=\"${this.placeholder}\"\n ?disabled=\"${this.interactionDisabled}\"\n ?readonly=\"${this.readonly}\"\n autocomplete=\"off\"\n role=\"combobox\"\n aria-expanded=\"${this.isOpen ? 'true' : 'false'}\"\n aria-autocomplete=\"list\"\n aria-label=\"${accessibleName}\"\n aria-describedby=\"${(this.errorText || this.helperText) ? this.descId : ''}\"\n aria-invalid=\"${displayedInvalid ? 'true' : 'false'}\"\n part=\"input\"\n @input=\"${(e: Event) => this.handleEditableInput(e)}\"\n @focus=\"${() => this.handleEditableFocus()}\"\n @blur=\"${(e: FocusEvent) => this.handleEditableBlur(e)}\"\n @keydown=\"${(e: KeyboardEvent) => this.handleEditableKeydown(e)}\"\n @click=\"${() => this.handleEditableClick()}\"\n />\n <span class=\"select-editable-arrow\" part=\"arrow\"\n @mousedown=\"${(e: MouseEvent) => this.handleEditableArrowClick(e)}\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"currentColor\">\n <path d=\"M6 9L1 4h10L6 9z\"/>\n </svg>\n </span>\n </div>\n </if>\n\n <if ${!this.editable}>\n <button\n type=\"button\"\n class=\"${triggerClasses}\"\n .disabled=${this.interactionDisabled}\n aria-haspopup=\"listbox\"\n aria-expanded=\"${this.isOpen ? 'true' : 'false'}\"\n aria-label=\"${accessibleName}\"\n aria-describedby=\"${(this.errorText || this.helperText) ? this.descId : ''}\"\n aria-invalid=\"${displayedInvalid ? 'true' : 'false'}\"\n part=\"trigger\"\n @keydown=\"${(e: KeyboardEvent) => this.handleTriggerOpen(e)}\"\n @click=\"${(e: MouseEvent) => this.handleTriggerClick(e)}\">\n\n <div class=\"select-value\" part=\"value\">\n <span class=\"select-placeholder\">${this.placeholder}</span>\n </div>\n\n <span class=\"select-icons\">\n <span role=\"button\" tabindex=\"${this.interactionDisabled ? -1 : 0}\" class=\"select-clear\" aria-label=\"Clear selection\" aria-disabled=\"${this.interactionDisabled ? 'true' : 'false'}\" style=\"display: none;\" @click=\"${(e: MouseEvent) => this.handleClearClick(e)}\" @keydown=\"${(e: KeyboardEvent) => { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); this.handleClearClick(e as unknown as MouseEvent); } }}\">\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"currentColor\" aria-hidden=\"true\">\n <path d=\"M14 1.41L12.59 0L7 5.59L1.41 0L0 1.41L5.59 7L0 12.59L1.41 14L7 8.41L12.59 14L14 12.59L8.41 7L14 1.41Z\"/>\n </svg>\n </span>\n <if ${this.loading}>\n <span class=\"select-spinner\" part=\"spinner\"></span>\n </if>\n <if ${!this.loading}>\n <span class=\"select-arrow\">\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"currentColor\">\n <path d=\"M6 9L1 4h10L6 9z\"/>\n </svg>\n </span>\n </if>\n </span>\n </button>\n </if>\n\n <div class=\"select-dropdown\"\n role=\"listbox\"\n aria-label=\"${optionsName}\"\n part=\"dropdown\"\n @mousedown=\"${(e: MouseEvent) => this.handleDropdownMousedown(e)}\"\n @click=\"${(e: MouseEvent) => this.handleOptionsClick(e)}\">\n\n <div class=\"select-search\" part=\"search\" ?hidden=\"${searchHidden}\">\n <input\n type=\"text\"\n class=\"select-search-input\"\n .disabled=${this.interactionDisabled}\n placeholder=\"Search...\"\n aria-label=\"Search options\"\n part=\"search-input\"\n @keydown=\"${(e: KeyboardEvent) => this.handleSearchKeydown(e)}\"\n @input=\"${(e: Event) => this.handleSearchInput(e)}\" />\n </div>\n\n <div class=\"select-options\" part=\"options\">\n <!-- Dynamic options expose part=\"option\" and render in @ready(). -->\n </div>\n </div>\n\n <case ${this.errorText ? 'error' : this.helperText ? 'helper' : 'empty'}>\n <when value=\"error\">\n <span class=\"select-error-text\" part=\"error-text\" id=\"${this.descId}\" role=\"alert\">${this.errorText}</span>\n </when>\n <when value=\"helper\">\n <span class=\"select-helper-text\" part=\"helper-text\" id=\"${this.descId}\">${this.helperText}</span>\n </when>\n <default></default>\n </case>\n </div>\n `;\n }\n\n private createIcon(className: string, source?: string): HTMLImageElement {\n const icon = document.createElement('img');\n icon.className = className;\n icon.setAttribute('src', source || '');\n icon.setAttribute('alt', '');\n icon.hidden = !source;\n return icon;\n }\n\n private renderOptions(): DocumentFragment {\n const fragment = document.createDocumentFragment();\n\n if (this.remoteSearching) {\n const indicator = document.createElement('div');\n indicator.className = 'select-loading-indicator';\n\n const spinner = document.createElement('span');\n spinner.className = 'select-loading-spinner';\n\n const message = document.createElement('span');\n message.textContent = 'Searching...';\n\n indicator.append(spinner, message);\n fragment.append(indicator);\n return fragment;\n }\n\n const options = (this.searchable || this.editable || this.remote) ? this.filteredOptions : this.mergedOptions;\n\n if (options.length === 0) {\n const noOptions = document.createElement('div');\n noOptions.className = 'select-no-options';\n\n const noMatches = document.createElement('span');\n noMatches.className = 'select-no-options-text';\n noMatches.dataset.search = 'true';\n noMatches.hidden = !(this.searchable || this.editable || this.remote) || this.filteredOptions.length > 0;\n noMatches.textContent = 'No matches found';\n\n const noAvailable = document.createElement('span');\n noAvailable.className = 'select-no-options-text';\n noAvailable.dataset.search = 'false';\n noAvailable.hidden = (this.searchable || this.editable || this.remote) && this.filteredOptions.length === 0;\n noAvailable.textContent = 'No options available';\n\n noOptions.append(noMatches, noAvailable);\n fragment.append(noOptions);\n return fragment;\n }\n\n options.forEach((opt, index) => {\n const isSelected = this.multiple ?\n this.selectedValues.has(opt.value) :\n opt.value === this.value;\n\n const option = document.createElement('div');\n option.className = 'select-option';\n option.classList.toggle('select-option--selected', isSelected);\n option.classList.toggle('select-option--disabled', Boolean(opt.disabled));\n option.classList.toggle('select-option--focused', index === this.focusedIndex);\n option.classList.toggle('select-option--has-icon', Boolean(opt.icon));\n option.setAttribute('data-value', opt.value);\n option.setAttribute('role', 'option');\n option.setAttribute('aria-selected', String(isSelected));\n option.setAttribute('aria-disabled', String(Boolean(opt.disabled)));\n option.setAttribute('part', 'option');\n\n const check = document.createElement('span');\n check.className = 'select-option-check';\n check.setAttribute('aria-hidden', 'true');\n check.hidden = !this.multiple;\n\n const checkMark = document.createElement('span');\n checkMark.className = 'select-option-check-mark';\n checkMark.hidden = !isSelected;\n checkMark.textContent = '✓';\n check.append(checkMark);\n\n const label = document.createElement('span');\n label.className = 'select-option-label';\n label.textContent = opt.label;\n\n option.append(check, this.createIcon('select-option-icon', opt.icon), label);\n fragment.append(option);\n });\n\n return fragment;\n }\n\n @styles()\n styles() {\n return cssTag`${cssContent}`;\n }\n\n @ready()\n init() {\n // Read options from child snice-option elements\n this.readOptionsFromChildren();\n\n if (Object.prototype.hasOwnProperty.call(this, 'value')) {\n const value = (this as { value: unknown }).value;\n delete (this as Partial<{ value: unknown }>).value;\n this.value = String(value ?? '');\n } else if (!this.dirtyValue) {\n this.applyDefaultValue();\n }\n\n // Initialize selected values\n if (this.multiple && this.value) {\n this.selectedValues = new Set(this.value.split(',').map(v => v.trim()));\n }\n\n // Initialize filtered options\n this.filteredOptions = [...this.mergedOptions];\n\n // Set initial form value\n this.syncFormState();\n\n if (this.editable) {\n this.syncEditableInputToValue();\n this.updateEditableState();\n } else {\n // Set initial imperative state\n this.updateTriggerState();\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.updateDropdownState();\n this.updateDropdownContent();\n\n // Watch for changes to child options\n this.observeChildren();\n\n // Setup global event listeners\n this.setupGlobalListeners();\n this.labelAssociation.connect();\n }\n\n private applyDefaultValue() {\n this.setValue(this.defaultValue, false);\n }\n\n private setValue(value: unknown, dirty: boolean) {\n if (dirty) this.dirtyValue = true;\n this.valueState = String(value ?? '');\n this.syncRenderedValue();\n this.syncFormState();\n }\n\n private syncRenderedValue() {\n if (this.multiple) {\n this.selectedValues = new Set(this.value ? this.value.split(',').map(value => value.trim()) : []);\n }\n if (this.editable) {\n this.syncEditableInputToValue();\n } else {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n }\n\n private resetTransientState() {\n clearTimeout(this.remoteSearchTimeout);\n this.open = false;\n this.focusedIndex = -1;\n this.filteredOptions = [...this.mergedOptions];\n if (this.searchInput) this.searchInput.value = '';\n this.syncRenderedValue();\n this.updateDropdownContent();\n }\n\n private syncFormValue() {\n applyElementInternalsFormValue(this.internals, this.value, this.value);\n }\n\n private get validationProxy(): HTMLInputElement {\n if (!this.validationInput) this.validationInput = document.createElement('input');\n return this.validationInput;\n }\n\n private syncFormState() {\n this.syncFormValue();\n this.syncValidity();\n }\n\n private syncValidity() {\n const barred = this.interactionDisabled || this.readonly;\n const valueMissing = !barred && this.required && (\n this.multiple ? this.selectedValues.size === 0 : this.value === ''\n );\n const flags: ValidityStateFlags = barred ? {} : {\n customError: Boolean(this.customValidationMessage),\n valueMissing\n };\n const hasError = hasValidityError(flags);\n const message = this.customValidationMessage ||\n (valueMissing ? 'Please select an option.' : '') ||\n (hasError ? 'Please select a valid option.' : '');\n this.constraintInvalid = hasError;\n const displayedInvalid = this.invalid || hasError;\n const anchor = this.editable ? this.editableInput : this.trigger;\n\n this.validationProxy.setCustomValidity(hasError ? message : '');\n this.trigger?.setAttribute('aria-invalid', String(displayedInvalid));\n this.trigger?.classList.toggle('select-trigger--invalid', displayedInvalid);\n this.editableInput?.setAttribute('aria-invalid', String(displayedInvalid));\n this.editableInput?.classList.toggle('select-editable-input--invalid', displayedInvalid);\n applyElementInternalsValidity(this.internals, flags, message, anchor);\n }\n\n @reconnect()\n onReconnect() {\n this.setupGlobalListeners();\n this.observeChildren();\n this.labelAssociation.connect();\n }\n\n @dispose()\n cleanup() {\n this.removeGlobalListeners();\n this.childObserver?.disconnect();\n this.labelAssociation.disconnect();\n }\n\n private outsideClickHandler?: (e: MouseEvent) => void;\n private globalKeyHandler?: (e: KeyboardEvent) => void;\n\n private setupGlobalListeners() {\n // Create bound handlers\n this.outsideClickHandler = (e: MouseEvent) => {\n if (!this.isOpen) return;\n const path = e.composedPath();\n const associatedLabelClicked = Array.from(this.labels || [])\n .some(label => path.includes(label));\n if (path.includes(this) || associatedLabelClicked) return;\n if (this.editable) {\n this.commitEditableValue();\n }\n this.closeDropdown();\n };\n\n this.globalKeyHandler = (e: KeyboardEvent) => {\n if (!this.isOpen || this.editable) return;\n\n // When focus is in the search input, Space must type a space, not\n // commit the focused option. Other keys (Arrow/Enter/Escape) still\n // navigate options as expected.\n const targetIsSearchInput = e.composedPath()[0] === this.searchInput;\n\n switch (e.key) {\n case 'Escape':\n this.closeDropdown();\n this.trigger?.focus();\n break;\n case 'ArrowDown':\n e.preventDefault();\n this.focusNextOption();\n break;\n case 'ArrowUp':\n e.preventDefault();\n this.focusPreviousOption();\n break;\n case 'Enter':\n case ' ':\n if (e.key === ' ' && targetIsSearchInput) return;\n e.preventDefault();\n if (this.focusedIndex >= 0) {\n const options = this.searchable ? this.filteredOptions : this.mergedOptions;\n const option = options[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleOptionSelect(option);\n }\n }\n break;\n }\n };\n\n // Add listeners\n document.addEventListener('click', this.outsideClickHandler);\n document.addEventListener('keydown', this.globalKeyHandler);\n }\n\n private removeGlobalListeners() {\n if (this.outsideClickHandler) {\n document.removeEventListener('click', this.outsideClickHandler);\n }\n if (this.globalKeyHandler) {\n document.removeEventListener('keydown', this.globalKeyHandler);\n }\n }\n\n // Manual observation of light DOM children (snice-option elements)\n private observeChildren() {\n const observer = new MutationObserver((mutations) => {\n this.handleChildrenChange(mutations);\n });\n\n // Observe the host element (this) for changes to its light DOM children\n observer.observe(this, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['value', 'label', 'disabled', 'selected']\n });\n\n // Store for cleanup\n this.childObserver = observer;\n }\n\n private childObserver?: MutationObserver;\n\n private handleChildrenChange(mutations: MutationRecord[]) {\n // Check if any of the mutations are relevant (snice-option elements or their attributes)\n const relevant = mutations.some(m => {\n if (m.type === 'childList') return true;\n if (m.type === 'attributes' && ['value', 'label', 'disabled', 'selected'].includes(m.attributeName!)) {\n return m.target.nodeName === 'SNICE-OPTION';\n }\n return false;\n });\n\n if (relevant) {\n this.readOptionsFromChildren();\n this.filteredOptions = [...this.mergedOptions];\n\n if (!this.editable) {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.updateDropdownContent();\n }\n }\n\n\n private readOptionsFromChildren() {\n // Get all snice-option children from light DOM\n const optionElements = Array.from(this.querySelectorAll('snice-option'));\n\n this.childOptions = optionElements.map(opt => {\n const sniceOption = opt as any;\n // Use the optionData getter if available, otherwise construct from properties\n if (sniceOption.optionData) {\n return sniceOption.optionData;\n }\n\n return {\n value: opt.getAttribute('value') || '',\n label: opt.getAttribute('label') || opt.textContent?.trim() || '',\n disabled: opt.hasAttribute('disabled'),\n selected: opt.hasAttribute('selected')\n };\n });\n }\n\n // ── Editable mode handlers ──\n\n private handleEditableInput(e: Event) {\n if (this.interactionDisabled || this.readonly) return;\n\n const input = e.target as HTMLInputElement;\n this.editableInputValue = input.value;\n\n // Filter options as user types\n this.filterEditableOptions(this.editableInputValue);\n\n if (!this.isOpen) {\n this.openDropdown();\n }\n }\n\n private handleEditableFocus() {\n if (!this.isOpen && !this.readonly) {\n this.openDropdown();\n }\n }\n\n private handleEditableBlur(e: FocusEvent) {\n // Delay close to allow option clicks via mousedown\n setTimeout(() => {\n if (this.isOpen) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n }, 200);\n }\n\n private handleEditableClick() {\n if (!this.isOpen && !this.interactionDisabled && !this.readonly) {\n this.openDropdown();\n }\n }\n\n private handleEditableArrowClick(e: MouseEvent) {\n e.preventDefault();\n e.stopPropagation();\n if (this.interactionDisabled || this.readonly) return;\n\n if (this.isOpen) {\n this.closeDropdown();\n } else {\n this.openDropdown();\n this.editableInput?.focus();\n }\n }\n\n private handleEditableKeydown(e: KeyboardEvent) {\n switch (e.key) {\n case 'ArrowDown':\n e.preventDefault();\n if (!this.isOpen) {\n this.openDropdown();\n } else {\n this.focusNextOption();\n }\n break;\n case 'ArrowUp':\n e.preventDefault();\n if (this.isOpen) {\n this.focusPreviousOption();\n }\n break;\n case 'Enter':\n e.preventDefault();\n if (this.isOpen && this.focusedIndex >= 0) {\n const option = this.filteredOptions[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleEditableOptionSelect(option);\n }\n } else if (this.isOpen) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n break;\n case 'Escape':\n if (this.isOpen) {\n this.closeDropdown();\n this.syncEditableInputToValue();\n }\n break;\n case 'Tab':\n if (this.isOpen) {\n this.commitEditableValue();\n this.closeDropdown();\n }\n break;\n }\n }\n\n private handleEditableOptionSelect(option: SelectOption) {\n this.value = option.value;\n this.editableInputValue = option.label;\n if (this.editableInput) {\n this.editableInput.value = option.label;\n }\n this.closeDropdown();\n this.dispatchChangeEvent(option);\n this.editableInput?.focus();\n }\n\n private commitEditableValue() {\n if (!this.editableInput) return;\n const inputText = this.editableInput.value.trim();\n\n // Try to match an existing option\n const allOptions = this.mergedOptions;\n const match = allOptions.find(\n opt => opt.label.toLowerCase() === inputText.toLowerCase()\n );\n\n if (match) {\n this.value = match.value;\n this.editableInputValue = match.label;\n this.editableInput.value = match.label;\n this.dispatchChangeEvent(match);\n } else if (this.allowFreeText && inputText) {\n this.value = inputText;\n this.editableInputValue = inputText;\n this.dispatchChangeEvent();\n } else {\n // Revert to current value\n this.syncEditableInputToValue();\n }\n }\n\n private filterEditableOptions(query: string) {\n if (this.remote) {\n this.scheduleRemoteSearch(query);\n return;\n }\n\n const allOptions = this.mergedOptions;\n if (!query) {\n this.filteredOptions = [...allOptions];\n } else {\n const lower = query.toLowerCase();\n this.filteredOptions = allOptions.filter(opt =>\n opt.label.toLowerCase().includes(lower)\n );\n }\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n\n private syncEditableInputToValue() {\n if (!this.editableInput) return;\n\n if (this.value) {\n const match = this.resolvableOptions.find(opt => opt.value === this.value);\n if (match) {\n this.editableInput.value = match.label;\n this.editableInputValue = match.label;\n } else if (this.allowFreeText) {\n this.editableInput.value = this.value;\n this.editableInputValue = this.value;\n } else {\n this.editableInput.value = '';\n this.editableInputValue = '';\n }\n } else {\n this.editableInput.value = '';\n this.editableInputValue = '';\n }\n }\n\n private updateEditableState() {\n if (!this.editableInput) return;\n this.editableInput.setAttribute('aria-expanded', String(this.isOpen));\n this.editableInput.classList.toggle('select-editable-input--open', this.isOpen);\n const displayedInvalid = this.invalid || this.constraintInvalid;\n this.editableInput.setAttribute('aria-invalid', String(displayedInvalid));\n this.editableInput.classList.toggle('select-editable-input--invalid', displayedInvalid);\n }\n\n // ── Dropdown mousedown (prevents blur in editable mode) ──\n\n private handleDropdownMousedown(e: MouseEvent) {\n if (this.editable) {\n e.preventDefault();\n }\n }\n\n // ── Standard (non-editable) mode handlers ──\n\n private handleTriggerOpen(e: KeyboardEvent) {\n if (['Enter', ' ', 'ArrowDown', 'ArrowUp'].includes(e.key)) {\n e.preventDefault();\n if (!this.isOpen) {\n this.openDropdown();\n }\n }\n }\n\n private handleSearchKeydown(e: KeyboardEvent) {\n switch (e.key) {\n case 'Escape':\n this.closeDropdown();\n this.trigger?.focus();\n break;\n case 'ArrowDown':\n e.preventDefault();\n this.focusNextOption();\n break;\n case 'ArrowUp':\n e.preventDefault();\n this.focusPreviousOption();\n break;\n case 'Enter':\n e.preventDefault();\n if (this.focusedIndex >= 0) {\n const options = this.searchable ? this.filteredOptions : this.mergedOptions;\n const option = options[this.focusedIndex];\n if (option && !option.disabled) {\n this.handleOptionSelect(option);\n }\n }\n break;\n }\n }\n\n private focusNextOption() {\n const options = (this.searchable || this.editable) ? this.filteredOptions : this.mergedOptions;\n const enabledOptions = options.filter(opt => !opt.disabled);\n if (enabledOptions.length === 0) return;\n\n this.focusedIndex++;\n if (this.focusedIndex >= options.length) {\n this.focusedIndex = 0;\n }\n while (options[this.focusedIndex]?.disabled) {\n this.focusedIndex++;\n if (this.focusedIndex >= options.length) {\n this.focusedIndex = 0;\n }\n }\n this.updateOptionFocus();\n }\n\n private focusPreviousOption() {\n const options = (this.searchable || this.editable) ? this.filteredOptions : this.mergedOptions;\n const enabledOptions = options.filter(opt => !opt.disabled);\n if (enabledOptions.length === 0) return;\n\n this.focusedIndex--;\n if (this.focusedIndex < 0) {\n this.focusedIndex = options.length - 1;\n }\n while (options[this.focusedIndex]?.disabled) {\n this.focusedIndex--;\n if (this.focusedIndex < 0) {\n this.focusedIndex = options.length - 1;\n }\n }\n this.updateOptionFocus();\n }\n\n private updateOptionFocus() {\n if (this.optionElements) {\n this.optionElements.forEach((el, index) => {\n el.classList.toggle('select-option--focused', index === this.focusedIndex);\n });\n // Scroll focused option into view\n const focusedEl = this.optionElements?.[this.focusedIndex];\n if (focusedEl) {\n focusedEl.scrollIntoView({ block: 'nearest' });\n }\n }\n }\n\n private handleClearClick(e: MouseEvent) {\n if (this.interactionDisabled || this.readonly) return;\n e.preventDefault();\n e.stopPropagation();\n this.clear();\n }\n\n private handleTriggerClick(e: MouseEvent) {\n const target = e.target as HTMLElement;\n\n // Don't toggle if clicking on the clear button\n if (target.closest('.select-clear')) {\n return;\n }\n\n e.stopPropagation();\n\n if (!this.interactionDisabled && !this.readonly) {\n this.toggleDropdown();\n }\n }\n\n private handleOptionsClick(e: MouseEvent) {\n if (this.interactionDisabled || this.readonly) return;\n const target = e.target as HTMLElement;\n\n // Handle tag remove click\n if (target.closest('.select-tag-remove')) {\n e.stopPropagation();\n const removeBtn = target.closest('.select-tag-remove') as HTMLElement;\n const value = removeBtn.getAttribute('data-value');\n if (value && this.multiple) {\n this.selectedValues.delete(value);\n this.value = Array.from(this.selectedValues).join(',');\n\n this.updateValueDisplay();\n this.updateClearButton();\n this.dispatchChangeEvent();\n }\n return;\n }\n\n const optionEl = target.closest('.select-option') as HTMLElement;\n\n if (!optionEl) return;\n\n e.stopPropagation();\n\n const value = optionEl.getAttribute('data-value');\n if (!value) return;\n\n const option = this.resolvableOptions.find(opt => opt.value === value);\n if (option && !option.disabled) {\n if (this.editable) {\n this.handleEditableOptionSelect(option);\n } else {\n this.handleOptionSelect(option);\n }\n }\n }\n\n private handleSearchInput(e: Event) {\n const input = e.target as HTMLInputElement;\n const searchTerm = input.value;\n\n if (this.remote) {\n this.scheduleRemoteSearch(searchTerm);\n return;\n }\n\n const lower = searchTerm.toLowerCase();\n if (lower) {\n this.filteredOptions = this.mergedOptions.filter(opt =>\n opt.label.toLowerCase().includes(lower)\n );\n } else {\n this.filteredOptions = [...this.mergedOptions];\n }\n\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n\n private handleOptionSelect(option: SelectOption) {\n if (this.multiple) {\n if (this.selectedValues.has(option.value)) {\n this.selectedValues.delete(option.value);\n } else {\n this.selectedValues.add(option.value);\n }\n this.value = Array.from(this.selectedValues).join(',');\n this.updateDropdownContent();\n } else {\n this.value = option.value;\n this.closeDropdown();\n }\n\n\n this.updateValueDisplay();\n this.updateClearButton();\n this.dispatchChangeEvent(option);\n }\n\n @watch('valueState')\n handleValueChange() {\n this.syncRenderedValue();\n this.syncFormState();\n }\n\n @watch('defaultValue')\n handleDefaultValueChange() {\n if (!this.dirtyValue) this.applyDefaultValue();\n }\n\n @watch('options')\n handleOptionsPropertyChange() {\n this.filteredOptions = [...this.mergedOptions];\n this.updateDropdownContent();\n if (this.editable) {\n this.syncEditableInputToValue();\n }\n }\n\n @watch('disabled', 'loading', 'formDisabled')\n handleDisabledChange() {\n if (!this.editable) {\n this.updateTriggerState();\n this.updateClearButton();\n }\n // Side effect: close dropdown when disabled\n if (this.interactionDisabled && this.isOpen && !this.remote) {\n this.closeDropdown();\n }\n this.syncValidity();\n }\n\n @watch('required', 'readonly', 'multiple')\n handleValidationConfigurationChange() {\n this.syncRenderedValue();\n this.syncValidity();\n }\n\n @watch('editable')\n handleValidationAnchorChange() {\n queueMicrotask(() => {\n const rendered = (this as unknown as { readonly rendered: Promise<void> }).rendered;\n void rendered.then(() => {\n if (!this.isConnected) return;\n this.syncRenderedValue();\n this.syncValidity();\n this.labelAssociation.sync();\n });\n });\n }\n\n @watch('invalid')\n handleInvalidChange() {\n const displayedInvalid = this.invalid || this.constraintInvalid;\n this.trigger?.setAttribute('aria-invalid', String(displayedInvalid));\n this.trigger?.classList.toggle('select-trigger--invalid', displayedInvalid);\n this.editableInput?.setAttribute('aria-invalid', String(displayedInvalid));\n this.editableInput?.classList.toggle('select-editable-input--invalid', displayedInvalid);\n }\n\n @watch('open')\n handleOpenChange() {\n this.updateDropdownState();\n\n if (this.editable) {\n this.updateEditableState();\n\n if (this.isOpen) {\n if (this.remote) {\n // Trigger remote search with current input\n const query = this.editableInput?.value || '';\n this.scheduleRemoteSearch(query);\n } else {\n // Reset filter to show all options when opening\n this.filteredOptions = [...this.mergedOptions];\n this.focusedIndex = -1;\n this.updateDropdownContent();\n }\n }\n\n if (!this.isOpen) {\n this.focusedIndex = -1;\n }\n } else {\n this.updateTriggerState();\n\n // Side effect: focus search input when opened\n if (this.isOpen && this.searchable && this.searchInput) {\n setTimeout(() => this.searchInput?.focus(), 100);\n }\n\n // Side effect: trigger initial remote search on open\n if (this.isOpen && this.remote && this.searchable) {\n const query = this.searchInput?.value || '';\n this.scheduleRemoteSearch(query);\n }\n\n // Side effect: reset search when closed\n if (!this.isOpen) {\n this.focusedIndex = -1;\n if (this.searchInput) {\n this.searchInput.value = '';\n this.filteredOptions = [...this.mergedOptions];\n this.updateDropdownContent();\n }\n }\n }\n }\n\n private updateValueDisplay() {\n if (!this.valueDisplay) return;\n\n const allOptions = this.resolvableOptions;\n const selectedOptions = allOptions.filter(opt =>\n this.multiple ? this.selectedValues.has(opt.value) : opt.value === this.value\n );\n\n if (this.multiple && selectedOptions.length > 0) {\n const values = document.createElement('div');\n values.className = 'select-value--multiple';\n\n selectedOptions.forEach(opt => {\n const tag = document.createElement('span');\n tag.className = 'select-tag';\n\n const removeButton = document.createElement('span');\n removeButton.className = 'select-tag-remove';\n removeButton.setAttribute('data-value', opt.value);\n removeButton.setAttribute('aria-label', `Remove ${opt.label}`);\n removeButton.hidden = this.interactionDisabled || this.readonly;\n removeButton.textContent = '×';\n\n tag.append(\n this.createIcon('select-tag-icon', opt.icon),\n document.createTextNode(opt.label),\n removeButton\n );\n values.append(tag);\n });\n\n this.valueDisplay.replaceChildren(values);\n } else if (selectedOptions.length > 0) {\n const selected = selectedOptions[0];\n const value = document.createElement('div');\n value.className = 'select-value--single';\n\n const label = document.createElement('span');\n label.textContent = selected.label;\n\n value.append(this.createIcon('select-value-icon', selected.icon), label);\n this.valueDisplay.replaceChildren(value);\n } else {\n const placeholder = document.createElement('span');\n placeholder.className = 'select-placeholder';\n placeholder.textContent = this.placeholder;\n this.valueDisplay.replaceChildren(placeholder);\n }\n }\n\n private updateClearButton() {\n if (!this.clearButton) return;\n\n const allOptions = this.resolvableOptions;\n const selectedOptions = allOptions.filter(opt =>\n this.multiple ? this.selectedValues.has(opt.value) : opt.value === this.value\n );\n\n const shouldShow = this.clearable && selectedOptions.length > 0 && !this.interactionDisabled && !this.readonly;\n this.clearButton.style.display = shouldShow ? '' : 'none';\n }\n\n private updateDropdownContent() {\n if (!this.optionsList) return;\n this.optionsList.replaceChildren(this.renderOptions());\n }\n\n\n @dispatch('select-change', { bubbles: true, composed: true })\n private dispatchChangeEvent(option?: SelectOption) {\n return {\n value: this.multiple ? Array.from(this.selectedValues) : this.value,\n option,\n select: this\n };\n }\n\n @dispatch('select-open', { bubbles: true, composed: true })\n private dispatchOpenEvent() {\n return { select: this };\n }\n\n @dispatch('select-close', { bubbles: true, composed: true })\n private dispatchCloseEvent() {\n return { select: this };\n }\n\n // Public API\n focus() {\n if (this.editable) {\n this.editableInput?.focus();\n } else {\n this.trigger?.focus();\n }\n }\n\n /** Native-compatible select type. @public */\n get type(): 'select-one' | 'select-multiple' {\n return this.multiple ? 'select-multiple' : 'select-one';\n }\n\n /** Owning form, including association through a `form` attribute. @public */\n get form(): HTMLFormElement | null {\n return findFormOwner(this, this.internals);\n }\n\n /** Current constraint-validation state. @public */\n get validity(): ValidityState {\n return this.internals?.validity ?? this.validationProxy.validity;\n }\n\n /** Current validation message. @public */\n get validationMessage(): string {\n return this.internals?.validationMessage ?? this.validationProxy.validationMessage;\n }\n\n /** Whether this select currently participates in constraint validation. @public */\n get willValidate(): boolean {\n if (this.interactionDisabled || this.readonly) return false;\n return this.internals?.willValidate ?? true;\n }\n\n /** Labels associated through wrapping `<label>` or explicit `for`/`id`. @public */\n get labels(): NodeList | null {\n return this.labelAssociation.labels;\n }\n\n blur() {\n if (this.editable) {\n this.editableInput?.blur();\n } else {\n this.trigger?.blur();\n }\n if (this.isOpen) {\n this.closeDropdown();\n }\n }\n\n checkValidity(): boolean {\n this.syncValidity();\n return this.internals?.checkValidity() ?? this.validationProxy.checkValidity();\n }\n\n reportValidity(): boolean {\n this.syncValidity();\n return this.internals?.reportValidity() ?? this.validationProxy.reportValidity();\n }\n\n setCustomValidity(message: string): void {\n this.customValidationMessage = String(message);\n this.syncValidity();\n }\n\n clear() {\n if (this.multiple) {\n this.selectedValues.clear();\n this.value = '';\n } else {\n this.value = '';\n }\n\n if (this.editable) {\n this.syncEditableInputToValue();\n } else {\n this.updateValueDisplay();\n this.updateClearButton();\n }\n this.dispatchChangeEvent();\n }\n\n openDropdown() {\n if (!this.isOpen && !this.interactionDisabled && !this.readonly) {\n this.open = true;\n this.dispatchOpenEvent();\n }\n }\n\n closeDropdown() {\n if (this.isOpen) {\n this.open = false;\n this.dispatchCloseEvent();\n }\n }\n\n toggleDropdown() {\n if (this.isOpen) {\n this.closeDropdown();\n } else {\n this.openDropdown();\n }\n }\n\n selectOption(value: string) {\n const option = this.resolvableOptions.find(opt => opt.value === value);\n if (option && !option.disabled) {\n if (this.editable) {\n this.handleEditableOptionSelect(option);\n } else {\n this.handleOptionSelect(option);\n }\n }\n }\n\n private updateTriggerState() {\n if (!this.trigger) return;\n\n this.trigger.classList.toggle('select-trigger--open', this.isOpen);\n this.trigger.classList.toggle('select-trigger--disabled', this.interactionDisabled);\n this.trigger.classList.toggle('select-trigger--readonly', this.readonly);\n const displayedInvalid = this.invalid || this.constraintInvalid;\n this.trigger.classList.toggle('select-trigger--invalid', displayedInvalid);\n this.trigger.setAttribute('aria-invalid', String(displayedInvalid));\n this.trigger.classList.toggle('select-trigger--loading', this.loading);\n this.trigger.setAttribute('aria-expanded', String(this.isOpen));\n this.trigger.disabled = this.interactionDisabled;\n }\n\n private updateDropdownState() {\n if (!this.dropdown) return;\n\n this.dropdown.classList.toggle('select-dropdown--open', this.isOpen);\n\n if (this.arrow) {\n this.arrow.classList.toggle('select-arrow--open', this.isOpen);\n }\n }\n\n}\n"],"names":["cssTag"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { installCellPresentation } from './table-cell-presentation.js';
|
|
|
4
4
|
import { renderIcon } from '../utils.js';
|
|
5
5
|
import '../icons/index.js';
|
|
6
6
|
|
|
7
|
-
var cssContent = ":host([hidden]){display:none}:host{color:var(--snice-color-text,rgb(23 23 23));display:flex;align-items:center;min-height:2.5rem;min-width:6.25rem;flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:6.25rem;min-height:1.25rem}.actions-container{display:inline-flex;gap:.5rem;align-items:center}.action-button{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border:1px solid transparent;border-radius:.25rem;background:0 0;cursor:pointer;transition:.2s;font-size:.875rem;line-height:1}.action-button:hover{background:var(--snice-color-surface-hover,rgb(243 244 246))}.action-button:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(37 99 235 / .5));outline-offset:2px}.action-button:active{transform:scale(.95)}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-button:disabled:hover{background:0 0}.action-button--primary{color:var(--snice-color-primary,rgb(37 99 235))}.action-button--primary:hover:not(:disabled){background:rgb(37 99 235 / .1)}.action-button--secondary{color:var(--snice-color-text,rgb(23 23 23))}.action-button--danger{color:var(--snice-color-danger,rgb(220 38 38))}.action-button--danger:hover:not(:disabled){background:rgb(220 38 38 / .1)}.action-button--success{color:var(--snice-color-success,rgb(22 163 74))}.action-button--success:hover:not(:disabled){background:rgb(22 163 74 / .1)}.action-icon{display:inline-flex;align-items:center;font-size:1rem}img.action-icon{width:1rem;height:1rem;object-fit:contain}.action-icon svg{width:1rem;height:1rem}.action-label{font-weight:var(--snice-font-weight-medium,500)}:host([align=left]){justify-content:flex-start}:host([align=center]){justify-content:center}:host([align=right]){justify-content:flex-end}@media (max-width:768px){.action-button{padding:.25rem}.action-label{display:none}}@media print{.actions-container{display:none}}";
|
|
7
|
+
var cssContent = ":host([hidden]){display:none}:host{color:var(--snice-color-text,rgb(23 23 23));display:flex;align-items:center;min-height:2.5rem;min-width:var(--snice-table-cell-min-width,6.25rem);flex:1;font-size:.875rem;line-height:1.25rem}.cell-content{width:100%;min-width:var(--snice-table-cell-min-width,6.25rem);min-height:1.25rem}.actions-container{display:inline-flex;gap:.5rem;align-items:center}.action-button{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border:1px solid transparent;border-radius:.25rem;background:0 0;cursor:pointer;transition:.2s;font-size:.875rem;line-height:1}.action-button:hover{background:var(--snice-color-surface-hover,rgb(243 244 246))}.action-button:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(37 99 235 / .5));outline-offset:2px}.action-button:active{transform:scale(.95)}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-button:disabled:hover{background:0 0}.action-button--primary{color:var(--snice-color-primary,rgb(37 99 235))}.action-button--primary:hover:not(:disabled){background:rgb(37 99 235 / .1)}.action-button--secondary{color:var(--snice-color-text,rgb(23 23 23))}.action-button--danger{color:var(--snice-color-danger,rgb(220 38 38))}.action-button--danger:hover:not(:disabled){background:rgb(220 38 38 / .1)}.action-button--success{color:var(--snice-color-success,rgb(22 163 74))}.action-button--success:hover:not(:disabled){background:rgb(22 163 74 / .1)}.action-icon{display:inline-flex;align-items:center;font-size:1rem}img.action-icon{width:1rem;height:1rem;object-fit:contain}.action-icon svg{width:1rem;height:1rem}.action-label{font-weight:var(--snice-font-weight-medium,500)}:host([align=left]){justify-content:flex-start}:host([align=center]){justify-content:center}:host([align=right]){justify-content:flex-end}@media (max-width:768px){.action-button{padding:.25rem}.action-label{display:none}}@media print{.actions-container{display:none}}";
|
|
8
8
|
|
|
9
9
|
let SniceCellActions = (() => {
|
|
10
10
|
let _classDecorators = [element('snice-cell-actions')];
|