@vincentt-xr/sdk 2.0.0-alpha.0 → 2.0.0-alpha.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 (106) hide show
  1. package/GROUNDING.md +232 -14
  2. package/dist/{DebuggerUI-CEfdddkZ.cjs → DebuggerUI-CatYc-RG.cjs} +1 -1
  3. package/dist/{DebuggerUI-Dgop6Q6o.js → DebuggerUI-gLMKiVwJ.js} +1 -1
  4. package/dist/MediaSourceSwitcher-C-xYg0nQ.js +317 -0
  5. package/dist/MediaSourceSwitcher-Cq3g4IKw.cjs +31 -0
  6. package/dist/components/FaceMesh/canonical/CanonicalFaceMeshRenderer.d.ts +6 -1
  7. package/dist/components/FaceMesh/material/defaults.d.ts +4 -0
  8. package/dist/components/FaceMesh/material/types.d.ts +2 -0
  9. package/dist/components/FaceRetouch/Background.d.ts +6 -1
  10. package/dist/components/FaceRetouch/defaults.d.ts +13 -0
  11. package/dist/components/FaceRetouch/index.d.ts +3 -1
  12. package/dist/components/FaceRetouch/landmarkMask.d.ts +4 -1
  13. package/dist/components/FaceRetouch/useFaceRetouchMask.d.ts +2 -1
  14. package/dist/components/FaceWarp3D/FaceWarp3DHead.d.ts +15 -0
  15. package/dist/components/FaceWarp3D/defaults.d.ts +37 -0
  16. package/dist/components/FaceWarp3D/index.d.ts +3 -0
  17. package/dist/components/FaceWarp3D/warp.d.ts +13 -0
  18. package/dist/components/HandJoints2D/index.d.ts +6 -0
  19. package/dist/components/HandTracker/index.d.ts +2 -2
  20. package/dist/components/HandTracking2D/HandVisual.d.ts +12 -0
  21. package/dist/components/HandTracking2D/index.d.ts +5 -0
  22. package/dist/components/HandTracking2DController/index.d.ts +5 -0
  23. package/dist/components/HandTracking3D/index.d.ts +6 -0
  24. package/dist/components/ScreenImage/index.d.ts +87 -0
  25. package/dist/components/ScreenText/index.d.ts +20 -0
  26. package/dist/components/TextLabel/index.d.ts +99 -0
  27. package/dist/components/XRScene/index.d.ts +14 -3
  28. package/dist/components/XRViewport/index.d.ts +17 -0
  29. package/dist/components/index.d.ts +7 -0
  30. package/dist/debug-ui/default-setting/index.d.ts +37 -0
  31. package/dist/debug-ui/default-setting.cjs +21 -0
  32. package/dist/debug-ui/default-setting.js +777 -0
  33. package/dist/debug-ui/face-warp-3d/index.d.ts +6 -0
  34. package/dist/debug-ui/hand-joints-2d/index.d.ts +6 -0
  35. package/dist/debug-ui/hand-tracking-2d/index.d.ts +6 -0
  36. package/dist/debug-ui/hand-tracking-2d-controller/index.d.ts +6 -0
  37. package/dist/debug-ui/hand-tracking-3d/index.d.ts +6 -0
  38. package/dist/debug-ui/index.d.ts +23 -0
  39. package/dist/debug-ui/layer-panel/index.d.ts +17 -0
  40. package/dist/debug-ui/media-source/MediaSourceSwitcher.d.ts +10 -0
  41. package/dist/debug-ui/media-source/index.d.ts +4 -0
  42. package/dist/debug-ui/media-source/media-preset.d.ts +9 -0
  43. package/dist/debug-ui/media-source.cjs +1 -0
  44. package/dist/debug-ui/media-source.js +7 -0
  45. package/dist/debug-ui/screen-image-settings/index.d.ts +7 -0
  46. package/dist/debug-ui/screen-text-settings/index.d.ts +122 -0
  47. package/dist/debug-ui/settings-panel/index.d.ts +38 -0
  48. package/dist/debug-ui/shared/MaterialSection.d.ts +13 -0
  49. package/dist/debug-ui/shared/ScreenTransformSection.d.ts +29 -0
  50. package/dist/debug-ui.cjs +20 -0
  51. package/dist/debug-ui.js +6063 -0
  52. package/dist/defaults-BLpcN3pG.cjs +1 -0
  53. package/dist/defaults-LtY4M7dg.js +55 -0
  54. package/dist/entries/core.d.ts +5 -1
  55. package/dist/entries/face-effects.d.ts +2 -0
  56. package/dist/entries/low-level.d.ts +3 -0
  57. package/dist/face-effects.cjs +113 -23
  58. package/dist/face-effects.js +1566 -1399
  59. package/dist/handJoints2d.d.ts +49 -0
  60. package/dist/handTracking2d.d.ts +33 -0
  61. package/dist/handTracking2dController.d.ts +65 -0
  62. package/dist/handTracking3d.d.ts +52 -0
  63. package/dist/{index-BD-JWMjE.js → index-BGNbrc4C.js} +113 -137
  64. package/dist/index-BXyObVHF.cjs +1 -0
  65. package/dist/index-CY3bUAcW.js +12 -0
  66. package/dist/index-C_Duh13c.cjs +1 -0
  67. package/dist/index-D8fpPQkC.cjs +1 -0
  68. package/dist/index-DxshgBu0.cjs +1 -0
  69. package/dist/index-O-2crZ3M.js +1102 -0
  70. package/dist/{index-CYMj26Ej.js → index-safCs_af.js} +426 -416
  71. package/dist/{internal-DH5d1Xnq.cjs → internal-BjyhBP8i.cjs} +1 -1
  72. package/dist/{internal-KOKJDxCG.js → internal-Cae1ps15.js} +3 -3
  73. package/dist/internal.cjs +1 -1
  74. package/dist/internal.js +2 -2
  75. package/dist/layerStack.d.ts +29 -0
  76. package/dist/low-level.cjs +1 -1
  77. package/dist/low-level.js +74 -890
  78. package/dist/main.cjs +73 -1
  79. package/dist/main.js +1656 -407
  80. package/dist/models/Hand/HandTracking.d.ts +2 -0
  81. package/dist/screen2d/index.d.ts +4 -0
  82. package/dist/screen2d/material-runtime.d.ts +32 -0
  83. package/dist/screen2d/texture.d.ts +10 -0
  84. package/dist/screen2d/transform.d.ts +25 -0
  85. package/dist/screen2d/types.d.ts +90 -0
  86. package/dist/screenImagePresets.d.ts +13 -0
  87. package/dist/screenImageSettings-6NRg4cx9.js +39 -0
  88. package/dist/screenImageSettings-y_B4_767.cjs +1 -0
  89. package/dist/screenImageSettings.d.ts +50 -0
  90. package/dist/screenTextPresets.d.ts +6 -0
  91. package/dist/screenTextSettings.d.ts +131 -0
  92. package/dist/{selectors-Bub0o3qy.cjs → selectors-BLl2JUWW.cjs} +1 -1
  93. package/dist/{selectors-BHO6TnoC.js → selectors-CXd_x-6t.js} +6 -6
  94. package/dist/tracking.cjs +1 -1
  95. package/dist/tracking.js +193 -168
  96. package/dist/types/hand-tracking.d.ts +8 -0
  97. package/dist/types/nodes.d.ts +2 -0
  98. package/dist/useXRModel-3DcUa28n.cjs +1 -0
  99. package/dist/useXRModel-BMJE1hrk.js +28 -0
  100. package/dist/x-Co8jPhP0.js +127 -0
  101. package/dist/x-KC8E4Gaj.cjs +41 -0
  102. package/package.json +19 -1
  103. package/dist/index-B5J4gzn2.cjs +0 -1
  104. package/dist/index-BVBVg96G.cjs +0 -1
  105. package/dist/index-DtwHElmG.js +0 -157
  106. package/dist/index-PtFmD6B8.cjs +0 -1
@@ -0,0 +1,6 @@
1
+ import { FaceWarp3DSettings } from '../../components/FaceWarp3D';
2
+ export type FaceWarp3DSettingsPanelProps = {
3
+ value: FaceWarp3DSettings;
4
+ onChange: (next: FaceWarp3DSettings) => void;
5
+ };
6
+ export declare const FaceWarp3DSettingsPanel: ({ value, onChange }: FaceWarp3DSettingsPanelProps) => null;
@@ -0,0 +1,6 @@
1
+ import { HandJoints2DSettings } from '../../handJoints2d';
2
+ export type HandJoints2DSettingsPanelProps = {
3
+ value: HandJoints2DSettings;
4
+ onChange: (next: HandJoints2DSettings) => void;
5
+ };
6
+ export declare const HandJoints2DSettingsPanel: ({ value, onChange }: HandJoints2DSettingsPanelProps) => import('react').ReactPortal | null;
@@ -0,0 +1,6 @@
1
+ import { HandTracking2DSettings } from '../../handTracking2d';
2
+ export type HandTracking2DSettingsPanelProps = {
3
+ value: HandTracking2DSettings;
4
+ onChange: (next: HandTracking2DSettings) => void;
5
+ };
6
+ export declare const HandTracking2DSettingsPanel: ({ value, onChange, }: HandTracking2DSettingsPanelProps) => import('react').ReactPortal | null;
@@ -0,0 +1,6 @@
1
+ import { HandTracking2DControllerSettings } from '../../handTracking2dController';
2
+ export type HandTracking2DControllerSettingsPanelProps = {
3
+ value: HandTracking2DControllerSettings;
4
+ onChange: (next: HandTracking2DControllerSettings) => void;
5
+ };
6
+ export declare const HandTracking2DControllerSettingsPanel: ({ value, onChange, }: HandTracking2DControllerSettingsPanelProps) => import('react').ReactPortal | null;
@@ -0,0 +1,6 @@
1
+ import { HandTracking3DSettings } from '../../handTracking3d';
2
+ export type HandTracking3DSettingsPanelProps = {
3
+ value: HandTracking3DSettings;
4
+ onChange: (next: HandTracking3DSettings) => void;
5
+ };
6
+ export declare const HandTracking3DSettingsPanel: ({ value, onChange, }: HandTracking3DSettingsPanelProps) => import('react').ReactPortal | null;
@@ -0,0 +1,23 @@
1
+ export { defaultMediaSources, sdkImageMediaSources, sdkVideoMediaSources } from './media-source';
2
+ export type { MediaSourcePreset, MediaSourceSwitcherProps } from './media-source';
3
+ export { MediaSourceSwitcher } from './media-source';
4
+ export type { DefaultSettingPanelProps } from './default-setting';
5
+ export { DefaultSettingPanel } from './default-setting';
6
+ export type { ScreenTextArtPreset, ScreenTextSettings, ScreenTextSceneSettings, ScreenTextSettingsPanelProps, } from './screen-text-settings';
7
+ export { ScreenTextSettingsPanel } from './screen-text-settings';
8
+ export type { ScreenImageSettingsPanelProps } from './screen-image-settings';
9
+ export { ScreenImageSettingsPanel } from './screen-image-settings';
10
+ export type { HandTracking2DSettingsPanelProps } from './hand-tracking-2d';
11
+ export { HandTracking2DSettingsPanel } from './hand-tracking-2d';
12
+ export type { HandTracking2DControllerSettingsPanelProps } from './hand-tracking-2d-controller';
13
+ export { HandTracking2DControllerSettingsPanel } from './hand-tracking-2d-controller';
14
+ export type { HandJoints2DSettingsPanelProps } from './hand-joints-2d';
15
+ export { HandJoints2DSettingsPanel } from './hand-joints-2d';
16
+ export type { HandTracking3DSettingsPanelProps } from './hand-tracking-3d';
17
+ export { HandTracking3DSettingsPanel } from './hand-tracking-3d';
18
+ export type { LayerDomain, LayerNode, LayerPanelProps } from './layer-panel';
19
+ export { LayerPanel } from './layer-panel';
20
+ export type { SettingsPanelField, SettingsPanelOption, SettingsPanelProps, SettingsPanelValue, } from './settings-panel';
21
+ export { SettingsPanel } from './settings-panel';
22
+ export type { FaceWarp3DSettingsPanelProps } from './face-warp-3d';
23
+ export { FaceWarp3DSettingsPanel } from './face-warp-3d';
@@ -0,0 +1,17 @@
1
+ import { LayerDomain, LayerNode } from '../../layerStack';
2
+ export type { LayerDomain, LayerNode };
3
+ export type LayerPanelProps = {
4
+ layers: LayerNode[];
5
+ selectedLayerId: string;
6
+ onSelectLayer: (id: string) => void;
7
+ onToggleVisible: (id: string, visible: boolean) => void;
8
+ onToggleEnabled: (id: string, enabled: boolean) => void;
9
+ onReorder: (nextLayers: LayerNode[]) => void;
10
+ onRename?: (id: string, label: string) => void;
11
+ onToggleLocked?: (id: string, locked: boolean) => void;
12
+ initialPosition?: {
13
+ x: number;
14
+ y: number;
15
+ };
16
+ };
17
+ export declare const LayerPanel: ({ layers, selectedLayerId, onSelectLayer, onToggleVisible, onToggleEnabled, onReorder, onToggleLocked, initialPosition, }: LayerPanelProps) => import('react').ReactPortal | null;
@@ -0,0 +1,10 @@
1
+ import { CSSProperties } from 'react';
2
+ import { MediaSourcePreset } from './media-preset';
3
+ export type { MediaSourcePreset } from './media-preset';
4
+ export type MediaSourceSwitcherProps = {
5
+ value: MediaSourcePreset;
6
+ onChange: (value: MediaSourcePreset) => void;
7
+ sources: MediaSourcePreset[];
8
+ style?: CSSProperties;
9
+ };
10
+ export declare const MediaSourceSwitcher: ({ value, onChange, sources, style, }: MediaSourceSwitcherProps) => import('react').ReactPortal | null;
@@ -0,0 +1,4 @@
1
+ export { defaultMediaSources, sdkImageMediaSources, sdkVideoMediaSources } from './media-preset';
2
+ export type { MediaSourcePreset } from './media-preset';
3
+ export { MediaSourceSwitcher } from './MediaSourceSwitcher';
4
+ export type { MediaSourceSwitcherProps } from './MediaSourceSwitcher';
@@ -0,0 +1,9 @@
1
+ export type MediaSourcePreset = {
2
+ id: string;
3
+ kind: "webcam" | "image" | "video";
4
+ label: string;
5
+ url?: string;
6
+ };
7
+ export declare const sdkVideoMediaSources: MediaSourcePreset[];
8
+ export declare const sdkImageMediaSources: MediaSourcePreset[];
9
+ export declare const defaultMediaSources: MediaSourcePreset[];
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../MediaSourceSwitcher-Cq3g4IKw.cjs");exports.MediaSourceSwitcher=e.MediaSourceSwitcher;exports.defaultMediaSources=e.defaultMediaSources;exports.sdkImageMediaSources=e.sdkImageMediaSources;exports.sdkVideoMediaSources=e.sdkVideoMediaSources;
@@ -0,0 +1,7 @@
1
+ import { M as s, d, s as o, a as r } from "../MediaSourceSwitcher-C-xYg0nQ.js";
2
+ export {
3
+ s as MediaSourceSwitcher,
4
+ d as defaultMediaSources,
5
+ o as sdkImageMediaSources,
6
+ r as sdkVideoMediaSources
7
+ };
@@ -0,0 +1,7 @@
1
+ import { ScreenImageSceneSettings } from '../../screenImageSettings';
2
+ export type ScreenImageSettingsPanelProps = {
3
+ value: ScreenImageSceneSettings;
4
+ onChange: (next: ScreenImageSceneSettings) => void;
5
+ copyLabel?: string;
6
+ };
7
+ export declare const ScreenImageSettingsPanel: ({ value, onChange, copyLabel, }: ScreenImageSettingsPanelProps) => import('react').ReactPortal | null;
@@ -0,0 +1,122 @@
1
+ import { ScreenCanvasSize, ScreenCoordinateSpace } from '../../screen2d';
2
+ export type ScreenTextArtPreset = "clean" | "sticker" | "shadow-pop" | "neon" | "editorial" | "comic-burst" | "ice-outline" | "sunset-glow" | "cutout" | "badge-arc" | "chrome-bulge" | "retro-wave" | "flag-pop" | "fisheye-poster";
3
+ export type ScreenTextSettings = {
4
+ enabled: boolean;
5
+ content: {
6
+ text: string;
7
+ };
8
+ layout: {
9
+ textAlign?: "left" | "center" | "right";
10
+ verticalAlign?: "top" | "center" | "bottom";
11
+ overflow?: "clip" | "ellipsis" | "clamp" | "shrink";
12
+ resizeToFit?: boolean;
13
+ minFontSize?: number;
14
+ };
15
+ style: {
16
+ fontSize: number;
17
+ fontFamily?: string;
18
+ fontWeight?: number | "normal" | "bold";
19
+ bold?: boolean;
20
+ fontStyle?: "normal" | "italic";
21
+ underline?: boolean;
22
+ letterSpacing: number;
23
+ lineSpacing: number;
24
+ color: string;
25
+ opacity: number;
26
+ aspect: number;
27
+ outlineEnabled?: boolean;
28
+ shadowEnabled?: boolean;
29
+ innerShadowEnabled?: boolean;
30
+ innerShadow?: {
31
+ color: string;
32
+ opacity?: number;
33
+ offset?: number;
34
+ angle?: number;
35
+ feather?: number;
36
+ };
37
+ glowEnabled?: boolean;
38
+ glow?: {
39
+ color: string;
40
+ style: "outward" | "contoured";
41
+ intensity?: number;
42
+ range?: number;
43
+ horizontalAngle?: number;
44
+ verticalAngle?: number;
45
+ };
46
+ bendEnabled?: boolean;
47
+ bend?: {
48
+ preset: "arc" | "arc-lower" | "arc-upper" | "arch" | "bulge" | "shell-lower" | "shell-upper" | "flag" | "wave" | "fish" | "rise" | "fisheye" | "inflate" | "squeeze" | "twist";
49
+ strength: number;
50
+ };
51
+ strokeLayers?: Array<{
52
+ color: string;
53
+ width: number;
54
+ opacity?: number;
55
+ }>;
56
+ shadowLayers?: Array<{
57
+ color: string;
58
+ blur: number;
59
+ offsetX?: number;
60
+ offsetY?: number;
61
+ opacity?: number;
62
+ offset?: number;
63
+ angle?: number;
64
+ feather?: number;
65
+ }>;
66
+ background: {
67
+ enabled: boolean;
68
+ autoSize: boolean;
69
+ fit: "full" | "text";
70
+ fillMode: "solid" | "gradient";
71
+ color: string;
72
+ opacity: number;
73
+ borderRadius: number;
74
+ padding: number;
75
+ width: number;
76
+ height: number;
77
+ borderEnabled: boolean;
78
+ borderWidth: number;
79
+ borderColor: string;
80
+ gradientStops: Array<{
81
+ color: string;
82
+ position: number;
83
+ }>;
84
+ textureUrl?: string;
85
+ textureFit: "cover" | "contain" | "stretch";
86
+ textureFlipX: boolean;
87
+ textureFlipY: boolean;
88
+ };
89
+ };
90
+ transformation: {
91
+ enabled: boolean;
92
+ showTransformGuides: boolean;
93
+ coordinateSpace?: ScreenCoordinateSpace;
94
+ canvasSize?: ScreenCanvasSize;
95
+ position: {
96
+ x: number;
97
+ y: number;
98
+ };
99
+ size: {
100
+ width: number;
101
+ height: number;
102
+ };
103
+ rotation: number;
104
+ pivot: [number, number];
105
+ renderOrder: number;
106
+ overlay: boolean;
107
+ visible: boolean;
108
+ };
109
+ textArtPreset: ScreenTextArtPreset;
110
+ };
111
+ export type ScreenTextSceneSettings = {
112
+ screenText: ScreenTextSettings;
113
+ screenSpaceUI: {
114
+ enabled: boolean;
115
+ };
116
+ };
117
+ export type ScreenTextSettingsPanelProps = {
118
+ value: ScreenTextSceneSettings;
119
+ onChange: (next: ScreenTextSceneSettings) => void;
120
+ copyLabel?: string;
121
+ };
122
+ export declare const ScreenTextSettingsPanel: ({ value, onChange, copyLabel, }: ScreenTextSettingsPanelProps) => import('react').ReactPortal | null;
@@ -0,0 +1,38 @@
1
+ export type SettingsPanelValue = string | number | boolean;
2
+ export type SettingsPanelOption = {
3
+ label: string;
4
+ value: SettingsPanelValue;
5
+ };
6
+ type SettingsPanelFieldBase<T extends object> = {
7
+ key: Extract<keyof T, string>;
8
+ label: string;
9
+ };
10
+ export type SettingsPanelField<T extends object> = (SettingsPanelFieldBase<T> & {
11
+ type: "number";
12
+ min?: number;
13
+ max?: number;
14
+ step?: number;
15
+ }) | (SettingsPanelFieldBase<T> & {
16
+ type: "boolean";
17
+ }) | (SettingsPanelFieldBase<T> & {
18
+ type: "color";
19
+ }) | (SettingsPanelFieldBase<T> & {
20
+ type: "text";
21
+ }) | (SettingsPanelFieldBase<T> & {
22
+ type: "select";
23
+ options: SettingsPanelOption[];
24
+ });
25
+ export type SettingsPanelProps<T extends object> = {
26
+ title: string;
27
+ value: T;
28
+ fields: SettingsPanelField<T>[];
29
+ onChange: (next: T) => void;
30
+ copyLabel?: string;
31
+ copyPayload?: (value: T) => unknown;
32
+ initialPosition?: {
33
+ x: number;
34
+ y: number;
35
+ };
36
+ };
37
+ export declare function SettingsPanel<T extends object>({ title, value, fields, onChange, copyLabel, copyPayload, initialPosition, }: SettingsPanelProps<T>): import("react/jsx-runtime").JSX.Element;
38
+ export {};
@@ -0,0 +1,13 @@
1
+ import { ScreenImageBlendMode, ScreenImageMaterialType } from '../../components/ScreenImage';
2
+ export type MaterialSectionValue = {
3
+ materialType: ScreenImageMaterialType;
4
+ blendMode: ScreenImageBlendMode;
5
+ opacity: number;
6
+ color: string;
7
+ alphaTest: number;
8
+ };
9
+ export type MaterialSectionProps = {
10
+ value: MaterialSectionValue;
11
+ onChange: (next: MaterialSectionValue) => void;
12
+ };
13
+ export declare const MaterialSection: ({ value, onChange }: MaterialSectionProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,29 @@
1
+ import { ScreenCanvasSize, ScreenCoordinateSpace } from '../../screen2d';
2
+ export type ScreenTransformSectionValue = {
3
+ enabled: boolean;
4
+ showGuides: boolean;
5
+ coordinateSpace?: ScreenCoordinateSpace;
6
+ canvasSize?: ScreenCanvasSize;
7
+ position: {
8
+ x: number;
9
+ y: number;
10
+ };
11
+ size: {
12
+ width: number;
13
+ height: number;
14
+ };
15
+ rotation: number;
16
+ pivot: [number, number];
17
+ renderOrder: number;
18
+ overlay: boolean;
19
+ visible: boolean;
20
+ };
21
+ export type ScreenTransformSectionProps = {
22
+ value: ScreenTransformSectionValue;
23
+ onChange: (next: ScreenTransformSectionValue) => void;
24
+ guideLabel: string;
25
+ copyLabel?: string;
26
+ copyValue?: unknown;
27
+ showRenderOrder?: boolean;
28
+ };
29
+ export declare const ScreenTransformSection: ({ value, onChange, guideLabel, copyLabel, copyValue, showRenderOrder, }: ScreenTransformSectionProps) => import("react/jsx-runtime").JSX.Element;