@wandelbots/wandelbots-js-react-components 5.4.2 → 5.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/3d.cjs +2 -0
- package/dist/3d.cjs.map +1 -0
- package/dist/3d.js +31 -0
- package/dist/3d.js.map +1 -0
- package/dist/components/3d-viewport/CoordinateSystemTransform.d.ts +1 -0
- package/dist/components/3d-viewport/CoordinateSystemTransform.d.ts.map +1 -1
- package/dist/components/3d-viewport/PresetEnvironment.cjs +2 -0
- package/dist/components/3d-viewport/PresetEnvironment.cjs.map +1 -0
- package/dist/components/3d-viewport/PresetEnvironment.d.ts +1 -0
- package/dist/components/3d-viewport/PresetEnvironment.d.ts.map +1 -1
- package/dist/components/3d-viewport/PresetEnvironment.js +81 -0
- package/dist/components/3d-viewport/PresetEnvironment.js.map +1 -0
- package/dist/components/3d-viewport/SafetyZonesRenderer.cjs +2 -0
- package/dist/components/3d-viewport/SafetyZonesRenderer.cjs.map +1 -0
- package/dist/components/3d-viewport/SafetyZonesRenderer.d.ts +1 -0
- package/dist/components/3d-viewport/SafetyZonesRenderer.d.ts.map +1 -1
- package/dist/components/3d-viewport/SafetyZonesRenderer.js +131 -0
- package/dist/components/3d-viewport/SafetyZonesRenderer.js.map +1 -0
- package/dist/components/3d-viewport/TrajectoryRenderer.cjs +2 -0
- package/dist/components/3d-viewport/TrajectoryRenderer.cjs.map +1 -0
- package/dist/components/3d-viewport/TrajectoryRenderer.d.ts +1 -0
- package/dist/components/3d-viewport/TrajectoryRenderer.d.ts.map +1 -1
- package/dist/components/3d-viewport/TrajectoryRenderer.js +31 -0
- package/dist/components/3d-viewport/TrajectoryRenderer.js.map +1 -0
- package/dist/components/3d-viewport/collider/ColliderCollection.cjs +2 -0
- package/dist/components/3d-viewport/collider/ColliderCollection.cjs.map +1 -0
- package/dist/components/3d-viewport/collider/ColliderCollection.js +22 -0
- package/dist/components/3d-viewport/collider/ColliderCollection.js.map +1 -0
- package/dist/components/3d-viewport/collider/ColliderElement.cjs +2 -0
- package/dist/components/3d-viewport/collider/ColliderElement.cjs.map +1 -0
- package/dist/components/3d-viewport/collider/ColliderElement.js +29 -0
- package/dist/components/3d-viewport/collider/ColliderElement.js.map +1 -0
- package/dist/components/3d-viewport/collider/CollisionSceneRenderer.cjs +2 -0
- package/dist/components/3d-viewport/collider/CollisionSceneRenderer.cjs.map +1 -0
- package/dist/components/3d-viewport/collider/CollisionSceneRenderer.js +19 -0
- package/dist/components/3d-viewport/collider/CollisionSceneRenderer.js.map +1 -0
- package/dist/components/3d-viewport/collider/colliderShapeToBufferGeometry.cjs +2 -0
- package/dist/components/3d-viewport/collider/colliderShapeToBufferGeometry.cjs.map +1 -0
- package/dist/components/3d-viewport/collider/colliderShapeToBufferGeometry.js +43 -0
- package/dist/components/3d-viewport/collider/colliderShapeToBufferGeometry.js.map +1 -0
- package/dist/components/AppHeader.cjs +2 -0
- package/dist/components/AppHeader.cjs.map +1 -0
- package/dist/components/AppHeader.d.ts +1 -0
- package/dist/components/AppHeader.d.ts.map +1 -1
- package/dist/components/AppHeader.js +139 -0
- package/dist/components/AppHeader.js.map +1 -0
- package/dist/components/ConsoleFilter.cjs +2 -0
- package/dist/components/ConsoleFilter.cjs.map +1 -0
- package/dist/components/ConsoleFilter.js +13 -0
- package/dist/components/ConsoleFilter.js.map +1 -0
- package/dist/components/CopyableText.cjs +2 -0
- package/dist/components/CopyableText.cjs.map +1 -0
- package/dist/components/CopyableText.d.ts +1 -0
- package/dist/components/CopyableText.d.ts.map +1 -1
- package/dist/components/CopyableText.js +71 -0
- package/dist/components/CopyableText.js.map +1 -0
- package/dist/components/CycleTimer/CycleTimer.d.ts +1 -0
- package/dist/components/CycleTimer/CycleTimer.d.ts.map +1 -1
- package/dist/components/CycleTimer/DefaultVariant.cjs +2 -0
- package/dist/components/CycleTimer/DefaultVariant.cjs.map +1 -0
- package/dist/components/CycleTimer/DefaultVariant.js +301 -0
- package/dist/components/CycleTimer/DefaultVariant.js.map +1 -0
- package/dist/components/CycleTimer/SmallVariant.cjs +2 -0
- package/dist/components/CycleTimer/SmallVariant.cjs.map +1 -0
- package/dist/components/CycleTimer/SmallVariant.js +150 -0
- package/dist/components/CycleTimer/SmallVariant.js.map +1 -0
- package/dist/components/CycleTimer/index.cjs +2 -0
- package/dist/components/CycleTimer/index.cjs.map +1 -0
- package/dist/components/CycleTimer/index.d.ts +1 -0
- package/dist/components/CycleTimer/index.d.ts.map +1 -1
- package/dist/components/CycleTimer/index.js +86 -0
- package/dist/components/CycleTimer/index.js.map +1 -0
- package/dist/components/CycleTimer/useAnimations.cjs +2 -0
- package/dist/components/CycleTimer/useAnimations.cjs.map +1 -0
- package/dist/components/CycleTimer/useAnimations.js +105 -0
- package/dist/components/CycleTimer/useAnimations.js.map +1 -0
- package/dist/components/CycleTimer/useTimerLogic.cjs +2 -0
- package/dist/components/CycleTimer/useTimerLogic.cjs.map +1 -0
- package/dist/components/CycleTimer/useTimerLogic.js +191 -0
- package/dist/components/CycleTimer/useTimerLogic.js.map +1 -0
- package/dist/components/CycleTimer/utils.cjs +2 -0
- package/dist/components/CycleTimer/utils.cjs.map +1 -0
- package/dist/components/CycleTimer/utils.js +20 -0
- package/dist/components/CycleTimer/utils.js.map +1 -0
- package/dist/components/CycleTimer.cjs +2 -0
- package/dist/components/CycleTimer.cjs.map +1 -0
- package/dist/components/CycleTimer.d.ts +1 -0
- package/dist/components/CycleTimer.d.ts.map +1 -1
- package/dist/components/CycleTimer.js +6 -0
- package/dist/components/CycleTimer.js.map +1 -0
- package/dist/components/DataGrid.cjs +2 -0
- package/dist/components/DataGrid.cjs.map +1 -0
- package/dist/components/DataGrid.d.ts +1 -0
- package/dist/components/DataGrid.d.ts.map +1 -1
- package/dist/components/DataGrid.js +535 -0
- package/dist/components/DataGrid.js.map +1 -0
- package/dist/components/LoadingCover.cjs +2 -0
- package/dist/components/LoadingCover.cjs.map +1 -0
- package/dist/components/LoadingCover.d.ts +1 -0
- package/dist/components/LoadingCover.d.ts.map +1 -1
- package/dist/components/LoadingCover.js +77 -0
- package/dist/components/LoadingCover.js.map +1 -0
- package/dist/components/LogPanel.cjs +2 -0
- package/dist/components/LogPanel.cjs.map +1 -0
- package/dist/components/LogPanel.d.ts +1 -0
- package/dist/components/LogPanel.d.ts.map +1 -1
- package/dist/components/LogPanel.js +34 -0
- package/dist/components/LogPanel.js.map +1 -0
- package/dist/components/LogStore.cjs +2 -0
- package/dist/components/LogStore.cjs.map +1 -0
- package/dist/components/LogStore.d.ts +1 -0
- package/dist/components/LogStore.d.ts.map +1 -1
- package/dist/components/LogStore.js +33 -0
- package/dist/components/LogStore.js.map +1 -0
- package/dist/components/LogViewer.cjs +2 -0
- package/dist/components/LogViewer.cjs.map +1 -0
- package/dist/components/LogViewer.d.ts +1 -0
- package/dist/components/LogViewer.d.ts.map +1 -1
- package/dist/components/LogViewer.js +299 -0
- package/dist/components/LogViewer.js.map +1 -0
- package/dist/components/ProgramControl.cjs +2 -0
- package/dist/components/ProgramControl.cjs.map +1 -0
- package/dist/components/ProgramControl.d.ts +1 -0
- package/dist/components/ProgramControl.d.ts.map +1 -1
- package/dist/components/ProgramControl.js +147 -0
- package/dist/components/ProgramControl.js.map +1 -0
- package/dist/components/ProgramStateIndicator.cjs +2 -0
- package/dist/components/ProgramStateIndicator.cjs.map +1 -0
- package/dist/components/ProgramStateIndicator.d.ts +1 -0
- package/dist/components/ProgramStateIndicator.d.ts.map +1 -1
- package/dist/components/ProgramStateIndicator.js +140 -0
- package/dist/components/ProgramStateIndicator.js.map +1 -0
- package/dist/components/RobotCard.cjs +2 -0
- package/dist/components/RobotCard.cjs.map +1 -0
- package/dist/components/RobotCard.d.ts +1 -0
- package/dist/components/RobotCard.d.ts.map +1 -1
- package/dist/components/RobotCard.js +360 -0
- package/dist/components/RobotCard.js.map +1 -0
- package/dist/components/RobotListItem.cjs +2 -0
- package/dist/components/RobotListItem.cjs.map +1 -0
- package/dist/components/RobotListItem.d.ts +1 -0
- package/dist/components/RobotListItem.d.ts.map +1 -1
- package/dist/components/RobotListItem.js +122 -0
- package/dist/components/RobotListItem.js.map +1 -0
- package/dist/components/RobotSetupReadinessIndicator.cjs +2 -0
- package/dist/components/RobotSetupReadinessIndicator.cjs.map +1 -0
- package/dist/components/RobotSetupReadinessIndicator.d.ts +1 -0
- package/dist/components/RobotSetupReadinessIndicator.d.ts.map +1 -1
- package/dist/components/RobotSetupReadinessIndicator.js +122 -0
- package/dist/components/RobotSetupReadinessIndicator.js.map +1 -0
- package/dist/components/SelectableFab.cjs +2 -0
- package/dist/components/SelectableFab.cjs.map +1 -0
- package/dist/components/SelectableFab.d.ts +1 -1
- package/dist/components/SelectableFab.d.ts.map +1 -1
- package/dist/components/SelectableFab.js +51 -0
- package/dist/components/SelectableFab.js.map +1 -0
- package/dist/components/TabBar.cjs +2 -0
- package/dist/components/TabBar.cjs.map +1 -0
- package/dist/components/TabBar.d.ts +1 -0
- package/dist/components/TabBar.d.ts.map +1 -1
- package/dist/components/TabBar.js +212 -0
- package/dist/components/TabBar.js.map +1 -0
- package/dist/components/ThemeSelect.d.ts +1 -1
- package/dist/components/ThemeSelect.d.ts.map +1 -1
- package/dist/components/Timer/Timer.d.ts +1 -0
- package/dist/components/Timer/Timer.d.ts.map +1 -1
- package/dist/components/Timer/TimerDefaultVariant.cjs +2 -0
- package/dist/components/Timer/TimerDefaultVariant.cjs.map +1 -0
- package/dist/components/Timer/TimerDefaultVariant.js +136 -0
- package/dist/components/Timer/TimerDefaultVariant.js.map +1 -0
- package/dist/components/Timer/TimerSmallVariant.cjs +2 -0
- package/dist/components/Timer/TimerSmallVariant.cjs.map +1 -0
- package/dist/components/Timer/TimerSmallVariant.js +128 -0
- package/dist/components/Timer/TimerSmallVariant.js.map +1 -0
- package/dist/components/Timer/index.cjs +2 -0
- package/dist/components/Timer/index.cjs.map +1 -0
- package/dist/components/Timer/index.d.ts +1 -0
- package/dist/components/Timer/index.d.ts.map +1 -1
- package/dist/components/Timer/index.js +68 -0
- package/dist/components/Timer/index.js.map +1 -0
- package/dist/components/Timer/useTimerAnimations.cjs +2 -0
- package/dist/components/Timer/useTimerAnimations.cjs.map +1 -0
- package/dist/components/Timer/useTimerAnimations.js +48 -0
- package/dist/components/Timer/useTimerAnimations.js.map +1 -0
- package/dist/components/Timer/useTimerLogic.cjs +2 -0
- package/dist/components/Timer/useTimerLogic.cjs.map +1 -0
- package/dist/components/Timer/useTimerLogic.js +113 -0
- package/dist/components/Timer/useTimerLogic.js.map +1 -0
- package/dist/components/Timer/utils.cjs +2 -0
- package/dist/components/Timer/utils.cjs.map +1 -0
- package/dist/components/Timer/utils.js +19 -0
- package/dist/components/Timer/utils.js.map +1 -0
- package/dist/components/Timer.cjs +2 -0
- package/dist/components/Timer.cjs.map +1 -0
- package/dist/components/Timer.d.ts +4 -0
- package/dist/components/Timer.d.ts.map +1 -0
- package/dist/components/Timer.js +6 -0
- package/dist/components/Timer.js.map +1 -0
- package/dist/components/TransparentOverlay.d.ts +1 -0
- package/dist/components/TransparentOverlay.d.ts.map +1 -1
- package/dist/components/VelocitySlider.cjs +2 -0
- package/dist/components/VelocitySlider.cjs.map +1 -0
- package/dist/components/VelocitySlider.d.ts +1 -1
- package/dist/components/VelocitySlider.d.ts.map +1 -1
- package/dist/components/VelocitySlider.js +97 -0
- package/dist/components/VelocitySlider.js.map +1 -0
- package/dist/components/experimental/utils/AdornedSelect.cjs +2 -0
- package/dist/components/experimental/utils/AdornedSelect.cjs.map +1 -0
- package/dist/components/experimental/utils/AdornedSelect.js +35 -0
- package/dist/components/experimental/utils/AdornedSelect.js.map +1 -0
- package/dist/components/jogging/JoggingBlocked.cjs +2 -0
- package/dist/components/jogging/JoggingBlocked.cjs.map +1 -0
- package/dist/components/jogging/JoggingBlocked.js +46 -0
- package/dist/components/jogging/JoggingBlocked.js.map +1 -0
- package/dist/components/jogging/JoggingCartesianAxisControl.cjs +2 -0
- package/dist/components/jogging/JoggingCartesianAxisControl.cjs.map +1 -0
- package/dist/components/jogging/JoggingCartesianAxisControl.d.ts +1 -1
- package/dist/components/jogging/JoggingCartesianAxisControl.d.ts.map +1 -1
- package/dist/components/jogging/JoggingCartesianAxisControl.js +186 -0
- package/dist/components/jogging/JoggingCartesianAxisControl.js.map +1 -0
- package/dist/components/jogging/JoggingCartesianTab.cjs +2 -0
- package/dist/components/jogging/JoggingCartesianTab.cjs.map +1 -0
- package/dist/components/jogging/JoggingCartesianTab.js +267 -0
- package/dist/components/jogging/JoggingCartesianTab.js.map +1 -0
- package/dist/components/jogging/JoggingJointLimitDetector.cjs +2 -0
- package/dist/components/jogging/JoggingJointLimitDetector.cjs.map +1 -0
- package/dist/components/jogging/JoggingJointLimitDetector.js +42 -0
- package/dist/components/jogging/JoggingJointLimitDetector.js.map +1 -0
- package/dist/components/jogging/JoggingJointTab.cjs +2 -0
- package/dist/components/jogging/JoggingJointTab.cjs.map +1 -0
- package/dist/components/jogging/JoggingJointTab.js +114 -0
- package/dist/components/jogging/JoggingJointTab.js.map +1 -0
- package/dist/components/jogging/JoggingJointValueControl.cjs +2 -0
- package/dist/components/jogging/JoggingJointValueControl.cjs.map +1 -0
- package/dist/components/jogging/JoggingJointValueControl.d.ts +1 -1
- package/dist/components/jogging/JoggingJointValueControl.d.ts.map +1 -1
- package/dist/components/jogging/JoggingJointValueControl.js +240 -0
- package/dist/components/jogging/JoggingJointValueControl.js.map +1 -0
- package/dist/components/jogging/JoggingOptions.cjs +2 -0
- package/dist/components/jogging/JoggingOptions.cjs.map +1 -0
- package/dist/components/jogging/JoggingOptions.js +117 -0
- package/dist/components/jogging/JoggingOptions.js.map +1 -0
- package/dist/components/jogging/JoggingPanel.cjs +2 -0
- package/dist/components/jogging/JoggingPanel.cjs.map +1 -0
- package/dist/components/jogging/JoggingPanel.d.ts +1 -0
- package/dist/components/jogging/JoggingPanel.d.ts.map +1 -1
- package/dist/components/jogging/JoggingPanel.js +121 -0
- package/dist/components/jogging/JoggingPanel.js.map +1 -0
- package/dist/components/jogging/JoggingStore.cjs +2 -0
- package/dist/components/jogging/JoggingStore.cjs.map +1 -0
- package/dist/components/jogging/JoggingStore.d.ts +1 -1
- package/dist/components/jogging/JoggingStore.d.ts.map +1 -1
- package/dist/components/jogging/JoggingStore.js +219 -0
- package/dist/components/jogging/JoggingStore.js.map +1 -0
- package/dist/components/jogging/JoggingToggleButtonGroup.cjs +2 -0
- package/dist/components/jogging/JoggingToggleButtonGroup.cjs.map +1 -0
- package/dist/components/jogging/JoggingToggleButtonGroup.js +29 -0
- package/dist/components/jogging/JoggingToggleButtonGroup.js.map +1 -0
- package/dist/components/jogging/JoggingVelocitySlider.cjs +2 -0
- package/dist/components/jogging/JoggingVelocitySlider.cjs.map +1 -0
- package/dist/components/jogging/JoggingVelocitySlider.js +40 -0
- package/dist/components/jogging/JoggingVelocitySlider.js.map +1 -0
- package/dist/components/jogging/PoseCartesianValues.cjs +2 -0
- package/dist/components/jogging/PoseCartesianValues.cjs.map +1 -0
- package/dist/components/jogging/PoseCartesianValues.d.ts +1 -0
- package/dist/components/jogging/PoseCartesianValues.d.ts.map +1 -1
- package/dist/components/jogging/PoseCartesianValues.js +48 -0
- package/dist/components/jogging/PoseCartesianValues.js.map +1 -0
- package/dist/components/jogging/PoseJointValues.cjs +2 -0
- package/dist/components/jogging/PoseJointValues.cjs.map +1 -0
- package/dist/components/jogging/PoseJointValues.d.ts +1 -0
- package/dist/components/jogging/PoseJointValues.d.ts.map +1 -1
- package/dist/components/jogging/PoseJointValues.js +47 -0
- package/dist/components/jogging/PoseJointValues.js.map +1 -0
- package/dist/components/modal/NoMotionGroupModal.cjs +2 -0
- package/dist/components/modal/NoMotionGroupModal.cjs.map +1 -0
- package/dist/components/modal/NoMotionGroupModal.d.ts +1 -0
- package/dist/components/modal/NoMotionGroupModal.d.ts.map +1 -1
- package/dist/components/modal/NoMotionGroupModal.js +92 -0
- package/dist/components/modal/NoMotionGroupModal.js.map +1 -0
- package/dist/components/robots/AxisConfig.cjs +2 -0
- package/dist/components/robots/AxisConfig.cjs.map +1 -0
- package/dist/components/robots/AxisConfig.js +5 -0
- package/dist/components/robots/AxisConfig.js.map +1 -0
- package/dist/components/robots/DHLinearAxis.cjs +2 -0
- package/dist/components/robots/DHLinearAxis.cjs.map +1 -0
- package/dist/components/robots/DHLinearAxis.d.ts +1 -0
- package/dist/components/robots/DHLinearAxis.d.ts.map +1 -1
- package/dist/components/robots/DHLinearAxis.js +92 -0
- package/dist/components/robots/DHLinearAxis.js.map +1 -0
- package/dist/components/robots/DHRobot.cjs +2 -0
- package/dist/components/robots/DHRobot.cjs.map +1 -0
- package/dist/components/robots/DHRobot.d.ts +1 -0
- package/dist/components/robots/DHRobot.d.ts.map +1 -1
- package/dist/components/robots/DHRobot.js +94 -0
- package/dist/components/robots/DHRobot.js.map +1 -0
- package/dist/components/robots/GenericRobot.cjs +2 -0
- package/dist/components/robots/GenericRobot.cjs.map +1 -0
- package/dist/components/robots/GenericRobot.d.ts +1 -0
- package/dist/components/robots/GenericRobot.d.ts.map +1 -1
- package/dist/components/robots/GenericRobot.js +91 -0
- package/dist/components/robots/GenericRobot.js.map +1 -0
- package/dist/components/robots/LinearAxis.cjs +2 -0
- package/dist/components/robots/LinearAxis.cjs.map +1 -0
- package/dist/components/robots/LinearAxis.d.ts +1 -0
- package/dist/components/robots/LinearAxis.d.ts.map +1 -1
- package/dist/components/robots/LinearAxis.js +42 -0
- package/dist/components/robots/LinearAxis.js.map +1 -0
- package/dist/components/robots/LinearAxisAnimator.cjs +2 -0
- package/dist/components/robots/LinearAxisAnimator.cjs.map +1 -0
- package/dist/components/robots/LinearAxisAnimator.js +66 -0
- package/dist/components/robots/LinearAxisAnimator.js.map +1 -0
- package/dist/components/robots/MotionGroupVisualizer.cjs +2 -0
- package/dist/components/robots/MotionGroupVisualizer.cjs.map +1 -0
- package/dist/components/robots/MotionGroupVisualizer.d.ts +1 -0
- package/dist/components/robots/MotionGroupVisualizer.d.ts.map +1 -1
- package/dist/components/robots/MotionGroupVisualizer.js +21 -0
- package/dist/components/robots/MotionGroupVisualizer.js.map +1 -0
- package/dist/components/robots/Robot.cjs +2 -0
- package/dist/components/robots/Robot.cjs.map +1 -0
- package/dist/components/robots/Robot.d.ts +1 -0
- package/dist/components/robots/Robot.d.ts.map +1 -1
- package/dist/components/robots/Robot.js +31 -0
- package/dist/components/robots/Robot.js.map +1 -0
- package/dist/components/robots/RobotAnimator.cjs +2 -0
- package/dist/components/robots/RobotAnimator.cjs.map +1 -0
- package/dist/components/robots/RobotAnimator.js +66 -0
- package/dist/components/robots/RobotAnimator.js.map +1 -0
- package/dist/components/robots/SupportedLinearAxis.cjs +2 -0
- package/dist/components/robots/SupportedLinearAxis.cjs.map +1 -0
- package/dist/components/robots/SupportedLinearAxis.d.ts +1 -0
- package/dist/components/robots/SupportedLinearAxis.d.ts.map +1 -1
- package/dist/components/robots/SupportedLinearAxis.js +82 -0
- package/dist/components/robots/SupportedLinearAxis.js.map +1 -0
- package/dist/components/robots/SupportedRobot.cjs +2 -0
- package/dist/components/robots/SupportedRobot.cjs.map +1 -0
- package/dist/components/robots/SupportedRobot.d.ts +1 -0
- package/dist/components/robots/SupportedRobot.d.ts.map +1 -1
- package/dist/components/robots/SupportedRobot.js +82 -0
- package/dist/components/robots/SupportedRobot.js.map +1 -0
- package/dist/components/robots/ghostStyle.cjs +2 -0
- package/dist/components/robots/ghostStyle.cjs.map +1 -0
- package/dist/components/robots/ghostStyle.js +40 -0
- package/dist/components/robots/ghostStyle.js.map +1 -0
- package/dist/components/robots/manufacturerHomePositions.cjs +2 -0
- package/dist/components/robots/manufacturerHomePositions.cjs.map +1 -0
- package/dist/components/robots/manufacturerHomePositions.js +51 -0
- package/dist/components/robots/manufacturerHomePositions.js.map +1 -0
- package/dist/components/robots/robotModelLogic.cjs +2 -0
- package/dist/components/robots/robotModelLogic.cjs.map +1 -0
- package/dist/components/robots/robotModelLogic.js +61 -0
- package/dist/components/robots/robotModelLogic.js.map +1 -0
- package/dist/components/safetyBar/ControllerTypeIndicator.cjs +2 -0
- package/dist/components/safetyBar/ControllerTypeIndicator.cjs.map +1 -0
- package/dist/components/safetyBar/ControllerTypeIndicator.d.ts +1 -1
- package/dist/components/safetyBar/ControllerTypeIndicator.d.ts.map +1 -1
- package/dist/components/safetyBar/ControllerTypeIndicator.js +71 -0
- package/dist/components/safetyBar/ControllerTypeIndicator.js.map +1 -0
- package/dist/components/safetyBar/IndicatorWithExplanation.cjs +2 -0
- package/dist/components/safetyBar/IndicatorWithExplanation.cjs.map +1 -0
- package/dist/components/safetyBar/IndicatorWithExplanation.d.ts +1 -0
- package/dist/components/safetyBar/IndicatorWithExplanation.d.ts.map +1 -1
- package/dist/components/safetyBar/IndicatorWithExplanation.js +123 -0
- package/dist/components/safetyBar/IndicatorWithExplanation.js.map +1 -0
- package/dist/components/safetyBar/OperationModeIndicator.cjs +2 -0
- package/dist/components/safetyBar/OperationModeIndicator.cjs.map +1 -0
- package/dist/components/safetyBar/OperationModeIndicator.d.ts +1 -1
- package/dist/components/safetyBar/OperationModeIndicator.d.ts.map +1 -1
- package/dist/components/safetyBar/OperationModeIndicator.js +75 -0
- package/dist/components/safetyBar/OperationModeIndicator.js.map +1 -0
- package/dist/components/safetyBar/SafetyBar.cjs +2 -0
- package/dist/components/safetyBar/SafetyBar.cjs.map +1 -0
- package/dist/components/safetyBar/SafetyBar.d.ts +1 -0
- package/dist/components/safetyBar/SafetyBar.d.ts.map +1 -1
- package/dist/components/safetyBar/SafetyBar.js +66 -0
- package/dist/components/safetyBar/SafetyBar.js.map +1 -0
- package/dist/components/safetyBar/SafetyStateIndicator.cjs +2 -0
- package/dist/components/safetyBar/SafetyStateIndicator.cjs.map +1 -0
- package/dist/components/safetyBar/SafetyStateIndicator.d.ts +1 -1
- package/dist/components/safetyBar/SafetyStateIndicator.d.ts.map +1 -1
- package/dist/components/safetyBar/SafetyStateIndicator.js +126 -0
- package/dist/components/safetyBar/SafetyStateIndicator.js.map +1 -0
- package/dist/components/safetyBar/icons/controller-type-physical.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/controller-type-physical.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/controller-type-physical.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/controller-type-physical.svg.js +11 -0
- package/dist/components/safetyBar/icons/controller-type-physical.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/controller-type-virtual.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/controller-type-virtual.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/controller-type-virtual.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/controller-type-virtual.svg.js +11 -0
- package/dist/components/safetyBar/icons/controller-type-virtual.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-automatic.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/operation-mode-automatic.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-automatic.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/operation-mode-automatic.svg.js +11 -0
- package/dist/components/safetyBar/icons/operation-mode-automatic.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-error.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/operation-mode-error.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-error.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/operation-mode-error.svg.js +11 -0
- package/dist/components/safetyBar/icons/operation-mode-error.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-manual.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/operation-mode-manual.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-manual.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/operation-mode-manual.svg.js +11 -0
- package/dist/components/safetyBar/icons/operation-mode-manual.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-error.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/safety-state-error.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-error.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/safety-state-error.svg.js +11 -0
- package/dist/components/safetyBar/icons/safety-state-error.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-estop.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/safety-state-estop.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-estop.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/safety-state-estop.svg.js +11 -0
- package/dist/components/safetyBar/icons/safety-state-estop.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-manual-action-required.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/safety-state-manual-action-required.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-manual-action-required.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/safety-state-manual-action-required.svg.js +11 -0
- package/dist/components/safetyBar/icons/safety-state-manual-action-required.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-normal.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/safety-state-normal.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-normal.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/safety-state-normal.svg.js +11 -0
- package/dist/components/safetyBar/icons/safety-state-normal.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-stop.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/safety-state-stop.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-stop.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/safety-state-stop.svg.js +11 -0
- package/dist/components/safetyBar/icons/safety-state-stop.svg.js.map +1 -0
- package/dist/components/utils/converters.cjs +2 -0
- package/dist/components/utils/converters.cjs.map +1 -0
- package/dist/components/utils/converters.js +40 -0
- package/dist/components/utils/converters.js.map +1 -0
- package/dist/components/utils/errorHandling.cjs +2 -0
- package/dist/components/utils/errorHandling.cjs.map +1 -0
- package/dist/components/utils/errorHandling.js +14 -0
- package/dist/components/utils/errorHandling.js.map +1 -0
- package/dist/components/utils/hooks.cjs +2 -0
- package/dist/components/utils/hooks.cjs.map +1 -0
- package/dist/components/utils/hooks.js +29 -0
- package/dist/components/utils/hooks.js.map +1 -0
- package/dist/components/utils/interpolation.cjs +2 -0
- package/dist/components/utils/interpolation.cjs.map +1 -0
- package/dist/components/utils/interpolation.js +138 -0
- package/dist/components/utils/interpolation.js.map +1 -0
- package/dist/core.cjs +2 -0
- package/dist/core.cjs.map +1 -0
- package/dist/core.js +81 -0
- package/dist/core.js.map +1 -0
- package/dist/externalizeComponent.cjs +2 -0
- package/dist/externalizeComponent.cjs.map +1 -0
- package/dist/externalizeComponent.js +13 -0
- package/dist/externalizeComponent.js.map +1 -0
- package/dist/i18n/config.cjs +2 -0
- package/dist/i18n/config.cjs.map +1 -0
- package/dist/i18n/config.js +25 -0
- package/dist/i18n/config.js.map +1 -0
- package/dist/i18n/locales/de/translations.json.cjs +3 -0
- package/dist/i18n/locales/de/translations.json.cjs.map +1 -0
- package/dist/i18n/locales/de/translations.json.js +94 -0
- package/dist/i18n/locales/de/translations.json.js.map +1 -0
- package/dist/i18n/locales/en/translations.json.cjs +2 -0
- package/dist/i18n/locales/en/translations.json.cjs.map +1 -0
- package/dist/i18n/locales/en/translations.json.js +94 -0
- package/dist/i18n/locales/en/translations.json.js.map +1 -0
- package/dist/icons/DropdownArrowIcon.cjs +2 -0
- package/dist/icons/DropdownArrowIcon.cjs.map +1 -0
- package/dist/icons/DropdownArrowIcon.js +14 -0
- package/dist/icons/DropdownArrowIcon.js.map +1 -0
- package/dist/icons/axis-x.svg.cjs +2 -0
- package/dist/icons/axis-x.svg.cjs.map +1 -0
- package/dist/icons/axis-x.svg.d.ts +3 -0
- package/dist/icons/axis-x.svg.js +11 -0
- package/dist/icons/axis-x.svg.js.map +1 -0
- package/dist/icons/axis-y.svg.cjs +2 -0
- package/dist/icons/axis-y.svg.cjs.map +1 -0
- package/dist/icons/axis-y.svg.d.ts +3 -0
- package/dist/icons/axis-y.svg.js +11 -0
- package/dist/icons/axis-y.svg.js.map +1 -0
- package/dist/icons/axis-z.svg.cjs +2 -0
- package/dist/icons/axis-z.svg.cjs.map +1 -0
- package/dist/icons/axis-z.svg.d.ts +3 -0
- package/dist/icons/axis-z.svg.js +11 -0
- package/dist/icons/axis-z.svg.js.map +1 -0
- package/dist/icons/home.svg.cjs +2 -0
- package/dist/icons/home.svg.cjs.map +1 -0
- package/dist/icons/home.svg.d.ts +3 -0
- package/dist/icons/home.svg.js +11 -0
- package/dist/icons/home.svg.js.map +1 -0
- package/dist/icons/jog-minus.svg.cjs +2 -0
- package/dist/icons/jog-minus.svg.cjs.map +1 -0
- package/dist/icons/jog-minus.svg.d.ts +3 -0
- package/dist/icons/jog-minus.svg.js +11 -0
- package/dist/icons/jog-minus.svg.js.map +1 -0
- package/dist/icons/jog-plus.svg.cjs +2 -0
- package/dist/icons/jog-plus.svg.cjs.map +1 -0
- package/dist/icons/jog-plus.svg.d.ts +3 -0
- package/dist/icons/jog-plus.svg.js +11 -0
- package/dist/icons/jog-plus.svg.js.map +1 -0
- package/dist/icons/jogging.svg.cjs +2 -0
- package/dist/icons/jogging.svg.cjs.map +1 -0
- package/dist/icons/jogging.svg.d.ts +3 -0
- package/dist/icons/jogging.svg.js +11 -0
- package/dist/icons/jogging.svg.js.map +1 -0
- package/dist/icons/orientation-coord-system.svg.cjs +2 -0
- package/dist/icons/orientation-coord-system.svg.cjs.map +1 -0
- package/dist/icons/orientation-coord-system.svg.d.ts +3 -0
- package/dist/icons/orientation-coord-system.svg.js +11 -0
- package/dist/icons/orientation-coord-system.svg.js.map +1 -0
- package/dist/icons/orientation-tool.svg.cjs +2 -0
- package/dist/icons/orientation-tool.svg.cjs.map +1 -0
- package/dist/icons/orientation-tool.svg.d.ts +3 -0
- package/dist/icons/orientation-tool.svg.js +11 -0
- package/dist/icons/orientation-tool.svg.js.map +1 -0
- package/dist/icons/robot.svg.cjs +2 -0
- package/dist/icons/robot.svg.cjs.map +1 -0
- package/dist/icons/robot.svg.d.ts +3 -0
- package/dist/icons/robot.svg.js +11 -0
- package/dist/icons/robot.svg.js.map +1 -0
- package/dist/icons/rotation.svg.cjs +2 -0
- package/dist/icons/rotation.svg.cjs.map +1 -0
- package/dist/icons/rotation.svg.d.ts +3 -0
- package/dist/icons/rotation.svg.js +11 -0
- package/dist/icons/rotation.svg.js.map +1 -0
- package/dist/icons/wbLogo.svg.cjs +2 -0
- package/dist/icons/wbLogo.svg.cjs.map +1 -0
- package/dist/icons/wbLogo.svg.d.ts +3 -0
- package/dist/icons/wbLogo.svg.js +11 -0
- package/dist/icons/wbLogo.svg.js.map +1 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.js +153 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/ConnectedMotionGroup.cjs +4 -0
- package/dist/lib/ConnectedMotionGroup.cjs.map +1 -0
- package/dist/lib/ConnectedMotionGroup.d.ts +1 -0
- package/dist/lib/ConnectedMotionGroup.d.ts.map +1 -1
- package/dist/lib/ConnectedMotionGroup.js +250 -0
- package/dist/lib/ConnectedMotionGroup.js.map +1 -0
- package/dist/lib/JoggerConnection.cjs +2 -0
- package/dist/lib/JoggerConnection.cjs.map +1 -0
- package/dist/lib/JoggerConnection.d.ts +1 -0
- package/dist/lib/JoggerConnection.d.ts.map +1 -1
- package/dist/lib/JoggerConnection.js +342 -0
- package/dist/lib/JoggerConnection.js.map +1 -0
- package/dist/lib/MotionStreamConnection.cjs +3 -0
- package/dist/lib/MotionStreamConnection.cjs.map +1 -0
- package/dist/lib/MotionStreamConnection.d.ts +1 -0
- package/dist/lib/MotionStreamConnection.d.ts.map +1 -1
- package/dist/lib/MotionStreamConnection.js +94 -0
- package/dist/lib/MotionStreamConnection.js.map +1 -0
- package/dist/lib/motionStateUpdate.cjs +2 -0
- package/dist/lib/motionStateUpdate.cjs.map +1 -0
- package/dist/lib/motionStateUpdate.js +49 -0
- package/dist/lib/motionStateUpdate.js.map +1 -0
- package/dist/test/consumer.test.d.ts +2 -0
- package/dist/test/consumer.test.d.ts.map +1 -0
- package/dist/themes/createDarkTheme.cjs +2 -0
- package/dist/themes/createDarkTheme.cjs.map +1 -0
- package/dist/themes/createDarkTheme.js +344 -0
- package/dist/themes/createDarkTheme.js.map +1 -0
- package/dist/themes/createLightTheme.cjs +2 -0
- package/dist/themes/createLightTheme.cjs.map +1 -0
- package/dist/themes/createLightTheme.js +9 -0
- package/dist/themes/createLightTheme.js.map +1 -0
- package/dist/themes/theming.cjs +2 -0
- package/dist/themes/theming.cjs.map +1 -0
- package/dist/themes/theming.js +14 -0
- package/dist/themes/theming.js.map +1 -0
- package/dist/wb-icons.cjs +2 -0
- package/dist/wb-icons.cjs.map +1 -0
- package/dist/wb-icons.js +47 -0
- package/dist/wb-icons.js.map +1 -0
- package/package.json +20 -9
- package/src/components/3d-viewport/CoordinateSystemTransform.tsx +2 -0
- package/src/components/3d-viewport/PresetEnvironment.tsx +2 -0
- package/src/components/3d-viewport/SafetyZonesRenderer.tsx +2 -0
- package/src/components/3d-viewport/TrajectoryRenderer.tsx +2 -0
- package/src/components/AppHeader.tsx +2 -0
- package/src/components/CopyableText.tsx +2 -0
- package/src/components/CycleTimer/CycleTimer.ts +2 -0
- package/src/components/CycleTimer/index.tsx +2 -0
- package/src/components/CycleTimer.tsx +2 -0
- package/src/components/DataGrid.tsx +2 -0
- package/src/components/LoadingCover.tsx +2 -0
- package/src/components/LogPanel.tsx +2 -0
- package/src/components/LogStore.ts +2 -0
- package/src/components/LogViewer.tsx +2 -0
- package/src/components/ProgramControl.tsx +2 -0
- package/src/components/ProgramStateIndicator.tsx +2 -0
- package/src/components/RobotCard.tsx +2 -0
- package/src/components/RobotListItem.tsx +2 -0
- package/src/components/RobotSetupReadinessIndicator.tsx +2 -0
- package/src/components/SelectableFab.tsx +2 -0
- package/src/components/TabBar.tsx +2 -0
- package/src/components/ThemeSelect.tsx +2 -0
- package/src/components/Timer/Timer.ts +2 -0
- package/src/components/Timer/index.tsx +2 -0
- package/src/components/Timer.ts +4 -0
- package/src/components/TransparentOverlay.tsx +2 -0
- package/src/components/VelocitySlider.tsx +2 -0
- package/src/components/jogging/JoggingCartesianAxisControl.tsx +2 -0
- package/src/components/jogging/JoggingJointValueControl.tsx +2 -0
- package/src/components/jogging/JoggingPanel.tsx +2 -0
- package/src/components/jogging/JoggingStore.ts +2 -0
- package/src/components/jogging/PoseCartesianValues.tsx +2 -0
- package/src/components/jogging/PoseJointValues.tsx +2 -0
- package/src/components/modal/NoMotionGroupModal.tsx +2 -0
- package/src/components/robots/DHLinearAxis.tsx +2 -0
- package/src/components/robots/DHRobot.tsx +2 -0
- package/src/components/robots/GenericRobot.tsx +2 -0
- package/src/components/robots/LinearAxis.tsx +2 -0
- package/src/components/robots/MotionGroupVisualizer.tsx +2 -0
- package/src/components/robots/Robot.tsx +2 -0
- package/src/components/robots/SupportedLinearAxis.tsx +2 -0
- package/src/components/robots/SupportedRobot.tsx +2 -0
- package/src/components/safetyBar/ControllerTypeIndicator.tsx +2 -0
- package/src/components/safetyBar/IndicatorWithExplanation.tsx +2 -0
- package/src/components/safetyBar/OperationModeIndicator.tsx +2 -0
- package/src/components/safetyBar/SafetyBar.tsx +2 -0
- package/src/components/safetyBar/SafetyStateIndicator.tsx +2 -0
- package/src/lib/ConnectedMotionGroup.ts +2 -0
- package/src/lib/JoggerConnection.ts +2 -0
- package/src/lib/MotionStreamConnection.ts +2 -0
- package/src/test/consumer.test.ts +230 -0
- package/dist/3d.cjs.js +0 -2
- package/dist/3d.cjs.js.map +0 -1
- package/dist/3d.es.js +0 -19
- package/dist/3d.es.js.map +0 -1
- package/dist/MotionGroupVisualizer-B-e22qXF.cjs +0 -2
- package/dist/MotionGroupVisualizer-B-e22qXF.cjs.map +0 -1
- package/dist/MotionGroupVisualizer-CIASsBC6.js +0 -1433
- package/dist/MotionGroupVisualizer-CIASsBC6.js.map +0 -1
- package/dist/auth0-spa-js.production.esm-CVEdrQ4-.cjs +0 -5
- package/dist/auth0-spa-js.production.esm-CVEdrQ4-.cjs.map +0 -1
- package/dist/auth0-spa-js.production.esm-Cr9w0sUa.js +0 -4217
- package/dist/auth0-spa-js.production.esm-Cr9w0sUa.js.map +0 -1
- package/dist/core.cjs.js +0 -2
- package/dist/core.cjs.js.map +0 -1
- package/dist/core.es.js +0 -52
- package/dist/core.es.js.map +0 -1
- package/dist/index.cjs.js +0 -2
- package/dist/index.cjs.js.map +0 -1
- package/dist/index.es.js +0 -92
- package/dist/index.es.js.map +0 -1
- package/dist/interpolation-BIB6FC35.cjs +0 -198
- package/dist/interpolation-BIB6FC35.cjs.map +0 -1
- package/dist/interpolation-lSTX6ZXZ.js +0 -14559
- package/dist/interpolation-lSTX6ZXZ.js.map +0 -1
- package/dist/safety-state-stop-ClWLVLMl.cjs +0 -2
- package/dist/safety-state-stop-ClWLVLMl.cjs.map +0 -1
- package/dist/safety-state-stop-DuMBCxN5.js +0 -91
- package/dist/safety-state-stop-DuMBCxN5.js.map +0 -1
- package/dist/theming-D_pShDEg.js +0 -32236
- package/dist/theming-D_pShDEg.js.map +0 -1
- package/dist/theming-L5E8VSae.cjs +0 -84
- package/dist/theming-L5E8VSae.cjs.map +0 -1
- package/dist/wb-icons.cjs.js +0 -2
- package/dist/wb-icons.cjs.js.map +0 -1
- package/dist/wb-icons.es.js +0 -27
- package/dist/wb-icons.es.js.map +0 -1
- package/dist/wbLogo-CObCmqTw.js +0 -31
- package/dist/wbLogo-CObCmqTw.js.map +0 -1
- package/dist/wbLogo-G_IfZ03l.cjs +0 -2
- package/dist/wbLogo-G_IfZ03l.cjs.map +0 -1
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import { jsxs as P, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import Z from "@mui/material/Badge";
|
|
3
|
+
import d from "@mui/material/Box";
|
|
4
|
+
import z from "@mui/material/Tab";
|
|
5
|
+
import A from "@mui/material/Tabs";
|
|
6
|
+
import { observer as E } from "mobx-react-lite";
|
|
7
|
+
import { useState as R, useEffect as S } from "react";
|
|
8
|
+
import { externalizeComponent as $ } from "../externalizeComponent.js";
|
|
9
|
+
function j(p) {
|
|
10
|
+
const { children: t, value: s, index: l, ...n } = p;
|
|
11
|
+
return /* @__PURE__ */ r(
|
|
12
|
+
"div",
|
|
13
|
+
{
|
|
14
|
+
role: "tabpanel",
|
|
15
|
+
hidden: s !== l,
|
|
16
|
+
id: `tabpanel-${l}`,
|
|
17
|
+
"aria-labelledby": `tab-${l}`,
|
|
18
|
+
...n,
|
|
19
|
+
children: s === l && /* @__PURE__ */ r(d, { children: t })
|
|
20
|
+
}
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
function F({ children: p, ...t }) {
|
|
24
|
+
const {
|
|
25
|
+
fullWidth: s,
|
|
26
|
+
indicator: l,
|
|
27
|
+
onChange: n,
|
|
28
|
+
orientation: v,
|
|
29
|
+
scrollButtons: h,
|
|
30
|
+
selectionFollowsFocus: c,
|
|
31
|
+
textColor: u,
|
|
32
|
+
value: f,
|
|
33
|
+
variant: b,
|
|
34
|
+
...g
|
|
35
|
+
} = t;
|
|
36
|
+
return /* @__PURE__ */ r(d, { ...g, children: p });
|
|
37
|
+
}
|
|
38
|
+
const I = $(
|
|
39
|
+
E((p) => {
|
|
40
|
+
const {
|
|
41
|
+
items: t,
|
|
42
|
+
activeTab: s,
|
|
43
|
+
defaultActiveTab: l = 0,
|
|
44
|
+
onTabChange: n,
|
|
45
|
+
sx: v,
|
|
46
|
+
ref: h
|
|
47
|
+
} = p, c = s !== void 0, [u, f] = R(l), b = c ? s : u;
|
|
48
|
+
S(() => {
|
|
49
|
+
c || t.length !== 0 && (u < 0 || u > t.length - 1) && f(0);
|
|
50
|
+
}, [t.length, c, u]);
|
|
51
|
+
const g = (o, a) => {
|
|
52
|
+
c || f(a), n == null || n(a);
|
|
53
|
+
};
|
|
54
|
+
return /* @__PURE__ */ P(
|
|
55
|
+
d,
|
|
56
|
+
{
|
|
57
|
+
ref: h,
|
|
58
|
+
sx: { height: "100%", display: "flex", flexDirection: "column", ...v },
|
|
59
|
+
children: [
|
|
60
|
+
/* @__PURE__ */ r(
|
|
61
|
+
d,
|
|
62
|
+
{
|
|
63
|
+
sx: {
|
|
64
|
+
px: 0,
|
|
65
|
+
py: 0,
|
|
66
|
+
overflow: "visible",
|
|
67
|
+
position: "relative",
|
|
68
|
+
// Extra padding to prevent badge clipping
|
|
69
|
+
// Top: accommodates badge positioned at top: -6px with 20px height
|
|
70
|
+
// Right: accommodates badge positioned at right: -8px with 20px width
|
|
71
|
+
paddingTop: (o) => o.spacing(2),
|
|
72
|
+
// 16px
|
|
73
|
+
paddingRight: (o) => o.spacing(2.5)
|
|
74
|
+
// 20px
|
|
75
|
+
},
|
|
76
|
+
children: /* @__PURE__ */ r(
|
|
77
|
+
A,
|
|
78
|
+
{
|
|
79
|
+
value: b,
|
|
80
|
+
onChange: g,
|
|
81
|
+
sx: {
|
|
82
|
+
minHeight: "32px",
|
|
83
|
+
backgroundColor: "transparent",
|
|
84
|
+
overflow: "visible",
|
|
85
|
+
"& .MuiTabs-indicator": {
|
|
86
|
+
display: "none"
|
|
87
|
+
// Hide the default indicator
|
|
88
|
+
},
|
|
89
|
+
"& .MuiTabs-flexContainer": {
|
|
90
|
+
gap: 2,
|
|
91
|
+
overflow: "visible",
|
|
92
|
+
paddingTop: 0,
|
|
93
|
+
paddingBottom: 0
|
|
94
|
+
},
|
|
95
|
+
"& .MuiTabs-scroller": {
|
|
96
|
+
overflow: "visible !important"
|
|
97
|
+
},
|
|
98
|
+
"& .MuiTab-root": {
|
|
99
|
+
overflow: "visible"
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
children: t.map((o, a) => {
|
|
103
|
+
var m, T, w;
|
|
104
|
+
const y = () => {
|
|
105
|
+
if (!o.badge) return;
|
|
106
|
+
const i = o.badge.content, e = o.badge.max;
|
|
107
|
+
return typeof i == "number" && e && i > e ? `${e}+` : i;
|
|
108
|
+
}, B = () => {
|
|
109
|
+
if (!o.badge) return !1;
|
|
110
|
+
const i = o.badge.content, e = o.badge.showZero;
|
|
111
|
+
return !(i === 0 && !e);
|
|
112
|
+
}, C = y(), k = B(), M = () => {
|
|
113
|
+
c || f(a), n == null || n(a);
|
|
114
|
+
}, x = /* @__PURE__ */ r(
|
|
115
|
+
z,
|
|
116
|
+
{
|
|
117
|
+
label: o.label,
|
|
118
|
+
icon: o.icon,
|
|
119
|
+
iconPosition: "start",
|
|
120
|
+
disableRipple: !0,
|
|
121
|
+
onClick: M,
|
|
122
|
+
sx: {
|
|
123
|
+
minHeight: "32px",
|
|
124
|
+
height: "32px",
|
|
125
|
+
padding: "0px 10px",
|
|
126
|
+
borderRadius: "12px",
|
|
127
|
+
backgroundColor: (i) => {
|
|
128
|
+
var e;
|
|
129
|
+
return ((e = i.palette.backgroundPaperElevation) == null ? void 0 : e[11]) || "#32344B";
|
|
130
|
+
},
|
|
131
|
+
color: "text.primary",
|
|
132
|
+
opacity: b === a ? 1 : 0.38,
|
|
133
|
+
fontSize: "13px",
|
|
134
|
+
transition: "all 0.2s ease-in-out",
|
|
135
|
+
position: "relative",
|
|
136
|
+
overflow: "visible",
|
|
137
|
+
"&:hover": {
|
|
138
|
+
opacity: b === a ? 1 : 0.6
|
|
139
|
+
},
|
|
140
|
+
"&.Mui-selected": {
|
|
141
|
+
opacity: 1,
|
|
142
|
+
backgroundColor: (i) => {
|
|
143
|
+
var e;
|
|
144
|
+
return ((e = i.palette.backgroundPaperElevation) == null ? void 0 : e[11]) || "#32344B";
|
|
145
|
+
},
|
|
146
|
+
color: "text.primary"
|
|
147
|
+
},
|
|
148
|
+
"&:focus": {
|
|
149
|
+
outline: "none"
|
|
150
|
+
},
|
|
151
|
+
"&:active": {
|
|
152
|
+
transform: "none"
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
},
|
|
156
|
+
o.id
|
|
157
|
+
);
|
|
158
|
+
return k ? /* @__PURE__ */ r(
|
|
159
|
+
F,
|
|
160
|
+
{
|
|
161
|
+
component: "span",
|
|
162
|
+
sx: { display: "inline-flex" },
|
|
163
|
+
children: /* @__PURE__ */ r(
|
|
164
|
+
Z,
|
|
165
|
+
{
|
|
166
|
+
badgeContent: C,
|
|
167
|
+
color: ((m = o.badge) == null ? void 0 : m.color) || "error",
|
|
168
|
+
max: (T = o.badge) == null ? void 0 : T.max,
|
|
169
|
+
showZero: (w = o.badge) == null ? void 0 : w.showZero,
|
|
170
|
+
anchorOrigin: {
|
|
171
|
+
vertical: "top",
|
|
172
|
+
horizontal: "right"
|
|
173
|
+
},
|
|
174
|
+
overlap: "rectangular",
|
|
175
|
+
sx: {
|
|
176
|
+
"& .MuiBadge-badge": {
|
|
177
|
+
// Ensure badge doesn't inherit tab opacity
|
|
178
|
+
opacity: "1 !important"
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
children: x
|
|
182
|
+
}
|
|
183
|
+
)
|
|
184
|
+
},
|
|
185
|
+
o.id
|
|
186
|
+
) : x;
|
|
187
|
+
})
|
|
188
|
+
}
|
|
189
|
+
)
|
|
190
|
+
}
|
|
191
|
+
),
|
|
192
|
+
/* @__PURE__ */ r(
|
|
193
|
+
d,
|
|
194
|
+
{
|
|
195
|
+
sx: {
|
|
196
|
+
mt: (o) => o.spacing(2),
|
|
197
|
+
borderBottom: 1,
|
|
198
|
+
borderColor: "divider"
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
),
|
|
202
|
+
/* @__PURE__ */ r(d, { sx: { flex: 1, overflow: "auto" }, children: t.map((o, a) => /* @__PURE__ */ r(j, { value: b, index: a, children: o.content }, o.id)) })
|
|
203
|
+
]
|
|
204
|
+
}
|
|
205
|
+
);
|
|
206
|
+
})
|
|
207
|
+
);
|
|
208
|
+
export {
|
|
209
|
+
I as TabBar,
|
|
210
|
+
I as default
|
|
211
|
+
};
|
|
212
|
+
//# sourceMappingURL=TabBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabBar.js","sources":["../../src/components/TabBar.tsx"],"sourcesContent":["import type { SxProps } from \"@mui/material/styles\"\nimport Badge from \"@mui/material/Badge\"\nimport Box from \"@mui/material/Box\"\nimport Tab from \"@mui/material/Tab\"\nimport Tabs from \"@mui/material/Tabs\"\nimport { observer } from \"mobx-react-lite\"\nimport { useEffect, useState } from \"react\"\nimport { externalizeComponent } from \"../externalizeComponent\"\n\nexport interface TabItem {\n /** Unique identifier for the tab */\n id: string\n /** Label text for the tab */\n label: string\n /** Content to display when tab is active */\n content: React.ReactNode\n /** Optional icon component to display with the tab */\n icon?: React.ReactElement\n /** Optional badge configuration */\n badge?: {\n /** Badge content (number or string) */\n content: React.ReactNode\n /** Badge color variant */\n color?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"error\"\n | \"info\"\n | \"success\"\n | \"warning\"\n /** Maximum number to display (e.g., 99+) */\n max?: number\n /** Show badge even when content is zero */\n showZero?: boolean\n }\n}\n\nexport interface TabBarProps {\n /** Array of tab items to display */\n items: TabItem[]\n /** Controlled active tab index */\n activeTab?: number\n /** Default active tab index */\n defaultActiveTab?: number\n /** Callback when tab changes */\n onTabChange?: (index: number) => void\n /** Additional styling */\n sx?: SxProps\n /** Ref to the root container element */\n ref?: React.Ref<HTMLDivElement>\n}\n\ninterface TabPanelProps {\n children?: React.ReactNode\n index: number\n value: number\n}\n\nfunction TabPanel(props: TabPanelProps) {\n const { children, value, index, ...other } = props\n\n return (\n <div\n role=\"tabpanel\"\n hidden={value !== index}\n id={`tabpanel-${index}`}\n aria-labelledby={`tab-${index}`}\n {...other}\n >\n {value === index && <Box>{children}</Box>}\n </div>\n )\n}\n\n/**\n * Wrapper component that filters out MUI Tabs internal props\n * to prevent them from being passed to DOM elements\n */\ninterface TabWrapperProps {\n children: React.ReactNode\n // biome-ignore lint/suspicious/noExplicitAny: pre-biome code\n [key: string]: any\n}\n\nfunction TabWrapper({ children, ...props }: TabWrapperProps) {\n // Filter out MUI Tabs internal props that shouldn't reach the DOM\n const {\n fullWidth,\n indicator,\n onChange,\n orientation,\n scrollButtons,\n selectionFollowsFocus,\n textColor,\n value,\n variant,\n ...cleanProps\n } = props\n\n return <Box {...cleanProps}>{children}</Box>\n}\n\n/**\n * A styled tab bar component with configurable tabs and content.\n * Features the same styling as the Wandelbots design system with rounded tabs\n * and smooth transitions.\n */\nexport const TabBar = externalizeComponent(\n observer((props: TabBarProps) => {\n const {\n items,\n activeTab,\n defaultActiveTab = 0,\n onTabChange,\n sx,\n ref,\n } = props\n const isControlled = activeTab !== undefined\n const [uncontrolledActiveTab, setUncontrolledActiveTab] =\n useState(defaultActiveTab)\n\n // biome-ignore lint/style/noNonNullAssertion: pre-biome code\n const currentValue = isControlled ? activeTab! : uncontrolledActiveTab\n\n // Keep uncontrolled state in range when items change\n useEffect(() => {\n if (isControlled) return\n if (items.length === 0) return\n if (\n uncontrolledActiveTab < 0 ||\n uncontrolledActiveTab > items.length - 1\n ) {\n setUncontrolledActiveTab(0)\n }\n }, [items.length, isControlled, uncontrolledActiveTab])\n\n const handleTabChange = (\n _event: React.SyntheticEvent,\n newValue: number,\n ) => {\n if (!isControlled) {\n setUncontrolledActiveTab(newValue)\n }\n onTabChange?.(newValue)\n }\n\n return (\n <Box\n ref={ref}\n sx={{ height: \"100%\", display: \"flex\", flexDirection: \"column\", ...sx }}\n >\n {/* Tabs */}\n <Box\n sx={{\n px: 0,\n py: 0,\n overflow: \"visible\",\n position: \"relative\",\n // Extra padding to prevent badge clipping\n // Top: accommodates badge positioned at top: -6px with 20px height\n // Right: accommodates badge positioned at right: -8px with 20px width\n paddingTop: (theme) => theme.spacing(2), // 16px\n paddingRight: (theme) => theme.spacing(2.5), // 20px\n }}\n >\n <Tabs\n value={currentValue}\n onChange={handleTabChange}\n sx={{\n minHeight: \"32px\",\n backgroundColor: \"transparent\",\n overflow: \"visible\",\n \"& .MuiTabs-indicator\": {\n display: \"none\", // Hide the default indicator\n },\n \"& .MuiTabs-flexContainer\": {\n gap: 2,\n overflow: \"visible\",\n paddingTop: 0,\n paddingBottom: 0,\n },\n \"& .MuiTabs-scroller\": {\n overflow: \"visible !important\",\n },\n \"& .MuiTab-root\": {\n overflow: \"visible\",\n },\n }}\n >\n {items.map((item, index) => {\n // Helper functions for badge logic\n const getBadgeContent = () => {\n if (!item.badge) return undefined\n const content = item.badge.content\n const max = item.badge.max\n\n // Handle numeric content with max limit\n if (typeof content === \"number\" && max && content > max) {\n return `${max}+`\n }\n\n return content\n }\n\n const shouldShowBadge = () => {\n if (!item.badge) return false\n const content = item.badge.content\n const showZero = item.badge.showZero\n\n // If content is 0 and showZero is false, hide badge\n if (content === 0 && !showZero) return false\n\n return true\n }\n\n const badgeContent = getBadgeContent()\n const showBadge = shouldShowBadge()\n\n const handleTabClick = () => {\n if (!isControlled) {\n setUncontrolledActiveTab(index)\n }\n onTabChange?.(index)\n }\n\n const tab = (\n <Tab\n key={item.id}\n label={item.label}\n icon={item.icon}\n iconPosition=\"start\"\n disableRipple\n onClick={handleTabClick}\n sx={{\n minHeight: \"32px\",\n height: \"32px\",\n padding: \"0px 10px\",\n borderRadius: \"12px\",\n backgroundColor: (theme) =>\n theme.palette.backgroundPaperElevation?.[11] || \"#32344B\",\n color: \"text.primary\",\n opacity: currentValue === index ? 1 : 0.38,\n fontSize: \"13px\",\n transition: \"all 0.2s ease-in-out\",\n position: \"relative\",\n overflow: \"visible\",\n \"&:hover\": {\n opacity: currentValue === index ? 1 : 0.6,\n },\n \"&.Mui-selected\": {\n opacity: 1,\n backgroundColor: (theme) =>\n theme.palette.backgroundPaperElevation?.[11] ||\n \"#32344B\",\n color: \"text.primary\",\n },\n \"&:focus\": {\n outline: \"none\",\n },\n \"&:active\": {\n transform: \"none\",\n },\n }}\n />\n )\n\n if (!showBadge) {\n return tab\n }\n\n return (\n <TabWrapper\n key={item.id}\n component=\"span\"\n sx={{ display: \"inline-flex\" }}\n >\n <Badge\n badgeContent={badgeContent}\n color={item.badge?.color || \"error\"}\n max={item.badge?.max}\n showZero={item.badge?.showZero}\n anchorOrigin={{\n vertical: \"top\",\n horizontal: \"right\",\n }}\n overlap=\"rectangular\"\n sx={{\n \"& .MuiBadge-badge\": {\n // Ensure badge doesn't inherit tab opacity\n opacity: \"1 !important\",\n },\n }}\n >\n {tab}\n </Badge>\n </TabWrapper>\n )\n })}\n </Tabs>\n </Box>\n\n {/* Border line */}\n <Box\n sx={{\n mt: (theme) => theme.spacing(2),\n borderBottom: 1,\n borderColor: \"divider\",\n }}\n />\n\n {/* Tab Content */}\n <Box sx={{ flex: 1, overflow: \"auto\" }}>\n {items.map((item, index) => (\n <TabPanel key={item.id} value={currentValue} index={index}>\n {item.content}\n </TabPanel>\n ))}\n </Box>\n </Box>\n )\n }),\n)\n\nexport default TabBar\n"],"names":["TabPanel","props","children","value","index","other","jsx","Box","TabWrapper","fullWidth","indicator","onChange","orientation","scrollButtons","selectionFollowsFocus","textColor","variant","cleanProps","TabBar","externalizeComponent","observer","items","activeTab","defaultActiveTab","onTabChange","sx","ref","isControlled","uncontrolledActiveTab","setUncontrolledActiveTab","useState","currentValue","useEffect","handleTabChange","_event","newValue","jsxs","theme","Tabs","item","getBadgeContent","content","max","shouldShowBadge","showZero","badgeContent","showBadge","handleTabClick","tab","Tab","_a","Badge","_b","_c"],"mappings":"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"}
|
|
@@ -3,5 +3,5 @@ type ThemeSelectProps = {
|
|
|
3
3
|
kind: "filled" | "outlined" | "text";
|
|
4
4
|
} & React.ComponentProps<typeof Select>;
|
|
5
5
|
export declare const ThemeSelect: ({ kind, sx, ...rest }: ThemeSelectProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
-
export
|
|
6
|
+
export default ThemeSelect;
|
|
7
7
|
//# sourceMappingURL=ThemeSelect.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeSelect.d.ts","sourceRoot":"","sources":["../../src/components/ThemeSelect.tsx"],"names":[],"mappings":"AAGA,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAGzC,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAA;CACrC,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,CAAA;AAEvC,eAAO,MAAM,WAAW,GAAI,uBAAuB,gBAAgB,4CAsClE,CAAA"}
|
|
1
|
+
{"version":3,"file":"ThemeSelect.d.ts","sourceRoot":"","sources":["../../src/components/ThemeSelect.tsx"],"names":[],"mappings":"AAGA,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAGzC,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAA;CACrC,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,CAAA;AAEvC,eAAO,MAAM,WAAW,GAAI,uBAAuB,gBAAgB,4CAsClE,CAAA;AAED,eAAe,WAAW,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timer.d.ts","sourceRoot":"","sources":["../../../src/components/Timer/Timer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA"}
|
|
1
|
+
{"version":3,"file":"Timer.d.ts","sourceRoot":"","sources":["../../../src/components/Timer/Timer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAExD,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),n=require("@mui/material/Box"),s=require("@mui/material/Fade"),o=require("@mui/material/Typography"),d=require("@mui/x-charts"),m=require("@mui/material/styles"),f=require("react-i18next"),y=require("./utils.cjs"),j=({timerState:a,animationState:l,hasError:i,className:u})=>{const{t:c}=f.useTranslation(),t=m.useTheme(),{elapsedTime:x,currentProgress:h}=a,{showErrorAnimation:p,showPauseAnimation:g,showMainText:r}=l;return e.jsxs(n,{className:u,sx:{position:"relative",width:264,height:264,display:"flex",alignItems:"center",justifyContent:"center"},children:[e.jsx(d.Gauge,{width:264,height:264,value:h,valueMin:0,valueMax:100,innerRadius:"85%",outerRadius:"100%",margin:0,skipAnimation:!0,text:()=>"",sx:{opacity:g||p?.6:1,transition:"opacity 0.5s ease-out","& .MuiGauge-valueArc":{fill:i?t.palette.error.light:t.palette.success.main,transition:"fill 0.5s ease-out"},"& .MuiGauge-referenceArc":{fill:"#171927",stroke:"transparent",strokeWidth:0,transition:"fill 0.5s ease-out, stroke 0.5s ease-out, stroke-width 0.5s ease-out"},"& .MuiGauge-valueText":{display:"none"},"& .MuiGauge-text":{display:"none"}}}),e.jsx(n,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:225,height:225,borderRadius:"50%",backgroundColor:"#292B3F",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",textAlign:"center",gap:1,transition:"background-color 0.5s ease-out"},children:e.jsxs(n,{sx:{position:"relative",height:"48px",display:"flex",alignItems:"center",justifyContent:"center",marginBottom:.5},children:[e.jsx(s,{in:r&&i,timeout:200,children:e.jsx(o,{variant:"h6",sx:{position:"absolute",fontSize:"16px",fontWeight:500,color:t.palette.error.light},children:c("timer.error")})}),e.jsx(s,{in:r&&!i,timeout:300,children:e.jsx(o,{variant:"h1",sx:{position:"absolute",fontSize:"48px",fontWeight:500,color:t.palette.text.primary,lineHeight:1,letterSpacing:"-0.5px"},children:y.formatTime(x)})})]})})]})};exports.TimerDefaultVariant=j;
|
|
2
|
+
//# sourceMappingURL=TimerDefaultVariant.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TimerDefaultVariant.cjs","sources":["../../../src/components/Timer/TimerDefaultVariant.tsx"],"sourcesContent":["import Box from \"@mui/material/Box\"\nimport Fade from \"@mui/material/Fade\"\nimport Typography from \"@mui/material/Typography\"\nimport { Gauge } from \"@mui/x-charts\"\nimport { useTheme } from \"@mui/material/styles\"\nimport { useTranslation } from \"react-i18next\"\nimport type { TimerState, TimerAnimationState } from \"./types\"\nimport { formatTime } from \"./utils\"\n\ninterface TimerDefaultVariantProps {\n timerState: TimerState\n animationState: TimerAnimationState\n hasError: boolean\n className?: string\n}\n\nexport const TimerDefaultVariant = ({\n timerState,\n animationState,\n hasError,\n className,\n}: TimerDefaultVariantProps) => {\n const { t } = useTranslation()\n const theme = useTheme()\n const { elapsedTime, currentProgress } = timerState\n const { showErrorAnimation, showPauseAnimation, showMainText } =\n animationState\n\n return (\n <Box\n className={className}\n sx={{\n position: \"relative\",\n width: 264,\n height: 264,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n }}\n >\n <Gauge\n width={264}\n height={264}\n value={currentProgress}\n valueMin={0}\n valueMax={100}\n innerRadius=\"85%\"\n outerRadius=\"100%\"\n margin={0}\n skipAnimation={true}\n text={() => \"\"}\n sx={{\n opacity: showPauseAnimation || showErrorAnimation ? 0.6 : 1,\n transition: \"opacity 0.5s ease-out\",\n \"& .MuiGauge-valueArc\": {\n fill: hasError\n ? theme.palette.error.light\n : theme.palette.success.main,\n transition: \"fill 0.5s ease-out\",\n },\n \"& .MuiGauge-referenceArc\": {\n fill: \"#171927\",\n stroke: \"transparent\",\n strokeWidth: 0,\n transition:\n \"fill 0.5s ease-out, stroke 0.5s ease-out, stroke-width 0.5s ease-out\",\n },\n \"& .MuiGauge-valueText\": {\n display: \"none\",\n },\n \"& .MuiGauge-text\": {\n display: \"none\",\n },\n }}\n />\n\n {/* Center content overlay */}\n <Box\n sx={{\n position: \"absolute\",\n top: \"50%\",\n left: \"50%\",\n transform: \"translate(-50%, -50%)\",\n width: 225,\n height: 225,\n borderRadius: \"50%\",\n backgroundColor: \"#292B3F\",\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\",\n textAlign: \"center\",\n gap: 1,\n transition: \"background-color 0.5s ease-out\",\n }}\n >\n {/* Main display */}\n <Box\n sx={{\n position: \"relative\",\n height: \"48px\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n marginBottom: 0.5,\n }}\n >\n {/* Error text */}\n <Fade in={showMainText && hasError} timeout={200}>\n <Typography\n variant=\"h6\"\n sx={{\n position: \"absolute\",\n fontSize: \"16px\",\n fontWeight: 500,\n color: theme.palette.error.light,\n }}\n >\n {t(\"timer.error\")}\n </Typography>\n </Fade>\n\n {/* Timer display */}\n <Fade in={showMainText && !hasError} timeout={300}>\n <Typography\n variant=\"h1\"\n sx={{\n position: \"absolute\",\n fontSize: \"48px\",\n fontWeight: 500,\n color: theme.palette.text.primary,\n lineHeight: 1,\n letterSpacing: \"-0.5px\",\n }}\n >\n {formatTime(elapsedTime)}\n </Typography>\n </Fade>\n </Box>\n </Box>\n </Box>\n )\n}\n"],"names":["TimerDefaultVariant","timerState","animationState","hasError","className","t","useTranslation","theme","useTheme","elapsedTime","currentProgress","showErrorAnimation","showPauseAnimation","showMainText","jsxs","Box","jsx","Gauge","Fade","Typography"],"mappings":"2UAgBaA,EAAsB,CAAC,CAClC,WAAAC,EACA,eAAAC,EACA,SAAAC,EACA,UAAAC,CACF,IAAgC,CAC9B,KAAM,CAAE,EAAAC,CAAA,EAAMC,iBAAA,EACRC,EAAQC,EAAAA,SAAA,EACR,CAAE,YAAAC,EAAa,gBAAAC,CAAA,EAAoBT,EACnC,CAAE,mBAAAU,EAAoB,mBAAAC,EAAoB,aAAAC,CAAA,EAC9CX,EAEF,OACEY,EAAAA,KAACC,EAAA,CACC,UAAAX,EACA,GAAI,CACF,SAAU,WACV,MAAO,IACP,OAAQ,IACR,QAAS,OACT,WAAY,SACZ,eAAgB,QAAA,EAGlB,SAAA,CAAAY,EAAAA,IAACC,EAAAA,MAAA,CACC,MAAO,IACP,OAAQ,IACR,MAAOP,EACP,SAAU,EACV,SAAU,IACV,YAAY,MACZ,YAAY,OACZ,OAAQ,EACR,cAAe,GACf,KAAM,IAAM,GACZ,GAAI,CACF,QAASE,GAAsBD,EAAqB,GAAM,EAC1D,WAAY,wBACZ,uBAAwB,CACtB,KAAMR,EACFI,EAAM,QAAQ,MAAM,MACpBA,EAAM,QAAQ,QAAQ,KAC1B,WAAY,oBAAA,EAEd,2BAA4B,CAC1B,KAAM,UACN,OAAQ,cACR,YAAa,EACb,WACE,sEAAA,EAEJ,wBAAyB,CACvB,QAAS,MAAA,EAEX,mBAAoB,CAClB,QAAS,MAAA,CACX,CACF,CAAA,EAIFS,EAAAA,IAACD,EAAA,CACC,GAAI,CACF,SAAU,WACV,IAAK,MACL,KAAM,MACN,UAAW,wBACX,MAAO,IACP,OAAQ,IACR,aAAc,MACd,gBAAiB,UACjB,QAAS,OACT,cAAe,SACf,WAAY,SACZ,eAAgB,SAChB,UAAW,SACX,IAAK,EACL,WAAY,gCAAA,EAId,SAAAD,EAAAA,KAACC,EAAA,CACC,GAAI,CACF,SAAU,WACV,OAAQ,OACR,QAAS,OACT,WAAY,SACZ,eAAgB,SAChB,aAAc,EAAA,EAIhB,SAAA,CAAAC,MAACE,EAAA,CAAK,GAAIL,GAAgBV,EAAU,QAAS,IAC3C,SAAAa,EAAAA,IAACG,EAAA,CACC,QAAQ,KACR,GAAI,CACF,SAAU,WACV,SAAU,OACV,WAAY,IACZ,MAAOZ,EAAM,QAAQ,MAAM,KAAA,EAG5B,WAAE,aAAa,CAAA,CAAA,EAEpB,QAGCW,EAAA,CAAK,GAAIL,GAAgB,CAACV,EAAU,QAAS,IAC5C,SAAAa,EAAAA,IAACG,EAAA,CACC,QAAQ,KACR,GAAI,CACF,SAAU,WACV,SAAU,OACV,WAAY,IACZ,MAAOZ,EAAM,QAAQ,KAAK,QAC1B,WAAY,EACZ,cAAe,QAAA,EAGhB,sBAAWE,CAAW,CAAA,CAAA,CACzB,CACF,CAAA,CAAA,CAAA,CACF,CAAA,CACF,CAAA,CAAA,CAGN"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { jsxs as n, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import o from "@mui/material/Box";
|
|
3
|
+
import a from "@mui/material/Fade";
|
|
4
|
+
import s from "@mui/material/Typography";
|
|
5
|
+
import { Gauge as d } from "@mui/x-charts";
|
|
6
|
+
import { useTheme as x } from "@mui/material/styles";
|
|
7
|
+
import { useTranslation as y } from "react-i18next";
|
|
8
|
+
import { formatTime as v } from "./utils.js";
|
|
9
|
+
const C = ({
|
|
10
|
+
timerState: l,
|
|
11
|
+
animationState: u,
|
|
12
|
+
hasError: i,
|
|
13
|
+
className: m
|
|
14
|
+
}) => {
|
|
15
|
+
const { t: p } = y(), e = x(), { elapsedTime: c, currentProgress: h } = l, { showErrorAnimation: f, showPauseAnimation: g, showMainText: r } = u;
|
|
16
|
+
return /* @__PURE__ */ n(
|
|
17
|
+
o,
|
|
18
|
+
{
|
|
19
|
+
className: m,
|
|
20
|
+
sx: {
|
|
21
|
+
position: "relative",
|
|
22
|
+
width: 264,
|
|
23
|
+
height: 264,
|
|
24
|
+
display: "flex",
|
|
25
|
+
alignItems: "center",
|
|
26
|
+
justifyContent: "center"
|
|
27
|
+
},
|
|
28
|
+
children: [
|
|
29
|
+
/* @__PURE__ */ t(
|
|
30
|
+
d,
|
|
31
|
+
{
|
|
32
|
+
width: 264,
|
|
33
|
+
height: 264,
|
|
34
|
+
value: h,
|
|
35
|
+
valueMin: 0,
|
|
36
|
+
valueMax: 100,
|
|
37
|
+
innerRadius: "85%",
|
|
38
|
+
outerRadius: "100%",
|
|
39
|
+
margin: 0,
|
|
40
|
+
skipAnimation: !0,
|
|
41
|
+
text: () => "",
|
|
42
|
+
sx: {
|
|
43
|
+
opacity: g || f ? 0.6 : 1,
|
|
44
|
+
transition: "opacity 0.5s ease-out",
|
|
45
|
+
"& .MuiGauge-valueArc": {
|
|
46
|
+
fill: i ? e.palette.error.light : e.palette.success.main,
|
|
47
|
+
transition: "fill 0.5s ease-out"
|
|
48
|
+
},
|
|
49
|
+
"& .MuiGauge-referenceArc": {
|
|
50
|
+
fill: "#171927",
|
|
51
|
+
stroke: "transparent",
|
|
52
|
+
strokeWidth: 0,
|
|
53
|
+
transition: "fill 0.5s ease-out, stroke 0.5s ease-out, stroke-width 0.5s ease-out"
|
|
54
|
+
},
|
|
55
|
+
"& .MuiGauge-valueText": {
|
|
56
|
+
display: "none"
|
|
57
|
+
},
|
|
58
|
+
"& .MuiGauge-text": {
|
|
59
|
+
display: "none"
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
),
|
|
64
|
+
/* @__PURE__ */ t(
|
|
65
|
+
o,
|
|
66
|
+
{
|
|
67
|
+
sx: {
|
|
68
|
+
position: "absolute",
|
|
69
|
+
top: "50%",
|
|
70
|
+
left: "50%",
|
|
71
|
+
transform: "translate(-50%, -50%)",
|
|
72
|
+
width: 225,
|
|
73
|
+
height: 225,
|
|
74
|
+
borderRadius: "50%",
|
|
75
|
+
backgroundColor: "#292B3F",
|
|
76
|
+
display: "flex",
|
|
77
|
+
flexDirection: "column",
|
|
78
|
+
alignItems: "center",
|
|
79
|
+
justifyContent: "center",
|
|
80
|
+
textAlign: "center",
|
|
81
|
+
gap: 1,
|
|
82
|
+
transition: "background-color 0.5s ease-out"
|
|
83
|
+
},
|
|
84
|
+
children: /* @__PURE__ */ n(
|
|
85
|
+
o,
|
|
86
|
+
{
|
|
87
|
+
sx: {
|
|
88
|
+
position: "relative",
|
|
89
|
+
height: "48px",
|
|
90
|
+
display: "flex",
|
|
91
|
+
alignItems: "center",
|
|
92
|
+
justifyContent: "center",
|
|
93
|
+
marginBottom: 0.5
|
|
94
|
+
},
|
|
95
|
+
children: [
|
|
96
|
+
/* @__PURE__ */ t(a, { in: r && i, timeout: 200, children: /* @__PURE__ */ t(
|
|
97
|
+
s,
|
|
98
|
+
{
|
|
99
|
+
variant: "h6",
|
|
100
|
+
sx: {
|
|
101
|
+
position: "absolute",
|
|
102
|
+
fontSize: "16px",
|
|
103
|
+
fontWeight: 500,
|
|
104
|
+
color: e.palette.error.light
|
|
105
|
+
},
|
|
106
|
+
children: p("timer.error")
|
|
107
|
+
}
|
|
108
|
+
) }),
|
|
109
|
+
/* @__PURE__ */ t(a, { in: r && !i, timeout: 300, children: /* @__PURE__ */ t(
|
|
110
|
+
s,
|
|
111
|
+
{
|
|
112
|
+
variant: "h1",
|
|
113
|
+
sx: {
|
|
114
|
+
position: "absolute",
|
|
115
|
+
fontSize: "48px",
|
|
116
|
+
fontWeight: 500,
|
|
117
|
+
color: e.palette.text.primary,
|
|
118
|
+
lineHeight: 1,
|
|
119
|
+
letterSpacing: "-0.5px"
|
|
120
|
+
},
|
|
121
|
+
children: v(c)
|
|
122
|
+
}
|
|
123
|
+
) })
|
|
124
|
+
]
|
|
125
|
+
}
|
|
126
|
+
)
|
|
127
|
+
}
|
|
128
|
+
)
|
|
129
|
+
]
|
|
130
|
+
}
|
|
131
|
+
);
|
|
132
|
+
};
|
|
133
|
+
export {
|
|
134
|
+
C as TimerDefaultVariant
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=TimerDefaultVariant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TimerDefaultVariant.js","sources":["../../../src/components/Timer/TimerDefaultVariant.tsx"],"sourcesContent":["import Box from \"@mui/material/Box\"\nimport Fade from \"@mui/material/Fade\"\nimport Typography from \"@mui/material/Typography\"\nimport { Gauge } from \"@mui/x-charts\"\nimport { useTheme } from \"@mui/material/styles\"\nimport { useTranslation } from \"react-i18next\"\nimport type { TimerState, TimerAnimationState } from \"./types\"\nimport { formatTime } from \"./utils\"\n\ninterface TimerDefaultVariantProps {\n timerState: TimerState\n animationState: TimerAnimationState\n hasError: boolean\n className?: string\n}\n\nexport const TimerDefaultVariant = ({\n timerState,\n animationState,\n hasError,\n className,\n}: TimerDefaultVariantProps) => {\n const { t } = useTranslation()\n const theme = useTheme()\n const { elapsedTime, currentProgress } = timerState\n const { showErrorAnimation, showPauseAnimation, showMainText } =\n animationState\n\n return (\n <Box\n className={className}\n sx={{\n position: \"relative\",\n width: 264,\n height: 264,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n }}\n >\n <Gauge\n width={264}\n height={264}\n value={currentProgress}\n valueMin={0}\n valueMax={100}\n innerRadius=\"85%\"\n outerRadius=\"100%\"\n margin={0}\n skipAnimation={true}\n text={() => \"\"}\n sx={{\n opacity: showPauseAnimation || showErrorAnimation ? 0.6 : 1,\n transition: \"opacity 0.5s ease-out\",\n \"& .MuiGauge-valueArc\": {\n fill: hasError\n ? theme.palette.error.light\n : theme.palette.success.main,\n transition: \"fill 0.5s ease-out\",\n },\n \"& .MuiGauge-referenceArc\": {\n fill: \"#171927\",\n stroke: \"transparent\",\n strokeWidth: 0,\n transition:\n \"fill 0.5s ease-out, stroke 0.5s ease-out, stroke-width 0.5s ease-out\",\n },\n \"& .MuiGauge-valueText\": {\n display: \"none\",\n },\n \"& .MuiGauge-text\": {\n display: \"none\",\n },\n }}\n />\n\n {/* Center content overlay */}\n <Box\n sx={{\n position: \"absolute\",\n top: \"50%\",\n left: \"50%\",\n transform: \"translate(-50%, -50%)\",\n width: 225,\n height: 225,\n borderRadius: \"50%\",\n backgroundColor: \"#292B3F\",\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\",\n textAlign: \"center\",\n gap: 1,\n transition: \"background-color 0.5s ease-out\",\n }}\n >\n {/* Main display */}\n <Box\n sx={{\n position: \"relative\",\n height: \"48px\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n marginBottom: 0.5,\n }}\n >\n {/* Error text */}\n <Fade in={showMainText && hasError} timeout={200}>\n <Typography\n variant=\"h6\"\n sx={{\n position: \"absolute\",\n fontSize: \"16px\",\n fontWeight: 500,\n color: theme.palette.error.light,\n }}\n >\n {t(\"timer.error\")}\n </Typography>\n </Fade>\n\n {/* Timer display */}\n <Fade in={showMainText && !hasError} timeout={300}>\n <Typography\n variant=\"h1\"\n sx={{\n position: \"absolute\",\n fontSize: \"48px\",\n fontWeight: 500,\n color: theme.palette.text.primary,\n lineHeight: 1,\n letterSpacing: \"-0.5px\",\n }}\n >\n {formatTime(elapsedTime)}\n </Typography>\n </Fade>\n </Box>\n </Box>\n </Box>\n )\n}\n"],"names":["TimerDefaultVariant","timerState","animationState","hasError","className","t","useTranslation","theme","useTheme","elapsedTime","currentProgress","showErrorAnimation","showPauseAnimation","showMainText","jsxs","Box","jsx","Gauge","Fade","Typography"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),s=require("@mui/material/Box"),l=require("@mui/material/Typography"),h=require("@mui/material/styles"),d=require("react-i18next"),c=require("./utils.cjs"),f=({timerState:u,animationState:m,hasError:i,compact:p,className:r})=>{const{t:o,i18n:n}=d.useTranslation(),e=h.useTheme(),{elapsedTime:a,currentProgress:x}=u,{showErrorAnimation:y,showPauseAnimation:g}=m;return p?t.jsx(s,{className:r,sx:{display:"flex",alignItems:"center",m:0},children:t.jsx(l,{variant:"body2",sx:{color:i?e.palette.error.light:e.palette.text.primary,fontSize:"14px",transition:"color 0.5s ease-out"},children:i?o("timer.error"):c.formatTimeLocalized(a,n.language)})}):t.jsxs(s,{className:r,sx:{display:"flex",alignItems:"center",m:0,gap:1},children:[t.jsx(s,{sx:{width:20,height:20,display:"flex",alignItems:"center",justifyContent:"center",opacity:g||y?.6:1,transition:"opacity 0.5s ease-out"},children:t.jsxs("svg",{width:"20",height:"20",viewBox:"0 0 20 20",style:{transform:"rotate(-90deg)"},role:"img","aria-label":"Timer progress",children:[t.jsx("circle",{cx:"10",cy:"10",r:"8",fill:"none",stroke:i?e.palette.error.light:e.palette.success.main,strokeWidth:"2",opacity:.3,style:{transition:"stroke 0.8s ease-in-out, opacity 2s ease-in-out"}}),t.jsx("circle",{cx:"10",cy:"10",r:"8",fill:"none",stroke:i?e.palette.error.light:e.palette.success.main,strokeWidth:"2",strokeLinecap:"round",strokeDasharray:`${2*Math.PI*8}`,strokeDashoffset:`${2*Math.PI*8*(1-x/100)}`,style:{transition:"stroke-dashoffset 0.1s ease-out, stroke 0.8s ease-in-out, opacity 2s ease-in-out"}})]})}),t.jsx(l,{variant:"body2",sx:{color:i?e.palette.error.light:e.palette.text.primary,fontSize:"14px",lineHeight:"normal",letterSpacing:"normal",transition:"color 0.8s ease-in-out, font-size 0.3s ease-out, opacity 2s ease-in-out"},children:i?o("timer.error"):c.formatTimeLocalized(a,n.language)})]})};exports.TimerSmallVariant=f;
|
|
2
|
+
//# sourceMappingURL=TimerSmallVariant.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TimerSmallVariant.cjs","sources":["../../../src/components/Timer/TimerSmallVariant.tsx"],"sourcesContent":["import Box from \"@mui/material/Box\"\nimport Typography from \"@mui/material/Typography\"\nimport { useTheme } from \"@mui/material/styles\"\nimport { useTranslation } from \"react-i18next\"\nimport type { TimerAnimationState, TimerState } from \"./types\"\nimport { formatTimeLocalized } from \"./utils\"\n\ninterface TimerSmallVariantProps {\n timerState: TimerState\n animationState: TimerAnimationState\n hasError: boolean\n compact: boolean\n className?: string\n}\n\nexport const TimerSmallVariant = ({\n timerState,\n animationState,\n hasError,\n compact,\n className,\n}: TimerSmallVariantProps) => {\n const { t, i18n } = useTranslation()\n const theme = useTheme()\n const { elapsedTime, currentProgress } = timerState\n const { showErrorAnimation, showPauseAnimation } = animationState\n\n // Simple text-only mode for compact variant\n if (compact) {\n return (\n <Box\n className={className}\n sx={{\n display: \"flex\",\n alignItems: \"center\",\n m: 0,\n }}\n >\n <Typography\n variant=\"body2\"\n sx={{\n color: hasError\n ? theme.palette.error.light\n : theme.palette.text.primary,\n fontSize: \"14px\",\n transition: \"color 0.5s ease-out\",\n }}\n >\n {hasError\n ? t(\"timer.error\")\n : formatTimeLocalized(elapsedTime, i18n.language)}\n </Typography>\n </Box>\n )\n }\n\n return (\n <Box\n className={className}\n sx={{\n display: \"flex\",\n alignItems: \"center\",\n m: 0,\n gap: 1,\n }}\n >\n {/* Animated progress ring icon */}\n <Box\n sx={{\n width: 20,\n height: 20,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n opacity: showPauseAnimation || showErrorAnimation ? 0.6 : 1,\n transition: \"opacity 0.5s ease-out\",\n }}\n >\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n style={{ transform: \"rotate(-90deg)\" }}\n role=\"img\"\n aria-label=\"Timer progress\"\n >\n <circle\n cx=\"10\"\n cy=\"10\"\n r=\"8\"\n fill=\"none\"\n stroke={\n hasError ? theme.palette.error.light : theme.palette.success.main\n }\n strokeWidth=\"2\"\n opacity={0.3}\n style={{\n transition: \"stroke 0.8s ease-in-out, opacity 2s ease-in-out\",\n }}\n />\n <circle\n cx=\"10\"\n cy=\"10\"\n r=\"8\"\n fill=\"none\"\n stroke={\n hasError ? theme.palette.error.light : theme.palette.success.main\n }\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeDasharray={`${2 * Math.PI * 8}`}\n strokeDashoffset={`${2 * Math.PI * 8 * (1 - currentProgress / 100)}`}\n style={{\n transition:\n \"stroke-dashoffset 0.1s ease-out, stroke 0.8s ease-in-out, opacity 2s ease-in-out\",\n }}\n />\n </svg>\n </Box>\n\n {/* Timer text display */}\n <Typography\n variant=\"body2\"\n sx={{\n color: hasError\n ? theme.palette.error.light\n : theme.palette.text.primary,\n fontSize: \"14px\",\n lineHeight: \"normal\",\n letterSpacing: \"normal\",\n transition:\n \"color 0.8s ease-in-out, font-size 0.3s ease-out, opacity 2s ease-in-out\",\n }}\n >\n {hasError\n ? t(\"timer.error\")\n : formatTimeLocalized(elapsedTime, i18n.language)}\n </Typography>\n </Box>\n )\n}\n"],"names":["TimerSmallVariant","timerState","animationState","hasError","compact","className","t","i18n","useTranslation","theme","useTheme","elapsedTime","currentProgress","showErrorAnimation","showPauseAnimation","jsx","Box","Typography","formatTimeLocalized","jsxs"],"mappings":"gRAeaA,EAAoB,CAAC,CAChC,WAAAC,EACA,eAAAC,EACA,SAAAC,EACA,QAAAC,EACA,UAAAC,CACF,IAA8B,CAC5B,KAAM,CAAE,EAAAC,EAAG,KAAAC,CAAA,EAASC,iBAAA,EACdC,EAAQC,EAAAA,SAAA,EACR,CAAE,YAAAC,EAAa,gBAAAC,CAAA,EAAoBX,EACnC,CAAE,mBAAAY,EAAoB,mBAAAC,CAAA,EAAuBZ,EAGnD,OAAIE,EAEAW,EAAAA,IAACC,EAAA,CACC,UAAAX,EACA,GAAI,CACF,QAAS,OACT,WAAY,SACZ,EAAG,CAAA,EAGL,SAAAU,EAAAA,IAACE,EAAA,CACC,QAAQ,QACR,GAAI,CACF,MAAOd,EACHM,EAAM,QAAQ,MAAM,MACpBA,EAAM,QAAQ,KAAK,QACvB,SAAU,OACV,WAAY,qBAAA,EAGb,WACGH,EAAE,aAAa,EACfY,sBAAoBP,EAAaJ,EAAK,QAAQ,CAAA,CAAA,CACpD,CAAA,EAMJY,EAAAA,KAACH,EAAA,CACC,UAAAX,EACA,GAAI,CACF,QAAS,OACT,WAAY,SACZ,EAAG,EACH,IAAK,CAAA,EAIP,SAAA,CAAAU,EAAAA,IAACC,EAAA,CACC,GAAI,CACF,MAAO,GACP,OAAQ,GACR,QAAS,OACT,WAAY,SACZ,eAAgB,SAChB,QAASF,GAAsBD,EAAqB,GAAM,EAC1D,WAAY,uBAAA,EAGd,SAAAM,EAAAA,KAAC,MAAA,CACC,MAAM,KACN,OAAO,KACP,QAAQ,YACR,MAAO,CAAE,UAAW,gBAAA,EACpB,KAAK,MACL,aAAW,iBAEX,SAAA,CAAAJ,EAAAA,IAAC,SAAA,CACC,GAAG,KACH,GAAG,KACH,EAAE,IACF,KAAK,OACL,OACEZ,EAAWM,EAAM,QAAQ,MAAM,MAAQA,EAAM,QAAQ,QAAQ,KAE/D,YAAY,IACZ,QAAS,GACT,MAAO,CACL,WAAY,iDAAA,CACd,CAAA,EAEFM,EAAAA,IAAC,SAAA,CACC,GAAG,KACH,GAAG,KACH,EAAE,IACF,KAAK,OACL,OACEZ,EAAWM,EAAM,QAAQ,MAAM,MAAQA,EAAM,QAAQ,QAAQ,KAE/D,YAAY,IACZ,cAAc,QACd,gBAAiB,GAAG,EAAI,KAAK,GAAK,CAAC,GACnC,iBAAkB,GAAG,EAAI,KAAK,GAAK,GAAK,EAAIG,EAAkB,IAAI,GAClE,MAAO,CACL,WACE,kFAAA,CACJ,CAAA,CACF,CAAA,CAAA,CACF,CAAA,EAIFG,EAAAA,IAACE,EAAA,CACC,QAAQ,QACR,GAAI,CACF,MAAOd,EACHM,EAAM,QAAQ,MAAM,MACpBA,EAAM,QAAQ,KAAK,QACvB,SAAU,OACV,WAAY,SACZ,cAAe,SACf,WACE,yEAAA,EAGH,WACGH,EAAE,aAAa,EACfY,sBAAoBP,EAAaJ,EAAK,QAAQ,CAAA,CAAA,CACpD,CAAA,CAAA,CAGN"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { jsx as o, jsxs as l } from "react/jsx-runtime";
|
|
2
|
+
import r from "@mui/material/Box";
|
|
3
|
+
import c from "@mui/material/Typography";
|
|
4
|
+
import { useTheme as d } from "@mui/material/styles";
|
|
5
|
+
import { useTranslation as x } from "react-i18next";
|
|
6
|
+
import { formatTimeLocalized as m } from "./utils.js";
|
|
7
|
+
const P = ({
|
|
8
|
+
timerState: p,
|
|
9
|
+
animationState: h,
|
|
10
|
+
hasError: t,
|
|
11
|
+
compact: f,
|
|
12
|
+
className: i
|
|
13
|
+
}) => {
|
|
14
|
+
const { t: s, i18n: a } = x(), e = d(), { elapsedTime: n, currentProgress: g } = p, { showErrorAnimation: u, showPauseAnimation: y } = h;
|
|
15
|
+
return f ? /* @__PURE__ */ o(
|
|
16
|
+
r,
|
|
17
|
+
{
|
|
18
|
+
className: i,
|
|
19
|
+
sx: {
|
|
20
|
+
display: "flex",
|
|
21
|
+
alignItems: "center",
|
|
22
|
+
m: 0
|
|
23
|
+
},
|
|
24
|
+
children: /* @__PURE__ */ o(
|
|
25
|
+
c,
|
|
26
|
+
{
|
|
27
|
+
variant: "body2",
|
|
28
|
+
sx: {
|
|
29
|
+
color: t ? e.palette.error.light : e.palette.text.primary,
|
|
30
|
+
fontSize: "14px",
|
|
31
|
+
transition: "color 0.5s ease-out"
|
|
32
|
+
},
|
|
33
|
+
children: t ? s("timer.error") : m(n, a.language)
|
|
34
|
+
}
|
|
35
|
+
)
|
|
36
|
+
}
|
|
37
|
+
) : /* @__PURE__ */ l(
|
|
38
|
+
r,
|
|
39
|
+
{
|
|
40
|
+
className: i,
|
|
41
|
+
sx: {
|
|
42
|
+
display: "flex",
|
|
43
|
+
alignItems: "center",
|
|
44
|
+
m: 0,
|
|
45
|
+
gap: 1
|
|
46
|
+
},
|
|
47
|
+
children: [
|
|
48
|
+
/* @__PURE__ */ o(
|
|
49
|
+
r,
|
|
50
|
+
{
|
|
51
|
+
sx: {
|
|
52
|
+
width: 20,
|
|
53
|
+
height: 20,
|
|
54
|
+
display: "flex",
|
|
55
|
+
alignItems: "center",
|
|
56
|
+
justifyContent: "center",
|
|
57
|
+
opacity: y || u ? 0.6 : 1,
|
|
58
|
+
transition: "opacity 0.5s ease-out"
|
|
59
|
+
},
|
|
60
|
+
children: /* @__PURE__ */ l(
|
|
61
|
+
"svg",
|
|
62
|
+
{
|
|
63
|
+
width: "20",
|
|
64
|
+
height: "20",
|
|
65
|
+
viewBox: "0 0 20 20",
|
|
66
|
+
style: { transform: "rotate(-90deg)" },
|
|
67
|
+
role: "img",
|
|
68
|
+
"aria-label": "Timer progress",
|
|
69
|
+
children: [
|
|
70
|
+
/* @__PURE__ */ o(
|
|
71
|
+
"circle",
|
|
72
|
+
{
|
|
73
|
+
cx: "10",
|
|
74
|
+
cy: "10",
|
|
75
|
+
r: "8",
|
|
76
|
+
fill: "none",
|
|
77
|
+
stroke: t ? e.palette.error.light : e.palette.success.main,
|
|
78
|
+
strokeWidth: "2",
|
|
79
|
+
opacity: 0.3,
|
|
80
|
+
style: {
|
|
81
|
+
transition: "stroke 0.8s ease-in-out, opacity 2s ease-in-out"
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
),
|
|
85
|
+
/* @__PURE__ */ o(
|
|
86
|
+
"circle",
|
|
87
|
+
{
|
|
88
|
+
cx: "10",
|
|
89
|
+
cy: "10",
|
|
90
|
+
r: "8",
|
|
91
|
+
fill: "none",
|
|
92
|
+
stroke: t ? e.palette.error.light : e.palette.success.main,
|
|
93
|
+
strokeWidth: "2",
|
|
94
|
+
strokeLinecap: "round",
|
|
95
|
+
strokeDasharray: `${2 * Math.PI * 8}`,
|
|
96
|
+
strokeDashoffset: `${2 * Math.PI * 8 * (1 - g / 100)}`,
|
|
97
|
+
style: {
|
|
98
|
+
transition: "stroke-dashoffset 0.1s ease-out, stroke 0.8s ease-in-out, opacity 2s ease-in-out"
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
)
|
|
102
|
+
]
|
|
103
|
+
}
|
|
104
|
+
)
|
|
105
|
+
}
|
|
106
|
+
),
|
|
107
|
+
/* @__PURE__ */ o(
|
|
108
|
+
c,
|
|
109
|
+
{
|
|
110
|
+
variant: "body2",
|
|
111
|
+
sx: {
|
|
112
|
+
color: t ? e.palette.error.light : e.palette.text.primary,
|
|
113
|
+
fontSize: "14px",
|
|
114
|
+
lineHeight: "normal",
|
|
115
|
+
letterSpacing: "normal",
|
|
116
|
+
transition: "color 0.8s ease-in-out, font-size 0.3s ease-out, opacity 2s ease-in-out"
|
|
117
|
+
},
|
|
118
|
+
children: t ? s("timer.error") : m(n, a.language)
|
|
119
|
+
}
|
|
120
|
+
)
|
|
121
|
+
]
|
|
122
|
+
}
|
|
123
|
+
);
|
|
124
|
+
};
|
|
125
|
+
export {
|
|
126
|
+
P as TimerSmallVariant
|
|
127
|
+
};
|
|
128
|
+
//# sourceMappingURL=TimerSmallVariant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TimerSmallVariant.js","sources":["../../../src/components/Timer/TimerSmallVariant.tsx"],"sourcesContent":["import Box from \"@mui/material/Box\"\nimport Typography from \"@mui/material/Typography\"\nimport { useTheme } from \"@mui/material/styles\"\nimport { useTranslation } from \"react-i18next\"\nimport type { TimerAnimationState, TimerState } from \"./types\"\nimport { formatTimeLocalized } from \"./utils\"\n\ninterface TimerSmallVariantProps {\n timerState: TimerState\n animationState: TimerAnimationState\n hasError: boolean\n compact: boolean\n className?: string\n}\n\nexport const TimerSmallVariant = ({\n timerState,\n animationState,\n hasError,\n compact,\n className,\n}: TimerSmallVariantProps) => {\n const { t, i18n } = useTranslation()\n const theme = useTheme()\n const { elapsedTime, currentProgress } = timerState\n const { showErrorAnimation, showPauseAnimation } = animationState\n\n // Simple text-only mode for compact variant\n if (compact) {\n return (\n <Box\n className={className}\n sx={{\n display: \"flex\",\n alignItems: \"center\",\n m: 0,\n }}\n >\n <Typography\n variant=\"body2\"\n sx={{\n color: hasError\n ? theme.palette.error.light\n : theme.palette.text.primary,\n fontSize: \"14px\",\n transition: \"color 0.5s ease-out\",\n }}\n >\n {hasError\n ? t(\"timer.error\")\n : formatTimeLocalized(elapsedTime, i18n.language)}\n </Typography>\n </Box>\n )\n }\n\n return (\n <Box\n className={className}\n sx={{\n display: \"flex\",\n alignItems: \"center\",\n m: 0,\n gap: 1,\n }}\n >\n {/* Animated progress ring icon */}\n <Box\n sx={{\n width: 20,\n height: 20,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n opacity: showPauseAnimation || showErrorAnimation ? 0.6 : 1,\n transition: \"opacity 0.5s ease-out\",\n }}\n >\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n style={{ transform: \"rotate(-90deg)\" }}\n role=\"img\"\n aria-label=\"Timer progress\"\n >\n <circle\n cx=\"10\"\n cy=\"10\"\n r=\"8\"\n fill=\"none\"\n stroke={\n hasError ? theme.palette.error.light : theme.palette.success.main\n }\n strokeWidth=\"2\"\n opacity={0.3}\n style={{\n transition: \"stroke 0.8s ease-in-out, opacity 2s ease-in-out\",\n }}\n />\n <circle\n cx=\"10\"\n cy=\"10\"\n r=\"8\"\n fill=\"none\"\n stroke={\n hasError ? theme.palette.error.light : theme.palette.success.main\n }\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeDasharray={`${2 * Math.PI * 8}`}\n strokeDashoffset={`${2 * Math.PI * 8 * (1 - currentProgress / 100)}`}\n style={{\n transition:\n \"stroke-dashoffset 0.1s ease-out, stroke 0.8s ease-in-out, opacity 2s ease-in-out\",\n }}\n />\n </svg>\n </Box>\n\n {/* Timer text display */}\n <Typography\n variant=\"body2\"\n sx={{\n color: hasError\n ? theme.palette.error.light\n : theme.palette.text.primary,\n fontSize: \"14px\",\n lineHeight: \"normal\",\n letterSpacing: \"normal\",\n transition:\n \"color 0.8s ease-in-out, font-size 0.3s ease-out, opacity 2s ease-in-out\",\n }}\n >\n {hasError\n ? t(\"timer.error\")\n : formatTimeLocalized(elapsedTime, i18n.language)}\n </Typography>\n </Box>\n )\n}\n"],"names":["TimerSmallVariant","timerState","animationState","hasError","compact","className","t","i18n","useTranslation","theme","useTheme","elapsedTime","currentProgress","showErrorAnimation","showPauseAnimation","jsx","Box","Typography","formatTimeLocalized","jsxs"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("react/jsx-runtime"),x=require("mobx-react-lite"),t=require("react"),E=require("../../externalizeComponent.cjs"),b=require("./TimerDefaultVariant.cjs"),j=require("./TimerSmallVariant.cjs"),p=require("./useTimerAnimations.cjs"),V=require("./useTimerLogic.cjs"),c=E.externalizeComponent(x.observer(({onTimerReady:r,autoStart:f=!0,variant:T="default",compact:A=!1,className:i,hasError:e=!1})=>{const{animationState:n,triggerPauseAnimation:g,triggerErrorAnimation:q,clearErrorAnimation:S,setInitialAnimationState:o,cleanup:a}=p.useTimerAnimations(),{timerState:u,controls:s}=V.useTimerLogic({autoStart:f,hasError:e,onPauseAnimation:g,onErrorAnimation:q,onClearErrorAnimation:S});return t.useEffect(()=>{o()},[o]),t.useEffect(()=>{let m=!0;const d=setTimeout(()=>{m&&r(s)},0);return()=>{m=!1,clearTimeout(d)}},[r,s]),t.useEffect(()=>a,[a]),T==="small"?l.jsx(j.TimerSmallVariant,{timerState:u,animationState:n,hasError:e,compact:A,className:i}):l.jsx(b.TimerDefaultVariant,{timerState:u,animationState:n,hasError:e,className:i})}));exports.Timer=c;exports.default=c;
|
|
2
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../../src/components/Timer/index.tsx"],"sourcesContent":["import { observer } from \"mobx-react-lite\"\nimport { useEffect } from \"react\"\nimport { externalizeComponent } from \"../../externalizeComponent\"\nimport { TimerDefaultVariant } from \"./TimerDefaultVariant\"\nimport { TimerSmallVariant } from \"./TimerSmallVariant\"\nimport type { TimerProps } from \"./types\"\nimport { useTimerAnimations } from \"./useTimerAnimations\"\nimport { useTimerLogic } from \"./useTimerLogic\"\n\n/**\n * A simple count-up timer component with visual progress indication\n *\n * Features:\n * - Count-up timer that tracks elapsed time\n * - Visual progress gauge that cycles every minute\n * - Two display variants: large circular gauge (default) or small icon with text\n * - Full timer control: start, pause, resume, reset functionality\n * - Support for starting with elapsed time (resume mid-session)\n * - Error state support: pauses timer and shows error styling\n * - Smooth progress animations with spring physics\n * - Fully localized with i18next\n * - Material-UI theming integration\n */\nexport const Timer = externalizeComponent(\n observer(\n ({\n onTimerReady,\n autoStart = true,\n variant = \"default\",\n compact = false,\n className,\n hasError = false,\n }: TimerProps) => {\n // Initialize animation hooks\n const {\n animationState,\n triggerPauseAnimation,\n triggerErrorAnimation,\n clearErrorAnimation,\n setInitialAnimationState,\n cleanup,\n } = useTimerAnimations()\n\n // Initialize timer logic\n const { timerState, controls } = useTimerLogic({\n autoStart,\n hasError,\n onPauseAnimation: triggerPauseAnimation,\n onErrorAnimation: triggerErrorAnimation,\n onClearErrorAnimation: clearErrorAnimation,\n })\n\n // Set initial animation state\n useEffect(() => {\n setInitialAnimationState()\n }, [setInitialAnimationState])\n\n // Provide controls to parent component\n useEffect(() => {\n let isMounted = true\n const timeoutId = setTimeout(() => {\n if (isMounted) {\n onTimerReady(controls)\n }\n }, 0)\n\n return () => {\n isMounted = false\n clearTimeout(timeoutId)\n }\n }, [onTimerReady, controls])\n\n // Cleanup on unmount\n useEffect(() => {\n return cleanup\n }, [cleanup])\n\n // Render appropriate variant\n if (variant === \"small\") {\n return (\n <TimerSmallVariant\n timerState={timerState}\n animationState={animationState}\n hasError={hasError}\n compact={compact}\n className={className}\n />\n )\n }\n\n return (\n <TimerDefaultVariant\n timerState={timerState}\n animationState={animationState}\n hasError={hasError}\n className={className}\n />\n )\n },\n ),\n)\n\nexport default Timer\n"],"names":["Timer","externalizeComponent","observer","onTimerReady","autoStart","variant","compact","className","hasError","animationState","triggerPauseAnimation","triggerErrorAnimation","clearErrorAnimation","setInitialAnimationState","cleanup","useTimerAnimations","timerState","controls","useTimerLogic","useEffect","isMounted","timeoutId","jsx","TimerSmallVariant","TimerDefaultVariant"],"mappings":"gYAuBaA,EAAQC,EAAAA,qBACnBC,EAAAA,SACE,CAAC,CACC,aAAAC,EACA,UAAAC,EAAY,GACZ,QAAAC,EAAU,UACV,QAAAC,EAAU,GACV,UAAAC,EACA,SAAAC,EAAW,EAAA,IACK,CAEhB,KAAM,CACJ,eAAAC,EACA,sBAAAC,EACA,sBAAAC,EACA,oBAAAC,EACA,yBAAAC,EACA,QAAAC,CAAA,EACEC,qBAAA,EAGE,CAAE,WAAAC,EAAY,SAAAC,CAAA,EAAaC,gBAAc,CAC7C,UAAAd,EACA,SAAAI,EACA,iBAAkBE,EAClB,iBAAkBC,EAClB,sBAAuBC,CAAA,CACxB,EA4BD,OAzBAO,EAAAA,UAAU,IAAM,CACdN,EAAA,CACF,EAAG,CAACA,CAAwB,CAAC,EAG7BM,EAAAA,UAAU,IAAM,CACd,IAAIC,EAAY,GAChB,MAAMC,EAAY,WAAW,IAAM,CAC7BD,GACFjB,EAAac,CAAQ,CAEzB,EAAG,CAAC,EAEJ,MAAO,IAAM,CACXG,EAAY,GACZ,aAAaC,CAAS,CACxB,CACF,EAAG,CAAClB,EAAcc,CAAQ,CAAC,EAG3BE,EAAAA,UAAU,IACDL,EACN,CAACA,CAAO,CAAC,EAGRT,IAAY,QAEZiB,EAAAA,IAACC,EAAAA,kBAAA,CACC,WAAAP,EACA,eAAAP,EACA,SAAAD,EACA,QAAAF,EACA,UAAAC,CAAA,CAAA,EAMJe,EAAAA,IAACE,EAAAA,oBAAA,CACC,WAAAR,EACA,eAAAP,EACA,SAAAD,EACA,UAAAD,CAAA,CAAA,CAGN,CAAA,CAEJ"}
|