efficient-shell 12.7.0 → 12.10.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 +44 -3
- package/dist/{Browser-AKBOECNB.js → Browser-G2HGYZVD.js} +16 -16
- package/dist/Calculator-ALPNISJT.js +29 -0
- package/dist/{CurrencyConverter-UVOKFPMG.js → CurrencyConverter-KBY2OXQ2.js} +8 -8
- package/dist/Files-OY5TSWUZ.js +126 -0
- package/dist/{Notepad-P6JFXK3G.js → Notepad-CRHG5FLI.js} +10 -10
- package/dist/PdfViewer-L4FJS3M6.js +1 -0
- package/dist/{PomodoroTimer-UOV4CCYH.js → PomodoroTimer-NGQPYDI3.js} +68 -68
- package/dist/{Preview-XF5FKLVZ.js → Preview-BVTWP7RW.js} +24 -24
- package/dist/Sidebar-QOGK5LJ2.js +44 -0
- package/dist/{Stock-6D4I2EWM.js → Stock-O7AQ2WUN.js} +3 -3
- package/dist/{Weather-BCOAQJDT.js → Weather-WHXA5TTP.js} +21 -21
- package/dist/{WorldClock-WX3O3EDU.js → WorldClock-CZCIVYKB.js} +6 -6
- package/dist/ai/index.js +57 -57
- package/dist/apps/ImageAnnotator.js +1 -1
- package/dist/apps/index.d.ts +55 -1
- package/dist/apps/index.js +1 -1
- package/dist/bin/media-host-check.js +1 -1
- package/dist/bin/ui-check.js +1 -1
- package/dist/brand.css +1 -1
- package/dist/charts/BoxPlotChart.js +1 -1
- package/dist/charts/CandlestickChart.js +1 -1
- package/dist/charts/CartesianPlot.js +1 -1
- package/dist/charts/ChartBrush.js +1 -1
- package/dist/charts/ChartFrame.js +1 -1
- package/dist/charts/ChartSkeleton.js +1 -1
- package/dist/charts/ChordChart.js +1 -1
- package/dist/charts/ColumnChart.js +1 -1
- package/dist/charts/FlowChart.js +1 -1
- package/dist/charts/FunnelChart.js +1 -1
- package/dist/charts/HeatmapChart.js +1 -1
- package/dist/charts/HistogramChart.js +1 -1
- package/dist/charts/Meter.js +1 -1
- package/dist/charts/PieChart.js +1 -1
- package/dist/charts/RadarChart.js +1 -1
- package/dist/charts/RadialBarChart.js +1 -1
- package/dist/charts/RangeChart.js +1 -1
- package/dist/charts/RankedBars.js +1 -1
- package/dist/charts/SankeyChart.js +1 -1
- package/dist/charts/ScatterChart.js +1 -1
- package/dist/charts/SpecChart.js +1 -1
- package/dist/charts/StatTile.js +1 -1
- package/dist/charts/SunburstChart.js +1 -1
- package/dist/charts/TimeSeriesChart.js +1 -1
- package/dist/charts/TreemapChart.js +1 -1
- package/dist/charts/WaterfallChart.js +1 -1
- package/dist/{chunk-UDHJTQBA.js → chunk-22LU6FKN.js} +12 -12
- package/dist/{chunk-NC36LJCA.js → chunk-2GS2VOQT.js} +10 -10
- package/dist/{chunk-3PWI5IH7.js → chunk-2NZBQOA6.js} +11 -11
- package/dist/{chunk-4ZUV6WQT.js → chunk-2WNTDGOP.js} +1 -1
- package/dist/{chunk-RFKCSRJX.js → chunk-2X4U3VX2.js} +6 -6
- package/dist/chunk-3C5NKOVF.js +1 -0
- package/dist/{chunk-SYZLS2JA.js → chunk-3DWVSQIJ.js} +1 -1
- package/dist/{chunk-6JDR6T4U.js → chunk-3RDJFCIZ.js} +1 -1
- package/dist/{chunk-5NDONLH5.js → chunk-42BVXJZN.js} +3 -3
- package/dist/chunk-457SK2XV.js +9 -0
- package/dist/chunk-4GTXRVDF.js +3 -0
- package/dist/{chunk-G2X5YYIQ.js → chunk-4MUE4CYB.js} +2 -2
- package/dist/{chunk-3CMCGOOV.js → chunk-4UQNNA4K.js} +4 -4
- package/dist/{chunk-NEAT7BIP.js → chunk-5G4CB3E6.js} +1 -1
- package/dist/{chunk-PH3P54QQ.js → chunk-5HOXR3L4.js} +1 -1
- package/dist/{chunk-QNYZTD7V.js → chunk-5MFWM6L4.js} +1 -1
- package/dist/{chunk-Y4RERPFN.js → chunk-5QVCBAK2.js} +1 -1
- package/dist/chunk-5RT5XDHG.js +6 -0
- package/dist/{chunk-3UHTHQGK.js → chunk-5S4YF5XA.js} +8 -8
- package/dist/{chunk-FLTPVFKA.js → chunk-5WCHUZ6O.js} +1 -1
- package/dist/{chunk-YRJJKF5H.js → chunk-5YPCZLBW.js} +1 -1
- package/dist/{chunk-PT77FC5X.js → chunk-5Z6XJPAX.js} +1 -1
- package/dist/{chunk-MGW7SX53.js → chunk-63J2MBXV.js} +10 -10
- package/dist/chunk-675RYIWR.js +7 -0
- package/dist/{chunk-ND5IZ37V.js → chunk-67BWG353.js} +9 -9
- package/dist/{chunk-SCU2CWNJ.js → chunk-6BK3KRT5.js} +18 -18
- package/dist/chunk-6BQUSUNK.js +14 -0
- package/dist/{chunk-XMH2JOZ2.js → chunk-6ITEA6SX.js} +1 -1
- package/dist/{chunk-4KJ7MLWO.js → chunk-6JLXXX4H.js} +5 -5
- package/dist/{chunk-6BATVJBA.js → chunk-6P7SIIG4.js} +14 -14
- package/dist/{chunk-CNVYM3HP.js → chunk-6YIVKPWQ.js} +1 -1
- package/dist/{chunk-2HZQZTW5.js → chunk-7Q4DE4CT.js} +1 -1
- package/dist/{chunk-56GGBTAD.js → chunk-7XGUX3TH.js} +3 -3
- package/dist/{chunk-BKKKIHHV.js → chunk-A2JYBUPB.js} +6 -6
- package/dist/{chunk-IYPRFUTT.js → chunk-AKTEMZOT.js} +1 -1
- package/dist/{chunk-I5BS6AP6.js → chunk-AMSE4PMQ.js} +3 -3
- package/dist/{chunk-TX5FZBPQ.js → chunk-ASOVTAIT.js} +1 -1
- package/dist/{chunk-CD7P34VC.js → chunk-AUCNJFTP.js} +7 -7
- package/dist/{chunk-BGJMDP6J.js → chunk-BJAJOIVY.js} +1 -1
- package/dist/chunk-BR7L5NE3.js +13 -0
- package/dist/{chunk-DJ2XDBAO.js → chunk-BUZ5AJLR.js} +6 -6
- package/dist/{chunk-EOGXCGQF.js → chunk-BYDSBDVS.js} +6 -6
- package/dist/{chunk-MOMOZVOW.js → chunk-C3E6XFIC.js} +3 -3
- package/dist/{chunk-45IVWLKF.js → chunk-C7M7KYNY.js} +1 -1
- package/dist/chunk-CA3OC4YY.js +9 -0
- package/dist/{chunk-H7HRYFRQ.js → chunk-CB5FQMFB.js} +9 -9
- package/dist/{chunk-62275PI2.js → chunk-CINGDJPM.js} +1 -1
- package/dist/{chunk-IFQXTIMY.js → chunk-CRRC72EE.js} +9 -9
- package/dist/{chunk-NS37Y5CN.js → chunk-D4K72BHN.js} +1 -1
- package/dist/{chunk-BFO72WQB.js → chunk-EDANELWX.js} +1 -1
- package/dist/chunk-EHVBJUQI.js +28 -0
- package/dist/{chunk-KUEYOJBN.js → chunk-EIXMUGVZ.js} +2 -2
- package/dist/{chunk-7FBAZLBX.js → chunk-EVEGK57J.js} +1 -1
- package/dist/chunk-EVYD6UFQ.js +2 -0
- package/dist/chunk-F7BXUVN4.js +6 -0
- package/dist/{chunk-EIY6YGEZ.js → chunk-FOCQEWUH.js} +1 -1
- package/dist/chunk-FQHY6DTF.js +4 -0
- package/dist/{chunk-4UGFNTZ3.js → chunk-FZWAOYAM.js} +7 -7
- package/dist/{chunk-NEYHBQLG.js → chunk-G3VRO4CK.js} +2 -2
- package/dist/{chunk-CJH2BGXY.js → chunk-G67CJAQ2.js} +1 -1
- package/dist/{chunk-FPYABAOX.js → chunk-GB2XLSR5.js} +11 -11
- package/dist/{chunk-TS36J7RW.js → chunk-GBEDLYND.js} +2 -2
- package/dist/{chunk-IXBKWVEP.js → chunk-GMJ5WOB2.js} +1 -1
- package/dist/{chunk-GEXETMGL.js → chunk-GMLDGXNQ.js} +1 -1
- package/dist/{chunk-JM2IQC4J.js → chunk-HD7OBASH.js} +1 -1
- package/dist/{chunk-RBMZSZOH.js → chunk-HE24VQMU.js} +1 -1
- package/dist/{chunk-3WFJ4PYV.js → chunk-HEX3EP5F.js} +3 -3
- package/dist/chunk-HL3V67JZ.js +2 -0
- package/dist/{chunk-GZQD6IBV.js → chunk-HRDR56SK.js} +3 -3
- package/dist/chunk-HULQSIX5.js +8 -0
- package/dist/{chunk-OY3JH66O.js → chunk-HV4VQ5XV.js} +7 -7
- package/dist/{chunk-EYPKBJYG.js → chunk-HY6CBG4M.js} +1 -1
- package/dist/{chunk-E227NVFX.js → chunk-IARCNQD3.js} +1 -1
- package/dist/{chunk-34SPT4I6.js → chunk-ICNGLA5O.js} +4 -4
- package/dist/{chunk-KDTL6VEC.js → chunk-IIMFLLYT.js} +8 -8
- package/dist/{chunk-N442GPRJ.js → chunk-INFL4YZF.js} +1 -1
- package/dist/{chunk-Y46WPTKY.js → chunk-ISU4FCEX.js} +7 -7
- package/dist/chunk-ISZOD5S6.js +2 -0
- package/dist/{chunk-H6PFTU3L.js → chunk-J4IT5C3A.js} +1 -1
- package/dist/chunk-J7BMSKOM.js +7 -0
- package/dist/{chunk-DW45EZHA.js → chunk-JGJWPONL.js} +5 -5
- package/dist/{chunk-JPNAEN53.js → chunk-JMGDGNM7.js} +1 -1
- package/dist/chunk-JOD5ISTB.js +11 -0
- package/dist/{chunk-TRWHVG3A.js → chunk-JTZVUO3I.js} +1 -1
- package/dist/{chunk-WCPAQHHA.js → chunk-JVNJCRHM.js} +4 -4
- package/dist/chunk-KFS7WSCC.js +15 -0
- package/dist/{chunk-XZH5PEML.js → chunk-KIRLSUQT.js} +5 -5
- package/dist/{chunk-WMLBMR4E.js → chunk-KOPTKTHN.js} +3 -3
- package/dist/{chunk-3LTZ4N46.js → chunk-KPHYWZXL.js} +13 -13
- package/dist/chunk-KRUI4LVW.js +4 -0
- package/dist/chunk-KVU5IQOZ.js +7 -0
- package/dist/{chunk-N7JX27JE.js → chunk-KWTK6TGH.js} +1 -1
- package/dist/{chunk-DFYXIW4O.js → chunk-KZ7RR7EU.js} +1 -1
- package/dist/{chunk-YU6KOO6O.js → chunk-LFW3CQMF.js} +4 -4
- package/dist/{chunk-2BMGV6DE.js → chunk-LFWRHBTM.js} +2 -2
- package/dist/{chunk-X32TVINY.js → chunk-LS6VU6F7.js} +1 -1
- package/dist/{chunk-J53LQWWY.js → chunk-M4MN2GOE.js} +13 -13
- package/dist/{chunk-XWFLIGDQ.js → chunk-M5K4AX4E.js} +1 -1
- package/dist/{chunk-GJ23UZDQ.js → chunk-MAI2DN7N.js} +1 -1
- package/dist/{chunk-7B5KFESH.js → chunk-MBXCXFQO.js} +1 -1
- package/dist/{chunk-32WEY6O5.js → chunk-MEAJGM6F.js} +1 -1
- package/dist/{chunk-DNLRUZGS.js → chunk-MPTOEXED.js} +1 -1
- package/dist/chunk-MTP3MBZA.js +22 -0
- package/dist/{chunk-EUUCNDIS.js → chunk-NAWIVFAN.js} +13 -13
- package/dist/{chunk-54K2ADBT.js → chunk-NDAZPAQL.js} +1 -1
- package/dist/{chunk-ZKQWS2ML.js → chunk-NKZINXHG.js} +2 -2
- package/dist/chunk-NOCOLZ2W.js +1 -0
- package/dist/{chunk-SCGBCBXP.js → chunk-NV7QRWQJ.js} +1 -1
- package/dist/{chunk-XK4U5MAS.js → chunk-O3YCIWHF.js} +1 -1
- package/dist/chunk-OAFFHLJ4.js +8 -0
- package/dist/{chunk-DANLBFBD.js → chunk-OCI3PZDU.js} +1 -1
- package/dist/chunk-OSNHRKX6.js +5 -0
- package/dist/{chunk-C5LBNLFJ.js → chunk-OSQ5NRV3.js} +1 -1
- package/dist/{chunk-UVBX5LEU.js → chunk-OW5LQWPU.js} +4 -4
- package/dist/chunk-PEIRPNXT.js +23 -0
- package/dist/{chunk-LGK47SEN.js → chunk-PHJFGLXB.js} +12 -12
- package/dist/{chunk-N6Q7HNAH.js → chunk-PICRPJBL.js} +1 -1
- package/dist/{chunk-G7I255HN.js → chunk-POOPWYJL.js} +9 -9
- package/dist/chunk-PY7GHIYF.js +19 -0
- package/dist/{chunk-7HIHQR3X.js → chunk-Q3RJMQYE.js} +1 -1
- package/dist/{chunk-JQBVSPF5.js → chunk-QAS22BIS.js} +1 -1
- package/dist/{chunk-TTQ7K4AJ.js → chunk-QIMMZVWV.js} +1 -1
- package/dist/{chunk-RQDVAUXD.js → chunk-QJGZOD6X.js} +3 -3
- package/dist/{chunk-NHWDB7R6.js → chunk-QMNDKNK2.js} +1 -1
- package/dist/{chunk-RIXX6NRV.js → chunk-QQM36CYU.js} +1 -1
- package/dist/{chunk-QIUIP6YZ.js → chunk-QSK2OWT3.js} +2 -2
- package/dist/{chunk-AHJAJLSK.js → chunk-RAQBZUU2.js} +23 -23
- package/dist/{chunk-YMAU4EIK.js → chunk-RGKSJBXJ.js} +8 -8
- package/dist/{chunk-UVGEOQI4.js → chunk-RHD4V6CE.js} +9 -9
- package/dist/{chunk-XK4SMAVR.js → chunk-RIF6BFEH.js} +1 -1
- package/dist/{chunk-6U25ELYF.js → chunk-RLGPIJHB.js} +1 -1
- package/dist/{chunk-R3K3LVVS.js → chunk-RQKD5AAL.js} +1 -1
- package/dist/{chunk-I3QFYBOP.js → chunk-SEHKTBVM.js} +1 -1
- package/dist/{chunk-75MSXRFY.js → chunk-SFFELHLP.js} +5 -5
- package/dist/chunk-SOZCWT6I.js +6 -0
- package/dist/{chunk-UGOJLNYR.js → chunk-SV5RRBVA.js} +1 -1
- package/dist/{chunk-SBZCJNNP.js → chunk-SY65V6K7.js} +10 -10
- package/dist/{chunk-UIWGVOFH.js → chunk-T3NLFOLW.js} +2 -1
- package/dist/{chunk-57YY4J6T.js → chunk-TDMZFQRB.js} +1 -1
- package/dist/chunk-TJSJVC6P.js +1 -0
- package/dist/{chunk-VYMM2BPX.js → chunk-TKFINWY6.js} +2 -2
- package/dist/{chunk-MM5AFQ24.js → chunk-TVVSFXWY.js} +7 -7
- package/dist/{chunk-5JUG74UR.js → chunk-UD4NESX7.js} +1 -1
- package/dist/{chunk-NJTFI7AA.js → chunk-UG5GKEU5.js} +1 -1
- package/dist/{chunk-5MO5JBBK.js → chunk-UMZJRZFN.js} +1 -1
- package/dist/{chunk-LTESFDTF.js → chunk-V6FHZGCL.js} +1 -1
- package/dist/{chunk-ZOZEQZUA.js → chunk-VLCHHTX6.js} +1 -1
- package/dist/{chunk-A4KQKN32.js → chunk-VN3A43SA.js} +1 -1
- package/dist/{chunk-UPTKROT7.js → chunk-VPZOSVDF.js} +10 -10
- package/dist/{chunk-DPUM3H5N.js → chunk-VWNHSLFY.js} +1 -1
- package/dist/{chunk-HE767CVB.js → chunk-W5B7UNMJ.js} +1 -1
- package/dist/{chunk-RNQBWWYR.js → chunk-WDAOTHX5.js} +5 -5
- package/dist/{chunk-R3JKZXII.js → chunk-WJBP5SND.js} +5 -5
- package/dist/{chunk-RVQUSPXC.js → chunk-WM2BBRT6.js} +1 -1
- package/dist/{chunk-EEVLRCMA.js → chunk-Y4YXZIES.js} +9 -9
- package/dist/chunk-YMD2F3NL.js +1 -0
- package/dist/{chunk-525O4AUQ.js → chunk-YRG6XJ6M.js} +8 -8
- package/dist/chunk-YVAJ42M2.js +8 -0
- package/dist/{chunk-DZBGJ6X4.js → chunk-YVIV7SKG.js} +1 -1
- package/dist/{chunk-53EW4M5S.js → chunk-YX4MRM7A.js} +6 -6
- package/dist/chunk-Z334LCCX.js +4 -0
- package/dist/{chunk-J4KYZGHQ.js → chunk-Z6KW4WZ6.js} +20 -20
- package/dist/{chunk-7KIDOIPY.js → chunk-Z7RXWXR5.js} +1 -1
- package/dist/{chunk-WVHGHMW3.js → chunk-ZC6MXV4L.js} +1 -1
- package/dist/chunk-ZPHUMLET.js +1 -0
- package/dist/{chunk-7H7U3HC6.js → chunk-ZR2UWJIR.js} +4 -4
- package/dist/data/DataTable.js +1 -1
- package/dist/data/EntityList.js +1 -1
- package/dist/data/Kanban.js +1 -1
- package/dist/data/ListFooter.js +1 -1
- package/dist/data/ListLoadError.js +1 -1
- package/dist/data/Pagination.js +1 -1
- package/dist/data/ResizableTable.js +1 -1
- package/dist/file-intake/index.js +1 -1
- package/dist/forms/AlignmentGrid.js +1 -1
- package/dist/forms/BorderInput.js +1 -1
- package/dist/forms/BrandAssetEditor.js +1 -1
- package/dist/forms/Button.js +1 -1
- package/dist/forms/Calendar.js +1 -1
- package/dist/forms/ColorPicker.js +1 -1
- package/dist/forms/ComposerAttachments.js +1 -1
- package/dist/forms/CornersInput.js +1 -1
- package/dist/forms/DatePicker.js +1 -1
- package/dist/forms/DateRangePicker.js +1 -1
- package/dist/forms/DateTimePicker.js +1 -1
- package/dist/forms/DisplayChips.js +1 -1
- package/dist/forms/FilePicker.js +1 -1
- package/dist/forms/FormErrorSummary.js +1 -1
- package/dist/forms/IconButton.js +1 -1
- package/dist/forms/IconPicker.js +1 -1
- package/dist/forms/ImageFocusPoint.js +1 -1
- package/dist/forms/Input.js +1 -1
- package/dist/forms/InputNumber.d.ts +6 -0
- package/dist/forms/InputNumber.js +1 -1
- package/dist/forms/LinkPicker.js +1 -1
- package/dist/forms/MediaLibrary.js +1 -1
- package/dist/forms/MediaUploadField.js +1 -1
- package/dist/forms/MediaUploadGrid.js +1 -1
- package/dist/forms/MediaUsedInList.js +1 -1
- package/dist/forms/NumericKeypad.js +1 -1
- package/dist/forms/PictureTiles.js +1 -1
- package/dist/forms/PositionInput.js +1 -1
- package/dist/forms/RenameField.js +1 -1
- package/dist/forms/Segmented.js +1 -1
- package/dist/forms/Select.js +1 -1
- package/dist/forms/SidesInput.d.ts +12 -1
- package/dist/forms/SidesInput.js +1 -1
- package/dist/forms/Slider.js +1 -1
- package/dist/forms/Snippet.js +1 -1
- package/dist/forms/SplitButton.js +1 -1
- package/dist/forms/TagInput.js +1 -1
- package/dist/forms/TextToolbar.js +1 -1
- package/dist/forms/TimePicker.js +1 -1
- package/dist/forms/UnitMenu.d.ts +16 -0
- package/dist/forms/UnitMenu.js +1 -0
- package/dist/forms/WidthsBar.js +1 -1
- package/dist/forms/mediaLibraryMenu.js +1 -1
- package/dist/forms/mediaMoveItems.js +1 -1
- package/dist/forms/textAlign.js +1 -1
- package/dist/forms/useFileIntake.js +1 -1
- package/dist/icons/efficient-glyphs.js +1 -1
- package/dist/icons/efficient-looks.js +1 -1
- package/dist/icons/efficient-meanings.d.ts +37 -37
- package/dist/icons/efficient-meanings.js +1 -1
- package/dist/icons/efficient.js +1 -1
- package/dist/icons/index.js +1 -1
- package/dist/icons/looks/map.js +1 -1
- package/dist/icons/sets.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +665 -665
- package/dist/locales/zh-Hans.js +1 -1
- package/dist/map/index.js +3 -3
- package/dist/markdown/index.js +1 -1
- package/dist/page-tabs/index.js +5 -5
- package/dist/pdf/index.js +1 -1
- package/dist/shell/Accordion.js +1 -1
- package/dist/shell/AppUpdateBanner.js +1 -1
- package/dist/shell/Avatar.js +1 -1
- package/dist/shell/Banner.js +1 -1
- package/dist/shell/Breadcrumbs.js +1 -1
- package/dist/shell/BudgetBar.js +1 -1
- package/dist/shell/Card.js +1 -1
- package/dist/shell/ColoredBadge.js +1 -1
- package/dist/shell/ConfirmDialog.js +1 -1
- package/dist/shell/ContainerFillChart.js +1 -1
- package/dist/shell/ContextMenu.js +1 -1
- package/dist/shell/CountBadge.js +1 -1
- package/dist/shell/Dialog.js +1 -1
- package/dist/shell/Drawer.js +1 -1
- package/dist/shell/DropdownMenu.d.ts +13 -2
- package/dist/shell/DropdownMenu.js +1 -1
- package/dist/shell/EditableGrid.js +1 -1
- package/dist/shell/EmptyState.js +1 -1
- package/dist/shell/GlobalSearch.js +1 -1
- package/dist/shell/HelpCenter.js +1 -1
- package/dist/shell/IconRail.js +1 -1
- package/dist/shell/ImageLightbox.js +1 -1
- package/dist/shell/ItemCount.js +1 -1
- package/dist/shell/LanguageSelect.js +1 -1
- package/dist/shell/Markdown.js +1 -1
- package/dist/shell/MetricBar.js +1 -1
- package/dist/shell/MetricBarLegend.js +1 -1
- package/dist/shell/MilestoneTimeline.js +1 -1
- package/dist/shell/PageHeader.js +1 -1
- package/dist/shell/PopupMenu.d.ts +1 -1
- package/dist/shell/PopupMenu.js +1 -1
- package/dist/shell/ProductionTimeline.js +1 -1
- package/dist/shell/ResizeHandle.js +1 -1
- package/dist/shell/Result.js +1 -1
- package/dist/shell/SearchableSelect.js +1 -1
- package/dist/shell/SettingReset.js +1 -1
- package/dist/shell/SettingRow.js +1 -1
- package/dist/shell/SidebarLayout.js +1 -1
- package/dist/shell/SidebarNav.js +1 -1
- package/dist/shell/SortableList.js +1 -1
- package/dist/shell/Statistic.js +1 -1
- package/dist/shell/StatusBadge.js +1 -1
- package/dist/shell/StepChain.js +1 -1
- package/dist/shell/Stepper.js +1 -1
- package/dist/shell/Tabs.js +1 -1
- package/dist/shell/TimeAgo.js +1 -1
- package/dist/shell/TimelineTrack.js +1 -1
- package/dist/shell/Tooltip.js +1 -1
- package/dist/shell/TopNav.js +1 -1
- package/dist/shell/TransferProgress.js +1 -1
- package/dist/shell/Tree.js +1 -1
- package/dist/shell/discardGuard.js +1 -1
- package/dist/shell/language.js +1 -1
- package/dist/shell/strings.d.ts +8 -0
- package/dist/shell/strings.js +1 -1
- package/dist/shell/toast.js +1 -1
- package/dist/telemetry/index.js +1 -1
- package/dist/templates/AuthScreen.js +1 -1
- package/dist/templates/ChatTemplate.js +1 -1
- package/dist/templates/CheckoutTemplate.js +1 -1
- package/dist/templates/DashboardTemplate.js +1 -1
- package/dist/templates/DataTablePage.js +1 -1
- package/dist/templates/EmailTemplate.js +1 -1
- package/dist/templates/ErrorBoundary.js +1 -1
- package/dist/templates/ErrorPage.js +1 -1
- package/dist/templates/FormLayoutPage.js +1 -1
- package/dist/templates/GalleryTemplate.js +1 -1
- package/dist/ui/index.d.ts +1 -0
- package/dist/ui/index.js +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/dist/Calculator-OJLVM42W.js +0 -29
- package/dist/Files-CRQDRSFS.js +0 -121
- package/dist/PdfViewer-GUXUWGMG.js +0 -1
- package/dist/Sidebar-F7HHC5GY.js +0 -44
- package/dist/chunk-2YRLRMZH.js +0 -23
- package/dist/chunk-43MCNASD.js +0 -1
- package/dist/chunk-6DZGOGB2.js +0 -1
- package/dist/chunk-6EHPEBGP.js +0 -5
- package/dist/chunk-7RRJPNYN.js +0 -4
- package/dist/chunk-A6WZF65N.js +0 -22
- package/dist/chunk-BG2OL3MO.js +0 -7
- package/dist/chunk-BTFBXZS2.js +0 -1
- package/dist/chunk-BUGTNNZQ.js +0 -15
- package/dist/chunk-C57PNNAW.js +0 -13
- package/dist/chunk-EB2UE6ZR.js +0 -10
- package/dist/chunk-EZPSNUYR.js +0 -14
- package/dist/chunk-FVZXRGVM.js +0 -8
- package/dist/chunk-GEZ45J4Z.js +0 -2
- package/dist/chunk-GUIJCTFJ.js +0 -8
- package/dist/chunk-I64TVNHS.js +0 -6
- package/dist/chunk-IHPAYSTJ.js +0 -8
- package/dist/chunk-M54OL3YR.js +0 -2
- package/dist/chunk-N7YHXL2F.js +0 -3
- package/dist/chunk-OLVKHYHV.js +0 -9
- package/dist/chunk-P2C33RHT.js +0 -1
- package/dist/chunk-PIWC3CAC.js +0 -4
- package/dist/chunk-PM4Y2FMQ.js +0 -9
- package/dist/chunk-PVXX77MY.js +0 -6
- package/dist/chunk-PWYLGTZS.js +0 -1
- package/dist/chunk-QQ2LDC6C.js +0 -6
- package/dist/chunk-SZT72QMD.js +0 -28
- package/dist/chunk-TQWLJ5VM.js +0 -7
- package/dist/chunk-UDVQORQM.js +0 -19
- package/dist/chunk-UJJXWLHE.js +0 -2
- package/dist/chunk-YZR4T5FZ.js +0 -7
- /package/dist/{chunk-T75VCE6K.js → chunk-GMHMWDXU.js} +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import{useShellLocale as e}from"./chunk-
|
|
2
|
-
return t(
|
|
3
|
-
/* @__PURE__ */t("div",{className:`${
|
|
4
|
-
/* @__PURE__ */a("p",{id:v,className:
|
|
5
|
-
/* @__PURE__ */t("div",{className:`${
|
|
6
|
-
/* @__PURE__ */a(j,{id:N,className:
|
|
1
|
+
import{useShellLocale as e}from"./chunk-TJSJVC6P.js";import{formatPlain as r}from"./chunk-C3QOHMR6.js";import{useId as d,Children as n}from"react";import{jsxs as t,jsx as a}from"react/jsx-runtime";var i={none:{body:"",edge:"px-4 py-3"},sm:{body:"p-3",edge:"px-3 py-2"},md:{body:"p-4",edge:"px-4 py-3"},lg:{body:"p-6",edge:"px-6 py-4"}},l={neutral:"border-line",warning:"border-amber-300",current:"border-line"};function s({children:e,header:r,description:s,footer:c,padded:o=!0,padding:m,headingLevel:b,headerActions:u,"aria-label":p,className:h="",bodyClassName:x="",style:g,tone:f="neutral"}){const y=i[m??(o?"md":"none")],N=d(),v=d(),$=null!=r&&null!=s&&""!==s,w=null!=b&&null!=r,j=`h${b}`,k=null!=p&&""!==p,C=w||k,A=C?"section":"div",J=`rounded-(--radius-card) border ${l[f]} bg-surface shadow-sm ${h}`.trim(),B=n.toArray(e).length>0,H=B?"border-b border-line-subtle ":"",L="current"===f,M=L?"text-base font-semibold text-blue-700":"text-base font-semibold text-ink-strongest",O=L?"rounded-t-(--radius-card) bg-accent-tint ":"",P=`${H}${O}${y.edge} ${M}`;/* @__PURE__ */
|
|
2
|
+
return t(A,{className:J,style:g,...k?{"aria-label":p}:w?{"aria-labelledby":N}:{},...$&&C?{"aria-describedby":v}:{},...L?{"aria-current":!0}:{},children:[$?
|
|
3
|
+
/* @__PURE__ */t("div",{className:`${H}${O}${y.edge}`,children:[null!=u?/* @__PURE__ */t("div",{className:`flex items-center justify-between gap-3 ${M}`,children:[w?/* @__PURE__ */a(j,{id:N,children:r}):/* @__PURE__ */a("span",{children:r}),u]}):w?/* @__PURE__ */a(j,{id:N,className:M,children:r}):/* @__PURE__ */a("div",{className:M,children:r}),
|
|
4
|
+
/* @__PURE__ */a("p",{id:v,className:L?"mt-0.5 text-xs text-gray-600":"mt-0.5 text-xs text-ink-faint",children:s})]}):null!=r&&(null!=u?
|
|
5
|
+
/* @__PURE__ */t("div",{className:`${P} flex items-center justify-between gap-3`,children:[w?/* @__PURE__ */a(j,{id:N,children:r}):/* @__PURE__ */a("span",{children:r}),u]}):w?
|
|
6
|
+
/* @__PURE__ */a(j,{id:N,className:P,children:r}):/* @__PURE__ */a("div",{className:P,children:r})),B&&/* @__PURE__ */a("div",{className:[y.body,x].filter(Boolean).join(" "),children:e}),c&&/* @__PURE__ */a("div",{className:`border-t border-gray-100 ${y.edge}`,children:c})]})}function c({label:d,value:n,icon:i,delta:l,className:s=""}){const c=e(),o="number"==typeof n&&c?r(n,c):n,m="up"===l?.direction?"text-green-600":"down"===l?.direction?"text-red-600":"text-gray-500",b="up"===l?.direction?"▲":"down"===l?.direction?"▼":"→";/* @__PURE__ */
|
|
7
7
|
return t("div",{className:`rounded-(--radius-card) border border-gray-200 bg-white p-4 shadow-sm ${s}`.trim(),children:[
|
|
8
8
|
/* @__PURE__ */t("div",{className:"flex items-center justify-between text-ink-faint",children:[
|
|
9
9
|
/* @__PURE__ */a("span",{className:"text-xs font-medium uppercase tracking-wide",children:d}),i]}),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Popover as e}from"./chunk-LFYZ7NQ4.js";import{IconButton_default as r}from"./chunk-
|
|
2
|
-
return l(e,{className:
|
|
1
|
+
import{Popover as e}from"./chunk-LFYZ7NQ4.js";import{IconButton_default as r}from"./chunk-SV5RRBVA.js";import{Icon as n}from"./chunk-T3NLFOLW.js";import{Tooltip as t}from"./chunk-SOZCWT6I.js";import{useShellStrings as a}from"./chunk-TJSJVC6P.js";import{useRef as i}from"react";import{jsx as l,jsxs as o,Fragment as s}from"react/jsx-runtime";var c={ArrowLeft:[0,-1],ArrowRight:[0,1],ArrowUp:[-1,0],ArrowDown:[1,0]};function u({value:u,onChange:m,options:d,label:h,emptyValue:p,columns:f=5,cell:v,header:g,onPreview:w,tooltips:b=!0,disabled:x=!1,className:N=""}){const k=a(),j=k.iconPicker,y=k.iconNames,A=e=>e.label??y[e.value]??e.value,C=i([]),L=Math.max(0,d.findIndex(e=>e.value===u)),T=d[L],V=T?.value===p,_=i(null);/* @__PURE__ */
|
|
2
|
+
return l(e,{className:N,disabled:x,triggerLabel:T?j.button(h,A(T)):h,"aria-label":h,initialFocus:_,panelClassName:"!p-2",trigger:/* @__PURE__ */o("span",{className:"inline-flex items-center gap-2",children:[/* @__PURE__ */l("span",V||!T?{className:"text-sm",children:T?A(T):""}:{"aria-hidden":"true",className:"inline-flex [&_svg]:h-4 [&_svg]:w-4",children:T.icon}),
|
|
3
3
|
/* @__PURE__ */l(n,{name:"chevron-down",className:"h-4 w-4"})]}),children:({close:e})=>/* @__PURE__ */o(s,{children:["function"==typeof g?g({close:e}):g,
|
|
4
|
-
/* @__PURE__ */l("div",{role:"listbox","aria-label":h,className:"grid gap-1",style:{gridTemplateColumns:`repeat(${f}, ${v?.width??"2rem"})`},children:d.map((n,a)=>{const i=n.value===u,o=/* @__PURE__ */l(r,{ref:e=>{
|
|
4
|
+
/* @__PURE__ */l("div",{role:"listbox","aria-label":h,className:"grid gap-1",style:{gridTemplateColumns:`repeat(${f}, ${v?.width??"2rem"})`},children:d.map((n,a)=>{const i=n.value===u,o=/* @__PURE__ */l(r,{ref:e=>{C.current[a]=e,a===L&&(_.current=e)},role:"option","aria-selected":i,"aria-label":A(n),pressed:i,tabIndex:a===L?0:-1,onKeyDown:e=>((e,r)=>{const n=c[r.key];if(!n)return;r.preventDefault();const t=Math.floor(e/f)+n[0],a=e%f+n[1];if(t<0||a<0||a>=f)return;const i=t*f+a;if(!(i>=d.length)){for(const[e,r]of C.current.entries())r?.setAttribute("tabindex",e===i?"0":"-1");C.current[i]?.focus()}})(a,e),onClick:()=>{m(n.value),e()},onMouseEnter:w?e=>w(n.value,e.currentTarget):void 0,style:v?{width:v.width,height:v.height}:void 0,children:/* @__PURE__ */l("span",{"aria-hidden":"true",className:v?"inline-flex":"inline-flex [&_svg]:h-4 [&_svg]:w-4",children:n.icon})},n.value);return b?/* @__PURE__ */l(t,{content:A(n),children:o},n.value):o})})]})})}export{u as IconPicker};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Breadcrumbs as e}from"./chunk-
|
|
1
|
+
import{Breadcrumbs as e}from"./chunk-5Z6XJPAX.js";import{jsxs as t,jsx as s}from"react/jsx-runtime";function i({title:i,description:r,subtitle:c,actions:a,children:n,icon:l,breadcrumbs:m}){const d=r??c,h=a??n;/* @__PURE__ */
|
|
2
2
|
return t("div",{className:"mb-6",children:[m&&m.length>0&&/* @__PURE__ */s(e,{items:m,className:"mb-3"}),
|
|
3
3
|
/* @__PURE__ */t("div",{className:"flex items-start justify-between gap-4",children:[
|
|
4
4
|
/* @__PURE__ */t("div",{children:[
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{AccessibleTable as e}from"./chunk-HY6CBG4M.js";import{bumpPath as t}from"./chunk-VFC6QUEN.js";import{useHighlight as n}from"./chunk-CNYAHYE6.js";import{usePlotWidth as o}from"./chunk-MAFUXCPZ.js";import{ChartTooltip as l}from"./chunk-WDQI3FV6.js";import{resolveSeriesColor as r,CHART_INK as a}from"./chunk-TZFACUMR.js";import{useShellStrings as i,useShellLocale as s}from"./chunk-TJSJVC6P.js";import{formatPlain as h}from"./chunk-C3QOHMR6.js";import{useRef as c,useState as m}from"react";import{jsx as d,jsxs as u}from"react/jsx-runtime";function f({nodes:f,links:k,height:p=320,width:x,nodeWidth:g=14,nodePadding:y=12,formatValue:v,className:M,emptyLabel:w}){const b=i().charts,j=s(),$=v??(e=>h(e,j)),N=w??b.noFlows,C=c(null),F=o(C),E=x??F,[A,V]=m(null),{highlighted:z}=n();if(0===f.length||0===k.length)/* @__PURE__ */
|
|
2
|
+
return d("div",{className:M,ref:C,children:/* @__PURE__ */d("p",{className:"py-8 text-center text-sm text-gray-500",children:N})});const H=[...new Set(f.map(e=>e.depth))].sort((e,t)=>e-t),O=e=>H.length<=1?0:H.indexOf(e)/(H.length-1)*(E-g-140)+70,P=new Map(f.map(e=>{const t=k.filter(t=>t.from===e.key).reduce((e,t)=>e+t.value,0),n=k.filter(t=>t.to===e.key).reduce((e,t)=>e+t.value,0);return[e.key,Math.max(t,n,e.value??0)]})),Q=/* @__PURE__ */new Map;for(const e of f)Q.set(e.depth,[...Q.get(e.depth)??[],e]);const S=Math.max(...[...Q.values()].map(e=>e.reduce((e,t)=>e+(P.get(t.key)??0),0))),T=p-20,U=S>0?(T-y*(Math.max(...[...Q.values()].map(e=>e.length))-1))/S:0,W=/* @__PURE__ */new Map;for(const[e,t]of Q){const n=t.map(e=>Math.max(2,(P.get(e.key)??0)*U)),o=n.reduce((e,t)=>e+t,0)+y*(t.length-1),l=n.reduce((e,t)=>e+Math.max(0,t-2),0),r=o>T&&l>0?Math.max(0,1-(o-T)/l):1;let a=10;t.forEach((t,o)=>{const l=2+Math.max(0,n[o]-2)*r;W.set(t.key,{x:O(e),y:a,h:l,index:o}),a+=l+y})}const Y=/* @__PURE__ */new Map,B=/* @__PURE__ */new Map,J=/* @__PURE__ */new Map,L=(e,t)=>e.from===t||e.to===t,R="link"===A?.kind?k[A.index]:void 0,Z="node"===A?.kind?f.find(e=>e.key===A.key):void 0;/* @__PURE__ */
|
|
3
|
+
return u("div",{className:`relative ${M??""}`,ref:C,children:[
|
|
4
|
+
/* @__PURE__ */u("svg",{width:"100%",height:p,viewBox:`0 0 ${E} ${p}`,role:"img","aria-label":b.sankey(f.length,k.length),onMouseLeave:()=>V(null),children:[k.map((e,n)=>{const o=W.get(e.from),l=W.get(e.to);if(!o||!l)return null;const a=Math.max(1,e.value*U),i=o.y+(Y.get(e.from)??0)+a/2,s=l.y+(B.get(e.to)??0)+a/2;Y.set(e.from,(Y.get(e.from)??0)+a),B.set(e.to,(B.get(e.to)??0)+a);const h=o.x+g,c=l.x,m=r(o.index,e.color),u=`${e.from}→${e.to}`,f=J.get(u)??0;J.set(u,f+1);const k=((e,t)=>A?"link"===A.kind?A.index===t:L(e,A.key):null!==z?L(e,z):null)(e,n);/* @__PURE__ */
|
|
5
|
+
return d("path",{d:t([[h,i],[c,s]]),fill:"none",stroke:m,strokeWidth:a,strokeOpacity:null===k||k?.42:.12,onMouseEnter:()=>V({kind:"link",index:n})},f?`${u}#${f}`:u)}),f.map(e=>{const t=W.get(e.key);if(!t)return null;const n=t.x>E/2,o=(l=e.key,A?"node"===A.kind?A.key===l:L(k[A.index],l):null!==z?z===l:null);var l;/* @__PURE__ */
|
|
6
|
+
return u("g",{opacity:null===o||o?1:.45,onMouseEnter:()=>V({kind:"node",key:e.key}),children:[
|
|
7
|
+
/* @__PURE__ */d("rect",{x:t.x,y:t.y,width:g,height:t.h,rx:2,fill:r(t.index,e.color,e.tone)}),
|
|
8
|
+
/* @__PURE__ */d("text",{x:n?t.x-8:t.x+g+8,y:t.y+t.h/2+4,textAnchor:n?"end":"start",fontSize:11,fill:a.label,children:e.label})]},e.key)})]}),R&&/* @__PURE__ */d("div",{className:"pointer-events-none absolute top-2 left-2 z-10",children:/* @__PURE__ */d(l,{title:`${R.from} → ${R.to}`,rows:[{key:"value",label:b.flow,color:r(W.get(R.from)?.index??0,R.color),value:$(R.value)}]})}),Z&&/* @__PURE__ */d("div",{className:"pointer-events-none absolute top-2 left-2 z-10",children:/* @__PURE__ */d(l,{title:Z.label,rows:[{key:"value",label:b.throughput,color:r(W.get(Z.key)?.index??0,Z.color,Z.tone),value:$(P.get(Z.key)??0)}]})}),
|
|
9
|
+
/* @__PURE__ */d(e,{caption:b.sankey(f.length,k.length),head:[b.tableFrom,b.tableTo,b.value],rows:k.map(e=>[e.from,e.to,$(e.value)])})]})}export{f as SankeyChart};
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import{useHighlight as e}from"./chunk-CNYAHYE6.js";import{usePlotWidth as t}from"./chunk-MAFUXCPZ.js";import{ChartTooltip as l}from"./chunk-WDQI3FV6.js";import{resolveSeriesColor as a,CHART_INK as n,STATUS_VARS as r}from"./chunk-TZFACUMR.js";import{useShellStrings as o,useShellLocale as i}from"./chunk-
|
|
1
|
+
import{useHighlight as e}from"./chunk-CNYAHYE6.js";import{usePlotWidth as t}from"./chunk-MAFUXCPZ.js";import{ChartTooltip as l}from"./chunk-WDQI3FV6.js";import{resolveSeriesColor as a,CHART_INK as n,STATUS_VARS as r}from"./chunk-TZFACUMR.js";import{useShellStrings as o,useShellLocale as i}from"./chunk-TJSJVC6P.js";import{formatPercent as u,formatPlain as h}from"./chunk-C3QOHMR6.js";import{useId as c,useState as m,useRef as s}from"react";import{jsx as d,jsxs as f}from"react/jsx-runtime";function x({stages:x,shape:v="funnel",height:p,width:$,gap:g=4,minBandWidth:M=0,formatValue:y,color:b,className:k,emptyLabel:A}){const N=o().charts,S=i(),L=y??(e=>h(e,S)),j=A??N.noStages,z=c(),[V,C]=m(null),{highlighted:F}=e(),W=s(null),w=t(W,560),Z=$??w;if(0===x.length)/* @__PURE__ */return d("p",{className:`text-sm text-gray-500 ${k??""}`,children:j});const E=b??a(0),H=p??54*x.length,B=Math.max(...x.map(e=>e.value),1),J="bars"===v,P=J?Math.round(Math.min(132,Math.max(80,.24*Z))):Math.round(Math.min(168,Math.max(104,.38*Z))),Q=e=>{const t=x[e-1]?.value;return null!=t&&t>0?100*(1-x[e].value/t):null},R=e=>{const t=Q(e);return{count:L(x[e].value),drop:null!=t?`−${u(t,1,S)}`:""}},T=J?Math.ceil(Math.max(...x.map((e,t)=>{const{count:l,drop:a}=R(t);return.62*(l.length+(a?a.length+1:0))*12}))+16):0,U=Z-P-T,Y=Math.max(J?2:0,Math.min(M,U)),D=e=>Math.max(Y,U*Math.max(0,e/B)),I=e=>D(e)/2,O=P+U/2,X=e=>46+e/Math.max(1,x.length-1)*54,q=e=>`color-mix(in oklab, ${E} ${X(e).toFixed(0)}%, ${n.surface})`,G=e=>X(e)>=55?n.surface:n.label,K=(e,t)=>null!==V?V!==e:null!==F&&F!==t,_=null!==V?x[V]:void 0;/* @__PURE__ */
|
|
2
2
|
return f("div",{className:`relative ${k??""}`,ref:W,children:[
|
|
3
3
|
/* @__PURE__ */f("svg",{width:"100%",height:H,viewBox:`0 0 ${Z} ${H}`,role:"img","aria-labelledby":z,onMouseLeave:()=>C(null),children:[
|
|
4
|
-
/* @__PURE__ */d("title",{id:z,children:N.funnel(x.length,L(x[0].value),L(x[x.length-1].value))}),x.map((e,t)=>{const l=t*H/x.length+g/2,a=(t+1)*H/x.length-g/2,r=(l+a)/2,o=u(e.value/(x[0].value||1)*100,0,S),i=.62*o.length*12+12;if(
|
|
4
|
+
/* @__PURE__ */d("title",{id:z,children:N.funnel(x.length,L(x[0].value),L(x[x.length-1].value))}),x.map((e,t)=>{const l=t*H/x.length+g/2,a=(t+1)*H/x.length-g/2,r=(l+a)/2,o=u(e.value/(x[0].value||1)*100,0,S),i=.62*o.length*12+12;if(J){const u=P,h=u+D(e.value),{count:c,drop:m}=R(t);/* @__PURE__ */
|
|
5
5
|
return f("g",{opacity:K(t,e.key)?.45:1,onMouseEnter:()=>C(t),children:[
|
|
6
|
-
/* @__PURE__ */d("path",{d:`M${u},${l} L${h},${l} L${h},${a} L${u},${a} Z`,fill:
|
|
7
|
-
/* @__PURE__ */d("text",{x:
|
|
6
|
+
/* @__PURE__ */d("path",{d:`M${u},${l} L${h},${l} L${h},${a} L${u},${a} Z`,fill:q(t)}),
|
|
7
|
+
/* @__PURE__ */d("text",{x:P-12,y:r+4,textAnchor:"end",fontSize:12,fill:n.label,children:e.label}),h-u>=i&&/* @__PURE__ */d("text",{x:u+8,y:r+4,textAnchor:"start",fontSize:12,fontWeight:600,fill:G(t),style:{fontVariantNumeric:"tabular-nums"},children:o}),
|
|
8
8
|
/* @__PURE__ */f("text",{"data-funnel-value":"true",x:h+8,y:r+4,textAnchor:"start",fontSize:12,fill:n.label,style:{fontVariantNumeric:"tabular-nums"},children:[
|
|
9
|
-
/* @__PURE__ */d("tspan",{fontWeight:600,children:c}),m&&/* @__PURE__ */d("tspan",{fill:n.muted,children:` ${m}`})]})]},e.key)}const h=
|
|
9
|
+
/* @__PURE__ */d("tspan",{fontWeight:600,children:c}),m&&/* @__PURE__ */d("tspan",{fill:n.muted,children:` ${m}`})]})]},e.key)}const h=I(e.value),c="cone"===v?I(x[t+1]?.value??e.value):h,m=Q(t),s=2*Math.min(h,c)>=i;/* @__PURE__ */
|
|
10
10
|
return f("g",{opacity:K(t,e.key)?.45:1,onMouseEnter:()=>C(t),children:[
|
|
11
|
-
/* @__PURE__ */d("path",{d:`M${
|
|
12
|
-
/* @__PURE__ */d("text",{x:
|
|
13
|
-
/* @__PURE__ */f("text",{x:
|
|
14
|
-
/* @__PURE__ */d("text",{x:s?
|
|
11
|
+
/* @__PURE__ */d("path",{d:`M${O-h},${l} L${O+h},${l} L${O+c},${a} L${O-c},${a} Z`,fill:q(t)}),
|
|
12
|
+
/* @__PURE__ */d("text",{x:P-14,y:r-2,textAnchor:"end",fontSize:12,fill:n.label,children:e.label}),
|
|
13
|
+
/* @__PURE__ */f("text",{x:P-14,y:r+14,textAnchor:"end",fontSize:11,fill:n.muted,style:{fontVariantNumeric:"tabular-nums"},children:[L(e.value),null!=m?` · −${u(m,1,S)}`:""]}),
|
|
14
|
+
/* @__PURE__ */d("text",{x:s?O:O+Math.max(h,c)+6,y:r+4,textAnchor:s?"middle":"start",fontSize:12,fontWeight:600,fill:s?G(t):n.label,style:{fontVariantNumeric:"tabular-nums"},children:o})]},e.key)})]}),_&&null!==V&&/* @__PURE__ */d("div",{className:"pointer-events-none absolute top-2 left-2 z-10",children:/* @__PURE__ */d(l,{title:_.label,rows:[{key:"value",label:N.count,color:q(V),value:L(_.value)},{key:"share",label:N.ofFirstStage,color:n.muted,value:u(_.value/(x[0].value||1)*100,0,S)},...V>0&&x[V-1].value>0?[{key:"drop",label:N.droppedHere,color:r.critical,value:`−${u(100*(1-_.value/x[V-1].value),1,S)}`}]:[]]})})]})}export{x as FunnelChart};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{formatMoney as e}from"./chunk-GEYM4WN3.js";import{EMPTY_VALUE as r}from"./chunk-36BRD5J3.js";import{TimeSeriesChart as t}from"./chunk-
|
|
1
|
+
import{formatMoney as e}from"./chunk-GEYM4WN3.js";import{EMPTY_VALUE as r}from"./chunk-36BRD5J3.js";import{TimeSeriesChart as t}from"./chunk-MTP3MBZA.js";import{ChartFrame as a}from"./chunk-ZR2UWJIR.js";import{ColumnChart as l}from"./chunk-SFFELHLP.js";import{TH_ONE_LINE as s}from"./chunk-G67CJAQ2.js";import{jsxs as o,jsx as i}from"react/jsx-runtime";function n({spec:n,height:c=200,width:m,animate:d=!0,className:h}){const u=function(r){if(r.currency)return t=>e(t,r.currency);const t=r.unit?` ${r.unit}`:"";return e=>`${e.toLocaleString("en-US",{maximumFractionDigits:2})}${t}`}(n),p=n.currency?r=>e(r,n.currency,{whole:!0}):u,b=n.series.map((e,r)=>({key:`s${r}`,label:e.name,data:e.values})),y=n.title??n.series.map(e=>e.name).join(", "),f=/* @__PURE__ */o("table",{className:"w-full border-collapse text-sm",children:[
|
|
2
2
|
/* @__PURE__ */i("thead",{children:/* @__PURE__ */o("tr",{children:[
|
|
3
3
|
/* @__PURE__ */i("td",{className:"border-b border-gray-200"}),n.series.map((e,r)=>/* @__PURE__ */i("th",{scope:"col",className:`${s} border-b border-gray-200 px-2 py-1 text-right font-semibold text-gray-700`,children:e.name},r))]})}),
|
|
4
4
|
/* @__PURE__ */i("tbody",{children:n.x.map((e,t)=>/* @__PURE__ */o("tr",{children:[
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import{optionNoteClass as e}from"./chunk-URHGHXDN.js";import{keepsNativeMenu as t}from"./chunk-5QFPTDQF.js";import{Icon as n}from"./chunk-
|
|
2
|
-
return k("span","checkbox"===e?{"aria-hidden":!0,"data-menu-check":"",className:"inline-flex h-4 w-4 shrink-0 items-center justify-center rounded border "+(t?"border-blue-600 bg-blue-600 text-white":"border-gray-400"),children:t&&
|
|
3
|
-
return x("button",{ref:f,id:u,role:"radio"===
|
|
1
|
+
import{optionNoteClass as e}from"./chunk-URHGHXDN.js";import{keepsNativeMenu as t}from"./chunk-5QFPTDQF.js";import{Icon as n}from"./chunk-T3NLFOLW.js";import{onOverlayOpen as r}from"./chunk-PGN5ME7B.js";import{Z_LAYERS as o}from"./chunk-62LW225J.js";import{useHydrated as i,useBrowserLayoutEffect as a}from"./chunk-D65T4H6J.js";import{registerModalEscapeInterceptor as l}from"./chunk-TWVUQUUD.js";import{glassStyle as c,GLASS_DIVIDER as s}from"./chunk-5FYDNH4Y.js";import{createContext as d,forwardRef as u,useContext as p,useId as m,useRef as h,useState as f,useEffect as g,useMemo as y,useCallback as b}from"react";import{createPortal as w}from"react-dom";import{jsxs as x,jsx as k,Fragment as v}from"react/jsx-runtime";function N(e,t,n){return e.length===t+1&&e[t].key===n.key?e:[...e.slice(0,t),n]}function C(e,t){const n=Math.max(0,t);return e.length>n?e.slice(0,n):e}function T(e,t,n){if(0===t.length||0===e.length)return[];const r=[e];for(let e=1;e<t.length;e++){const o=r[e-1].find(n=>n.to===t[e].key),i=o?n(o):[];if(0===i.length)break;r.push(i)}return r}function E(e,t,n,r){const o=Math.max(0,r-n),i=Math.min(t,o),a=e-i/2;return a<n?n:a+i>r?Math.max(n,r-i):a}function L(e,t,n,r,o,i=!1,a=8){const l=t+o,c=e-o-n,s=c>=a;return i&&s?{left:c,flipped:!0}:l+n<=r-a?{left:l,flipped:!1}:s?{left:c,flipped:!0}:i?{left:a,flipped:!0}:{left:Math.max(a,r-a-n),flipped:!1}}function M(){try{return getComputedStyle(document.documentElement).getPropertyValue("--menu-density")?.trim()||"normal"}catch{return"normal"}}var W=d(null),$=d(!1);function j({children:e,style:n,className:a="",onClose:s,minWidth:d=180,portal:u=!1}){const p=h(null),b=m(),[x,v]=f([]),T=h();g(()=>()=>clearTimeout(T.current),[]);const E=i(),L=y(()=>{const e=()=>clearTimeout(T.current);return{id:b,depth:0,path:x,open:(t,n)=>{e(),v(e=>N(e,t,n))},scheduleClose:t=>{e(),T.current=setTimeout(()=>v(e=>C(e,t)),200)},closeBelow:t=>{e(),v(e=>C(e,t))},cancelClose:e,closeTree:()=>{e(),v([]),s?.()},root:p}},[b,x,s]);g(()=>{if(!s)return;const e=e=>{e.target.closest("[data-menu-toggle]")||e.target.closest?.(`[data-popup-menu-tree="${b}"]`)||p.current&&!p.current.contains(e.target)&&s()},t=e=>{"Escape"===e.key&&s()};window.addEventListener("pointerdown",e),window.addEventListener("keydown",t);const n=r(s),o=l(()=>!1,()=>p.current);return()=>{window.removeEventListener("pointerdown",e),window.removeEventListener("keydown",t),n(),o()}},[s,b]),g(()=>{const e=p.current;e&&requestAnimationFrame(()=>{const t=e.getBoundingClientRect();if(t.right>window.innerWidth-8){const n=t.right-window.innerWidth+8;e.style.left?e.style.left=parseFloat(e.style.left)-n+"px":e.style.right||(e.style.left=t.left-n+"px")}if(t.left<8&&(e.style.left?e.style.left="8px":e.style.right&&(e.style.right=window.innerWidth-t.width-8+"px")),t.bottom>window.innerHeight-8){const n=t.bottom-window.innerHeight+8;e.style.top?e.style.top=parseFloat(e.style.top)-n+"px":e.style.bottom?e.style.bottom="8px":e.style.top=t.top-n+"px"}t.top<8&&(e.style.top?e.style.top="8px":e.style.bottom&&(e.style.bottom=window.innerHeight-t.height-8+"px"))})});const $=M(),j=/(^|[\s:])!?z-/.test(a),B=/* @__PURE__ */k("div",{ref:p,"data-popup-menu-tree":b,className:`fixed rounded-(--radius-popup) ${"tight"===$?"py-1":"large"===$?"py-2":"py-1"} ${a}`,onContextMenu:e=>{t(e.target)||e.preventDefault()},style:{...j?{}:{zIndex:o.menu},minWidth:d,animation:"popup-in 0.12s ease-out",...c(),...n},children:/* @__PURE__ */k(W.Provider,{value:L,children:e})});return u?E?w(B,document.body):null:B}function B(e,t,n,r=!1,o="kit"){const i=M(),a="tight"===i?"0.25rem":"large"===i?"0.6rem":0;return{className:`w-full flex items-center gap-2 text-left transition-colors rounded-lg mx-auto\n ${"none"===o?"":e?"text-red-600 not-disabled:not-aria-disabled:hover:bg-red-50":r?"bg-accent-tint text-blue-700":"text-ink not-disabled:not-aria-disabled:hover:bg-accent-tint not-disabled:not-aria-disabled:hover:text-blue-700"}\n ${t?"opacity-40 cursor-not-allowed":""}\n ${n}`,style:{width:"calc(100% - 8px)",marginLeft:4,marginRight:4,fontSize:"var(--menu-font-size, 14px)",paddingLeft:"var(--menu-padding-x, 1rem)",paddingRight:"var(--menu-padding-x, 1rem)",paddingTop:a,paddingBottom:a,..."normal"===i?{minHeight:"calc(var(--row-height-menu, 2.25rem) + 2 * (var(--menu-padding-y, 0.5rem) - 0.5rem))"}:{}}}}var D=/* @__PURE__ */k(n,{name:"check","aria-hidden":!0,className:"h-4 w-4",strokeWidth:2});function H({kind:e,checked:t}){/* @__PURE__ */
|
|
2
|
+
return k("span","checkbox"===e?{"aria-hidden":!0,"data-menu-check":"",className:"inline-flex h-4 w-4 shrink-0 items-center justify-center rounded border "+(t?"border-blue-600 bg-blue-600 text-white":"border-gray-400"),children:t&&D}:{"aria-hidden":!0,"data-menu-check":"",className:"inline-flex h-4 w-4 shrink-0 items-center justify-center",children:t&&D})}var F=u(function({onClick:t,children:n,className:r="",danger:o,disabled:i,role:a,checked:l,icon:c,description:s,tabIndex:d,id:u,onMouseEnter:h},f){const g=p(W),y=m(),b=null!=s&&!1!==s,w=`${u??y}-label`,N=`${u??y}-note`,C=p($),T=B(o,i,r),E=void 0===l?null:"menuitemradio"===a?"radio":"checkbox";/* @__PURE__ */
|
|
3
|
+
return x("button",{ref:f,id:u,role:"radio"===E?"menuitemradio":"checkbox"===E?"menuitemcheckbox":a??(C?"menuitem":void 0),"aria-checked":E?l:void 0,"aria-labelledby":b?w:void 0,"aria-describedby":b?N:void 0,tabIndex:d,onClick:()=>{t?.(),g&&g.depth>0&&"checkbox"!==E&&g.closeTree()},onMouseEnter:()=>{g?.scheduleClose(g.depth),h?.()},disabled:i,className:T.className,style:T.style,children:[E&&/* @__PURE__ */k(H,{kind:E,checked:!!l}),b?
|
|
4
4
|
/* @__PURE__ */x("span",{className:"block min-w-0 flex-1 py-2",children:[
|
|
5
5
|
/* @__PURE__ */x("span",{className:"flex items-center gap-2",children:[null!=c&&/* @__PURE__ */k(P,{children:c}),
|
|
6
6
|
/* @__PURE__ */k("span",{id:w,className:"min-w-0",children:n})]}),
|
|
7
7
|
/* @__PURE__ */k("span",{id:N,"data-menu-note":"",className:e(),style:null!=c?{paddingLeft:"1.5rem"}:void 0,children:s})]}):/* @__PURE__ */x(v,{children:[null!=c&&/* @__PURE__ */k(P,{children:c}),n]})]})});function P({children:e}){/* @__PURE__ */
|
|
8
|
-
return k("span",{"aria-hidden":"true","data-menu-icon":"",className:"inline-flex h-4 w-4 shrink-0 items-center justify-center",children:e})}var R=/* @__PURE__ */k(n,{name:"chevron-right","aria-hidden":!0,className:"h-3.5 w-3.5 shrink-0 ml-auto",strokeWidth:2});function A(e){let t=o.menu;for(let n=e;n&&n!==document.body;n=n.parentElement){const e=parseInt(getComputedStyle(n).zIndex,10);Number.isNaN(e)||(t=e)}return t}function
|
|
8
|
+
return k("span",{"aria-hidden":"true","data-menu-icon":"",className:"inline-flex h-4 w-4 shrink-0 items-center justify-center",children:e})}var R=/* @__PURE__ */k(n,{name:"chevron-right","aria-hidden":!0,className:"h-3.5 w-3.5 shrink-0 ml-auto",strokeWidth:2});function A(e){let t=o.menu;for(let n=e;n&&n!==document.body;n=n.parentElement){const e=parseInt(getComputedStyle(n).zIndex,10);Number.isNaN(e)||(t=e)}return t}function z(e){return e?[...e.querySelectorAll("button:not([disabled]), a[href]")].filter(t=>t.closest("[data-popup-submenu-panel]")===e):[]}function I({label:e,icon:n,children:r,disabled:o,className:i="",minWidth:s=180,maxHeight:d,rowProps:u}){const f=p(W),N=m(),C=h(null),T=h(null),$=h(),j=h(!1),D=`${N}-menu`;g(()=>()=>clearTimeout($.current),[]);const H=f?.depth??0,F=f?.path[H],P=!!F&&F.key===N&&!o,I=b(e=>{if(!f||o||!C.current)return;clearTimeout($.current),j.current=e;const t=C.current.getBoundingClientRect(),n=C.current.closest("[data-popup-submenu-panel]")??C.current.closest("[data-popup-menu-tree]"),r=n?.getBoundingClientRect()??t,i=H>0&&(f.path[H-1]?.flipped??!1),a=L(r.left,r.right,s,window.innerWidth,4,i);f.open(H,{key:N,y:t.top,...a})},[f,o,H,N,s]),S=e=>{f?.closeBelow(H),C.current?.focus()};g(()=>{if(P)return l(e=>"Escape"===e.key&&(!(f&&f.path.length>H+1)&&(S(),!0)),()=>T.current)}),a(()=>{if(!P||!F)return;const e=()=>{const e=T.current;if(!e||!C.current)return;const t=C.current.closest("[data-popup-submenu-panel]")??C.current.closest("[data-popup-menu-tree]"),n=t?.getBoundingClientRect()??C.current.getBoundingClientRect(),r=H>0&&(f?.path[H-1]?.flipped??!1),o=e.offsetWidth||s,i=L(n.left,n.right,o,window.innerWidth,4,r,8),a=e.offsetHeight,l=E(C.current.getBoundingClientRect().top+a/2,a,8,window.innerHeight-8);e.style.left=`${i.left}px`,e.style.top=`${l}px`,e.dataset.flipped=String(i.flipped)};e();let t=0;const n=requestAnimationFrame(()=>{t=requestAnimationFrame(e)});return()=>{cancelAnimationFrame(n),cancelAnimationFrame(t)}}),g(()=>{P&&j.current&&(j.current=!1,z(T.current)[0]?.focus())},[P]);const U=y(()=>f&&{...f,depth:H+1},[f,H]);if(!f)throw new Error("PopupSubmenu must be rendered inside a PopupMenu");const q=B(!1,o,i,P),Q=M();/* @__PURE__ */
|
|
9
9
|
return x(v,{children:[
|
|
10
|
-
/* @__PURE__ */x("button",{ref:C,type:"button",role:"menuitem","aria-haspopup":"menu","aria-expanded":P,"aria-controls":P?
|
|
10
|
+
/* @__PURE__ */x("button",{ref:C,type:"button",role:"menuitem","aria-haspopup":"menu","aria-expanded":P,"aria-controls":P?D:void 0,disabled:o,"data-popup-submenu-row":!0,className:q.className,style:q.style,onClick:e=>{const t=0===e.detail;P?t&&z(T.current)[0]?.focus():I(t)},...u,onKeyDown:e=>{"ArrowRight"===e.key&&(e.preventDefault(),e.stopPropagation(),I(!0))},onMouseEnter:()=>{u?.onMouseEnter?.(),o||(f.cancelClose(),P?f.closeBelow(H+1):(clearTimeout($.current),$.current=setTimeout(()=>I(!1),120)))},onMouseLeave:()=>{clearTimeout($.current),f.scheduleClose(H)},children:[n,
|
|
11
11
|
/* @__PURE__ */k("span",{className:"min-w-0 flex-1 truncate",children:e}),R]}),P&&w(
|
|
12
|
-
/* @__PURE__ */k("div",{ref:
|
|
13
|
-
return k("div",{className:`border-t ${s} ${"tight"===e?"my-0.5":"large"===e?"my-2":"my-1"} mx-3`})}function U(){const e=
|
|
14
|
-
return k("div",{className:"text-xs font-medium uppercase tracking-wide",style:U(),children:e})}function
|
|
15
|
-
return k("svg",{className:t,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.5,children:/* @__PURE__ */k("path",{strokeLinecap:"round",strokeLinejoin:"round",d:e})})}export{
|
|
12
|
+
/* @__PURE__ */k("div",{ref:T,id:D,role:"menu","data-popup-menu-tree":f.id,"data-popup-submenu-panel":!0,className:"fixed rounded-(--radius-popup) overflow-x-hidden overflow-y-auto overscroll-contain "+("tight"===Q?"py-1":"large"===Q?"py-2":"py-1"),style:{left:F.left,top:F.y,minWidth:s,maxHeight:void 0===d?"calc(100vh - 16px)":`min(${"number"==typeof d?`${d}px`:d}, calc(100vh - 16px))`,zIndex:A(f.root.current)+H+1,animation:(F.flipped?"popup-submenu-in-left":"popup-submenu-in")+" 0.1s ease-out",...c()},onKeyDown:e=>{if(e.target.closest("[data-popup-submenu-panel]")!==e.currentTarget)return;const t=z(T.current),n=t.indexOf(document.activeElement),r=n=>{e.preventDefault(),e.stopPropagation(),t[(n+t.length)%t.length]?.focus()};"ArrowDown"===e.key?r(n+1):"ArrowUp"===e.key?r(n<0?t.length-1:n-1):"Home"===e.key?r(0):"End"===e.key?r(t.length-1):"ArrowLeft"===e.key&&(e.preventDefault(),e.stopPropagation(),S())},onMouseEnter:()=>{f.cancelClose(),clearTimeout($.current)},onMouseLeave:()=>f.scheduleClose(H+1),onContextMenu:e=>{t(e.target)||e.preventDefault()},children:/* @__PURE__ */k(W.Provider,{value:U,children:r})}),document.body)]})}function S(){const e=M();/* @__PURE__ */
|
|
13
|
+
return k("div",{className:`border-t ${s} ${"tight"===e?"my-0.5":"large"===e?"my-2":"my-1"} mx-3`})}function U(){const e=M(),t="tight"===e?"0.125rem":"large"===e?"0.375rem":"0.25rem";return{color:"var(--ink-muted)",paddingLeft:"var(--menu-padding-x, 1rem)",paddingRight:"var(--menu-padding-x, 1rem)",paddingTop:t,paddingBottom:t}}function q({children:e}){/* @__PURE__ */
|
|
14
|
+
return k("div",{className:"text-xs font-medium uppercase tracking-wide",style:U(),children:e})}function Q({d:e,className:t="h-4 w-4"}){/* @__PURE__ */
|
|
15
|
+
return k("svg",{className:t,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.5,children:/* @__PURE__ */k("path",{strokeLinecap:"round",strokeLinejoin:"round",d:e})})}export{H as MenuCheckMark,Q as MenuIcon,$ as MenuSemanticsContext,j as PopupMenu,S as PopupMenuDivider,F as PopupMenuItem,q as PopupMenuLabel,I as PopupSubmenu,E as clampMenuTop,C as closeMenuBelow,B as itemLook,L as menuPanelLeft,U as menuTextRowStyle,N as openMenuLevel,T as resolveMenuLevels};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{CartesianPlot as t}from"./chunk-
|
|
1
|
+
import{CartesianPlot as t}from"./chunk-YRG6XJ6M.js";import{ChartTooltip as a}from"./chunk-WDQI3FV6.js";import{CHART_INK as e,STATUS_VARS as l}from"./chunk-TZFACUMR.js";import{useShellStrings as o,useShellLocale as r}from"./chunk-TJSJVC6P.js";import{formatPlain as n}from"./chunk-C3QOHMR6.js";import{jsx as i,jsxs as s}from"react/jsx-runtime";function c({steps:c,height:u=240,width:m,formatValue:h,yAxisLabel:f,className:p,emptyLabel:d,radius:b=3,connectors:g=!0}){const v=o().charts,x=r(),y=h??(t=>n(t,x));let k=0;const M=c.map(t=>{if(t.total){const a={from:0,to:k,value:k,total:!0};return{...t,...a}}const a=k;return k+=t.value,{...t,from:a,to:k,value:t.value,total:!1}}),j=M.flatMap(t=>[t.from,t.to]);/* @__PURE__ */
|
|
2
2
|
return i(t,{labels:c.map(t=>t.label),values:j,height:u,width:m,formatValue:y,yAxisLabel:f,className:p,emptyLabel:d,bandPadding:.36,ariaLabel:v.waterfall(c.length,y(M[0]?.from??0),y(k)),tooltip:t=>{const e=M[t],o=e?.total?l.neutral:e.value>=0?l.good:l.critical;/* @__PURE__ */
|
|
3
3
|
return i(a,{title:e?.label,rows:[{key:"step",color:o,label:e?.total?v.balance:e.value>=0?v.increase:v.decrease,value:e?.total?y(e.to):`${e.value>=0?"+":"−"}${y(Math.abs(e.value))}`},...e?.total?[]:[{key:"running",label:v.runningTotal,color:l.neutral,value:y(e.to)}]]})},children:({x:t,y:a,active:o})=>/* @__PURE__ */s("g",{children:[g&&M.slice(0,-1).map((l,o)=>
|
|
4
4
|
/* @__PURE__ */i("line",{x1:t.end(o),y1:a(l.to),x2:t(o+1),y2:a(l.to),stroke:e.grid,strokeWidth:1,shapeRendering:"crispEdges"},`c${o}`)),M.map((e,r)=>{const n=e.total?l.neutral:e.value>=0?l.good:l.critical,s=Math.min(a(e.from),a(e.to)),c=Math.max(1,Math.abs(a(e.to)-a(e.from)));/* @__PURE__ */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{CHART_INK as l}from"./chunk-TZFACUMR.js";import{useShellStrings as e}from"./chunk-
|
|
1
|
+
import{CHART_INK as l}from"./chunk-TZFACUMR.js";import{useShellStrings as e}from"./chunk-TJSJVC6P.js";import{useState as n,useEffect as t}from"react";import{jsxs as r,jsx as a}from"react/jsx-runtime";function o(l,e=!0){const[r,a]=n(null),[o,s]=n(null),[i,c]=n(null);t(()=>{a(null)},[l]),t(()=>{if(null===o)return;const l=()=>{s(null),c(null)};return window.addEventListener("pointerup",l),()=>window.removeEventListener("pointerup",l)},[o]);const u=r?r[0]:0,m=null!==o&&null!==i&&o!==i?[Math.min(o,i),Math.max(o,i)]:null;return{view:e?r:null,drag:e?m:null,press:l=>{e&&(s(l),c(l))},over:l=>{null!==o&&c(l)},release:()=>{m&&a([u+m[0],u+m[1]]),s(null),c(null)},clear:()=>a(null),slice:l=>e&&r?l.slice(r[0],r[1]+1):l}}function s({from:n,to:t,count:o,total:s,rows:i,onClear:c}){const u=e().charts;/* @__PURE__ */
|
|
2
2
|
return r("div",{className:"mt-1 text-xs","data-chart-zoom":"true",children:[
|
|
3
3
|
/* @__PURE__ */r("div",{className:"flex items-baseline gap-2",children:[
|
|
4
4
|
/* @__PURE__ */a("span",{className:"font-semibold",style:{color:l.label},children:u.zoomRange(n,t,o)}),void 0!==s&&/* @__PURE__ */a("span",{className:"tabular-nums",style:{color:l.label},children:s}),
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import{Tree as e,TreeRow as n,TreeGroup as l}from"./chunk-POOPWYJL.js";import{MarqueeBox as a}from"./chunk-IC72MGON.js";import{EmptyState as i}from"./chunk-5G4CB3E6.js";import{ImageLightbox as r}from"./chunk-63J2MBXV.js";import{DescriptionList as t}from"./chunk-SACUSHVN.js";import{Drawer as o}from"./chunk-TVVSFXWY.js";import{Breadcrumbs as d}from"./chunk-5Z6XJPAX.js";import{ROOT_KEY as s,mediaLibraryMenu as c}from"./chunk-BJAJOIVY.js";import{useMediaMoveItems as u}from"./chunk-MEAJGM6F.js";import{RenameField as m}from"./chunk-6ITEA6SX.js";import{NativeSelect as h}from"./chunk-PY7GHIYF.js";import{MediaUploadGrid as p}from"./chunk-Y4YXZIES.js";import{MediaUsedInList as f}from"./chunk-FOCQEWUH.js";import{Segmented as g}from"./chunk-QAS22BIS.js";import{useGridSelection as v}from"./chunk-VLKDWKVR.js";import{useMarquee as k}from"./chunk-OLFYNMTD.js";import{copyToClipboard as y}from"./chunk-5HOXR3L4.js";import{Checkbox_default as b}from"./chunk-CGZBDI6C.js";import{useContextMenu as w,ContextMenu as x}from"./chunk-QSK2OWT3.js";import{Banner as C}from"./chunk-3RDJFCIZ.js";import{Input_default as N}from"./chunk-HRDR56SK.js";import{DropdownMenu as I}from"./chunk-KVU5IQOZ.js";import{IconButton_default as D}from"./chunk-SV5RRBVA.js";import{useFileIntake as S,FileIntakeAlert as j}from"./chunk-Z7RXWXR5.js";import{ColoredBadge as z}from"./chunk-UD4NESX7.js";import{Button_default as F}from"./chunk-EVYD6UFQ.js";import{Icon as O}from"./chunk-T3NLFOLW.js";import{Tooltip as T}from"./chunk-SOZCWT6I.js";import{buttonClasses as L}from"./chunk-UQYNPYF4.js";import{usePlotWidth as A}from"./chunk-MAFUXCPZ.js";import{useShellStrings as E}from"./chunk-TJSJVC6P.js";import{useRef as P,useMemo as R,useCallback as M,useState as U,useEffect as V}from"react";import{jsxs as B,Fragment as J,jsx as K}from"react/jsx-runtime";var W="application/x-efficient-media-files",X="application/x-efficient-media-folder",Y="application/x-efficient-media-file";function H(e){if(!e||!Array.from(e.types).includes(Y))return null;try{const n=JSON.parse(e.getData(Y));if(n&&"string"==typeof n.id&&"string"==typeof n.url&&"string"==typeof n.name&&("image"===n.kind||"video"===n.kind))return{id:n.id,url:n.url,kind:n.kind,name:n.name}}catch{}return null}var Z={type:"all",use:"any",sort:"newest"},G={lock:/* @__PURE__ */K(O,{name:"lock","aria-hidden":"true",className:"h-4 w-4"}),folder:/* @__PURE__ */K(O,{name:"folder","aria-hidden":"true",className:"h-4 w-4"}),folderOpen:/* @__PURE__ */K(O,{name:"folder-open","aria-hidden":"true",className:"h-4 w-4"}),folderPlus:/* @__PURE__ */K(O,{name:"folder-plus","aria-hidden":"true",className:"h-4 w-4"}),trash:/* @__PURE__ */K(O,{name:"trash","aria-hidden":"true",className:"h-4 w-4"}),upload:/* @__PURE__ */K(O,{name:"upload","aria-hidden":"true",className:"h-4 w-4"}),search:/* @__PURE__ */K(O,{name:"search","aria-hidden":"true",className:"h-4 w-4"}),grid:/* @__PURE__ */K(O,{name:"grid","aria-hidden":"true",className:"h-4 w-4"}),list:/* @__PURE__ */K(O,{name:"list","aria-hidden":"true",className:"h-4 w-4"}),more:/* @__PURE__ */K(O,{name:"more","aria-hidden":"true",className:"h-4 w-4"}),copy:/* @__PURE__ */K(O,{name:"copy","aria-hidden":"true",className:"h-4 w-4"}),edit:/* @__PURE__ */K(O,{name:"edit","aria-hidden":"true",className:"h-4 w-4"}),swap:/* @__PURE__ */K(O,{name:"swap","aria-hidden":"true",className:"h-4 w-4"}),crop:/* @__PURE__ */K(O,{name:"crop","aria-hidden":"true",className:"h-4 w-4"}),external:/* @__PURE__ */K(O,{name:"external","aria-hidden":"true",className:"h-4 w-4"}),undo:/* @__PURE__ */K(O,{name:"undo","aria-hidden":"true",className:"h-4 w-4"})},Q={link:/* @__PURE__ */K(O,{name:"link","aria-hidden":"true",className:"h-3 w-3"}),email:/* @__PURE__ */K(O,{name:"email","aria-hidden":"true",className:"h-3 w-3"}),lock:/* @__PURE__ */K(O,{name:"lock","aria-hidden":"true",className:"h-3 w-3"}),clock:/* @__PURE__ */K(O,{name:"clock","aria-hidden":"true",className:"h-3 w-3"})};function $(O){const{mode:H="manage",layout:$="auto",location:q,onLocationChange:_,folders:ee,products:ne,allFilesCount:le,trashCount:ae,files:ie,query:re,onQueryChange:te,filters:oe=Z,onFiltersChange:de,extraFilters:se,view:ce="grid",onViewChange:ue,selectedIds:me,onSelectionChange:he,usedIn:pe,denied:fe={},accept:ge="image/*,video/*",maxSizeBytes:ve,busy:ke,progress:ye,onUpload:be,onNewFolder:we,onRename:xe,onMove:Ce,onTrash:Ne,onDeleteFolder:Ie,onRestore:De,onDeleteForever:Se,onEmptyTrash:je,onReplace:ze,onCropEdit:Fe,onOpenInDesign:Oe,onChoose:Te,onCancel:Le,pickNote:Ae,onDragOut:Ee,className:Pe=""}=O,Re=E().mediaLibrary,Me=E().media,Ue="pick"===H,Ve=!Ue,Be=P(null),Je=A(Be,"phone"===$?343:1200),Ke="phone"===$||"auto"===$&&Je<640,We=R(()=>function(e=[]){const n=/* @__PURE__ */new Map,l=(e,a)=>{for(const i of e){const e=[...a,i];n.set(i.id,{node:i,path:e}),i.children&&l(i.children,e)}};return l(e,[]),n}(ne),[ne]),Xe=R(()=>new Map(ee.map(e=>[e.id,e])),[ee]),Ye=R(()=>{const e=/* @__PURE__ */new Map;for(const n of ee){const l=n.parentId&&Xe.has(n.parentId)?n.parentId:null;e.set(l,[...e.get(l)??[],n])}return e},[ee,Xe]),He=M(e=>{const n=[];for(let l=e?Xe.get(e):void 0;l&&(n.unshift(l),!(n.length>ee.length));l=l.parentId?Xe.get(l.parentId):void 0);return n},[Xe,ee.length]),Ze=M((e,n)=>He(e).some(e=>e.id===n),[He]),[Ge,Qe]=U(()=>/* @__PURE__ */new Set(["@files"])),$e=e=>Qe(n=>{const l=new Set(n);return l.has(e)?l.delete(e):l.add(e),l}),qe=M(e=>{Qe(n=>e.every(e=>n.has(e))?n:/* @__PURE__ */new Set([...n,...e]))},[]),_e="files"===(en=q).place?`files:${en.folderId??""}`:"products"===en.place?`products:${en.nodeId??""}`:"trash";var en;V(()=>{if("files"===q.place)qe(["@files",...He(q.folderId).slice(0,-1).map(e=>e.id)]);else if("products"===q.place){const e=q.nodeId?We.get(q.nodeId)?.path??[]:[];qe(["@products",...e.slice(0,-1).map(e=>`p:${e.id}`)])}},[_e]);const nn="products"===q.place,ln="trash"===q.place,an="files"===q.place,rn=an?q.folderId:null,tn=nn&&q.nodeId?We.get(q.nodeId)?.path[0]:void 0,on=e=>e?.sharedFrom?`${Re.readOnly} ${Re.editedAtHq(e.sharedFrom)}`:Re.readOnly,dn=R(()=>ie.map(e=>e.id),[ie]),sn=R(()=>new Map(ie.map(e=>[e.id,e])),[ie]),cn=v(dn),un=R(()=>dn.filter(e=>cn.selected.has(e)),[dn,cn.selected]),mn=1===un.length?sn.get(un[0]):void 0,hn=P(!0);V(()=>{hn.current?hn.current=!1:cn.clear()},[_e]);const pn=me?.join("\0");V(()=>{me&&cn.setSelection(me)},[pn]);const fn=P(pn??""),gn=un.join("\0");V(()=>{fn.current!==gn&&(fn.current=gn,he?.(un))},[gn]);const vn=(e,n={})=>{Ue?cn.select(e):cn.select(e,{ctrl:!(!n.ctrlKey&&!n.metaKey),shift:!!n.shiftKey})},[kn,yn]=U(null),bn=e=>{const n=kn;if(yn(null),!n||null==e)return;e!==("folder"===n.kind?Xe.get(n.id)?.name:sn.get(n.id)?.name)&&xe?.(n,e)},wn=async e=>{if(!we)return;const n=await we(e);qe(["@files",...e?[e]:[]]),"string"==typeof n&&yn({kind:"folder",id:n})},xn=M(e=>{const n=[],l=n=>{if("files"===e.kind)return n===rn&&an?Re.alreadyHere:void 0;const l=Xe.get(e.id);return n===e.id||n&&Ze(n,e.id)?Re.notIntoItself:(l?.parentId??null)===n?Re.folderAlreadyHere:void 0};n.push({key:s,label:Re.allFiles,disabledReason:l(null)});const a=(e,i)=>{for(const r of Ye.get(e)??[])n.push({key:r.id,label:r.name,depth:i,disabledReason:l(r.id)}),a(r.id,i+1)};return a(null,1),n},[Ye,Xe,an,Ze,rn,Re]),Cn=M(e=>{const n=new Set(e.map(e=>sn.get(e)?.kind??"image"));return 1===n.size?[...n][0]:"file"},[sn]),[Nn,In]=U(null),Dn={words:Re,media:Me,denied:fe,moveTargets:xn,kindOf:Cn,urlOf:e=>sn.get(e)?.url,newSubfolder:we&&Ve?e=>{wn(e)}:void 0,rename:xe&&Ve?e=>{"file"!==e.kind||cn.isSelected(e.id)||cn.select(e.id),yn(e)}:void 0,move:Ce&&Ve?Ce:void 0,trash:Ne&&Ve?Ne:void 0,deleteFolder:Ie&&Ve?Ie:void 0,folderNotEmpty:e=>!!Xe.get(e)?.notEmpty,replace:ze&&Ve?ze:void 0,copyUrl:e=>{const n=sn.get(e)?.url;n&&y(Re.urlLabel,n)},openInDesign:Oe,restore:De,deleteForever:Se},Sn=e=>c(e,Dn),jn=w(),zn=(e,n)=>{Ue||(cn.isSelected(e)||cn.select(e),jn.open(n,(e=>{const n=cn.isSelected(e)?un:[e];return nn?{kind:"render",id:e}:ln?{kind:"trashed",ids:n}:{kind:"files",ids:n}})(e)))},[Fn,On]=U(null),[Tn,Ln]=U(null),[An,En]=U(null);V(()=>{if(!Tn&&!Fn)return;const e=()=>{Ln(null),On(null)};return window.addEventListener("dragend",e),window.addEventListener("drop",e),()=>{window.removeEventListener("dragend",e),window.removeEventListener("drop",e)}},[Tn,Fn]);const Pn=(e,n)=>Array.from(e.dataTransfer?.types??[]).includes(n),Rn=(e,n)=>!(!Ce||fe.move||Ue)&&(!!Pn(e,W)||!(!Pn(e,X)||!An)&&(n!==An&&!(n&&Ze(n,An)))),Mn=(e,n)=>({onDragEnter:l=>{Rn(l,n)&&(l.preventDefault(),On(e))},onDragOver:l=>{Rn(l,n)&&(l.preventDefault(),l.dataTransfer.dropEffect="move",Fn!==e&&On(e))},onDragLeave:n=>{const l=n.relatedTarget;l&&n.currentTarget.contains(l)||On(n=>n===e?null:n)},onDrop:e=>{if(Rn(e,n))if(e.preventDefault(),On(null),Pn(e,W)){let l;try{l=JSON.parse(e.dataTransfer.getData(W))}catch{l=null}Array.isArray(l)&&l.length&&Ce({kind:"files",ids:l.map(String)},n)}else An&&(Ce({kind:"folder",id:An},n),En(null))}}),Un=e=>{const n=e=>Pn(e,W)||Pn(e,X)||Pn(e,"Files");return{onDragEnter:l=>{n(l)&&Ln(e)},onDragOver:l=>{n(l)&&Tn!==e&&Ln(e)},onDragLeave:n=>{const l=n.relatedTarget;l&&n.currentTarget.contains(l)||Ln(n=>n===e?null:n)}}},Vn=(e,n,l)=>/* @__PURE__ */K(T,{side:"right",content:Tn===e?Re.noDropProducts:on(l),open:Tn===e||!Tn&&void 0,children:/* @__PURE__ */K("span",{children:n})}),Bn=e=>({onContextMenu:n=>{jn.open(n,e)}}),Jn=(e,a,i)=>e.map(e=>{const r=`p:${e.id}`,t=i??e,o=Ge.has(r),d=e.children?.length?e.children:null;/* @__PURE__ */
|
|
2
|
+
return B("div",{role:"none",className:"contents",children:[
|
|
3
|
+
/* @__PURE__ */K(n,{label:Vn(r,e.name,t),level:a,icon:d&&o?G.folderOpen:G.folder,count:e.count,countLabel:null!=e.count?e.countLabel??Re.fileCount(e.count):void 0,selected:nn&&q.nodeId===e.id,expanded:d?o:void 0,onToggle:d?()=>$e(r):void 0,onSelect:()=>_({place:"products",nodeId:e.id}),rowProps:{"data-media-row":r,...Un(r),...Ve?Bn({kind:"product-node",id:e.id}):{}}}),d&&o&&/* @__PURE__ */K(l,{children:Jn(d,a+1,t)})]},e.id)}),Kn=(e,a)=>(Ye.get(e)??[]).map(e=>{const i=Ye.get(e.id),r=Ge.has(e.id),t="folder"===kn?.kind&&kn.id===e.id,o=Sn({kind:"folder",id:e.id});/* @__PURE__ */
|
|
4
|
+
return B("div",{role:"none",className:"contents",children:[
|
|
5
|
+
/* @__PURE__ */K(n,{label:e.name,level:a,icon:i&&r?G.folderOpen:G.folder,count:e.count,countLabel:null!=e.count?e.countLabel??Re.fileCount(e.count):void 0,selected:t||an&&q.folderId===e.id,expanded:i?r:void 0,onToggle:i?()=>$e(e.id):void 0,onSelect:()=>_({place:"files",folderId:e.id}),drop:Fn===e.id?"into":void 0,dragging:An===e.id,draggable:Ve&&!!Ce&&!fe.move,rename:t?/* @__PURE__ */K(m,{value:e.name,label:Re.folderName,onDone:bn}):void 0,actions:Ve&&o.length?/* @__PURE__ */K(I,{align:"end","aria-label":Re.folderActions,trigger:G.more,items:o}):void 0,rowProps:{"data-media-row":e.id,...Mn(e.id,e.id),...Ve?Bn({kind:"folder",id:e.id}):{},...Ve&&Ce&&!fe.move?{draggable:!0,onDragStart:n=>{n.dataTransfer.effectAllowed="move",n.dataTransfer.setData(X,e.id),En(e.id)},onDragEnd:()=>{En(null),On(null)}}:{}}}),i&&r&&/* @__PURE__ */K(l,{children:Kn(e.id,a+1)})]},e.id)}),Wn=Ge.has("@files"),Xn=Ge.has("@products"),Yn=/* @__PURE__ */B(e,{"aria-label":Re.folders,children:[ne&&/* @__PURE__ */B(J,{children:[
|
|
6
|
+
/* @__PURE__ */K(n,{label:Vn("@products",Re.products),level:1,icon:G.lock,badge:{label:Re.readOnlyBadge,tone:"neutral"},expanded:ne.length?Xn:void 0,onToggle:()=>$e("@products"),selected:nn&&null==q.nodeId,onSelect:()=>_({place:"products",nodeId:null}),rowProps:{"data-media-row":"@products",...Un("@products")}}),Xn&&ne.length>0&&/* @__PURE__ */K(l,{children:Jn(ne,2)})]}),
|
|
7
|
+
/* @__PURE__ */K(n,{label:Re.allFiles,level:1,icon:Wn?G.folderOpen:G.folder,count:le,countLabel:null!=le?Re.fileCount(le):void 0,expanded:Ye.get(null)?.length?Wn:void 0,onToggle:()=>$e("@files"),selected:an&&null==q.folderId,onSelect:()=>_({place:"files",folderId:null}),drop:"@files"===Fn?"into":void 0,rowProps:{"data-media-row":"@files",...Mn("@files",null)}}),Wn&&(Ye.get(null)?.length??0)>0&&/* @__PURE__ */K(l,{children:Kn(null,2)}),Ve&&/* @__PURE__ */K(n,{label:Re.trash,level:1,icon:G.trash,count:ae,countLabel:null!=ae?Re.fileCount(ae):void 0,selected:ln,onSelect:()=>_({place:"trash"}),rowProps:{"data-media-row":"@trash"}})]}),Hn=(()=>{if(ln)return[{label:Re.trash}];if(nn){const e=q.nodeId?We.get(q.nodeId)?.path??[]:[];return[{label:Re.products,onClick:e.length?()=>_({place:"products",nodeId:null}):void 0},...e.map((n,l)=>({label:n.name,onClick:l<e.length-1?()=>_({place:"products",nodeId:n.id}):void 0}))]}const e=He(rn);return[{label:Re.allFiles,onClick:e.length?()=>_({place:"files",folderId:null}):void 0},...e.map((n,l)=>({label:n.name,onClick:l<e.length-1?()=>_({place:"files",folderId:n.id}):void 0}))]})(),Zn=nn?Re.readOnly:fe.upload,Gn=!!be&&!ln&&!Zn,Qn=S({accept:ge,maxSizeBytes:ve,multiple:!0,disabled:!Gn,onAccept:e=>be?.(e,rn)}),$n=nn?Re.noProductFolder:fe.newFolder,qn=e=>e?{"aria-disabled":!0,disabledReason:e}:{},_n=/* @__PURE__ */B("div",{className:"flex flex-wrap items-center gap-2",children:[Ve&&we&&!ln&&/* @__PURE__ */K(F,{variant:"secondary",size:"sm",leftIcon:G.folderPlus,onClick:()=>{wn(rn)},...qn($n),children:Re.newFolder}),be&&!ln&&/* @__PURE__ */K(F,{variant:"primary",size:"sm",leftIcon:G.upload,onClick:()=>Qn.open(),...qn(Zn),children:Re.upload}),Ve&&ln&&je&&ie.length>0&&/* @__PURE__ */K(F,{variant:"danger",size:"sm",onClick:je,...qn(fe.deleteForever),children:Re.emptyTrash})]}),el=(e,n,l,a,i)=>/* @__PURE__ */K("div",{style:{width:Ke?void 0:i,flex:Ke?"1 1 120px":"0 0 auto",minWidth:0},children:/* @__PURE__ */K(h,{size:"sm","aria-label":e,value:n,onChange:a,options:l})},e),nl=e=>n=>de?.({...oe,[e]:n}),ll=/* @__PURE__ */B("div",{className:"flex flex-wrap items-center gap-2",children:[te&&/* @__PURE__ */K("div",{style:{flex:"1 1 200px",minWidth:0},children:/* @__PURE__ */K(N,{size:"sm",type:"search",leftIcon:G.search,placeholder:nn?Re.searchProducts:Re.search,"aria-label":nn?Re.searchProducts:Re.search,value:re??"",onChange:e=>te(e.target.value)})}),de&&el(Re.mediaType,oe.type,[{value:"all",label:Re.allTypes},{value:"image",label:Re.images},{value:"video",label:Re.videos},{value:"svg",label:"SVG"},{value:"gif",label:"GIF"}],nl("type"),130),de&&!nn&&!ln&&el(Re.use,oe.use,[{value:"any",label:Re.anyUse},{value:"email",label:Re.emailOnly},{value:"website",label:Re.websiteOnly},{value:"unused",label:Re.notUsed}],nl("use"),130),de&&Ve&&el(Re.sort,oe.sort,[{value:"newest",label:Re.newest},{value:"name",label:Re.byName},{value:"size",label:Re.bySize}],nl("sort"),110),se?.map(e=>el(e.label,e.value,e.options,e.onChange,120)),ue&&/* @__PURE__ */K(g,{size:"sm",label:Re.view,value:ce,onChange:ue,options:[{value:"grid",label:Re.grid,icon:G.grid},{value:"list",label:Re.list,icon:G.list}]})]}),al=e=>{const n=[];return null!=e.trashedDaysAgo&&n.push({key:"t",label:Re.daysAgo(e.trashedDaysAgo),count:e.trashedDaysAgo,icon:Q.clock,tone:"neutral"}),e.usedCount&&n.push({key:"u",label:Re.used(e.usedCount),count:e.usedCount,icon:Q.link,tone:"active"}),e.email&&n.push({key:"e",label:Re.email,icon:Q.email,tone:"queued"}),e.private&&n.push({key:"p",label:Re.private,icon:Q.lock,tone:"neutral"}),n},il=e=>al(e).map(e=>/* @__PURE__ */K(z,{tone:e.tone,size:"xs",children:e.label},e.key)),rl=Ve&&an&&!!Ce&&!fe.move,tl=!!Ee&&!ln,ol=e=>!tl||e.private||e.pickDisabledReason?void 0:JSON.stringify({id:e.id,url:e.url,kind:"video"===e.kind?"video":"image",name:e.name}),dl=ie.map(e=>({id:e.id,url:e.thumbUrl??e.url,name:e.name,kind:e.kind,caption:e.name,badges:al(e),dragData:rl?JSON.stringify(cn.isSelected(e.id)?un:[e.id]):ol(e),...rl&&ol(e)?{dragAlso:{[Y]:ol(e)}}:{}})),sl=Ke?Math.max(72,Math.floor((Je-24-16-1)/3)):112,cl=P(null),ul=k({containerRef:cl,enabled:Ve&&!Ke&&ie.length>0,selected:cn.selected,setSelection:e=>cn.setSelection(e),clearSelection:cn.clear}),ml=e=>{if(Ue){const n=sn.get(e);return void(!n||n.private||n.pickDisabledReason||Te?.(n))}const n=dn.indexOf(e);n>=0&&In(n)},hl=ie.length?null:re?/* @__PURE__ */K(i,{variant:"dashed",title:Re.noMatches}):nn?/* @__PURE__ */K(i,{variant:"dashed",title:Re.emptyProducts,description:on(tn)}):ln?/* @__PURE__ */K(i,{variant:"dashed",title:Re.trashEmpty}):!Gn||Ue?/* @__PURE__ */K(i,{variant:"dashed",title:Re.emptyFolder}):null,pl="list"===ce&&ie.length>0,fl=hl??(pl?/* @__PURE__ */K("ul",{role:"listbox","aria-multiselectable":Ve||void 0,"aria-label":Re.folders,className:"flex flex-col gap-1",children:ie.map(e=>/* @__PURE__ */B("li",{role:"option","aria-selected":cn.isSelected(e.id),tabIndex:0,"data-grid-item":"","data-grid-id":e.id,onClick:n=>vn(e.id,n),onDoubleClick:()=>ml(e.id),onContextMenu:n=>zn(e.id,n),draggable:!!ol(e)||void 0,onDragStart:ol(e)?n=>{n.dataTransfer.effectAllowed="link",n.dataTransfer.setData(Y,ol(e)),Ee("start")}:void 0,onDragEnd:ol(e)?e=>Ee("none"===e.dataTransfer.dropEffect?"cancelled":"dropped"):void 0,onKeyDown:n=>{"Enter"!==n.key&&" "!==n.key||(n.preventDefault(),vn(e.id,n))},className:"flex h-12 cursor-pointer items-center gap-3 rounded-md px-2 text-sm rosh-focus-ring focus-visible:ring-2 focus-visible:ring-[color:var(--rosh-focus-ring-solid)] "+(cn.isSelected(e.id)?"bg-accent-tint text-blue-700":"text-ink hover:bg-gray-100"),children:[
|
|
8
|
+
/* @__PURE__ */K("img",{src:e.thumbUrl??e.url,alt:"",className:"h-10 w-10 shrink-0 rounded bg-gray-100 object-contain"}),
|
|
9
|
+
/* @__PURE__ */K("span",{className:"min-w-0 flex-1 truncate",children:e.name}),
|
|
10
|
+
/* @__PURE__ */K("span",{className:"flex shrink-0 items-center gap-1",children:il(e)}),e.sizeLabel&&/* @__PURE__ */K("span",{className:"w-16 shrink-0 text-right text-xs text-ink-faint",children:e.sizeLabel})]},e.id))}):/* @__PURE__ */K(p,{items:dl,readOnly:!Gn||Ue,onFiles:Gn&&!Ue?e=>be(e,rn):void 0,accept:ge,maxSizeBytes:ve,busy:ke,progress:ye,fit:"contain",thumbSize:sl,dragType:rl?W:tl?Y:void 0,onDragOutChange:tl?e=>Ee(e):void 0,selected:cn.selected,onItemClick:vn,onItemDoubleClick:ml,onItemContextMenu:Ve?zn:void 0,menuOnMedia:Ve})),gl=u({count:un.length,kind:Cn(un),targets:xn({kind:"files",ids:un}),onPick:e=>Ce?.({kind:"files",ids:un},e.key===s?null:e.key)}),vl=L({variant:"secondary",size:"sm"}),kl=/* @__PURE__ */K(I,{align:"start",triggerClassName:vl,trigger:/* @__PURE__ */B(J,{children:[G.folder,Re.moveTo]}),items:gl,disabled:!!fe.move}),yl=Ve&&un.length>1&&!nn?/* @__PURE__ */B("div",{"data-media-bulk":"",className:"flex flex-wrap items-center gap-2 rounded-lg border border-line px-3 py-2",children:[
|
|
11
|
+
/* @__PURE__ */K(b,{checked:un.length===ie.length,indeterminate:un.length<ie.length,onChange:e=>e?cn.selectAll():cn.clear(),label:Re.selected(un.length)}),/* @__PURE__ */B(J,ln?{children:[De&&/* @__PURE__ */K(F,{variant:"secondary",size:"sm",leftIcon:G.undo,onClick:()=>De(un),...qn(fe.restore),children:Re.restore}),Se&&/* @__PURE__ */K(F,{variant:"secondary-danger",size:"sm",onClick:()=>Se(un),...qn(fe.deleteForever),children:Re.deleteForever})]}:{children:[Ce&&kl,xe&&/* @__PURE__ */K(F,{variant:"secondary",size:"sm",leftIcon:G.edit,disabled:!0,children:Re.rename}),Ne&&/* @__PURE__ */K(F,{variant:"secondary",size:"sm",leftIcon:G.trash,onClick:()=>Ne({kind:"files",ids:un}),...qn(fe.trash),children:Re.moveFilesToTrash(un.length)})]}),
|
|
12
|
+
/* @__PURE__ */K(F,{variant:"ghost",size:"sm",onClick:cn.clear,children:Re.clearSelection})]}):null,bl=e=>{const n=[],l=(e,l,a)=>{null!=a&&""!==a&&n.push({key:e,label:l,value:a})},a="file"===kn?.kind&&kn.id===e.id;l("name",Re.name,a?/* @__PURE__ */K(m,{value:e.name,label:Re.fileName,onDone:bn}):e.name),l("type",Re.type,e.typeLabel),l("size",Re.size,e.sizeLabel),l("resolution",Re.resolution,e.resolution),nn?(l("design",Re.design,e.design),l("finish",Re.finish,e.finish),l("angle",Re.angleLug,e.angleLug),l("owner",Re.owner,e.owner)):(l("added",Re.addedBy,e.addedBy),l("folder",Re.folder,e.folderPath)),l("used",Re.usedIn,null!=e.usedCount?Re.places(e.usedCount):void 0);const i=c({kind:"files",ids:[e.id]},Dn).find(e=>"submenu"===e.type);/* @__PURE__ */
|
|
13
|
+
return B("div",{"data-media-details":"",className:"flex flex-col gap-3",children:[
|
|
14
|
+
/* @__PURE__ */K("img",{src:e.url,alt:e.name,className:"aspect-square w-full rounded-lg bg-gray-100 object-contain"}),nn&&/* @__PURE__ */K(C,{tone:"neutral",title:Re.readOnlyBadge,children:on(tn)}),
|
|
15
|
+
/* @__PURE__ */K(t,{size:"sm",columns:1,items:n}),!ln&&/* @__PURE__ */B("div",{className:"flex gap-2",children:[
|
|
16
|
+
/* @__PURE__ */K("div",{style:{flex:"1 1 0",minWidth:0},children:/* @__PURE__ */K(N,{size:"sm",readOnly:!0,value:e.url,"aria-label":Re.fileUrl,onFocus:e=>e.currentTarget.select()})}),
|
|
17
|
+
/* @__PURE__ */K(F,{variant:"secondary",size:"sm",leftIcon:G.copy,onClick:()=>Dn.copyUrl(e.id),children:Re.copyUrl})]}),an&&Ve&&/* @__PURE__ */B("div",{className:"flex flex-wrap gap-2",children:[ze&&/* @__PURE__ */K(F,{variant:"secondary",size:"sm",leftIcon:G.swap,onClick:()=>ze(e.id),...qn(fe.replace),children:Re.replace}),Fe&&/* @__PURE__ */K(F,{variant:"secondary",size:"sm",leftIcon:G.crop,onClick:()=>Fe(e.id),children:Re.cropEdit}),Ce&&"submenu"===i?.type&&/* @__PURE__ */K(I,{align:"start",triggerClassName:vl,trigger:/* @__PURE__ */B(J,{children:[G.folder,Re.moveTo]}),items:i.items,disabled:!!fe.move}),xe&&/* @__PURE__ */K(F,{variant:"secondary",size:"sm",leftIcon:G.edit,onClick:()=>yn({kind:"file",id:e.id}),...qn(fe.rename),children:Re.rename}),Ne&&/* @__PURE__ */K(D,{"aria-label":Re.moveToTrash,size:"sm",onClick:()=>Ne({kind:"files",ids:[e.id]}),disabledReason:fe.trash,"aria-disabled":!!fe.trash||void 0,children:G.trash})]}),ln&&Ve&&/* @__PURE__ */B("div",{className:"flex flex-wrap gap-2",children:[De&&/* @__PURE__ */K(F,{variant:"primary",size:"sm",leftIcon:G.undo,onClick:()=>De([e.id]),...qn(fe.restore),children:Re.restore}),Se&&/* @__PURE__ */K(F,{variant:"danger",size:"sm",onClick:()=>Se([e.id]),...qn(fe.deleteForever),children:Re.deleteForever})]}),nn&&Oe&&/* @__PURE__ */K(F,{variant:"secondary",size:"sm",leftIcon:G.external,onClick:()=>Oe({kind:"render",id:e.id}),children:Re.openInDesign}),pe&&/* @__PURE__ */K(f,{items:pe})]})},wl=mn?mn.private?Re.privateNoPick:mn.pickDisabledReason:void 0,xl=Ue?/* @__PURE__ */B("div",{"data-media-picker-footer":"",className:"flex flex-wrap items-center justify-between gap-2 border-t border-line px-3 py-2",children:[
|
|
18
|
+
/* @__PURE__ */K("span",{className:"min-w-0 truncate text-sm text-ink-faint",children:mn?Re.oneChosen(mn.name):Re.noneChosen}),
|
|
19
|
+
/* @__PURE__ */B("div",{className:"flex gap-2",children:[Le&&/* @__PURE__ */K(F,{variant:"secondary",size:"sm",onClick:Le,children:Re.cancel}),
|
|
20
|
+
/* @__PURE__ */K(F,{variant:"primary",size:"sm",disabled:!mn,...qn(wl),onClick:()=>{mn&&!wl&&Te?.(mn)},children:Re.chooseImage})]})]}):null,Cl=Ve&&!!mn,Nl=/* @__PURE__ */B("div",{className:"flex min-w-0 flex-col gap-3",children:[Ae&&/* @__PURE__ */K(C,{tone:"neutral",children:Ae}),
|
|
21
|
+
/* @__PURE__ */B("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[
|
|
22
|
+
/* @__PURE__ */K(d,{items:Hn}),_n]}),ll,yl,
|
|
23
|
+
/* @__PURE__ */B("div",{ref:cl,className:"relative",onPointerDown:ul.onPointerDown,onKeyDown:e=>{Ve&&(e.ctrlKey||e.metaKey)&&"a"===e.key.toLowerCase()?(e.preventDefault(),cn.selectAll()):"Escape"===e.key&&cn.size&&cn.clear()},children:[fl,
|
|
24
|
+
/* @__PURE__ */K(a,{rect:ul.rect})]}),Gn&&/* @__PURE__ */K("input",{...Qn.inputProps}),
|
|
25
|
+
/* @__PURE__ */K(j,{rejections:Qn.rejections})]});/* @__PURE__ */
|
|
26
|
+
return B("div",{ref:Be,"data-media-library":"","data-layout":Ke?"phone":"wide",className:`flex h-full min-h-0 min-w-0 flex-col ${Pe}`.trim(),children:[/* @__PURE__ */B("div",Ke?{className:"flex flex-col gap-3 p-3",children:[Yn,Nl]}:{className:"flex min-h-0 min-w-0 flex-1",children:[
|
|
27
|
+
/* @__PURE__ */K("div",{className:"shrink-0 overflow-y-auto border-r border-line p-3",style:{width:280,"--rosh-tree-ground":"var(--surface)"},children:Yn}),
|
|
28
|
+
/* @__PURE__ */K("div",{className:"min-w-0 flex-1 overflow-y-auto p-3",children:Nl}),Cl&&/* @__PURE__ */K("div",{className:"shrink-0 overflow-y-auto border-l border-line p-3",style:{width:300},children:bl(mn)})]}),xl,Ke&&/* @__PURE__ */K(o,{open:Cl,onClose:cn.clear,side:"bottom",title:mn?.name,children:mn&&bl(mn)}),jn.state&&/* @__PURE__ */K(x,{...jn.props,items:Sn(jn.state.data)}),null!=Nn&&ie.length>0&&/* @__PURE__ */K(r,{images:ie.map(e=>({url:e.url,caption:e.name})),startIndex:Math.min(Nn,ie.length-1),onClose:()=>In(null)})]})}export{W as MEDIA_FILES_DRAG_TYPE,Y as MEDIA_FILE_DRAG_TYPE,X as MEDIA_FOLDER_DRAG_TYPE,$ as MediaLibrary,H as readMediaFileDrag};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Tooltip as e}from"./chunk-
|
|
2
|
-
return s(e,{content:z??
|
|
1
|
+
import{Tooltip as e}from"./chunk-SOZCWT6I.js";import{useBrowserLayoutEffect as r}from"./chunk-D65T4H6J.js";import{useShellStrings as t}from"./chunk-TJSJVC6P.js";import{useRef as o,useEffect as n,useCallback as i}from"react";import{jsx as s}from"react/jsx-runtime";var a=(e,r,t)=>Math.min(t,Math.max(r,e));function l(e,r,t,o,n){return Math.round(a("left"===t||"top"===t?e+r:e-r,o,n))}function u(e,r,t){let o=null;try{o=window.localStorage.getItem(e)}catch{return null}const n=o?parseInt(o,10):NaN;return Number.isNaN(n)?null:a(n,r,t)}function c({width:c,onResize:d,orientation:h="vertical",side:m,min:f,max:p,defaultWidth:v=f,step:g=16,storageKey:b,label:w,hint:z,controls:y,className:x=""}){const P="horizontal"===h,k=t().resizeHandle,N=o(null),C=o({onResize:d,min:f,max:p,side:m});C.current={onResize:d,min:f,max:p,side:m},r(()=>{if(!b)return;const e=u(b,f,p);null!==e&&e!==c&&d(e)},[b]),n(()=>{if(!b)return;const e=window.setTimeout(()=>{try{window.localStorage.setItem(b,String(Math.round(c)))}catch{}},200);return()=>window.clearTimeout(e)},[c,b]);const T=i(()=>{N.current=null,document.body.style.removeProperty("cursor"),document.body.style.removeProperty("user-select")},[]);n(()=>T,[T]);const D=e=>{N.current&&(e.currentTarget.hasPointerCapture?.(N.current.pointer)&&e.currentTarget.releasePointerCapture(N.current.pointer),T())},I="left"===m?"right-0":"right"===m?"left-0":"top"===m?"bottom-0":"top-0",M="left"===m?"right":"right"===m?"left":"top"===m?"bottom":"top",S=P?`absolute inset-x-0 ${I} z-10 flex h-2`:`absolute inset-y-0 ${I} z-10 flex w-2`;/* @__PURE__ */
|
|
2
|
+
return s(e,{content:z??k.hint,side:M,delay:600,className:`${S} ${x}`.trim(),children:/* @__PURE__ */s("div",{role:"separator",tabIndex:0,"aria-orientation":h,"aria-label":w??k.label,"aria-valuenow":Math.round(c),"aria-valuemin":f,"aria-valuemax":p,"aria-controls":y,"data-resize-handle":m,onPointerDown:e=>{0===e.button&&(e.preventDefault(),N.current={x:P?e.clientY:e.clientX,width:c,moved:!1,pointer:e.pointerId},e.currentTarget.setPointerCapture?.(e.pointerId),document.body.style.cursor=P?"row-resize":"col-resize",document.body.style.userSelect="none")},onPointerMove:e=>{const r=N.current;if(!r)return;if(0===e.buttons)return void T();const t=(P?e.clientY:e.clientX)-r.x;if(!r.moved){if(Math.abs(t)<3)return;r.moved=!0}const{onResize:o,min:n,max:i,side:s}=C.current;o(l(r.width,t,s,n,i))},onPointerUp:D,onPointerCancel:D,onLostPointerCapture:()=>{N.current&&T()},onDoubleClick:()=>d(a(v,f,p)),onKeyDown:e=>{const r=P?"ArrowDown":"ArrowRight",t=P?"ArrowUp":"ArrowLeft",o=e.key===r?g:e.key===t?-g:null,n=null!==o?l(c,o,m,f,p):"Home"===e.key?f:"End"===e.key?p:"Enter"===e.key?a(v,f,p):null;null!==n&&(e.preventDefault(),n!==c&&d(n))},className:P?"group/resize relative h-full w-full cursor-row-resize touch-none rosh-focus-ring focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[color:var(--rosh-focus-ring-solid)]":"group/resize relative h-full w-full cursor-col-resize touch-none rosh-focus-ring focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-[color:var(--rosh-focus-ring-solid)]",children:/* @__PURE__ */s("div",{"aria-hidden":"true",className:P?`absolute inset-x-0 ${I} h-px bg-transparent transition-colors group-hover/resize:bg-[var(--accent-500,var(--rosh-resize-handle))] group-focus-visible/resize:h-0.5 group-focus-visible/resize:bg-[var(--accent-500,var(--rosh-resize-handle))]`:`absolute inset-y-0 ${I} w-px bg-transparent transition-colors group-hover/resize:bg-[var(--accent-500,var(--rosh-resize-handle))] group-focus-visible/resize:w-0.5 group-focus-visible/resize:bg-[var(--accent-500,var(--rosh-resize-handle))]`})})})}export{c as ResizeHandle,u as readStoredWidth,l as resizedWidth};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{useShellStrings as t,useShellLocale as e}from"./chunk-
|
|
1
|
+
import{useShellStrings as t,useShellLocale as e}from"./chunk-TJSJVC6P.js";import{formatPlain as a}from"./chunk-C3QOHMR6.js";import{jsxs as n,jsx as r}from"react/jsx-runtime";var o="inline-flex h-8 min-w-8 items-center justify-center rounded-md px-2 text-sm transition-colors disabled:cursor-not-allowed disabled:opacity-40";function l({page:l,pageCount:i,onPageChange:s,siblingCount:c=1,showEdges:b=!1,className:u=""}){const d=t().pagination,g=e();if(i<=1)return null;const m=function(t,e,a){const n=/* @__PURE__ */new Set([1,e]);for(let r=t-a;r<=t+a;r++)r>=1&&r<=e&&n.add(r);const r=[...n].sort((t,e)=>t-e),o=[];let l=0;for(const t of r)l&&t-l>1&&o.push("…"),o.push(t),l=t;return o}(l,i,c),p=t=>{t>=1&&t<=i&&t!==l&&s(t)};/* @__PURE__ */
|
|
2
2
|
return n("nav",{"aria-label":d.label,className:`flex items-center gap-1 ${u}`.trim(),children:[b&&/* @__PURE__ */r("button",{type:"button","aria-label":d.first,disabled:1===l,onClick:()=>p(1),className:`${o} text-gray-600 hover:bg-gray-100`,children:"«"}),
|
|
3
3
|
/* @__PURE__ */r("button",{type:"button","aria-label":d.previous,disabled:1===l,onClick:()=>p(l-1),className:`${o} text-gray-600 hover:bg-gray-100`,children:"‹"}),m.map((t,e)=>"…"===t?/* @__PURE__ */r("span",{className:"px-1 text-gray-400",children:"…"},`gap-${e}`):/* @__PURE__ */r("button",{type:"button","aria-current":t===l?"page":void 0,onClick:()=>p(t),className:`${o} ${t===l?"bg-blue-600 font-medium text-white":"text-gray-700 hover:bg-gray-100"}`,children:a(t,g)},t)),
|
|
4
4
|
/* @__PURE__ */r("button",{type:"button","aria-label":d.next,disabled:l===i,onClick:()=>p(l+1),className:`${o} text-gray-600 hover:bg-gray-100`,children:"›"}),b&&/* @__PURE__ */r("button",{type:"button","aria-label":d.last,disabled:l===i,onClick:()=>p(i),className:`${o} text-gray-600 hover:bg-gray-100`,children:"»"})]})}export{l as Pagination};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{isAriaDisabled as e,swallowPress as a,describedByWith as r,OffWithReason as i}from"./chunk-M5K4AX4E.js";import{SpinnerRing as s}from"./chunk-R2VKEMZH.js";import{buttonClasses as l}from"./chunk-UQYNPYF4.js";import{forwardRef as d,useId as n}from"react";import{jsxs as t,jsx as c}from"react/jsx-runtime";var o=d(function({variant:d="primary",size:o="md",loading:m=!1,leftIcon:p,rightIcon:b,block:f=!1,disabled:u,type:h="button",children:k,className:x="",disabledReason:N,onClick:y,pressed:v,"aria-disabled":g,"aria-describedby":j,...w},z){const C=n(),E=u||m,I=null!=N&&""!==N,K=E&&I,M=!E&&e(g),R=M&&I,Y=K||R?C:void 0,A=/* @__PURE__ */t("button",{ref:z,type:h,disabled:E,"aria-busy":m||void 0,"aria-disabled":!!M||g,"aria-describedby":r(j,Y),onClick:M?a:y,className:l({variant:d,size:o,block:f,pressed:v??(!0===w["aria-pressed"]||"true"===w["aria-pressed"]),className:x}),...w,children:[m?/* @__PURE__ */c(s,{className:"h-3.5 w-3.5",ink:""}):p,k,!m&&b]});return R?/* @__PURE__ */c(i,{reason:N,id:C,block:f,children:A}):K?/* @__PURE__ */t("span",{className:f?"flex w-full flex-col gap-1":"inline-flex flex-col items-start gap-1",children:[A,
|
|
2
|
+
/* @__PURE__ */c("span",{id:Y,className:"text-xs text-red-600",children:N})]}):A});export{o as Button_default};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{resolveColumnShares as e,COLUMN_SHARES_EQUAL as t,COLUMN_SHARE_MIN as r,COLUMN_COUNT_MAX as n}from"./chunk-PLGJOHEG.js";import{InputNumber_default as o}from"./chunk-4GTXRVDF.js";import{Tooltip as i}from"./chunk-SOZCWT6I.js";import{useShellStrings as l}from"./chunk-TJSJVC6P.js";import{useId as a,useRef as s,useState as c,useEffect as u,Fragment as d}from"react";import{jsxs as h,jsx as f}from"react/jsx-runtime";var m=(e,t,r)=>Math.min(r,Math.max(t,e)),p=e=>e.reduce((e,t)=>e+t,0),v=(e,t)=>e.length===t.length&&e.every((e,r)=>e===t[r]);var g,b="w-0.5",y=`${b} group-hover/widths:w-1 group-focus-visible/widths:w-1`;var w=["text-blue-700","text-gray-600"];function x({count:x,value:$,onChange:k,label:C,"aria-labelledby":N,readOnly:P=!1,disabled:M=!1,className:R=""}){const j=l().widths,S=a(),T=m(Math.round(x)||1,1,n),z=e($,T),A=z??[...t[T]??[]],B=[...A,100-p(A)],D=P||M,O=s(null),K=s({onChange:k,shown:A,locked:D,n:T,stored:z});K.current={onChange:k,shown:A,locked:D,n:T,stored:z};const E=t=>{const{onChange:r,shown:n,locked:o,n:i}=K.current;if(o)return!1;const l=e(t,i);return!(!l||v(l,n))&&(r(l),!0)},I=(e,t,n)=>{const o=e[t]+e[t+1],i=[...e];i[t]=m(Math.round(n),r,o-r),i[t+1]=o-i[t],E(i.slice(0,-1))&&(ne.current=null)},F=e=>t=>{if(t.altKey||t.ctrlKey||t.metaKey)return;const n=t.shiftKey?10:1,o=B[e]+B[e+1],i="ArrowRight"===t.key?B[e]+n:"ArrowLeft"===t.key?B[e]-n:"PageUp"===t.key?B[e]+10:"PageDown"===t.key?B[e]-10:"Home"===t.key?r:"End"===t.key?o-r:null;null!==i&&(t.preventDefault(),I(B,e,i))},G=s(null),[H,J]=c(null),L=()=>{G.current=null,J(null),document.body.style.removeProperty("cursor"),document.body.style.removeProperty("user-select")};u(()=>L,[]);const V=e=>t=>{if(0!==t.button||D)return;t.preventDefault();const r=O.current?.getBoundingClientRect().width??0;r<=0||(G.current={i:e,x:t.clientX,width:r,from:B,moved:!1,pointer:t.pointerId},J(e),t.currentTarget.setPointerCapture?.(t.pointerId),document.body.style.cursor="col-resize",document.body.style.userSelect="none")},W=e=>{const t=G.current;if(!t)return;if(0===e.buttons)return void L();const r=e.clientX-t.x;if(!t.moved){if(Math.abs(r)<3)return;t.moved=!0}I(t.from,t.i,t.from[t.i]+r/t.width*100)},X=e=>{const t=G.current;t&&(e.currentTarget.hasPointerCapture?.(t.pointer)&&e.currentTarget.releasePointerCapture(t.pointer),L())},U=(e,t)=>{const{shown:n}=K.current,o=function(e,t,n){const o=e.length,i=[...e];if(o<2)return i;const l=m(Math.round(n),r,100-(o-1)*r);let a=l-i[t];i[t]=l;const s=[...Array.from({length:o-1-t},(e,r)=>t+1+r),...Array.from({length:t},(e,r)=>t-1-r)];if(a<0)return i[s[0]]-=a,i;for(const e of s){if(a<=0)break;const t=Math.min(a,i[e]-r);i[e]-=t,a-=t}return i}([...n,100-p(n)],e,t);return E(o.slice(0,-1))?o:null},[q,Z]=c(0);u(()=>{const e=O.current;if(!e||"undefined"==typeof ResizeObserver)return;const t=new ResizeObserver(()=>Z(e.getBoundingClientRect().width));return t.observe(e),()=>t.disconnect()},[]);const Q=s(null),[Y,_]=c(null),[ee,te]=c([]),re=(e,t)=>_(r=>t?e:r===e?null:r),ne=s(null),oe=(e,t)=>{const r=ne.current;if(!r||r.column!==e||r.share!==t)return!1;const{onChange:n,locked:o,stored:i}=K.current;var l,a;return o||(l=i,a=r.stored,void 0===l||void 0===a?l===a:v(l,a))||n(r.stored),!0},ie=B.join(",");u(()=>{const e=null===Y?[]:function(e,t){if(!e)return[];const r=Array.from(e.querySelectorAll("input[data-widths-label]")),n=r[t]?.getBoundingClientRect();if(!n||0===n.width)return[];if(void 0===g&&(g=document.createElement("canvas").getContext("2d")),!g)return[];const o=g;return r.flatMap((e,r)=>{if(r===t)return[];const i=e.getBoundingClientRect(),l=getComputedStyle(e);o.font=`${l.fontWeight} ${l.fontSize} ${l.fontFamily}`;const a=o.measureText(e.value).width/2,s=(i.left+i.right)/2;return s+a>n.left&&s-a<n.right?[r]:[]})}(Q.current,Y);te(t=>v(t,e)?t:e)},[Y,ie,q]);const le=j.hint(T,r),ae=B.slice(0,-1).map((e,t)=>p(B.slice(0,t+1)));/* @__PURE__ */
|
|
2
|
+
return h("div",{role:"group","aria-label":N?void 0:C,"aria-labelledby":N,"aria-describedby":T>1?S:void 0,className:`flex w-full min-w-0 flex-col gap-2 ${M?"opacity-60":""} ${R}`.trim(),children:[
|
|
3
|
+
/* @__PURE__ */h("div",{ref:Q,"data-widths-bar":"",className:"relative h-8",children:[
|
|
4
|
+
/* @__PURE__ */f("div",{ref:O,"data-widths-track":"",className:"flex h-full w-full overflow-hidden rounded-(--radius-control) bg-surface",children:B.map((e,t)=>/* @__PURE__ */f("div",{"data-widths-segment":"",style:{flexBasis:`${e}%`},className:`flex min-w-0 shrink-0 grow-0 items-center justify-center overflow-hidden whitespace-nowrap text-xs font-medium tabular-nums ${w[t%2]} ${t%2==0?"bg-accent-tint":""}`,children:1===T&&/* @__PURE__ */f("span",{"data-widths-label":"",children:`${e}%`})},t))}),
|
|
5
|
+
/* @__PURE__ */f("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-0 rounded-(--radius-control) border border-line-strong"}),T>1&&B.map((e,t)=>/* @__PURE__ */h(d,{children:[(()=>{const n=Y===t,l=p(B.slice(0,t)),a=n?`max(${e}%, 40px)`:`${e}%`;/* @__PURE__ */
|
|
6
|
+
return f("div",{"data-widths-tip":"",className:"absolute inset-y-0 "+(n?"z-20":""),style:{left:`clamp(0px, calc(${l+e/2}% - ${a} / 2), calc(100% - ${a}))`,width:a},children:/* @__PURE__ */f(i,{content:le,delay:600,describe:!1,className:"absolute inset-0",children:/* @__PURE__ */f(o,{appearance:"bare",value:e,display:()=>(e=>q>0&&q*e/100<36?String(e):`${e}%`)(e),suffix:"%",min:r,max:100-(T-1)*r,step:1,shiftStep:10,precision:0,allowEmpty:!1,reportWhileTyping:!1,readOnly:P,disabled:M,"aria-label":j.column(t+1),"aria-describedby":S,"data-widths-label":"",onChange:e=>{null===e||oe(t,e)||U(t,e)},onRevert:e=>((e,t)=>{K.current.locked||null===t||oe(e,t)||U(e,t)})(t,e),onFocus:()=>{ne.current={column:t,share:e,stored:K.current.stored},re(t,!0)},onBlur:()=>re(t,!1),className:`absolute inset-0 text-xs font-medium ${w[t%2]} ${ee.includes(t)&&!n?"opacity-0":""}`})})})})(),t<T-1&&/* @__PURE__ */f("div",{className:"absolute inset-y-0 z-10 w-3 -translate-x-1/2",style:{left:`${ae[t]}%`},children:/* @__PURE__ */f(i,{content:j.dragHint,delay:600,className:"relative flex h-full w-full",children:/* @__PURE__ */f("div",{role:"separator",tabIndex:M?-1:0,"aria-orientation":"vertical","aria-label":j.divider(t+1,t+2),"aria-valuenow":B[t],"aria-valuemin":r,"aria-valuemax":B[t]+B[t+1]-r,"aria-valuetext":j.dividerValue(t+1,B[t],t+2,B[t+1]),"aria-disabled":D||void 0,onKeyDown:D?void 0:F(t),onPointerDown:V(t),onPointerMove:W,onPointerUp:X,onPointerCancel:X,onLostPointerCapture:()=>{G.current&&L()},className:"group/widths flex h-full w-full touch-none justify-center rounded-(--radius-control) rosh-focus-ring focus-visible:ring-2 focus-visible:ring-[color:var(--rosh-focus-ring-solid)] "+(D?"cursor-default":"cursor-col-resize"),children:/* @__PURE__ */f("span",{"aria-hidden":"true","data-widths-line":"",className:"h-full rounded-full "+(D?`${b} bg-gray-300`:`bg-accent-fill transition-[width,background-color] duration-(--motion-fast) group-hover/widths:bg-blue-700 ${H===t?"w-1":y}`)})})})})]},t))]}),T>1&&/* @__PURE__ */f("span",{id:S,className:"sr-only",children:le})]})}export{x as WidthsBar};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{ColoredBadge as e}from"./chunk-
|
|
1
|
+
import{ColoredBadge as e}from"./chunk-UD4NESX7.js";import{Button_default as n}from"./chunk-EVYD6UFQ.js";import{useShellStrings as i}from"./chunk-TJSJVC6P.js";import{useId as t}from"react";import{jsx as m,jsxs as a}from"react/jsx-runtime";function s({items:s,heading:l,emptyText:r,className:c=""}){const o=i().media,d=t();return s.length?/* @__PURE__ */a("div",{className:c||void 0,children:[
|
|
2
2
|
/* @__PURE__ */m("p",{id:d,className:"text-xs font-medium text-ink-faint",children:l??o.usedIn(s.length)}),
|
|
3
3
|
/* @__PURE__ */m("ul",{"aria-labelledby":d,className:"mt-2 flex flex-col gap-1",children:s.map(i=>/* @__PURE__ */a("li",{className:"flex min-w-0 items-center gap-2 text-sm",children:[null!=i.kind&&/* @__PURE__ */m(e,{size:"xs",className:"flex-none",children:i.kind}),i.onOpen?/* @__PURE__ */m(n,{variant:"link",size:"sm",onClick:i.onOpen,className:"min-w-0 text-left",children:i.name}):/* @__PURE__ */m("span",{className:"min-w-0 break-words text-ink",children:i.name})]},i.key))})]}):/* @__PURE__ */m("p",{className:`text-sm text-ink-faint ${c}`.trim(),children:r??o.notUsed})}export{s as MediaUsedInList};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{AccessibleTable as e}from"./chunk-HY6CBG4M.js";import{arcPath as t}from"./chunk-VFC6QUEN.js";import{useHighlight as r}from"./chunk-CNYAHYE6.js";import{ChartTooltip as l}from"./chunk-WDQI3FV6.js";import{CHART_INK as a,resolveSeriesColor as n}from"./chunk-TZFACUMR.js";import{useShellStrings as i,useShellLocale as o}from"./chunk-TJSJVC6P.js";import{formatPlain as h,formatPercent as c}from"./chunk-C3QOHMR6.js";import{useState as u}from"react";import{jsx as s,jsxs as d}from"react/jsx-runtime";function m(e,t,r,l,a,n,i,o){if(l>=8)return;const h=e.reduce((e,t)=>e+p(t,8-l),0);if(h<=0)return;let c=t;e.forEach((e,t)=>{const u=p(e,8-l),s=u/h*r,d=`${i}/${e.key}`,f=0===l?t:a,b=0===l?e.key:n;o.push({id:d,label:e.label,value:u,depth:l,start:c,end:c+s,branch:f,branchKey:b}),e.children?.length&&m(e.children,c,s,l+1,f,b,d,o),c+=s})}function p(e,t){return t>0&&e.children?.length?e.children.reduce((e,r)=>e+p(r,t-1),0):Math.max(0,e.value??0)}function f({nodes:p,size:f=320,innerRadius:b=44,ringGap:v=2,formatValue:k,centerLabel:x,className:g,emptyLabel:y}){const M=i().charts,$=o(),j=k??(e=>h(e,$)),C=y??M.nothingToBreakDown,[N,w]=u(null),{highlighted:E}=r(),F=[];if(m(p,-Math.PI/2,2*Math.PI,0,0,"","",F),0===F.length)/* @__PURE__ */return s("p",{className:`text-sm text-gray-500 ${g??""}`,children:C});const I=Math.max(...F.map(e=>e.depth))+1,L=f/2,V=f/2,z=(f/2-8-b)/I,A=F.filter(e=>0===e.depth).reduce((e,t)=>e+t.value,0),B=e=>`color-mix(in oklab, ${n(e.branch)} ${Math.max(16,100-24*e.depth).toFixed(0)}%, ${a.surface})`,H=e=>null!==N?e.id===N:null===E||e.branchKey===E,P=N?F.find(e=>e.id===N):void 0,Q=e=>c(e.value/A*100,1,$);/* @__PURE__ */
|
|
2
|
+
return d("div",{className:`relative ${g??""}`,children:[
|
|
3
|
+
/* @__PURE__ */d("svg",{width:"100%",height:f,viewBox:`0 0 ${f} ${f}`,role:"img","aria-label":M.sunburst(j(A),I),onMouseLeave:()=>w(null),children:[F.map(e=>/* @__PURE__ */s("path",{d:t(L,V,b+e.depth*z+v/2,b+(e.depth+1)*z-v/2,e.start,e.end),fill:B(e),fillOpacity:H(e)?1:.45,stroke:a.surface,strokeWidth:1,onMouseEnter:()=>w(e.id)},e.id)),x&&/* @__PURE__ */s("text",{x:L,y:V+5,textAnchor:"middle",fontSize:16,fontWeight:600,fill:a.label,children:x})]}),P&&/* @__PURE__ */s("div",{className:"pointer-events-none absolute top-2 left-2 z-10",children:/* @__PURE__ */s(l,{title:P.label,rows:[{key:"value",label:M.value,color:B(P),value:j(P.value)},{key:"share",label:M.share,color:a.muted,value:Q(P)}]})}),
|
|
4
|
+
/* @__PURE__ */s(e,{caption:M.sunburst(j(A),I),head:[M.tableLevel,M.tableItem,M.value,M.share],rows:F.map(e=>[e.depth+1,e.label,j(e.value),Q(e)])})]})}export{f as SunburstChart};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{DAY_MS as e,fmtSliderDate as t}from"./chunk-7TC3LJQM.js";import{calendarNames as n}from"./chunk-Y3JW2GW5.js";import{stagger as r}from"./chunk-465RRWBY.js";import{popupBounds as l}from"./chunk-GLUJS42B.js";import{useBrowserValueOnce as a,useBrowserLayoutEffect as s}from"./chunk-D65T4H6J.js";import{registerModalEscapeInterceptor as i}from"./chunk-TWVUQUUD.js";import{useShellStrings as o,useShellLocale as c}from"./chunk-
|
|
1
|
+
import{DAY_MS as e,fmtSliderDate as t}from"./chunk-7TC3LJQM.js";import{calendarNames as n}from"./chunk-Y3JW2GW5.js";import{stagger as r}from"./chunk-465RRWBY.js";import{popupBounds as l}from"./chunk-GLUJS42B.js";import{useBrowserValueOnce as a,useBrowserLayoutEffect as s}from"./chunk-D65T4H6J.js";import{registerModalEscapeInterceptor as i}from"./chunk-TWVUQUUD.js";import{useShellStrings as o,useShellLocale as c}from"./chunk-TJSJVC6P.js";import{useRef as u,useState as d,useId as m,useEffect as h,useCallback as p}from"react";import{jsx as x,jsxs as f,Fragment as y}from"react/jsx-runtime";var k={receipt:/* @__PURE__ */f(y,{children:[
|
|
2
2
|
/* @__PURE__ */x("path",{d:"M3.4 1.9h5.2v7.2l-1.3-.9-1.3.9-1.3-.9-1.3.9z",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinejoin:"round"}),
|
|
3
3
|
/* @__PURE__ */x("path",{d:"M4.9 4.4h2.2M4.9 6.1h2.2",stroke:"currentColor",strokeWidth:"1.1",strokeLinecap:"round"})]}),check:/* @__PURE__ */x("path",{d:"M2.6 6.3 4.9 8.6 9.4 3.6",fill:"none",stroke:"currentColor",strokeWidth:"1.9",strokeLinecap:"round",strokeLinejoin:"round"}),doc:/* @__PURE__ */f(y,{children:[
|
|
4
4
|
/* @__PURE__ */x("path",{d:"M3.5 1.9h3.4l2 2v6.2H3.5z",fill:"none",stroke:"currentColor",strokeWidth:"1.2",strokeLinejoin:"round"}),
|
|
@@ -47,10 +47,10 @@ return f("div",{"aria-hidden":"true",children:[
|
|
|
47
47
|
/* @__PURE__ */x("i",{}),
|
|
48
48
|
/* @__PURE__ */x("i",{})]},`railcut-${e.fromMs}`))]})}function V({geo:e,caption:t,endCaption:n,around:r,reveal:l,trackPx:a}){const s=e.rail-13-4,i=l?" rosh-tl-fade":"",o=l?{animationDelay:"420ms"}:{};/* @__PURE__ */
|
|
49
49
|
return f("div",{"aria-hidden":"true","data-timeline-part":"start",children:[
|
|
50
|
-
/* @__PURE__ */x("i",{className:`rosh-tl-start${r?" is-around":""}${i}`,style:{left:"0px",top:`${e.rail+3}px`,...o}}),null!=t&&!1!==t&&/* @__PURE__ */x("span",{className:`rosh-tl-edge${i}`,"data-timeline-part":"start-caption",style:{left:"0px",top:`${s}px`,...o},children:t}),null!=n&&!1!==n&&/* @__PURE__ */x("span",{className:`rosh-tl-edge is-end${i}`,"data-timeline-part":"end-caption",style:{left:`${a}px`,top:`${s}px`,...o},children:n})]})}function
|
|
50
|
+
/* @__PURE__ */x("i",{className:`rosh-tl-start${r?" is-around":""}${i}`,style:{left:"0px",top:`${e.rail+3}px`,...o}}),null!=t&&!1!==t&&/* @__PURE__ */x("span",{className:`rosh-tl-edge${i}`,"data-timeline-part":"start-caption",style:{left:"0px",top:`${s}px`,...o},children:t}),null!=n&&!1!==n&&/* @__PURE__ */x("span",{className:`rosh-tl-edge is-end${i}`,"data-timeline-part":"end-caption",style:{left:`${a}px`,top:`${s}px`,...o},children:n})]})}function J({x:e,geo:t,trackPx:n,label:r,reveal:l}){const a=o().timeline;/* @__PURE__ */
|
|
51
51
|
return f("div",{"aria-hidden":"true","data-timeline-part":"today",children:[
|
|
52
52
|
/* @__PURE__ */x("div",{className:"rosh-tl-todayline"+(l?" rosh-tl-fade":""),style:{left:`${e}px`,top:`${t.laneA}px`,height:t.ruler+20-t.laneA+"px",...l?{animationDelay:"420ms"}:{}}}),
|
|
53
|
-
/* @__PURE__ */x("span",{className:"rosh-tl-todaytag"+(l?" rosh-tl-fade":""),title:a.todayTitle(r),style:{left:`${w(e,48,n)}px`,top:`${t.tag}px`,...l?{animationDelay:"420ms"}:{}},children:a.today})]})}function
|
|
53
|
+
/* @__PURE__ */x("span",{className:"rosh-tl-todaytag"+(l?" rosh-tl-fade":""),title:a.todayTitle(r),style:{left:`${w(e,48,n)}px`,top:`${t.tag}px`,...l?{animationDelay:"420ms"}:{}},children:a.today})]})}function G({nodes:e,geo:t,reveal:n}){const r=e.map(e=>{const t=e.members.map(e=>e.caption).filter(e=>!!e);return 0===t.length?null:{x:e.x,first:t[0],last:t[t.length-1]}}).filter(e=>null!==e).sort((e,t)=>e.x-t.x),l=[];let a=null;const s=()=>{a&&(l.push({x:(a.from+a.to)/2,text:a.first===a.last?a.first:`${a.first}–${a.last}`}),a=null)};for(const e of r){const t=e.first===e.last?e.first:`${e.first}–${e.last}`,n=K(t)/2;a&&e.x-n<a.right+6?(a.to=e.x,a.last=e.last,a.right=e.x+n):(s(),a={from:e.x,to:e.x,first:e.first,last:e.last,right:e.x+n})}return s(),/* @__PURE__ */x("div",{"aria-hidden":"true","data-timeline-part":"captions",children:l.map(e=>/* @__PURE__ */x("span",{className:"rosh-tl-caption"+(n?" rosh-tl-fade":""),style:{left:`${e.x}px`,top:`${t.laneA}px`,...n?{animationDelay:"360ms"}:{}},children:e.text},`${e.x}-${e.text}`))})}function Y({phase:e,geo:t,xOf:n}){const r=n(e.minMs),l=Math.max(n(e.maxMs)-r,4);/* @__PURE__ */
|
|
54
54
|
return f("div",{"aria-hidden":"true","data-timeline-part":"phase",children:[
|
|
55
55
|
/* @__PURE__ */x("div",{className:"rosh-tl-phase border-gray-300",style:{left:`${r}px`,width:`${l}px`,top:t.laneB+t.laneH-4+"px"}}),
|
|
56
56
|
/* @__PURE__ */f("span",{className:"rosh-tl-phase-label text-gray-500",style:{left:`${r+l/2}px`,top:`${t.laneB+t.laneH+5}px`},children:[e.label," · parallel"]})]})}function _({nodes:e,trackPx:t,geo:n,activeKey:r,hoveredKey:l,currentKey:a}){const s=o().timeline,i=(e,t)=>null!==t&&(e.key===t||e.members.some(e=>e.key===t)),c=e.find(e=>e.key===l)??e.find(e=>i(e,r))??null;if(!c)return null;const u=c.mark,d=u?u.label:`×${c.members.length}`,m=u?u.dateText:function(e){const t=e[0].dateText,n=e[e.length-1].dateText;return t===n?t:`${t} – ${n}`}(c.members),h=u?u.widthPx:N(d,m),p=u?.onOpen;/* @__PURE__ */
|
|
@@ -74,15 +74,15 @@ return f("div",{children:[
|
|
|
74
74
|
return f(y,{children:[
|
|
75
75
|
/* @__PURE__ */x("div",{className:"rosh-tl-hit","aria-hidden":"true","data-timeline-part":"hit",style:{top:s.rail-9+"px",height:"24px"},onPointerDown:e=>{K(e),D(L(e.clientX))},onPointerMove:F,onPointerUp:A,onPointerCancel:A}),
|
|
76
76
|
/* @__PURE__ */x("div",{className:"rosh-tl-chip","data-timeline-part":"chip",style:{left:`${w(P,88,m)+44}px`,top:`${s.tag}px`},children:n.chip?n.chip(N):t(N,b)}),
|
|
77
|
-
/* @__PURE__ */x("div",{role:"slider",tabIndex:0,className:"rosh-tl-thumb text-blue-600","data-timeline-part":"thumb","aria-label":n.ariaLabel??v.scrub,"aria-valuemin":0,"aria-valuemax":T&&T.length>0?T.length-1:R,"aria-valuenow":T&&T.length>0?Math.max(0,B):Math.round((r-i)/e),"aria-valuetext":j,style:{left:`${P}px`,top:`${s.rail+3}px`},onPointerDown:K,onPointerMove:F,onPointerUp:A,onPointerCancel:A,onKeyDown:t=>{const n=(t=>{const{key:n}=t;if(T&&T.length>0){const e=B<0?0:B;return"ArrowRight"===n||"ArrowUp"===n?T[Math.min(e+1,T.length-1)]:"ArrowLeft"===n||"ArrowDown"===n?T[Math.max(e-1,0)]:"Home"===n?T[0]:"End"===n?T[T.length-1]:null}const l=(t.shiftKey?7:1)*e;return"ArrowRight"===n||"ArrowUp"===n?r+l:"ArrowLeft"===n||"ArrowDown"===n?r-l:"Home"===n?i:"End"===n?d:null})(t);null!==n&&(t.preventDefault(),k?.(),D(n))}})]})}function Z(e,t,n){return(t?e.height:e.ruler+26)+(n?22:0)}function ee({startMs:n,endMs:k,axis:M="linear",items:v,markers:b=[],pending:w=[],fillToMs:ee,todayMs:te,labels:ne="lanes",activeKey:re=null,onActivate:le,thumb:ae,playback:se,edgeCaptions:ie,phases:oe=[],currentKey:ce,zoomRange:ue=null,motion:de=!0,ariaLabel:me,highlightKeys:he=null,onHoverChange:pe,endMark:xe=null}){const fe="none"===ne,ye=a(Date.now,null),ke=a(D,!1),ge=te??ye,Me=u(null),ve=o().timeline,be=c(),$e=e=>t(e,be),we=u(null),Pe=u(null),Ne=u(null),Ce=u(/* @__PURE__ */new Map),Te=u(void 0),Be=u(void 0),Le=u(null),[De,Ke]=d({}),[Ae,Fe]=d(null),[je,Re]=d(null),[Ue,He]=d(null),[Oe,Ie]=d(null),[We,Se]=d(null),[ze,Ee]=d(null),Xe=m(),Ve=m(),Ge=H(Me,!0),Je=Ge>0?Ge-(w.length>0&&!fe?176:0):0,Ye=Je>0&&Je-20<320,_e=H(we,!Ye),qe=_e>0?_e:600,Qe=L[ne],Ze=fe&&w.length>0,et=Ze?Math.max(0,qe-36):qe,tt=t=>t>=n-e&&t<=k+e,nt=v.filter(e=>Number.isFinite(e.ms)&&tt(e.ms)).slice().sort((e,t)=>e.ms-t.ms),rt="spread"===M?b.map(e=>new Date(e.date).getTime()).filter(e=>Number.isFinite(e)):[],lt=$([n,...[...nt.map(e=>e.ms),...rt].filter(e=>e>n&&e<k),k],et,"compressed"===(at=M)?{}:"spread"===at?{maxTimeShare:1/0}:{maxTimeShare:1/0,minGapPx:0});var at;const st=lt.xByMs,it=nt.filter(e=>!e.provisional),ot=ce??(it.length>0?it[it.length-1].key:null),ct=nt.map((e,t)=>{const n=e.date??$e(e.ms),r=(e.priority??0)>0||"report"===e.kind,l=function(e){const t=e.kind??"default";return"default"===t&&e.glyph&&"none"!==e.glyph?F[e.glyph]??t:t}(e);return{key:e.key,ms:e.ms,x:st(e.ms),baseX:st(e.ms),kind:l,label:e.label,dateText:n,detail:e.detail,preview:e.preview,glyph:j(e,l,0===t&&"default"===l),role:e.key===ot?"current":r?"dot":"key",widthPx:fe?Math.max(16,K(e.caption??"")+6):De[e.key]||N(e.label,n),collapsible:r,onClick:e.onClick,onOpen:e.onOpen,isItem:!0,caption:e.caption,provisional:!!e.provisional,isCap:!1}}),ut=b.map(e=>({marker:e,ms:new Date(e.date).getTime()})).filter(({ms:e})=>Number.isFinite(e)&&tt(e)).map(({marker:e,ms:t})=>{const n=`marker-${e.id}`,r=$e(t);return{key:n,ms:t,x:st(t),baseX:st(t),kind:e.kind,label:e.label,dateText:r,detail:e.detail,preview:e.preview,glyph:e.glyph??A[e.kind].glyph,role:"key",widthPx:De[n]||N(e.label,r),collapsible:!1,onClick:e.onClick?()=>e.onClick?.(e):void 0,onOpen:e.onOpen?()=>e.onOpen?.(e):void 0,isItem:!1,provisional:!1,isCap:!1}}),dt=Ze?(()=>{const t=w[w.length-1],n=w.slice(0,-1).map(e=>e.label);return[{key:t.key,ms:k+e,x:qe,baseX:qe,kind:t.kind??"default",label:t.label,dateText:ve.notReached,detail:n.length>0?ve.alsoToCome(n):void 0,glyph:void 0,role:"key",widthPx:16,collapsible:!1,isItem:!1,provisional:!1,isCap:!0}]})():[],mt=fe&&xe&&!Ze?[{key:xe.key,ms:k,x:et,baseX:et,kind:"default",label:xe.label,dateText:xe.dateText??$e(k),detail:xe.detail,glyph:void 0,role:"key",widthPx:16,collapsible:!1,isItem:!1,provisional:!1,isCap:!0}]:[],ht=[...ct,...ut,...dt,...mt].sort((e,t)=>e.x-t.x||e.ms-t.ms),pt=ie?.start??ve.start($e(n)),xt=null==pt||!1===pt?0:"string"==typeof pt?Math.ceil(K(pt)):96,ft="lanes"===ne?function(e,t={}){const n=t.minPitchPx??40,r=[];let l=0;for(;l<e.length;){const t=e[l];if(!t.collapsible){r.push({type:"item",mark:t}),l+=1;continue}let a=l+1;for(;a<e.length&&e[a].collapsible&&e[a].kind===t.kind;)a+=1;const s=e.slice(l,a),i=s.length>1&&s.every((e,t)=>{if(0===t)return!0;const r=s[t-1],l=Math.max(n,Math.max(e.widthPx,r.widthPx)+8);return e.x-r.x<l});if(s.length>=3||i)r.push({type:"cluster",kind:t.kind,members:s});else for(const e of s)r.push({type:"item",mark:e});l=a}return r}(ht):[],yt=function(e,t=16){const n=[];let r=0;for(;r<e.length;){let l=r+1;for(;l<e.length&&e[l].x-e[l-1].x<t;)l+=1;if(l-r===1)n.push({type:"item",mark:e[r]});else{const t=e.slice(r,l),a=new Set(t.map(e=>e.kind));n.push({type:"cluster",kind:1===a.size?t[0].kind:P,members:t})}r=l}return n}(ht),kt=e=>"cluster"===e.type?`fold-${e.members[0].key}`:e.mark.key,gt=/* @__PURE__ */new Map;for(const e of yt)if("cluster"===e.type)for(const t of e.members)gt.set(t.key,kt(e));const Mt=Ue??Oe??We,vt=ft.find(e=>"cluster"===e.type&&(e=>"cluster"===e.type?`cluster-${e.members[0].key}`:e.mark.key)(e)===Mt)??yt.find(e=>"cluster"===e.type&&kt(e)===Mt),bt=e=>({x:e.baseX,widthPx:e.widthPx}),$t=vt&&"cluster"===vt.type?vt.members.map(bt):ue?ht.filter(e=>e.ms>=ue[0]&&e.ms<=ue[1]).map(bt):[],wt=$t.length>1?O(lt,$t,et):lt,Pt=wt!==lt;if(Pt)for(const e of ht)e.isCap||(e.x=wt.xByMs(e.ms));const Nt=ht.some(e=>e.x<14),Ct=Pt&&vt?Mt:null,Tt=e=>({key:e.key,mark:e,members:[e],x:e.x,kind:e.kind,openable:!1}),Bt=Ye?ht.map(Tt):yt.flatMap(e=>{if("item"===e.type)return[Tt(e.mark)];const t=kt(e);if(t===Ct&&(n=e.members).every((e,t)=>0===t||e.x-n[t-1].x>=16))return e.members.map(Tt);var n;const r=e.members.map(e=>e.x);return[{key:t,mark:null,members:e.members,x:r.reduce((e,t)=>e+t,0)/r.length,kind:e.kind,openable:new Set(e.members.map(e=>e.ms)).size>1}]}),Lt=/* @__PURE__ */new Map;for(const e of Bt)for(const t of e.members)Lt.set(t.key,e.key);const Dt=yt.find(e=>"cluster"===e.type&&kt(e)===Ct),Kt=Dt&&"cluster"===Dt.type?{from:Math.min(...Dt.members.map(e=>e.x))-16,to:Math.max(...Dt.members.map(e=>e.x))+16}:null,At=u(Ct),[Ft,jt]=d(!1);h(()=>{if(At.current===Ct)return;At.current=Ct,jt(!0);const e=setTimeout(()=>jt(!1),240);return()=>clearTimeout(e)},[Ct]);const Rt=ht.map(e=>`${e.key} ${e.label} ${e.dateText}`).join("|");s(()=>{const e=Pe.current;if(!e)return;const t={};for(const n of Array.from(e.children)){const e=n.dataset.laneKey,r=n.getBoundingClientRect().width;e&&r>0&&(t[e]=r)}Ke(e=>function(e,t){const n=Object.keys(e);return n.length===Object.keys(t).length&&n.every(n=>Math.abs((e[n]??0)-(t[n]??0))<.5)}(e,t)?e:t)},[Rt]);const Ut=`${ne}|${M}|${ht.map(e=>`${e.key}@${e.ms}`).join("|")}`,[Ht,Ot]=d(Ut),It=de&&Ht===Ut;h(()=>{Ht!==Ut&&Ot(Ut)},[Ht,Ut]);const Wt=Math.min(28,340/Math.max(1,ht.length-1)),St=I(ae?.stops),zt=e=>{const t=Math.min(Math.max(e,n),k);if(!St)return t;let r=St[0];for(const e of St)Math.abs(e-t)<Math.abs(r-t)&&(r=e);return r},Et=ae?zt(ae.valueMs):null,Xt=se&&ae?ct.filter(e=>!St||St.includes(e.ms)).map(e=>({key:e.key,ms:e.ms})):[],Vt=function(e,t,n={}){const r=Number.isFinite(n.speed)&&(n.speed??0)>0?n.speed:1,l=Math.max(0,n.dwellMs??700)/r,a=t.filter(e=>Number.isFinite(e.ms)).slice().sort((e,t)=>e.ms-t.ms),s=[];for(let t=0;t+1<a.length;t++){const i=a[t],o=a[t+1],c=e.xByMs(i.ms),u=e.xByMs(o.ms),d=Math.max(0,u-c),m=d<=.5||n.reducedMotion?0:C(350*d/100,450,1400)/r;s.push({fromKey:i.key,toKey:o.key,fromMs:i.ms,toMs:o.ms,fromPx:c,toPx:u,lengthPx:d,durationMs:m,dwellMs:l,msByPx:e.msByPx})}return s}(wt,Xt,{speed:se?.speed,reducedMotion:ke}),[Gt,Jt]=d(null),Yt=u(null),_t=u({segments:Vt,value:Et,playback:se});h(()=>{_t.current={segments:Vt,value:Et,playback:se}});const qt=u(null),Qt=p(e=>{null===e&&null===qt.current||(qt.current=e,_t.current.playback?.onProgress?.(e))},[]),Zt=p(()=>{Yt.current=null,Jt(null),Qt(null),_t.current.playback?.onStop?.()},[Qt]),en=!!se?.playing&&!!ae;h(()=>{if(!en)return;const e=_t.current,t=null===e.value?-1:e.segments.findIndex(t=>t.fromMs===e.value);if(t<0)return void Zt();Yt.current&&Yt.current.index===t||(Yt.current={index:t,phase:"rest",t:0,restLeftMs:e.segments[t].dwellMs,sinceMs:null});let n,r=0;const l=e=>Jt(t=>t&&t.px===e.px&&t.ms===e.ms?t:e),a=()=>{clearTimeout(n);const e=Yt.current;"rest"===e?.phase&&(n=setTimeout(s,Math.max(0,e.restLeftMs)))},s=()=>{const e=Yt.current;if("rest"!==e?.phase)return;const t=_t.current.segments[e.index];t?(Yt.current={index:e.index,phase:"glide",t:0,restLeftMs:0,sinceMs:null},l(B(t,0))):Zt()},i=e=>{const t=_t.current,n=Yt.current;if(!n)return;const s=function(e,t,n){const r=e[t.index];if(!r)return{cursor:null,at:null,arrived:null,progress:null};const l=null===t.sinceMs?0:Math.max(0,n-t.sinceMs);if("rest"===t.phase){const e=t.restLeftMs-l;return e>0?{cursor:{...t,restLeftMs:e,sinceMs:n},at:B(r,0),arrived:null,progress:null}:{cursor:{index:t.index,phase:"glide",t:0,restLeftMs:0,sinceMs:n},at:B(r,0),arrived:null,progress:null}}const a=r.durationMs>0?Math.min(1,t.t+l/r.durationMs):1,s=B(r,a);if(a<1)return{cursor:{...t,t:a,sinceMs:n},at:s,arrived:null,progress:{fromKey:r.fromKey,toKey:r.toKey,t:T(a),ms:s.ms}};const i=e[t.index+1];return{cursor:i?{index:t.index+1,phase:"rest",t:0,restLeftMs:i.dwellMs,sinceMs:n}:null,at:s,arrived:{key:r.toKey,ms:r.toMs},progress:null}}(t.segments,n,e);Yt.current=s.cursor,s.at&&l(s.at),Qt(s.progress),s.arrived&&t.playback?.onArrive(s.arrived.key,s.arrived.ms),s.cursor?(s.cursor.phase===n.phase&&s.cursor.index===n.index||a(),r=requestAnimationFrame(i)):Zt()};return a(),r=requestAnimationFrame(i),()=>{cancelAnimationFrame(r),clearTimeout(n),Yt.current&&(Yt.current.sinceMs=null,Qt(null))}},[en,Zt,Qt]);const tn=ct.filter(e=>!e.provisional),nn=ae?Gt?Gt.ms:Et:void 0!==ee?ee:tn.length>0?null===ge?tn[tn.length-1].ms:Math.min(tn[tn.length-1].ms,ge):null,rn=new Set(he??[]),ln=ht.filter(e=>rn.has(e.key)).map(e=>e.x),an=ln.length>0?{from:Math.min(...ln),to:Math.max(...ln)}:null,sn=p(()=>{clearTimeout(Te.current),clearTimeout(Be.current),Fe(null),Re(null),He(null),Ie(null),Se(null)},[]);h(()=>()=>{clearTimeout(Te.current),clearTimeout(Be.current)},[]),h(()=>{const e=Le.current;e&&(Le.current=null,Ce.current.get(e)?.focus())});const on=null!==je||null!==Ue||null!==Oe||null!==We;h(()=>{if(on)return i(e=>"Escape"===e.key&&(sn(),!0))},[on,sn]);const cn=p((e,t)=>{if(!e)return;const n=e.offsetWidth/2;let r=n>0?Math.max(n,Math.min(t,qe-n)):t;const a=e.parentElement;if(n>0&&a){const t=l(e),s=a.getBoundingClientRect().left,i=t.left+8+n-s,o=t.right-8-n-s;i<=o&&(r=Math.max(i,Math.min(r,o)))}e.style.left=`${r}px`,e.style.setProperty("--rosh-tl-arrow",`${n+(t-r)}px`)},[qe]),un=Bt.find(e=>e.key===je)??null,dn=un?un.x:0;s(()=>{cn(Ne.current,dn)},[cn,je,dn]);const mn=Et??void 0,hn=u(null);h(()=>{if(void 0===mn)return;const e=wt.xByMs(mn),t=hn.current;if(hn.current=e,null===t||e<=t)return;const n=[];for(const r of ht){if(r.x<=t||r.x>e)continue;const l=Ce.current.get(Lt.get(r.key)??r.key);l&&(l.classList.add("is-hit"),n.push(setTimeout(()=>l.classList.remove("is-hit"),460)))}return()=>{for(const e of n)clearTimeout(e)}},[mn]);const pn=Bt.map(e=>e.key),xn=ot?Lt.get(ot)??null:null,fn=ze&&pn.includes(ze)?ze:xn&&pn.includes(xn)?xn:pn[0],yn=e=>{const t=pn.indexOf(e.target.dataset?.timelineKey??"");if(t<0)return;const n="ArrowRight"===e.key||"ArrowDown"===e.key?t+1:"ArrowLeft"===e.key||"ArrowUp"===e.key?t-1:"Home"===e.key?0:"End"===e.key?pn.length-1:-1;n<0||n>pn.length-1||(e.preventDefault(),Ee(pn[n]),Ce.current.get(pn[n])?.focus())},kn=()=>clearTimeout(Be.current),gn=e=>{kn(),Se(e)},Mn=()=>{clearTimeout(Be.current),Be.current=setTimeout(()=>Se(null),260)},vn=e=>{Ct&>.get(e)===Ct?kn():(kn(),Se(null))},bn=e=>{clearTimeout(Te.current),Fe(e),Re(e),pe?.((e=>{const t=Bt.find(t=>t.key===e);return t?.members[0]?.key??e})(e))},$n=e=>{Fe(t=>t===e?null:t),clearTimeout(Te.current),Te.current=setTimeout(()=>Re(t=>t===e?null:t),160),pe?.(null)},wn=e=>({type:"button","data-timeline-node":e.isCap?"cap":e.isItem?"item":"marker","data-timeline-key":e.key,"aria-label":U(e),"aria-describedby":je===e.key?Xe:void 0,tabIndex:e.key===fn?0:-1,ref:t=>{t?Ce.current.set(e.key,t):Ce.current.delete(e.key)},onMouseEnter:()=>{vn(e.key),bn(e.key)},onMouseLeave:()=>{Mn(),$n(e.key)},onFocus:()=>{vn(e.key),bn(e.key),Ee(e.key)},onBlur:()=>{Mn(),$n(e.key)},onPointerDown:e=>e.stopPropagation(),onClick:t=>{t.stopPropagation(),e.onClick?.(),e.isItem&&le?.(e.key)}}),Pn=e=>{return{type:"button","data-timeline-node":"fold","data-timeline-key":e.key,"data-timeline-count":String(e.members.length),"aria-label":(t=e.members,n=ve,n.events(t.length,t.map(U))),"aria-describedby":je===e.key?Xe:void 0,tabIndex:e.key===fn?0:-1,ref:t=>{t?Ce.current.set(e.key,t):Ce.current.delete(e.key)},onMouseEnter:()=>{e.openable?gn(e.key):bn(e.key)},onMouseLeave:()=>{Mn(),$n(e.key)},onFocus:()=>{kn(),bn(e.key),Ee(e.key)},onBlur:()=>{Mn(),$n(e.key)},onPointerDown:e=>e.stopPropagation(),onClick:t=>{if(t.stopPropagation(),!e.openable)return void bn(e.key);gn(e.key);const n=e.members[0];Ee(n.key),Le.current=n.key}};var t,n},Nn="lanes"!==ne||ht.length>1;if(Ye)/* @__PURE__ */
|
|
77
|
+
/* @__PURE__ */x("div",{role:"slider",tabIndex:0,className:"rosh-tl-thumb text-blue-600","data-timeline-part":"thumb","aria-label":n.ariaLabel??v.scrub,"aria-valuemin":0,"aria-valuemax":T&&T.length>0?T.length-1:R,"aria-valuenow":T&&T.length>0?Math.max(0,B):Math.round((r-i)/e),"aria-valuetext":j,style:{left:`${P}px`,top:`${s.rail+3}px`},onPointerDown:K,onPointerMove:F,onPointerUp:A,onPointerCancel:A,onKeyDown:t=>{const n=(t=>{const{key:n}=t;if(T&&T.length>0){const e=B<0?0:B;return"ArrowRight"===n||"ArrowUp"===n?T[Math.min(e+1,T.length-1)]:"ArrowLeft"===n||"ArrowDown"===n?T[Math.max(e-1,0)]:"Home"===n?T[0]:"End"===n?T[T.length-1]:null}const l=(t.shiftKey?7:1)*e;return"ArrowRight"===n||"ArrowUp"===n?r+l:"ArrowLeft"===n||"ArrowDown"===n?r-l:"Home"===n?i:"End"===n?d:null})(t);null!==n&&(t.preventDefault(),k?.(),D(n))}})]})}function Z(e,t,n){return(t?e.height:e.ruler+26)+(n?22:0)}function ee({startMs:n,endMs:k,axis:M="linear",items:v,markers:b=[],pending:w=[],fillToMs:ee,todayMs:te,labels:ne="lanes",activeKey:re=null,onActivate:le,thumb:ae,playback:se,edgeCaptions:ie,phases:oe=[],currentKey:ce,zoomRange:ue=null,motion:de=!0,ariaLabel:me,highlightKeys:he=null,onHoverChange:pe,endMark:xe=null}){const fe="none"===ne,ye=a(Date.now,null),ke=a(D,!1),ge=te??ye,Me=u(null),ve=o().timeline,be=c(),$e=e=>t(e,be),we=u(null),Pe=u(null),Ne=u(null),Ce=u(/* @__PURE__ */new Map),Te=u(void 0),Be=u(void 0),Le=u(null),[De,Ke]=d({}),[Ae,Fe]=d(null),[je,Re]=d(null),[Ue,He]=d(null),[Oe,Ie]=d(null),[We,Se]=d(null),[ze,Ee]=d(null),Xe=m(),Ve=m(),Je=H(Me,!0),Ge=Je>0?Je-(w.length>0&&!fe?176:0):0,Ye=Ge>0&&Ge-20<320,_e=H(we,!Ye),qe=_e>0?_e:600,Qe=L[ne],Ze=fe&&w.length>0,et=Ze?Math.max(0,qe-36):qe,tt=t=>t>=n-e&&t<=k+e,nt=v.filter(e=>Number.isFinite(e.ms)&&tt(e.ms)).slice().sort((e,t)=>e.ms-t.ms),rt="spread"===M?b.map(e=>new Date(e.date).getTime()).filter(e=>Number.isFinite(e)):[],lt=$([n,...[...nt.map(e=>e.ms),...rt].filter(e=>e>n&&e<k),k],et,"compressed"===(at=M)?{}:"spread"===at?{maxTimeShare:1/0}:{maxTimeShare:1/0,minGapPx:0});var at;const st=lt.xByMs,it=nt.filter(e=>!e.provisional),ot=ce??(it.length>0?it[it.length-1].key:null),ct=nt.map((e,t)=>{const n=e.date??$e(e.ms),r=(e.priority??0)>0||"report"===e.kind,l=function(e){const t=e.kind??"default";return"default"===t&&e.glyph&&"none"!==e.glyph?F[e.glyph]??t:t}(e);return{key:e.key,ms:e.ms,x:st(e.ms),baseX:st(e.ms),kind:l,label:e.label,dateText:n,detail:e.detail,preview:e.preview,glyph:j(e,l,0===t&&"default"===l),role:e.key===ot?"current":r?"dot":"key",widthPx:fe?Math.max(16,K(e.caption??"")+6):De[e.key]||N(e.label,n),collapsible:r,onClick:e.onClick,onOpen:e.onOpen,isItem:!0,caption:e.caption,provisional:!!e.provisional,isCap:!1}}),ut=b.map(e=>({marker:e,ms:new Date(e.date).getTime()})).filter(({ms:e})=>Number.isFinite(e)&&tt(e)).map(({marker:e,ms:t})=>{const n=`marker-${e.id}`,r=$e(t);return{key:n,ms:t,x:st(t),baseX:st(t),kind:e.kind,label:e.label,dateText:r,detail:e.detail,preview:e.preview,glyph:e.glyph??A[e.kind].glyph,role:"key",widthPx:De[n]||N(e.label,r),collapsible:!1,onClick:e.onClick?()=>e.onClick?.(e):void 0,onOpen:e.onOpen?()=>e.onOpen?.(e):void 0,isItem:!1,provisional:!1,isCap:!1}}),dt=Ze?(()=>{const t=w[w.length-1],n=w.slice(0,-1).map(e=>e.label);return[{key:t.key,ms:k+e,x:qe,baseX:qe,kind:t.kind??"default",label:t.label,dateText:ve.notReached,detail:n.length>0?ve.alsoToCome(n):void 0,glyph:void 0,role:"key",widthPx:16,collapsible:!1,isItem:!1,provisional:!1,isCap:!0}]})():[],mt=fe&&xe&&!Ze?[{key:xe.key,ms:k,x:et,baseX:et,kind:"default",label:xe.label,dateText:xe.dateText??$e(k),detail:xe.detail,glyph:void 0,role:"key",widthPx:16,collapsible:!1,isItem:!1,provisional:!1,isCap:!0}]:[],ht=[...ct,...ut,...dt,...mt].sort((e,t)=>e.x-t.x||e.ms-t.ms),pt=ie?.start??ve.start($e(n)),xt=null==pt||!1===pt?0:"string"==typeof pt?Math.ceil(K(pt)):96,ft="lanes"===ne?function(e,t={}){const n=t.minPitchPx??40,r=[];let l=0;for(;l<e.length;){const t=e[l];if(!t.collapsible){r.push({type:"item",mark:t}),l+=1;continue}let a=l+1;for(;a<e.length&&e[a].collapsible&&e[a].kind===t.kind;)a+=1;const s=e.slice(l,a),i=s.length>1&&s.every((e,t)=>{if(0===t)return!0;const r=s[t-1],l=Math.max(n,Math.max(e.widthPx,r.widthPx)+8);return e.x-r.x<l});if(s.length>=3||i)r.push({type:"cluster",kind:t.kind,members:s});else for(const e of s)r.push({type:"item",mark:e});l=a}return r}(ht):[],yt=function(e,t=16){const n=[];let r=0;for(;r<e.length;){let l=r+1;for(;l<e.length&&e[l].x-e[l-1].x<t;)l+=1;if(l-r===1)n.push({type:"item",mark:e[r]});else{const t=e.slice(r,l),a=new Set(t.map(e=>e.kind));n.push({type:"cluster",kind:1===a.size?t[0].kind:P,members:t})}r=l}return n}(ht),kt=e=>"cluster"===e.type?`fold-${e.members[0].key}`:e.mark.key,gt=/* @__PURE__ */new Map;for(const e of yt)if("cluster"===e.type)for(const t of e.members)gt.set(t.key,kt(e));const Mt=Ue??Oe??We,vt=ft.find(e=>"cluster"===e.type&&(e=>"cluster"===e.type?`cluster-${e.members[0].key}`:e.mark.key)(e)===Mt)??yt.find(e=>"cluster"===e.type&&kt(e)===Mt),bt=e=>({x:e.baseX,widthPx:e.widthPx}),$t=vt&&"cluster"===vt.type?vt.members.map(bt):ue?ht.filter(e=>e.ms>=ue[0]&&e.ms<=ue[1]).map(bt):[],wt=$t.length>1?O(lt,$t,et):lt,Pt=wt!==lt;if(Pt)for(const e of ht)e.isCap||(e.x=wt.xByMs(e.ms));const Nt=ht.some(e=>e.x<14),Ct=Pt&&vt?Mt:null,Tt=e=>({key:e.key,mark:e,members:[e],x:e.x,kind:e.kind,openable:!1}),Bt=Ye?ht.map(Tt):yt.flatMap(e=>{if("item"===e.type)return[Tt(e.mark)];const t=kt(e);if(t===Ct&&(n=e.members).every((e,t)=>0===t||e.x-n[t-1].x>=16))return e.members.map(Tt);var n;const r=e.members.map(e=>e.x);return[{key:t,mark:null,members:e.members,x:r.reduce((e,t)=>e+t,0)/r.length,kind:e.kind,openable:new Set(e.members.map(e=>e.ms)).size>1}]}),Lt=/* @__PURE__ */new Map;for(const e of Bt)for(const t of e.members)Lt.set(t.key,e.key);const Dt=yt.find(e=>"cluster"===e.type&&kt(e)===Ct),Kt=Dt&&"cluster"===Dt.type?{from:Math.min(...Dt.members.map(e=>e.x))-16,to:Math.max(...Dt.members.map(e=>e.x))+16}:null,At=u(Ct),[Ft,jt]=d(!1);h(()=>{if(At.current===Ct)return;At.current=Ct,jt(!0);const e=setTimeout(()=>jt(!1),240);return()=>clearTimeout(e)},[Ct]);const Rt=ht.map(e=>`${e.key} ${e.label} ${e.dateText}`).join("|");s(()=>{const e=Pe.current;if(!e)return;const t={};for(const n of Array.from(e.children)){const e=n.dataset.laneKey,r=n.getBoundingClientRect().width;e&&r>0&&(t[e]=r)}Ke(e=>function(e,t){const n=Object.keys(e);return n.length===Object.keys(t).length&&n.every(n=>Math.abs((e[n]??0)-(t[n]??0))<.5)}(e,t)?e:t)},[Rt]);const Ut=`${ne}|${M}|${ht.map(e=>`${e.key}@${e.ms}`).join("|")}`,[Ht,Ot]=d(Ut),It=de&&Ht===Ut;h(()=>{Ht!==Ut&&Ot(Ut)},[Ht,Ut]);const Wt=Math.min(28,340/Math.max(1,ht.length-1)),St=I(ae?.stops),zt=e=>{const t=Math.min(Math.max(e,n),k);if(!St)return t;let r=St[0];for(const e of St)Math.abs(e-t)<Math.abs(r-t)&&(r=e);return r},Et=ae?zt(ae.valueMs):null,Xt=se&&ae?ct.filter(e=>!St||St.includes(e.ms)).map(e=>({key:e.key,ms:e.ms})):[],Vt=function(e,t,n={}){const r=Number.isFinite(n.speed)&&(n.speed??0)>0?n.speed:1,l=Math.max(0,n.dwellMs??700)/r,a=t.filter(e=>Number.isFinite(e.ms)).slice().sort((e,t)=>e.ms-t.ms),s=[];for(let t=0;t+1<a.length;t++){const i=a[t],o=a[t+1],c=e.xByMs(i.ms),u=e.xByMs(o.ms),d=Math.max(0,u-c),m=d<=.5||n.reducedMotion?0:C(350*d/100,450,1400)/r;s.push({fromKey:i.key,toKey:o.key,fromMs:i.ms,toMs:o.ms,fromPx:c,toPx:u,lengthPx:d,durationMs:m,dwellMs:l,msByPx:e.msByPx})}return s}(wt,Xt,{speed:se?.speed,reducedMotion:ke}),[Jt,Gt]=d(null),Yt=u(null),_t=u({segments:Vt,value:Et,playback:se});h(()=>{_t.current={segments:Vt,value:Et,playback:se}});const qt=u(null),Qt=p(e=>{null===e&&null===qt.current||(qt.current=e,_t.current.playback?.onProgress?.(e))},[]),Zt=p(()=>{Yt.current=null,Gt(null),Qt(null),_t.current.playback?.onStop?.()},[Qt]),en=!!se?.playing&&!!ae;h(()=>{if(!en)return;const e=_t.current,t=null===e.value?-1:e.segments.findIndex(t=>t.fromMs===e.value);if(t<0)return void Zt();Yt.current&&Yt.current.index===t||(Yt.current={index:t,phase:"rest",t:0,restLeftMs:e.segments[t].dwellMs,sinceMs:null});let n,r=0;const l=e=>Gt(t=>t&&t.px===e.px&&t.ms===e.ms?t:e),a=()=>{clearTimeout(n);const e=Yt.current;"rest"===e?.phase&&(n=setTimeout(s,Math.max(0,e.restLeftMs)))},s=()=>{const e=Yt.current;if("rest"!==e?.phase)return;const t=_t.current.segments[e.index];t?(Yt.current={index:e.index,phase:"glide",t:0,restLeftMs:0,sinceMs:null},l(B(t,0))):Zt()},i=e=>{const t=_t.current,n=Yt.current;if(!n)return;const s=function(e,t,n){const r=e[t.index];if(!r)return{cursor:null,at:null,arrived:null,progress:null};const l=null===t.sinceMs?0:Math.max(0,n-t.sinceMs);if("rest"===t.phase){const e=t.restLeftMs-l;return e>0?{cursor:{...t,restLeftMs:e,sinceMs:n},at:B(r,0),arrived:null,progress:null}:{cursor:{index:t.index,phase:"glide",t:0,restLeftMs:0,sinceMs:n},at:B(r,0),arrived:null,progress:null}}const a=r.durationMs>0?Math.min(1,t.t+l/r.durationMs):1,s=B(r,a);if(a<1)return{cursor:{...t,t:a,sinceMs:n},at:s,arrived:null,progress:{fromKey:r.fromKey,toKey:r.toKey,t:T(a),ms:s.ms}};const i=e[t.index+1];return{cursor:i?{index:t.index+1,phase:"rest",t:0,restLeftMs:i.dwellMs,sinceMs:n}:null,at:s,arrived:{key:r.toKey,ms:r.toMs},progress:null}}(t.segments,n,e);Yt.current=s.cursor,s.at&&l(s.at),Qt(s.progress),s.arrived&&t.playback?.onArrive(s.arrived.key,s.arrived.ms),s.cursor?(s.cursor.phase===n.phase&&s.cursor.index===n.index||a(),r=requestAnimationFrame(i)):Zt()};return a(),r=requestAnimationFrame(i),()=>{cancelAnimationFrame(r),clearTimeout(n),Yt.current&&(Yt.current.sinceMs=null,Qt(null))}},[en,Zt,Qt]);const tn=ct.filter(e=>!e.provisional),nn=ae?Jt?Jt.ms:Et:void 0!==ee?ee:tn.length>0?null===ge?tn[tn.length-1].ms:Math.min(tn[tn.length-1].ms,ge):null,rn=new Set(he??[]),ln=ht.filter(e=>rn.has(e.key)).map(e=>e.x),an=ln.length>0?{from:Math.min(...ln),to:Math.max(...ln)}:null,sn=p(()=>{clearTimeout(Te.current),clearTimeout(Be.current),Fe(null),Re(null),He(null),Ie(null),Se(null)},[]);h(()=>()=>{clearTimeout(Te.current),clearTimeout(Be.current)},[]),h(()=>{const e=Le.current;e&&(Le.current=null,Ce.current.get(e)?.focus())});const on=null!==je||null!==Ue||null!==Oe||null!==We;h(()=>{if(on)return i(e=>"Escape"===e.key&&(sn(),!0))},[on,sn]);const cn=p((e,t)=>{if(!e)return;const n=e.offsetWidth/2;let r=n>0?Math.max(n,Math.min(t,qe-n)):t;const a=e.parentElement;if(n>0&&a){const t=l(e),s=a.getBoundingClientRect().left,i=t.left+8+n-s,o=t.right-8-n-s;i<=o&&(r=Math.max(i,Math.min(r,o)))}e.style.left=`${r}px`,e.style.setProperty("--rosh-tl-arrow",`${n+(t-r)}px`)},[qe]),un=Bt.find(e=>e.key===je)??null,dn=un?un.x:0;s(()=>{cn(Ne.current,dn)},[cn,je,dn]);const mn=Et??void 0,hn=u(null);h(()=>{if(void 0===mn)return;const e=wt.xByMs(mn),t=hn.current;if(hn.current=e,null===t||e<=t)return;const n=[];for(const r of ht){if(r.x<=t||r.x>e)continue;const l=Ce.current.get(Lt.get(r.key)??r.key);l&&(l.classList.add("is-hit"),n.push(setTimeout(()=>l.classList.remove("is-hit"),460)))}return()=>{for(const e of n)clearTimeout(e)}},[mn]);const pn=Bt.map(e=>e.key),xn=ot?Lt.get(ot)??null:null,fn=ze&&pn.includes(ze)?ze:xn&&pn.includes(xn)?xn:pn[0],yn=e=>{const t=pn.indexOf(e.target.dataset?.timelineKey??"");if(t<0)return;const n="ArrowRight"===e.key||"ArrowDown"===e.key?t+1:"ArrowLeft"===e.key||"ArrowUp"===e.key?t-1:"Home"===e.key?0:"End"===e.key?pn.length-1:-1;n<0||n>pn.length-1||(e.preventDefault(),Ee(pn[n]),Ce.current.get(pn[n])?.focus())},kn=()=>clearTimeout(Be.current),gn=e=>{kn(),Se(e)},Mn=()=>{clearTimeout(Be.current),Be.current=setTimeout(()=>Se(null),260)},vn=e=>{Ct&>.get(e)===Ct?kn():(kn(),Se(null))},bn=e=>{clearTimeout(Te.current),Fe(e),Re(e),pe?.((e=>{const t=Bt.find(t=>t.key===e);return t?.members[0]?.key??e})(e))},$n=e=>{Fe(t=>t===e?null:t),clearTimeout(Te.current),Te.current=setTimeout(()=>Re(t=>t===e?null:t),160),pe?.(null)},wn=e=>({type:"button","data-timeline-node":e.isCap?"cap":e.isItem?"item":"marker","data-timeline-key":e.key,"aria-label":U(e),"aria-describedby":je===e.key?Xe:void 0,tabIndex:e.key===fn?0:-1,ref:t=>{t?Ce.current.set(e.key,t):Ce.current.delete(e.key)},onMouseEnter:()=>{vn(e.key),bn(e.key)},onMouseLeave:()=>{Mn(),$n(e.key)},onFocus:()=>{vn(e.key),bn(e.key),Ee(e.key)},onBlur:()=>{Mn(),$n(e.key)},onPointerDown:e=>e.stopPropagation(),onClick:t=>{t.stopPropagation(),e.onClick?.(),e.isItem&&le?.(e.key)}}),Pn=e=>{return{type:"button","data-timeline-node":"fold","data-timeline-key":e.key,"data-timeline-count":String(e.members.length),"aria-label":(t=e.members,n=ve,n.events(t.length,t.map(U))),"aria-describedby":je===e.key?Xe:void 0,tabIndex:e.key===fn?0:-1,ref:t=>{t?Ce.current.set(e.key,t):Ce.current.delete(e.key)},onMouseEnter:()=>{e.openable?gn(e.key):bn(e.key)},onMouseLeave:()=>{Mn(),$n(e.key)},onFocus:()=>{kn(),bn(e.key),Ee(e.key)},onBlur:()=>{Mn(),$n(e.key)},onPointerDown:e=>e.stopPropagation(),onClick:t=>{if(t.stopPropagation(),!e.openable)return void bn(e.key);gn(e.key);const n=e.members[0];Ee(n.key),Le.current=n.key}};var t,n},Nn="lanes"!==ne||ht.length>1;if(Ye)/* @__PURE__ */
|
|
78
78
|
return x("div",{ref:Me,children:/* @__PURE__ */x(E,{marks:ht.filter(e=>!e.isCap),pending:w,currentKey:ot,todayMs:ge,reveal:It,ariaLabel:me,step:Wt,nodeProps:wn,onKeyDown:yn})});const Cn=(e,t)=>null==e||!1===e?null:/* @__PURE__ */x("span",{"aria-hidden":"true",className:"rosh-tl-flank"+(t?" is-end":""),"data-timeline-part":t?"end-caption":"start-caption",style:{paddingTop:Qe.rail-3+"px"},children:e});/* @__PURE__ */
|
|
79
79
|
return f("div",{ref:Me,className:"rosh-tl-body"+(w.length>0&&!fe?"":" is-solo"),children:[
|
|
80
80
|
/* @__PURE__ */f("div",{className:"flex items-stretch gap-3",children:[fe&&Cn(pt,!1),
|
|
81
|
-
/* @__PURE__ */x("div",{className:"rosh-tl-stage",style:{height:`${Z(Qe,Nn,oe.length>0&&!fe)}px`},children:/* @__PURE__ */f("div",{ref:we,className:`rosh-tl-layer${Ft?" is-zooming":""}${
|
|
81
|
+
/* @__PURE__ */x("div",{className:"rosh-tl-stage",style:{height:`${Z(Qe,Nn,oe.length>0&&!fe)}px`},children:/* @__PURE__ */f("div",{ref:we,className:`rosh-tl-layer${Ft?" is-zooming":""}${Jt?" is-gliding":""}`,onMouseMove:e=>{if(!Kt)return;const t=we.current?.getBoundingClientRect();if(!t)return;const n=e.clientX-t.left;n>=Kt.from&&n<=Kt.to?kn():Mn()},onMouseLeave:Mn,children:[!fe&&/* @__PURE__ */x(W,{marks:ht,innerRef:Pe}),
|
|
82
82
|
/* @__PURE__ */x(X,{axis:wt,geo:Qe,fillTo:nn,reveal:It,trackPx:et,tweened:!!ae}),Ze&&
|
|
83
83
|
/* @__PURE__ */x("i",{"aria-hidden":"true",className:"rosh-tl-tail","data-timeline-part":"tail",style:{left:`${et}px`,width:qe-et+"px",top:Qe.rail+3-1+"px"}}),an&&/* @__PURE__ */x("div",{"aria-hidden":"true",className:"rosh-tl-band","data-timeline-part":"highlight",style:{left:an.from-10+"px",width:an.to-an.from+20+"px",top:Qe.rail-7+"px",height:"20px"}}),
|
|
84
84
|
/* @__PURE__ */x(S,{startMs:n,endMs:k,axis:wt,geo:Qe,reveal:It}),
|
|
85
|
-
/* @__PURE__ */x(V,{geo:Qe,caption:fe?null:pt,endCaption:fe?null:ie?.end,around:Nt,reveal:It,trackPx:qe}),fe&&/* @__PURE__ */x(
|
|
85
|
+
/* @__PURE__ */x(V,{geo:Qe,caption:fe?null:pt,endCaption:fe?null:ie?.end,around:Nt,reveal:It,trackPx:qe}),fe&&/* @__PURE__ */x(G,{nodes:Bt,geo:Qe,reveal:It}),null!==ge&&ge>n&&ge<=k+e&&/* @__PURE__ */x(J,{x:wt.xByMs(Math.min(ge,k)),geo:Qe,trackPx:qe,label:$e(ge),reveal:It}),!fe&&oe.map(e=>/* @__PURE__ */x(Y,{phase:e,geo:Qe,xOf:wt.xByMs},e.key)),
|
|
86
86
|
/* @__PURE__ */x("ol",{className:"rosh-tl-nodes","aria-label":me,onKeyDown:yn,children:Bt.map((e,t)=>{const n=t=>null!==t&&e.members.some(e=>e.key===t),l=`${Qe.rail+3}px`,a=It?r(t,Wt):{},s=(e=>!!an&&e.x>=an.from-.5&&e.x<=an.to+.5)(e)?" is-lit":"";if(e.mark?.isCap)/* @__PURE__ */
|
|
87
87
|
return x("li",{children:/* @__PURE__ */x("button",{...wn(e.mark),className:`rosh-tl-node rosh-tl-mark is-cap${s}${It?" rosh-tl-pop":""}`,style:{left:`${e.x}px`,top:l,...a}})},e.key);if(!e.mark){const t=e.kind===P,r=R(t?"default":e.kind,"key"),i=t?void 0:A[e.kind]?.glyph;/* @__PURE__ */
|
|
88
88
|
return f("li",{...n(ot)?{"aria-current":"step"}:{},children:[
|
|
@@ -96,4 +96,4 @@ return x("li",{...i.key===ot?{"aria-current":"step"}:{},children:/* @__PURE__ */
|
|
|
96
96
|
/* @__PURE__ */f("p",{className:"rosh-tl-foldrow",children:[
|
|
97
97
|
/* @__PURE__ */x("span",{children:e.label}),
|
|
98
98
|
/* @__PURE__ */x("span",{className:"rosh-tl-date",children:e.dateText})]}),e.preview?/* @__PURE__ */x("div",{className:"rosh-tl-preview","data-timeline-part":"preview",children:e.preview}):e.detail&&/* @__PURE__ */x("span",{className:"rosh-tl-detail",children:e.detail})]},e.key))})]})}),ae&&null!==Et&&
|
|
99
|
-
/* @__PURE__ */x(Q,{thumb:ae,value:Et,snap:zt,axis:wt,geo:Qe,startMs:n,endMs:k,trackPx:qe,layerRef:we,glide:
|
|
99
|
+
/* @__PURE__ */x(Q,{thumb:ae,value:Et,snap:zt,axis:wt,geo:Qe,startMs:n,endMs:k,trackPx:qe,layerRef:we,glide:Jt,onScrub:se?Zt:void 0,nodes:Xt,onProgress:Qt})]})}),fe&&Cn(ie?.end,!0)]}),w.length>0&&!fe&&/* @__PURE__ */x(z,{pending:w,reveal:It})]})}export{g as TimelineGlyph,M as TimelineMilestoneIcon,v as TimelineProgressIcon,ee as TimelineTrack};
|