@plasmicpkgs/rive 0.0.35 → 0.0.36

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
@@ -1,32 +1,32 @@
1
- import registerComponent, { CodeComponentMeta } from "@plasmicapp/host/registerComponent";
2
- import { RiveProps } from "@rive-app/react-canvas";
3
- import React from "react";
4
- export declare type RiveControlContextData = {
5
- animationNames?: string[];
6
- stateMachineNames?: string[];
7
- };
8
- export declare type RiveComponentProps = RiveProps & {
9
- className: string;
10
- autoplay: boolean;
11
- studioAutoplay: boolean;
12
- onStateChange?: (event: any) => void;
13
- setControlContextData?: (ctxData: RiveControlContextData) => void;
14
- };
15
- export interface RiveInputs {
16
- setBoolean(name: string, value: boolean): void;
17
- setNumber(name: string, value: number): void;
18
- fire(name: string): void;
19
- play(animationName: string): void;
20
- pause(animationName: string): void;
21
- }
22
- export declare const RivePlayer: React.ForwardRefExoticComponent<RiveProps & {
23
- className: string;
24
- autoplay: boolean;
25
- studioAutoplay: boolean;
26
- onStateChange?: ((event: any) => void) | undefined;
27
- setControlContextData?: ((ctxData: RiveControlContextData) => void) | undefined;
28
- } & React.RefAttributes<RiveInputs>>;
29
- export declare const riveMetaDescriptor: CodeComponentMeta<RiveComponentProps>;
30
- export declare function registerPlasmicRive(loader?: {
31
- registerComponent: typeof registerComponent;
32
- }): void;
1
+ import registerComponent, { CodeComponentMeta } from "@plasmicapp/host/registerComponent";
2
+ import { RiveProps } from "@rive-app/react-canvas";
3
+ import React from "react";
4
+ export type RiveControlContextData = {
5
+ animationNames?: string[];
6
+ stateMachineNames?: string[];
7
+ };
8
+ export type RiveComponentProps = RiveProps & {
9
+ className: string;
10
+ autoplay: boolean;
11
+ studioAutoplay: boolean;
12
+ onStateChange?: (event: any) => void;
13
+ setControlContextData?: (ctxData: RiveControlContextData) => void;
14
+ };
15
+ export interface RiveInputs {
16
+ setBoolean(name: string, value: boolean): void;
17
+ setNumber(name: string, value: number): void;
18
+ fire(name: string): void;
19
+ play(animationName: string): void;
20
+ pause(animationName: string): void;
21
+ }
22
+ export declare const RivePlayer: React.ForwardRefExoticComponent<RiveProps & {
23
+ className: string;
24
+ autoplay: boolean;
25
+ studioAutoplay: boolean;
26
+ onStateChange?: ((event: any) => void) | undefined;
27
+ setControlContextData?: ((ctxData: RiveControlContextData) => void) | undefined;
28
+ } & React.RefAttributes<RiveInputs>>;
29
+ export declare const riveMetaDescriptor: CodeComponentMeta<RiveComponentProps>;
30
+ export declare function registerPlasmicRive(loader?: {
31
+ registerComponent: typeof registerComponent;
32
+ }): void;
@@ -107,7 +107,8 @@ var RivePlayer = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
107
107
  }, [rive]);
108
108
  // In Plasmic Studio, force a remount by changing the key when any relevant prop changes
109
109
  var studioKey = React__default.useMemo(function () {
110
- return inEditor ? [props.src, props.artboard, props.animations, props.autoplay, props.studioAutoplay, JSON.stringify(layout), stateMachines, Date.now()].join("|") : undefined;
110
+ return inEditor ? [props.src, props.artboard, props.animations, props.autoplay, props.studioAutoplay, JSON.stringify(layout), stateMachines, Date.now() // ensures a new key on every render in studio
111
+ ].join("|") : undefined;
111
112
  }, [inEditor, props.src, props.artboard, props.animations, props.autoplay, props.studioAutoplay, layout, stateMachines]);
112
113
  return React__default.createElement(RiveComponent, {
113
114
  className: className,
@@ -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, { 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
+ {"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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"}
package/dist/rive.esm.js CHANGED
@@ -100,7 +100,8 @@ var RivePlayer = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
100
100
  }, [rive]);
101
101
  // In Plasmic Studio, force a remount by changing the key when any relevant prop changes
102
102
  var studioKey = React.useMemo(function () {
103
- return inEditor ? [props.src, props.artboard, props.animations, props.autoplay, props.studioAutoplay, JSON.stringify(layout), stateMachines, Date.now()].join("|") : undefined;
103
+ return inEditor ? [props.src, props.artboard, props.animations, props.autoplay, props.studioAutoplay, JSON.stringify(layout), stateMachines, Date.now() // ensures a new key on every render in studio
104
+ ].join("|") : undefined;
104
105
  }, [inEditor, props.src, props.artboard, props.animations, props.autoplay, props.studioAutoplay, layout, stateMachines]);
105
106
  return React.createElement(RiveComponent, {
106
107
  className: className,
@@ -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, { 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
+ {"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,6 +1,6 @@
1
1
  {
2
2
  "name": "@plasmicpkgs/rive",
3
- "version": "0.0.35",
3
+ "version": "0.0.36",
4
4
  "description": "Plasmic registration call for rive animation",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -21,14 +21,14 @@
21
21
  "scripts": {
22
22
  "build": "tsdx build",
23
23
  "start": "tsdx watch",
24
- "test": "TEST_CWD=`pwd` yarn --cwd=../.. test --passWithNoTests",
24
+ "test": "TEST_CWD=`pwd` pnpm -w test --passWithNoTests",
25
25
  "lint": "tsdx lint",
26
26
  "prepublishOnly": "npm run build",
27
27
  "size": "size-limit",
28
28
  "analyze": "size-limit --why"
29
29
  },
30
30
  "devDependencies": {
31
- "@plasmicapp/host": "2.0.6",
31
+ "@plasmicapp/host": "2.0.7",
32
32
  "@types/node": "^14.0.26",
33
33
  "@types/react": "^18",
34
34
  "tsdx": "^0.14.1",
@@ -44,5 +44,5 @@
44
44
  "publishConfig": {
45
45
  "access": "public"
46
46
  },
47
- "gitHead": "baa35758ccd16c32259942faebbcbd62d5f174a4"
47
+ "gitHead": "6087f1621240c66b20d4a8fcf02c8bf889c554aa"
48
48
  }