@use-voltra/android 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -0
- package/build/cjs/VoltraModule.js +6 -0
- package/build/cjs/VoltraModule.js.map +1 -0
- package/build/cjs/client.js +34 -0
- package/build/cjs/client.js.map +1 -0
- package/build/cjs/components/VoltraView.js +48 -0
- package/build/cjs/components/VoltraView.js.map +1 -0
- package/build/cjs/components/VoltraWidgetPreview.js +28 -0
- package/build/cjs/components/VoltraWidgetPreview.js.map +1 -0
- package/build/cjs/events.js +35 -0
- package/build/cjs/events.js.map +1 -0
- package/build/cjs/index.js +39 -0
- package/build/cjs/index.js.map +1 -0
- package/build/cjs/jsx/AreaMark.js +10 -0
- package/build/cjs/jsx/AreaMark.js.map +1 -0
- package/build/cjs/jsx/BarMark.js +10 -0
- package/build/cjs/jsx/BarMark.js.map +1 -0
- package/build/cjs/jsx/Box.js +6 -0
- package/build/cjs/jsx/Box.js.map +1 -0
- package/build/cjs/jsx/Button.js +6 -0
- package/build/cjs/jsx/Button.js.map +1 -0
- package/build/cjs/jsx/Chart.js +116 -0
- package/build/cjs/jsx/Chart.js.map +1 -0
- package/build/cjs/jsx/CheckBox.js +6 -0
- package/build/cjs/jsx/CheckBox.js.map +1 -0
- package/build/cjs/jsx/CircleIconButton.js +14 -0
- package/build/cjs/jsx/CircleIconButton.js.map +1 -0
- package/build/cjs/jsx/CircularProgressIndicator.js +6 -0
- package/build/cjs/jsx/CircularProgressIndicator.js.map +1 -0
- package/build/cjs/jsx/Column.js +6 -0
- package/build/cjs/jsx/Column.js.map +1 -0
- package/build/cjs/jsx/FilledButton.js +14 -0
- package/build/cjs/jsx/FilledButton.js.map +1 -0
- package/build/cjs/jsx/Image.js +14 -0
- package/build/cjs/jsx/Image.js.map +1 -0
- package/build/cjs/jsx/LazyColumn.js +6 -0
- package/build/cjs/jsx/LazyColumn.js.map +1 -0
- package/build/cjs/jsx/LazyVerticalGrid.js +6 -0
- package/build/cjs/jsx/LazyVerticalGrid.js.map +1 -0
- package/build/cjs/jsx/LineMark.js +10 -0
- package/build/cjs/jsx/LineMark.js.map +1 -0
- package/build/cjs/jsx/LinearProgressIndicator.js +6 -0
- package/build/cjs/jsx/LinearProgressIndicator.js.map +1 -0
- package/build/cjs/jsx/OutlineButton.js +14 -0
- package/build/cjs/jsx/OutlineButton.js.map +1 -0
- package/build/cjs/jsx/PointMark.js +10 -0
- package/build/cjs/jsx/PointMark.js.map +1 -0
- package/build/cjs/jsx/RadioButton.js +6 -0
- package/build/cjs/jsx/RadioButton.js.map +1 -0
- package/build/cjs/jsx/Row.js +6 -0
- package/build/cjs/jsx/Row.js.map +1 -0
- package/build/cjs/jsx/RuleMark.js +10 -0
- package/build/cjs/jsx/RuleMark.js.map +1 -0
- package/build/cjs/jsx/Scaffold.js +6 -0
- package/build/cjs/jsx/Scaffold.js.map +1 -0
- package/build/cjs/jsx/SectorMark.js +10 -0
- package/build/cjs/jsx/SectorMark.js.map +1 -0
- package/build/cjs/jsx/Spacer.js +6 -0
- package/build/cjs/jsx/Spacer.js.map +1 -0
- package/build/cjs/jsx/SquareIconButton.js +14 -0
- package/build/cjs/jsx/SquareIconButton.js.map +1 -0
- package/build/cjs/jsx/Switch.js +6 -0
- package/build/cjs/jsx/Switch.js.map +1 -0
- package/build/cjs/jsx/Text.js +6 -0
- package/build/cjs/jsx/Text.js.map +1 -0
- package/build/cjs/jsx/TitleBar.js +14 -0
- package/build/cjs/jsx/TitleBar.js.map +1 -0
- package/build/cjs/jsx/baseProps.js +3 -0
- package/build/cjs/jsx/baseProps.js.map +1 -0
- package/build/cjs/jsx/chart-types.js +3 -0
- package/build/cjs/jsx/chart-types.js.map +1 -0
- package/build/cjs/jsx/createVoltraComponent.js +21 -0
- package/build/cjs/jsx/createVoltraComponent.js.map +1 -0
- package/build/cjs/jsx/index.js +18 -0
- package/build/cjs/jsx/index.js.map +1 -0
- package/build/cjs/jsx/primitives.js +45 -0
- package/build/cjs/jsx/primitives.js.map +1 -0
- package/build/cjs/jsx/props/Box.js +3 -0
- package/build/cjs/jsx/props/Box.js.map +1 -0
- package/build/cjs/jsx/props/Button.js +3 -0
- package/build/cjs/jsx/props/Button.js.map +1 -0
- package/build/cjs/jsx/props/CheckBox.js +3 -0
- package/build/cjs/jsx/props/CheckBox.js.map +1 -0
- package/build/cjs/jsx/props/CircleIconButton.js +3 -0
- package/build/cjs/jsx/props/CircleIconButton.js.map +1 -0
- package/build/cjs/jsx/props/CircularProgressIndicator.js +3 -0
- package/build/cjs/jsx/props/CircularProgressIndicator.js.map +1 -0
- package/build/cjs/jsx/props/Column.js +3 -0
- package/build/cjs/jsx/props/Column.js.map +1 -0
- package/build/cjs/jsx/props/FilledButton.js +3 -0
- package/build/cjs/jsx/props/FilledButton.js.map +1 -0
- package/build/cjs/jsx/props/Image.js +6 -0
- package/build/cjs/jsx/props/Image.js.map +1 -0
- package/build/cjs/jsx/props/LazyColumn.js +3 -0
- package/build/cjs/jsx/props/LazyColumn.js.map +1 -0
- package/build/cjs/jsx/props/LazyVerticalGrid.js +3 -0
- package/build/cjs/jsx/props/LazyVerticalGrid.js.map +1 -0
- package/build/cjs/jsx/props/LinearProgressIndicator.js +3 -0
- package/build/cjs/jsx/props/LinearProgressIndicator.js.map +1 -0
- package/build/cjs/jsx/props/OutlineButton.js +3 -0
- package/build/cjs/jsx/props/OutlineButton.js.map +1 -0
- package/build/cjs/jsx/props/RadioButton.js +3 -0
- package/build/cjs/jsx/props/RadioButton.js.map +1 -0
- package/build/cjs/jsx/props/Row.js +3 -0
- package/build/cjs/jsx/props/Row.js.map +1 -0
- package/build/cjs/jsx/props/Scaffold.js +3 -0
- package/build/cjs/jsx/props/Scaffold.js.map +1 -0
- package/build/cjs/jsx/props/Spacer.js +3 -0
- package/build/cjs/jsx/props/Spacer.js.map +1 -0
- package/build/cjs/jsx/props/SquareIconButton.js +3 -0
- package/build/cjs/jsx/props/SquareIconButton.js.map +1 -0
- package/build/cjs/jsx/props/Switch.js +3 -0
- package/build/cjs/jsx/props/Switch.js.map +1 -0
- package/build/cjs/jsx/props/Text.js +3 -0
- package/build/cjs/jsx/props/Text.js.map +1 -0
- package/build/cjs/jsx/props/TitleBar.js +3 -0
- package/build/cjs/jsx/props/TitleBar.js.map +1 -0
- package/build/cjs/live-update/api.js +215 -0
- package/build/cjs/live-update/api.js.map +1 -0
- package/build/cjs/live-update/renderer.js +46 -0
- package/build/cjs/live-update/renderer.js.map +1 -0
- package/build/cjs/live-update/types.js +3 -0
- package/build/cjs/live-update/types.js.map +1 -0
- package/build/cjs/package.json +3 -0
- package/build/cjs/payload/component-ids.js +84 -0
- package/build/cjs/payload/component-ids.js.map +1 -0
- package/build/cjs/preload.js +80 -0
- package/build/cjs/preload.js.map +1 -0
- package/build/cjs/renderer/index.js +8 -0
- package/build/cjs/renderer/index.js.map +1 -0
- package/build/cjs/renderer/renderer.js +18 -0
- package/build/cjs/renderer/renderer.js.map +1 -0
- package/build/cjs/server.js +8 -0
- package/build/cjs/server.js.map +1 -0
- package/build/cjs/styles/types.js +7 -0
- package/build/cjs/styles/types.js.map +1 -0
- package/build/cjs/types.js +3 -0
- package/build/cjs/types.js.map +1 -0
- package/build/cjs/utils/index.js +18 -0
- package/build/cjs/utils/index.js.map +1 -0
- package/build/cjs/utils/useUpdateOnHMR.js +27 -0
- package/build/cjs/utils/useUpdateOnHMR.js.map +1 -0
- package/build/cjs/widgets/api.js +155 -0
- package/build/cjs/widgets/api.js.map +1 -0
- package/build/cjs/widgets/index.js +12 -0
- package/build/cjs/widgets/index.js.map +1 -0
- package/build/cjs/widgets/renderer.js +56 -0
- package/build/cjs/widgets/renderer.js.map +1 -0
- package/build/cjs/widgets/server-credentials.js +31 -0
- package/build/cjs/widgets/server-credentials.js.map +1 -0
- package/build/cjs/widgets/types.js +3 -0
- package/build/cjs/widgets/types.js.map +1 -0
- package/build/esm/VoltraModule.js +4 -0
- package/build/esm/VoltraModule.js.map +1 -0
- package/build/esm/client.js +12 -0
- package/build/esm/client.js.map +1 -0
- package/build/esm/components/VoltraView.js +45 -0
- package/build/esm/components/VoltraView.js.map +1 -0
- package/build/esm/components/VoltraWidgetPreview.js +25 -0
- package/build/esm/components/VoltraWidgetPreview.js.map +1 -0
- package/build/esm/events.js +29 -0
- package/build/esm/events.js.map +1 -0
- package/build/esm/index.js +3 -0
- package/build/esm/index.js.map +1 -0
- package/build/esm/jsx/AreaMark.js +6 -0
- package/build/esm/jsx/AreaMark.js.map +1 -0
- package/build/esm/jsx/BarMark.js +6 -0
- package/build/esm/jsx/BarMark.js.map +1 -0
- package/build/esm/jsx/Box.js +3 -0
- package/build/esm/jsx/Box.js.map +1 -0
- package/build/esm/jsx/Button.js +3 -0
- package/build/esm/jsx/Button.js.map +1 -0
- package/build/esm/jsx/Chart.js +110 -0
- package/build/esm/jsx/Chart.js.map +1 -0
- package/build/esm/jsx/CheckBox.js +3 -0
- package/build/esm/jsx/CheckBox.js.map +1 -0
- package/build/esm/jsx/CircleIconButton.js +11 -0
- package/build/esm/jsx/CircleIconButton.js.map +1 -0
- package/build/esm/jsx/CircularProgressIndicator.js +3 -0
- package/build/esm/jsx/CircularProgressIndicator.js.map +1 -0
- package/build/esm/jsx/Column.js +3 -0
- package/build/esm/jsx/Column.js.map +1 -0
- package/build/esm/jsx/FilledButton.js +11 -0
- package/build/esm/jsx/FilledButton.js.map +1 -0
- package/build/esm/jsx/Image.js +11 -0
- package/build/esm/jsx/Image.js.map +1 -0
- package/build/esm/jsx/LazyColumn.js +3 -0
- package/build/esm/jsx/LazyColumn.js.map +1 -0
- package/build/esm/jsx/LazyVerticalGrid.js +3 -0
- package/build/esm/jsx/LazyVerticalGrid.js.map +1 -0
- package/build/esm/jsx/LineMark.js +6 -0
- package/build/esm/jsx/LineMark.js.map +1 -0
- package/build/esm/jsx/LinearProgressIndicator.js +3 -0
- package/build/esm/jsx/LinearProgressIndicator.js.map +1 -0
- package/build/esm/jsx/OutlineButton.js +11 -0
- package/build/esm/jsx/OutlineButton.js.map +1 -0
- package/build/esm/jsx/PointMark.js +6 -0
- package/build/esm/jsx/PointMark.js.map +1 -0
- package/build/esm/jsx/RadioButton.js +3 -0
- package/build/esm/jsx/RadioButton.js.map +1 -0
- package/build/esm/jsx/Row.js +3 -0
- package/build/esm/jsx/Row.js.map +1 -0
- package/build/esm/jsx/RuleMark.js +6 -0
- package/build/esm/jsx/RuleMark.js.map +1 -0
- package/build/esm/jsx/Scaffold.js +3 -0
- package/build/esm/jsx/Scaffold.js.map +1 -0
- package/build/esm/jsx/SectorMark.js +6 -0
- package/build/esm/jsx/SectorMark.js.map +1 -0
- package/build/esm/jsx/Spacer.js +3 -0
- package/build/esm/jsx/Spacer.js.map +1 -0
- package/build/esm/jsx/SquareIconButton.js +11 -0
- package/build/esm/jsx/SquareIconButton.js.map +1 -0
- package/build/esm/jsx/Switch.js +3 -0
- package/build/esm/jsx/Switch.js.map +1 -0
- package/build/esm/jsx/Text.js +3 -0
- package/build/esm/jsx/Text.js.map +1 -0
- package/build/esm/jsx/TitleBar.js +11 -0
- package/build/esm/jsx/TitleBar.js.map +1 -0
- package/build/esm/jsx/baseProps.js +2 -0
- package/build/esm/jsx/baseProps.js.map +1 -0
- package/build/esm/jsx/chart-types.js +2 -0
- package/build/esm/jsx/chart-types.js.map +1 -0
- package/build/esm/jsx/createVoltraComponent.js +16 -0
- package/build/esm/jsx/createVoltraComponent.js.map +1 -0
- package/build/esm/jsx/index.js +2 -0
- package/build/esm/jsx/index.js.map +1 -0
- package/build/esm/jsx/primitives.js +29 -0
- package/build/esm/jsx/primitives.js.map +1 -0
- package/build/esm/jsx/props/Box.js +2 -0
- package/build/esm/jsx/props/Box.js.map +1 -0
- package/build/esm/jsx/props/Button.js +2 -0
- package/build/esm/jsx/props/Button.js.map +1 -0
- package/build/esm/jsx/props/CheckBox.js +2 -0
- package/build/esm/jsx/props/CheckBox.js.map +1 -0
- package/build/esm/jsx/props/CircleIconButton.js +2 -0
- package/build/esm/jsx/props/CircleIconButton.js.map +1 -0
- package/build/esm/jsx/props/CircularProgressIndicator.js +2 -0
- package/build/esm/jsx/props/CircularProgressIndicator.js.map +1 -0
- package/build/esm/jsx/props/Column.js +2 -0
- package/build/esm/jsx/props/Column.js.map +1 -0
- package/build/esm/jsx/props/FilledButton.js +2 -0
- package/build/esm/jsx/props/FilledButton.js.map +1 -0
- package/build/esm/jsx/props/Image.js +5 -0
- package/build/esm/jsx/props/Image.js.map +1 -0
- package/build/esm/jsx/props/LazyColumn.js +2 -0
- package/build/esm/jsx/props/LazyColumn.js.map +1 -0
- package/build/esm/jsx/props/LazyVerticalGrid.js +2 -0
- package/build/esm/jsx/props/LazyVerticalGrid.js.map +1 -0
- package/build/esm/jsx/props/LinearProgressIndicator.js +2 -0
- package/build/esm/jsx/props/LinearProgressIndicator.js.map +1 -0
- package/build/esm/jsx/props/OutlineButton.js +2 -0
- package/build/esm/jsx/props/OutlineButton.js.map +1 -0
- package/build/esm/jsx/props/RadioButton.js +2 -0
- package/build/esm/jsx/props/RadioButton.js.map +1 -0
- package/build/esm/jsx/props/Row.js +2 -0
- package/build/esm/jsx/props/Row.js.map +1 -0
- package/build/esm/jsx/props/Scaffold.js +2 -0
- package/build/esm/jsx/props/Scaffold.js.map +1 -0
- package/build/esm/jsx/props/Spacer.js +2 -0
- package/build/esm/jsx/props/Spacer.js.map +1 -0
- package/build/esm/jsx/props/SquareIconButton.js +2 -0
- package/build/esm/jsx/props/SquareIconButton.js.map +1 -0
- package/build/esm/jsx/props/Switch.js +2 -0
- package/build/esm/jsx/props/Switch.js.map +1 -0
- package/build/esm/jsx/props/Text.js +2 -0
- package/build/esm/jsx/props/Text.js.map +1 -0
- package/build/esm/jsx/props/TitleBar.js +2 -0
- package/build/esm/jsx/props/TitleBar.js.map +1 -0
- package/build/esm/live-update/api.js +203 -0
- package/build/esm/live-update/api.js.map +1 -0
- package/build/esm/live-update/renderer.js +41 -0
- package/build/esm/live-update/renderer.js.map +1 -0
- package/build/esm/live-update/types.js +2 -0
- package/build/esm/live-update/types.js.map +1 -0
- package/build/esm/package.json +3 -0
- package/build/esm/payload/component-ids.js +79 -0
- package/build/esm/payload/component-ids.js.map +1 -0
- package/build/esm/preload.js +72 -0
- package/build/esm/preload.js.map +1 -0
- package/build/esm/renderer/index.js +2 -0
- package/build/esm/renderer/index.js.map +1 -0
- package/build/esm/renderer/renderer.js +13 -0
- package/build/esm/renderer/renderer.js.map +1 -0
- package/build/esm/server.js +3 -0
- package/build/esm/server.js.map +1 -0
- package/build/esm/styles/types.js +6 -0
- package/build/esm/styles/types.js.map +1 -0
- package/build/esm/types.js +2 -0
- package/build/esm/types.js.map +1 -0
- package/build/esm/utils/index.js +2 -0
- package/build/esm/utils/index.js.map +1 -0
- package/build/esm/utils/useUpdateOnHMR.js +23 -0
- package/build/esm/utils/useUpdateOnHMR.js.map +1 -0
- package/build/esm/widgets/api.js +143 -0
- package/build/esm/widgets/api.js.map +1 -0
- package/build/esm/widgets/index.js +3 -0
- package/build/esm/widgets/index.js.map +1 -0
- package/build/esm/widgets/renderer.js +51 -0
- package/build/esm/widgets/renderer.js.map +1 -0
- package/build/esm/widgets/server-credentials.js +24 -0
- package/build/esm/widgets/server-credentials.js.map +1 -0
- package/build/esm/widgets/types.js +2 -0
- package/build/esm/widgets/types.js.map +1 -0
- package/build/types/VoltraModule.d.ts +30 -0
- package/build/types/VoltraModule.d.ts.map +1 -0
- package/build/types/client.d.ts +9 -0
- package/build/types/client.d.ts.map +1 -0
- package/build/types/components/VoltraView.d.ts +29 -0
- package/build/types/components/VoltraView.d.ts.map +1 -0
- package/build/types/components/VoltraWidgetPreview.d.ts +21 -0
- package/build/types/components/VoltraWidgetPreview.d.ts.map +1 -0
- package/build/types/events.d.ts +49 -0
- package/build/types/events.d.ts.map +1 -0
- package/build/types/index.d.ts +15 -0
- package/build/types/index.d.ts.map +1 -0
- package/build/types/jsx/AreaMark.d.ts +14 -0
- package/build/types/jsx/AreaMark.d.ts.map +1 -0
- package/build/types/jsx/BarMark.d.ts +15 -0
- package/build/types/jsx/BarMark.d.ts.map +1 -0
- package/build/types/jsx/Box.d.ts +4 -0
- package/build/types/jsx/Box.d.ts.map +1 -0
- package/build/types/jsx/Button.d.ts +4 -0
- package/build/types/jsx/Button.d.ts.map +1 -0
- package/build/types/jsx/Chart.d.ts +16 -0
- package/build/types/jsx/Chart.d.ts.map +1 -0
- package/build/types/jsx/CheckBox.d.ts +4 -0
- package/build/types/jsx/CheckBox.d.ts.map +1 -0
- package/build/types/jsx/CircleIconButton.d.ts +4 -0
- package/build/types/jsx/CircleIconButton.d.ts.map +1 -0
- package/build/types/jsx/CircularProgressIndicator.d.ts +4 -0
- package/build/types/jsx/CircularProgressIndicator.d.ts.map +1 -0
- package/build/types/jsx/Column.d.ts +4 -0
- package/build/types/jsx/Column.d.ts.map +1 -0
- package/build/types/jsx/FilledButton.d.ts +4 -0
- package/build/types/jsx/FilledButton.d.ts.map +1 -0
- package/build/types/jsx/Image.d.ts +13 -0
- package/build/types/jsx/Image.d.ts.map +1 -0
- package/build/types/jsx/LazyColumn.d.ts +4 -0
- package/build/types/jsx/LazyColumn.d.ts.map +1 -0
- package/build/types/jsx/LazyVerticalGrid.d.ts +4 -0
- package/build/types/jsx/LazyVerticalGrid.d.ts.map +1 -0
- package/build/types/jsx/LineMark.d.ts +15 -0
- package/build/types/jsx/LineMark.d.ts.map +1 -0
- package/build/types/jsx/LinearProgressIndicator.d.ts +4 -0
- package/build/types/jsx/LinearProgressIndicator.d.ts.map +1 -0
- package/build/types/jsx/OutlineButton.d.ts +4 -0
- package/build/types/jsx/OutlineButton.d.ts.map +1 -0
- package/build/types/jsx/PointMark.d.ts +14 -0
- package/build/types/jsx/PointMark.d.ts.map +1 -0
- package/build/types/jsx/RadioButton.d.ts +4 -0
- package/build/types/jsx/RadioButton.d.ts.map +1 -0
- package/build/types/jsx/Row.d.ts +4 -0
- package/build/types/jsx/Row.d.ts.map +1 -0
- package/build/types/jsx/RuleMark.d.ts +13 -0
- package/build/types/jsx/RuleMark.d.ts.map +1 -0
- package/build/types/jsx/Scaffold.d.ts +4 -0
- package/build/types/jsx/Scaffold.d.ts.map +1 -0
- package/build/types/jsx/SectorMark.d.ts +15 -0
- package/build/types/jsx/SectorMark.d.ts.map +1 -0
- package/build/types/jsx/Spacer.d.ts +4 -0
- package/build/types/jsx/Spacer.d.ts.map +1 -0
- package/build/types/jsx/SquareIconButton.d.ts +4 -0
- package/build/types/jsx/SquareIconButton.d.ts.map +1 -0
- package/build/types/jsx/Switch.d.ts +4 -0
- package/build/types/jsx/Switch.d.ts.map +1 -0
- package/build/types/jsx/Text.d.ts +7 -0
- package/build/types/jsx/Text.d.ts.map +1 -0
- package/build/types/jsx/TitleBar.d.ts +4 -0
- package/build/types/jsx/TitleBar.d.ts.map +1 -0
- package/build/types/jsx/baseProps.d.ts +9 -0
- package/build/types/jsx/baseProps.d.ts.map +1 -0
- package/build/types/jsx/chart-types.d.ts +10 -0
- package/build/types/jsx/chart-types.d.ts.map +1 -0
- package/build/types/jsx/createVoltraComponent.d.ts +12 -0
- package/build/types/jsx/createVoltraComponent.d.ts.map +1 -0
- package/build/types/jsx/index.d.ts +2 -0
- package/build/types/jsx/index.d.ts.map +1 -0
- package/build/types/jsx/primitives.d.ts +29 -0
- package/build/types/jsx/primitives.d.ts.map +1 -0
- package/build/types/jsx/props/Box.d.ts +6 -0
- package/build/types/jsx/props/Box.d.ts.map +1 -0
- package/build/types/jsx/props/Button.d.ts +6 -0
- package/build/types/jsx/props/Button.d.ts.map +1 -0
- package/build/types/jsx/props/CheckBox.d.ts +17 -0
- package/build/types/jsx/props/CheckBox.d.ts.map +1 -0
- package/build/types/jsx/props/CircleIconButton.d.ts +15 -0
- package/build/types/jsx/props/CircleIconButton.d.ts.map +1 -0
- package/build/types/jsx/props/CircularProgressIndicator.d.ts +12 -0
- package/build/types/jsx/props/CircularProgressIndicator.d.ts.map +1 -0
- package/build/types/jsx/props/Column.d.ts +8 -0
- package/build/types/jsx/props/Column.d.ts.map +1 -0
- package/build/types/jsx/props/FilledButton.d.ts +17 -0
- package/build/types/jsx/props/FilledButton.d.ts.map +1 -0
- package/build/types/jsx/props/Image.d.ts +21 -0
- package/build/types/jsx/props/Image.d.ts.map +1 -0
- package/build/types/jsx/props/LazyColumn.d.ts +6 -0
- package/build/types/jsx/props/LazyColumn.d.ts.map +1 -0
- package/build/types/jsx/props/LazyVerticalGrid.d.ts +12 -0
- package/build/types/jsx/props/LazyVerticalGrid.d.ts.map +1 -0
- package/build/types/jsx/props/LinearProgressIndicator.d.ts +10 -0
- package/build/types/jsx/props/LinearProgressIndicator.d.ts.map +1 -0
- package/build/types/jsx/props/OutlineButton.d.ts +15 -0
- package/build/types/jsx/props/OutlineButton.d.ts.map +1 -0
- package/build/types/jsx/props/RadioButton.d.ts +19 -0
- package/build/types/jsx/props/RadioButton.d.ts.map +1 -0
- package/build/types/jsx/props/Row.d.ts +8 -0
- package/build/types/jsx/props/Row.d.ts.map +1 -0
- package/build/types/jsx/props/Scaffold.d.ts +8 -0
- package/build/types/jsx/props/Scaffold.d.ts.map +1 -0
- package/build/types/jsx/props/Spacer.d.ts +6 -0
- package/build/types/jsx/props/Spacer.d.ts.map +1 -0
- package/build/types/jsx/props/SquareIconButton.d.ts +15 -0
- package/build/types/jsx/props/SquareIconButton.d.ts.map +1 -0
- package/build/types/jsx/props/Switch.d.ts +21 -0
- package/build/types/jsx/props/Switch.d.ts.map +1 -0
- package/build/types/jsx/props/Text.d.ts +12 -0
- package/build/types/jsx/props/Text.d.ts.map +1 -0
- package/build/types/jsx/props/TitleBar.d.ts +15 -0
- package/build/types/jsx/props/TitleBar.d.ts.map +1 -0
- package/build/types/live-update/api.d.ts +126 -0
- package/build/types/live-update/api.d.ts.map +1 -0
- package/build/types/live-update/renderer.d.ts +11 -0
- package/build/types/live-update/renderer.d.ts.map +1 -0
- package/build/types/live-update/types.d.ts +100 -0
- package/build/types/live-update/types.d.ts.map +1 -0
- package/build/types/payload/component-ids.d.ts +20 -0
- package/build/types/payload/component-ids.d.ts.map +1 -0
- package/build/types/preload.d.ts +45 -0
- package/build/types/preload.d.ts.map +1 -0
- package/build/types/renderer/index.d.ts +2 -0
- package/build/types/renderer/index.d.ts.map +1 -0
- package/build/types/renderer/renderer.d.ts +12 -0
- package/build/types/renderer/renderer.d.ts.map +1 -0
- package/build/types/server.d.ts +3 -0
- package/build/types/server.d.ts.map +1 -0
- package/build/types/styles/types.d.ts +116 -0
- package/build/types/styles/types.d.ts.map +1 -0
- package/build/types/types.d.ts +2 -0
- package/build/types/types.d.ts.map +1 -0
- package/build/types/utils/index.d.ts +2 -0
- package/build/types/utils/index.d.ts.map +1 -0
- package/build/types/utils/useUpdateOnHMR.d.ts +9 -0
- package/build/types/utils/useUpdateOnHMR.d.ts.map +1 -0
- package/build/types/widgets/api.d.ts +131 -0
- package/build/types/widgets/api.d.ts.map +1 -0
- package/build/types/widgets/index.d.ts +3 -0
- package/build/types/widgets/index.d.ts.map +1 -0
- package/build/types/widgets/renderer.d.ts +22 -0
- package/build/types/widgets/renderer.d.ts.map +1 -0
- package/build/types/widgets/server-credentials.d.ts +18 -0
- package/build/types/widgets/server-credentials.d.ts.map +1 -0
- package/build/types/widgets/types.d.ts +58 -0
- package/build/types/widgets/types.d.ts.map +1 -0
- package/package.json +65 -0
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getActiveWidgets = exports.requestPinAndroidWidget = exports.clearAllAndroidWidgets = exports.clearAndroidWidget = exports.reloadAndroidWidgets = exports.updateAndroidWidget = void 0;
|
|
7
|
+
const VoltraModule_js_1 = __importDefault(require("../VoltraModule.js"));
|
|
8
|
+
const renderer_js_1 = require("./renderer.js");
|
|
9
|
+
/**
|
|
10
|
+
* Update an Android home screen widget with new content.
|
|
11
|
+
*
|
|
12
|
+
* The content will be stored in SharedPreferences and the widget
|
|
13
|
+
* will be updated to display the new content.
|
|
14
|
+
*
|
|
15
|
+
* @param widgetId - The widget identifier
|
|
16
|
+
* @param variants - An array of size variants with their breakpoints and content.
|
|
17
|
+
* Android will automatically select the best matching variant based on the
|
|
18
|
+
* actual widget dimensions.
|
|
19
|
+
* @param options - Optional settings like deep link URL
|
|
20
|
+
*
|
|
21
|
+
* @example Different content per size
|
|
22
|
+
* ```tsx
|
|
23
|
+
* import { VoltraAndroid, updateAndroidWidget } from 'voltra'
|
|
24
|
+
*
|
|
25
|
+
* await updateAndroidWidget('weather', [
|
|
26
|
+
* {
|
|
27
|
+
* size: { width: 150, height: 100 },
|
|
28
|
+
* content: <VoltraAndroid.Text fontSize={32}>72°F</VoltraAndroid.Text>
|
|
29
|
+
* },
|
|
30
|
+
* {
|
|
31
|
+
* size: { width: 250, height: 150 },
|
|
32
|
+
* content: (
|
|
33
|
+
* <VoltraAndroid.Row>
|
|
34
|
+
* <VoltraAndroid.Text fontSize={32}>72°F</VoltraAndroid.Text>
|
|
35
|
+
* <VoltraAndroid.Column>
|
|
36
|
+
* <VoltraAndroid.Text>Sunny</VoltraAndroid.Text>
|
|
37
|
+
* <VoltraAndroid.Text>High: 78° Low: 65°</VoltraAndroid.Text>
|
|
38
|
+
* </VoltraAndroid.Column>
|
|
39
|
+
* </VoltraAndroid.Row>
|
|
40
|
+
* )
|
|
41
|
+
* }
|
|
42
|
+
* ], { deepLinkUrl: '/weather' })
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
const updateAndroidWidget = async (widgetId, variants, options) => {
|
|
46
|
+
const payload = (0, renderer_js_1.renderAndroidWidgetToString)(variants);
|
|
47
|
+
return VoltraModule_js_1.default.updateAndroidWidget(widgetId, payload, {
|
|
48
|
+
deepLinkUrl: options?.deepLinkUrl,
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
exports.updateAndroidWidget = updateAndroidWidget;
|
|
52
|
+
/**
|
|
53
|
+
* Reload widget timelines to refresh their content.
|
|
54
|
+
*
|
|
55
|
+
* Use this after updating data that widgets depend on (e.g., after preloading
|
|
56
|
+
* new images) to force them to re-render.
|
|
57
|
+
*
|
|
58
|
+
* @param widgetIds - Optional array of widget IDs to reload. If omitted, reloads all widgets.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```typescript
|
|
62
|
+
* // Reload specific widgets
|
|
63
|
+
* await reloadAndroidWidgets(['weather', 'calendar'])
|
|
64
|
+
*
|
|
65
|
+
* // Reload all widgets
|
|
66
|
+
* await reloadAndroidWidgets()
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
const reloadAndroidWidgets = async (widgetIds) => {
|
|
70
|
+
return VoltraModule_js_1.default.reloadAndroidWidgets(widgetIds ?? null);
|
|
71
|
+
};
|
|
72
|
+
exports.reloadAndroidWidgets = reloadAndroidWidgets;
|
|
73
|
+
/**
|
|
74
|
+
* Clear a widget's stored data.
|
|
75
|
+
*
|
|
76
|
+
* This removes the JSON content and deep link URL for the specified widget,
|
|
77
|
+
* causing it to show its placeholder state.
|
|
78
|
+
*
|
|
79
|
+
* @param widgetId - The widget identifier to clear
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```typescript
|
|
83
|
+
* await clearAndroidWidget('weather')
|
|
84
|
+
* ```
|
|
85
|
+
*/
|
|
86
|
+
const clearAndroidWidget = async (widgetId) => {
|
|
87
|
+
return VoltraModule_js_1.default.clearAndroidWidget(widgetId);
|
|
88
|
+
};
|
|
89
|
+
exports.clearAndroidWidget = clearAndroidWidget;
|
|
90
|
+
/**
|
|
91
|
+
* Clear all widgets' stored data.
|
|
92
|
+
*
|
|
93
|
+
* This removes the JSON content and deep link URLs for all configured widgets,
|
|
94
|
+
* causing them to show their placeholder states.
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```typescript
|
|
98
|
+
* await clearAllAndroidWidgets()
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
const clearAllAndroidWidgets = async () => {
|
|
102
|
+
return VoltraModule_js_1.default.clearAllAndroidWidgets();
|
|
103
|
+
};
|
|
104
|
+
exports.clearAllAndroidWidgets = clearAllAndroidWidgets;
|
|
105
|
+
/**
|
|
106
|
+
* Request to pin a widget to the home screen.
|
|
107
|
+
*
|
|
108
|
+
* This will show the Android system pin widget dialog, allowing the user
|
|
109
|
+
* to add the widget to their home screen. Optionally, you can provide
|
|
110
|
+
* preview dimensions to show a preview of the widget in the pin dialog.
|
|
111
|
+
*
|
|
112
|
+
* See: https://developer.android.com/develop/ui/compose/glance/pin-in-app
|
|
113
|
+
*
|
|
114
|
+
* @param widgetId - The widget identifier to pin
|
|
115
|
+
* @param options - Optional settings for the pin request
|
|
116
|
+
* @param options.previewWidth - Optional preview width in dp (default: 245)
|
|
117
|
+
* @param options.previewHeight - Optional preview height in dp (default: 115)
|
|
118
|
+
* @returns Promise that resolves to true if the pin request was successful
|
|
119
|
+
*
|
|
120
|
+
* @example Basic usage
|
|
121
|
+
* ```typescript
|
|
122
|
+
* const success = await requestPinAndroidWidget('weather')
|
|
123
|
+
* if (success) {
|
|
124
|
+
* console.log('Widget pin request sent')
|
|
125
|
+
* }
|
|
126
|
+
* ```
|
|
127
|
+
*
|
|
128
|
+
* @example With preview dimensions
|
|
129
|
+
* ```typescript
|
|
130
|
+
* const success = await requestPinAndroidWidget('weather', {
|
|
131
|
+
* previewWidth: 245,
|
|
132
|
+
* previewHeight: 115
|
|
133
|
+
* })
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
136
|
+
const requestPinAndroidWidget = async (widgetId, options) => {
|
|
137
|
+
return VoltraModule_js_1.default.requestPinGlanceAppWidget(widgetId, options);
|
|
138
|
+
};
|
|
139
|
+
exports.requestPinAndroidWidget = requestPinAndroidWidget;
|
|
140
|
+
/**
|
|
141
|
+
* Fetches all active widget instances for the containing app on Android.
|
|
142
|
+
*
|
|
143
|
+
* @returns A promise that resolves to an array of active widget instances.
|
|
144
|
+
*
|
|
145
|
+
* @example
|
|
146
|
+
* ```typescript
|
|
147
|
+
* const widgets = await getActiveWidgets()
|
|
148
|
+
* console.log('Active widgets:', widgets)
|
|
149
|
+
* ```
|
|
150
|
+
*/
|
|
151
|
+
const getActiveWidgets = async () => {
|
|
152
|
+
return VoltraModule_js_1.default.getActiveWidgets();
|
|
153
|
+
};
|
|
154
|
+
exports.getActiveWidgets = getActiveWidgets;
|
|
155
|
+
//# sourceMappingURL=api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/widgets/api.ts"],"names":[],"mappings":";;;;;;AAAA,yEAA6C;AAC7C,+CAA2D;AAY3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACI,MAAM,mBAAmB,GAAG,KAAK,EACtC,QAAgB,EAChB,QAA+B,EAC/B,OAAoC,EACrB,EAAE;IACjB,MAAM,OAAO,GAAG,IAAA,yCAA2B,EAAC,QAAQ,CAAC,CAAA;IAErD,OAAO,yBAAY,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE;QACzD,WAAW,EAAE,OAAO,EAAE,WAAW;KAClC,CAAC,CAAA;AACJ,CAAC,CAAA;AAVY,QAAA,mBAAmB,uBAU/B;AAED;;;;;;;;;;;;;;;;GAgBG;AACI,MAAM,oBAAoB,GAAG,KAAK,EAAE,SAAoB,EAAiB,EAAE;IAChF,OAAO,yBAAY,CAAC,oBAAoB,CAAC,SAAS,IAAI,IAAI,CAAC,CAAA;AAC7D,CAAC,CAAA;AAFY,QAAA,oBAAoB,wBAEhC;AAED;;;;;;;;;;;;GAYG;AACI,MAAM,kBAAkB,GAAG,KAAK,EAAE,QAAgB,EAAiB,EAAE;IAC1E,OAAO,yBAAY,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;AAClD,CAAC,CAAA;AAFY,QAAA,kBAAkB,sBAE9B;AAED;;;;;;;;;;GAUG;AACI,MAAM,sBAAsB,GAAG,KAAK,IAAmB,EAAE;IAC9D,OAAO,yBAAY,CAAC,sBAAsB,EAAE,CAAA;AAC9C,CAAC,CAAA;AAFY,QAAA,sBAAsB,0BAElC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACI,MAAM,uBAAuB,GAAG,KAAK,EAC1C,QAAgB,EAChB,OAA2D,EACzC,EAAE;IACpB,OAAO,yBAAY,CAAC,yBAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;AAClE,CAAC,CAAA;AALY,QAAA,uBAAuB,2BAKnC;AAED;;;;;;;;;;GAUG;AACI,MAAM,gBAAgB,GAAG,KAAK,IAA2B,EAAE;IAChE,OAAO,yBAAY,CAAC,gBAAgB,EAAE,CAAA;AACxC,CAAC,CAAA;AAFY,QAAA,gBAAgB,oBAE5B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateAndroidWidget = exports.requestPinAndroidWidget = exports.reloadAndroidWidgets = exports.getActiveWidgets = exports.clearAndroidWidget = exports.clearAllAndroidWidgets = void 0;
|
|
4
|
+
// Android Widget API
|
|
5
|
+
var api_js_1 = require("./api.js");
|
|
6
|
+
Object.defineProperty(exports, "clearAllAndroidWidgets", { enumerable: true, get: function () { return api_js_1.clearAllAndroidWidgets; } });
|
|
7
|
+
Object.defineProperty(exports, "clearAndroidWidget", { enumerable: true, get: function () { return api_js_1.clearAndroidWidget; } });
|
|
8
|
+
Object.defineProperty(exports, "getActiveWidgets", { enumerable: true, get: function () { return api_js_1.getActiveWidgets; } });
|
|
9
|
+
Object.defineProperty(exports, "reloadAndroidWidgets", { enumerable: true, get: function () { return api_js_1.reloadAndroidWidgets; } });
|
|
10
|
+
Object.defineProperty(exports, "requestPinAndroidWidget", { enumerable: true, get: function () { return api_js_1.requestPinAndroidWidget; } });
|
|
11
|
+
Object.defineProperty(exports, "updateAndroidWidget", { enumerable: true, get: function () { return api_js_1.updateAndroidWidget; } });
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/widgets/index.ts"],"names":[],"mappings":";;;AAAA,qBAAqB;AACrB,mCAOiB;AANf,gHAAA,sBAAsB,OAAA;AACtB,4GAAA,kBAAkB,OAAA;AAClB,0GAAA,gBAAgB,OAAA;AAChB,8GAAA,oBAAoB,OAAA;AACpB,iHAAA,uBAAuB,OAAA;AACvB,6GAAA,mBAAmB,OAAA"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderAndroidWidgetToString = exports.renderAndroidWidgetToJson = void 0;
|
|
4
|
+
const component_ids_js_1 = require("../payload/component-ids.js");
|
|
5
|
+
const renderer_js_1 = require("../renderer/renderer.js");
|
|
6
|
+
/**
|
|
7
|
+
* Android component registry that uses Android component ID mappings
|
|
8
|
+
*/
|
|
9
|
+
const androidComponentRegistry = {
|
|
10
|
+
getComponentId: (name) => (0, component_ids_js_1.getAndroidComponentId)(name),
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Renders Android widget variants to JSON with size breakpoints.
|
|
14
|
+
*
|
|
15
|
+
* Output format:
|
|
16
|
+
* {
|
|
17
|
+
* "v": 1,
|
|
18
|
+
* "variants": {
|
|
19
|
+
* "150x100": { ... node tree ... },
|
|
20
|
+
* "150x200": { ... node tree ... },
|
|
21
|
+
* "215x100": { ... node tree ... }
|
|
22
|
+
* },
|
|
23
|
+
* "s": [...shared styles...],
|
|
24
|
+
* "e": [...shared elements...]
|
|
25
|
+
* }
|
|
26
|
+
*/
|
|
27
|
+
const renderAndroidWidgetToJson = (variants) => {
|
|
28
|
+
const renderer = (0, renderer_js_1.createVoltraRenderer)(androidComponentRegistry);
|
|
29
|
+
// Add each size variant with key format "WIDTHxHEIGHT"
|
|
30
|
+
for (const { size, content } of variants) {
|
|
31
|
+
const key = `${size.width}x${size.height}`;
|
|
32
|
+
renderer.addRootNode(key, content);
|
|
33
|
+
}
|
|
34
|
+
const rendered = renderer.render();
|
|
35
|
+
// Extract variant keys (everything except v, s, e which are metadata)
|
|
36
|
+
const variantsMap = {};
|
|
37
|
+
const metadataKeys = ['v', 's', 'e'];
|
|
38
|
+
for (const key of Object.keys(rendered)) {
|
|
39
|
+
if (!metadataKeys.includes(key)) {
|
|
40
|
+
variantsMap[key] = rendered[key];
|
|
41
|
+
delete rendered[key];
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
// Add variants as a nested object (expected by Kotlin parser)
|
|
45
|
+
rendered.variants = variantsMap;
|
|
46
|
+
return rendered;
|
|
47
|
+
};
|
|
48
|
+
exports.renderAndroidWidgetToJson = renderAndroidWidgetToJson;
|
|
49
|
+
/**
|
|
50
|
+
* Renders Android widget variants to a JSON string.
|
|
51
|
+
*/
|
|
52
|
+
const renderAndroidWidgetToString = (variants) => {
|
|
53
|
+
return JSON.stringify((0, exports.renderAndroidWidgetToJson)(variants));
|
|
54
|
+
};
|
|
55
|
+
exports.renderAndroidWidgetToString = renderAndroidWidgetToString;
|
|
56
|
+
//# sourceMappingURL=renderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../../src/widgets/renderer.ts"],"names":[],"mappings":";;;AAAA,kEAAmE;AACnE,yDAAiF;AAGjF;;GAEG;AACH,MAAM,wBAAwB,GAAsB;IAClD,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAA,wCAAqB,EAAC,IAAI,CAAC;CAC9D,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACI,MAAM,yBAAyB,GAAG,CAAC,QAA+B,EAAuB,EAAE;IAChG,MAAM,QAAQ,GAAG,IAAA,kCAAoB,EAAC,wBAAwB,CAAC,CAAA;IAE/D,uDAAuD;IACvD,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,QAAQ,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAA;QAC1C,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACpC,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAA;IAElC,sEAAsE;IACtE,MAAM,WAAW,GAAwB,EAAE,CAAA;IAC3C,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IAEpC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,WAAW,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;YAChC,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;IACH,CAAC;IAED,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,GAAG,WAAW,CAAA;IAE/B,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AA1BY,QAAA,yBAAyB,6BA0BrC;AAED;;GAEG;AACI,MAAM,2BAA2B,GAAG,CAAC,QAA+B,EAAU,EAAE;IACrF,OAAO,IAAI,CAAC,SAAS,CAAC,IAAA,iCAAyB,EAAC,QAAQ,CAAC,CAAC,CAAA;AAC5D,CAAC,CAAA;AAFY,QAAA,2BAA2B,+BAEvC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.setWidgetServerCredentials = setWidgetServerCredentials;
|
|
7
|
+
exports.clearWidgetServerCredentials = clearWidgetServerCredentials;
|
|
8
|
+
const VoltraModule_js_1 = __importDefault(require("../VoltraModule.js"));
|
|
9
|
+
/**
|
|
10
|
+
* Store server credentials for Android widget server-driven updates.
|
|
11
|
+
*
|
|
12
|
+
* Credentials are stored in DataStore, which is
|
|
13
|
+
* automatically accessible by the widget's WorkManager background worker.
|
|
14
|
+
*
|
|
15
|
+
* @param credentials - The server credentials to store
|
|
16
|
+
*/
|
|
17
|
+
async function setWidgetServerCredentials(credentials) {
|
|
18
|
+
if (!credentials.token) {
|
|
19
|
+
throw new Error('[Voltra] [Android] setWidgetServerCredentials: token is required');
|
|
20
|
+
}
|
|
21
|
+
return VoltraModule_js_1.default.setWidgetServerCredentials(credentials);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Clear stored server credentials for Android widget updates.
|
|
25
|
+
* All widgets are automatically reloaded after clearing credentials so they
|
|
26
|
+
* revert to their default/unauthenticated state.
|
|
27
|
+
*/
|
|
28
|
+
async function clearWidgetServerCredentials() {
|
|
29
|
+
return VoltraModule_js_1.default.clearWidgetServerCredentials();
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=server-credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-credentials.js","sourceRoot":"","sources":["../../../src/widgets/server-credentials.ts"],"names":[],"mappings":";;;;;AAcA,gEAKC;AAOD,oEAEC;AA3BD,yEAA6C;AAK7C;;;;;;;GAOG;AACI,KAAK,UAAU,0BAA0B,CAAC,WAAoC;IACnF,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;IACrF,CAAC;IACD,OAAO,yBAAY,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAA;AAC7D,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,4BAA4B;IAChD,OAAO,yBAAY,CAAC,4BAA4B,EAAE,CAAA;AACpD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/widgets/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VoltraModule.js","sourceRoot":"","sources":["../../src/VoltraModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAA;AA0B1C,MAAM,YAAY,GAAG,mBAAmB,CAA0B,cAAc,CAAC,CAAA;AAEjF,eAAe,YAAY,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// Android Live Update API and types
|
|
2
|
+
export { endAllAndroidLiveUpdates, isAndroidLiveUpdateActive, startAndroidLiveUpdate, stopAndroidLiveUpdate, updateAndroidLiveUpdate, useAndroidLiveUpdate, } from './live-update/api.js';
|
|
3
|
+
// Android Widget API and types
|
|
4
|
+
export { clearAllAndroidWidgets, clearAndroidWidget, getActiveWidgets, reloadAndroidWidgets, requestPinAndroidWidget, updateAndroidWidget, } from './widgets/api.js';
|
|
5
|
+
// Android Widget Server Credentials API
|
|
6
|
+
export { clearWidgetServerCredentials, setWidgetServerCredentials, } from './widgets/server-credentials.js';
|
|
7
|
+
// Preload API
|
|
8
|
+
export { clearPreloadedImages, preloadImages, reloadWidgets } from './preload.js';
|
|
9
|
+
// Android Preview Components
|
|
10
|
+
export { VoltraView } from './components/VoltraView.js';
|
|
11
|
+
export { VoltraWidgetPreview, } from './components/VoltraWidgetPreview.js';
|
|
12
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,sBAAsB,CAAA;AAW7B,+BAA+B;AAC/B,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,kBAAkB,CAAA;AASzB,wCAAwC;AACxC,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,GAE3B,MAAM,iCAAiC,CAAA;AAExC,cAAc;AACd,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAEjF,6BAA6B;AAC7B,OAAO,EAAE,UAAU,EAAwB,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAEL,mBAAmB,GAEpB,MAAM,qCAAqC,CAAA"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { requireNativeView } from 'expo';
|
|
3
|
+
import { useEffect, useMemo } from 'react';
|
|
4
|
+
import { addVoltraListener } from '../events.js';
|
|
5
|
+
import { androidComponentRegistry, createVoltraRenderer } from '../renderer/renderer.js';
|
|
6
|
+
const NativeVoltraView = requireNativeView('VoltraModule');
|
|
7
|
+
// Generate a unique ID for views that don't have one
|
|
8
|
+
const generateViewId = () => `voltra-view-android-${Date.now()}-${Math.random().toString(36).substring(2, 9)}`;
|
|
9
|
+
/**
|
|
10
|
+
* A React Native component that renders Voltra UI for Android using Jetpack Compose.
|
|
11
|
+
*/
|
|
12
|
+
export function VoltraView({ id, children, style, onInteraction }) {
|
|
13
|
+
// Generate a stable ID if not provided
|
|
14
|
+
const viewId = useMemo(() => id || generateViewId(), [id]);
|
|
15
|
+
const payload = useMemo(() => {
|
|
16
|
+
const renderer = createVoltraRenderer(androidComponentRegistry);
|
|
17
|
+
renderer.addRootNode('content', children);
|
|
18
|
+
const rendered = renderer.render();
|
|
19
|
+
// Move 'content' into 'variants' to match VoltraPayload structure
|
|
20
|
+
const node = rendered.content;
|
|
21
|
+
delete rendered.content;
|
|
22
|
+
rendered.variants = { content: node };
|
|
23
|
+
return JSON.stringify(rendered);
|
|
24
|
+
}, [children]);
|
|
25
|
+
// Subscribe to interaction events and filter by this view's ID
|
|
26
|
+
useEffect(() => {
|
|
27
|
+
if (!onInteraction)
|
|
28
|
+
return;
|
|
29
|
+
const subscription = addVoltraListener('interaction', (event) => {
|
|
30
|
+
// Only forward events from this view
|
|
31
|
+
if (event.source === viewId) {
|
|
32
|
+
onInteraction({
|
|
33
|
+
type: 'interaction',
|
|
34
|
+
source: event.source,
|
|
35
|
+
timestamp: event.timestamp,
|
|
36
|
+
identifier: event.identifier,
|
|
37
|
+
payload: event.payload,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
return () => subscription.remove();
|
|
42
|
+
}, [viewId, onInteraction]);
|
|
43
|
+
return _jsx(NativeVoltraView, { payload: payload, viewId: viewId, style: style });
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=VoltraView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VoltraView.js","sourceRoot":"","sources":["../../../src/components/VoltraView.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,MAAM,CAAA;AACxC,OAAc,EAAa,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAG5D,OAAO,EAAE,iBAAiB,EAA0B,MAAM,cAAc,CAAA;AACxE,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAExF,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAA;AAE1D,qDAAqD;AACrD,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,uBAAuB,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAA;AAwB9G;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAmB;IAChF,uCAAuC;IACvC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,cAAc,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAE1D,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,wBAAwB,CAAC,CAAA;QAC/D,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAA;QAElC,kEAAkE;QAClE,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAA;QAC7B,OAAO,QAAQ,CAAC,OAAO,CAAA;QACvB,QAAQ,CAAC,QAAQ,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAErC,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IACjC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,+DAA+D;IAC/D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa;YAAE,OAAM;QAE1B,MAAM,YAAY,GAAG,iBAAiB,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;YAC9D,qCAAqC;YACrC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC5B,aAAa,CAAC;oBACZ,IAAI,EAAE,aAAa;oBACnB,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;oBAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,CAAA;IACpC,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAA;IAE3B,OAAO,KAAC,gBAAgB,IAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAI,CAAA;AAC7E,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { VoltraView } from './VoltraView.js';
|
|
3
|
+
const WIDGET_DIMENSIONS = {
|
|
4
|
+
small: { width: 150, height: 100 },
|
|
5
|
+
mediumSquare: { width: 200, height: 200 },
|
|
6
|
+
mediumWide: { width: 250, height: 150 },
|
|
7
|
+
mediumTall: { width: 150, height: 250 },
|
|
8
|
+
large: { width: 300, height: 200 },
|
|
9
|
+
extraLarge: { width: 350, height: 300 },
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* A preview component that renders Voltra Android JSX content at specific dimensions.
|
|
13
|
+
*/
|
|
14
|
+
export function VoltraWidgetPreview({ family, style, children, ...voltraViewProps }) {
|
|
15
|
+
const dimensions = WIDGET_DIMENSIONS[family];
|
|
16
|
+
const previewStyle = [
|
|
17
|
+
{
|
|
18
|
+
width: dimensions.width,
|
|
19
|
+
height: dimensions.height,
|
|
20
|
+
},
|
|
21
|
+
style,
|
|
22
|
+
];
|
|
23
|
+
return (_jsx(VoltraView, { ...voltraViewProps, style: previewStyle, children: children }));
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=VoltraWidgetPreview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VoltraWidgetPreview.js","sourceRoot":"","sources":["../../../src/components/VoltraWidgetPreview.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,UAAU,EAAmB,MAAM,iBAAiB,CAAA;AAO7D,MAAM,iBAAiB,GAAmE;IACxF,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IAClC,YAAY,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IACzC,UAAU,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IACvC,UAAU,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IACvC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IAClC,UAAU,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;CACxC,CAAA;AAaD;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,eAAe,EAA4B;IAC3G,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,YAAY,GAAyB;QACzC;YACE,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B;QACD,KAAK;KACN,CAAA;IAED,OAAO,CACL,KAAC,UAAU,OAAK,eAAe,EAAE,KAAK,EAAE,YAAY,YACjD,QAAQ,GACE,CACd,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
import VoltraModule from './VoltraModule.js';
|
|
3
|
+
const noopSubscription = {
|
|
4
|
+
remove: () => { },
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Add a listener for Voltra events.
|
|
8
|
+
*
|
|
9
|
+
* Supported events:
|
|
10
|
+
* - `interaction`: User interactions with widgets (buttons, switches, checkboxes) (iOS only)
|
|
11
|
+
* - `stateChange`: Live Activity state changes (iOS only)
|
|
12
|
+
* - `activityTokenReceived`: Push token for Live Activity (iOS only)
|
|
13
|
+
* - `activityPushToStartTokenReceived`: Push-to-start token (iOS only)
|
|
14
|
+
*
|
|
15
|
+
* Note: On Android, interactions open the app directly (optionally via deep links)
|
|
16
|
+
* instead of emitting background events.
|
|
17
|
+
*
|
|
18
|
+
* @param event The event type to listen for
|
|
19
|
+
* @param listener Callback function to handle the event
|
|
20
|
+
* @returns EventSubscription with a remove() method to unsubscribe
|
|
21
|
+
*/
|
|
22
|
+
export function addVoltraListener(event, listener) {
|
|
23
|
+
if (Platform.OS !== 'ios') {
|
|
24
|
+
console.warn(`[Voltra] Event '${event}' is only supported on iOS. Returning no-op subscription.`);
|
|
25
|
+
return noopSubscription;
|
|
26
|
+
}
|
|
27
|
+
return VoltraModule.addListener(event, listener);
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAGvC,OAAO,YAAY,MAAM,mBAAmB,CAAA;AA6B5C,MAAM,gBAAgB,GAAsB;IAC1C,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;CACjB,CAAA;AASD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAC/B,KAAQ,EACR,QAA4C;IAE5C,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,mBAAmB,KAAK,2DAA2D,CAAC,CAAA;QACjG,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAED,OAAO,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;AAClD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,KAAK,aAAa,MAAM,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { createElement } from 'react';
|
|
2
|
+
import { VOLTRA_MARK_TAG } from './BarMark.js';
|
|
3
|
+
export const AreaMark = (props) => createElement('VoltraAreaMark', props);
|
|
4
|
+
AreaMark.displayName = 'AreaMark';
|
|
5
|
+
AreaMark[VOLTRA_MARK_TAG] = 'area';
|
|
6
|
+
//# sourceMappingURL=AreaMark.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AreaMark.js","sourceRoot":"","sources":["../../../src/jsx/AreaMark.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAU9C,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAE,EAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE,KAAY,CAAC,CAAA;AAC/F,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAA;AACjC,QAAQ,CAAC,eAAe,CAAC,GAAG,MAAe,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { createElement } from 'react';
|
|
2
|
+
export const VOLTRA_MARK_TAG = Symbol.for('VOLTRA_MARK_TAG');
|
|
3
|
+
export const BarMark = (props) => createElement('VoltraBarMark', props);
|
|
4
|
+
BarMark.displayName = 'BarMark';
|
|
5
|
+
BarMark[VOLTRA_MARK_TAG] = 'bar';
|
|
6
|
+
//# sourceMappingURL=BarMark.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BarMark.js","sourceRoot":"","sources":["../../../src/jsx/BarMark.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAIrC,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;AAU5D,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAmB,EAAE,EAAE,CAAC,aAAa,CAAC,eAAe,EAAE,KAAY,CAAC,CAAA;AAC5F,OAAO,CAAC,WAAW,GAAG,SAAS,CAAA;AAC/B,OAAO,CAAC,eAAe,CAAC,GAAG,KAAc,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Box.js","sourceRoot":"","sources":["../../../src/jsx/Box.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAIlE,MAAM,CAAC,MAAM,GAAG,GAAG,qBAAqB,CAAW,YAAY,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/jsx/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAIlE,MAAM,CAAC,MAAM,MAAM,GAAG,qBAAqB,CAAc,eAAe,CAAC,CAAA"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { VOLTRA_MARK_TAG } from './BarMark.js';
|
|
3
|
+
import { createVoltraComponent } from './createVoltraComponent.js';
|
|
4
|
+
const encodeDataPoints = (data) => data.map((pt) => (pt.series != null ? [pt.x, pt.y, pt.series] : [pt.x, pt.y]));
|
|
5
|
+
const encodeSectorPoints = (data) => data.map((pt) => [pt.value, pt.category]);
|
|
6
|
+
const encodeBarMark = (props) => {
|
|
7
|
+
const p = {};
|
|
8
|
+
if (props.color != null)
|
|
9
|
+
p.c = props.color;
|
|
10
|
+
if (props.stacking != null)
|
|
11
|
+
p.stk = props.stacking;
|
|
12
|
+
if (props.cornerRadius != null)
|
|
13
|
+
p.cr = props.cornerRadius;
|
|
14
|
+
if (props.width != null)
|
|
15
|
+
p.w = props.width;
|
|
16
|
+
return ['bar', encodeDataPoints(props.data), p];
|
|
17
|
+
};
|
|
18
|
+
const encodeLineMark = (props) => {
|
|
19
|
+
const p = {};
|
|
20
|
+
if (props.color != null)
|
|
21
|
+
p.c = props.color;
|
|
22
|
+
if (props.interpolation != null)
|
|
23
|
+
p.itp = props.interpolation;
|
|
24
|
+
if (props.lineWidth != null)
|
|
25
|
+
p.lw = props.lineWidth;
|
|
26
|
+
if (props.symbol != null)
|
|
27
|
+
p.sym = props.symbol;
|
|
28
|
+
return ['line', encodeDataPoints(props.data), p];
|
|
29
|
+
};
|
|
30
|
+
const encodeAreaMark = (props) => {
|
|
31
|
+
const p = {};
|
|
32
|
+
if (props.color != null)
|
|
33
|
+
p.c = props.color;
|
|
34
|
+
if (props.interpolation != null)
|
|
35
|
+
p.itp = props.interpolation;
|
|
36
|
+
if (props.stacking != null)
|
|
37
|
+
p.stk = props.stacking;
|
|
38
|
+
return ['area', encodeDataPoints(props.data), p];
|
|
39
|
+
};
|
|
40
|
+
const encodePointMark = (props) => {
|
|
41
|
+
const p = {};
|
|
42
|
+
if (props.color != null)
|
|
43
|
+
p.c = props.color;
|
|
44
|
+
if (props.symbol != null)
|
|
45
|
+
p.sym = props.symbol;
|
|
46
|
+
if (props.symbolSize != null)
|
|
47
|
+
p.syms = props.symbolSize;
|
|
48
|
+
return ['point', encodeDataPoints(props.data), p];
|
|
49
|
+
};
|
|
50
|
+
const encodeRuleMark = (props) => {
|
|
51
|
+
const p = {};
|
|
52
|
+
if (props.color != null)
|
|
53
|
+
p.c = props.color;
|
|
54
|
+
if (props.lineWidth != null)
|
|
55
|
+
p.lw = props.lineWidth;
|
|
56
|
+
if (props.xValue != null)
|
|
57
|
+
p.xv = props.xValue;
|
|
58
|
+
if (props.yValue != null)
|
|
59
|
+
p.yv = props.yValue;
|
|
60
|
+
return ['rule', null, p];
|
|
61
|
+
};
|
|
62
|
+
const encodeSectorMark = (props) => {
|
|
63
|
+
const p = {};
|
|
64
|
+
if (props.color != null)
|
|
65
|
+
p.c = props.color;
|
|
66
|
+
if (props.innerRadius != null)
|
|
67
|
+
p.ir = props.innerRadius;
|
|
68
|
+
if (props.outerRadius != null)
|
|
69
|
+
p.or = props.outerRadius;
|
|
70
|
+
if (props.angularInset != null)
|
|
71
|
+
p.agin = props.angularInset;
|
|
72
|
+
return ['sector', encodeSectorPoints(props.data), p];
|
|
73
|
+
};
|
|
74
|
+
const ENCODERS = {
|
|
75
|
+
bar: encodeBarMark,
|
|
76
|
+
line: encodeLineMark,
|
|
77
|
+
area: encodeAreaMark,
|
|
78
|
+
point: encodePointMark,
|
|
79
|
+
rule: encodeRuleMark,
|
|
80
|
+
sector: encodeSectorMark,
|
|
81
|
+
};
|
|
82
|
+
// ---- component ----
|
|
83
|
+
export const Chart = createVoltraComponent('AndroidChart', {
|
|
84
|
+
toJSON: ({ children, foregroundStyleScale, xAxisGridStyle, yAxisGridStyle, ...rest }) => {
|
|
85
|
+
const marks = [];
|
|
86
|
+
React.Children.forEach(children, (child) => {
|
|
87
|
+
if (!React.isValidElement(child))
|
|
88
|
+
return;
|
|
89
|
+
const type = child.type;
|
|
90
|
+
const markType = type[VOLTRA_MARK_TAG];
|
|
91
|
+
if (!markType)
|
|
92
|
+
return;
|
|
93
|
+
const encoder = ENCODERS[markType];
|
|
94
|
+
if (encoder)
|
|
95
|
+
marks.push(encoder(child.props));
|
|
96
|
+
});
|
|
97
|
+
const result = { ...rest };
|
|
98
|
+
if (marks.length > 0)
|
|
99
|
+
result.marks = JSON.stringify(marks);
|
|
100
|
+
if (foregroundStyleScale != null) {
|
|
101
|
+
result.foregroundStyleScale = JSON.stringify(Object.entries(foregroundStyleScale));
|
|
102
|
+
}
|
|
103
|
+
if (xAxisGridStyle?.visible === false)
|
|
104
|
+
result.xAxisGridVisible = false;
|
|
105
|
+
if (yAxisGridStyle?.visible === false)
|
|
106
|
+
result.yAxisGridVisible = false;
|
|
107
|
+
return result;
|
|
108
|
+
},
|
|
109
|
+
});
|
|
110
|
+
//# sourceMappingURL=Chart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Chart.js","sourceRoot":"","sources":["../../../src/jsx/Chart.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckBox.js","sourceRoot":"","sources":["../../../src/jsx/CheckBox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAIlE,MAAM,CAAC,MAAM,QAAQ,GAAG,qBAAqB,CAAgB,iBAAiB,CAAC,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { createVoltraComponent } from './createVoltraComponent.js';
|
|
2
|
+
export const CircleIconButton = createVoltraComponent('AndroidCircleIconButton', {
|
|
3
|
+
toJSON: (props) => {
|
|
4
|
+
const { icon, ...rest } = props;
|
|
5
|
+
return {
|
|
6
|
+
...rest,
|
|
7
|
+
...(icon ? { icon: JSON.stringify(icon) } : {}),
|
|
8
|
+
};
|
|
9
|
+
},
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=CircleIconButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CircleIconButton.js","sourceRoot":"","sources":["../../../src/jsx/CircleIconButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAIlE,MAAM,CAAC,MAAM,gBAAgB,GAAG,qBAAqB,CAAwB,yBAAyB,EAAE;IACtG,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;QAChB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;QAE/B,OAAO;YACL,GAAG,IAAI;YACP,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChD,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CircularProgressIndicator.js","sourceRoot":"","sources":["../../../src/jsx/CircularProgressIndicator.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAIlE,MAAM,CAAC,MAAM,yBAAyB,GAAG,qBAAqB,CAC5D,kCAAkC,CACnC,CAAA"}
|