@getufy/flint-ui 0.1.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/dist/_shared/decorate-DPS9PT8d.js +9 -0
- package/dist/_shared/flint-accordion-CnXIksxN.js +104 -0
- package/dist/_shared/flint-alert-DNcwWxQL.js +59 -0
- package/dist/_shared/flint-app-bar-CNbq6ggt.js +39 -0
- package/dist/_shared/flint-autocomplete-B1tLM8lN.js +131 -0
- package/dist/_shared/flint-avatar-DSQJv4gX.js +40 -0
- package/dist/_shared/flint-backdrop-BszHm5cJ.js +58 -0
- package/dist/_shared/flint-badge-AzmcBWUq.js +38 -0
- package/dist/_shared/flint-bottom-navigation-B4-3_1w7.js +46 -0
- package/dist/_shared/flint-bottom-navigation-action-CW0ZUZlF.js +44 -0
- package/dist/_shared/flint-box-TbPTowiO.js +60 -0
- package/dist/_shared/flint-breadcrumbs-DjFiMWIj.js +83 -0
- package/dist/_shared/flint-button-DwrmFg7O.js +39 -0
- package/dist/_shared/flint-button-group-CdwiDTLI.js +20 -0
- package/dist/_shared/flint-card-C-j6SYxM.js +33 -0
- package/dist/_shared/flint-card-action-area-07Emwi1d.js +22 -0
- package/dist/_shared/flint-card-actions-C74ZbYNI.js +17 -0
- package/dist/_shared/flint-card-content-C3Gv3Ps5.js +17 -0
- package/dist/_shared/flint-card-header-HxL5TlBx.js +28 -0
- package/dist/_shared/flint-card-media-B1U9TYsC.js +26 -0
- package/dist/_shared/flint-carousel-jwZ5C4e_.js +224 -0
- package/dist/_shared/flint-checkbox-GnuZq0Yy.js +82 -0
- package/dist/_shared/flint-chip-5QF8rU8e.js +86 -0
- package/dist/_shared/flint-circular-progress-CuR8VdqI.js +68 -0
- package/dist/_shared/flint-collapsible-BJ4LwGpz.js +101 -0
- package/dist/_shared/flint-command-DGhby0QI.js +318 -0
- package/dist/_shared/flint-container-CYSq758Y.js +42 -0
- package/dist/_shared/flint-copy-button-Y4yVbPxo.js +142 -0
- package/dist/_shared/flint-date-field-CYSc9ezt.js +288 -0
- package/dist/_shared/flint-date-picker-CmCtDBVO.js +370 -0
- package/dist/_shared/flint-date-range-calendar-BPBdO9n3.js +122 -0
- package/dist/_shared/flint-date-range-picker-DiVjn_ST.js +201 -0
- package/dist/_shared/flint-dialog-CH1ylFUb.js +113 -0
- package/dist/_shared/flint-divider-Boj8Ggbt.js +37 -0
- package/dist/_shared/flint-drawer-BAukflTn.js +79 -0
- package/dist/_shared/flint-empty-Bq8DuJQT.js +75 -0
- package/dist/_shared/flint-fab-D8nKcAan.js +77 -0
- package/dist/_shared/flint-format-date-_jfKYO_2.js +62 -0
- package/dist/_shared/flint-format-number-g8MkggyM.js +68 -0
- package/dist/_shared/flint-grid-ClCXGz3k.js +177 -0
- package/dist/_shared/flint-hover-card-fSMVR0xj.js +125 -0
- package/dist/_shared/flint-image-comparer-DDF_wCjc.js +116 -0
- package/dist/_shared/flint-image-list-CS-XDM0T.js +24 -0
- package/dist/_shared/flint-image-list-item-CE1j29Ay.js +41 -0
- package/dist/_shared/flint-image-list-item-bar-BZfSoVrZ.js +31 -0
- package/dist/_shared/flint-input-BV4Glu8N.js +87 -0
- package/dist/_shared/flint-input-otp-__geY8N4.js +203 -0
- package/dist/_shared/flint-item-XvdemneV.js +114 -0
- package/dist/_shared/flint-kbd-DXSl3YcK.js +31 -0
- package/dist/_shared/flint-linear-progress-B4sGgZrk.js +63 -0
- package/dist/_shared/flint-link-CnzR1CYQ.js +55 -0
- package/dist/_shared/flint-list-DJCPEDre.js +113 -0
- package/dist/_shared/flint-menu-EOF1QvHq.js +207 -0
- package/dist/_shared/flint-menubar-7AuGQli6.js +666 -0
- package/dist/_shared/flint-pagination-D-KNsfjM.js +143 -0
- package/dist/_shared/flint-paper-CArGvvRa.js +27 -0
- package/dist/_shared/flint-radio-B_C3wNRn.js +165 -0
- package/dist/_shared/flint-range-slider-IfXMtey2.js +129 -0
- package/dist/_shared/flint-rating-9FxNfBNa.js +148 -0
- package/dist/_shared/flint-relative-time-BFh5nQqz.js +98 -0
- package/dist/_shared/flint-rich-tree-view-BGUjgeZv.js +383 -0
- package/dist/_shared/flint-scroll-area-Dn9yT7ZU.js +227 -0
- package/dist/_shared/flint-select-Bhc3BR09.js +249 -0
- package/dist/_shared/flint-simple-tree-view-DD3zHLzJ.js +175 -0
- package/dist/_shared/flint-single-input-date-range-field-BVGf6515.js +314 -0
- package/dist/_shared/flint-skeleton-CWFa-PkE.js +54 -0
- package/dist/_shared/flint-slider-CVb_rYPp.js +97 -0
- package/dist/_shared/flint-snackbar-DS5F7oXF.js +102 -0
- package/dist/_shared/flint-sonner-DD_qGTfm.js +230 -0
- package/dist/_shared/flint-speed-dial-DTZ2WaBh.js +259 -0
- package/dist/_shared/flint-stack-GAeGPdLR.js +98 -0
- package/dist/_shared/flint-stepper-DdkEEVXE.js +285 -0
- package/dist/_shared/flint-switch-DN7VI9jT.js +80 -0
- package/dist/_shared/flint-table-DQ--YqEC.js +112 -0
- package/dist/_shared/flint-table-pagination-BrJ56t-r.js +97 -0
- package/dist/_shared/flint-table-sort-label-C4mkQmDM.js +37 -0
- package/dist/_shared/flint-tabs-Do8hU-DT.js +226 -0
- package/dist/_shared/flint-text-field-DlLvuIJW.js +76 -0
- package/dist/_shared/flint-textarea-wDEUC9Bt.js +106 -0
- package/dist/_shared/flint-time-picker-D00w7wjz.js +817 -0
- package/dist/_shared/flint-toggle-DTT9i3J2.js +61 -0
- package/dist/_shared/flint-toggle-button-GmL4rbZa.js +48 -0
- package/dist/_shared/flint-toggle-button-group-Cp9x0wSj.js +52 -0
- package/dist/_shared/flint-tooltip-C9nJvtJi.js +108 -0
- package/dist/_shared/flint-transfer-list-DZsAcF0l.js +173 -0
- package/dist/_shared/flint-tree-item-iMT216uo.js +130 -0
- package/dist/_shared/flint-typography-D0vqF15X.js +66 -0
- package/dist/_shared/flint-visually-hidden-CqgpY__B.js +22 -0
- package/dist/_shared/form-associated-EGIhyHHt.js +20 -0
- package/dist/accordion/flint-accordion.d.ts +61 -0
- package/dist/accordion/flint-accordion.d.ts.map +1 -0
- package/dist/accordion/flint-accordion.js +2 -0
- package/dist/alert/flint-alert.d.ts +35 -0
- package/dist/alert/flint-alert.d.ts.map +1 -0
- package/dist/alert/flint-alert.js +2 -0
- package/dist/app-bar/flint-app-bar.d.ts +20 -0
- package/dist/app-bar/flint-app-bar.d.ts.map +1 -0
- package/dist/app-bar/flint-app-bar.js +2 -0
- package/dist/autocomplete/flint-autocomplete.d.ts +44 -0
- package/dist/autocomplete/flint-autocomplete.d.ts.map +1 -0
- package/dist/autocomplete/flint-autocomplete.js +2 -0
- package/dist/avatar/flint-avatar.d.ts +26 -0
- package/dist/avatar/flint-avatar.d.ts.map +1 -0
- package/dist/avatar/flint-avatar.js +2 -0
- package/dist/backdrop/flint-backdrop.d.ts +28 -0
- package/dist/backdrop/flint-backdrop.d.ts.map +1 -0
- package/dist/backdrop/flint-backdrop.js +2 -0
- package/dist/badge/flint-badge.d.ts +27 -0
- package/dist/badge/flint-badge.d.ts.map +1 -0
- package/dist/badge/flint-badge.js +2 -0
- package/dist/bottom-navigation/flint-bottom-navigation-action.d.ts +34 -0
- package/dist/bottom-navigation/flint-bottom-navigation-action.d.ts.map +1 -0
- package/dist/bottom-navigation/flint-bottom-navigation-action.js +2 -0
- package/dist/bottom-navigation/flint-bottom-navigation.d.ts +30 -0
- package/dist/bottom-navigation/flint-bottom-navigation.d.ts.map +1 -0
- package/dist/bottom-navigation/flint-bottom-navigation.js +2 -0
- package/dist/box/flint-box.d.ts +79 -0
- package/dist/box/flint-box.d.ts.map +1 -0
- package/dist/box/flint-box.js +2 -0
- package/dist/breadcrumbs/flint-breadcrumbs.d.ts +50 -0
- package/dist/breadcrumbs/flint-breadcrumbs.d.ts.map +1 -0
- package/dist/breadcrumbs/flint-breadcrumbs.js +2 -0
- package/dist/button/flint-button-group.d.ts +12 -0
- package/dist/button/flint-button-group.d.ts.map +1 -0
- package/dist/button/flint-button-group.js +2 -0
- package/dist/button/flint-button.d.ts +19 -0
- package/dist/button/flint-button.d.ts.map +1 -0
- package/dist/button/flint-button.js +2 -0
- package/dist/button/flint-toggle-button-group.d.ts +25 -0
- package/dist/button/flint-toggle-button-group.d.ts.map +1 -0
- package/dist/button/flint-toggle-button-group.js +2 -0
- package/dist/button/flint-toggle-button.d.ts +25 -0
- package/dist/button/flint-toggle-button.d.ts.map +1 -0
- package/dist/button/flint-toggle-button.js +2 -0
- package/dist/card/flint-card-action-area.d.ts +12 -0
- package/dist/card/flint-card-action-area.d.ts.map +1 -0
- package/dist/card/flint-card-action-area.js +2 -0
- package/dist/card/flint-card-actions.d.ts +11 -0
- package/dist/card/flint-card-actions.d.ts.map +1 -0
- package/dist/card/flint-card-actions.js +2 -0
- package/dist/card/flint-card-content.d.ts +11 -0
- package/dist/card/flint-card-content.d.ts.map +1 -0
- package/dist/card/flint-card-content.js +2 -0
- package/dist/card/flint-card-header.d.ts +13 -0
- package/dist/card/flint-card-header.d.ts.map +1 -0
- package/dist/card/flint-card-header.js +2 -0
- package/dist/card/flint-card-media.d.ts +14 -0
- package/dist/card/flint-card-media.d.ts.map +1 -0
- package/dist/card/flint-card-media.js +2 -0
- package/dist/card/flint-card.d.ts +13 -0
- package/dist/card/flint-card.d.ts.map +1 -0
- package/dist/card/flint-card.js +2 -0
- package/dist/carousel/flint-carousel.d.ts +87 -0
- package/dist/carousel/flint-carousel.d.ts.map +1 -0
- package/dist/carousel/flint-carousel.js +2 -0
- package/dist/checkbox/flint-checkbox.d.ts +41 -0
- package/dist/checkbox/flint-checkbox.d.ts.map +1 -0
- package/dist/checkbox/flint-checkbox.js +2 -0
- package/dist/chip/flint-chip.d.ts +34 -0
- package/dist/chip/flint-chip.d.ts.map +1 -0
- package/dist/chip/flint-chip.js +2 -0
- package/dist/collapsible/flint-collapsible.d.ts +80 -0
- package/dist/collapsible/flint-collapsible.d.ts.map +1 -0
- package/dist/collapsible/flint-collapsible.js +2 -0
- package/dist/command/flint-command.d.ts +189 -0
- package/dist/command/flint-command.d.ts.map +1 -0
- package/dist/command/flint-command.js +2 -0
- package/dist/container/flint-container.d.ts +27 -0
- package/dist/container/flint-container.d.ts.map +1 -0
- package/dist/container/flint-container.js +2 -0
- package/dist/copy-button/flint-copy-button.d.ts +55 -0
- package/dist/copy-button/flint-copy-button.d.ts.map +1 -0
- package/dist/copy-button/flint-copy-button.js +2 -0
- package/dist/date-field/flint-date-field.d.ts +82 -0
- package/dist/date-field/flint-date-field.d.ts.map +1 -0
- package/dist/date-field/flint-date-field.js +2 -0
- package/dist/date-picker/flint-date-picker.d.ts +93 -0
- package/dist/date-picker/flint-date-picker.d.ts.map +1 -0
- package/dist/date-picker/flint-date-picker.js +2 -0
- package/dist/date-range-picker/date-range-helpers.d.ts +31 -0
- package/dist/date-range-picker/date-range-helpers.d.ts.map +1 -0
- package/dist/date-range-picker/date-range-helpers.js +128 -0
- package/dist/date-range-picker/flint-date-range-calendar.d.ts +41 -0
- package/dist/date-range-picker/flint-date-range-calendar.d.ts.map +1 -0
- package/dist/date-range-picker/flint-date-range-calendar.js +2 -0
- package/dist/date-range-picker/flint-date-range-picker.d.ts +74 -0
- package/dist/date-range-picker/flint-date-range-picker.d.ts.map +1 -0
- package/dist/date-range-picker/flint-date-range-picker.js +2 -0
- package/dist/date-range-picker/flint-single-input-date-range-field.d.ts +65 -0
- package/dist/date-range-picker/flint-single-input-date-range-field.d.ts.map +1 -0
- package/dist/date-range-picker/flint-single-input-date-range-field.js +2 -0
- package/dist/dialog/flint-dialog.d.ts +76 -0
- package/dist/dialog/flint-dialog.d.ts.map +1 -0
- package/dist/dialog/flint-dialog.js +2 -0
- package/dist/divider/flint-divider.d.ts +24 -0
- package/dist/divider/flint-divider.d.ts.map +1 -0
- package/dist/divider/flint-divider.js +2 -0
- package/dist/drawer/flint-drawer.d.ts +37 -0
- package/dist/drawer/flint-drawer.d.ts.map +1 -0
- package/dist/drawer/flint-drawer.js +2 -0
- package/dist/empty/flint-empty.d.ts +70 -0
- package/dist/empty/flint-empty.d.ts.map +1 -0
- package/dist/empty/flint-empty.js +2 -0
- package/dist/fab/flint-fab.d.ts +25 -0
- package/dist/fab/flint-fab.d.ts.map +1 -0
- package/dist/fab/flint-fab.js +2 -0
- package/dist/flint-range-slider/flint-range-slider.d.ts +56 -0
- package/dist/flint-range-slider/flint-range-slider.d.ts.map +1 -0
- package/dist/flint-range-slider/flint-range-slider.js +2 -0
- package/dist/format-date/flint-format-date.d.ts +89 -0
- package/dist/format-date/flint-format-date.d.ts.map +1 -0
- package/dist/format-date/flint-format-date.js +2 -0
- package/dist/format-number/flint-format-number.d.ts +81 -0
- package/dist/format-number/flint-format-number.d.ts.map +1 -0
- package/dist/format-number/flint-format-number.js +2 -0
- package/dist/grid/flint-grid.d.ts +73 -0
- package/dist/grid/flint-grid.d.ts.map +1 -0
- package/dist/grid/flint-grid.js +2 -0
- package/dist/hover-card/flint-hover-card.d.ts +103 -0
- package/dist/hover-card/flint-hover-card.d.ts.map +1 -0
- package/dist/hover-card/flint-hover-card.js +2 -0
- package/dist/image-comparer/flint-image-comparer.d.ts +50 -0
- package/dist/image-comparer/flint-image-comparer.d.ts.map +1 -0
- package/dist/image-comparer/flint-image-comparer.js +2 -0
- package/dist/image-list/flint-image-list-item-bar.d.ts +26 -0
- package/dist/image-list/flint-image-list-item-bar.d.ts.map +1 -0
- package/dist/image-list/flint-image-list-item-bar.js +2 -0
- package/dist/image-list/flint-image-list-item.d.ts +48 -0
- package/dist/image-list/flint-image-list-item.d.ts.map +1 -0
- package/dist/image-list/flint-image-list-item.js +2 -0
- package/dist/image-list/flint-image-list.d.ts +28 -0
- package/dist/image-list/flint-image-list.d.ts.map +1 -0
- package/dist/image-list/flint-image-list.js +2 -0
- package/dist/index.d.ts +110 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +96 -0
- package/dist/input/flint-input.d.ts +52 -0
- package/dist/input/flint-input.d.ts.map +1 -0
- package/dist/input/flint-input.js +2 -0
- package/dist/input-otp/flint-input-otp.d.ts +130 -0
- package/dist/input-otp/flint-input-otp.d.ts.map +1 -0
- package/dist/input-otp/flint-input-otp.js +2 -0
- package/dist/item/flint-item.d.ts +151 -0
- package/dist/item/flint-item.d.ts.map +1 -0
- package/dist/item/flint-item.js +2 -0
- package/dist/kbd/flint-kbd.d.ts +47 -0
- package/dist/kbd/flint-kbd.d.ts.map +1 -0
- package/dist/kbd/flint-kbd.js +2 -0
- package/dist/link/flint-link.d.ts +47 -0
- package/dist/link/flint-link.d.ts.map +1 -0
- package/dist/link/flint-link.js +2 -0
- package/dist/list/flint-list.d.ts +78 -0
- package/dist/list/flint-list.d.ts.map +1 -0
- package/dist/list/flint-list.js +2 -0
- package/dist/menu/flint-menu.d.ts +107 -0
- package/dist/menu/flint-menu.d.ts.map +1 -0
- package/dist/menu/flint-menu.js +2 -0
- package/dist/menubar/flint-menubar.d.ts +256 -0
- package/dist/menubar/flint-menubar.d.ts.map +1 -0
- package/dist/menubar/flint-menubar.js +2 -0
- package/dist/mixins/form-associated.d.ts +20 -0
- package/dist/mixins/form-associated.d.ts.map +1 -0
- package/dist/navigation-menu/flint-navigation-menu-content.d.ts +53 -0
- package/dist/navigation-menu/flint-navigation-menu-content.d.ts.map +1 -0
- package/dist/navigation-menu/flint-navigation-menu-content.js +147 -0
- package/dist/navigation-menu/flint-navigation-menu-item.d.ts +47 -0
- package/dist/navigation-menu/flint-navigation-menu-item.d.ts.map +1 -0
- package/dist/navigation-menu/flint-navigation-menu-item.js +109 -0
- package/dist/navigation-menu/flint-navigation-menu-link.d.ts +50 -0
- package/dist/navigation-menu/flint-navigation-menu-link.d.ts.map +1 -0
- package/dist/navigation-menu/flint-navigation-menu-link.js +109 -0
- package/dist/navigation-menu/flint-navigation-menu-list.d.ts +35 -0
- package/dist/navigation-menu/flint-navigation-menu-list.d.ts.map +1 -0
- package/dist/navigation-menu/flint-navigation-menu-list.js +52 -0
- package/dist/navigation-menu/flint-navigation-menu-trigger.d.ts +52 -0
- package/dist/navigation-menu/flint-navigation-menu-trigger.d.ts.map +1 -0
- package/dist/navigation-menu/flint-navigation-menu-trigger.js +190 -0
- package/dist/navigation-menu/flint-navigation-menu.d.ts +42 -0
- package/dist/navigation-menu/flint-navigation-menu.d.ts.map +1 -0
- package/dist/navigation-menu/flint-navigation-menu.js +69 -0
- package/dist/pagination/flint-pagination.d.ts +63 -0
- package/dist/pagination/flint-pagination.d.ts.map +1 -0
- package/dist/pagination/flint-pagination.js +2 -0
- package/dist/paper/flint-paper.d.ts +34 -0
- package/dist/paper/flint-paper.d.ts.map +1 -0
- package/dist/paper/flint-paper.js +2 -0
- package/dist/progress/flint-circular-progress.d.ts +28 -0
- package/dist/progress/flint-circular-progress.d.ts.map +1 -0
- package/dist/progress/flint-circular-progress.js +2 -0
- package/dist/progress/flint-linear-progress.d.ts +26 -0
- package/dist/progress/flint-linear-progress.d.ts.map +1 -0
- package/dist/progress/flint-linear-progress.js +2 -0
- package/dist/radio/flint-radio.d.ts +76 -0
- package/dist/radio/flint-radio.d.ts.map +1 -0
- package/dist/radio/flint-radio.js +2 -0
- package/dist/rating/flint-rating.d.ts +49 -0
- package/dist/rating/flint-rating.d.ts.map +1 -0
- package/dist/rating/flint-rating.js +2 -0
- package/dist/relative-time/flint-relative-time.d.ts +50 -0
- package/dist/relative-time/flint-relative-time.d.ts.map +1 -0
- package/dist/relative-time/flint-relative-time.js +2 -0
- package/dist/resizable/flint-resizable.d.ts +124 -0
- package/dist/resizable/flint-resizable.d.ts.map +1 -0
- package/dist/resizable/flint-resizable.js +346 -0
- package/dist/scroll-area/flint-scroll-area.d.ts +126 -0
- package/dist/scroll-area/flint-scroll-area.d.ts.map +1 -0
- package/dist/scroll-area/flint-scroll-area.js +2 -0
- package/dist/select/flint-select.d.ts +71 -0
- package/dist/select/flint-select.d.ts.map +1 -0
- package/dist/select/flint-select.js +2 -0
- package/dist/skeleton/flint-skeleton.d.ts +47 -0
- package/dist/skeleton/flint-skeleton.d.ts.map +1 -0
- package/dist/skeleton/flint-skeleton.js +2 -0
- package/dist/slider/flint-slider.d.ts +48 -0
- package/dist/slider/flint-slider.d.ts.map +1 -0
- package/dist/slider/flint-slider.js +2 -0
- package/dist/snackbar/flint-snackbar.d.ts +67 -0
- package/dist/snackbar/flint-snackbar.d.ts.map +1 -0
- package/dist/snackbar/flint-snackbar.js +2 -0
- package/dist/sonner/flint-sonner.d.ts +152 -0
- package/dist/sonner/flint-sonner.d.ts.map +1 -0
- package/dist/sonner/flint-sonner.js +2 -0
- package/dist/speed-dial/flint-speed-dial.d.ts +101 -0
- package/dist/speed-dial/flint-speed-dial.d.ts.map +1 -0
- package/dist/speed-dial/flint-speed-dial.js +2 -0
- package/dist/split-panel/flint-split-panel.d.ts +101 -0
- package/dist/split-panel/flint-split-panel.d.ts.map +1 -0
- package/dist/split-panel/flint-split-panel.js +278 -0
- package/dist/stack/flint-stack.d.ts +38 -0
- package/dist/stack/flint-stack.d.ts.map +1 -0
- package/dist/stack/flint-stack.js +2 -0
- package/dist/stepper/flint-stepper.d.ts +122 -0
- package/dist/stepper/flint-stepper.d.ts.map +1 -0
- package/dist/stepper/flint-stepper.js +2 -0
- package/dist/switch/flint-switch.d.ts +44 -0
- package/dist/switch/flint-switch.d.ts.map +1 -0
- package/dist/switch/flint-switch.js +2 -0
- package/dist/table/flint-table-pagination.d.ts +42 -0
- package/dist/table/flint-table-pagination.d.ts.map +1 -0
- package/dist/table/flint-table-pagination.js +2 -0
- package/dist/table/flint-table-sort-label.d.ts +16 -0
- package/dist/table/flint-table-sort-label.d.ts.map +1 -0
- package/dist/table/flint-table-sort-label.js +2 -0
- package/dist/table/flint-table.d.ts +89 -0
- package/dist/table/flint-table.d.ts.map +1 -0
- package/dist/table/flint-table.js +2 -0
- package/dist/tabs/flint-tabs.d.ts +136 -0
- package/dist/tabs/flint-tabs.d.ts.map +1 -0
- package/dist/tabs/flint-tabs.js +2 -0
- package/dist/text-field/flint-text-field.d.ts +40 -0
- package/dist/text-field/flint-text-field.d.ts.map +1 -0
- package/dist/text-field/flint-text-field.js +2 -0
- package/dist/textarea/flint-textarea.d.ts +68 -0
- package/dist/textarea/flint-textarea.d.ts.map +1 -0
- package/dist/textarea/flint-textarea.js +2 -0
- package/dist/time-picker/flint-time-picker.d.ts +230 -0
- package/dist/time-picker/flint-time-picker.d.ts.map +1 -0
- package/dist/time-picker/flint-time-picker.js +2 -0
- package/dist/toggle/flint-toggle.d.ts +43 -0
- package/dist/toggle/flint-toggle.d.ts.map +1 -0
- package/dist/toggle/flint-toggle.js +2 -0
- package/dist/tooltip/flint-tooltip.d.ts +41 -0
- package/dist/tooltip/flint-tooltip.d.ts.map +1 -0
- package/dist/tooltip/flint-tooltip.js +2 -0
- package/dist/transfer-list/flint-transfer-list.d.ts +48 -0
- package/dist/transfer-list/flint-transfer-list.d.ts.map +1 -0
- package/dist/transfer-list/flint-transfer-list.js +2 -0
- package/dist/tree-view/flint-rich-tree-view.d.ts +213 -0
- package/dist/tree-view/flint-rich-tree-view.d.ts.map +1 -0
- package/dist/tree-view/flint-rich-tree-view.js +2 -0
- package/dist/tree-view/flint-simple-tree-view.d.ts +112 -0
- package/dist/tree-view/flint-simple-tree-view.d.ts.map +1 -0
- package/dist/tree-view/flint-simple-tree-view.js +2 -0
- package/dist/tree-view/flint-tree-item.d.ts +67 -0
- package/dist/tree-view/flint-tree-item.d.ts.map +1 -0
- package/dist/tree-view/flint-tree-item.js +2 -0
- package/dist/typography/flint-typography.d.ts +37 -0
- package/dist/typography/flint-typography.d.ts.map +1 -0
- package/dist/typography/flint-typography.js +2 -0
- package/dist/visually-hidden/flint-visually-hidden.d.ts +52 -0
- package/dist/visually-hidden/flint-visually-hidden.d.ts.map +1 -0
- package/dist/visually-hidden/flint-visually-hidden.js +2 -0
- package/package.json +470 -0
- package/src/theme-dark.css +261 -0
- package/src/theme.css +651 -0
|
@@ -0,0 +1,817 @@
|
|
|
1
|
+
import { t as e } from "./decorate-DPS9PT8d.js";
|
|
2
|
+
import { LitElement as t, css as n, html as r, nothing as i, svg as a, unsafeCSS as o } from "lit";
|
|
3
|
+
import { customElement as s, property as c, state as l } from "lit/decorators.js";
|
|
4
|
+
import { classMap as u } from "lit/directives/class-map.js";
|
|
5
|
+
import { repeat as d } from "lit/directives/repeat.js";
|
|
6
|
+
//#region src/time-picker/flint-time-field.css?inline
|
|
7
|
+
var f = ":host{font-family:var(--flint-font-family);display:inline-block}.label{color:var(--flint-text-color-muted);margin-bottom:5px;font-size:.75rem;font-weight:500;display:block}.label.focused{color:var(--flint-primary-color)}:host([error]) .label{color:var(--flint-error-color)}.container{background:var(--flint-input-bg);border:1.5px solid var(--flint-border-color);border-radius:var(--flint-border-radius-md);height:var(--flint-time-field-height,44px);min-width:var(--flint-time-field-min-width,160px);cursor:text;box-sizing:border-box;align-items:center;gap:4px;padding:0 10px;transition:border-color .15s,box-shadow .15s;display:inline-flex}.container.focused{border-color:var(--flint-primary-color);box-shadow:0 0 0 3px var(--flint-primary-focus-ring)}:host([error]) .container{border-color:var(--flint-error-color)}:host([disabled]) .container{background:var(--flint-input-disabled-bg);border-color:var(--flint-border-color);cursor:not-allowed}.segments{outline:none;flex:1;align-items:center;gap:1px;min-height:100%;display:flex}.seg{font-variant-numeric:tabular-nums;color:var(--flint-text-color);cursor:text;-webkit-user-select:none;user-select:none;border-radius:3px;justify-content:center;align-items:center;min-width:2ch;padding:2px 4px;font-size:.9375rem;line-height:1;transition:background .1s;display:inline-flex}.seg.active{background:var(--flint-primary-color);color:var(--flint-text-color-on-primary)}.seg.placeholder{color:var(--flint-text-color-muted)}.seg.meridiem{min-width:3ch}.sep{color:var(--flint-text-color-muted);pointer-events:none;font-size:.9375rem}.icon-btn{cursor:pointer;width:24px;height:24px;color:var(--flint-text-color-muted);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:auto;font-size:.875rem;transition:background .12s;display:flex}.icon-btn:hover{background:var(--flint-hover-color)}.helper{color:var(--flint-text-color-muted);margin-top:5px;font-size:.75rem;display:block}:host([error]) .helper{color:var(--flint-error-color)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}", p = ":host{font-family:var(--flint-font-family);display:block}.clock{max-height:var(--flint-digital-clock-height,300px);scrollbar-width:thin;padding:4px 0;overflow-y:auto}.item{color:var(--flint-text-color);cursor:pointer;box-sizing:border-box;font-variant-numeric:tabular-nums;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;width:100%;padding:10px 16px;font-family:inherit;font-size:.9375rem;transition:background .1s;display:flex}.item:hover{background:var(--flint-hover-color)}.item.selected{background:var(--flint-primary-color);color:var(--flint-text-color-on-primary);border-radius:6px;font-weight:600}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}", m = ":host{font-family:var(--flint-font-family);display:inline-block}.msdc{border-radius:var(--flint-border-radius-xl);gap:0;display:flex;overflow:hidden}.col{width:72px;max-height:var(--flint-msdc-height,240px);scrollbar-width:none;background:var(--flint-surface-1);flex-direction:column;display:flex;position:relative;overflow-y:auto}.col::-webkit-scrollbar{display:none}.col+.col{border-left:1px solid var(--flint-border-color)}.col-header{background:var(--flint-surface-1);text-transform:uppercase;letter-spacing:.06em;color:var(--flint-text-color-muted);text-align:center;border-bottom:1px solid var(--flint-border-color);z-index:1;padding:6px 0 4px;font-size:.65rem;font-weight:700;position:sticky;top:0}.item{font-variant-numeric:tabular-nums;color:var(--flint-text-color);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:100%;padding:8px 4px;font-family:inherit;font-size:.9375rem;line-height:1;transition:background .1s;display:flex}.item:hover{background:var(--flint-hover-color)}.item.sel{background:var(--flint-primary-color);color:var(--flint-text-color-on-primary);border-radius:6px;font-weight:700}.col-spacer{min-height:80px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}", h = ":host{-webkit-user-select:none;user-select:none;display:inline-block}.clock-wrap{flex-direction:column;align-items:center;gap:12px;display:flex}.clock-header{font-size:2rem;font-weight:700;font-family:var(--flint-font-family);color:var(--flint-text-color,#111827);gap:4px;display:flex}.clock-seg{cursor:pointer;border-radius:8px;padding:4px 10px;transition:background .12s,color .12s}.clock-seg.active{background:var(--flint-primary-color,#2563eb);color:var(--flint-text-color-on-primary,#fff);border-radius:8px}.clock-seg:hover:not(.active){background:var(--flint-hover-color,#0000000f)}.clock-sep{color:var(--flint-text-color-muted,#4b5563)}.clock-mer{color:var(--flint-text-color-muted,#4b5563);align-self:flex-end;margin-bottom:6px;font-size:1rem;font-weight:600}svg{touch-action:none;cursor:pointer;outline:none}svg.dragging{cursor:grabbing}svg:focus-visible{outline:2px solid var(--flint-primary-color,#2563eb);outline-offset:4px;border-radius:50%}.face{fill:var(--flint-time-clock-face-bg,var(--flint-surface-variant,#f1f5f9))}.face-inner{fill:var(--flint-time-clock-inner-bg,#0000000a);stroke:var(--flint-time-clock-inner-border,var(--flint-border-color,#e5e7eb));stroke-width:1px}.hand{stroke:var(--flint-time-clock-hand-color,var(--flint-primary-color,#2563eb));stroke-width:2px;stroke-linecap:round}.hand-center,.hand-tip{fill:var(--flint-time-clock-hand-color,var(--flint-primary-color,#2563eb))}.num{font-size:var(--flint-time-clock-num-size,14px);font-weight:500;font-family:var(--flint-font-family,system-ui, sans-serif);fill:var(--flint-text-color,#111827);text-anchor:middle;pointer-events:none}.num.inner-label{font-size:var(--flint-time-clock-inner-num-size,12px);fill:var(--flint-text-color-muted,#4b5563)}.num.selected{fill:var(--flint-text-color-on-primary,#fff);font-weight:700}.num-bg{fill:#0000;cursor:pointer}.num-bg.selected{fill:var(--flint-primary-color,#2563eb)}.am-pm{border-radius:var(--flint-time-clock-ampm-radius,20px);border:1.5px solid var(--flint-border-color,#e5e7eb);display:inline-flex;overflow:hidden}.am-pm-btn{cursor:pointer;color:var(--flint-text-color,#111827);background:0 0;border:none;padding:5px 18px;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .12s;position:relative}.am-pm-btn:first-child{border-right:1.5px solid var(--flint-border-color,#e5e7eb)}.am-pm-btn.sel{background:var(--flint-primary-color,#2563eb);color:var(--flint-text-color-on-primary,#fff);border-color:var(--flint-primary-color,#2563eb)}.am-pm-btn:hover:not(.sel){background:var(--flint-hover-color,#0000000f)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}", g = ":host{font-family:var(--flint-font-family);display:inline-block}.surface{border-radius:var(--flint-border-radius-xl);box-shadow:0 1px 4px #00000014,0 0 0 1px var(--flint-border-color);display:inline-block;overflow:hidden}", _ = ":host{display:inline-block}";
|
|
8
|
+
//#endregion
|
|
9
|
+
//#region src/time-picker/flint-time-picker.ts
|
|
10
|
+
function v(e) {
|
|
11
|
+
return String(e).padStart(2, "0");
|
|
12
|
+
}
|
|
13
|
+
function y(e) {
|
|
14
|
+
if (!e) return null;
|
|
15
|
+
let t = e.split(":").map(Number);
|
|
16
|
+
return t.length < 2 || t.some(isNaN) ? null : {
|
|
17
|
+
h: t[0],
|
|
18
|
+
m: t[1],
|
|
19
|
+
s: t[2] ?? 0
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
function b(e, t, n = 0) {
|
|
23
|
+
return `${v(e)}:${v(t)}:${v(n)}`;
|
|
24
|
+
}
|
|
25
|
+
function x(e) {
|
|
26
|
+
return {
|
|
27
|
+
hour: e % 12 || 12,
|
|
28
|
+
ampm: e < 12 ? "AM" : "PM"
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
function S(e, t) {
|
|
32
|
+
return t === "AM" ? e === 12 ? 0 : e : e === 12 ? 12 : e + 12;
|
|
33
|
+
}
|
|
34
|
+
function C(e, t, n = !1) {
|
|
35
|
+
let r = y(e);
|
|
36
|
+
if (!r) return "";
|
|
37
|
+
let i = t ? x(r.h).hour : r.h, a = t ? ` ${x(r.h).ampm}` : "";
|
|
38
|
+
return `${v(i)}:${v(r.m)}${n ? ":" + v(r.s) : ""}${a}`;
|
|
39
|
+
}
|
|
40
|
+
function w(e, t, n, r = 140, i = 140) {
|
|
41
|
+
let a = (e / t - .25) * Math.PI * 2;
|
|
42
|
+
return {
|
|
43
|
+
x: r + n * Math.cos(a),
|
|
44
|
+
y: i + n * Math.sin(a)
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
function T(e, t, n = 140, r = 140) {
|
|
48
|
+
let i = Math.atan2(t - r, e - n) * 180 / Math.PI + 90;
|
|
49
|
+
return i < 0 && (i += 360), i;
|
|
50
|
+
}
|
|
51
|
+
var E = class extends t {
|
|
52
|
+
constructor(...e) {
|
|
53
|
+
super(...e), this.value = "", this.label = "", this.ampm = !0, this.seconds = !1, this.disabled = !1, this.readonly = !1, this.error = !1, this.helperText = "", this._h = null, this._m = null, this._s = null, this._mer = "AM", this._active = null, this._focused = !1, this._buf = "";
|
|
54
|
+
}
|
|
55
|
+
static {
|
|
56
|
+
this.styles = o(f);
|
|
57
|
+
}
|
|
58
|
+
get _segs() {
|
|
59
|
+
let e = ["hour", "minute"];
|
|
60
|
+
return this.seconds && e.push("second"), this.ampm && e.push("meridiem"), e;
|
|
61
|
+
}
|
|
62
|
+
willUpdate(e) {
|
|
63
|
+
if (e.has("value") && this.value) {
|
|
64
|
+
let e = y(this.value);
|
|
65
|
+
if (e) {
|
|
66
|
+
let { hour: t, ampm: n } = x(e.h);
|
|
67
|
+
this._h = this.ampm ? t : e.h, this._m = e.m, this._s = e.s, this._mer = n;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
clear() {
|
|
72
|
+
this._h = null, this._m = null, this._s = null, this._buf = "", this.dispatchEvent(new CustomEvent("flint-time-picker-clear", {
|
|
73
|
+
bubbles: !0,
|
|
74
|
+
composed: !0
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
77
|
+
_emit() {
|
|
78
|
+
if (this._h === null || this._m === null) return;
|
|
79
|
+
let e = b(this.ampm ? S(this._h, this._mer) : this._h, this._m, this._s ?? 0);
|
|
80
|
+
e !== this.value && (this.value = e, this.dispatchEvent(new CustomEvent("change", {
|
|
81
|
+
detail: { value: e },
|
|
82
|
+
bubbles: !0,
|
|
83
|
+
composed: !0
|
|
84
|
+
})));
|
|
85
|
+
}
|
|
86
|
+
_commitBuf() {
|
|
87
|
+
if (!this._buf || !this._active) return;
|
|
88
|
+
let e = parseInt(this._buf);
|
|
89
|
+
if (isNaN(e)) return;
|
|
90
|
+
let t = this.ampm ? 12 : 23;
|
|
91
|
+
this._active === "hour" && e >= (this.ampm ? 1 : 0) && e <= t ? this._h = e : this._active === "minute" && e >= 0 && e <= 59 ? this._m = e : this._active === "second" && e >= 0 && e <= 59 && (this._s = e), this._emit();
|
|
92
|
+
}
|
|
93
|
+
_setActive(e) {
|
|
94
|
+
this._commitBuf(), this._active = e, this._buf = "";
|
|
95
|
+
}
|
|
96
|
+
_next() {
|
|
97
|
+
let e = this._segs, t = e.indexOf(this._active);
|
|
98
|
+
t < e.length - 1 && this._setActive(e[t + 1]);
|
|
99
|
+
}
|
|
100
|
+
_prev() {
|
|
101
|
+
let e = this._segs, t = e.indexOf(this._active);
|
|
102
|
+
t > 0 && this._setActive(e[t - 1]);
|
|
103
|
+
}
|
|
104
|
+
_canNext() {
|
|
105
|
+
let e = this._segs;
|
|
106
|
+
return e.indexOf(this._active) < e.length - 1;
|
|
107
|
+
}
|
|
108
|
+
_canPrev() {
|
|
109
|
+
return this._segs.indexOf(this._active) > 0;
|
|
110
|
+
}
|
|
111
|
+
_digit(e) {
|
|
112
|
+
if (this._active || this._setActive("hour"), this._active === "meridiem") return;
|
|
113
|
+
let t = this._buf + e, n = this.ampm ? 12 : 23;
|
|
114
|
+
if (this._active === "hour") if (t.length === 1) e >= (this.ampm ? 2 : 3) ? (this._h = e, this._buf = "", this._next()) : this._buf = t;
|
|
115
|
+
else {
|
|
116
|
+
let r = parseInt(t);
|
|
117
|
+
r >= (this.ampm ? 1 : 0) && r <= n ? (this._h = r, this._buf = "", this._next()) : (this._buf = String(e), e >= (this.ampm ? 2 : 3) && (this._h = e, this._buf = "", this._next()));
|
|
118
|
+
}
|
|
119
|
+
else if (this._active === "minute" || this._active === "second") if (t.length === 1) e >= 6 ? (this[this._active === "minute" ? "_m" : "_s"] = e, this._buf = "", this._next()) : this._buf = t;
|
|
120
|
+
else {
|
|
121
|
+
let n = parseInt(t);
|
|
122
|
+
n >= 0 && n <= 59 ? (this[this._active === "minute" ? "_m" : "_s"] = n, this._buf = "", this._next()) : (this._buf = String(e), e >= 6 && (this[this._active === "minute" ? "_m" : "_s"] = e, this._buf = "", this._next()));
|
|
123
|
+
}
|
|
124
|
+
this._emit();
|
|
125
|
+
}
|
|
126
|
+
_adjust(e) {
|
|
127
|
+
this._buf = "";
|
|
128
|
+
let t = this.ampm ? 12 : 23, n = this.ampm ? 1 : 0;
|
|
129
|
+
this._active === "hour" ? this._h = Math.min(t, Math.max(n, (this._h ?? (e > 0 ? n - 1 : t + 1)) + e)) : this._active === "minute" ? this._m = ((this._m ?? (e > 0 ? -1 : 60)) + e + 60) % 60 : this._active === "second" ? this._s = ((this._s ?? (e > 0 ? -1 : 60)) + e + 60) % 60 : this._active === "meridiem" && (this._mer = this._mer === "AM" ? "PM" : "AM"), this._emit();
|
|
130
|
+
}
|
|
131
|
+
_onKey(e) {
|
|
132
|
+
if (!(this.disabled || this.readonly)) {
|
|
133
|
+
if (e.key >= "0" && e.key <= "9") {
|
|
134
|
+
e.preventDefault(), e.stopPropagation(), this._active || this._setActive("hour"), this._digit(+e.key);
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
if ((e.key === "a" || e.key === "A") && this.ampm && !e.metaKey) {
|
|
138
|
+
e.preventDefault(), e.stopPropagation(), this._mer = "AM", this._emit();
|
|
139
|
+
return;
|
|
140
|
+
}
|
|
141
|
+
if ((e.key === "p" || e.key === "P") && this.ampm && !e.metaKey) {
|
|
142
|
+
e.preventDefault(), e.stopPropagation(), this._mer = "PM", this._emit();
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
switch (e.key) {
|
|
146
|
+
case "ArrowLeft":
|
|
147
|
+
e.preventDefault(), e.stopPropagation(), this._prev();
|
|
148
|
+
break;
|
|
149
|
+
case "ArrowRight":
|
|
150
|
+
case ":":
|
|
151
|
+
e.preventDefault(), e.stopPropagation(), this._next();
|
|
152
|
+
break;
|
|
153
|
+
case "ArrowUp":
|
|
154
|
+
e.preventDefault(), e.stopPropagation(), this._active || this._setActive("hour"), this._adjust(1);
|
|
155
|
+
break;
|
|
156
|
+
case "ArrowDown":
|
|
157
|
+
e.preventDefault(), e.stopPropagation(), this._active || this._setActive("hour"), this._adjust(-1);
|
|
158
|
+
break;
|
|
159
|
+
case "Tab":
|
|
160
|
+
!e.shiftKey && this._canNext() ? (e.preventDefault(), e.stopPropagation(), this._next()) : e.shiftKey && this._canPrev() && (e.preventDefault(), e.stopPropagation(), this._prev());
|
|
161
|
+
break;
|
|
162
|
+
case "Backspace":
|
|
163
|
+
case "Delete":
|
|
164
|
+
e.preventDefault(), e.stopPropagation(), this._buf = "", this._active === "hour" ? this._h = null : this._active === "minute" ? this._m = null : this._active === "second" && (this._s = null);
|
|
165
|
+
break;
|
|
166
|
+
case "Escape":
|
|
167
|
+
e.preventDefault(), e.stopPropagation(), this.clear();
|
|
168
|
+
break;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
_segText(e) {
|
|
173
|
+
let t = this._active === e;
|
|
174
|
+
return e === "meridiem" ? {
|
|
175
|
+
text: this._mer,
|
|
176
|
+
ph: !1
|
|
177
|
+
} : t && this._buf ? (e === "hour" && this.ampm, {
|
|
178
|
+
text: this._buf.padEnd(2, "_"),
|
|
179
|
+
ph: !1
|
|
180
|
+
}) : e === "hour" ? this._h === null ? {
|
|
181
|
+
text: "HH",
|
|
182
|
+
ph: !0
|
|
183
|
+
} : {
|
|
184
|
+
text: v(this._h),
|
|
185
|
+
ph: !1
|
|
186
|
+
} : e === "minute" ? this._m === null ? {
|
|
187
|
+
text: "MM",
|
|
188
|
+
ph: !0
|
|
189
|
+
} : {
|
|
190
|
+
text: v(this._m),
|
|
191
|
+
ph: !1
|
|
192
|
+
} : this._s === null ? {
|
|
193
|
+
text: "SS",
|
|
194
|
+
ph: !0
|
|
195
|
+
} : {
|
|
196
|
+
text: v(this._s),
|
|
197
|
+
ph: !1
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
render() {
|
|
201
|
+
let e = this._h !== null || this._m !== null;
|
|
202
|
+
return r`
|
|
203
|
+
${this.label ? r`<label class="label ${this._focused ? "focused" : ""}">${this.label}</label>` : i}
|
|
204
|
+
<div class="container ${this._focused ? "focused" : ""}">
|
|
205
|
+
<div class="segments" tabindex=${this.disabled ? -1 : 0} role="group" aria-label=${this.label || "Time"}
|
|
206
|
+
@keydown=${this._onKey}
|
|
207
|
+
@focus=${() => {
|
|
208
|
+
this._focused = !0, this._active || this._setActive("hour");
|
|
209
|
+
}}
|
|
210
|
+
@blur=${(e) => {
|
|
211
|
+
this.shadowRoot?.contains(e.relatedTarget) || (this._focused = !1, this._active = null, this._buf = "");
|
|
212
|
+
}}
|
|
213
|
+
>
|
|
214
|
+
${this._segs.map((e, t) => {
|
|
215
|
+
let { text: n, ph: a } = this._segText(e);
|
|
216
|
+
return r`${t > 0 && e !== "meridiem" ? r`<span class="sep">:</span>` : e === "meridiem" ? r`<span class="sep"> </span>` : i}<span
|
|
217
|
+
class=${u({
|
|
218
|
+
seg: !0,
|
|
219
|
+
active: this._active === e,
|
|
220
|
+
placeholder: a,
|
|
221
|
+
meridiem: e === "meridiem"
|
|
222
|
+
})}
|
|
223
|
+
@click=${(t) => {
|
|
224
|
+
t.stopPropagation(), this._setActive(e), (this.shadowRoot?.querySelector(".segments"))?.focus();
|
|
225
|
+
}}
|
|
226
|
+
>${n}</span>`;
|
|
227
|
+
})}
|
|
228
|
+
</div>
|
|
229
|
+
${e && !this.disabled ? r`<button class="icon-btn" tabindex="-1" aria-label="Clear" @click=${(e) => {
|
|
230
|
+
e.stopPropagation(), this.clear();
|
|
231
|
+
}}>✕</button>` : i}
|
|
232
|
+
</div>
|
|
233
|
+
${this.helperText ? r`<small class="helper">${this.helperText}</small>` : i}
|
|
234
|
+
`;
|
|
235
|
+
}
|
|
236
|
+
};
|
|
237
|
+
e([c({ type: String })], E.prototype, "value", void 0), e([c({ type: String })], E.prototype, "label", void 0), e([c({ type: Boolean })], E.prototype, "ampm", void 0), e([c({ type: Boolean })], E.prototype, "seconds", void 0), e([c({
|
|
238
|
+
type: Boolean,
|
|
239
|
+
reflect: !0
|
|
240
|
+
})], E.prototype, "disabled", void 0), e([c({
|
|
241
|
+
type: Boolean,
|
|
242
|
+
reflect: !0
|
|
243
|
+
})], E.prototype, "readonly", void 0), e([c({
|
|
244
|
+
type: Boolean,
|
|
245
|
+
reflect: !0
|
|
246
|
+
})], E.prototype, "error", void 0), e([c({
|
|
247
|
+
type: String,
|
|
248
|
+
attribute: "helper-text"
|
|
249
|
+
})], E.prototype, "helperText", void 0), e([l()], E.prototype, "_h", void 0), e([l()], E.prototype, "_m", void 0), e([l()], E.prototype, "_s", void 0), e([l()], E.prototype, "_mer", void 0), e([l()], E.prototype, "_active", void 0), e([l()], E.prototype, "_focused", void 0), e([l()], E.prototype, "_buf", void 0), E = e([s("flint-time-field")], E);
|
|
250
|
+
var D = class extends t {
|
|
251
|
+
constructor(...e) {
|
|
252
|
+
super(...e), this.value = "", this.step = 30, this.ampm = !0;
|
|
253
|
+
}
|
|
254
|
+
static {
|
|
255
|
+
this.styles = o(p);
|
|
256
|
+
}
|
|
257
|
+
_items() {
|
|
258
|
+
let e = [];
|
|
259
|
+
for (let t = 0; t < 1440; t += this.step) {
|
|
260
|
+
let n = Math.floor(t / 60), r = t % 60;
|
|
261
|
+
e.push(b(n, r));
|
|
262
|
+
}
|
|
263
|
+
return e;
|
|
264
|
+
}
|
|
265
|
+
_label(e) {
|
|
266
|
+
return C(e, this.ampm);
|
|
267
|
+
}
|
|
268
|
+
_select(e) {
|
|
269
|
+
this.dispatchEvent(new CustomEvent("change", {
|
|
270
|
+
detail: { value: e },
|
|
271
|
+
bubbles: !0,
|
|
272
|
+
composed: !0
|
|
273
|
+
}));
|
|
274
|
+
}
|
|
275
|
+
_onItemKeyDown(e, t) {
|
|
276
|
+
let n = this._items(), r = n.indexOf(t), i = -1;
|
|
277
|
+
if (e.key === "ArrowDown") e.preventDefault(), i = Math.min(r + 1, n.length - 1);
|
|
278
|
+
else if (e.key === "ArrowUp") e.preventDefault(), i = Math.max(r - 1, 0);
|
|
279
|
+
else if (e.key === "Home") e.preventDefault(), i = 0;
|
|
280
|
+
else if (e.key === "End") e.preventDefault(), i = n.length - 1;
|
|
281
|
+
else return;
|
|
282
|
+
i >= 0 && i !== r && (this._select(n[i]), this.updateComplete.then(() => {
|
|
283
|
+
let e = this.shadowRoot?.querySelectorAll(".item")[i];
|
|
284
|
+
e?.focus(), e && typeof e.scrollIntoView == "function" && e.scrollIntoView({ block: "nearest" });
|
|
285
|
+
}));
|
|
286
|
+
}
|
|
287
|
+
updated() {
|
|
288
|
+
let e = this.shadowRoot?.querySelector(".selected");
|
|
289
|
+
e && typeof e.scrollIntoView == "function" && e.scrollIntoView({ block: "center" });
|
|
290
|
+
}
|
|
291
|
+
render() {
|
|
292
|
+
return r`
|
|
293
|
+
<div class="clock" role="listbox" aria-label="Select time">
|
|
294
|
+
${d(this._items(), (e) => e, (e) => r`
|
|
295
|
+
<button class=${u({
|
|
296
|
+
item: !0,
|
|
297
|
+
selected: e === this.value
|
|
298
|
+
})}
|
|
299
|
+
role="option" aria-selected=${e === this.value ? "true" : i}
|
|
300
|
+
@click=${() => this._select(e)}
|
|
301
|
+
@keydown=${(t) => this._onItemKeyDown(t, e)}
|
|
302
|
+
>${this._label(e)}</button>
|
|
303
|
+
`)}
|
|
304
|
+
</div>
|
|
305
|
+
`;
|
|
306
|
+
}
|
|
307
|
+
};
|
|
308
|
+
e([c({ type: String })], D.prototype, "value", void 0), e([c({ type: Number })], D.prototype, "step", void 0), e([c({ type: Boolean })], D.prototype, "ampm", void 0), D = e([s("flint-digital-clock")], D);
|
|
309
|
+
var O = class extends t {
|
|
310
|
+
constructor(...e) {
|
|
311
|
+
super(...e), this.value = "", this.ampm = !0, this.seconds = !1;
|
|
312
|
+
}
|
|
313
|
+
static {
|
|
314
|
+
this.styles = o(m);
|
|
315
|
+
}
|
|
316
|
+
_t() {
|
|
317
|
+
return y(this.value) ?? {
|
|
318
|
+
h: 0,
|
|
319
|
+
m: 0,
|
|
320
|
+
s: 0
|
|
321
|
+
};
|
|
322
|
+
}
|
|
323
|
+
_set(e, t, n) {
|
|
324
|
+
let r = b(e, t, n);
|
|
325
|
+
this.dispatchEvent(new CustomEvent("change", {
|
|
326
|
+
detail: { value: r },
|
|
327
|
+
bubbles: !0,
|
|
328
|
+
composed: !0
|
|
329
|
+
}));
|
|
330
|
+
}
|
|
331
|
+
_colKeyDown(e, t) {
|
|
332
|
+
if (e.key !== "ArrowUp" && e.key !== "ArrowDown") return;
|
|
333
|
+
e.preventDefault();
|
|
334
|
+
let n = this._t(), r = e.key === "ArrowDown" ? 1 : -1;
|
|
335
|
+
if (t === "h") if (this.ampm) {
|
|
336
|
+
let { hour: e, ampm: t } = x(n.h), i = (e - 1 + r + 12) % 12 + 1;
|
|
337
|
+
this._set(S(i, t), n.m, n.s);
|
|
338
|
+
} else this._set((n.h + r + 24) % 24, n.m, n.s);
|
|
339
|
+
else if (t === "m") this._set(n.h, (n.m + r + 60) % 60, n.s);
|
|
340
|
+
else if (t === "s") this._set(n.h, n.m, (n.s + r + 60) % 60);
|
|
341
|
+
else if (t === "mer") {
|
|
342
|
+
let { hour: e, ampm: t } = x(n.h);
|
|
343
|
+
this._set(S(e, t === "AM" ? "PM" : "AM"), n.m, n.s);
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
_col(e) {
|
|
347
|
+
let t = this._t(), n = x(t.h);
|
|
348
|
+
if (e === "mer") return r`
|
|
349
|
+
<div class="col" @keydown=${(e) => this._colKeyDown(e, "mer")}>
|
|
350
|
+
<div class="col-header">AM/PM</div>
|
|
351
|
+
${["AM", "PM"].map((e) => r`
|
|
352
|
+
<button class=${u({
|
|
353
|
+
item: !0,
|
|
354
|
+
sel: n.ampm === e
|
|
355
|
+
})}
|
|
356
|
+
@click=${() => this._set(S(n.hour, e), t.m, t.s)}>${e}</button>
|
|
357
|
+
`)}
|
|
358
|
+
<div class="col-spacer"></div>
|
|
359
|
+
</div>
|
|
360
|
+
`;
|
|
361
|
+
let i = Array.from({ length: 12 }, (e, t) => t + 1), a = Array.from({ length: 24 }, (e, t) => t), o = Array.from({ length: 60 }, (e, t) => t);
|
|
362
|
+
if (e === "h") {
|
|
363
|
+
let e = this.ampm ? i : a, o = this.ampm ? n.hour : t.h;
|
|
364
|
+
return r`
|
|
365
|
+
<div class="col" @keydown=${(e) => this._colKeyDown(e, "h")}>
|
|
366
|
+
<div class="col-header">Hr</div>
|
|
367
|
+
${e.map((e) => r`
|
|
368
|
+
<button class=${u({
|
|
369
|
+
item: !0,
|
|
370
|
+
sel: o === e
|
|
371
|
+
})}
|
|
372
|
+
@click=${() => {
|
|
373
|
+
let r = this.ampm ? S(e, n.ampm) : e;
|
|
374
|
+
this._set(r, t.m, t.s);
|
|
375
|
+
}}>${v(e)}</button>
|
|
376
|
+
`)}
|
|
377
|
+
<div class="col-spacer"></div>
|
|
378
|
+
</div>
|
|
379
|
+
`;
|
|
380
|
+
}
|
|
381
|
+
return e === "m" ? r`
|
|
382
|
+
<div class="col" @keydown=${(e) => this._colKeyDown(e, "m")}>
|
|
383
|
+
<div class="col-header">Min</div>
|
|
384
|
+
${o.map((e) => r`
|
|
385
|
+
<button class=${u({
|
|
386
|
+
item: !0,
|
|
387
|
+
sel: t.m === e
|
|
388
|
+
})}
|
|
389
|
+
@click=${() => this._set(t.h, e, t.s)}>${v(e)}</button>
|
|
390
|
+
`)}
|
|
391
|
+
<div class="col-spacer"></div>
|
|
392
|
+
</div>
|
|
393
|
+
` : r`
|
|
394
|
+
<div class="col" @keydown=${(e) => this._colKeyDown(e, "s")}>
|
|
395
|
+
<div class="col-header">Sec</div>
|
|
396
|
+
${o.map((e) => r`
|
|
397
|
+
<button class=${u({
|
|
398
|
+
item: !0,
|
|
399
|
+
sel: t.s === e
|
|
400
|
+
})}
|
|
401
|
+
@click=${() => this._set(t.h, t.m, e)}>${v(e)}</button>
|
|
402
|
+
`)}
|
|
403
|
+
<div class="col-spacer"></div>
|
|
404
|
+
</div>
|
|
405
|
+
`;
|
|
406
|
+
}
|
|
407
|
+
updated() {
|
|
408
|
+
this.shadowRoot?.querySelectorAll(".col").forEach((e) => {
|
|
409
|
+
let t = e.querySelector(".sel");
|
|
410
|
+
t && typeof t.scrollIntoView == "function" && t.scrollIntoView({ block: "center" });
|
|
411
|
+
});
|
|
412
|
+
}
|
|
413
|
+
render() {
|
|
414
|
+
return r`
|
|
415
|
+
<div class="msdc">
|
|
416
|
+
${this._col("h")}
|
|
417
|
+
${this._col("m")}
|
|
418
|
+
${this.seconds ? this._col("s") : i}
|
|
419
|
+
${this.ampm ? this._col("mer") : i}
|
|
420
|
+
</div>
|
|
421
|
+
`;
|
|
422
|
+
}
|
|
423
|
+
};
|
|
424
|
+
e([c({ type: String })], O.prototype, "value", void 0), e([c({ type: Boolean })], O.prototype, "ampm", void 0), e([c({ type: Boolean })], O.prototype, "seconds", void 0), O = e([s("flint-multi-section-digital-clock")], O);
|
|
425
|
+
var k = class extends t {
|
|
426
|
+
constructor(...e) {
|
|
427
|
+
super(...e), this.value = "", this.ampm = !0, this.seconds = !1, this.view = "hours", this._isDragging = !1, this._liveValue = "", this._onPointerDown = (e) => {
|
|
428
|
+
e.preventDefault(), e.currentTarget.setPointerCapture(e.pointerId), this._isDragging = !0;
|
|
429
|
+
let { mx: t, my: n } = this._getSvgCoords(e);
|
|
430
|
+
this._liveValue = this._calcValue(t, n);
|
|
431
|
+
let r = y(this._liveValue);
|
|
432
|
+
r && this._emit(r.h, r.m, r.s);
|
|
433
|
+
}, this._onPointerMove = (e) => {
|
|
434
|
+
if (!this._isDragging) return;
|
|
435
|
+
let { mx: t, my: n } = this._getSvgCoords(e);
|
|
436
|
+
this._liveValue = this._calcValue(t, n);
|
|
437
|
+
let r = y(this._liveValue);
|
|
438
|
+
r && this._emit(r.h, r.m, r.s);
|
|
439
|
+
}, this._onPointerUp = (e) => {
|
|
440
|
+
if (!this._isDragging) return;
|
|
441
|
+
this._isDragging = !1;
|
|
442
|
+
let { mx: t, my: n } = this._getSvgCoords(e), r = this._calcValue(t, n);
|
|
443
|
+
this._liveValue = "";
|
|
444
|
+
let i = y(r);
|
|
445
|
+
i && this._emit(i.h, i.m, i.s), this.view === "hours" ? this._switchView("minutes") : this.view === "minutes" && this.seconds && this._switchView("seconds");
|
|
446
|
+
};
|
|
447
|
+
}
|
|
448
|
+
static {
|
|
449
|
+
this.styles = o(h);
|
|
450
|
+
}
|
|
451
|
+
get _t() {
|
|
452
|
+
return y(this.value) ?? {
|
|
453
|
+
h: 0,
|
|
454
|
+
m: 0,
|
|
455
|
+
s: 0
|
|
456
|
+
};
|
|
457
|
+
}
|
|
458
|
+
get _renderT() {
|
|
459
|
+
return y(this._isDragging && this._liveValue ? this._liveValue : this.value) ?? {
|
|
460
|
+
h: 0,
|
|
461
|
+
m: 0,
|
|
462
|
+
s: 0
|
|
463
|
+
};
|
|
464
|
+
}
|
|
465
|
+
_emit(e, t, n) {
|
|
466
|
+
let r = b(e, t, n);
|
|
467
|
+
this.dispatchEvent(new CustomEvent("change", {
|
|
468
|
+
detail: { value: r },
|
|
469
|
+
bubbles: !0,
|
|
470
|
+
composed: !0
|
|
471
|
+
}));
|
|
472
|
+
}
|
|
473
|
+
_switchView(e) {
|
|
474
|
+
this.view = e, this.dispatchEvent(new CustomEvent("flint-time-clock-view-change", {
|
|
475
|
+
detail: { view: e },
|
|
476
|
+
bubbles: !0,
|
|
477
|
+
composed: !0
|
|
478
|
+
}));
|
|
479
|
+
}
|
|
480
|
+
_getSvgCoords(e) {
|
|
481
|
+
let t = this.shadowRoot.querySelector("svg").getBoundingClientRect();
|
|
482
|
+
return {
|
|
483
|
+
mx: (e.clientX - t.left) * (280 / t.width),
|
|
484
|
+
my: (e.clientY - t.top) * (280 / t.height)
|
|
485
|
+
};
|
|
486
|
+
}
|
|
487
|
+
_calcValue(e, t) {
|
|
488
|
+
let n = T(e, t, 140, 140), r = this._t;
|
|
489
|
+
if (this.view === "hours") {
|
|
490
|
+
let i = Math.sqrt((e - 140) ** 2 + (t - 140) ** 2), a = !this.ampm && i < 82, o = Math.round(n / 30) % 12;
|
|
491
|
+
return a ? o = o === 0 ? 0 : o + 12 : (o ||= 12, this.ampm && (o = S(o, x(r.h).ampm))), b(o, r.m, r.s);
|
|
492
|
+
} else if (this.view === "minutes") {
|
|
493
|
+
let e = Math.round(n / 6) % 60;
|
|
494
|
+
return b(r.h, e, r.s);
|
|
495
|
+
} else {
|
|
496
|
+
let e = Math.round(n / 6) % 60;
|
|
497
|
+
return b(r.h, r.m, e);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
_onClockKeyDown(e) {
|
|
501
|
+
let t = this._t, n = 0;
|
|
502
|
+
if (e.key === "ArrowRight" || e.key === "ArrowUp") e.preventDefault(), n = 1;
|
|
503
|
+
else if (e.key === "ArrowLeft" || e.key === "ArrowDown") e.preventDefault(), n = -1;
|
|
504
|
+
else if (e.key === "Enter" || e.key === " ") {
|
|
505
|
+
e.preventDefault(), this.view === "hours" ? this._switchView("minutes") : this.view === "minutes" && this.seconds && this._switchView("seconds");
|
|
506
|
+
return;
|
|
507
|
+
} else return;
|
|
508
|
+
if (this.view === "hours") if (this.ampm) {
|
|
509
|
+
let { hour: e, ampm: r } = x(t.h), i = (e - 1 + n + 12) % 12 + 1;
|
|
510
|
+
this._emit(S(i, r), t.m, t.s);
|
|
511
|
+
} else this._emit((t.h + n + 24) % 24, t.m, t.s);
|
|
512
|
+
else this.view === "minutes" ? this._emit(t.h, (t.m + n + 60) % 60, t.s) : this._emit(t.h, t.m, (t.s + n + 60) % 60);
|
|
513
|
+
}
|
|
514
|
+
_renderFace() {
|
|
515
|
+
let e = this._renderT, t = 0, n = 100;
|
|
516
|
+
if (this.view === "hours") {
|
|
517
|
+
let r;
|
|
518
|
+
r = this.ampm ? x(e.h).hour : e.h === 0 || e.h > 12 ? e.h % 12 : e.h, t = r / 12 * 360, n = this.ampm ? 100 : e.h === 0 || e.h > 12 ? 64 : 100;
|
|
519
|
+
} else this.view === "minutes" ? (t = e.m / 60 * 360, n = 100) : (t = e.s / 60 * 360, n = 100);
|
|
520
|
+
let o = (e) => (e - 90) * Math.PI / 180, s = 140 + n * Math.cos(o(t)), c = 140 + n * Math.sin(o(t)), l = [];
|
|
521
|
+
if (this.view === "hours") if (this.ampm) for (let e = 1; e <= 12; e++) l.push({
|
|
522
|
+
val: e,
|
|
523
|
+
label: String(e),
|
|
524
|
+
r: 100
|
|
525
|
+
});
|
|
526
|
+
else {
|
|
527
|
+
for (let e = 1; e <= 12; e++) l.push({
|
|
528
|
+
val: e,
|
|
529
|
+
label: String(e),
|
|
530
|
+
r: 100
|
|
531
|
+
});
|
|
532
|
+
for (let e = 13; e <= 24; e++) l.push({
|
|
533
|
+
val: e % 24,
|
|
534
|
+
label: e === 24 ? "00" : String(e),
|
|
535
|
+
r: 64,
|
|
536
|
+
inner: !0
|
|
537
|
+
});
|
|
538
|
+
}
|
|
539
|
+
else for (let e = 0; e < 12; e++) {
|
|
540
|
+
let t = e * 5;
|
|
541
|
+
l.push({
|
|
542
|
+
val: t,
|
|
543
|
+
label: v(t),
|
|
544
|
+
r: 100
|
|
545
|
+
});
|
|
546
|
+
}
|
|
547
|
+
let d = this.view === "hours" ? 12 : 60;
|
|
548
|
+
return r`
|
|
549
|
+
<svg width="280" height="280" viewBox="0 0 280 280" tabindex="0"
|
|
550
|
+
class=${this._isDragging ? "dragging" : ""}
|
|
551
|
+
@pointerdown=${this._onPointerDown}
|
|
552
|
+
@pointermove=${this._onPointerMove}
|
|
553
|
+
@pointerup=${this._onPointerUp}
|
|
554
|
+
@keydown=${this._onClockKeyDown}>
|
|
555
|
+
<circle cx=${140} cy=${140} r="125" class="face"></circle>
|
|
556
|
+
${this.view === "hours" && !this.ampm ? a`<circle cx=${140} cy=${140} r="82" class="face-inner"></circle>` : i}
|
|
557
|
+
<line x1=${140} y1=${140} x2=${s} y2=${c} class="hand"></line>
|
|
558
|
+
<circle cx=${s} cy=${c} r="17" class="hand-tip"></circle>
|
|
559
|
+
<circle cx=${140} cy=${140} r="4" class="hand-center"></circle>
|
|
560
|
+
${l.map((t) => {
|
|
561
|
+
let n = w(t.inner ? t.val % 12 : t.val, d, t.r, 140, 140), r = this.view === "hours" ? this.ampm ? x(e.h).hour === t.val : e.h === t.val : this.view === "minutes" ? e.m === t.val : e.s === t.val;
|
|
562
|
+
return a`
|
|
563
|
+
<circle cx=${n.x} cy=${n.y} r="17" class=${u({
|
|
564
|
+
"num-bg": !0,
|
|
565
|
+
selected: r
|
|
566
|
+
})}></circle>
|
|
567
|
+
<text x=${n.x} y=${n.y} dominant-baseline="central" class=${u({
|
|
568
|
+
num: !0,
|
|
569
|
+
selected: r,
|
|
570
|
+
"inner-label": !!t.inner
|
|
571
|
+
})}>${t.label}</text>
|
|
572
|
+
`;
|
|
573
|
+
})}
|
|
574
|
+
</svg>
|
|
575
|
+
`;
|
|
576
|
+
}
|
|
577
|
+
render() {
|
|
578
|
+
let e = this._t, { hour: t, ampm: n } = x(e.h), a = this.ampm ? v(t) : v(e.h);
|
|
579
|
+
return r`
|
|
580
|
+
<div class="clock-wrap">
|
|
581
|
+
<div class="clock-header">
|
|
582
|
+
<span class=${u({
|
|
583
|
+
"clock-seg": !0,
|
|
584
|
+
active: this.view === "hours"
|
|
585
|
+
})} @click=${() => this._switchView("hours")}>${a}</span>
|
|
586
|
+
<span class="clock-sep">:</span>
|
|
587
|
+
<span class=${u({
|
|
588
|
+
"clock-seg": !0,
|
|
589
|
+
active: this.view === "minutes"
|
|
590
|
+
})} @click=${() => this._switchView("minutes")}>${v(e.m)}</span>
|
|
591
|
+
${this.seconds ? r`<span class="clock-sep">:</span><span class=${u({
|
|
592
|
+
"clock-seg": !0,
|
|
593
|
+
active: this.view === "seconds"
|
|
594
|
+
})} @click=${() => this._switchView("seconds")}>${v(e.s)}</span>` : i}
|
|
595
|
+
${this.ampm ? r`<span class="clock-mer">${n}</span>` : i}
|
|
596
|
+
</div>
|
|
597
|
+
${this.ampm ? r`
|
|
598
|
+
<div class="am-pm">
|
|
599
|
+
<button class=${u({
|
|
600
|
+
"am-pm-btn": !0,
|
|
601
|
+
sel: n === "AM"
|
|
602
|
+
})} @click=${() => {
|
|
603
|
+
let e = this._t;
|
|
604
|
+
this._emit(S(x(e.h).hour, "AM"), e.m, e.s);
|
|
605
|
+
}}>AM</button>
|
|
606
|
+
<button class=${u({
|
|
607
|
+
"am-pm-btn": !0,
|
|
608
|
+
sel: n === "PM"
|
|
609
|
+
})} @click=${() => {
|
|
610
|
+
let e = this._t;
|
|
611
|
+
this._emit(S(x(e.h).hour, "PM"), e.m, e.s);
|
|
612
|
+
}}>PM</button>
|
|
613
|
+
</div>
|
|
614
|
+
` : i}
|
|
615
|
+
${this._renderFace()}
|
|
616
|
+
</div>
|
|
617
|
+
`;
|
|
618
|
+
}
|
|
619
|
+
};
|
|
620
|
+
e([c({ type: String })], k.prototype, "value", void 0), e([c({ type: Boolean })], k.prototype, "ampm", void 0), e([c({ type: Boolean })], k.prototype, "seconds", void 0), e([c({ type: String })], k.prototype, "view", void 0), e([l()], k.prototype, "_isDragging", void 0), e([l()], k.prototype, "_liveValue", void 0), k = e([s("flint-time-clock")], k);
|
|
621
|
+
var A = n`
|
|
622
|
+
:host { display:inline-block; font-family:var(--flint-font-family,'Inter',sans-serif); }
|
|
623
|
+
.popover-anchor { position:relative; display:inline-block; }
|
|
624
|
+
.click-away { display:none; position:fixed; inset:0; z-index:1399; }
|
|
625
|
+
.click-away.open { display:block; }
|
|
626
|
+
.popover {
|
|
627
|
+
position:absolute; top:calc(100% + 6px); left:0; z-index:1400;
|
|
628
|
+
background:var(--flint-surface-background,#fff);
|
|
629
|
+
border-radius:var(--flint-border-radius-xl,12px);
|
|
630
|
+
box-shadow:0 8px 24px -4px rgba(0,0,0,.18), 0 2px 8px -2px rgba(0,0,0,.1);
|
|
631
|
+
transform-origin:top left; transform:scale(.94) translateY(-4px);
|
|
632
|
+
opacity:0; visibility:hidden; pointer-events:none;
|
|
633
|
+
transition:transform .15s cubic-bezier(.4,0,.2,1), opacity .15s, visibility .15s;
|
|
634
|
+
}
|
|
635
|
+
.popover.open { transform:scale(1) translateY(0); opacity:1; visibility:visible; pointer-events:auto; }
|
|
636
|
+
.actions {
|
|
637
|
+
display:flex; justify-content:flex-end; gap:8px;
|
|
638
|
+
padding:8px 12px 12px; border-top:1px solid var(--flint-border-color,#f3f4f6);
|
|
639
|
+
}
|
|
640
|
+
.btn { font-family:inherit; font-size:.875rem; font-weight:600; padding:6px 14px;
|
|
641
|
+
border:none; border-radius:6px; cursor:pointer; transition:background .12s; }
|
|
642
|
+
.btn-cancel { background:transparent; color:var(--flint-text-color-muted,#4b5563); }
|
|
643
|
+
.btn-cancel:hover { background:var(--flint-hover-color, rgba(0,0,0,.06)); }
|
|
644
|
+
.btn-ok { background:var(--flint-primary-color,#2563eb); color:var(--flint-text-color-on-primary, #fff); }
|
|
645
|
+
.btn-ok:hover { background:var(--flint-primary-color-hover,#2563eb); }
|
|
646
|
+
`, j = class extends t {
|
|
647
|
+
constructor(...e) {
|
|
648
|
+
super(...e), this.value = "", this.label = "Time", this.ampm = !0, this.seconds = !1, this.disabled = !1, this.readonly = !1, this.error = !1, this.helperText = "", this._open = !1;
|
|
649
|
+
}
|
|
650
|
+
static {
|
|
651
|
+
this.styles = [A];
|
|
652
|
+
}
|
|
653
|
+
_commit(e) {
|
|
654
|
+
this.value = e, this.dispatchEvent(new CustomEvent("change", {
|
|
655
|
+
detail: { value: e },
|
|
656
|
+
bubbles: !0,
|
|
657
|
+
composed: !0
|
|
658
|
+
})), this._open = !1;
|
|
659
|
+
}
|
|
660
|
+
render() {
|
|
661
|
+
return r`
|
|
662
|
+
<div class="popover-anchor">
|
|
663
|
+
<flint-time-field .value=${this.value} .label=${this.label} .ampm=${this.ampm} ?seconds=${this.seconds}
|
|
664
|
+
?disabled=${this.disabled} ?readonly=${this.readonly} ?error=${this.error} helper-text=${this.helperText}
|
|
665
|
+
@change=${(e) => this._commit(e.detail.value)}
|
|
666
|
+
@focus=${() => {
|
|
667
|
+
!this.disabled && !this.readonly && (this._open = !0);
|
|
668
|
+
}}
|
|
669
|
+
></flint-time-field>
|
|
670
|
+
<div class="click-away ${this._open ? "open" : ""}" @click=${() => this._open = !1}></div>
|
|
671
|
+
<div class="popover ${this._open ? "open" : ""}" role="dialog" aria-label="Time picker">
|
|
672
|
+
<flint-multi-section-digital-clock .value=${this.value || b(12, 0)} .ampm=${this.ampm} ?seconds=${this.seconds}
|
|
673
|
+
@change=${(e) => {
|
|
674
|
+
this.value = e.detail.value;
|
|
675
|
+
}}
|
|
676
|
+
></flint-multi-section-digital-clock>
|
|
677
|
+
<div class="actions">
|
|
678
|
+
<button class="btn btn-cancel" @click=${() => this._open = !1}>Cancel</button>
|
|
679
|
+
<button class="btn btn-ok" @click=${() => this._commit(this.value || b(12, 0))}>OK</button>
|
|
680
|
+
</div>
|
|
681
|
+
</div>
|
|
682
|
+
</div>
|
|
683
|
+
`;
|
|
684
|
+
}
|
|
685
|
+
};
|
|
686
|
+
e([c({ type: String })], j.prototype, "value", void 0), e([c({ type: String })], j.prototype, "label", void 0), e([c({ type: Boolean })], j.prototype, "ampm", void 0), e([c({ type: Boolean })], j.prototype, "seconds", void 0), e([c({
|
|
687
|
+
type: Boolean,
|
|
688
|
+
reflect: !0
|
|
689
|
+
})], j.prototype, "disabled", void 0), e([c({
|
|
690
|
+
type: Boolean,
|
|
691
|
+
reflect: !0
|
|
692
|
+
})], j.prototype, "readonly", void 0), e([c({
|
|
693
|
+
type: Boolean,
|
|
694
|
+
reflect: !0
|
|
695
|
+
})], j.prototype, "error", void 0), e([c({
|
|
696
|
+
type: String,
|
|
697
|
+
attribute: "helper-text"
|
|
698
|
+
})], j.prototype, "helperText", void 0), e([l()], j.prototype, "_open", void 0), j = e([s("flint-desktop-time-picker")], j);
|
|
699
|
+
var M = class extends t {
|
|
700
|
+
constructor(...e) {
|
|
701
|
+
super(...e), this.value = "", this.label = "Time", this.ampm = !0, this.seconds = !1, this.disabled = !1, this.error = !1, this.helperText = "", this._open = !1, this._pending = "", this._view = "hours";
|
|
702
|
+
}
|
|
703
|
+
static {
|
|
704
|
+
this.styles = [A];
|
|
705
|
+
}
|
|
706
|
+
render() {
|
|
707
|
+
return r`
|
|
708
|
+
<flint-time-field .value=${this.value} .label=${this.label} .ampm=${this.ampm} ?seconds=${this.seconds}
|
|
709
|
+
?disabled=${this.disabled} ?error=${this.error} helper-text=${this.helperText} readonly
|
|
710
|
+
@focus=${() => {
|
|
711
|
+
this.disabled || (this._pending = this.value, this._view = "hours", this._open = !0);
|
|
712
|
+
}}
|
|
713
|
+
@change=${(e) => {
|
|
714
|
+
this.value = e.detail.value, this.dispatchEvent(new CustomEvent("change", {
|
|
715
|
+
detail: e.detail,
|
|
716
|
+
bubbles: !0,
|
|
717
|
+
composed: !0
|
|
718
|
+
}));
|
|
719
|
+
}}
|
|
720
|
+
></flint-time-field>
|
|
721
|
+
<flint-dialog .open=${this._open} disable-backdrop-close @close=${() => this._open = !1} style="--flint-dialog-width:320px">
|
|
722
|
+
<flint-dialog-title>Select Time</flint-dialog-title>
|
|
723
|
+
<flint-dialog-content style="padding:12px;display:flex;justify-content:center;">
|
|
724
|
+
<flint-time-clock .value=${this._pending || this.value || b(12, 0)} .ampm=${this.ampm} ?seconds=${this.seconds} .view=${this._view}
|
|
725
|
+
@change=${(e) => {
|
|
726
|
+
this._pending = e.detail.value;
|
|
727
|
+
}}
|
|
728
|
+
@flint-time-clock-view-change=${(e) => {
|
|
729
|
+
this._view = e.detail.view;
|
|
730
|
+
}}
|
|
731
|
+
></flint-time-clock>
|
|
732
|
+
</flint-dialog-content>
|
|
733
|
+
<flint-dialog-actions>
|
|
734
|
+
<button class="btn btn-cancel" @click=${() => {
|
|
735
|
+
this._pending = this.value, this._open = !1;
|
|
736
|
+
}}>Cancel</button>
|
|
737
|
+
<button class="btn btn-ok" @click=${() => {
|
|
738
|
+
let e = this._pending || this.value;
|
|
739
|
+
this.value = e, this.dispatchEvent(new CustomEvent("change", {
|
|
740
|
+
detail: { value: e },
|
|
741
|
+
bubbles: !0,
|
|
742
|
+
composed: !0
|
|
743
|
+
})), this._open = !1;
|
|
744
|
+
}}>OK</button>
|
|
745
|
+
</flint-dialog-actions>
|
|
746
|
+
</flint-dialog>
|
|
747
|
+
`;
|
|
748
|
+
}
|
|
749
|
+
};
|
|
750
|
+
e([c({ type: String })], M.prototype, "value", void 0), e([c({ type: String })], M.prototype, "label", void 0), e([c({ type: Boolean })], M.prototype, "ampm", void 0), e([c({ type: Boolean })], M.prototype, "seconds", void 0), e([c({
|
|
751
|
+
type: Boolean,
|
|
752
|
+
reflect: !0
|
|
753
|
+
})], M.prototype, "disabled", void 0), e([c({
|
|
754
|
+
type: Boolean,
|
|
755
|
+
reflect: !0
|
|
756
|
+
})], M.prototype, "error", void 0), e([c({
|
|
757
|
+
type: String,
|
|
758
|
+
attribute: "helper-text"
|
|
759
|
+
})], M.prototype, "helperText", void 0), e([l()], M.prototype, "_open", void 0), e([l()], M.prototype, "_pending", void 0), e([l()], M.prototype, "_view", void 0), M = e([s("flint-mobile-time-picker")], M);
|
|
760
|
+
var N = class extends t {
|
|
761
|
+
constructor(...e) {
|
|
762
|
+
super(...e), this.value = "", this.ampm = !0, this.seconds = !1;
|
|
763
|
+
}
|
|
764
|
+
static {
|
|
765
|
+
this.styles = o(g);
|
|
766
|
+
}
|
|
767
|
+
render() {
|
|
768
|
+
return r`
|
|
769
|
+
<div class="surface">
|
|
770
|
+
<flint-multi-section-digital-clock .value=${this.value || b(12, 0)} .ampm=${this.ampm} ?seconds=${this.seconds}
|
|
771
|
+
@change=${(e) => {
|
|
772
|
+
this.value = e.detail.value, this.dispatchEvent(new CustomEvent("change", {
|
|
773
|
+
detail: e.detail,
|
|
774
|
+
bubbles: !0,
|
|
775
|
+
composed: !0
|
|
776
|
+
}));
|
|
777
|
+
}}
|
|
778
|
+
></flint-multi-section-digital-clock>
|
|
779
|
+
</div>
|
|
780
|
+
`;
|
|
781
|
+
}
|
|
782
|
+
};
|
|
783
|
+
e([c({ type: String })], N.prototype, "value", void 0), e([c({ type: Boolean })], N.prototype, "ampm", void 0), e([c({ type: Boolean })], N.prototype, "seconds", void 0), N = e([s("flint-static-time-picker")], N);
|
|
784
|
+
var P = class extends t {
|
|
785
|
+
constructor(...e) {
|
|
786
|
+
super(...e), this.value = "", this.label = "Time", this.variant = "desktop", this.ampm = !0, this.seconds = !1, this.disabled = !1, this.error = !1, this.helperText = "";
|
|
787
|
+
}
|
|
788
|
+
static {
|
|
789
|
+
this.styles = o(_);
|
|
790
|
+
}
|
|
791
|
+
get _v() {
|
|
792
|
+
return this.variant === "auto" ? window.matchMedia("(pointer:coarse)").matches ? "mobile" : "desktop" : this.variant;
|
|
793
|
+
}
|
|
794
|
+
_onChange(e) {
|
|
795
|
+
this.value = e.detail.value, this.dispatchEvent(new CustomEvent("change", {
|
|
796
|
+
detail: e.detail,
|
|
797
|
+
bubbles: !0,
|
|
798
|
+
composed: !0
|
|
799
|
+
}));
|
|
800
|
+
}
|
|
801
|
+
render() {
|
|
802
|
+
let e = this._v;
|
|
803
|
+
return e === "static" ? r`<flint-static-time-picker .value=${this.value} .ampm=${this.ampm} ?seconds=${this.seconds} @change=${this._onChange}></flint-static-time-picker>` : e === "mobile" ? r`<flint-mobile-time-picker .value=${this.value} .label=${this.label} .ampm=${this.ampm} ?seconds=${this.seconds} ?disabled=${this.disabled} ?error=${this.error} helper-text=${this.helperText} @change=${this._onChange}></flint-mobile-time-picker>` : r`<flint-desktop-time-picker .value=${this.value} .label=${this.label} .ampm=${this.ampm} ?seconds=${this.seconds} ?disabled=${this.disabled} ?error=${this.error} helper-text=${this.helperText} @change=${this._onChange}></flint-desktop-time-picker>`;
|
|
804
|
+
}
|
|
805
|
+
};
|
|
806
|
+
e([c({ type: String })], P.prototype, "value", void 0), e([c({ type: String })], P.prototype, "label", void 0), e([c({ type: String })], P.prototype, "variant", void 0), e([c({ type: Boolean })], P.prototype, "ampm", void 0), e([c({ type: Boolean })], P.prototype, "seconds", void 0), e([c({
|
|
807
|
+
type: Boolean,
|
|
808
|
+
reflect: !0
|
|
809
|
+
})], P.prototype, "disabled", void 0), e([c({
|
|
810
|
+
type: Boolean,
|
|
811
|
+
reflect: !0
|
|
812
|
+
})], P.prototype, "error", void 0), e([c({
|
|
813
|
+
type: String,
|
|
814
|
+
attribute: "helper-text"
|
|
815
|
+
})], P.prototype, "helperText", void 0), P = e([s("flint-time-picker")], P);
|
|
816
|
+
//#endregion
|
|
817
|
+
export { N as a, P as c, O as i, D as n, k as o, M as r, E as s, j as t };
|