@plasmicpkgs/rive 0.0.2 → 0.0.3
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 +11 -4
- package/dist/rive.cjs.development.js +28 -12
- package/dist/rive.cjs.development.js.map +1 -1
- package/dist/rive.cjs.production.min.js +1 -1
- package/dist/rive.cjs.production.min.js.map +1 -1
- package/dist/rive.esm.js +22 -8
- package/dist/rive.esm.js.map +1 -1
- package/package.json +5 -5
package/dist/index.d.ts
CHANGED
|
@@ -1,25 +1,32 @@
|
|
|
1
1
|
import registerComponent, { CodeComponentMeta } from "@plasmicapp/host/registerComponent";
|
|
2
2
|
import { RiveProps } from "@rive-app/react-canvas";
|
|
3
3
|
import React from "react";
|
|
4
|
-
declare type
|
|
4
|
+
export declare type RiveControlContextData = {
|
|
5
|
+
animationNames?: string[];
|
|
6
|
+
stateMachineNames?: string[];
|
|
7
|
+
};
|
|
8
|
+
export declare type RiveComponentProps = RiveProps & {
|
|
5
9
|
className: string;
|
|
6
10
|
autoplay: boolean;
|
|
7
11
|
studioAutoplay: boolean;
|
|
8
12
|
onStateChange?: (event: any) => void;
|
|
13
|
+
setControlContextData?: (ctxData: RiveControlContextData) => void;
|
|
9
14
|
};
|
|
10
|
-
interface RiveInputs {
|
|
15
|
+
export interface RiveInputs {
|
|
11
16
|
setBoolean(name: string, value: boolean): void;
|
|
12
17
|
setNumber(name: string, value: number): void;
|
|
13
18
|
fire(name: string): void;
|
|
19
|
+
play(animationName: string): void;
|
|
20
|
+
pause(animationName: string): void;
|
|
14
21
|
}
|
|
15
|
-
declare const RivePlayer: React.ForwardRefExoticComponent<RiveProps & {
|
|
22
|
+
export declare const RivePlayer: React.ForwardRefExoticComponent<RiveProps & {
|
|
16
23
|
className: string;
|
|
17
24
|
autoplay: boolean;
|
|
18
25
|
studioAutoplay: boolean;
|
|
19
26
|
onStateChange?: ((event: any) => void) | undefined;
|
|
27
|
+
setControlContextData?: ((ctxData: RiveControlContextData) => void) | undefined;
|
|
20
28
|
} & React.RefAttributes<RiveInputs>>;
|
|
21
29
|
export declare const riveMetaDescriptor: CodeComponentMeta<RiveComponentProps>;
|
|
22
30
|
export declare function registerPlasmicRive(loader?: {
|
|
23
31
|
registerComponent: typeof registerComponent;
|
|
24
32
|
}): void;
|
|
25
|
-
export default RivePlayer;
|
|
@@ -7,7 +7,8 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
|
|
|
7
7
|
var host = require('@plasmicapp/host');
|
|
8
8
|
var registerComponent = _interopDefault(require('@plasmicapp/host/registerComponent'));
|
|
9
9
|
var reactCanvas = require('@rive-app/react-canvas');
|
|
10
|
-
var React =
|
|
10
|
+
var React = require('react');
|
|
11
|
+
var React__default = _interopDefault(React);
|
|
11
12
|
|
|
12
13
|
function _objectWithoutPropertiesLoose(r, e) {
|
|
13
14
|
if (null == r) return {};
|
|
@@ -19,15 +20,16 @@ function _objectWithoutPropertiesLoose(r, e) {
|
|
|
19
20
|
return t;
|
|
20
21
|
}
|
|
21
22
|
|
|
22
|
-
var _excluded = ["layout", "className", "onStateChange", "stateMachines"];
|
|
23
|
-
var RivePlayer = /*#__PURE__*/
|
|
23
|
+
var _excluded = ["layout", "className", "onStateChange", "stateMachines", "setControlContextData"];
|
|
24
|
+
var RivePlayer = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
|
|
24
25
|
var layout = _ref.layout,
|
|
25
26
|
className = _ref.className,
|
|
26
27
|
_onStateChange = _ref.onStateChange,
|
|
27
28
|
stateMachines = _ref.stateMachines,
|
|
29
|
+
setControlContextData = _ref.setControlContextData,
|
|
28
30
|
props = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
29
31
|
var inEditor = host.usePlasmicCanvasContext();
|
|
30
|
-
var riveParams =
|
|
32
|
+
var riveParams = React__default.useMemo(function () {
|
|
31
33
|
var riveLayout = layout ? new reactCanvas.Layout({
|
|
32
34
|
fit: layout.fit,
|
|
33
35
|
alignment: layout.alignment,
|
|
@@ -53,7 +55,13 @@ var RivePlayer = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
53
55
|
var _useRive = reactCanvas.useRive(riveParams),
|
|
54
56
|
rive = _useRive.rive,
|
|
55
57
|
RiveComponent = _useRive.RiveComponent;
|
|
56
|
-
React.
|
|
58
|
+
React.useEffect(function () {
|
|
59
|
+
setControlContextData == null || setControlContextData({
|
|
60
|
+
animationNames: rive == null ? void 0 : rive.animationNames,
|
|
61
|
+
stateMachineNames: rive == null ? void 0 : rive.stateMachineNames
|
|
62
|
+
});
|
|
63
|
+
}, [rive, setControlContextData]);
|
|
64
|
+
React__default.useImperativeHandle(ref, function () {
|
|
57
65
|
function setInput(inputType, inputName, value, stateMachine) {
|
|
58
66
|
if (value === void 0) {
|
|
59
67
|
value = null;
|
|
@@ -98,10 +106,10 @@ var RivePlayer = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
98
106
|
};
|
|
99
107
|
}, [rive]);
|
|
100
108
|
// In Plasmic Studio, force a remount by changing the key when any relevant prop changes
|
|
101
|
-
var studioKey =
|
|
109
|
+
var studioKey = React__default.useMemo(function () {
|
|
102
110
|
return inEditor ? [props.src, props.artboard, props.animations, props.autoplay, props.studioAutoplay, JSON.stringify(layout), stateMachines, Date.now()].join("|") : undefined;
|
|
103
111
|
}, [inEditor, props.src, props.artboard, props.animations, props.autoplay, props.studioAutoplay, layout, stateMachines]);
|
|
104
|
-
return
|
|
112
|
+
return React__default.createElement(RiveComponent, {
|
|
105
113
|
className: className,
|
|
106
114
|
key: studioKey
|
|
107
115
|
});
|
|
@@ -120,10 +128,14 @@ var riveMetaDescriptor = {
|
|
|
120
128
|
description: "URL to the .riv file (exported from Rive)"
|
|
121
129
|
},
|
|
122
130
|
stateMachines: {
|
|
123
|
-
type: "
|
|
131
|
+
type: "choice",
|
|
132
|
+
multiSelect: true,
|
|
124
133
|
displayName: "State Machines",
|
|
125
134
|
description: "(optional) Name of state machine to load.",
|
|
126
|
-
advanced: true
|
|
135
|
+
advanced: true,
|
|
136
|
+
options: function options(_props, ctx) {
|
|
137
|
+
return (ctx == null ? void 0 : ctx.stateMachineNames) || [];
|
|
138
|
+
}
|
|
127
139
|
},
|
|
128
140
|
autoplay: {
|
|
129
141
|
type: "boolean",
|
|
@@ -189,10 +201,14 @@ var riveMetaDescriptor = {
|
|
|
189
201
|
}
|
|
190
202
|
},
|
|
191
203
|
animations: {
|
|
192
|
-
type: "
|
|
204
|
+
type: "choice",
|
|
205
|
+
multiSelect: true,
|
|
193
206
|
displayName: "Animations",
|
|
194
207
|
description: "(optional) Name or list of names of animations to play.",
|
|
195
|
-
advanced: true
|
|
208
|
+
advanced: true,
|
|
209
|
+
options: function options(_props, ctx) {
|
|
210
|
+
return (ctx == null ? void 0 : ctx.animationNames) || [];
|
|
211
|
+
}
|
|
196
212
|
},
|
|
197
213
|
onStateChange: {
|
|
198
214
|
type: "eventHandler",
|
|
@@ -280,7 +296,7 @@ function registerPlasmicRive(loader) {
|
|
|
280
296
|
}
|
|
281
297
|
}
|
|
282
298
|
|
|
283
|
-
exports.
|
|
299
|
+
exports.RivePlayer = RivePlayer;
|
|
284
300
|
exports.registerPlasmicRive = registerPlasmicRive;
|
|
285
301
|
exports.riveMetaDescriptor = riveMetaDescriptor;
|
|
286
302
|
//# sourceMappingURL=rive.cjs.development.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rive.cjs.development.js","sources":["../src/index.tsx"],"sourcesContent":["import { usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n CodeComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport {\n Layout,\n RiveProps,\n StateMachineInputType,\n useRive,\n} from \"@rive-app/react-canvas\";\nimport React from \"react\";\n\ntype RiveComponentProps = RiveProps & {\n className: string;\n autoplay: boolean;\n studioAutoplay: boolean;\n onStateChange?: (event: any) => void;\n};\n\ninterface RiveInputs {\n setBoolean(name: string, value: boolean): void;\n setNumber(name: string, value: number): void;\n fire(name: string): void;\n}\n\nconst RivePlayer = React.forwardRef<RiveInputs, RiveComponentProps>(\n ({ layout, className, onStateChange, stateMachines, ...props }, ref) => {\n const inEditor = usePlasmicCanvasContext();\n\n const riveParams = React.useMemo(() => {\n const riveLayout = layout\n ? new Layout({\n fit: layout.fit,\n alignment: layout.alignment,\n minX: layout.minX,\n minY: layout.minY,\n maxX: layout.maxX,\n maxY: layout.maxY,\n })\n : undefined;\n\n return {\n src: props.src,\n artboard: props.artboard,\n animations: props.animations,\n stateMachines,\n layout: riveLayout,\n autoplay: inEditor ? props.studioAutoplay : props.autoplay,\n onStateChange: (event: any) => {\n if (onStateChange) {\n onStateChange(event);\n }\n },\n };\n }, [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n inEditor,\n onStateChange,\n ]);\n\n const { rive, RiveComponent } = useRive(riveParams);\n\n React.useImperativeHandle(\n ref,\n () => {\n function setInput(\n inputType: StateMachineInputType,\n inputName: string,\n value: any = null,\n stateMachine: string | null = null\n ) {\n const inputs = rive?.stateMachineInputs(\n stateMachine || (stateMachines as string)\n );\n (inputs || []).forEach((i: any) => {\n if (i.type !== inputType) {\n console.warn(\n `PlasmicRive: Input type mismatch: expected ${inputType}, got ${i.type}`\n );\n }\n if (i.name === inputName) {\n switch (inputType) {\n case StateMachineInputType.Trigger:\n i.fire();\n break;\n case StateMachineInputType.Number:\n case StateMachineInputType.Boolean:\n i.value = value;\n break;\n }\n }\n });\n }\n\n return {\n setBoolean(name: string, value: boolean, stateMachine?: string) {\n setInput(StateMachineInputType.Boolean, name, value, stateMachine);\n },\n setNumber(name: string, value: number, stateMachine?: string) {\n setInput(StateMachineInputType.Number, name, value, stateMachine);\n },\n fire(name: string, stateMachine?: string) {\n setInput(StateMachineInputType.Trigger, name, null, stateMachine);\n },\n play(animationName: string) {\n rive?.play(animationName);\n },\n pause(animationName: string) {\n rive?.pause(animationName);\n },\n };\n },\n [rive]\n );\n\n // In Plasmic Studio, force a remount by changing the key when any relevant prop changes\n const studioKey = React.useMemo(\n () =>\n inEditor\n ? [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n JSON.stringify(layout),\n stateMachines,\n Date.now(), // ensures a new key on every render in studio\n ].join(\"|\")\n : undefined,\n [\n inEditor,\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n ]\n );\n\n return <RiveComponent className={className} key={studioKey} />;\n }\n);\n\nexport const riveMetaDescriptor: CodeComponentMeta<RiveComponentProps> = {\n name: \"rive\",\n displayName: \"Rive\",\n importName: \"RivePlayer\",\n importPath: \"@plasmicpkgs/rive\",\n description: \"Rive animation component\",\n\n props: {\n src: {\n type: \"string\",\n defaultValue: \"https://cdn.rive.app/animations/vehicles.riv\",\n displayName: \"Source URL\",\n description: \"URL to the .riv file (exported from Rive)\",\n },\n stateMachines: {\n type: \"string\",\n displayName: \"State Machines\",\n description: \"(optional) Name of state machine to load.\",\n advanced: true,\n },\n autoplay: {\n type: \"boolean\",\n displayName: \"Autoplay\",\n description: \"Should animation play automatically.\",\n defaultValue: true,\n advanced: true,\n },\n studioAutoplay: {\n type: \"boolean\",\n displayName: \"Studio Autoplay\",\n description: \"Should animation play automatically in Plasmic Studio.\",\n defaultValue: false,\n advanced: true,\n },\n artboard: {\n type: \"string\",\n displayName: \"Artboard\",\n description: \"(optional) Name of the artboard to use.\",\n advanced: true,\n },\n layout: {\n type: \"object\",\n displayName: \"Layout\",\n description:\n \"(optional) Layout object to define how animations are displayed on the canvas.\",\n nameFunc: (item: any) =>\n item ? `${item.fit} / ${item.alignment}` : undefined,\n advanced: true,\n fields: {\n fit: {\n type: \"choice\",\n displayName: \"Fit\",\n options: [\n \"cover\",\n \"contain\",\n \"fill\",\n \"fitWidth\",\n \"fitHeight\",\n \"none\",\n \"scaleDown\",\n ],\n description: \"How the animation should fit in the canvas.\",\n },\n alignment: {\n type: \"choice\",\n displayName: \"Alignment\",\n options: [\n \"center\",\n \"topLeft\",\n \"topCenter\",\n \"topRight\",\n \"centerLeft\",\n \"centerRight\",\n \"bottomLeft\",\n \"bottomCenter\",\n \"bottomRight\",\n ],\n description: \"How the animation should be aligned in the canvas.\",\n },\n minX: { type: \"number\", displayName: \"Min X\", advanced: true },\n minY: { type: \"number\", displayName: \"Min Y\", advanced: true },\n maxX: { type: \"number\", displayName: \"Max X\", advanced: true },\n maxY: { type: \"number\", displayName: \"Max Y\", advanced: true },\n },\n },\n animations: {\n type: \"string\",\n displayName: \"Animations\",\n description: \"(optional) Name or list of names of animations to play.\",\n advanced: true,\n },\n onStateChange: {\n type: \"eventHandler\",\n displayName: \"On State Change\",\n description: \"(optional) Callback when the state changes.\",\n advanced: true,\n argTypes: [\n {\n name: \"event\",\n type: \"object\",\n },\n ],\n },\n },\n defaultStyles: {\n minHeight: \"60vh\",\n width: \"stretch\",\n },\n refActions: {\n setBoolean: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"boolean\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n setNumber: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"number\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n fire: {\n description: \"Fire the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n play: {\n description: \"Play the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n pause: {\n description: \"Pause the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n },\n};\n\nexport function registerPlasmicRive(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n if (loader) {\n loader.registerComponent(RivePlayer, riveMetaDescriptor);\n } else {\n registerComponent(RivePlayer, riveMetaDescriptor);\n }\n}\n\nexport default RivePlayer;\n"],"names":["RivePlayer","React","forwardRef","_ref","ref","layout","className","onStateChange","stateMachines","props","_objectWithoutPropertiesLoose","_excluded","inEditor","usePlasmicCanvasContext","riveParams","useMemo","riveLayout","Layout","fit","alignment","minX","minY","maxX","maxY","undefined","src","artboard","animations","autoplay","studioAutoplay","event","_useRive","useRive","rive","RiveComponent","useImperativeHandle","setInput","inputType","inputName","value","stateMachine","inputs","stateMachineInputs","forEach","i","type","console","warn","name","StateMachineInputType","Trigger","fire","Number","Boolean","setBoolean","setNumber","play","animationName","pause","studioKey","JSON","stringify","Date","now","join","key","riveMetaDescriptor","displayName","importName","importPath","description","defaultValue","advanced","nameFunc","item","fields","options","argTypes","defaultStyles","minHeight","width","refActions","registerPlasmicRive","loader","registerComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rive.cjs.development.js","sources":["../src/index.tsx"],"sourcesContent":["import { usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n CodeComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport {\n Layout,\n RiveProps,\n StateMachineInputType,\n useRive,\n} from \"@rive-app/react-canvas\";\nimport React, { useEffect } from \"react\";\n\nexport type RiveControlContextData = {\n animationNames?: string[];\n stateMachineNames?: string[];\n};\n\nexport type RiveComponentProps = RiveProps & {\n className: string;\n autoplay: boolean;\n studioAutoplay: boolean;\n onStateChange?: (event: any) => void;\n setControlContextData?: (ctxData: RiveControlContextData) => void;\n};\n\nexport interface RiveInputs {\n setBoolean(name: string, value: boolean): void;\n setNumber(name: string, value: number): void;\n fire(name: string): void;\n play(animationName: string): void;\n pause(animationName: string): void;\n}\n\nexport const RivePlayer = React.forwardRef<RiveInputs, RiveComponentProps>(\n (\n {\n layout,\n className,\n onStateChange,\n stateMachines,\n setControlContextData,\n ...props\n },\n ref\n ) => {\n const inEditor = usePlasmicCanvasContext();\n\n const riveParams = React.useMemo(() => {\n const riveLayout = layout\n ? new Layout({\n fit: layout.fit,\n alignment: layout.alignment,\n minX: layout.minX,\n minY: layout.minY,\n maxX: layout.maxX,\n maxY: layout.maxY,\n })\n : undefined;\n\n return {\n src: props.src,\n artboard: props.artboard,\n animations: props.animations,\n stateMachines,\n layout: riveLayout,\n autoplay: inEditor ? props.studioAutoplay : props.autoplay,\n onStateChange: (event: any) => {\n if (onStateChange) {\n onStateChange(event);\n }\n },\n };\n }, [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n inEditor,\n onStateChange,\n ]);\n\n const { rive, RiveComponent } = useRive(riveParams);\n\n useEffect(() => {\n setControlContextData?.({\n animationNames: rive?.animationNames,\n stateMachineNames: rive?.stateMachineNames,\n });\n }, [rive, setControlContextData]);\n\n React.useImperativeHandle(\n ref,\n () => {\n function setInput(\n inputType: StateMachineInputType,\n inputName: string,\n value: any = null,\n stateMachine: string | null = null\n ) {\n const inputs = rive?.stateMachineInputs(\n stateMachine || (stateMachines as string)\n );\n (inputs || []).forEach((i: any) => {\n if (i.type !== inputType) {\n console.warn(\n `PlasmicRive: Input type mismatch: expected ${inputType}, got ${i.type}`\n );\n }\n if (i.name === inputName) {\n switch (inputType) {\n case StateMachineInputType.Trigger:\n i.fire();\n break;\n case StateMachineInputType.Number:\n case StateMachineInputType.Boolean:\n i.value = value;\n break;\n }\n }\n });\n }\n\n return {\n setBoolean(name: string, value: boolean, stateMachine?: string) {\n setInput(StateMachineInputType.Boolean, name, value, stateMachine);\n },\n setNumber(name: string, value: number, stateMachine?: string) {\n setInput(StateMachineInputType.Number, name, value, stateMachine);\n },\n fire(name: string, stateMachine?: string) {\n setInput(StateMachineInputType.Trigger, name, null, stateMachine);\n },\n play(animationName: string) {\n rive?.play(animationName);\n },\n pause(animationName: string) {\n rive?.pause(animationName);\n },\n };\n },\n [rive]\n );\n\n // In Plasmic Studio, force a remount by changing the key when any relevant prop changes\n const studioKey = React.useMemo(\n () =>\n inEditor\n ? [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n JSON.stringify(layout),\n stateMachines,\n Date.now(), // ensures a new key on every render in studio\n ].join(\"|\")\n : undefined,\n [\n inEditor,\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n ]\n );\n\n return <RiveComponent className={className} key={studioKey} />;\n }\n);\n\nexport const riveMetaDescriptor: CodeComponentMeta<RiveComponentProps> = {\n name: \"rive\",\n displayName: \"Rive\",\n importName: \"RivePlayer\",\n importPath: \"@plasmicpkgs/rive\",\n description: \"Rive animation component\",\n\n props: {\n src: {\n type: \"string\",\n defaultValue: \"https://cdn.rive.app/animations/vehicles.riv\",\n displayName: \"Source URL\",\n description: \"URL to the .riv file (exported from Rive)\",\n },\n stateMachines: {\n type: \"choice\",\n multiSelect: true,\n displayName: \"State Machines\",\n description: \"(optional) Name of state machine to load.\",\n advanced: true,\n options: (_props, ctx) => {\n return ctx?.stateMachineNames || [];\n },\n },\n autoplay: {\n type: \"boolean\",\n displayName: \"Autoplay\",\n description: \"Should animation play automatically.\",\n defaultValue: true,\n advanced: true,\n },\n studioAutoplay: {\n type: \"boolean\",\n displayName: \"Studio Autoplay\",\n description: \"Should animation play automatically in Plasmic Studio.\",\n defaultValue: false,\n advanced: true,\n },\n artboard: {\n type: \"string\",\n displayName: \"Artboard\",\n description: \"(optional) Name of the artboard to use.\",\n advanced: true,\n },\n layout: {\n type: \"object\",\n displayName: \"Layout\",\n description:\n \"(optional) Layout object to define how animations are displayed on the canvas.\",\n nameFunc: (item: any) =>\n item ? `${item.fit} / ${item.alignment}` : undefined,\n advanced: true,\n fields: {\n fit: {\n type: \"choice\",\n displayName: \"Fit\",\n options: [\n \"cover\",\n \"contain\",\n \"fill\",\n \"fitWidth\",\n \"fitHeight\",\n \"none\",\n \"scaleDown\",\n ],\n description: \"How the animation should fit in the canvas.\",\n },\n alignment: {\n type: \"choice\",\n displayName: \"Alignment\",\n options: [\n \"center\",\n \"topLeft\",\n \"topCenter\",\n \"topRight\",\n \"centerLeft\",\n \"centerRight\",\n \"bottomLeft\",\n \"bottomCenter\",\n \"bottomRight\",\n ],\n description: \"How the animation should be aligned in the canvas.\",\n },\n minX: { type: \"number\", displayName: \"Min X\", advanced: true },\n minY: { type: \"number\", displayName: \"Min Y\", advanced: true },\n maxX: { type: \"number\", displayName: \"Max X\", advanced: true },\n maxY: { type: \"number\", displayName: \"Max Y\", advanced: true },\n },\n },\n animations: {\n type: \"choice\",\n multiSelect: true,\n displayName: \"Animations\",\n description: \"(optional) Name or list of names of animations to play.\",\n advanced: true,\n options: (_props, ctx) => {\n return ctx?.animationNames || [];\n },\n },\n onStateChange: {\n type: \"eventHandler\",\n displayName: \"On State Change\",\n description: \"(optional) Callback when the state changes.\",\n advanced: true,\n argTypes: [\n {\n name: \"event\",\n type: \"object\",\n },\n ],\n },\n },\n defaultStyles: {\n minHeight: \"60vh\",\n width: \"stretch\",\n },\n refActions: {\n setBoolean: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"boolean\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n setNumber: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"number\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n fire: {\n description: \"Fire the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n play: {\n description: \"Play the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n pause: {\n description: \"Pause the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n },\n};\n\nexport function registerPlasmicRive(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n if (loader) {\n loader.registerComponent(RivePlayer, riveMetaDescriptor);\n } else {\n registerComponent(RivePlayer, riveMetaDescriptor);\n }\n}\n"],"names":["RivePlayer","React","forwardRef","_ref","ref","layout","className","onStateChange","stateMachines","setControlContextData","props","_objectWithoutPropertiesLoose","_excluded","inEditor","usePlasmicCanvasContext","riveParams","useMemo","riveLayout","Layout","fit","alignment","minX","minY","maxX","maxY","undefined","src","artboard","animations","autoplay","studioAutoplay","event","_useRive","useRive","rive","RiveComponent","useEffect","animationNames","stateMachineNames","useImperativeHandle","setInput","inputType","inputName","value","stateMachine","inputs","stateMachineInputs","forEach","i","type","console","warn","name","StateMachineInputType","Trigger","fire","Number","Boolean","setBoolean","setNumber","play","animationName","pause","studioKey","JSON","stringify","Date","now","join","key","riveMetaDescriptor","displayName","importName","importPath","description","defaultValue","multiSelect","advanced","options","_props","ctx","nameFunc","item","fields","argTypes","defaultStyles","minHeight","width","refActions","registerPlasmicRive","loader","registerComponent"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var a=require("@plasmicapp/host"),t=e(require("@plasmicapp/host/registerComponent")),n=require("@rive-app/react-canvas"),i=
|
|
1
|
+
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var a=require("@plasmicapp/host"),t=e(require("@plasmicapp/host/registerComponent")),n=require("@rive-app/react-canvas"),i=require("react"),o=e(i),s=["layout","className","onStateChange","stateMachines","setControlContextData"],p=o.forwardRef((function(e,t){var p=e.layout,r=e.className,l=e.onStateChange,m=e.stateMachines,c=e.setControlContextData,u=function(e,a){if(null==e)return{};var t={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==a.indexOf(n))continue;t[n]=e[n]}return t}(e,s),d=a.usePlasmicCanvasContext(),y=o.useMemo((function(){var e=p?new n.Layout({fit:p.fit,alignment:p.alignment,minX:p.minX,minY:p.minY,maxX:p.maxX,maxY:p.maxY}):void 0;return{src:u.src,artboard:u.artboard,animations:u.animations,stateMachines:m,layout:e,autoplay:d?u.studioAutoplay:u.autoplay,onStateChange:function(e){l&&l(e)}}}),[u.src,u.artboard,u.animations,u.autoplay,u.studioAutoplay,p,m,d,l]),h=n.useRive(y),f=h.rive,v=h.RiveComponent;i.useEffect((function(){null==c||c({animationNames:null==f?void 0:f.animationNames,stateMachineNames:null==f?void 0:f.stateMachineNames})}),[f,c]),o.useImperativeHandle(t,(function(){function e(e,a,t,i){void 0===t&&(t=null),void 0===i&&(i=null),((null==f?void 0:f.stateMachineInputs(i||m))||[]).forEach((function(i){if(i.type!==e&&console.warn("PlasmicRive: Input type mismatch: expected "+e+", got "+i.type),i.name===a)switch(e){case n.StateMachineInputType.Trigger:i.fire();break;case n.StateMachineInputType.Number:case n.StateMachineInputType.Boolean:i.value=t}}))}return{setBoolean:function(a,t,i){e(n.StateMachineInputType.Boolean,a,t,i)},setNumber:function(a,t,i){e(n.StateMachineInputType.Number,a,t,i)},fire:function(a,t){e(n.StateMachineInputType.Trigger,a,null,t)},play:function(e){null==f||f.play(e)},pause:function(e){null==f||f.pause(e)}}}),[f]);var N=o.useMemo((function(){return d?[u.src,u.artboard,u.animations,u.autoplay,u.studioAutoplay,JSON.stringify(p),m,Date.now()].join("|"):void 0}),[d,u.src,u.artboard,u.animations,u.autoplay,u.studioAutoplay,p,m]);return o.createElement(v,{className:r,key:N})})),r={name:"rive",displayName:"Rive",importName:"RivePlayer",importPath:"@plasmicpkgs/rive",description:"Rive animation component",props:{src:{type:"string",defaultValue:"https://cdn.rive.app/animations/vehicles.riv",displayName:"Source URL",description:"URL to the .riv file (exported from Rive)"},stateMachines:{type:"choice",multiSelect:!0,displayName:"State Machines",description:"(optional) Name of state machine to load.",advanced:!0,options:function(e,a){return(null==a?void 0:a.stateMachineNames)||[]}},autoplay:{type:"boolean",displayName:"Autoplay",description:"Should animation play automatically.",defaultValue:!0,advanced:!0},studioAutoplay:{type:"boolean",displayName:"Studio Autoplay",description:"Should animation play automatically in Plasmic Studio.",defaultValue:!1,advanced:!0},artboard:{type:"string",displayName:"Artboard",description:"(optional) Name of the artboard to use.",advanced:!0},layout:{type:"object",displayName:"Layout",description:"(optional) Layout object to define how animations are displayed on the canvas.",nameFunc:function(e){return e?e.fit+" / "+e.alignment:void 0},advanced:!0,fields:{fit:{type:"choice",displayName:"Fit",options:["cover","contain","fill","fitWidth","fitHeight","none","scaleDown"],description:"How the animation should fit in the canvas."},alignment:{type:"choice",displayName:"Alignment",options:["center","topLeft","topCenter","topRight","centerLeft","centerRight","bottomLeft","bottomCenter","bottomRight"],description:"How the animation should be aligned in the canvas."},minX:{type:"number",displayName:"Min X",advanced:!0},minY:{type:"number",displayName:"Min Y",advanced:!0},maxX:{type:"number",displayName:"Max X",advanced:!0},maxY:{type:"number",displayName:"Max Y",advanced:!0}}},animations:{type:"choice",multiSelect:!0,displayName:"Animations",description:"(optional) Name or list of names of animations to play.",advanced:!0,options:function(e,a){return(null==a?void 0:a.animationNames)||[]}},onStateChange:{type:"eventHandler",displayName:"On State Change",description:"(optional) Callback when the state changes.",advanced:!0,argTypes:[{name:"event",type:"object"}]}},defaultStyles:{minHeight:"60vh",width:"stretch"},refActions:{setBoolean:{description:"Set the Rive Input",argTypes:[{name:"name",type:"string",displayName:"Input Name"},{name:"value",type:"boolean",displayName:"Input Value"},{name:"stateMachine",type:"string",displayName:"State Machine Name"}]},setNumber:{description:"Set the Rive Input",argTypes:[{name:"name",type:"string",displayName:"Input Name"},{name:"value",type:"number",displayName:"Input Value"},{name:"stateMachine",type:"string",displayName:"State Machine Name"}]},fire:{description:"Fire the Rive Input",argTypes:[{name:"name",type:"string",displayName:"Input Name"},{name:"stateMachine",type:"string",displayName:"State Machine Name"}]},play:{description:"Play the animation",argTypes:[{name:"animationName",type:"string",displayName:"Animation Name"}]},pause:{description:"Pause the animation",argTypes:[{name:"animationName",type:"string",displayName:"Animation Name"}]}}};exports.RivePlayer=p,exports.registerPlasmicRive=function(e){e?e.registerComponent(p,r):t(p,r)},exports.riveMetaDescriptor=r;
|
|
2
2
|
//# sourceMappingURL=rive.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rive.cjs.production.min.js","sources":["../src/index.tsx"],"sourcesContent":["import { usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n CodeComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport {\n Layout,\n RiveProps,\n StateMachineInputType,\n useRive,\n} from \"@rive-app/react-canvas\";\nimport React from \"react\";\n\ntype RiveComponentProps = RiveProps & {\n className: string;\n autoplay: boolean;\n studioAutoplay: boolean;\n onStateChange?: (event: any) => void;\n};\n\ninterface RiveInputs {\n setBoolean(name: string, value: boolean): void;\n setNumber(name: string, value: number): void;\n fire(name: string): void;\n}\n\nconst RivePlayer = React.forwardRef<RiveInputs, RiveComponentProps>(\n ({ layout, className, onStateChange, stateMachines, ...props }, ref) => {\n const inEditor = usePlasmicCanvasContext();\n\n const riveParams = React.useMemo(() => {\n const riveLayout = layout\n ? new Layout({\n fit: layout.fit,\n alignment: layout.alignment,\n minX: layout.minX,\n minY: layout.minY,\n maxX: layout.maxX,\n maxY: layout.maxY,\n })\n : undefined;\n\n return {\n src: props.src,\n artboard: props.artboard,\n animations: props.animations,\n stateMachines,\n layout: riveLayout,\n autoplay: inEditor ? props.studioAutoplay : props.autoplay,\n onStateChange: (event: any) => {\n if (onStateChange) {\n onStateChange(event);\n }\n },\n };\n }, [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n inEditor,\n onStateChange,\n ]);\n\n const { rive, RiveComponent } = useRive(riveParams);\n\n React.useImperativeHandle(\n ref,\n () => {\n function setInput(\n inputType: StateMachineInputType,\n inputName: string,\n value: any = null,\n stateMachine: string | null = null\n ) {\n const inputs = rive?.stateMachineInputs(\n stateMachine || (stateMachines as string)\n );\n (inputs || []).forEach((i: any) => {\n if (i.type !== inputType) {\n console.warn(\n `PlasmicRive: Input type mismatch: expected ${inputType}, got ${i.type}`\n );\n }\n if (i.name === inputName) {\n switch (inputType) {\n case StateMachineInputType.Trigger:\n i.fire();\n break;\n case StateMachineInputType.Number:\n case StateMachineInputType.Boolean:\n i.value = value;\n break;\n }\n }\n });\n }\n\n return {\n setBoolean(name: string, value: boolean, stateMachine?: string) {\n setInput(StateMachineInputType.Boolean, name, value, stateMachine);\n },\n setNumber(name: string, value: number, stateMachine?: string) {\n setInput(StateMachineInputType.Number, name, value, stateMachine);\n },\n fire(name: string, stateMachine?: string) {\n setInput(StateMachineInputType.Trigger, name, null, stateMachine);\n },\n play(animationName: string) {\n rive?.play(animationName);\n },\n pause(animationName: string) {\n rive?.pause(animationName);\n },\n };\n },\n [rive]\n );\n\n // In Plasmic Studio, force a remount by changing the key when any relevant prop changes\n const studioKey = React.useMemo(\n () =>\n inEditor\n ? [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n JSON.stringify(layout),\n stateMachines,\n Date.now(), // ensures a new key on every render in studio\n ].join(\"|\")\n : undefined,\n [\n inEditor,\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n ]\n );\n\n return <RiveComponent className={className} key={studioKey} />;\n }\n);\n\nexport const riveMetaDescriptor: CodeComponentMeta<RiveComponentProps> = {\n name: \"rive\",\n displayName: \"Rive\",\n importName: \"RivePlayer\",\n importPath: \"@plasmicpkgs/rive\",\n description: \"Rive animation component\",\n\n props: {\n src: {\n type: \"string\",\n defaultValue: \"https://cdn.rive.app/animations/vehicles.riv\",\n displayName: \"Source URL\",\n description: \"URL to the .riv file (exported from Rive)\",\n },\n stateMachines: {\n type: \"string\",\n displayName: \"State Machines\",\n description: \"(optional) Name of state machine to load.\",\n advanced: true,\n },\n autoplay: {\n type: \"boolean\",\n displayName: \"Autoplay\",\n description: \"Should animation play automatically.\",\n defaultValue: true,\n advanced: true,\n },\n studioAutoplay: {\n type: \"boolean\",\n displayName: \"Studio Autoplay\",\n description: \"Should animation play automatically in Plasmic Studio.\",\n defaultValue: false,\n advanced: true,\n },\n artboard: {\n type: \"string\",\n displayName: \"Artboard\",\n description: \"(optional) Name of the artboard to use.\",\n advanced: true,\n },\n layout: {\n type: \"object\",\n displayName: \"Layout\",\n description:\n \"(optional) Layout object to define how animations are displayed on the canvas.\",\n nameFunc: (item: any) =>\n item ? `${item.fit} / ${item.alignment}` : undefined,\n advanced: true,\n fields: {\n fit: {\n type: \"choice\",\n displayName: \"Fit\",\n options: [\n \"cover\",\n \"contain\",\n \"fill\",\n \"fitWidth\",\n \"fitHeight\",\n \"none\",\n \"scaleDown\",\n ],\n description: \"How the animation should fit in the canvas.\",\n },\n alignment: {\n type: \"choice\",\n displayName: \"Alignment\",\n options: [\n \"center\",\n \"topLeft\",\n \"topCenter\",\n \"topRight\",\n \"centerLeft\",\n \"centerRight\",\n \"bottomLeft\",\n \"bottomCenter\",\n \"bottomRight\",\n ],\n description: \"How the animation should be aligned in the canvas.\",\n },\n minX: { type: \"number\", displayName: \"Min X\", advanced: true },\n minY: { type: \"number\", displayName: \"Min Y\", advanced: true },\n maxX: { type: \"number\", displayName: \"Max X\", advanced: true },\n maxY: { type: \"number\", displayName: \"Max Y\", advanced: true },\n },\n },\n animations: {\n type: \"string\",\n displayName: \"Animations\",\n description: \"(optional) Name or list of names of animations to play.\",\n advanced: true,\n },\n onStateChange: {\n type: \"eventHandler\",\n displayName: \"On State Change\",\n description: \"(optional) Callback when the state changes.\",\n advanced: true,\n argTypes: [\n {\n name: \"event\",\n type: \"object\",\n },\n ],\n },\n },\n defaultStyles: {\n minHeight: \"60vh\",\n width: \"stretch\",\n },\n refActions: {\n setBoolean: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"boolean\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n setNumber: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"number\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n fire: {\n description: \"Fire the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n play: {\n description: \"Play the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n pause: {\n description: \"Pause the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n },\n};\n\nexport function registerPlasmicRive(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n if (loader) {\n loader.registerComponent(RivePlayer, riveMetaDescriptor);\n } else {\n registerComponent(RivePlayer, riveMetaDescriptor);\n }\n}\n\nexport default RivePlayer;\n"],"names":["RivePlayer","React","forwardRef","_ref","ref","layout","className","onStateChange","stateMachines","props","_objectWithoutPropertiesLoose","_excluded","inEditor","usePlasmicCanvasContext","riveParams","useMemo","riveLayout","Layout","fit","alignment","minX","minY","maxX","maxY","undefined","src","artboard","animations","autoplay","studioAutoplay","event","_useRive","useRive","rive","RiveComponent","useImperativeHandle","setInput","inputType","inputName","value","stateMachine","stateMachineInputs","forEach","i","type","console","warn","name","StateMachineInputType","Trigger","fire","Number","Boolean","setBoolean","setNumber","play","animationName","pause","studioKey","JSON","stringify","Date","now","join","key","riveMetaDescriptor","displayName","importName","importPath","description","defaultValue","advanced","nameFunc","item","fields","options","argTypes","defaultStyles","minHeight","width","refActions","loader","registerComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rive.cjs.production.min.js","sources":["../src/index.tsx"],"sourcesContent":["import { usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n CodeComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport {\n Layout,\n RiveProps,\n StateMachineInputType,\n useRive,\n} from \"@rive-app/react-canvas\";\nimport React, { useEffect } from \"react\";\n\nexport type RiveControlContextData = {\n animationNames?: string[];\n stateMachineNames?: string[];\n};\n\nexport type RiveComponentProps = RiveProps & {\n className: string;\n autoplay: boolean;\n studioAutoplay: boolean;\n onStateChange?: (event: any) => void;\n setControlContextData?: (ctxData: RiveControlContextData) => void;\n};\n\nexport interface RiveInputs {\n setBoolean(name: string, value: boolean): void;\n setNumber(name: string, value: number): void;\n fire(name: string): void;\n play(animationName: string): void;\n pause(animationName: string): void;\n}\n\nexport const RivePlayer = React.forwardRef<RiveInputs, RiveComponentProps>(\n (\n {\n layout,\n className,\n onStateChange,\n stateMachines,\n setControlContextData,\n ...props\n },\n ref\n ) => {\n const inEditor = usePlasmicCanvasContext();\n\n const riveParams = React.useMemo(() => {\n const riveLayout = layout\n ? new Layout({\n fit: layout.fit,\n alignment: layout.alignment,\n minX: layout.minX,\n minY: layout.minY,\n maxX: layout.maxX,\n maxY: layout.maxY,\n })\n : undefined;\n\n return {\n src: props.src,\n artboard: props.artboard,\n animations: props.animations,\n stateMachines,\n layout: riveLayout,\n autoplay: inEditor ? props.studioAutoplay : props.autoplay,\n onStateChange: (event: any) => {\n if (onStateChange) {\n onStateChange(event);\n }\n },\n };\n }, [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n inEditor,\n onStateChange,\n ]);\n\n const { rive, RiveComponent } = useRive(riveParams);\n\n useEffect(() => {\n setControlContextData?.({\n animationNames: rive?.animationNames,\n stateMachineNames: rive?.stateMachineNames,\n });\n }, [rive, setControlContextData]);\n\n React.useImperativeHandle(\n ref,\n () => {\n function setInput(\n inputType: StateMachineInputType,\n inputName: string,\n value: any = null,\n stateMachine: string | null = null\n ) {\n const inputs = rive?.stateMachineInputs(\n stateMachine || (stateMachines as string)\n );\n (inputs || []).forEach((i: any) => {\n if (i.type !== inputType) {\n console.warn(\n `PlasmicRive: Input type mismatch: expected ${inputType}, got ${i.type}`\n );\n }\n if (i.name === inputName) {\n switch (inputType) {\n case StateMachineInputType.Trigger:\n i.fire();\n break;\n case StateMachineInputType.Number:\n case StateMachineInputType.Boolean:\n i.value = value;\n break;\n }\n }\n });\n }\n\n return {\n setBoolean(name: string, value: boolean, stateMachine?: string) {\n setInput(StateMachineInputType.Boolean, name, value, stateMachine);\n },\n setNumber(name: string, value: number, stateMachine?: string) {\n setInput(StateMachineInputType.Number, name, value, stateMachine);\n },\n fire(name: string, stateMachine?: string) {\n setInput(StateMachineInputType.Trigger, name, null, stateMachine);\n },\n play(animationName: string) {\n rive?.play(animationName);\n },\n pause(animationName: string) {\n rive?.pause(animationName);\n },\n };\n },\n [rive]\n );\n\n // In Plasmic Studio, force a remount by changing the key when any relevant prop changes\n const studioKey = React.useMemo(\n () =>\n inEditor\n ? [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n JSON.stringify(layout),\n stateMachines,\n Date.now(), // ensures a new key on every render in studio\n ].join(\"|\")\n : undefined,\n [\n inEditor,\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n ]\n );\n\n return <RiveComponent className={className} key={studioKey} />;\n }\n);\n\nexport const riveMetaDescriptor: CodeComponentMeta<RiveComponentProps> = {\n name: \"rive\",\n displayName: \"Rive\",\n importName: \"RivePlayer\",\n importPath: \"@plasmicpkgs/rive\",\n description: \"Rive animation component\",\n\n props: {\n src: {\n type: \"string\",\n defaultValue: \"https://cdn.rive.app/animations/vehicles.riv\",\n displayName: \"Source URL\",\n description: \"URL to the .riv file (exported from Rive)\",\n },\n stateMachines: {\n type: \"choice\",\n multiSelect: true,\n displayName: \"State Machines\",\n description: \"(optional) Name of state machine to load.\",\n advanced: true,\n options: (_props, ctx) => {\n return ctx?.stateMachineNames || [];\n },\n },\n autoplay: {\n type: \"boolean\",\n displayName: \"Autoplay\",\n description: \"Should animation play automatically.\",\n defaultValue: true,\n advanced: true,\n },\n studioAutoplay: {\n type: \"boolean\",\n displayName: \"Studio Autoplay\",\n description: \"Should animation play automatically in Plasmic Studio.\",\n defaultValue: false,\n advanced: true,\n },\n artboard: {\n type: \"string\",\n displayName: \"Artboard\",\n description: \"(optional) Name of the artboard to use.\",\n advanced: true,\n },\n layout: {\n type: \"object\",\n displayName: \"Layout\",\n description:\n \"(optional) Layout object to define how animations are displayed on the canvas.\",\n nameFunc: (item: any) =>\n item ? `${item.fit} / ${item.alignment}` : undefined,\n advanced: true,\n fields: {\n fit: {\n type: \"choice\",\n displayName: \"Fit\",\n options: [\n \"cover\",\n \"contain\",\n \"fill\",\n \"fitWidth\",\n \"fitHeight\",\n \"none\",\n \"scaleDown\",\n ],\n description: \"How the animation should fit in the canvas.\",\n },\n alignment: {\n type: \"choice\",\n displayName: \"Alignment\",\n options: [\n \"center\",\n \"topLeft\",\n \"topCenter\",\n \"topRight\",\n \"centerLeft\",\n \"centerRight\",\n \"bottomLeft\",\n \"bottomCenter\",\n \"bottomRight\",\n ],\n description: \"How the animation should be aligned in the canvas.\",\n },\n minX: { type: \"number\", displayName: \"Min X\", advanced: true },\n minY: { type: \"number\", displayName: \"Min Y\", advanced: true },\n maxX: { type: \"number\", displayName: \"Max X\", advanced: true },\n maxY: { type: \"number\", displayName: \"Max Y\", advanced: true },\n },\n },\n animations: {\n type: \"choice\",\n multiSelect: true,\n displayName: \"Animations\",\n description: \"(optional) Name or list of names of animations to play.\",\n advanced: true,\n options: (_props, ctx) => {\n return ctx?.animationNames || [];\n },\n },\n onStateChange: {\n type: \"eventHandler\",\n displayName: \"On State Change\",\n description: \"(optional) Callback when the state changes.\",\n advanced: true,\n argTypes: [\n {\n name: \"event\",\n type: \"object\",\n },\n ],\n },\n },\n defaultStyles: {\n minHeight: \"60vh\",\n width: \"stretch\",\n },\n refActions: {\n setBoolean: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"boolean\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n setNumber: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"number\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n fire: {\n description: \"Fire the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n play: {\n description: \"Play the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n pause: {\n description: \"Pause the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n },\n};\n\nexport function registerPlasmicRive(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n if (loader) {\n loader.registerComponent(RivePlayer, riveMetaDescriptor);\n } else {\n registerComponent(RivePlayer, riveMetaDescriptor);\n }\n}\n"],"names":["RivePlayer","React","forwardRef","_ref","ref","layout","className","onStateChange","stateMachines","setControlContextData","props","_objectWithoutPropertiesLoose","_excluded","inEditor","usePlasmicCanvasContext","riveParams","useMemo","riveLayout","Layout","fit","alignment","minX","minY","maxX","maxY","undefined","src","artboard","animations","autoplay","studioAutoplay","event","_useRive","useRive","rive","RiveComponent","useEffect","animationNames","stateMachineNames","useImperativeHandle","setInput","inputType","inputName","value","stateMachine","stateMachineInputs","forEach","i","type","console","warn","name","StateMachineInputType","Trigger","fire","Number","Boolean","setBoolean","setNumber","play","animationName","pause","studioKey","JSON","stringify","Date","now","join","key","riveMetaDescriptor","displayName","importName","importPath","description","defaultValue","multiSelect","advanced","options","_props","ctx","nameFunc","item","fields","argTypes","defaultStyles","minHeight","width","refActions","loader","registerComponent"],"mappings":"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"}
|
package/dist/rive.esm.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { usePlasmicCanvasContext } from '@plasmicapp/host';
|
|
2
2
|
import registerComponent from '@plasmicapp/host/registerComponent';
|
|
3
3
|
import { Layout, useRive, StateMachineInputType } from '@rive-app/react-canvas';
|
|
4
|
-
import React from 'react';
|
|
4
|
+
import React, { useEffect } from 'react';
|
|
5
5
|
|
|
6
6
|
function _objectWithoutPropertiesLoose(r, e) {
|
|
7
7
|
if (null == r) return {};
|
|
@@ -13,12 +13,13 @@ function _objectWithoutPropertiesLoose(r, e) {
|
|
|
13
13
|
return t;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
var _excluded = ["layout", "className", "onStateChange", "stateMachines"];
|
|
16
|
+
var _excluded = ["layout", "className", "onStateChange", "stateMachines", "setControlContextData"];
|
|
17
17
|
var RivePlayer = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
18
18
|
var layout = _ref.layout,
|
|
19
19
|
className = _ref.className,
|
|
20
20
|
_onStateChange = _ref.onStateChange,
|
|
21
21
|
stateMachines = _ref.stateMachines,
|
|
22
|
+
setControlContextData = _ref.setControlContextData,
|
|
22
23
|
props = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
23
24
|
var inEditor = usePlasmicCanvasContext();
|
|
24
25
|
var riveParams = React.useMemo(function () {
|
|
@@ -47,6 +48,12 @@ var RivePlayer = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
47
48
|
var _useRive = useRive(riveParams),
|
|
48
49
|
rive = _useRive.rive,
|
|
49
50
|
RiveComponent = _useRive.RiveComponent;
|
|
51
|
+
useEffect(function () {
|
|
52
|
+
setControlContextData == null || setControlContextData({
|
|
53
|
+
animationNames: rive == null ? void 0 : rive.animationNames,
|
|
54
|
+
stateMachineNames: rive == null ? void 0 : rive.stateMachineNames
|
|
55
|
+
});
|
|
56
|
+
}, [rive, setControlContextData]);
|
|
50
57
|
React.useImperativeHandle(ref, function () {
|
|
51
58
|
function setInput(inputType, inputName, value, stateMachine) {
|
|
52
59
|
if (value === void 0) {
|
|
@@ -114,10 +121,14 @@ var riveMetaDescriptor = {
|
|
|
114
121
|
description: "URL to the .riv file (exported from Rive)"
|
|
115
122
|
},
|
|
116
123
|
stateMachines: {
|
|
117
|
-
type: "
|
|
124
|
+
type: "choice",
|
|
125
|
+
multiSelect: true,
|
|
118
126
|
displayName: "State Machines",
|
|
119
127
|
description: "(optional) Name of state machine to load.",
|
|
120
|
-
advanced: true
|
|
128
|
+
advanced: true,
|
|
129
|
+
options: function options(_props, ctx) {
|
|
130
|
+
return (ctx == null ? void 0 : ctx.stateMachineNames) || [];
|
|
131
|
+
}
|
|
121
132
|
},
|
|
122
133
|
autoplay: {
|
|
123
134
|
type: "boolean",
|
|
@@ -183,10 +194,14 @@ var riveMetaDescriptor = {
|
|
|
183
194
|
}
|
|
184
195
|
},
|
|
185
196
|
animations: {
|
|
186
|
-
type: "
|
|
197
|
+
type: "choice",
|
|
198
|
+
multiSelect: true,
|
|
187
199
|
displayName: "Animations",
|
|
188
200
|
description: "(optional) Name or list of names of animations to play.",
|
|
189
|
-
advanced: true
|
|
201
|
+
advanced: true,
|
|
202
|
+
options: function options(_props, ctx) {
|
|
203
|
+
return (ctx == null ? void 0 : ctx.animationNames) || [];
|
|
204
|
+
}
|
|
190
205
|
},
|
|
191
206
|
onStateChange: {
|
|
192
207
|
type: "eventHandler",
|
|
@@ -274,6 +289,5 @@ function registerPlasmicRive(loader) {
|
|
|
274
289
|
}
|
|
275
290
|
}
|
|
276
291
|
|
|
277
|
-
export
|
|
278
|
-
export { registerPlasmicRive, riveMetaDescriptor };
|
|
292
|
+
export { RivePlayer, registerPlasmicRive, riveMetaDescriptor };
|
|
279
293
|
//# sourceMappingURL=rive.esm.js.map
|
package/dist/rive.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rive.esm.js","sources":["../src/index.tsx"],"sourcesContent":["import { usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n CodeComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport {\n Layout,\n RiveProps,\n StateMachineInputType,\n useRive,\n} from \"@rive-app/react-canvas\";\nimport React from \"react\";\n\ntype RiveComponentProps = RiveProps & {\n className: string;\n autoplay: boolean;\n studioAutoplay: boolean;\n onStateChange?: (event: any) => void;\n};\n\ninterface RiveInputs {\n setBoolean(name: string, value: boolean): void;\n setNumber(name: string, value: number): void;\n fire(name: string): void;\n}\n\nconst RivePlayer = React.forwardRef<RiveInputs, RiveComponentProps>(\n ({ layout, className, onStateChange, stateMachines, ...props }, ref) => {\n const inEditor = usePlasmicCanvasContext();\n\n const riveParams = React.useMemo(() => {\n const riveLayout = layout\n ? new Layout({\n fit: layout.fit,\n alignment: layout.alignment,\n minX: layout.minX,\n minY: layout.minY,\n maxX: layout.maxX,\n maxY: layout.maxY,\n })\n : undefined;\n\n return {\n src: props.src,\n artboard: props.artboard,\n animations: props.animations,\n stateMachines,\n layout: riveLayout,\n autoplay: inEditor ? props.studioAutoplay : props.autoplay,\n onStateChange: (event: any) => {\n if (onStateChange) {\n onStateChange(event);\n }\n },\n };\n }, [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n inEditor,\n onStateChange,\n ]);\n\n const { rive, RiveComponent } = useRive(riveParams);\n\n React.useImperativeHandle(\n ref,\n () => {\n function setInput(\n inputType: StateMachineInputType,\n inputName: string,\n value: any = null,\n stateMachine: string | null = null\n ) {\n const inputs = rive?.stateMachineInputs(\n stateMachine || (stateMachines as string)\n );\n (inputs || []).forEach((i: any) => {\n if (i.type !== inputType) {\n console.warn(\n `PlasmicRive: Input type mismatch: expected ${inputType}, got ${i.type}`\n );\n }\n if (i.name === inputName) {\n switch (inputType) {\n case StateMachineInputType.Trigger:\n i.fire();\n break;\n case StateMachineInputType.Number:\n case StateMachineInputType.Boolean:\n i.value = value;\n break;\n }\n }\n });\n }\n\n return {\n setBoolean(name: string, value: boolean, stateMachine?: string) {\n setInput(StateMachineInputType.Boolean, name, value, stateMachine);\n },\n setNumber(name: string, value: number, stateMachine?: string) {\n setInput(StateMachineInputType.Number, name, value, stateMachine);\n },\n fire(name: string, stateMachine?: string) {\n setInput(StateMachineInputType.Trigger, name, null, stateMachine);\n },\n play(animationName: string) {\n rive?.play(animationName);\n },\n pause(animationName: string) {\n rive?.pause(animationName);\n },\n };\n },\n [rive]\n );\n\n // In Plasmic Studio, force a remount by changing the key when any relevant prop changes\n const studioKey = React.useMemo(\n () =>\n inEditor\n ? [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n JSON.stringify(layout),\n stateMachines,\n Date.now(), // ensures a new key on every render in studio\n ].join(\"|\")\n : undefined,\n [\n inEditor,\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n ]\n );\n\n return <RiveComponent className={className} key={studioKey} />;\n }\n);\n\nexport const riveMetaDescriptor: CodeComponentMeta<RiveComponentProps> = {\n name: \"rive\",\n displayName: \"Rive\",\n importName: \"RivePlayer\",\n importPath: \"@plasmicpkgs/rive\",\n description: \"Rive animation component\",\n\n props: {\n src: {\n type: \"string\",\n defaultValue: \"https://cdn.rive.app/animations/vehicles.riv\",\n displayName: \"Source URL\",\n description: \"URL to the .riv file (exported from Rive)\",\n },\n stateMachines: {\n type: \"string\",\n displayName: \"State Machines\",\n description: \"(optional) Name of state machine to load.\",\n advanced: true,\n },\n autoplay: {\n type: \"boolean\",\n displayName: \"Autoplay\",\n description: \"Should animation play automatically.\",\n defaultValue: true,\n advanced: true,\n },\n studioAutoplay: {\n type: \"boolean\",\n displayName: \"Studio Autoplay\",\n description: \"Should animation play automatically in Plasmic Studio.\",\n defaultValue: false,\n advanced: true,\n },\n artboard: {\n type: \"string\",\n displayName: \"Artboard\",\n description: \"(optional) Name of the artboard to use.\",\n advanced: true,\n },\n layout: {\n type: \"object\",\n displayName: \"Layout\",\n description:\n \"(optional) Layout object to define how animations are displayed on the canvas.\",\n nameFunc: (item: any) =>\n item ? `${item.fit} / ${item.alignment}` : undefined,\n advanced: true,\n fields: {\n fit: {\n type: \"choice\",\n displayName: \"Fit\",\n options: [\n \"cover\",\n \"contain\",\n \"fill\",\n \"fitWidth\",\n \"fitHeight\",\n \"none\",\n \"scaleDown\",\n ],\n description: \"How the animation should fit in the canvas.\",\n },\n alignment: {\n type: \"choice\",\n displayName: \"Alignment\",\n options: [\n \"center\",\n \"topLeft\",\n \"topCenter\",\n \"topRight\",\n \"centerLeft\",\n \"centerRight\",\n \"bottomLeft\",\n \"bottomCenter\",\n \"bottomRight\",\n ],\n description: \"How the animation should be aligned in the canvas.\",\n },\n minX: { type: \"number\", displayName: \"Min X\", advanced: true },\n minY: { type: \"number\", displayName: \"Min Y\", advanced: true },\n maxX: { type: \"number\", displayName: \"Max X\", advanced: true },\n maxY: { type: \"number\", displayName: \"Max Y\", advanced: true },\n },\n },\n animations: {\n type: \"string\",\n displayName: \"Animations\",\n description: \"(optional) Name or list of names of animations to play.\",\n advanced: true,\n },\n onStateChange: {\n type: \"eventHandler\",\n displayName: \"On State Change\",\n description: \"(optional) Callback when the state changes.\",\n advanced: true,\n argTypes: [\n {\n name: \"event\",\n type: \"object\",\n },\n ],\n },\n },\n defaultStyles: {\n minHeight: \"60vh\",\n width: \"stretch\",\n },\n refActions: {\n setBoolean: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"boolean\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n setNumber: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"number\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n fire: {\n description: \"Fire the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n play: {\n description: \"Play the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n pause: {\n description: \"Pause the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n },\n};\n\nexport function registerPlasmicRive(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n if (loader) {\n loader.registerComponent(RivePlayer, riveMetaDescriptor);\n } else {\n registerComponent(RivePlayer, riveMetaDescriptor);\n }\n}\n\nexport default RivePlayer;\n"],"names":["RivePlayer","React","forwardRef","_ref","ref","layout","className","onStateChange","stateMachines","props","_objectWithoutPropertiesLoose","_excluded","inEditor","usePlasmicCanvasContext","riveParams","useMemo","riveLayout","Layout","fit","alignment","minX","minY","maxX","maxY","undefined","src","artboard","animations","autoplay","studioAutoplay","event","_useRive","useRive","rive","RiveComponent","useImperativeHandle","setInput","inputType","inputName","value","stateMachine","inputs","stateMachineInputs","forEach","i","type","console","warn","name","StateMachineInputType","Trigger","fire","Number","Boolean","setBoolean","setNumber","play","animationName","pause","studioKey","JSON","stringify","Date","now","join","key","riveMetaDescriptor","displayName","importName","importPath","description","defaultValue","advanced","nameFunc","item","fields","options","argTypes","defaultStyles","minHeight","width","refActions","registerPlasmicRive","loader","registerComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rive.esm.js","sources":["../src/index.tsx"],"sourcesContent":["import { usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n CodeComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport {\n Layout,\n RiveProps,\n StateMachineInputType,\n useRive,\n} from \"@rive-app/react-canvas\";\nimport React, { useEffect } from \"react\";\n\nexport type RiveControlContextData = {\n animationNames?: string[];\n stateMachineNames?: string[];\n};\n\nexport type RiveComponentProps = RiveProps & {\n className: string;\n autoplay: boolean;\n studioAutoplay: boolean;\n onStateChange?: (event: any) => void;\n setControlContextData?: (ctxData: RiveControlContextData) => void;\n};\n\nexport interface RiveInputs {\n setBoolean(name: string, value: boolean): void;\n setNumber(name: string, value: number): void;\n fire(name: string): void;\n play(animationName: string): void;\n pause(animationName: string): void;\n}\n\nexport const RivePlayer = React.forwardRef<RiveInputs, RiveComponentProps>(\n (\n {\n layout,\n className,\n onStateChange,\n stateMachines,\n setControlContextData,\n ...props\n },\n ref\n ) => {\n const inEditor = usePlasmicCanvasContext();\n\n const riveParams = React.useMemo(() => {\n const riveLayout = layout\n ? new Layout({\n fit: layout.fit,\n alignment: layout.alignment,\n minX: layout.minX,\n minY: layout.minY,\n maxX: layout.maxX,\n maxY: layout.maxY,\n })\n : undefined;\n\n return {\n src: props.src,\n artboard: props.artboard,\n animations: props.animations,\n stateMachines,\n layout: riveLayout,\n autoplay: inEditor ? props.studioAutoplay : props.autoplay,\n onStateChange: (event: any) => {\n if (onStateChange) {\n onStateChange(event);\n }\n },\n };\n }, [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n inEditor,\n onStateChange,\n ]);\n\n const { rive, RiveComponent } = useRive(riveParams);\n\n useEffect(() => {\n setControlContextData?.({\n animationNames: rive?.animationNames,\n stateMachineNames: rive?.stateMachineNames,\n });\n }, [rive, setControlContextData]);\n\n React.useImperativeHandle(\n ref,\n () => {\n function setInput(\n inputType: StateMachineInputType,\n inputName: string,\n value: any = null,\n stateMachine: string | null = null\n ) {\n const inputs = rive?.stateMachineInputs(\n stateMachine || (stateMachines as string)\n );\n (inputs || []).forEach((i: any) => {\n if (i.type !== inputType) {\n console.warn(\n `PlasmicRive: Input type mismatch: expected ${inputType}, got ${i.type}`\n );\n }\n if (i.name === inputName) {\n switch (inputType) {\n case StateMachineInputType.Trigger:\n i.fire();\n break;\n case StateMachineInputType.Number:\n case StateMachineInputType.Boolean:\n i.value = value;\n break;\n }\n }\n });\n }\n\n return {\n setBoolean(name: string, value: boolean, stateMachine?: string) {\n setInput(StateMachineInputType.Boolean, name, value, stateMachine);\n },\n setNumber(name: string, value: number, stateMachine?: string) {\n setInput(StateMachineInputType.Number, name, value, stateMachine);\n },\n fire(name: string, stateMachine?: string) {\n setInput(StateMachineInputType.Trigger, name, null, stateMachine);\n },\n play(animationName: string) {\n rive?.play(animationName);\n },\n pause(animationName: string) {\n rive?.pause(animationName);\n },\n };\n },\n [rive]\n );\n\n // In Plasmic Studio, force a remount by changing the key when any relevant prop changes\n const studioKey = React.useMemo(\n () =>\n inEditor\n ? [\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n JSON.stringify(layout),\n stateMachines,\n Date.now(), // ensures a new key on every render in studio\n ].join(\"|\")\n : undefined,\n [\n inEditor,\n props.src,\n props.artboard,\n props.animations,\n props.autoplay,\n props.studioAutoplay,\n layout,\n stateMachines,\n ]\n );\n\n return <RiveComponent className={className} key={studioKey} />;\n }\n);\n\nexport const riveMetaDescriptor: CodeComponentMeta<RiveComponentProps> = {\n name: \"rive\",\n displayName: \"Rive\",\n importName: \"RivePlayer\",\n importPath: \"@plasmicpkgs/rive\",\n description: \"Rive animation component\",\n\n props: {\n src: {\n type: \"string\",\n defaultValue: \"https://cdn.rive.app/animations/vehicles.riv\",\n displayName: \"Source URL\",\n description: \"URL to the .riv file (exported from Rive)\",\n },\n stateMachines: {\n type: \"choice\",\n multiSelect: true,\n displayName: \"State Machines\",\n description: \"(optional) Name of state machine to load.\",\n advanced: true,\n options: (_props, ctx) => {\n return ctx?.stateMachineNames || [];\n },\n },\n autoplay: {\n type: \"boolean\",\n displayName: \"Autoplay\",\n description: \"Should animation play automatically.\",\n defaultValue: true,\n advanced: true,\n },\n studioAutoplay: {\n type: \"boolean\",\n displayName: \"Studio Autoplay\",\n description: \"Should animation play automatically in Plasmic Studio.\",\n defaultValue: false,\n advanced: true,\n },\n artboard: {\n type: \"string\",\n displayName: \"Artboard\",\n description: \"(optional) Name of the artboard to use.\",\n advanced: true,\n },\n layout: {\n type: \"object\",\n displayName: \"Layout\",\n description:\n \"(optional) Layout object to define how animations are displayed on the canvas.\",\n nameFunc: (item: any) =>\n item ? `${item.fit} / ${item.alignment}` : undefined,\n advanced: true,\n fields: {\n fit: {\n type: \"choice\",\n displayName: \"Fit\",\n options: [\n \"cover\",\n \"contain\",\n \"fill\",\n \"fitWidth\",\n \"fitHeight\",\n \"none\",\n \"scaleDown\",\n ],\n description: \"How the animation should fit in the canvas.\",\n },\n alignment: {\n type: \"choice\",\n displayName: \"Alignment\",\n options: [\n \"center\",\n \"topLeft\",\n \"topCenter\",\n \"topRight\",\n \"centerLeft\",\n \"centerRight\",\n \"bottomLeft\",\n \"bottomCenter\",\n \"bottomRight\",\n ],\n description: \"How the animation should be aligned in the canvas.\",\n },\n minX: { type: \"number\", displayName: \"Min X\", advanced: true },\n minY: { type: \"number\", displayName: \"Min Y\", advanced: true },\n maxX: { type: \"number\", displayName: \"Max X\", advanced: true },\n maxY: { type: \"number\", displayName: \"Max Y\", advanced: true },\n },\n },\n animations: {\n type: \"choice\",\n multiSelect: true,\n displayName: \"Animations\",\n description: \"(optional) Name or list of names of animations to play.\",\n advanced: true,\n options: (_props, ctx) => {\n return ctx?.animationNames || [];\n },\n },\n onStateChange: {\n type: \"eventHandler\",\n displayName: \"On State Change\",\n description: \"(optional) Callback when the state changes.\",\n advanced: true,\n argTypes: [\n {\n name: \"event\",\n type: \"object\",\n },\n ],\n },\n },\n defaultStyles: {\n minHeight: \"60vh\",\n width: \"stretch\",\n },\n refActions: {\n setBoolean: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"boolean\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n setNumber: {\n description: \"Set the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"value\",\n type: \"number\",\n displayName: \"Input Value\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n fire: {\n description: \"Fire the Rive Input\",\n argTypes: [\n {\n name: \"name\",\n type: \"string\",\n displayName: \"Input Name\",\n },\n {\n name: \"stateMachine\",\n type: \"string\",\n displayName: \"State Machine Name\",\n },\n ],\n },\n play: {\n description: \"Play the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n pause: {\n description: \"Pause the animation\",\n argTypes: [\n {\n name: \"animationName\",\n type: \"string\",\n displayName: \"Animation Name\",\n },\n ],\n },\n },\n};\n\nexport function registerPlasmicRive(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n if (loader) {\n loader.registerComponent(RivePlayer, riveMetaDescriptor);\n } else {\n registerComponent(RivePlayer, riveMetaDescriptor);\n }\n}\n"],"names":["RivePlayer","React","forwardRef","_ref","ref","layout","className","onStateChange","stateMachines","setControlContextData","props","_objectWithoutPropertiesLoose","_excluded","inEditor","usePlasmicCanvasContext","riveParams","useMemo","riveLayout","Layout","fit","alignment","minX","minY","maxX","maxY","undefined","src","artboard","animations","autoplay","studioAutoplay","event","_useRive","useRive","rive","RiveComponent","useEffect","animationNames","stateMachineNames","useImperativeHandle","setInput","inputType","inputName","value","stateMachine","inputs","stateMachineInputs","forEach","i","type","console","warn","name","StateMachineInputType","Trigger","fire","Number","Boolean","setBoolean","setNumber","play","animationName","pause","studioKey","JSON","stringify","Date","now","join","key","riveMetaDescriptor","displayName","importName","importPath","description","defaultValue","multiSelect","advanced","options","_props","ctx","nameFunc","item","fields","argTypes","defaultStyles","minHeight","width","refActions","registerPlasmicRive","loader","registerComponent"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plasmicpkgs/rive",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"description": "Plasmic registration call for rive animation",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
|
-
"module": "dist/
|
|
7
|
+
"module": "dist/rive.esm.js",
|
|
8
8
|
"files": [
|
|
9
9
|
"dist"
|
|
10
10
|
],
|
|
11
11
|
"size-limit": [
|
|
12
12
|
{
|
|
13
|
-
"path": "dist/
|
|
13
|
+
"path": "dist/rive.cjs.production.min.js",
|
|
14
14
|
"limit": "10 KB"
|
|
15
15
|
},
|
|
16
16
|
{
|
|
17
|
-
"path": "dist/
|
|
17
|
+
"path": "dist/rive.esm.js",
|
|
18
18
|
"limit": "10 KB"
|
|
19
19
|
}
|
|
20
20
|
],
|
|
@@ -46,5 +46,5 @@
|
|
|
46
46
|
"publishConfig": {
|
|
47
47
|
"access": "public"
|
|
48
48
|
},
|
|
49
|
-
"gitHead": "
|
|
49
|
+
"gitHead": "b2cac12dc400857441113398b3318ba4993fbc7c"
|
|
50
50
|
}
|