@make-pictures/kits 0.0.0-stage → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +49 -2
  3. package/dist/chunk-3SUIELJV.mjs +601 -0
  4. package/dist/chunk-4Z3G6FPZ.mjs +485 -0
  5. package/dist/chunk-AHA23PHC.mjs +678 -0
  6. package/dist/chunk-CW623YVB.mjs +1124 -0
  7. package/dist/chunk-NNA7XXQB.mjs +1059 -0
  8. package/dist/chunk-S4CHTWOS.mjs +1237 -0
  9. package/dist/chunk-WAA7P5FT.mjs +912 -0
  10. package/dist/data-storytelling/AnimatedBarRace.d.ts +37 -0
  11. package/dist/data-storytelling/MetricComparisonCard.d.ts +29 -0
  12. package/dist/data-storytelling/TimelineTrack.d.ts +29 -0
  13. package/dist/data-storytelling/index.cjs +1224 -0
  14. package/dist/data-storytelling/index.d.ts +3 -0
  15. package/dist/data-storytelling/index.mjs +10 -0
  16. package/dist/index.cjs +6010 -0
  17. package/dist/index.d.ts +7 -0
  18. package/dist/index.mjs +108 -0
  19. package/dist/isometric-3d/IsometricStudioEnvironment.d.ts +8 -0
  20. package/dist/isometric-3d/Stylized3DCharacter.d.ts +29 -0
  21. package/dist/isometric-3d/index.cjs +611 -0
  22. package/dist/isometric-3d/index.d.ts +2 -0
  23. package/dist/isometric-3d/index.mjs +8 -0
  24. package/dist/kinetic-typography/AnimatedMetricCounter.d.ts +36 -0
  25. package/dist/kinetic-typography/ImpactKeywordCard.d.ts +31 -0
  26. package/dist/kinetic-typography/WordByWordStage.d.ts +47 -0
  27. package/dist/kinetic-typography/index.cjs +665 -0
  28. package/dist/kinetic-typography/index.d.ts +3 -0
  29. package/dist/kinetic-typography/index.mjs +14 -0
  30. package/dist/motion-diagrams-2d/CameraRig.d.ts +34 -0
  31. package/dist/motion-diagrams-2d/CodePayloadToast.d.ts +14 -0
  32. package/dist/motion-diagrams-2d/DataFlowEdge.d.ts +24 -0
  33. package/dist/motion-diagrams-2d/NodeBox.d.ts +65 -0
  34. package/dist/motion-diagrams-2d/SystemNode.d.ts +21 -0
  35. package/dist/motion-diagrams-2d/index.cjs +1137 -0
  36. package/dist/motion-diagrams-2d/index.d.ts +5 -0
  37. package/dist/motion-diagrams-2d/index.mjs +28 -0
  38. package/dist/paper-diorama-3d/ImageCutout3D.d.ts +47 -0
  39. package/dist/paper-diorama-3d/PaperCutout3D.d.ts +62 -0
  40. package/dist/paper-diorama-3d/PaperPopUpBook3D.d.ts +51 -0
  41. package/dist/paper-diorama-3d/PaperStageLighting3D.d.ts +12 -0
  42. package/dist/paper-diorama-3d/index.cjs +1087 -0
  43. package/dist/paper-diorama-3d/index.d.ts +4 -0
  44. package/dist/paper-diorama-3d/index.mjs +34 -0
  45. package/dist/product-frames/BrowserFrame.d.ts +28 -0
  46. package/dist/product-frames/PhoneFrame.d.ts +23 -0
  47. package/dist/product-frames/ScreenSpotlightOverlay.d.ts +34 -0
  48. package/dist/product-frames/frameMedia.d.ts +24 -0
  49. package/dist/product-frames/index.cjs +507 -0
  50. package/dist/product-frames/index.d.ts +8 -0
  51. package/dist/product-frames/index.mjs +12 -0
  52. package/dist/vfx/CinematicLensOverlay.d.ts +29 -0
  53. package/dist/vfx/ParticleField.d.ts +18 -0
  54. package/dist/vfx/SceneTransition.d.ts +24 -0
  55. package/dist/vfx/StagePostProcessing3D.d.ts +44 -0
  56. package/dist/vfx/index.cjs +933 -0
  57. package/dist/vfx/index.d.ts +4 -0
  58. package/dist/vfx/index.mjs +14 -0
  59. package/package.json +95 -4
@@ -0,0 +1,5 @@
1
+ export * from './CameraRig';
2
+ export * from './NodeBox';
3
+ export * from './SystemNode';
4
+ export * from './DataFlowEdge';
5
+ export * from './CodePayloadToast';
@@ -0,0 +1,28 @@
1
+ import {
2
+ CameraRig,
3
+ CodePayloadToast,
4
+ DataFlowEdge,
5
+ FlowCurve,
6
+ SystemNode,
7
+ WorldBox,
8
+ evaluateCameraState,
9
+ evaluateCubicBezier,
10
+ portBottom,
11
+ portLeft,
12
+ portRight,
13
+ portTop
14
+ } from "../chunk-CW623YVB.mjs";
15
+ export {
16
+ CameraRig,
17
+ CodePayloadToast,
18
+ DataFlowEdge,
19
+ FlowCurve,
20
+ SystemNode,
21
+ WorldBox,
22
+ evaluateCameraState,
23
+ evaluateCubicBezier,
24
+ portBottom,
25
+ portLeft,
26
+ portRight,
27
+ portTop
28
+ };
@@ -0,0 +1,47 @@
1
+ import React from 'react';
2
+ export interface ImageCutout3DProps {
3
+ /** Image URL (`staticFile(...)`, HTTP(S), or `data:` URI) */
4
+ src: string;
5
+ /** Optional cache key override (defaults to hashed `src`) */
6
+ cacheKey?: string;
7
+ /** World width in 3D units */
8
+ width: number;
9
+ /** World height in 3D units */
10
+ height: number;
11
+ /** Offscreen canvas pixel width (default 512) */
12
+ pixelWidth?: number;
13
+ /** Offscreen canvas pixel height (default 512) */
14
+ pixelHeight?: number;
15
+ /** Thickness of the cream-white Paper Mario die-cut border in pixels (default 14) */
16
+ whiteBorderPx?: number;
17
+ /** Safe margin around the image so the dilated die-cut border never clips at canvas edges */
18
+ paddingPx?: number;
19
+ /** How the image fits inside the padded cutout bounds (default 'contain') */
20
+ objectFit?: 'contain' | 'cover' | 'fill';
21
+ /** 3D position [x, y, z] */
22
+ position?: [number, number, number];
23
+ /** 3D rotation [rx, ry, rz] in radians */
24
+ rotation?: [number, number, number];
25
+ /** 3D scale (number or [sx, sy, sz]) */
26
+ scale?: number | [number, number, number];
27
+ /** Anchor point ('bottom' | 'center' | 'top', default 'bottom') */
28
+ anchor?: 'bottom' | 'center' | 'top';
29
+ /** Cardboard thickness in 3D units (default 0.038) */
30
+ thickness?: number;
31
+ /** Cast 3D silhouette shadow (default true) */
32
+ castShadow?: boolean;
33
+ /** Receive 3D shadow (default true) */
34
+ receiveShadow?: boolean;
35
+ /** Emissive color for glowing paper elements */
36
+ emissive?: string;
37
+ emissiveIntensity?: number;
38
+ /** Opacity (default 1) */
39
+ opacity?: number;
40
+ }
41
+ /**
42
+ * ImageCutout3D — Loads any transparent PNG/SVG/WebP/Data-URI image safely via
43
+ * Remotion `delayRender` / `continueRender` and passes it through `PaperCutout3D`,
44
+ * automatically generating the tactile cream-white dilated die-cut border,
45
+ * kraft cardboard edge, handmade fiber grain, and 3D silhouette shadow casting.
46
+ */
47
+ export declare const ImageCutout3D: React.FC<ImageCutout3DProps>;
@@ -0,0 +1,62 @@
1
+ import React from 'react';
2
+ export type PaperCutoutDep = string | number | boolean | null | undefined;
3
+ export interface PaperCutout3DProps {
4
+ /** Base identifier for this cutout texture */
5
+ cacheKey: string;
6
+ /**
7
+ * Optional reactive values captured inside `draw` (e.g. colors, dynamic labels from PropsInspector)
8
+ * so live prop changes invalidate the cached CanvasTexture immediately in 0ms.
9
+ */
10
+ cacheDeps?: ReadonlyArray<PaperCutoutDep>;
11
+ /** Canvas width in pixels (default 512) */
12
+ pixelWidth?: number;
13
+ /** Canvas height in pixels (default 512) */
14
+ pixelHeight?: number;
15
+ /** World width in 3D units */
16
+ width: number;
17
+ /** World height in 3D units */
18
+ height: number;
19
+ /** Drawing callback in pixel coordinates (0..pixelWidth, 0..pixelHeight) */
20
+ draw: (ctx: CanvasRenderingContext2D, w: number, h: number) => void;
21
+ /** Thickness of the white Paper Mario die-cut border in pixels (default 14) */
22
+ whiteBorderPx?: number;
23
+ /** 3D position [x, y, z] */
24
+ position?: [number, number, number];
25
+ /** 3D rotation [rx, ry, rz] in radians */
26
+ rotation?: [number, number, number];
27
+ /** 3D scale (number or [sx, sy, sz]) */
28
+ scale?: number | [number, number, number];
29
+ /** Anchor point: 'bottom' puts y=0 at bottom edge (default for standing cutouts), 'center' puts (0,0) at center */
30
+ anchor?: 'bottom' | 'center' | 'top';
31
+ /** Cardboard thickness in 3D units (default 0.038) */
32
+ thickness?: number;
33
+ /** Cast 3D silhouette shadow (default true) */
34
+ castShadow?: boolean;
35
+ /** Receive 3D shadow (default true) */
36
+ receiveShadow?: boolean;
37
+ /** Emissive color for glowing paper elements (e.g. lasers, neon, golden ribbon) */
38
+ emissive?: string;
39
+ emissiveIntensity?: number;
40
+ /** Opacity (default 1) */
41
+ opacity?: number;
42
+ }
43
+ export declare function prunePaperTextureCache(maxEntries?: number): number;
44
+ export declare function getPaperTextureCacheStats(): {
45
+ size: number;
46
+ activeCount: number;
47
+ maxEntries: number;
48
+ };
49
+ export declare function serializePaperCutoutDeps(cacheDeps?: ReadonlyArray<PaperCutoutDep>): string;
50
+ export declare function buildPaperCutoutCompositeKey(cacheKey: string, pixelWidth: number, pixelHeight: number, whiteBorderPx: number, fontRevision: number, draw: (ctx: CanvasRenderingContext2D, w: number, h: number) => void, cacheDeps?: ReadonlyArray<PaperCutoutDep>): string;
51
+ export declare const PaperCutout3D: React.FC<PaperCutout3DProps>;
52
+ /**
53
+ * PopUpHinge3D — Folds any 3D paper diorama element up from flat on the book page
54
+ * (foldProgress: 0 = folded flat at -88 deg, 1 = standing upright at 0 deg)
55
+ */
56
+ export declare const PopUpHinge3D: React.FC<{
57
+ foldProgress: number;
58
+ position?: [number, number, number];
59
+ rotationY?: number;
60
+ foldDirection?: 1 | -1;
61
+ children: React.ReactNode;
62
+ }>;
@@ -0,0 +1,51 @@
1
+ import React from 'react';
2
+ import * as THREE from 'three';
3
+ export type FloorTheme = 'mint-plains' | 'checkerboard-tile' | 'warm-parquet' | 'valley-terrace';
4
+ export declare function getFloorTexture(theme: FloorTheme): THREE.CanvasTexture;
5
+ export interface PaperBookPageTurn3DProps {
6
+ /** Progress (0..1) of an active page sheet transition from right (0) to left (1) */
7
+ pageTurnProgress: number;
8
+ /** Floor theme of the newly revealed spread */
9
+ nextFloorTheme: FloorTheme;
10
+ /** Spread width in 3D units (default 23.4) */
11
+ spreadWidth?: number;
12
+ /** Spread depth in 3D units (default 15.4) */
13
+ spreadDepth?: number;
14
+ }
15
+ /**
16
+ * PaperBookPageTurn3D — Flat-sliding 3D paper sheet transition across the Pop-Up Book stage.
17
+ */
18
+ export declare const PaperBookPageTurn3D: React.FC<PaperBookPageTurn3DProps>;
19
+ /**
20
+ * The 3D Hardcover Pop-Up Book Base & Active Spread Floor
21
+ */
22
+ export declare const PopUpBookBase3D: React.FC<{
23
+ floorTheme: FloorTheme;
24
+ nextFloorTheme?: FloorTheme;
25
+ /** Progress (0..1) of an active page roll/turn from right (0) to left (1) */
26
+ pageTurnProgress?: number;
27
+ }>;
28
+ /**
29
+ * 3D Paper Cloud Cutout with Thick White Paper Border & Shadow Casting
30
+ */
31
+ export declare const PaperCloudCutout3D: React.FC<{
32
+ position: [number, number, number];
33
+ scale?: number;
34
+ tint?: string;
35
+ idSuffix?: string;
36
+ }>;
37
+ /**
38
+ * 3D Paper Pine Tree Cutout (For multi-plane valley parallax & shadows)
39
+ */
40
+ export declare const PaperPineTree3D: React.FC<{
41
+ position: [number, number, number];
42
+ scale?: number;
43
+ foldProgress?: number;
44
+ }>;
45
+ /**
46
+ * Multi-Plane 3D Paper Cutout Mountain Backdrop
47
+ */
48
+ export declare const PaperMountainBackdrop3D: React.FC<{
49
+ position?: [number, number, number];
50
+ scale?: number;
51
+ }>;
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ export interface PaperCameraRig3DProps {
3
+ cameraPos: [number, number, number];
4
+ lookAt: [number, number, number];
5
+ fov?: number;
6
+ }
7
+ export declare const PaperCameraRig3D: React.FC<PaperCameraRig3DProps>;
8
+ export interface PaperStageLighting3DProps {
9
+ preset?: 'daylight' | 'golden-hour' | 'indoor-study' | 'spotlight';
10
+ sunPosition?: [number, number, number];
11
+ }
12
+ export declare const PaperStageLighting3D: React.FC<PaperStageLighting3DProps>;