@astryxdesign/lab 0.0.0-bootstrap.0 → 0.1.2-canary.04e71b2
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/CHANGELOG.md +67 -0
- package/LICENSE +21 -0
- package/README.md +47 -1
- package/dist/Chart/Chart.d.ts +77 -0
- package/dist/Chart/Chart.d.ts.map +1 -0
- package/dist/Chart/Chart.js +247 -0
- package/dist/Chart/ChartArea.d.ts +28 -0
- package/dist/Chart/ChartArea.d.ts.map +1 -0
- package/dist/Chart/ChartArea.js +71 -0
- package/dist/Chart/ChartAxis.d.ts +27 -0
- package/dist/Chart/ChartAxis.d.ts.map +1 -0
- package/dist/Chart/ChartAxis.js +147 -0
- package/dist/Chart/ChartBar.d.ts +19 -0
- package/dist/Chart/ChartBar.d.ts.map +1 -0
- package/dist/Chart/ChartBar.js +61 -0
- package/dist/Chart/ChartBrush.d.ts +59 -0
- package/dist/Chart/ChartBrush.d.ts.map +1 -0
- package/dist/Chart/ChartBrush.js +197 -0
- package/dist/Chart/ChartCandlestick.d.ts +50 -0
- package/dist/Chart/ChartCandlestick.d.ts.map +1 -0
- package/dist/Chart/ChartCandlestick.js +138 -0
- package/dist/Chart/ChartContext.d.ts +5 -0
- package/dist/Chart/ChartContext.d.ts.map +1 -0
- package/dist/Chart/ChartContext.js +20 -0
- package/dist/Chart/ChartDot.d.ts +18 -0
- package/dist/Chart/ChartDot.d.ts.map +1 -0
- package/dist/Chart/ChartDot.js +43 -0
- package/dist/Chart/ChartDotGL.d.ts +16 -0
- package/dist/Chart/ChartDotGL.d.ts.map +1 -0
- package/dist/Chart/ChartDotGL.js +135 -0
- package/dist/Chart/ChartDotGLInteractive.d.ts +41 -0
- package/dist/Chart/ChartDotGLInteractive.d.ts.map +1 -0
- package/dist/Chart/ChartDotGLInteractive.js +446 -0
- package/dist/Chart/ChartErrorBar.d.ts +23 -0
- package/dist/Chart/ChartErrorBar.d.ts.map +1 -0
- package/dist/Chart/ChartErrorBar.js +68 -0
- package/dist/Chart/ChartGrid.d.ts +17 -0
- package/dist/Chart/ChartGrid.d.ts.map +1 -0
- package/dist/Chart/ChartGrid.js +67 -0
- package/dist/Chart/ChartHeatmapGL.d.ts +10 -0
- package/dist/Chart/ChartHeatmapGL.d.ts.map +1 -0
- package/dist/Chart/ChartHeatmapGL.js +171 -0
- package/dist/Chart/ChartLegend.d.ts +60 -0
- package/dist/Chart/ChartLegend.d.ts.map +1 -0
- package/dist/Chart/ChartLegend.js +161 -0
- package/dist/Chart/ChartLine.d.ts +23 -0
- package/dist/Chart/ChartLine.d.ts.map +1 -0
- package/dist/Chart/ChartLine.js +64 -0
- package/dist/Chart/ChartReferenceLine.d.ts +11 -0
- package/dist/Chart/ChartReferenceLine.d.ts.map +1 -0
- package/dist/Chart/ChartReferenceLine.js +109 -0
- package/dist/Chart/ChartSelect.d.ts +9 -0
- package/dist/Chart/ChartSelect.d.ts.map +1 -0
- package/dist/Chart/ChartSelect.js +90 -0
- package/dist/Chart/ChartStreamGL.d.ts +17 -0
- package/dist/Chart/ChartStreamGL.d.ts.map +1 -0
- package/dist/Chart/ChartStreamGL.js +157 -0
- package/dist/Chart/ChartTooltip.d.ts +85 -0
- package/dist/Chart/ChartTooltip.d.ts.map +1 -0
- package/dist/Chart/ChartTooltip.js +335 -0
- package/dist/Chart/ChartZoom.d.ts +23 -0
- package/dist/Chart/ChartZoom.d.ts.map +1 -0
- package/dist/Chart/ChartZoom.js +314 -0
- package/dist/Chart/formatters.d.ts +33 -0
- package/dist/Chart/formatters.d.ts.map +1 -0
- package/dist/Chart/formatters.js +101 -0
- package/dist/Chart/getChartColors.d.ts +56 -0
- package/dist/Chart/getChartColors.d.ts.map +1 -0
- package/dist/Chart/getChartColors.js +150 -0
- package/dist/Chart/index.d.ts +29 -0
- package/dist/Chart/index.d.ts.map +1 -0
- package/dist/Chart/index.js +29 -0
- package/dist/Chart/m4.d.ts +36 -0
- package/dist/Chart/m4.d.ts.map +1 -0
- package/dist/Chart/m4.js +106 -0
- package/dist/Chart/types.d.ts +55 -0
- package/dist/Chart/types.d.ts.map +1 -0
- package/dist/Chart/types.js +1 -0
- package/dist/Chart/useChartColors.d.ts +16 -0
- package/dist/Chart/useChartColors.d.ts.map +1 -0
- package/dist/Chart/useChartColors.js +30 -0
- package/dist/Chart/useChartRange.d.ts +50 -0
- package/dist/Chart/useChartRange.d.ts.map +1 -0
- package/dist/Chart/useChartRange.js +90 -0
- package/dist/Chart/utils.d.ts +15 -0
- package/dist/Chart/utils.d.ts.map +1 -0
- package/dist/Chart/utils.js +24 -0
- package/dist/Chart/webgl.d.ts +62 -0
- package/dist/Chart/webgl.d.ts.map +1 -0
- package/dist/Chart/webgl.js +169 -0
- package/dist/ChartV2/Chart.d.ts +32 -0
- package/dist/ChartV2/Chart.d.ts.map +1 -0
- package/dist/ChartV2/Chart.js +281 -0
- package/dist/ChartV2/ChartAxis.d.ts +36 -0
- package/dist/ChartV2/ChartAxis.d.ts.map +1 -0
- package/dist/ChartV2/ChartAxis.js +161 -0
- package/dist/ChartV2/ChartGrid.d.ts +20 -0
- package/dist/ChartV2/ChartGrid.d.ts.map +1 -0
- package/dist/ChartV2/ChartGrid.js +76 -0
- package/dist/ChartV2/ChartLegend.d.ts +14 -0
- package/dist/ChartV2/ChartLegend.d.ts.map +1 -0
- package/dist/ChartV2/ChartLegend.js +54 -0
- package/dist/ChartV2/ChartSwatch.d.ts +36 -0
- package/dist/ChartV2/ChartSwatch.d.ts.map +1 -0
- package/dist/ChartV2/ChartSwatch.js +82 -0
- package/dist/ChartV2/ChartTooltip.d.ts +46 -0
- package/dist/ChartV2/ChartTooltip.d.ts.map +1 -0
- package/dist/ChartV2/ChartTooltip.js +267 -0
- package/dist/ChartV2/ChartV2Context.d.ts +4 -0
- package/dist/ChartV2/ChartV2Context.d.ts.map +1 -0
- package/dist/ChartV2/ChartV2Context.js +12 -0
- package/dist/ChartV2/index.d.ts +13 -0
- package/dist/ChartV2/index.d.ts.map +1 -0
- package/dist/ChartV2/index.js +10 -0
- package/dist/ChartV2/layout.d.ts +25 -0
- package/dist/ChartV2/layout.d.ts.map +1 -0
- package/dist/ChartV2/layout.js +195 -0
- package/dist/ChartV2/legend.d.ts +18 -0
- package/dist/ChartV2/legend.d.ts.map +1 -0
- package/dist/ChartV2/legend.js +24 -0
- package/dist/ChartV2/marks/area.d.ts +19 -0
- package/dist/ChartV2/marks/area.d.ts.map +1 -0
- package/dist/ChartV2/marks/area.js +109 -0
- package/dist/ChartV2/marks/band.d.ts +9 -0
- package/dist/ChartV2/marks/band.d.ts.map +1 -0
- package/dist/ChartV2/marks/band.js +59 -0
- package/dist/ChartV2/marks/bar.d.ts +17 -0
- package/dist/ChartV2/marks/bar.d.ts.map +1 -0
- package/dist/ChartV2/marks/bar.js +120 -0
- package/dist/ChartV2/marks/candlestick.d.ts +15 -0
- package/dist/ChartV2/marks/candlestick.d.ts.map +1 -0
- package/dist/ChartV2/marks/candlestick.js +83 -0
- package/dist/ChartV2/marks/dot.d.ts +15 -0
- package/dist/ChartV2/marks/dot.d.ts.map +1 -0
- package/dist/ChartV2/marks/dot.js +65 -0
- package/dist/ChartV2/marks/dotGL.d.ts +16 -0
- package/dist/ChartV2/marks/dotGL.d.ts.map +1 -0
- package/dist/ChartV2/marks/dotGL.js +178 -0
- package/dist/ChartV2/marks/dotGLInteractive.d.ts +30 -0
- package/dist/ChartV2/marks/dotGLInteractive.d.ts.map +1 -0
- package/dist/ChartV2/marks/dotGLInteractive.js +464 -0
- package/dist/ChartV2/marks/errorBar.d.ts +27 -0
- package/dist/ChartV2/marks/errorBar.d.ts.map +1 -0
- package/dist/ChartV2/marks/errorBar.js +87 -0
- package/dist/ChartV2/marks/heatmapGL.d.ts +23 -0
- package/dist/ChartV2/marks/heatmapGL.d.ts.map +1 -0
- package/dist/ChartV2/marks/heatmapGL.js +242 -0
- package/dist/ChartV2/marks/index.d.ts +13 -0
- package/dist/ChartV2/marks/index.d.ts.map +1 -0
- package/dist/ChartV2/marks/index.js +14 -0
- package/dist/ChartV2/marks/line.d.ts +18 -0
- package/dist/ChartV2/marks/line.d.ts.map +1 -0
- package/dist/ChartV2/marks/line.js +76 -0
- package/dist/ChartV2/marks/referenceLine.d.ts +35 -0
- package/dist/ChartV2/marks/referenceLine.d.ts.map +1 -0
- package/dist/ChartV2/marks/referenceLine.js +186 -0
- package/dist/ChartV2/marks/streamGL.d.ts +36 -0
- package/dist/ChartV2/marks/streamGL.d.ts.map +1 -0
- package/dist/ChartV2/marks/streamGL.js +204 -0
- package/dist/ChartV2/tooltip.d.ts +38 -0
- package/dist/ChartV2/tooltip.d.ts.map +1 -0
- package/dist/ChartV2/tooltip.js +54 -0
- package/dist/ChartV2/types.d.ts +115 -0
- package/dist/ChartV2/types.d.ts.map +1 -0
- package/dist/ChartV2/types.js +35 -0
- package/dist/ChatReasoning/ChatReasoning.d.ts +51 -0
- package/dist/ChatReasoning/ChatReasoning.d.ts.map +1 -0
- package/dist/ChatReasoning/ChatReasoning.js +236 -0
- package/dist/CircularProgress/CircularProgress.d.ts +101 -0
- package/dist/CircularProgress/CircularProgress.d.ts.map +1 -0
- package/dist/CircularProgress/CircularProgress.js +263 -0
- package/dist/CircularProgress/index.d.ts +6 -0
- package/dist/CircularProgress/index.d.ts.map +1 -0
- package/dist/CircularProgress/index.js +8 -0
- package/dist/CodeBlock/index.d.ts +8 -0
- package/dist/CodeBlock/index.d.ts.map +1 -0
- package/dist/CodeBlock/index.js +9 -0
- package/dist/CodeEditor/CodeEditor.d.ts +46 -0
- package/dist/CodeEditor/CodeEditor.d.ts.map +1 -0
- package/dist/CodeEditor/CodeEditor.js +396 -0
- package/dist/CodeEditor/index.d.ts +6 -0
- package/dist/CodeEditor/index.d.ts.map +1 -0
- package/dist/CodeEditor/index.js +7 -0
- package/dist/Radial/RadialArea.d.ts +25 -0
- package/dist/Radial/RadialArea.d.ts.map +1 -0
- package/dist/Radial/RadialArea.js +91 -0
- package/dist/Radial/RadialAxis.d.ts +14 -0
- package/dist/Radial/RadialAxis.d.ts.map +1 -0
- package/dist/Radial/RadialAxis.js +55 -0
- package/dist/Radial/RadialChart.d.ts +70 -0
- package/dist/Radial/RadialChart.d.ts.map +1 -0
- package/dist/Radial/RadialChart.js +174 -0
- package/dist/Radial/RadialContext.d.ts +5 -0
- package/dist/Radial/RadialContext.d.ts.map +1 -0
- package/dist/Radial/RadialContext.js +19 -0
- package/dist/Radial/RadialGrid.d.ts +14 -0
- package/dist/Radial/RadialGrid.d.ts.map +1 -0
- package/dist/Radial/RadialGrid.js +70 -0
- package/dist/Radial/RadialSlice.d.ts +23 -0
- package/dist/Radial/RadialSlice.d.ts.map +1 -0
- package/dist/Radial/RadialSlice.js +85 -0
- package/dist/Radial/RadialTooltip.d.ts +44 -0
- package/dist/Radial/RadialTooltip.d.ts.map +1 -0
- package/dist/Radial/RadialTooltip.js +284 -0
- package/dist/Radial/index.d.ts +9 -0
- package/dist/Radial/index.d.ts.map +1 -0
- package/dist/Radial/index.js +9 -0
- package/dist/Radial/types.d.ts +39 -0
- package/dist/Radial/types.d.ts.map +1 -0
- package/dist/Radial/types.js +1 -0
- package/dist/SVGIcon/SVGIcon.d.ts +87 -0
- package/dist/SVGIcon/SVGIcon.d.ts.map +1 -0
- package/dist/SVGIcon/SVGIcon.js +299 -0
- package/dist/SVGIcon/icons.d.ts +49 -0
- package/dist/SVGIcon/icons.d.ts.map +1 -0
- package/dist/SVGIcon/icons.js +326 -0
- package/dist/SVGIcon/index.d.ts +15 -0
- package/dist/SVGIcon/index.d.ts.map +1 -0
- package/dist/SVGIcon/index.js +22 -0
- package/dist/SVGIcon/pathTransforms.d.ts +35 -0
- package/dist/SVGIcon/pathTransforms.d.ts.map +1 -0
- package/dist/SVGIcon/pathTransforms.js +644 -0
- package/dist/SVGIcon/tokens.stylex.d.ts +37 -0
- package/dist/SVGIcon/tokens.stylex.d.ts.map +1 -0
- package/dist/SVGIcon/tokens.stylex.js +40 -0
- package/dist/SVGIcon/variations.stylex.d.ts +44 -0
- package/dist/SVGIcon/variations.stylex.d.ts.map +1 -0
- package/dist/SVGIcon/variations.stylex.js +119 -0
- package/dist/SVGIcon/xif-examples.d.ts +22 -0
- package/dist/SVGIcon/xif-examples.d.ts.map +1 -0
- package/dist/SVGIcon/xif-examples.js +202 -0
- package/dist/SVGIcon/xif-types.d.ts +129 -0
- package/dist/SVGIcon/xif-types.d.ts.map +1 -0
- package/dist/SVGIcon/xif-types.js +1 -0
- package/dist/Sankey/SankeyChart.d.ts +72 -0
- package/dist/Sankey/SankeyChart.d.ts.map +1 -0
- package/dist/Sankey/SankeyChart.js +162 -0
- package/dist/Sankey/SankeyContext.d.ts +5 -0
- package/dist/Sankey/SankeyContext.d.ts.map +1 -0
- package/dist/Sankey/SankeyContext.js +20 -0
- package/dist/Sankey/SankeyGrid.d.ts +20 -0
- package/dist/Sankey/SankeyGrid.d.ts.map +1 -0
- package/dist/Sankey/SankeyGrid.js +53 -0
- package/dist/Sankey/SankeyLabel.d.ts +11 -0
- package/dist/Sankey/SankeyLabel.d.ts.map +1 -0
- package/dist/Sankey/SankeyLabel.js +179 -0
- package/dist/Sankey/SankeyLink.d.ts +29 -0
- package/dist/Sankey/SankeyLink.d.ts.map +1 -0
- package/dist/Sankey/SankeyLink.js +139 -0
- package/dist/Sankey/SankeyNode.d.ts +15 -0
- package/dist/Sankey/SankeyNode.d.ts.map +1 -0
- package/dist/Sankey/SankeyNode.js +56 -0
- package/dist/Sankey/index.d.ts +8 -0
- package/dist/Sankey/index.d.ts.map +1 -0
- package/dist/Sankey/index.js +8 -0
- package/dist/Sankey/layout.d.ts +26 -0
- package/dist/Sankey/layout.d.ts.map +1 -0
- package/dist/Sankey/layout.js +157 -0
- package/dist/Sankey/types.d.ts +84 -0
- package/dist/Sankey/types.d.ts.map +1 -0
- package/dist/Sankey/types.js +1 -0
- package/dist/Schedule/CalendarEvent.d.ts +36 -0
- package/dist/Schedule/CalendarEvent.d.ts.map +1 -0
- package/dist/Schedule/CalendarEvent.js +35 -0
- package/dist/Schedule/DayView.d.ts +8 -0
- package/dist/Schedule/DayView.d.ts.map +1 -0
- package/dist/Schedule/DayView.js +105 -0
- package/dist/Schedule/ListView.d.ts +6 -0
- package/dist/Schedule/ListView.d.ts.map +1 -0
- package/dist/Schedule/ListView.js +171 -0
- package/dist/Schedule/MonthlyView.d.ts +6 -0
- package/dist/Schedule/MonthlyView.d.ts.map +1 -0
- package/dist/Schedule/MonthlyView.js +270 -0
- package/dist/Schedule/Schedule.d.ts +22 -0
- package/dist/Schedule/Schedule.d.ts.map +1 -0
- package/dist/Schedule/Schedule.js +185 -0
- package/dist/Schedule/TimeGridView.d.ts +12 -0
- package/dist/Schedule/TimeGridView.d.ts.map +1 -0
- package/dist/Schedule/TimeGridView.js +364 -0
- package/dist/Schedule/WeeklyView.d.ts +9 -0
- package/dist/Schedule/WeeklyView.d.ts.map +1 -0
- package/dist/Schedule/WeeklyView.js +112 -0
- package/dist/Schedule/context.d.ts +20 -0
- package/dist/Schedule/context.d.ts.map +1 -0
- package/dist/Schedule/context.js +19 -0
- package/dist/Schedule/dateMath.d.ts +21 -0
- package/dist/Schedule/dateMath.d.ts.map +1 -0
- package/dist/Schedule/dateMath.js +63 -0
- package/dist/Schedule/index.d.ts +19 -0
- package/dist/Schedule/index.d.ts.map +1 -0
- package/dist/Schedule/index.js +17 -0
- package/dist/Schedule/plugins/PaginationPlugin.d.ts +7 -0
- package/dist/Schedule/plugins/PaginationPlugin.d.ts.map +1 -0
- package/dist/Schedule/plugins/PaginationPlugin.js +81 -0
- package/dist/Schedule/plugins/ViewSelectorPlugin.d.ts +11 -0
- package/dist/Schedule/plugins/ViewSelectorPlugin.d.ts.map +1 -0
- package/dist/Schedule/plugins/ViewSelectorPlugin.js +78 -0
- package/dist/Schedule/plugins/index.d.ts +5 -0
- package/dist/Schedule/plugins/index.d.ts.map +1 -0
- package/dist/Schedule/plugins/index.js +14 -0
- package/dist/Schedule/shared.d.ts +923 -0
- package/dist/Schedule/shared.d.ts.map +1 -0
- package/dist/Schedule/shared.js +1325 -0
- package/dist/Schedule/types.d.ts +51 -0
- package/dist/Schedule/types.d.ts.map +1 -0
- package/dist/Schedule/types.js +1 -0
- package/dist/Schedule/useCurrentTime.d.ts +3 -0
- package/dist/Schedule/useCurrentTime.d.ts.map +1 -0
- package/dist/Schedule/useCurrentTime.js +43 -0
- package/dist/Schedule/zonedDateTime.d.ts +20 -0
- package/dist/Schedule/zonedDateTime.d.ts.map +1 -0
- package/dist/Schedule/zonedDateTime.js +31 -0
- package/dist/Stepper/Step.d.ts +120 -0
- package/dist/Stepper/Step.d.ts.map +1 -0
- package/dist/Stepper/Step.js +573 -0
- package/dist/Stepper/StepStatus.d.ts +24 -0
- package/dist/Stepper/StepStatus.d.ts.map +1 -0
- package/dist/Stepper/StepStatus.js +1 -0
- package/dist/Stepper/Stepper.d.ts +77 -0
- package/dist/Stepper/Stepper.d.ts.map +1 -0
- package/dist/Stepper/Stepper.js +104 -0
- package/dist/Stepper/StepperContext.d.ts +12 -0
- package/dist/Stepper/StepperContext.d.ts.map +1 -0
- package/dist/Stepper/StepperContext.js +24 -0
- package/dist/Stepper/index.d.ts +8 -0
- package/dist/Stepper/index.d.ts.map +1 -0
- package/dist/Stepper/index.js +7 -0
- package/dist/ThreeD/ThreeDAxis.d.ts +6 -0
- package/dist/ThreeD/ThreeDAxis.d.ts.map +1 -0
- package/dist/ThreeD/ThreeDAxis.js +75 -0
- package/dist/ThreeD/ThreeDBar.d.ts +7 -0
- package/dist/ThreeD/ThreeDBar.d.ts.map +1 -0
- package/dist/ThreeD/ThreeDBar.js +98 -0
- package/dist/ThreeD/ThreeDChart.d.ts +24 -0
- package/dist/ThreeD/ThreeDChart.d.ts.map +1 -0
- package/dist/ThreeD/ThreeDChart.js +202 -0
- package/dist/ThreeD/ThreeDContext.d.ts +5 -0
- package/dist/ThreeD/ThreeDContext.d.ts.map +1 -0
- package/dist/ThreeD/ThreeDContext.js +19 -0
- package/dist/ThreeD/ThreeDGrid.d.ts +5 -0
- package/dist/ThreeD/ThreeDGrid.d.ts.map +1 -0
- package/dist/ThreeD/ThreeDGrid.js +55 -0
- package/dist/ThreeD/ThreeDScatter.d.ts +7 -0
- package/dist/ThreeD/ThreeDScatter.d.ts.map +1 -0
- package/dist/ThreeD/ThreeDScatter.js +57 -0
- package/dist/ThreeD/ThreeDScatterGL.d.ts +7 -0
- package/dist/ThreeD/ThreeDScatterGL.d.ts.map +1 -0
- package/dist/ThreeD/ThreeDScatterGL.js +243 -0
- package/dist/ThreeD/ThreeDSurface.d.ts +15 -0
- package/dist/ThreeD/ThreeDSurface.d.ts.map +1 -0
- package/dist/ThreeD/ThreeDSurface.js +97 -0
- package/dist/ThreeD/index.d.ts +10 -0
- package/dist/ThreeD/index.d.ts.map +1 -0
- package/dist/ThreeD/index.js +10 -0
- package/dist/ThreeD/types.d.ts +57 -0
- package/dist/ThreeD/types.d.ts.map +1 -0
- package/dist/ThreeD/types.js +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +47 -0
- package/dist/lab.css +423 -0
- package/package.json +69 -4
- package/src/Chart/Chart.tsx +312 -0
- package/src/Chart/ChartArea.doc.mjs +16 -0
- package/src/Chart/ChartArea.tsx +91 -0
- package/src/Chart/ChartAxis.tsx +186 -0
- package/src/Chart/ChartBar.doc.mjs +16 -0
- package/src/Chart/ChartBar.tsx +71 -0
- package/src/Chart/ChartBrush.tsx +237 -0
- package/src/Chart/ChartCandlestick.doc.mjs +16 -0
- package/src/Chart/ChartCandlestick.tsx +186 -0
- package/src/Chart/ChartContext.ts +23 -0
- package/src/Chart/ChartDot.doc.mjs +16 -0
- package/src/Chart/ChartDot.tsx +44 -0
- package/src/Chart/ChartDotGL.doc.mjs +16 -0
- package/src/Chart/ChartDotGL.tsx +151 -0
- package/src/Chart/ChartDotGLInteractive.doc.mjs +16 -0
- package/src/Chart/ChartDotGLInteractive.tsx +519 -0
- package/src/Chart/ChartErrorBar.tsx +84 -0
- package/src/Chart/ChartGrid.tsx +86 -0
- package/src/Chart/ChartHeatmapGL.doc.mjs +16 -0
- package/src/Chart/ChartHeatmapGL.tsx +219 -0
- package/src/Chart/ChartLegend.tsx +181 -0
- package/src/Chart/ChartLine.doc.mjs +16 -0
- package/src/Chart/ChartLine.tsx +70 -0
- package/src/Chart/ChartReferenceLine.tsx +76 -0
- package/src/Chart/ChartSelect.tsx +111 -0
- package/src/Chart/ChartStreamGL.doc.mjs +16 -0
- package/src/Chart/ChartStreamGL.tsx +189 -0
- package/src/Chart/ChartTooltip.tsx +451 -0
- package/src/Chart/ChartZoom.tsx +400 -0
- package/src/Chart/formatters.ts +95 -0
- package/src/Chart/getChartColors.ts +249 -0
- package/src/Chart/index.ts +90 -0
- package/src/Chart/m4.test.ts +66 -0
- package/src/Chart/m4.ts +128 -0
- package/src/Chart/types.ts +64 -0
- package/src/Chart/useChartColors.ts +34 -0
- package/src/Chart/useChartRange.test.ts +101 -0
- package/src/Chart/useChartRange.ts +146 -0
- package/src/Chart/utils.ts +31 -0
- package/src/Chart/webgl.ts +192 -0
- package/src/ChartV2/Chart.tsx +348 -0
- package/src/ChartV2/ChartAxis.tsx +209 -0
- package/src/ChartV2/ChartGrid.tsx +99 -0
- package/src/ChartV2/ChartLegend.tsx +69 -0
- package/src/ChartV2/ChartSwatch.doc.mjs +17 -0
- package/src/ChartV2/ChartSwatch.tsx +86 -0
- package/src/ChartV2/ChartTooltip.tsx +382 -0
- package/src/ChartV2/ChartV2.doc.mjs +16 -0
- package/src/ChartV2/ChartV2Context.ts +15 -0
- package/src/ChartV2/index.ts +62 -0
- package/src/ChartV2/layout.ts +223 -0
- package/src/ChartV2/legend.ts +32 -0
- package/src/ChartV2/marks/area.tsx +122 -0
- package/src/ChartV2/marks/band.tsx +70 -0
- package/src/ChartV2/marks/bar.tsx +159 -0
- package/src/ChartV2/marks/candlestick.tsx +106 -0
- package/src/ChartV2/marks/dot.tsx +64 -0
- package/src/ChartV2/marks/dotGL.tsx +202 -0
- package/src/ChartV2/marks/dotGLInteractive.tsx +546 -0
- package/src/ChartV2/marks/errorBar.tsx +89 -0
- package/src/ChartV2/marks/heatmapGL.tsx +299 -0
- package/src/ChartV2/marks/index.ts +14 -0
- package/src/ChartV2/marks/line.tsx +94 -0
- package/src/ChartV2/marks/referenceLine.tsx +224 -0
- package/src/ChartV2/marks/streamGL.tsx +251 -0
- package/src/ChartV2/tooltip.ts +70 -0
- package/src/ChartV2/types.ts +129 -0
- package/src/ChatReasoning/ChatReasoning.doc.mjs +16 -0
- package/src/ChatReasoning/ChatReasoning.test.tsx +56 -0
- package/src/ChatReasoning/ChatReasoning.tsx +322 -0
- package/src/CircularProgress/CircularProgress.doc.mjs +174 -0
- package/src/CircularProgress/CircularProgress.test.tsx +157 -0
- package/src/CircularProgress/CircularProgress.tsx +373 -0
- package/src/CircularProgress/index.ts +15 -0
- package/src/CodeBlock/index.ts +10 -0
- package/src/CodeEditor/CodeEditor.doc.mjs +16 -0
- package/src/CodeEditor/CodeEditor.tsx +466 -0
- package/src/CodeEditor/index.ts +8 -0
- package/src/Radial/RadialArea.tsx +103 -0
- package/src/Radial/RadialAxis.tsx +60 -0
- package/src/Radial/RadialChart.doc.mjs +16 -0
- package/src/Radial/RadialChart.tsx +219 -0
- package/src/Radial/RadialContext.ts +22 -0
- package/src/Radial/RadialGrid.tsx +81 -0
- package/src/Radial/RadialSlice.tsx +130 -0
- package/src/Radial/RadialTooltip.tsx +347 -0
- package/src/Radial/index.ts +14 -0
- package/src/Radial/types.ts +46 -0
- package/src/SVGIcon/SVGIcon.doc.mjs +16 -0
- package/src/SVGIcon/SVGIcon.tsx +406 -0
- package/src/SVGIcon/icons.ts +283 -0
- package/src/SVGIcon/index.ts +73 -0
- package/src/SVGIcon/pathTransforms.ts +612 -0
- package/src/SVGIcon/tokens.stylex.ts +53 -0
- package/src/SVGIcon/variations.stylex.ts +122 -0
- package/src/SVGIcon/xif-examples.ts +191 -0
- package/src/SVGIcon/xif-types.ts +181 -0
- package/src/Sankey/SankeyChart.doc.mjs +16 -0
- package/src/Sankey/SankeyChart.tsx +220 -0
- package/src/Sankey/SankeyContext.ts +23 -0
- package/src/Sankey/SankeyGrid.tsx +69 -0
- package/src/Sankey/SankeyLabel.tsx +234 -0
- package/src/Sankey/SankeyLink.tsx +167 -0
- package/src/Sankey/SankeyNode.tsx +66 -0
- package/src/Sankey/index.ts +22 -0
- package/src/Sankey/layout.ts +219 -0
- package/src/Sankey/types.ts +93 -0
- package/src/Schedule/CalendarEvent.ts +74 -0
- package/src/Schedule/DayView.tsx +112 -0
- package/src/Schedule/ListView.tsx +236 -0
- package/src/Schedule/MonthlyView.tsx +401 -0
- package/src/Schedule/Schedule.doc.mjs +16 -0
- package/src/Schedule/Schedule.test.tsx +405 -0
- package/src/Schedule/Schedule.tsx +307 -0
- package/src/Schedule/TimeGridView.tsx +589 -0
- package/src/Schedule/WeeklyView.tsx +130 -0
- package/src/Schedule/context.tsx +49 -0
- package/src/Schedule/dateMath.ts +112 -0
- package/src/Schedule/index.ts +61 -0
- package/src/Schedule/plugins/PaginationPlugin.tsx +98 -0
- package/src/Schedule/plugins/ViewSelectorPlugin.tsx +128 -0
- package/src/Schedule/plugins/index.tsx +20 -0
- package/src/Schedule/shared.tsx +1304 -0
- package/src/Schedule/types.ts +86 -0
- package/src/Schedule/useCurrentTime.ts +50 -0
- package/src/Schedule/zonedDateTime.ts +71 -0
- package/src/Stepper/Step.doc.mjs +17 -0
- package/src/Stepper/Step.tsx +756 -0
- package/src/Stepper/StepStatus.ts +26 -0
- package/src/Stepper/Stepper.doc.mjs +265 -0
- package/src/Stepper/Stepper.test.tsx +281 -0
- package/src/Stepper/Stepper.tsx +157 -0
- package/src/Stepper/StepperContext.ts +43 -0
- package/src/Stepper/index.ts +14 -0
- package/src/ThreeD/3DBar.doc.mjs +16 -0
- package/src/ThreeD/3DChart.doc.mjs +16 -0
- package/src/ThreeD/3DScatter.doc.mjs +16 -0
- package/src/ThreeD/3DScatterGL.doc.mjs +16 -0
- package/src/ThreeD/3DSurface.doc.mjs +16 -0
- package/src/ThreeD/ThreeDAxis.tsx +86 -0
- package/src/ThreeD/ThreeDBar.tsx +130 -0
- package/src/ThreeD/ThreeDChart.tsx +262 -0
- package/src/ThreeD/ThreeDContext.ts +22 -0
- package/src/ThreeD/ThreeDGrid.tsx +68 -0
- package/src/ThreeD/ThreeDScatter.tsx +63 -0
- package/src/ThreeD/ThreeDScatterGL.tsx +270 -0
- package/src/ThreeD/ThreeDSurface.tsx +142 -0
- package/src/ThreeD/index.ts +11 -0
- package/src/ThreeD/projection.test.ts +132 -0
- package/src/ThreeD/types.ts +62 -0
- package/src/index.ts +250 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { CalendarEvent, ScheduleRange, ZonedDateTime, ScheduleCategory, SchedulePlugin, ScheduleViewBase } from './types';
|
|
2
|
+
export interface ScheduleContextValue {
|
|
3
|
+
events: ReadonlyArray<CalendarEvent>;
|
|
4
|
+
categories: ReadonlyArray<ScheduleCategory>;
|
|
5
|
+
date: ZonedDateTime;
|
|
6
|
+
focusDate: ZonedDateTime;
|
|
7
|
+
timezoneID: string;
|
|
8
|
+
range: ScheduleRange;
|
|
9
|
+
isLoading: boolean;
|
|
10
|
+
onPreviousDate: () => void;
|
|
11
|
+
previousDateLabel: string;
|
|
12
|
+
onToday: () => void;
|
|
13
|
+
onNextDate: () => void;
|
|
14
|
+
nextDateLabel: string;
|
|
15
|
+
view: ScheduleViewBase;
|
|
16
|
+
plugins: ReadonlyArray<SchedulePlugin>;
|
|
17
|
+
}
|
|
18
|
+
export declare const ScheduleContext: import("react").Context<ScheduleContextValue | null>;
|
|
19
|
+
export declare function useScheduleContext(): ScheduleContextValue;
|
|
20
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/Schedule/context.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IACrC,UAAU,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAC5C,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,aAAa,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;CACxC;AAED,eAAO,MAAM,eAAe,sDAE3B,CAAC;AAEF,wBAAgB,kBAAkB,IAAI,oBAAoB,CAMzD"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
'use client';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @file context.tsx
|
|
7
|
+
* @input Resolved Schedule events, range, timezone, and active date
|
|
8
|
+
* @output Schedule context object and hook used by view components
|
|
9
|
+
* @position Internal context bridge between generic Schedule and concrete views
|
|
10
|
+
*/
|
|
11
|
+
import { createContext, useContext } from 'react';
|
|
12
|
+
export const ScheduleContext = /*#__PURE__*/createContext(null);
|
|
13
|
+
export function useScheduleContext() {
|
|
14
|
+
const context = useContext(ScheduleContext);
|
|
15
|
+
if (context == null) {
|
|
16
|
+
throw new Error('Schedule views must be rendered inside Schedule.');
|
|
17
|
+
}
|
|
18
|
+
return context;
|
|
19
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file dateMath.ts
|
|
3
|
+
* @input PlainDate records, Instant epoch milliseconds, IANA timezone IDs
|
|
4
|
+
* @output Pure range, conversion, formatting, and event-overlap utilities
|
|
5
|
+
* @position Shared schedule utility layer; consumed by Schedule and tests
|
|
6
|
+
*/
|
|
7
|
+
import { type PlainDate } from '@astryxdesign/core/utils';
|
|
8
|
+
import type { CalendarDayEvent, CalendarEvent } from './CalendarEvent';
|
|
9
|
+
import type { ScheduleRange } from './types';
|
|
10
|
+
export declare function getBrowserTimezoneID(): string;
|
|
11
|
+
export declare function isDayEvent(event: CalendarEvent): event is CalendarDayEvent;
|
|
12
|
+
export declare function getScheduleRangeFromDates({ startDate, endDate, timezoneID, }: {
|
|
13
|
+
startDate: PlainDate;
|
|
14
|
+
endDate: PlainDate;
|
|
15
|
+
timezoneID: string;
|
|
16
|
+
}): ScheduleRange;
|
|
17
|
+
export declare function enumerateDates(start: PlainDate, endExclusive: PlainDate): PlainDate[];
|
|
18
|
+
export declare function eventOverlapsRange(event: CalendarEvent, range: ScheduleRange, timezoneID: string): boolean;
|
|
19
|
+
export declare function eventOccursOnDate(event: CalendarEvent, date: PlainDate, timezoneID: string): boolean;
|
|
20
|
+
export declare function sortEvents(events: ReadonlyArray<CalendarEvent>, timezoneID: string): CalendarEvent[];
|
|
21
|
+
//# sourceMappingURL=dateMath.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dateMath.d.ts","sourceRoot":"","sources":["../../src/Schedule/dateMath.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,EACL,KAAK,SAAS,EAMf,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAC,gBAAgB,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAC;AACrE,OAAO,KAAK,EAAU,aAAa,EAAC,MAAM,SAAS,CAAC;AAEpD,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,KAAK,IAAI,gBAAgB,CAE1E;AAED,wBAAgB,yBAAyB,CAAC,EACxC,SAAS,EACT,OAAO,EACP,UAAU,GACX,EAAE;IACD,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,SAAS,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,aAAa,CAOhB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,eAQvE;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,MAAM,GACjB,OAAO,CAUT;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,SAAS,EACf,UAAU,EAAE,MAAM,GACjB,OAAO,CAeT;AAED,wBAAgB,UAAU,CACxB,MAAM,EAAE,aAAa,CAAC,aAAa,CAAC,EACpC,UAAU,EAAE,MAAM,GACjB,aAAa,EAAE,CAUjB"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @file dateMath.ts
|
|
5
|
+
* @input PlainDate records, Instant epoch milliseconds, IANA timezone IDs
|
|
6
|
+
* @output Pure range, conversion, formatting, and event-overlap utilities
|
|
7
|
+
* @position Shared schedule utility layer; consumed by Schedule and tests
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { plainDateAddDays, plainDateFromInstant, plainDateIsAfter, plainDateIsBefore, plainDateToInstant } from '@astryxdesign/core/utils';
|
|
11
|
+
export function getBrowserTimezoneID() {
|
|
12
|
+
return Intl.DateTimeFormat().resolvedOptions().timeZone || 'UTC';
|
|
13
|
+
}
|
|
14
|
+
export function isDayEvent(event) {
|
|
15
|
+
return typeof event.start !== 'number';
|
|
16
|
+
}
|
|
17
|
+
export function getScheduleRangeFromDates({
|
|
18
|
+
startDate,
|
|
19
|
+
endDate,
|
|
20
|
+
timezoneID
|
|
21
|
+
}) {
|
|
22
|
+
return {
|
|
23
|
+
startDate,
|
|
24
|
+
endDate,
|
|
25
|
+
start: plainDateToInstant(startDate, timezoneID),
|
|
26
|
+
end: plainDateToInstant(endDate, timezoneID)
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
export function enumerateDates(start, endExclusive) {
|
|
30
|
+
const dates = [];
|
|
31
|
+
let current = start;
|
|
32
|
+
while (plainDateIsBefore(current, endExclusive)) {
|
|
33
|
+
dates.push(current);
|
|
34
|
+
current = plainDateAddDays(current, 1);
|
|
35
|
+
}
|
|
36
|
+
return dates;
|
|
37
|
+
}
|
|
38
|
+
export function eventOverlapsRange(event, range, timezoneID) {
|
|
39
|
+
if (isDayEvent(event)) {
|
|
40
|
+
const eventStart = plainDateToInstant(event.start, timezoneID);
|
|
41
|
+
const eventEnd = plainDateToInstant(plainDateAddDays(event.end, 1), timezoneID);
|
|
42
|
+
return eventStart < range.end && eventEnd > range.start;
|
|
43
|
+
}
|
|
44
|
+
return event.start < range.end && event.end > range.start;
|
|
45
|
+
}
|
|
46
|
+
export function eventOccursOnDate(event, date, timezoneID) {
|
|
47
|
+
if (isDayEvent(event)) {
|
|
48
|
+
return !plainDateIsAfter(event.start, date) && !plainDateIsBefore(event.end, date);
|
|
49
|
+
}
|
|
50
|
+
const startDate = plainDateFromInstant(event.start, timezoneID);
|
|
51
|
+
const endDate = plainDateFromInstant(Math.max(event.end - 1, event.start), timezoneID);
|
|
52
|
+
return !plainDateIsAfter(startDate, date) && !plainDateIsBefore(endDate, date);
|
|
53
|
+
}
|
|
54
|
+
export function sortEvents(events, timezoneID) {
|
|
55
|
+
return [...events].sort((a, b) => {
|
|
56
|
+
const aStart = getEventSortStart(a, timezoneID);
|
|
57
|
+
const bStart = getEventSortStart(b, timezoneID);
|
|
58
|
+
return aStart < bStart ? -1 : aStart > bStart ? 1 : a.title.localeCompare(b.title);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
function getEventSortStart(event, timezoneID) {
|
|
62
|
+
return isDayEvent(event) ? plainDateToInstant(event.start, timezoneID) : event.start;
|
|
63
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file index.ts
|
|
3
|
+
* @input Schedule implementation and public schedule types
|
|
4
|
+
* @output Public exports for @astryxdesign/lab Schedule
|
|
5
|
+
* @position Component entry point; re-exported by packages/lab/src/index.ts
|
|
6
|
+
*/
|
|
7
|
+
export { Schedule, type ScheduleProps } from './Schedule';
|
|
8
|
+
export { createEventFromISO } from './CalendarEvent';
|
|
9
|
+
export { createScheduleMonthlyView, type ScheduleMonthlyViewOptions, } from './MonthlyView';
|
|
10
|
+
export { createScheduleWeeklyView, type ScheduleWeeklyViewOptions, } from './WeeklyView';
|
|
11
|
+
export { createScheduleDayView, type ScheduleDayViewOptions, } from './DayView';
|
|
12
|
+
export { createScheduleListView, type ScheduleListViewOptions, } from './ListView';
|
|
13
|
+
export { ScheduleContext, useScheduleContext } from './context';
|
|
14
|
+
export { defaultSchedulePlugins, useSchedulePaginationPlugin, useScheduleViewSelectorPlugin, } from './plugins';
|
|
15
|
+
export type { ScheduleContextValue } from './context';
|
|
16
|
+
export type { SchedulePaginationPluginOptions } from './plugins/PaginationPlugin';
|
|
17
|
+
export type { ScheduleViewSelectorOption, ScheduleViewSelectorPluginOptions, } from './plugins/ViewSelectorPlugin';
|
|
18
|
+
export type { CalendarDayEvent, CalendarEvent, CalendarEventBase, CalendarInstantEvent, Instant, PlainDate, ScheduleRange, ZonedDateTime, ZonedDateTimeRange, ScheduleCategory, ScheduleDate, ScheduleEventColor, ScheduleEventSource, ScheduleHeaderContent, SchedulePlugin, SchedulePluginPosition, ScheduleView, ScheduleViewBase, ScheduleViewOptions, } from './types';
|
|
19
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Schedule/index.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,EAAC,QAAQ,EAAE,KAAK,aAAa,EAAC,MAAM,YAAY,CAAC;AACxD,OAAO,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AACnD,OAAO,EACL,yBAAyB,EACzB,KAAK,0BAA0B,GAChC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,wBAAwB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,KAAK,sBAAsB,GAC5B,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,sBAAsB,EACtB,KAAK,uBAAuB,GAC7B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAC,eAAe,EAAE,kBAAkB,EAAC,MAAM,WAAW,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,6BAA6B,GAC9B,MAAM,WAAW,CAAC;AACnB,YAAY,EAAC,oBAAoB,EAAC,MAAM,WAAW,CAAC;AACpD,YAAY,EAAC,+BAA+B,EAAC,MAAM,4BAA4B,CAAC;AAChF,YAAY,EACV,0BAA0B,EAC1B,iCAAiC,GAClC,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,OAAO,EACP,SAAS,EACT,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,sBAAsB,EACtB,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @file index.ts
|
|
5
|
+
* @input Schedule implementation and public schedule types
|
|
6
|
+
* @output Public exports for @astryxdesign/lab Schedule
|
|
7
|
+
* @position Component entry point; re-exported by packages/lab/src/index.ts
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
export { Schedule } from "./Schedule.js";
|
|
11
|
+
export { createEventFromISO } from "./CalendarEvent.js";
|
|
12
|
+
export { createScheduleMonthlyView } from "./MonthlyView.js";
|
|
13
|
+
export { createScheduleWeeklyView } from "./WeeklyView.js";
|
|
14
|
+
export { createScheduleDayView } from "./DayView.js";
|
|
15
|
+
export { createScheduleListView } from "./ListView.js";
|
|
16
|
+
export { ScheduleContext, useScheduleContext } from "./context.js";
|
|
17
|
+
export { defaultSchedulePlugins, useSchedulePaginationPlugin, useScheduleViewSelectorPlugin } from "./plugins/index.js";
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SchedulePlugin, SchedulePluginPosition } from '../types';
|
|
2
|
+
export interface SchedulePaginationPluginOptions {
|
|
3
|
+
position?: SchedulePluginPosition;
|
|
4
|
+
}
|
|
5
|
+
export declare const defaultSchedulePaginationPlugin: SchedulePlugin;
|
|
6
|
+
export declare function useSchedulePaginationPlugin({ position, }?: SchedulePaginationPluginOptions): SchedulePlugin;
|
|
7
|
+
//# sourceMappingURL=PaginationPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PaginationPlugin.d.ts","sourceRoot":"","sources":["../../../src/Schedule/plugins/PaginationPlugin.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAEV,cAAc,EACd,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AA8DD,eAAO,MAAM,+BAA+B,gBACV,CAAC;AAEnC,wBAAgB,2BAA2B,CAAC,EAC1C,QAAkB,GACnB,GAAE,+BAAoC,GAAG,cAAc,CAKvD"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
'use client';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @file PaginationPlugin.tsx
|
|
7
|
+
* @input Schedule date navigation callbacks from Schedule context
|
|
8
|
+
* @output Hook and default plugin that render previous, today, and next controls
|
|
9
|
+
* @position Built-in Schedule plugin; re-exported from plugins.tsx
|
|
10
|
+
*/
|
|
11
|
+
import { useMemo } from 'react';
|
|
12
|
+
import { Button } from '@astryxdesign/core/Button';
|
|
13
|
+
import { ButtonGroup } from '@astryxdesign/core/ButtonGroup';
|
|
14
|
+
import { Icon } from '@astryxdesign/core/Icon';
|
|
15
|
+
import { IconButton } from '@astryxdesign/core/IconButton';
|
|
16
|
+
import { useScheduleContext } from "../context.js";
|
|
17
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
18
|
+
function SchedulePaginationControls() {
|
|
19
|
+
const {
|
|
20
|
+
onPreviousDate,
|
|
21
|
+
previousDateLabel,
|
|
22
|
+
onToday,
|
|
23
|
+
onNextDate,
|
|
24
|
+
nextDateLabel
|
|
25
|
+
} = useScheduleContext();
|
|
26
|
+
return /*#__PURE__*/_jsxs(ButtonGroup, {
|
|
27
|
+
label: "Schedule pagination",
|
|
28
|
+
size: "sm",
|
|
29
|
+
children: [/*#__PURE__*/_jsx(IconButton, {
|
|
30
|
+
label: previousDateLabel,
|
|
31
|
+
icon: /*#__PURE__*/_jsx(Icon, {
|
|
32
|
+
icon: "chevronLeft",
|
|
33
|
+
size: "sm",
|
|
34
|
+
color: "inherit"
|
|
35
|
+
}),
|
|
36
|
+
onClick: onPreviousDate
|
|
37
|
+
}), /*#__PURE__*/_jsx(Button, {
|
|
38
|
+
label: "Today",
|
|
39
|
+
size: "sm",
|
|
40
|
+
onClick: onToday
|
|
41
|
+
}), /*#__PURE__*/_jsx(IconButton, {
|
|
42
|
+
label: nextDateLabel,
|
|
43
|
+
icon: /*#__PURE__*/_jsx(Icon, {
|
|
44
|
+
icon: "chevronRight",
|
|
45
|
+
size: "sm",
|
|
46
|
+
color: "inherit"
|
|
47
|
+
}),
|
|
48
|
+
onClick: onNextDate
|
|
49
|
+
})]
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
function createSchedulePaginationPlugin({
|
|
53
|
+
position = 'start'
|
|
54
|
+
} = {}) {
|
|
55
|
+
return {
|
|
56
|
+
renderHeader(startContent, centerContent, endContent) {
|
|
57
|
+
const controls = /*#__PURE__*/_jsx(SchedulePaginationControls, {});
|
|
58
|
+
return position === 'start' ? {
|
|
59
|
+
startContent: /*#__PURE__*/_jsxs(_Fragment, {
|
|
60
|
+
children: [controls, startContent]
|
|
61
|
+
}),
|
|
62
|
+
centerContent,
|
|
63
|
+
endContent
|
|
64
|
+
} : {
|
|
65
|
+
startContent,
|
|
66
|
+
centerContent,
|
|
67
|
+
endContent: /*#__PURE__*/_jsxs(_Fragment, {
|
|
68
|
+
children: [endContent, controls]
|
|
69
|
+
})
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
export const defaultSchedulePaginationPlugin = createSchedulePaginationPlugin();
|
|
75
|
+
export function useSchedulePaginationPlugin({
|
|
76
|
+
position = 'start'
|
|
77
|
+
} = {}) {
|
|
78
|
+
return useMemo(() => createSchedulePaginationPlugin({
|
|
79
|
+
position
|
|
80
|
+
}), [position]);
|
|
81
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SchedulePlugin, SchedulePluginPosition, ScheduleView, ScheduleViewBase } from '../types';
|
|
2
|
+
export interface ScheduleViewSelectorOption<View extends ScheduleViewBase = ScheduleView> {
|
|
3
|
+
view: View;
|
|
4
|
+
label: string;
|
|
5
|
+
}
|
|
6
|
+
export interface ScheduleViewSelectorPluginOptions<View extends ScheduleViewBase = ScheduleView> {
|
|
7
|
+
onChangeView?: (view: View) => void;
|
|
8
|
+
position?: SchedulePluginPosition;
|
|
9
|
+
}
|
|
10
|
+
export declare function useScheduleViewSelectorPlugin<View extends ScheduleViewBase>(options: ReadonlyArray<ScheduleViewSelectorOption<View>>, pluginOptions?: ScheduleViewSelectorPluginOptions<View>): SchedulePlugin;
|
|
11
|
+
//# sourceMappingURL=ViewSelectorPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ViewSelectorPlugin.d.ts","sourceRoot":"","sources":["../../../src/Schedule/plugins/ViewSelectorPlugin.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAEV,cAAc,EACd,sBAAsB,EACtB,YAAY,EACZ,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,0BAA0B,CACzC,IAAI,SAAS,gBAAgB,GAAG,YAAY;IAE5C,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iCAAiC,CAChD,IAAI,SAAS,gBAAgB,GAAG,YAAY;IAE5C,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAgFD,wBAAgB,6BAA6B,CAC3C,IAAI,SAAS,gBAAgB,EAE7B,OAAO,EAAE,aAAa,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC,EACxD,aAAa,GAAE,iCAAiC,CAAC,IAAI,CAAM,GAC1D,cAAc,CAOhB"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
'use client';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @file ViewSelectorPlugin.tsx
|
|
7
|
+
* @input Schedule view options and caller-provided view change callback
|
|
8
|
+
* @output Hook that renders an DropdownMenu plugin for caller-provided views
|
|
9
|
+
* @position Built-in Schedule plugin; re-exported from plugins.tsx
|
|
10
|
+
*/
|
|
11
|
+
import { useMemo } from 'react';
|
|
12
|
+
import { DropdownMenu, DropdownMenuItem } from '@astryxdesign/core/DropdownMenu';
|
|
13
|
+
import { Icon } from '@astryxdesign/core/Icon';
|
|
14
|
+
import { useScheduleContext } from "../context.js";
|
|
15
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
16
|
+
function ScheduleViewSelectorControl({
|
|
17
|
+
onChangeView,
|
|
18
|
+
options
|
|
19
|
+
}) {
|
|
20
|
+
const {
|
|
21
|
+
view
|
|
22
|
+
} = useScheduleContext();
|
|
23
|
+
const selectedIndex = options.findIndex(option => option.view === view);
|
|
24
|
+
const selectedLabel = options[selectedIndex]?.label ?? 'View';
|
|
25
|
+
return /*#__PURE__*/_jsx(DropdownMenu, {
|
|
26
|
+
button: {
|
|
27
|
+
label: selectedLabel,
|
|
28
|
+
size: 'sm',
|
|
29
|
+
isDisabled: onChangeView == null
|
|
30
|
+
},
|
|
31
|
+
menuWidth: 160,
|
|
32
|
+
children: options.map((option, index) => /*#__PURE__*/_jsx(DropdownMenuItem, {
|
|
33
|
+
label: option.label,
|
|
34
|
+
onClick: () => onChangeView?.(option.view),
|
|
35
|
+
endContent: index === selectedIndex ? /*#__PURE__*/_jsx(Icon, {
|
|
36
|
+
icon: "check",
|
|
37
|
+
size: "sm",
|
|
38
|
+
color: "primary"
|
|
39
|
+
}) : null
|
|
40
|
+
}, option.label))
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
function createScheduleViewSelectorPlugin(options, {
|
|
44
|
+
onChangeView,
|
|
45
|
+
position = 'end'
|
|
46
|
+
} = {}) {
|
|
47
|
+
return {
|
|
48
|
+
renderHeader(startContent, centerContent, endContent) {
|
|
49
|
+
const control = /*#__PURE__*/_jsx(ScheduleViewSelectorControl, {
|
|
50
|
+
onChangeView: onChangeView,
|
|
51
|
+
options: options
|
|
52
|
+
});
|
|
53
|
+
return position === 'start' ? {
|
|
54
|
+
startContent: /*#__PURE__*/_jsxs(_Fragment, {
|
|
55
|
+
children: [startContent, control]
|
|
56
|
+
}),
|
|
57
|
+
centerContent,
|
|
58
|
+
endContent
|
|
59
|
+
} : {
|
|
60
|
+
startContent,
|
|
61
|
+
centerContent,
|
|
62
|
+
endContent: /*#__PURE__*/_jsxs(_Fragment, {
|
|
63
|
+
children: [endContent, control]
|
|
64
|
+
})
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
export function useScheduleViewSelectorPlugin(options, pluginOptions = {}) {
|
|
70
|
+
const {
|
|
71
|
+
onChangeView,
|
|
72
|
+
position = 'end'
|
|
73
|
+
} = pluginOptions;
|
|
74
|
+
return useMemo(() => createScheduleViewSelectorPlugin(options, {
|
|
75
|
+
onChangeView,
|
|
76
|
+
position
|
|
77
|
+
}), [onChangeView, options, position]);
|
|
78
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { SchedulePlugin } from '../types';
|
|
2
|
+
export { useSchedulePaginationPlugin } from './PaginationPlugin';
|
|
3
|
+
export { useScheduleViewSelectorPlugin } from './ViewSelectorPlugin';
|
|
4
|
+
export declare const defaultSchedulePlugins: ReadonlyArray<SchedulePlugin>;
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Schedule/plugins/index.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,UAAU,CAAC;AAE7C,OAAO,EAAC,2BAA2B,EAAC,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAC,6BAA6B,EAAC,MAAM,sBAAsB,CAAC;AAEnE,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,cAAc,CAEhE,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
'use client';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @file plugins.tsx
|
|
7
|
+
* @input Built-in schedule plugin hooks and stable defaults
|
|
8
|
+
* @output Default Schedule plugin list and plugin hook re-exports
|
|
9
|
+
* @position Plugin barrel; plugin implementations live in separate files
|
|
10
|
+
*/
|
|
11
|
+
import { defaultSchedulePaginationPlugin } from "./PaginationPlugin.js";
|
|
12
|
+
export { useSchedulePaginationPlugin } from "./PaginationPlugin.js";
|
|
13
|
+
export { useScheduleViewSelectorPlugin } from "./ViewSelectorPlugin.js";
|
|
14
|
+
export const defaultSchedulePlugins = [defaultSchedulePaginationPlugin];
|