@photonviz/vue 0.1.0 → 0.1.1

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/index.d.ts CHANGED
@@ -48,7 +48,11 @@ declare const Line: vue.DefineComponent<vue.ExtractPropTypes<{
48
48
  default: undefined;
49
49
  };
50
50
  join: {
51
- type: PropType<"round" | "butt" | undefined>;
51
+ type: PropType<("round" | "miter" | "bevel" | "butt") | undefined>;
52
+ default: undefined;
53
+ };
54
+ miterLimit: {
55
+ type: PropType<number>;
52
56
  default: undefined;
53
57
  };
54
58
  decimate: {
@@ -85,7 +89,11 @@ declare const Line: vue.DefineComponent<vue.ExtractPropTypes<{
85
89
  default: undefined;
86
90
  };
87
91
  join: {
88
- type: PropType<"round" | "butt" | undefined>;
92
+ type: PropType<("round" | "miter" | "bevel" | "butt") | undefined>;
93
+ default: undefined;
94
+ };
95
+ miterLimit: {
96
+ type: PropType<number>;
89
97
  default: undefined;
90
98
  };
91
99
  decimate: {
@@ -94,11 +102,12 @@ declare const Line: vue.DefineComponent<vue.ExtractPropTypes<{
94
102
  };
95
103
  }>> & Readonly<{}>, {
96
104
  name: string;
97
- join: "round" | "butt" | undefined;
105
+ join: ("round" | "miter" | "bevel" | "butt") | undefined;
98
106
  color: string | _photonviz_core.Color | undefined;
99
107
  step: "before" | "after" | "center" | undefined;
100
108
  width: number;
101
109
  yAxis: string;
110
+ miterLimit: number;
102
111
  decimate: boolean;
103
112
  }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
104
113
  declare const Scatter: vue.DefineComponent<vue.ExtractPropTypes<{
package/dist/index.js CHANGED
@@ -73,12 +73,13 @@ var Line = defineComponent({
73
73
  yAxis: opt(),
74
74
  step: opt(),
75
75
  join: opt(),
76
+ miterLimit: opt(),
76
77
  decimate: opt()
77
78
  },
78
79
  setup(props) {
79
80
  useLayer(
80
- (p) => p.addLine({ x: props.x, y: props.y, color: props.color, width: props.width, name: props.name, yAxis: props.yAxis, step: props.step, join: props.join, decimate: props.decimate }),
81
- () => [props.color, props.width, props.name, props.yAxis, props.step, props.join, props.decimate],
81
+ (p) => p.addLine({ x: props.x, y: props.y, color: props.color, width: props.width, name: props.name, yAxis: props.yAxis, step: props.step, join: props.join, miterLimit: props.miterLimit, decimate: props.decimate }),
82
+ () => [props.color, props.width, props.name, props.yAxis, props.step, props.join, props.miterLimit, props.decimate],
82
83
  () => [props.x, props.y],
83
84
  (l) => l.setData(props.x, props.y)
84
85
  );
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import {\n Plot as CorePlot,\n type AreaOptions,\n type BarOptions,\n type Layer,\n type LineOptions,\n type PlotOptions,\n type ScatterOptions,\n type YAxisOptions,\n} from \"@photonviz/core\";\nimport {\n defineComponent,\n h,\n inject,\n markRaw,\n onMounted,\n onUnmounted,\n provide,\n ref,\n shallowRef,\n watch,\n type InjectionKey,\n type PropType,\n type Ref,\n} from \"vue\";\n\nconst PlotKey: InjectionKey<Ref<CorePlot | null>> = Symbol(\"photon-plot\");\n\nexport const Plot = defineComponent({\n name: \"PhotonPlot\",\n props: {\n options: { type: Object as PropType<PlotOptions>, default: undefined },\n },\n setup(props, { slots }) {\n const el = ref<HTMLDivElement | null>(null);\n const plot = shallowRef<CorePlot | null>(null);\n provide(PlotKey, plot);\n onMounted(() => {\n if (el.value) plot.value = markRaw(new CorePlot(el.value, props.options));\n });\n onUnmounted(() => plot.value?.destroy());\n return () =>\n h(\n \"div\",\n { ref: el, style: \"position:relative;width:100%;height:100%\" },\n plot.value && slots.default ? slots.default() : [],\n );\n },\n});\n\n/** Shared layer lifecycle: add on mount, recreate on structural change, setData on data change. */\nfunction useLayer<L extends Layer>(\n add: (p: CorePlot) => L,\n structural: () => unknown[],\n data: () => unknown[],\n update: (l: L, p: CorePlot) => void,\n): void {\n const plotRef = inject(PlotKey);\n if (!plotRef) throw new Error(\"Photon layer must be used inside <Plot>\");\n let layer: L | null = null;\n const create = () => {\n const p = plotRef.value;\n if (p) layer = markRaw(add(p)) as L;\n };\n const destroy = () => {\n if (layer && plotRef.value) plotRef.value.removeLayer(layer);\n layer = null;\n };\n onMounted(create);\n onUnmounted(destroy);\n watch(structural, () => {\n destroy();\n create();\n });\n watch(data, () => {\n if (layer && plotRef.value) {\n update(layer, plotRef.value);\n plotRef.value.render();\n }\n });\n}\n\nconst arr = () => ({ type: [Array, Object, Float64Array, Float32Array] as unknown as PropType<ArrayLike<number>>, required: true as const });\nconst opt = <T,>() => ({ type: [String, Number, Object, Array, Boolean, Float64Array, Float32Array] as unknown as PropType<T>, default: undefined });\n\nexport const Line = defineComponent({\n name: \"PhotonLine\",\n props: {\n x: arr(), y: arr(),\n color: opt<LineOptions[\"color\"]>(), width: opt<number>(), name: opt<string>(),\n yAxis: opt<string>(), step: opt<LineOptions[\"step\"]>(), join: opt<LineOptions[\"join\"]>(),\n decimate: opt<boolean>(),\n },\n setup(props) {\n useLayer(\n (p) => p.addLine({ x: props.x, y: props.y, color: props.color, width: props.width, name: props.name, yAxis: props.yAxis, step: props.step, join: props.join, decimate: props.decimate }),\n () => [props.color, props.width, props.name, props.yAxis, props.step, props.join, props.decimate],\n () => [props.x, props.y],\n (l) => l.setData(props.x, props.y),\n );\n return () => null;\n },\n});\n\nexport const Scatter = defineComponent({\n name: \"PhotonScatter\",\n props: {\n x: arr(), y: arr(),\n color: opt<ScatterOptions[\"color\"]>(), size: opt<number>(), name: opt<string>(),\n yAxis: opt<string>(), colorBy: opt<ScatterOptions[\"colorBy\"]>(),\n },\n setup(props) {\n useLayer(\n (p) => p.addScatter({ x: props.x, y: props.y, color: props.color, size: props.size, name: props.name, yAxis: props.yAxis, colorBy: props.colorBy }),\n () => [props.color, props.size, props.name, props.yAxis, props.colorBy],\n () => [props.x, props.y],\n (l) => l.setData(props.x, props.y),\n );\n return () => null;\n },\n});\n\nexport const Bar = defineComponent({\n name: \"PhotonBar\",\n props: {\n x: arr(), y: arr(),\n base: opt<BarOptions[\"base\"]>(), width: opt<number>(), offset: opt<number>(),\n color: opt<BarOptions[\"color\"]>(), name: opt<string>(), yAxis: opt<string>(),\n },\n setup(props) {\n useLayer(\n (p) => p.addBar({ x: props.x, y: props.y, base: props.base, width: props.width, offset: props.offset, color: props.color, name: props.name, yAxis: props.yAxis }),\n () => [props.width, props.offset, props.color, props.name, props.yAxis],\n () => [props.x, props.y, props.base],\n (l) => l.setData(props.x, props.y, props.base),\n );\n return () => null;\n },\n});\n\nexport const Area = defineComponent({\n name: \"PhotonArea\",\n props: {\n x: arr(), y: arr(),\n base: opt<AreaOptions[\"base\"]>(), color: opt<AreaOptions[\"color\"]>(),\n name: opt<string>(), yAxis: opt<string>(),\n },\n setup(props) {\n useLayer(\n (p) => p.addArea({ x: props.x, y: props.y, base: props.base, color: props.color, name: props.name, yAxis: props.yAxis }),\n () => [props.color, props.name, props.yAxis],\n () => [props.x, props.y, props.base],\n (l) => l.setData(props.x, props.y, props.base),\n );\n return () => null;\n },\n});\n\nexport const YAxis = defineComponent({\n name: \"PhotonYAxis\",\n props: {\n id: { type: String, required: true },\n side: opt<YAxisOptions[\"side\"]>(),\n color: opt<string>(),\n title: opt<string>(),\n domain: opt<YAxisOptions[\"domain\"]>(),\n type: opt<YAxisOptions[\"type\"]>(),\n },\n setup(props) {\n const plotRef = inject(PlotKey);\n if (!plotRef) throw new Error(\"<YAxis> must be used inside <Plot>\");\n onMounted(() => {\n plotRef.value?.addYAxis(props.id, { side: props.side, color: props.color, title: props.title, domain: props.domain, type: props.type });\n });\n return () => null;\n },\n});\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["import {\n Plot as CorePlot,\n type AreaOptions,\n type BarOptions,\n type Layer,\n type LineOptions,\n type PlotOptions,\n type ScatterOptions,\n type YAxisOptions,\n} from \"@photonviz/core\";\nimport {\n defineComponent,\n h,\n inject,\n markRaw,\n onMounted,\n onUnmounted,\n provide,\n ref,\n shallowRef,\n watch,\n type InjectionKey,\n type PropType,\n type Ref,\n} from \"vue\";\n\nconst PlotKey: InjectionKey<Ref<CorePlot | null>> = Symbol(\"photon-plot\");\n\nexport const Plot = defineComponent({\n name: \"PhotonPlot\",\n props: {\n options: { type: Object as PropType<PlotOptions>, default: undefined },\n },\n setup(props, { slots }) {\n const el = ref<HTMLDivElement | null>(null);\n const plot = shallowRef<CorePlot | null>(null);\n provide(PlotKey, plot);\n onMounted(() => {\n if (el.value) plot.value = markRaw(new CorePlot(el.value, props.options));\n });\n onUnmounted(() => plot.value?.destroy());\n return () =>\n h(\n \"div\",\n { ref: el, style: \"position:relative;width:100%;height:100%\" },\n plot.value && slots.default ? slots.default() : [],\n );\n },\n});\n\n/** Shared layer lifecycle: add on mount, recreate on structural change, setData on data change. */\nfunction useLayer<L extends Layer>(\n add: (p: CorePlot) => L,\n structural: () => unknown[],\n data: () => unknown[],\n update: (l: L, p: CorePlot) => void,\n): void {\n const plotRef = inject(PlotKey);\n if (!plotRef) throw new Error(\"Photon layer must be used inside <Plot>\");\n let layer: L | null = null;\n const create = () => {\n const p = plotRef.value;\n if (p) layer = markRaw(add(p)) as L;\n };\n const destroy = () => {\n if (layer && plotRef.value) plotRef.value.removeLayer(layer);\n layer = null;\n };\n onMounted(create);\n onUnmounted(destroy);\n watch(structural, () => {\n destroy();\n create();\n });\n watch(data, () => {\n if (layer && plotRef.value) {\n update(layer, plotRef.value);\n plotRef.value.render();\n }\n });\n}\n\nconst arr = () => ({ type: [Array, Object, Float64Array, Float32Array] as unknown as PropType<ArrayLike<number>>, required: true as const });\nconst opt = <T,>() => ({ type: [String, Number, Object, Array, Boolean, Float64Array, Float32Array] as unknown as PropType<T>, default: undefined });\n\nexport const Line = defineComponent({\n name: \"PhotonLine\",\n props: {\n x: arr(), y: arr(),\n color: opt<LineOptions[\"color\"]>(), width: opt<number>(), name: opt<string>(),\n yAxis: opt<string>(), step: opt<LineOptions[\"step\"]>(), join: opt<LineOptions[\"join\"]>(),\n miterLimit: opt<number>(), decimate: opt<boolean>(),\n },\n setup(props) {\n useLayer(\n (p) => p.addLine({ x: props.x, y: props.y, color: props.color, width: props.width, name: props.name, yAxis: props.yAxis, step: props.step, join: props.join, miterLimit: props.miterLimit, decimate: props.decimate }),\n () => [props.color, props.width, props.name, props.yAxis, props.step, props.join, props.miterLimit, props.decimate],\n () => [props.x, props.y],\n (l) => l.setData(props.x, props.y),\n );\n return () => null;\n },\n});\n\nexport const Scatter = defineComponent({\n name: \"PhotonScatter\",\n props: {\n x: arr(), y: arr(),\n color: opt<ScatterOptions[\"color\"]>(), size: opt<number>(), name: opt<string>(),\n yAxis: opt<string>(), colorBy: opt<ScatterOptions[\"colorBy\"]>(),\n },\n setup(props) {\n useLayer(\n (p) => p.addScatter({ x: props.x, y: props.y, color: props.color, size: props.size, name: props.name, yAxis: props.yAxis, colorBy: props.colorBy }),\n () => [props.color, props.size, props.name, props.yAxis, props.colorBy],\n () => [props.x, props.y],\n (l) => l.setData(props.x, props.y),\n );\n return () => null;\n },\n});\n\nexport const Bar = defineComponent({\n name: \"PhotonBar\",\n props: {\n x: arr(), y: arr(),\n base: opt<BarOptions[\"base\"]>(), width: opt<number>(), offset: opt<number>(),\n color: opt<BarOptions[\"color\"]>(), name: opt<string>(), yAxis: opt<string>(),\n },\n setup(props) {\n useLayer(\n (p) => p.addBar({ x: props.x, y: props.y, base: props.base, width: props.width, offset: props.offset, color: props.color, name: props.name, yAxis: props.yAxis }),\n () => [props.width, props.offset, props.color, props.name, props.yAxis],\n () => [props.x, props.y, props.base],\n (l) => l.setData(props.x, props.y, props.base),\n );\n return () => null;\n },\n});\n\nexport const Area = defineComponent({\n name: \"PhotonArea\",\n props: {\n x: arr(), y: arr(),\n base: opt<AreaOptions[\"base\"]>(), color: opt<AreaOptions[\"color\"]>(),\n name: opt<string>(), yAxis: opt<string>(),\n },\n setup(props) {\n useLayer(\n (p) => p.addArea({ x: props.x, y: props.y, base: props.base, color: props.color, name: props.name, yAxis: props.yAxis }),\n () => [props.color, props.name, props.yAxis],\n () => [props.x, props.y, props.base],\n (l) => l.setData(props.x, props.y, props.base),\n );\n return () => null;\n },\n});\n\nexport const YAxis = defineComponent({\n name: \"PhotonYAxis\",\n props: {\n id: { type: String, required: true },\n side: opt<YAxisOptions[\"side\"]>(),\n color: opt<string>(),\n title: opt<string>(),\n domain: opt<YAxisOptions[\"domain\"]>(),\n type: opt<YAxisOptions[\"type\"]>(),\n },\n setup(props) {\n const plotRef = inject(PlotKey);\n if (!plotRef) throw new Error(\"<YAxis> must be used inside <Plot>\");\n onMounted(() => {\n plotRef.value?.addYAxis(props.id, { side: props.side, color: props.color, title: props.title, domain: props.domain, type: props.type });\n });\n return () => null;\n },\n});\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@photonviz/vue",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Vue bindings for Photon — WebGL2 scientific plotting",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -17,7 +17,7 @@
17
17
  ],
18
18
  "sideEffects": false,
19
19
  "dependencies": {
20
- "@photonviz/core": "0.1.0"
20
+ "@photonviz/core": "0.1.1"
21
21
  },
22
22
  "peerDependencies": {
23
23
  "vue": ">=3.3"