@crewlethq/ui 0.2.0 → 0.3.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 +1714 -14
- package/dist/Accordion/Accordion.d.ts +54 -0
- package/dist/Accordion/index.d.ts +4 -0
- package/dist/Accordion/index.js +6 -0
- package/dist/Accordion-ZI2WLD5C.css +87 -0
- package/dist/AddPill/AddPill.d.ts +114 -0
- package/dist/AddPill/index.d.ts +3 -0
- package/dist/AddPill/index.js +3 -0
- package/dist/AddPill-DFWXYLIQ.css +434 -0
- package/dist/Announcer/Announcer.d.ts +15 -0
- package/dist/Announcer/index.d.ts +2 -0
- package/dist/Announcer/index.js +3 -0
- package/dist/AppShell/AppShell.d.ts +193 -0
- package/dist/AppShell/index.d.ts +3 -0
- package/dist/AppShell/index.js +6 -0
- package/dist/AppShell-NVE6LHNI.css +395 -0
- package/dist/Avatar/Avatar.d.ts +104 -0
- package/dist/Avatar/index.d.ts +3 -0
- package/dist/Avatar/index.js +2 -0
- package/dist/Avatar-P2KRQM2B.css +156 -0
- package/dist/BrandLockup/BrandLockup.d.ts +41 -0
- package/dist/BrandLockup/index.d.ts +3 -0
- package/dist/BrandLockup/index.js +2 -0
- package/dist/BrandLockup-6ISDEHPJ.css +108 -0
- package/dist/Button/Button.d.ts +88 -0
- package/dist/Button/index.d.ts +3 -0
- package/dist/Button/index.js +3 -0
- package/dist/Button-D4J6B4MA.css +302 -0
- package/dist/CalendarGrid/CalendarGrid.d.ts +87 -0
- package/dist/CalendarGrid/index.d.ts +3 -0
- package/dist/CalendarGrid/index.js +2 -0
- package/dist/CalendarGrid-V6TQ5QKS.css +128 -0
- package/dist/Callout/Callout.d.ts +47 -0
- package/dist/Callout/index.d.ts +3 -0
- package/dist/Callout/index.js +2 -0
- package/dist/Callout-S7QDWHDL.css +111 -0
- package/dist/Canvas/Canvas.d.ts +234 -0
- package/dist/Canvas/geometry.d.ts +249 -0
- package/dist/Canvas/index.d.ts +5 -0
- package/dist/Canvas/index.js +8 -0
- package/dist/Canvas/layerNode.d.ts +20 -0
- package/dist/Canvas-Q6JETCWR.css +315 -0
- package/dist/Card/Card.d.ts +142 -0
- package/dist/Card/headerSlot.d.ts +65 -0
- package/dist/Card/index.d.ts +5 -0
- package/dist/Card/index.js +6 -0
- package/dist/Card-AHX3Q2JD.css +428 -0
- package/dist/Charts/ActivityStrip.d.ts +45 -0
- package/dist/Charts/BarList.d.ts +51 -0
- package/dist/Charts/Legend.d.ts +32 -0
- package/dist/Charts/StackedBar.d.ts +38 -0
- package/dist/Charts/TimeSeries.d.ts +92 -0
- package/dist/Charts/dataColor.d.ts +20 -0
- package/dist/Charts/index.d.ts +12 -0
- package/dist/Charts/index.js +3 -0
- package/dist/Charts-D7G2BSXH.css +277 -0
- package/dist/Checkbox/Checkbox.d.ts +45 -0
- package/dist/Checkbox/index.d.ts +3 -0
- package/dist/Checkbox/index.js +2 -0
- package/dist/Checkbox-VGW26YLQ.css +111 -0
- package/dist/CodeBlock/CodeBlock.d.ts +60 -0
- package/dist/CodeBlock/index.d.ts +3 -0
- package/dist/CodeBlock/index.js +7 -0
- package/dist/CodeBlock-U2W6NNVC.css +153 -0
- package/dist/Combobox/Combobox.d.ts +89 -0
- package/dist/Combobox/index.d.ts +3 -0
- package/dist/Combobox/index.js +8 -0
- package/dist/Combobox-4FUVYIE7.css +80 -0
- package/dist/CommandPalette/CommandPalette.d.ts +77 -0
- package/dist/CommandPalette/index.d.ts +3 -0
- package/dist/CommandPalette/index.js +11 -0
- package/dist/CommandPalette-CSJDUCQA.css +115 -0
- package/dist/Container/Container.d.ts +17 -0
- package/dist/Container/index.d.ts +3 -0
- package/dist/Container/index.js +2 -0
- package/dist/Container-3TSKMGNI.css +52 -0
- package/dist/Copyable/CopyButton.d.ts +54 -0
- package/dist/Copyable/Copyable.d.ts +34 -0
- package/dist/Copyable/index.d.ts +5 -0
- package/dist/Copyable/index.js +6 -0
- package/dist/Copyable-5PNRFOLS.css +125 -0
- package/dist/Count/Count.d.ts +24 -0
- package/dist/Count/index.d.ts +3 -0
- package/dist/Count/index.js +3 -0
- package/dist/Count-ZVCJ6VPD.css +20 -0
- package/dist/DataTable/CopyableCell.d.ts +12 -0
- package/dist/DataTable/DataTable.d.ts +615 -0
- package/dist/DataTable/RowActionsMenu.d.ts +7 -0
- package/dist/DataTable/index.d.ts +7 -0
- package/dist/DataTable/index.js +14 -0
- package/dist/DataTable-ITNACQ2X.css +2020 -0
- package/dist/DataView/DataView.d.ts +109 -0
- package/dist/DataView/DataViewToolbar.d.ts +87 -0
- package/dist/DataView/FilterAxisBar.d.ts +103 -0
- package/dist/DataView/columns.d.ts +35 -0
- package/dist/DataView/filters.d.ts +184 -0
- package/dist/DataView/index.d.ts +11 -0
- package/dist/DataView/index.js +25 -0
- package/dist/DataView-256YF32J.css +441 -0
- package/dist/DateTimePicker/DateTimePicker.d.ts +91 -0
- package/dist/DateTimePicker/index.d.ts +3 -0
- package/dist/DateTimePicker/index.js +9 -0
- package/dist/DateTimePicker-22VNXRWC.css +199 -0
- package/dist/DescriptionList/DescriptionList.d.ts +36 -0
- package/dist/DescriptionList/index.d.ts +3 -0
- package/dist/DescriptionList/index.js +2 -0
- package/dist/DescriptionList-YYY3V3O6.css +59 -0
- package/dist/DiffList/DiffList.d.ts +47 -0
- package/dist/DiffList/index.d.ts +3 -0
- package/dist/DiffList/index.js +3 -0
- package/dist/DiffList-3EX64AAE.css +94 -0
- package/dist/Disclosure/Disclosure.d.ts +56 -0
- package/dist/Disclosure/anatomy.d.ts +43 -0
- package/dist/Disclosure/index.d.ts +5 -0
- package/dist/Disclosure/index.js +6 -0
- package/dist/Disclosure-VKBJJIZ7.css +176 -0
- package/dist/EmptyState/EmptyState.d.ts +39 -0
- package/dist/EmptyState/index.d.ts +3 -0
- package/dist/EmptyState/index.js +3 -0
- package/dist/EmptyState-C6HRBGT7.css +73 -0
- package/dist/EmptyValue/EmptyValue.d.ts +31 -0
- package/dist/EmptyValue/index.d.ts +3 -0
- package/dist/EmptyValue/index.js +3 -0
- package/dist/EmptyValue-4B6ODXHT.css +12 -0
- package/dist/EntityChip/EntityChip.d.ts +40 -0
- package/dist/EntityChip/index.d.ts +3 -0
- package/dist/EntityChip/index.js +3 -0
- package/dist/EntityChip-LUCPZBBG.css +64 -0
- package/dist/ErrorBoundary/ErrorBoundary.d.ts +58 -0
- package/dist/ErrorBoundary/index.d.ts +3 -0
- package/dist/ErrorBoundary/index.js +4 -0
- package/dist/ErrorBoundary-ME36CQTA.css +59 -0
- package/dist/Eyebrow/Eyebrow.d.ts +18 -0
- package/dist/Eyebrow/index.d.ts +3 -0
- package/dist/Eyebrow/index.js +2 -0
- package/dist/Eyebrow-5NREGHQH.css +46 -0
- package/dist/FilterChip/FilterChip.d.ts +68 -0
- package/dist/FilterChip/index.d.ts +3 -0
- package/dist/FilterChip/index.js +3 -0
- package/dist/FilterChip-GTGLLOXE.css +107 -0
- package/dist/Fullscreen/index.d.ts +2 -0
- package/dist/Fullscreen/index.js +1 -0
- package/dist/Fullscreen/useFullscreen.d.ts +32 -0
- package/dist/IconButton/IconButton.d.ts +45 -0
- package/dist/IconButton/index.d.ts +3 -0
- package/dist/IconButton/index.js +3 -0
- package/dist/IconButton-VQGNMJDI.css +158 -0
- package/dist/ImageUpload/ImageUpload.d.ts +37 -0
- package/dist/ImageUpload/index.d.ts +3 -0
- package/dist/ImageUpload/index.js +3 -0
- package/dist/ImageUpload-HKFIZR6D.css +193 -0
- package/dist/InlineCode/InlineCode.d.ts +37 -0
- package/dist/InlineCode/index.d.ts +3 -0
- package/dist/InlineCode/index.js +2 -0
- package/dist/InlineCode-6WSR5COL.css +65 -0
- package/dist/Input/FormField.d.ts +61 -0
- package/dist/Input/FormRow.d.ts +6 -0
- package/dist/Input/FormSection.d.ts +28 -0
- package/dist/Input/Input.d.ts +98 -0
- package/dist/Input/Label.d.ts +31 -0
- package/dist/Input/ReadOnlyField.d.ts +30 -0
- package/dist/Input/Textarea.d.ts +16 -0
- package/dist/Input/index.d.ts +15 -0
- package/dist/Input/index.js +5 -0
- package/dist/Input-2PU5CPKK.css +616 -0
- package/dist/Kbd/Kbd.d.ts +40 -0
- package/dist/Kbd/index.d.ts +3 -0
- package/dist/Kbd/index.js +3 -0
- package/dist/Kbd-W66MXQI5.css +61 -0
- package/dist/Layer/LayerHost.d.ts +23 -0
- package/dist/Layer/index.d.ts +7 -0
- package/dist/Layer/index.js +3 -0
- package/dist/Layer/place.d.ts +63 -0
- package/dist/Layer/stack.d.ts +159 -0
- package/dist/Layer-NAFSGCFA.css +23 -0
- package/dist/Layout/Layout.d.ts +104 -0
- package/dist/Layout/index.d.ts +3 -0
- package/dist/Layout/index.js +2 -0
- package/dist/Layout-2ZCV3IGF.css +171 -0
- package/dist/Link/Link.d.ts +45 -0
- package/dist/Link/index.d.ts +3 -0
- package/dist/Link/index.js +3 -0
- package/dist/Link-6BEFNMN2.css +80 -0
- package/dist/List/List.d.ts +73 -0
- package/dist/List/index.d.ts +3 -0
- package/dist/List/index.js +3 -0
- package/dist/List-XTHESXLR.css +161 -0
- package/dist/ListInput/ListInput.d.ts +68 -0
- package/dist/ListInput/index.d.ts +3 -0
- package/dist/ListInput/index.js +10 -0
- package/dist/ListInput-O7LJKOIG.css +147 -0
- package/dist/Listbox/index.d.ts +5 -0
- package/dist/Listbox/index.js +2 -0
- package/dist/Listbox/useListbox.d.ts +97 -0
- package/dist/Listbox/useOptionKeys.d.ts +64 -0
- package/dist/Listbox-X2DOTSQA.css +110 -0
- package/dist/Menu/Menu.d.ts +118 -0
- package/dist/Menu/index.d.ts +3 -0
- package/dist/Menu/index.js +7 -0
- package/dist/Menu-6DE7I66I.css +222 -0
- package/dist/Meter/Meter.d.ts +49 -0
- package/dist/Meter/index.d.ts +3 -0
- package/dist/Meter/index.js +3 -0
- package/dist/Meter-SKOOXQBC.css +87 -0
- package/dist/Modal/ConfirmModal.d.ts +74 -0
- package/dist/Modal/Modal.d.ts +154 -0
- package/dist/Modal/index.d.ts +5 -0
- package/dist/Modal/index.js +8 -0
- package/dist/Modal-XYQJ4BL6.css +484 -0
- package/dist/NewItemsNotice/NewItemsNotice.d.ts +28 -0
- package/dist/NewItemsNotice/index.d.ts +3 -0
- package/dist/NewItemsNotice/index.js +4 -0
- package/dist/NewItemsNotice-T4DSSPVV.css +60 -0
- package/dist/OrgLabel/OrgLabel.d.ts +117 -0
- package/dist/OrgLabel/index.d.ts +3 -0
- package/dist/OrgLabel/index.js +2 -0
- package/dist/OrgLabel-D7U6QJZD.css +293 -0
- package/dist/OrgNode/OrgNode.d.ts +103 -0
- package/dist/OrgNode/index.d.ts +3 -0
- package/dist/OrgNode/index.js +3 -0
- package/dist/OrgNode-BT7T2Q2X.css +214 -0
- package/dist/OrgTable/OrgTable.d.ts +113 -0
- package/dist/OrgTable/index.d.ts +3 -0
- package/dist/OrgTable/index.js +11 -0
- package/dist/OrgTable-VWMFC3TB.css +360 -0
- package/dist/PageHeader/PageHeader.d.ts +35 -0
- package/dist/PageHeader/index.d.ts +3 -0
- package/dist/PageHeader/index.js +3 -0
- package/dist/PageHeader-6EYWQXRE.css +88 -0
- package/dist/Popover/Popover.d.ts +91 -0
- package/dist/Popover/index.d.ts +3 -0
- package/dist/Popover/index.js +4 -0
- package/dist/Popover-WJGCF3ZQ.css +185 -0
- package/dist/PricingCard/PricingCard.d.ts +56 -0
- package/dist/PricingCard/index.d.ts +3 -0
- package/dist/PricingCard/index.js +4 -0
- package/dist/PricingCard-JFI7RYXP.css +278 -0
- package/dist/Prose/Prose.d.ts +33 -0
- package/dist/Prose/index.d.ts +3 -0
- package/dist/Prose/index.js +2 -0
- package/dist/Prose-BTXNFT2Q.css +99 -0
- package/dist/RelativeTime/RelativeTime.d.ts +31 -0
- package/dist/RelativeTime/clock.d.ts +9 -0
- package/dist/RelativeTime/format.d.ts +38 -0
- package/dist/RelativeTime/index.d.ts +6 -0
- package/dist/RelativeTime/index.js +4 -0
- package/dist/RelativeTime-EBAQPGO2.css +10 -0
- package/dist/SearchTrigger/SearchTrigger.d.ts +29 -0
- package/dist/SearchTrigger/index.d.ts +3 -0
- package/dist/SearchTrigger/index.js +2 -0
- package/dist/SearchTrigger-QXOYAUUY.css +79 -0
- package/dist/Section/Section.d.ts +41 -0
- package/dist/Section/index.d.ts +3 -0
- package/dist/Section/index.js +3 -0
- package/dist/Section-QRUPRIQ2.css +127 -0
- package/dist/SegmentedControl/SegmentedControl.d.ts +68 -0
- package/dist/SegmentedControl/index.d.ts +4 -0
- package/dist/SegmentedControl/index.js +5 -0
- package/dist/SegmentedControl-X3BI3XU4.css +68 -0
- package/dist/Select/Select.d.ts +138 -0
- package/dist/Select/index.d.ts +3 -0
- package/dist/Select/index.js +5 -0
- package/dist/Select-2X77FSWR.css +350 -0
- package/dist/Shortcut/index.d.ts +2 -0
- package/dist/Shortcut/index.js +4 -0
- package/dist/Shortcut/useShortcut.d.ts +68 -0
- package/dist/SidebarNav/SidebarNav.d.ts +117 -0
- package/dist/SidebarNav/index.d.ts +3 -0
- package/dist/SidebarNav/index.js +3 -0
- package/dist/SidebarNav-QGSFKZYA.css +319 -0
- package/dist/Skeleton/Skeleton.d.ts +50 -0
- package/dist/Skeleton/index.d.ts +3 -0
- package/dist/Skeleton/index.js +3 -0
- package/dist/Skeleton-V735HRGM.css +421 -0
- package/dist/StatCard/StatCard.d.ts +56 -0
- package/dist/StatCard/index.d.ts +3 -0
- package/dist/StatCard/index.js +3 -0
- package/dist/StatCard-KYPKZUWX.css +111 -0
- package/dist/StatGroup/StatGroup.d.ts +20 -0
- package/dist/StatGroup/index.d.ts +3 -0
- package/dist/StatGroup/index.js +2 -0
- package/dist/StatGroup-TGB6AEKM.css +80 -0
- package/dist/StatusDot/StatusDot.d.ts +25 -0
- package/dist/StatusDot/index.d.ts +3 -0
- package/dist/StatusDot/index.js +2 -0
- package/dist/StatusDot-HA2L2FSX.css +84 -0
- package/dist/Switch/Switch.d.ts +38 -0
- package/dist/Switch/index.d.ts +3 -0
- package/dist/Switch/index.js +2 -0
- package/dist/Switch-U4OWK4CL.css +169 -0
- package/dist/Table/Table.d.ts +51 -0
- package/dist/Table/index.d.ts +3 -0
- package/dist/Table/index.js +3 -0
- package/dist/Table-MDOLVUAW.css +159 -0
- package/dist/Tabs/Tabs.d.ts +97 -0
- package/dist/Tabs/index.d.ts +3 -0
- package/dist/Tabs/index.js +4 -0
- package/dist/Tabs/roving.d.ts +36 -0
- package/dist/Tabs-VLICJFVB.css +275 -0
- package/dist/Tag/Tag.d.ts +107 -0
- package/dist/Tag/index.d.ts +3 -0
- package/dist/Tag/index.js +3 -0
- package/dist/Tag-VNZEYLB6.css +406 -0
- package/dist/TagGroup/TagGroup.d.ts +41 -0
- package/dist/TagGroup/index.d.ts +3 -0
- package/dist/TagGroup/index.js +4 -0
- package/dist/TagGroup-APC2EFH4.css +75 -0
- package/dist/TagsInput/TagsInput.d.ts +112 -0
- package/dist/TagsInput/index.d.ts +3 -0
- package/dist/TagsInput/index.js +10 -0
- package/dist/TagsInput-W4P36PRJ.css +168 -0
- package/dist/Text/Text.d.ts +67 -0
- package/dist/Text/index.d.ts +3 -0
- package/dist/Text/index.js +2 -0
- package/dist/Text-XIPYYZX2.css +154 -0
- package/dist/ThemeSwitcher/ThemeSwitcher.d.ts +47 -0
- package/dist/ThemeSwitcher/index.d.ts +4 -0
- package/dist/ThemeSwitcher/index.js +6 -0
- package/dist/ThemeSwitcher/preferences.d.ts +51 -0
- package/dist/TimeWindowPicker/TimeWindowPicker.d.ts +231 -0
- package/dist/TimeWindowPicker/index.d.ts +3 -0
- package/dist/TimeWindowPicker/index.js +13 -0
- package/dist/TimeWindowPicker/mask.d.ts +82 -0
- package/dist/TimeWindowPicker-7I7KWCMU.css +403 -0
- package/dist/Timeline/Timeline.d.ts +51 -0
- package/dist/Timeline/index.d.ts +3 -0
- package/dist/Timeline/index.js +3 -0
- package/dist/Timeline-27SYKOFX.css +144 -0
- package/dist/Toaster/Toaster.d.ts +108 -0
- package/dist/Toaster/index.d.ts +3 -0
- package/dist/Toaster/index.js +5 -0
- package/dist/Toaster-NVDCEIP5.css +306 -0
- package/dist/Toolbar/Toolbar.d.ts +62 -0
- package/dist/Toolbar/index.d.ts +3 -0
- package/dist/Toolbar/index.js +4 -0
- package/dist/Toolbar-IP6LXN45.css +48 -0
- package/dist/Tooltip/Tooltip.d.ts +51 -0
- package/dist/Tooltip/index.d.ts +3 -0
- package/dist/Tooltip/index.js +4 -0
- package/dist/Tooltip-LKQF7CE4.css +71 -0
- package/dist/Tree/index.d.ts +8 -0
- package/dist/Tree/index.js +1 -0
- package/dist/Tree/layout.d.ts +160 -0
- package/dist/Tree/model.d.ts +110 -0
- package/dist/Tree/useMeasuredSizes.d.ts +61 -0
- package/dist/Tree/useTreeState.d.ts +89 -0
- package/dist/TreeCanvas/TreeCanvas.d.ts +384 -0
- package/dist/TreeCanvas/index.d.ts +3 -0
- package/dist/TreeCanvas/index.js +10 -0
- package/dist/TreeCanvas/motion.d.ts +59 -0
- package/dist/TreeCanvas-WBNQPHC7.css +1098 -0
- package/dist/TreeGrid/TreeGrid.d.ts +142 -0
- package/dist/TreeGrid/index.d.ts +3 -0
- package/dist/TreeGrid/index.js +8 -0
- package/dist/TreeGrid-NSW7VMOX.css +132 -0
- package/dist/VisuallyHidden/VisuallyHidden.d.ts +23 -0
- package/dist/VisuallyHidden/index.d.ts +3 -0
- package/dist/VisuallyHidden/index.js +2 -0
- package/dist/VisuallyHidden-L552H7OA.css +21 -0
- package/dist/chunk-22O7LAW2.js +41 -0
- package/dist/chunk-23DHIMJA.js +38 -0
- package/dist/chunk-2EOKFKHX.js +263 -0
- package/dist/chunk-2PRH365R.js +74 -0
- package/dist/chunk-2ZQMA2WB.js +57 -0
- package/dist/chunk-3CZ7XAVY.js +139 -0
- package/dist/chunk-3EYF6HKB.js +135 -0
- package/dist/chunk-3ZP55QZE.js +40 -0
- package/dist/chunk-53DVJCVW.js +14 -0
- package/dist/chunk-5C5YMZQU.js +51 -0
- package/dist/chunk-5EKIWVOR.js +132 -0
- package/dist/chunk-5IMACPJS.js +495 -0
- package/dist/chunk-5KPQ6D7N.js +54 -0
- package/dist/chunk-5SDBMKUO.js +297 -0
- package/dist/chunk-5WS6L6FA.js +114 -0
- package/dist/chunk-7EM5T4ME.js +39 -0
- package/dist/chunk-7FZ53WDJ.js +163 -0
- package/dist/chunk-7HPRF5XN.js +525 -0
- package/dist/chunk-7RPGY3JE.js +43 -0
- package/dist/chunk-A2UXBCLO.js +48 -0
- package/dist/chunk-ARMRX2YV.js +96 -0
- package/dist/chunk-AV2DXAEL.js +27 -0
- package/dist/chunk-BHHIIK3M.js +17 -0
- package/dist/chunk-BZFWDIV6.js +9 -0
- package/dist/chunk-BZYDZBAN.js +123 -0
- package/dist/chunk-CMEE37QJ.js +628 -0
- package/dist/chunk-D3OADIM6.js +112 -0
- package/dist/chunk-DD5BBGBE.js +162 -0
- package/dist/chunk-EHMQQHYR.js +1652 -0
- package/dist/chunk-EN6K2IFA.js +256 -0
- package/dist/chunk-EPOOQZYA.js +118 -0
- package/dist/chunk-ESCO4XYW.js +144 -0
- package/dist/chunk-EUCC37WY.js +14 -0
- package/dist/chunk-EV6IMYJ6.js +62 -0
- package/dist/chunk-F27EPQ7D.js +68 -0
- package/dist/chunk-F4PJZ4ED.js +245 -0
- package/dist/chunk-F6OE5FH3.js +49 -0
- package/dist/chunk-FBZAKNSX.js +263 -0
- package/dist/chunk-FEFTGVMF.js +46 -0
- package/dist/chunk-G2QFRTJ2.js +823 -0
- package/dist/chunk-GHYY2WPF.js +907 -0
- package/dist/chunk-GTOUGQQK.js +147 -0
- package/dist/chunk-GUIF6Q6N.js +143 -0
- package/dist/chunk-GXQ3B46I.js +216 -0
- package/dist/chunk-H4FBTAYS.js +130 -0
- package/dist/chunk-HOXGBLEY.js +37 -0
- package/dist/chunk-HQNHV7D6.js +54 -0
- package/dist/chunk-HTDFCRJZ.js +92 -0
- package/dist/chunk-HZ5XZNPS.js +98 -0
- package/dist/chunk-IAJLHVUA.js +28 -0
- package/dist/chunk-IJ7QXNIJ.js +1 -0
- package/dist/chunk-ITHXJHBB.js +280 -0
- package/dist/chunk-JCSA3XVH.js +32 -0
- package/dist/chunk-KLJCCMF3.js +97 -0
- package/dist/chunk-LGCPQIOZ.js +49 -0
- package/dist/chunk-LWKJQTOM.js +77 -0
- package/dist/chunk-MNAXYY3R.js +215 -0
- package/dist/chunk-NN62JQLR.js +29 -0
- package/dist/chunk-NPZY6YYL.js +251 -0
- package/dist/chunk-NTRZGNEX.js +529 -0
- package/dist/chunk-O6232G37.js +273 -0
- package/dist/chunk-O67VF5MS.js +58 -0
- package/dist/chunk-ODEQTPFM.js +6 -0
- package/dist/chunk-PNFASD6F.js +98 -0
- package/dist/chunk-PQADV6P6.js +19 -0
- package/dist/chunk-PZSWF74H.js +15 -0
- package/dist/chunk-Q4ZPPART.js +26 -0
- package/dist/chunk-QNCVHRZL.js +17 -0
- package/dist/chunk-QVE4GJAT.js +15 -0
- package/dist/chunk-QYOFACSP.js +36 -0
- package/dist/chunk-RA2ULG6H.js +29 -0
- package/dist/chunk-RDGD7Z7I.js +350 -0
- package/dist/chunk-RK4XPHVG.js +16 -0
- package/dist/chunk-RSAQOKH3.js +38 -0
- package/dist/chunk-S2XHHEW4.js +84 -0
- package/dist/chunk-S4GZWSKR.js +137 -0
- package/dist/chunk-SFZOKW2G.js +52 -0
- package/dist/chunk-T7FKOJKW.js +221 -0
- package/dist/chunk-UG46QBLT.js +325 -0
- package/dist/chunk-UOGSZKLT.js +134 -0
- package/dist/chunk-V2XMNLMS.js +52 -0
- package/dist/chunk-V663QU4R.js +51 -0
- package/dist/chunk-W4ENKCXJ.js +40 -0
- package/dist/chunk-W5J7R5EB.js +107 -0
- package/dist/chunk-WNI2WSJF.js +27 -0
- package/dist/chunk-XDTYBF2F.js +36 -0
- package/dist/chunk-XN4JBAN3.js +32 -0
- package/dist/chunk-XV6WRMBC.js +211 -0
- package/dist/chunk-YLYOWZ4V.js +33 -0
- package/dist/chunk-YMWONFSI.js +170 -0
- package/dist/chunk-ZCR6YGQ4.js +1 -0
- package/dist/generated/index.d.ts +83 -0
- package/dist/generated/index.js +91 -0
- package/dist/index.d.ts +1 -1217
- package/dist/index.js +91 -4518
- package/dist/styles.css +14841 -4274
- package/dist/utils/cx.d.ts +10 -0
- package/dist/utils/headingLevel.d.ts +16 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.js +4 -0
- package/dist/utils/tone.d.ts +25 -0
- package/dist/utils/useClipboard.d.ts +30 -0
- package/package.json +18 -10
- package/scripts/bundle-css.mjs +25 -0
- package/scripts/check-css-literals.mjs +166 -0
- package/scripts/check-css-variables.mjs +184 -0
- package/scripts/check-css.mjs +27 -0
- package/scripts/css-source.mjs +67 -0
- package/scripts/write-barrel.mjs +60 -0
- package/dist/Accordion-NIMJQIOI.css +0 -88
- package/dist/AppShell-ZW3NSFBP.css +0 -51
- package/dist/Avatar-V6NG6Q45.css +0 -67
- package/dist/Button-XGCTXXYP.css +0 -174
- package/dist/Callout-LEGDIMAM.css +0 -52
- package/dist/Card-BOZGBML7.css +0 -86
- package/dist/Checkbox-OCUICIIZ.css +0 -58
- package/dist/CodeBlock-IEMBNIQC.css +0 -90
- package/dist/Container-LTKBA2FW.css +0 -21
- package/dist/Copyable-IB57OTHZ.css +0 -123
- package/dist/DataTable-3GALZUW2.css +0 -1593
- package/dist/DateTimePicker-NMSSGVPK.css +0 -312
- package/dist/Eyebrow-AVBORAS2.css +0 -30
- package/dist/IconButton-GB4PJDG2.css +0 -82
- package/dist/ImageUpload-3HQDF2KC.css +0 -158
- package/dist/Input-ZHUTN7CU.css +0 -210
- package/dist/Kbd-Q77CDZY7.css +0 -23
- package/dist/Modal-FJVG66S4.css +0 -138
- package/dist/Popover-FUFULUE2.css +0 -123
- package/dist/PricingCard-NKYV3JHA.css +0 -238
- package/dist/Section-665ZIPG6.css +0 -20
- package/dist/Select-GPRF7PRB.css +0 -294
- package/dist/Skeleton-3WEFLRDN.css +0 -378
- package/dist/StatCard-RTJIVTRB.css +0 -50
- package/dist/Table-AR3TRY2E.css +0 -89
- package/dist/Tabs-XZ4JIH3E.css +0 -153
- package/dist/Tag-R5QDJLYJ.css +0 -163
- package/dist/TimeWindowPicker-L3G5Q7UT.css +0 -629
- package/dist/Toaster-2O65VOR4.css +0 -264
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
export type TimeWindowMode = 'relative' | 'absolute';
|
|
2
|
+
export type TimeWindowTimezone = 'local' | 'utc';
|
|
3
|
+
/**
|
|
4
|
+
* A relative window whose start is a CALENDAR BOUNDARY rather than a duration
|
|
5
|
+
* back from now.
|
|
6
|
+
*
|
|
7
|
+
* Two, and both are convention-free. "This week" and "this month" are the ones
|
|
8
|
+
* that look like obvious neighbours and are not: a week begins on a different
|
|
9
|
+
* day in different places, so the span alone would not say when it starts, and
|
|
10
|
+
* the answer would have to be threaded through every pure function here from
|
|
11
|
+
* the picker's own `firstDayOfWeek`. A caller that wants a month passes `30d`
|
|
12
|
+
* or an absolute range.
|
|
13
|
+
*/
|
|
14
|
+
export type TimeWindowSpan = 'today' | 'yesterday';
|
|
15
|
+
export declare const TIME_WINDOW_SPANS: readonly TimeWindowSpan[];
|
|
16
|
+
export interface TimeWindowValue {
|
|
17
|
+
kind: TimeWindowMode;
|
|
18
|
+
/**
|
|
19
|
+
* A rolling duration for the relative mode: `15m`, `1h`, `24h`, `7d`. It
|
|
20
|
+
* resolves against the moment it is read, so a window set yesterday still
|
|
21
|
+
* means the last seven days today.
|
|
22
|
+
*/
|
|
23
|
+
duration?: string | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* A calendar-aligned span for the relative mode, INSTEAD of a duration:
|
|
26
|
+
* "today" starts at midnight rather than 24 hours ago. A value carrying
|
|
27
|
+
* both is one value holding two windows; the span is the more specific of
|
|
28
|
+
* the two, so it is the one that is kept.
|
|
29
|
+
*/
|
|
30
|
+
span?: TimeWindowSpan | undefined;
|
|
31
|
+
/** A datetime-local string for the absolute mode (YYYY-MM-DDTHH:MM:SS). */
|
|
32
|
+
from?: string | undefined;
|
|
33
|
+
to?: string | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* How the absolute strings and the calendar spans are read: `local` is the
|
|
36
|
+
* reader's wall clock, `utc` treats midnight as UTC midnight. It travels
|
|
37
|
+
* with the value, so a saved window round-trips.
|
|
38
|
+
*/
|
|
39
|
+
timezone?: TimeWindowTimezone | undefined;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* One window on the panel's rail, named the way a reader would say it.
|
|
43
|
+
*
|
|
44
|
+
* A preset is IDENTIFIED BY WHAT IT MEANS rather than by an id of its own:
|
|
45
|
+
* two presets for `7d` would be one window with two names, and the trigger
|
|
46
|
+
* would have to pick one of them to draw.
|
|
47
|
+
*/
|
|
48
|
+
export interface TimeWindowPreset {
|
|
49
|
+
/** What a reader calls it: "Last 7 days". */
|
|
50
|
+
label: string;
|
|
51
|
+
/** A rolling duration: `15m`, `1h`, `24h`, `7d`, `30d`. */
|
|
52
|
+
duration?: string | undefined;
|
|
53
|
+
/** A calendar-aligned span, instead of a duration. */
|
|
54
|
+
span?: TimeWindowSpan | undefined;
|
|
55
|
+
}
|
|
56
|
+
export interface TimeWindowBounds {
|
|
57
|
+
/** The earliest day a reader may choose, as a YYYY-MM-DD or datetime-local string. */
|
|
58
|
+
min?: string | undefined;
|
|
59
|
+
/**
|
|
60
|
+
* The latest. It defaults to TODAY, because every window this drives reads
|
|
61
|
+
* something that has already happened: a range ending next Tuesday returns
|
|
62
|
+
* nothing and looks like a range that found nothing.
|
|
63
|
+
*/
|
|
64
|
+
max?: string | undefined;
|
|
65
|
+
}
|
|
66
|
+
/** Every string the picker renders on its own, and every phrase it builds. */
|
|
67
|
+
export interface TimeWindowLabels {
|
|
68
|
+
/** What the trigger shows before a window is set. */
|
|
69
|
+
placeholder: string;
|
|
70
|
+
/**
|
|
71
|
+
* How the trigger is ANNOUNCED: its own name, and the window it holds. The
|
|
72
|
+
* name has to carry the window, because a button whose `aria-label` is
|
|
73
|
+
* "Time window" says nothing about the seven days it is currently showing.
|
|
74
|
+
*/
|
|
75
|
+
triggerName: (name: string, window: string) => string;
|
|
76
|
+
/** Names the rail of relative windows. */
|
|
77
|
+
presetsLabel: string;
|
|
78
|
+
/** Names the absolute side. */
|
|
79
|
+
absoluteLabel: string;
|
|
80
|
+
timezoneLabel: string;
|
|
81
|
+
localLabel: string;
|
|
82
|
+
utcLabel: string;
|
|
83
|
+
startLabel: string;
|
|
84
|
+
endLabel: string;
|
|
85
|
+
startDateLabel: string;
|
|
86
|
+
startTimeLabel: string;
|
|
87
|
+
endDateLabel: string;
|
|
88
|
+
endTimeLabel: string;
|
|
89
|
+
previousMonthLabel: string;
|
|
90
|
+
nextMonthLabel: string;
|
|
91
|
+
customLabel: string;
|
|
92
|
+
customAmountLabel: string;
|
|
93
|
+
customUnitLabel: string;
|
|
94
|
+
/** What a unit is called in the custom row's chooser. */
|
|
95
|
+
unitNames: Record<TimeWindowUnit, string>;
|
|
96
|
+
/** What a calendar span is called where no preset names it. */
|
|
97
|
+
spanNames: Record<TimeWindowSpan, string>;
|
|
98
|
+
/** What a duration no preset names is called: "Last 3 days". */
|
|
99
|
+
durationWindow: (amount: number, unit: TimeWindowUnit) => string;
|
|
100
|
+
/** Two moments, as one phrase. */
|
|
101
|
+
range: (from: string, to: string) => string;
|
|
102
|
+
/** The open end of a relative window. */
|
|
103
|
+
nowLabel: string;
|
|
104
|
+
/** The open start of a window with only an end. */
|
|
105
|
+
earliestLabel: string;
|
|
106
|
+
/** A window that narrows nothing. */
|
|
107
|
+
unsetLabel: string;
|
|
108
|
+
/** The window and what it resolves to, as one sentence. */
|
|
109
|
+
summary: (window: string, range: string) => string;
|
|
110
|
+
resetLabel: string;
|
|
111
|
+
cancelLabel: string;
|
|
112
|
+
applyLabel: string;
|
|
113
|
+
}
|
|
114
|
+
export type TimeWindowUnit = 'm' | 'h' | 'd' | 'w';
|
|
115
|
+
export interface TimeWindowPickerProps {
|
|
116
|
+
value: TimeWindowValue;
|
|
117
|
+
onChange: (value: TimeWindowValue) => void;
|
|
118
|
+
/**
|
|
119
|
+
* The window Reset goes back to. Without one there is nothing to go back
|
|
120
|
+
* TO, so the control is not drawn: a Reset that clears the window to
|
|
121
|
+
* nothing is a different button wearing the same word.
|
|
122
|
+
*/
|
|
123
|
+
defaultValue?: TimeWindowValue | undefined;
|
|
124
|
+
/**
|
|
125
|
+
* The windows this caller can actually answer, in the order a reader reads
|
|
126
|
+
* them. A screen whose store keeps thirty days offers thirty days, and
|
|
127
|
+
* nothing offers a year that comes back empty with no explanation.
|
|
128
|
+
*/
|
|
129
|
+
presets?: readonly TimeWindowPreset[] | undefined;
|
|
130
|
+
/** Suppress the rail of relative windows. */
|
|
131
|
+
allowRelative?: boolean | undefined;
|
|
132
|
+
/** Suppress the absolute side. */
|
|
133
|
+
allowAbsolute?: boolean | undefined;
|
|
134
|
+
/** Suppress the row that takes a relative window the rail does not offer. */
|
|
135
|
+
allowCustom?: boolean | undefined;
|
|
136
|
+
/** The days a reader may choose between. */
|
|
137
|
+
bounds?: TimeWindowBounds | undefined;
|
|
138
|
+
/** 0 is Sunday (the United States), 1 is Monday (ISO 8601). */
|
|
139
|
+
firstDayOfWeek?: 0 | 1 | undefined;
|
|
140
|
+
/** Names the trigger and the dialog it opens. */
|
|
141
|
+
ariaLabel?: string | undefined;
|
|
142
|
+
className?: string | undefined;
|
|
143
|
+
disabled?: boolean | undefined;
|
|
144
|
+
size?: 'sm' | 'md' | undefined;
|
|
145
|
+
/** Every string the picker renders on its own. */
|
|
146
|
+
labels?: Partial<TimeWindowLabels> | undefined;
|
|
147
|
+
}
|
|
148
|
+
/** The length of a `15m`, `1h`, `7d` duration in milliseconds, or 0 for anything else. */
|
|
149
|
+
export declare function parseTimeWindowDuration(text: string): number;
|
|
150
|
+
/**
|
|
151
|
+
* What a window means right now, as two ISO instants.
|
|
152
|
+
*
|
|
153
|
+
* `now` is a parameter rather than a read of the clock so that a caller can
|
|
154
|
+
* resolve a window against the same moment it resolved another one against,
|
|
155
|
+
* and so that the panel's own arithmetic does not move underneath a reader
|
|
156
|
+
* while they are using it.
|
|
157
|
+
*/
|
|
158
|
+
export declare function resolveTimeWindow(value: TimeWindowValue, now?: Date): {
|
|
159
|
+
from: string | undefined;
|
|
160
|
+
to: string | undefined;
|
|
161
|
+
};
|
|
162
|
+
export declare const DEFAULT_TIME_WINDOW_LABELS: TimeWindowLabels;
|
|
163
|
+
/** What a window IS, said three ways, for the three places that have to say it. */
|
|
164
|
+
export interface TimeWindowDescription {
|
|
165
|
+
/** What the window is CALLED: "Last 7 days", "Today", or two moments. */
|
|
166
|
+
window: string;
|
|
167
|
+
/** What it resolves to right now: "Sep 8, 2026, 09:41 to now". */
|
|
168
|
+
range: string;
|
|
169
|
+
/** Both, as one sentence. This is what a screen reader is given. */
|
|
170
|
+
spoken: string;
|
|
171
|
+
}
|
|
172
|
+
export interface TimeWindowDescribeOptions {
|
|
173
|
+
/** The names this caller offers, so a window is called what its own rail calls it. */
|
|
174
|
+
presets?: readonly TimeWindowPreset[] | undefined;
|
|
175
|
+
labels?: Partial<TimeWindowLabels> | undefined;
|
|
176
|
+
/** The moment the window resolves against. */
|
|
177
|
+
now?: Date | undefined;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Whether a value and a preset mean the same window.
|
|
181
|
+
*
|
|
182
|
+
* A duration is compared by its LENGTH rather than by its spelling, so a
|
|
183
|
+
* window somebody stored as `1d` is named by the rail's own `24h` row instead
|
|
184
|
+
* of falling through to a second phrase for exactly the same window.
|
|
185
|
+
*/
|
|
186
|
+
export declare function timeWindowMatchesPreset(value: TimeWindowValue, preset: TimeWindowPreset): boolean;
|
|
187
|
+
/** Whether a window narrows anything at all. */
|
|
188
|
+
export declare function isTimeWindowSet(value: TimeWindowValue): boolean;
|
|
189
|
+
/**
|
|
190
|
+
* What is selected, in words.
|
|
191
|
+
*
|
|
192
|
+
* ONE IMPLEMENTATION, because three surfaces have to agree about it: the
|
|
193
|
+
* trigger draws it, the trigger's accessible NAME carries it (a button named
|
|
194
|
+
* only "Time window" tells a screen reader nothing about the seven days it is
|
|
195
|
+
* showing), and the panel states it as the draft moves. Written per surface,
|
|
196
|
+
* the three drifted the moment a preset was renamed.
|
|
197
|
+
*/
|
|
198
|
+
export declare function describeTimeWindow(value: TimeWindowValue, options?: TimeWindowDescribeOptions): TimeWindowDescription;
|
|
199
|
+
/**
|
|
200
|
+
* A window of time: one of the windows a reader asks for by name, or two
|
|
201
|
+
* moments.
|
|
202
|
+
*
|
|
203
|
+
* THE PANEL IS ONE SURFACE, not two tabs. It used to be an Absolute tab and a
|
|
204
|
+
* Relative tab, with the relative one a grid of BARE NUMBERS under unit
|
|
205
|
+
* headings: "Last 7 days" was a 7 in a row called Days, and reaching it meant
|
|
206
|
+
* switching tab first. What a reader wants is almost always one of six or
|
|
207
|
+
* eight named windows, so those are a rail down the side of the panel, always
|
|
208
|
+
* on screen, with the calendar beside them rather than behind them.
|
|
209
|
+
*
|
|
210
|
+
* THE TWO SIDES SAY THE SAME THING. Take "Last 7 days" and the calendar shades
|
|
211
|
+
* those seven days and the boxes fill with the moments they resolve to; edit a
|
|
212
|
+
* box or take a day and the window becomes that absolute range and the rail
|
|
213
|
+
* lets go. There is one window, drawn twice, rather than two windows the panel
|
|
214
|
+
* has to choose between when Apply is pressed.
|
|
215
|
+
*
|
|
216
|
+
* WHAT IS SELECTED IS SAID OUT LOUD, in one place ([describeTimeWindow]) that
|
|
217
|
+
* the trigger's text, the trigger's accessible NAME and the panel's own live
|
|
218
|
+
* line all read from. The trigger used to carry `aria-label="Time window"`
|
|
219
|
+
* over its own text, so the one thing it was drawn to say -- which window is
|
|
220
|
+
* on -- was the one thing a screen reader could not hear from it.
|
|
221
|
+
*
|
|
222
|
+
* AND THERE IS A WAY BACK. `defaultValue` is the window the screen opens on,
|
|
223
|
+
* and Reset returns the draft to it; without one the control is not drawn,
|
|
224
|
+
* because a Reset with nothing to reset to is a Clear wearing the wrong word.
|
|
225
|
+
*
|
|
226
|
+
* The draft, the masked boxes and the two-month grid are unchanged: a partial
|
|
227
|
+
* date still rolls back rather than travelling, the mask letters are still a
|
|
228
|
+
* picture nobody hears, and the calendar is still the shared [CalendarGrid],
|
|
229
|
+
* so the same keyboard works here as in every other picker.
|
|
230
|
+
*/
|
|
231
|
+
export declare function TimeWindowPicker({ value, onChange, defaultValue, presets, allowRelative, allowAbsolute, allowCustom, bounds, firstDayOfWeek, ariaLabel, className, disabled, size, labels: labelOverrides, }: TimeWindowPickerProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import './TimeWindowPicker.css';
|
|
2
|
+
export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, timeWindowMatchesPreset, parseTimeWindowDuration, resolveTimeWindow, } from './TimeWindowPicker.js';
|
|
3
|
+
export type { TimeWindowBounds, TimeWindowDescribeOptions, TimeWindowDescription, TimeWindowLabels, TimeWindowMode, TimeWindowPickerProps, TimeWindowPreset, TimeWindowSpan, TimeWindowTimezone, TimeWindowUnit, TimeWindowValue, } from './TimeWindowPicker.js';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-G2QFRTJ2.js';
|
|
2
|
+
import '../chunk-5IMACPJS.js';
|
|
3
|
+
import '../chunk-DD5BBGBE.js';
|
|
4
|
+
import '../chunk-GXQ3B46I.js';
|
|
5
|
+
import '../chunk-GTOUGQQK.js';
|
|
6
|
+
import '../chunk-O6232G37.js';
|
|
7
|
+
import '../chunk-PQADV6P6.js';
|
|
8
|
+
import '../chunk-7RPGY3JE.js';
|
|
9
|
+
import '../chunk-ITHXJHBB.js';
|
|
10
|
+
import '../chunk-F27EPQ7D.js';
|
|
11
|
+
import '../chunk-BZYDZBAN.js';
|
|
12
|
+
import '../chunk-BZFWDIV6.js';
|
|
13
|
+
import '../chunk-ODEQTPFM.js';
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The grammar behind the masked date and time boxes.
|
|
3
|
+
*
|
|
4
|
+
* Kept beside the component rather than inside it because every rule here is
|
|
5
|
+
* a decision about what a date IS, and each one was wrong in a way no test
|
|
6
|
+
* could see: a year capped at 2030, a February with 31 days in it, and an
|
|
7
|
+
* hour of 24 followed by 60 minutes and 60 seconds.
|
|
8
|
+
*/
|
|
9
|
+
/** One numeric run inside a mask: where it sits, and what it may hold. */
|
|
10
|
+
export interface MaskSegment {
|
|
11
|
+
/** First mask position in the run, inclusive. */
|
|
12
|
+
start: number;
|
|
13
|
+
/** Last mask position in the run, inclusive. */
|
|
14
|
+
end: number;
|
|
15
|
+
min: number;
|
|
16
|
+
max: number;
|
|
17
|
+
}
|
|
18
|
+
export declare const DATE_MASK = "YYYY/MM/DD";
|
|
19
|
+
export declare const TIME_MASK = "HH:MM:SS";
|
|
20
|
+
/**
|
|
21
|
+
* The date segments.
|
|
22
|
+
*
|
|
23
|
+
* THE YEAR HAS NO CEILING WORTH SPELLING. It was 2000 to 2030, which is a
|
|
24
|
+
* ceiling that arrives: on the first of January 2031 the field stops
|
|
25
|
+
* accepting the current year, and it does it by refusing the keystroke, so
|
|
26
|
+
* there is nothing on screen to say why. Four digits is the only real
|
|
27
|
+
* constraint a four-digit field has.
|
|
28
|
+
*/
|
|
29
|
+
export declare const DATE_SEGMENTS: readonly MaskSegment[];
|
|
30
|
+
/**
|
|
31
|
+
* The time segments.
|
|
32
|
+
*
|
|
33
|
+
* AN HOUR IS 0 TO 23 AND A MINUTE IS 0 TO 59. The ranges were 00 to 24 and 00
|
|
34
|
+
* to 60, so "24:60:60" was accepted, handed to `Date`, and silently became
|
|
35
|
+
* one o'clock the following morning: a window a reader set to the end of a
|
|
36
|
+
* day quietly started the next one.
|
|
37
|
+
*/
|
|
38
|
+
export declare const TIME_SEGMENTS: readonly MaskSegment[];
|
|
39
|
+
/** Whether the character at `position` of a mask is a separator rather than a slot. */
|
|
40
|
+
export declare const isSeparator: (mask: string, position: number) => boolean;
|
|
41
|
+
/** How many digits a mask holds. */
|
|
42
|
+
export declare const slotCount: (mask: string) => number;
|
|
43
|
+
/**
|
|
44
|
+
* The digits of `text`, laid into the mask with its separators between them.
|
|
45
|
+
*
|
|
46
|
+
* SEPARATORS GO BETWEEN DIGITS, never after the last one. Appended eagerly,
|
|
47
|
+
* "2026" becomes "2026/" and Backspace can never get back past it: the key
|
|
48
|
+
* removes the separator, the projection puts it straight back, and the year
|
|
49
|
+
* cannot be corrected without clearing the whole field.
|
|
50
|
+
*/
|
|
51
|
+
export declare function project(mask: string, text: string): string;
|
|
52
|
+
/** The mask letters still unfilled, which the overlay draws after the value. */
|
|
53
|
+
export declare function remainder(mask: string, text: string): string;
|
|
54
|
+
/** Whether `text` fills every slot in the mask. */
|
|
55
|
+
export declare const isComplete: (mask: string, text: string) => boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Whether a filled date is a date that exists.
|
|
58
|
+
*
|
|
59
|
+
* BY ROUND TRIP, not by range. The ranges say 01 to 12 and 01 to 31, and
|
|
60
|
+
* every one of 31 February, 31 April and 29 February 2027 passes all three:
|
|
61
|
+
* `Date` takes them and rolls them forward into the next month, so a reader
|
|
62
|
+
* who typed one got a window starting on a day they never chose. Building the
|
|
63
|
+
* date and asking it what it became is the only check that catches that.
|
|
64
|
+
*/
|
|
65
|
+
export declare function isRealDate(text: string): boolean;
|
|
66
|
+
/** Whether a filled time is a time that exists. 24:60:60 is not one. */
|
|
67
|
+
export declare function isRealTime(text: string): boolean;
|
|
68
|
+
/**
|
|
69
|
+
* The segment the caret at `position` sits in, or the last one it passed.
|
|
70
|
+
*
|
|
71
|
+
* The caret can rest just after a run's final digit, before the separator, so
|
|
72
|
+
* a segment owns one position past its own end.
|
|
73
|
+
*/
|
|
74
|
+
export declare function segmentAt(segments: readonly MaskSegment[], position: number): MaskSegment | undefined;
|
|
75
|
+
/**
|
|
76
|
+
* `text` with one segment stepped by `by`, clamped to its own range.
|
|
77
|
+
*
|
|
78
|
+
* A segment with no digits in it yet is SEEDED with its minimum rather than
|
|
79
|
+
* stepped from nothing, so a reader can spin a date up from an empty field.
|
|
80
|
+
* A segment after an empty one is left alone: there is nothing to step into.
|
|
81
|
+
*/
|
|
82
|
+
export declare function stepSegment(mask: string, text: string, segment: MaskSegment, by: 1 | -1): string;
|