@mentra/sdk 2.1.30-beta.1 → 2.1.31-beta.2

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 (67) hide show
  1. package/dist/app/server/index.d.ts +2 -1
  2. package/dist/app/server/index.d.ts.map +1 -1
  3. package/dist/app/session/device-state.d.ts +83 -0
  4. package/dist/app/session/device-state.d.ts.map +1 -0
  5. package/dist/app/session/index.d.ts +21 -7
  6. package/dist/app/session/index.d.ts.map +1 -1
  7. package/dist/index.d.ts +6 -3
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +205 -9
  10. package/dist/index.js.map +12 -10
  11. package/dist/types/capabilities.d.ts +3 -90
  12. package/dist/types/capabilities.d.ts.map +1 -1
  13. package/dist/types/index.d.ts +1 -1
  14. package/dist/types/index.d.ts.map +1 -1
  15. package/dist/types/message-types.d.ts +3 -1
  16. package/dist/types/message-types.d.ts.map +1 -1
  17. package/dist/types/messages/app-to-cloud.d.ts +15 -1
  18. package/dist/types/messages/app-to-cloud.d.ts.map +1 -1
  19. package/dist/types/messages/cloud-to-app.d.ts +14 -1
  20. package/dist/types/messages/cloud-to-app.d.ts.map +1 -1
  21. package/dist/utils/Observable.d.ts +92 -0
  22. package/dist/utils/Observable.d.ts.map +1 -0
  23. package/node_modules/@mentra/types/README.md +134 -0
  24. package/node_modules/@mentra/types/dist/applet.d.ts +39 -0
  25. package/node_modules/@mentra/types/dist/applet.d.ts.map +1 -0
  26. package/node_modules/@mentra/types/dist/applet.js +5 -0
  27. package/node_modules/@mentra/types/dist/capabilities/even-realities-g1.d.ts +12 -0
  28. package/node_modules/@mentra/types/dist/capabilities/even-realities-g1.d.ts.map +1 -0
  29. package/node_modules/@mentra/types/dist/capabilities/even-realities-g1.js +54 -0
  30. package/node_modules/@mentra/types/dist/capabilities/mentra-live.d.ts +12 -0
  31. package/node_modules/@mentra/types/dist/capabilities/mentra-live.d.ts.map +1 -0
  32. package/node_modules/@mentra/types/dist/capabilities/mentra-live.js +94 -0
  33. package/node_modules/@mentra/types/dist/capabilities/simulated-glasses.d.ts +13 -0
  34. package/node_modules/@mentra/types/dist/capabilities/simulated-glasses.d.ts.map +1 -0
  35. package/node_modules/@mentra/types/dist/capabilities/simulated-glasses.js +67 -0
  36. package/node_modules/@mentra/types/dist/capabilities/vuzix-z100.d.ts +12 -0
  37. package/node_modules/@mentra/types/dist/capabilities/vuzix-z100.d.ts.map +1 -0
  38. package/node_modules/@mentra/types/dist/capabilities/vuzix-z100.js +51 -0
  39. package/node_modules/@mentra/types/dist/cli.d.ts +130 -0
  40. package/node_modules/@mentra/types/dist/cli.d.ts.map +1 -0
  41. package/node_modules/@mentra/types/dist/cli.js +7 -0
  42. package/node_modules/@mentra/types/dist/device.d.ts +32 -0
  43. package/node_modules/@mentra/types/dist/device.d.ts.map +1 -0
  44. package/node_modules/@mentra/types/dist/device.js +6 -0
  45. package/node_modules/@mentra/types/dist/enums.d.ts +34 -0
  46. package/node_modules/@mentra/types/dist/enums.d.ts.map +1 -0
  47. package/node_modules/@mentra/types/dist/enums.js +39 -0
  48. package/node_modules/@mentra/types/dist/hardware.d.ts +141 -0
  49. package/node_modules/@mentra/types/dist/hardware.d.ts.map +1 -0
  50. package/node_modules/@mentra/types/dist/hardware.js +33 -0
  51. package/node_modules/@mentra/types/dist/index.d.ts +18 -0
  52. package/node_modules/@mentra/types/dist/index.d.ts.map +1 -0
  53. package/node_modules/@mentra/types/dist/index.js +25 -0
  54. package/node_modules/@mentra/types/package.json +31 -0
  55. package/node_modules/@mentra/types/src/applet.ts +51 -0
  56. package/node_modules/@mentra/types/src/capabilities/even-realities-g1.ts +63 -0
  57. package/node_modules/@mentra/types/src/capabilities/mentra-live.ts +103 -0
  58. package/node_modules/@mentra/types/src/capabilities/simulated-glasses.ts +76 -0
  59. package/node_modules/@mentra/types/src/capabilities/vuzix-z100.ts +60 -0
  60. package/node_modules/@mentra/types/src/cli.ts +169 -0
  61. package/node_modules/@mentra/types/src/device.ts +43 -0
  62. package/node_modules/@mentra/types/src/enums.ts +36 -0
  63. package/node_modules/@mentra/types/src/hardware.ts +172 -0
  64. package/node_modules/@mentra/types/src/index.ts +64 -0
  65. package/node_modules/@mentra/types/tsconfig.json +22 -0
  66. package/node_modules/@mentra/types/tsconfig.tsbuildinfo +1 -0
  67. package/package.json +6 -3
@@ -0,0 +1,169 @@
1
+ /**
2
+ * CLI API Key Management Types
3
+ *
4
+ * Shared between cloud backend and CLI tool.
5
+ */
6
+
7
+ /**
8
+ * CLI API Key stored in database
9
+ */
10
+ export interface CLIApiKey {
11
+ /** Unique key identifier (UUID v4) */
12
+ keyId: string
13
+
14
+ /** User ID who owns this key (ObjectId as string) */
15
+ userId: string
16
+
17
+ /** User email (denormalized for backward compatibility) */
18
+ email: string
19
+
20
+ /** User-friendly name for the key */
21
+ name: string
22
+
23
+ /** SHA-256 hash of the JWT token (for revocation checks) */
24
+ hashedToken: string
25
+
26
+ /** When the key was created */
27
+ createdAt: Date
28
+
29
+ /** When the key was last updated */
30
+ updatedAt: Date
31
+
32
+ /** Last time this key was used (optional tracking) */
33
+ lastUsedAt?: Date
34
+
35
+ /** Optional expiration date */
36
+ expiresAt?: Date
37
+
38
+ /** Whether key is active (false = revoked) */
39
+ isActive: boolean
40
+
41
+ /** Optional metadata */
42
+ metadata?: {
43
+ createdFrom?: string
44
+ userAgent?: string
45
+ }
46
+ }
47
+
48
+ /**
49
+ * Request to generate a new CLI API key
50
+ */
51
+ export interface GenerateCLIKeyRequest {
52
+ /** User-friendly name for the key */
53
+ name: string
54
+
55
+ /** Optional expiration in days (default: never) */
56
+ expiresInDays?: number
57
+ }
58
+
59
+ /**
60
+ * Response when generating a CLI API key
61
+ * Token is shown ONCE and never retrievable
62
+ */
63
+ export interface GenerateCLIKeyResponse {
64
+ /** The CLI API key ID */
65
+ keyId: string
66
+
67
+ /** User-friendly name */
68
+ name: string
69
+
70
+ /** JWT token (ONLY shown once!) */
71
+ token: string
72
+
73
+ /** When it was created */
74
+ createdAt: string
75
+
76
+ /** Optional expiration date */
77
+ expiresAt?: string
78
+ }
79
+
80
+ /**
81
+ * CLI API Key list item (token not included)
82
+ */
83
+ export interface CLIApiKeyListItem {
84
+ /** Key identifier */
85
+ keyId: string
86
+
87
+ /** User-friendly name */
88
+ name: string
89
+
90
+ /** Creation timestamp */
91
+ createdAt: string
92
+
93
+ /** Last usage timestamp (if tracked) */
94
+ lastUsedAt?: string
95
+
96
+ /** Expiration timestamp */
97
+ expiresAt?: string
98
+
99
+ /** Whether key is active */
100
+ isActive: boolean
101
+ }
102
+
103
+ /**
104
+ * Request to update a CLI API key
105
+ */
106
+ export interface UpdateCLIKeyRequest {
107
+ /** New name for the key */
108
+ name: string
109
+ }
110
+
111
+ /**
112
+ * JWT payload for CLI API keys
113
+ */
114
+ export interface CLITokenPayload {
115
+ /** User email */
116
+ email: string
117
+
118
+ /** Token type discriminator */
119
+ type: "cli"
120
+
121
+ /** Key ID for revocation lookups */
122
+ keyId: string
123
+
124
+ /** User-friendly key name */
125
+ name: string
126
+
127
+ /** Issued at (Unix timestamp) */
128
+ iat: number
129
+
130
+ /** Optional expiration (Unix timestamp) */
131
+ exp?: number
132
+ }
133
+
134
+ /**
135
+ * CLI credentials stored locally on user's machine
136
+ */
137
+ export interface CLICredentials {
138
+ /** JWT token */
139
+ token: string
140
+
141
+ /** User email (extracted from token) */
142
+ email: string
143
+
144
+ /** Key name (extracted from token) */
145
+ keyName: string
146
+
147
+ /** Key ID (extracted from token) */
148
+ keyId: string
149
+
150
+ /** When credentials were stored */
151
+ storedAt: string
152
+
153
+ /** Optional expiration timestamp */
154
+ expiresAt?: string
155
+ }
156
+
157
+ /**
158
+ * Cloud environment configuration
159
+ */
160
+ export interface Cloud {
161
+ /** Display name */
162
+ name: string
163
+
164
+ /** API URL */
165
+ url: string
166
+
167
+ /** Whether this is a built-in cloud */
168
+ builtin?: boolean
169
+ }
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Device connection state and metadata types
3
+ * Used for POST /api/client/device/state
4
+ */
5
+
6
+ export interface GlassesInfo {
7
+ // Connection state
8
+ connected: boolean
9
+
10
+ // Device identification
11
+ modelName: string | null
12
+ androidVersion?: string
13
+ fwVersion?: string
14
+ buildNumber?: string
15
+ otaVersionUrl?: string
16
+ appVersion?: string
17
+ bluetoothName?: string
18
+ serialNumber?: string
19
+ style?: string
20
+ color?: string
21
+
22
+ // WiFi info (only for WiFi-capable devices)
23
+ wifiConnected?: boolean
24
+ wifiSsid?: string
25
+ wifiLocalIp?: string
26
+
27
+ // Battery info
28
+ batteryLevel?: number
29
+ charging?: boolean
30
+ caseBatteryLevel?: number
31
+ caseCharging?: boolean
32
+ caseOpen?: boolean
33
+ caseRemoved?: boolean
34
+
35
+ // Hotspot info
36
+ hotspotEnabled?: boolean
37
+ hotspotSsid?: string
38
+ hotspotPassword?: string
39
+ hotspotGatewayIp?: string
40
+
41
+ // Metadata
42
+ timestamp?: string
43
+ }
@@ -0,0 +1,36 @@
1
+ /**
2
+ * @mentra/types - Shared enums for MentraOS
3
+ * These are runtime values (not pure types)
4
+ */
5
+
6
+ /**
7
+ * Hardware component types that apps can require
8
+ */
9
+ export enum HardwareType {
10
+ CAMERA = "CAMERA",
11
+ DISPLAY = "DISPLAY",
12
+ MICROPHONE = "MICROPHONE",
13
+ SPEAKER = "SPEAKER",
14
+ IMU = "IMU",
15
+ BUTTON = "BUTTON",
16
+ LIGHT = "LIGHT",
17
+ WIFI = "WIFI",
18
+ }
19
+
20
+ /**
21
+ * Levels of hardware requirements
22
+ */
23
+ export enum HardwareRequirementLevel {
24
+ REQUIRED = "REQUIRED", // App cannot function without this hardware
25
+ OPTIONAL = "OPTIONAL", // App has enhanced features with this hardware
26
+ }
27
+
28
+ export enum DeviceTypes {
29
+ SIMULATED = "Simulated Glasses",
30
+ G1 = "Even Realities G1",
31
+ LIVE = "Mentra Live",
32
+ MACH1 = "Mentra Mach1",
33
+ Z100 = "Vuzix Z100",
34
+ NEX = "Mentra Nex",
35
+ FRAME = "Brilliant Frame",
36
+ }
@@ -0,0 +1,172 @@
1
+ /**
2
+ * @mentra/types - Hardware capability types
3
+ */
4
+
5
+ import { evenRealitiesG1 } from "./capabilities/even-realities-g1";
6
+ import { mentraLive } from "./capabilities/mentra-live";
7
+ import { simulatedGlasses } from "./capabilities/simulated-glasses";
8
+ import { vuzixZ100 } from "./capabilities/vuzix-z100";
9
+ import { DeviceTypes, HardwareRequirementLevel, HardwareType } from "./enums";
10
+
11
+ /**
12
+ * Hardware requirement for an app
13
+ * Specifies what hardware components an app needs
14
+ */
15
+ export interface HardwareRequirement {
16
+ type: HardwareType;
17
+ level: HardwareRequirementLevel;
18
+ description?: string; // Why this hardware is needed
19
+ }
20
+
21
+ /**
22
+ * Camera capabilities
23
+ */
24
+ export interface CameraCapabilities {
25
+ resolution?: { width: number; height: number };
26
+ hasHDR?: boolean;
27
+ hasFocus?: boolean;
28
+ video: {
29
+ canRecord: boolean;
30
+ canStream: boolean;
31
+ supportedStreamTypes?: string[];
32
+ supportedResolutions?: { width: number; height: number }[];
33
+ };
34
+ }
35
+
36
+ /**
37
+ * Display capabilities
38
+ */
39
+ export interface DisplayCapabilities {
40
+ count?: number;
41
+ isColor?: boolean;
42
+ color?: string; // e.g., "green", "full_color", "pallet"
43
+ canDisplayBitmap?: boolean;
44
+ resolution?: { width: number; height: number };
45
+ fieldOfView?: { horizontal?: number; vertical?: number };
46
+ maxTextLines?: number;
47
+ adjustBrightness?: boolean;
48
+ }
49
+
50
+ /**
51
+ * Microphone capabilities
52
+ */
53
+ export interface MicrophoneCapabilities {
54
+ count?: number;
55
+ hasVAD?: boolean; // Voice Activity Detection
56
+ }
57
+
58
+ /**
59
+ * Speaker capabilities
60
+ */
61
+ export interface SpeakerCapabilities {
62
+ count?: number;
63
+ isPrivate?: boolean; // e.g., bone conduction
64
+ }
65
+
66
+ /**
67
+ * IMU (Inertial Measurement Unit) capabilities
68
+ */
69
+ export interface IMUCapabilities {
70
+ axisCount?: number;
71
+ hasAccelerometer?: boolean;
72
+ hasCompass?: boolean;
73
+ hasGyroscope?: boolean;
74
+ }
75
+
76
+ /**
77
+ * Button capabilities
78
+ */
79
+ export interface ButtonCapabilities {
80
+ count?: number;
81
+ buttons?: {
82
+ type: "press" | "swipe1d" | "swipe2d";
83
+ events: string[]; // e.g., "press", "double_press", "long_press", "swipe_up", "swipe_down"
84
+ isCapacitive?: boolean;
85
+ }[];
86
+ }
87
+
88
+ /**
89
+ * Light capabilities
90
+ */
91
+ export interface LightCapabilities {
92
+ count?: number;
93
+ lights?: {
94
+ id: string; // Unique identifier for the LED (e.g., "privacy", "user_feedback")
95
+ purpose: "privacy" | "user_feedback" | "general"; // LED purpose/function
96
+ isFullColor: boolean;
97
+ color?: string; // e.g., "white", "rgb"
98
+ position?: "front_facing" | "user_facing" | "side" | "unknown"; // LED physical position
99
+ }[];
100
+ }
101
+
102
+ /**
103
+ * Power capabilities
104
+ */
105
+ export interface PowerCapabilities {
106
+ hasExternalBattery: boolean; // e.g., a case or puck
107
+ }
108
+
109
+ /**
110
+ * Device hardware capabilities
111
+ * Complete information about what hardware a device has
112
+ */
113
+ export interface Capabilities {
114
+ modelName: string;
115
+
116
+ // Camera capabilities
117
+ hasCamera: boolean;
118
+ camera: CameraCapabilities | null;
119
+
120
+ // Display capabilities
121
+ hasDisplay: boolean;
122
+ display: DisplayCapabilities | null;
123
+
124
+ // Microphone capabilities
125
+ hasMicrophone: boolean;
126
+ microphone: MicrophoneCapabilities | null;
127
+
128
+ // Speaker capabilities
129
+ hasSpeaker: boolean;
130
+ speaker: SpeakerCapabilities | null;
131
+
132
+ // IMU capabilities
133
+ hasIMU: boolean;
134
+ imu: IMUCapabilities | null;
135
+
136
+ // Button capabilities
137
+ hasButton: boolean;
138
+ button: ButtonCapabilities | null;
139
+
140
+ // Light capabilities
141
+ hasLight: boolean;
142
+ light: LightCapabilities | null;
143
+
144
+ // Power capabilities
145
+ power: PowerCapabilities;
146
+
147
+ // WiFi capability
148
+ hasWifi: boolean;
149
+ }
150
+
151
+ /**
152
+ * Hardware capability profiles for supported glasses models
153
+ * Key: model_name string (e.g., "Even Realities G1", "Mentra Live")
154
+ * Value: Capabilities object defining device features
155
+ */
156
+ export const HARDWARE_CAPABILITIES: Record<string, Capabilities> = {
157
+ [evenRealitiesG1.modelName]: evenRealitiesG1,
158
+ [mentraLive.modelName]: mentraLive,
159
+ [simulatedGlasses.modelName]: simulatedGlasses,
160
+ [vuzixZ100.modelName]: vuzixZ100,
161
+ };
162
+
163
+ export const getModelCapabilities = (deviceType: DeviceTypes): Capabilities => {
164
+ const modelName = deviceType as string;
165
+ if (!HARDWARE_CAPABILITIES[modelName]) {
166
+ return HARDWARE_CAPABILITIES[simulatedGlasses.modelName];
167
+ }
168
+ return HARDWARE_CAPABILITIES[modelName];
169
+ };
170
+
171
+ // export * from "./capabilities"
172
+ export { simulatedGlasses, evenRealitiesG1, mentraLive, vuzixZ100 };
@@ -0,0 +1,64 @@
1
+ /**
2
+ * @mentra/types - Shared types for MentraOS
3
+ *
4
+ * IMPORTANT: Uses explicit exports for Bun compatibility
5
+ * DO NOT use `export *` - Bun runtime can't handle type re-exports
6
+ * See: cloud/issues/todo/sdk-type-exports/README.md
7
+ *
8
+ * Pattern:
9
+ * - Enums (runtime values) → export { ... }
10
+ * - Types/Interfaces (compile-time only) → export type { ... }
11
+ */
12
+
13
+ // ============================================================================
14
+ // Enums (runtime values)
15
+ // ============================================================================
16
+
17
+ export {HardwareType, HardwareRequirementLevel, DeviceTypes} from "./enums"
18
+
19
+ // ============================================================================
20
+ // Hardware types (compile-time only)
21
+ // ============================================================================
22
+
23
+ export type {
24
+ HardwareRequirement,
25
+ CameraCapabilities,
26
+ DisplayCapabilities,
27
+ MicrophoneCapabilities,
28
+ SpeakerCapabilities,
29
+ IMUCapabilities,
30
+ ButtonCapabilities,
31
+ LightCapabilities,
32
+ PowerCapabilities,
33
+ Capabilities,
34
+ } from "./hardware"
35
+
36
+ // not a type:
37
+ export {HARDWARE_CAPABILITIES, getModelCapabilities} from "./hardware"
38
+
39
+ // ============================================================================
40
+ // Applet types (compile-time only)
41
+ // ============================================================================
42
+
43
+ export type {AppletType, AppPermissionType, AppletPermission, AppletInterface} from "./applet"
44
+
45
+ // ============================================================================
46
+ // CLI types (compile-time only)
47
+ // ============================================================================
48
+
49
+ export type {GlassesInfo} from "./device"
50
+
51
+ // ============================================================================
52
+ // CLI types (compile-time only)
53
+ // ============================================================================
54
+
55
+ export type {
56
+ CLIApiKey,
57
+ CLIApiKeyListItem,
58
+ GenerateCLIKeyRequest,
59
+ GenerateCLIKeyResponse,
60
+ UpdateCLIKeyRequest,
61
+ CLITokenPayload,
62
+ CLICredentials,
63
+ Cloud,
64
+ } from "./cli"
@@ -0,0 +1,22 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2020",
4
+ "module": "commonjs",
5
+ "lib": ["ES2020"],
6
+ "declaration": true,
7
+ "declarationMap": true,
8
+ "declarationDir": "./dist",
9
+ "outDir": "./dist",
10
+ "rootDir": "./src",
11
+ "strict": true,
12
+ "esModuleInterop": true,
13
+ "skipLibCheck": true,
14
+ "forceConsistentCasingInFileNames": true,
15
+ "moduleResolution": "node",
16
+ "resolveJsonModule": true,
17
+ "noEmit": false,
18
+ "composite": true
19
+ },
20
+ "include": ["src/**/*"],
21
+ "exclude": ["node_modules", "dist"]
22
+ }
@@ -0,0 +1 @@
1
+ {"fileNames":["../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/.bun/typescript@5.9.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","./src/capabilities/even-realities-g1.ts","./src/capabilities/mentra-live.ts","./src/capabilities/simulated-glasses.ts","./src/capabilities/vuzix-z100.ts","./src/enums.ts","./src/hardware.ts","./src/applet.ts","./src/cli.ts","./src/device.ts","./src/index.ts","../../node_modules/.bun/@types+react@18.2.79/node_modules/@types/react/global.d.ts","../../node_modules/.bun/csstype@3.2.3/node_modules/csstype/index.d.ts","../../node_modules/.bun/@types+prop-types@15.7.15/node_modules/@types/prop-types/index.d.ts","../../node_modules/.bun/@types+react@18.2.79/node_modules/@types/react/index.d.ts","../../node_modules/.bun/@types+react@19.2.7/node_modules/@types/react/global.d.ts","../../node_modules/.bun/@types+react@19.2.7/node_modules/@types/react/index.d.ts","../../node_modules/.bun/@types+react-dom@18.2.25/node_modules/@types/react-dom/index.d.ts","../../node_modules/.bun/@types+tz-lookup@6.1.2/node_modules/@types/tz-lookup/index.d.ts","../../../node_modules/@types/ms/index.d.ts","../../../node_modules/@types/debug/index.d.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/json5/index.d.ts","../../../node_modules/@types/unist/index.d.ts","../../../node_modules/@types/mdast/index.d.ts"],"fileIdsList":[[61],[56,57,58],[57,60],[51],[46,47,48,49,50],[50,51,52,53,54],[64],[69]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"d67195f30f76b7521ecbb77e1b9a98cd9eeee9c937d1ed882e47c383f7a1f4b5","signature":"b9dd0f91b6b0cde6962e4f81799f1e3b2c55e9aa1b2b47fc92314f44037b1bde"},{"version":"e0d097fec9014b40ce8ef525e314de397b3630b014b60b0af3320d8782ab8c7c","signature":"5c7c4c188e7ba7c4fcb5589b50e23c10f86c35b5a2833dee7b8eb369bd09e1db"},{"version":"0a71633c9b66719c060271d8b6b3e922f0d4bd5eee125ea6e0e7f74d559d2b5b","signature":"9c2245707b5a4625ceb38545538e2210ad2ee7389562899b550d8a494fe8700f"},{"version":"80d3bb563d675b14fc190a65397f18a9a5c7d2d64876824aee3356fa8a22267c","signature":"9653fef809fd6c1e1b88a1521ebb3c75914c1cfe9a7f188930f7d4cce435d872"},{"version":"29bf328f51478d9c60b4c6f2c75469dff49ba7017d7b5e0d2f3b0d3f6d32e5d3","signature":"e51cf13b442d59663f5403164fd8855ca1b8514de6bd46e9f5bc338c5c79ff16"},{"version":"8ff20b5c41f141725a61b63dda945fa9a850da91cd827524c38f53e378a74077","signature":"4b751d9630d7e7536899754d963f81cb26eeaca967873ec3e098e607de09bd9d"},{"version":"81cfd8ea57697fe945389c4e41fa2a0ca3995aa8ddd021f1de2f0e66b0046ac2","signature":"3c5ea14cd973eddad57b39b5d186a43b200045b5f4f336eb1286aaa70959fa6c"},{"version":"9e582a5ff5df8d1e01b9349eae87c25b8744a49f7456e442c3e85d244eca3880","signature":"0287c188bfd6835711045f418b2b240e734f61c4fb6ad0bcbe82a80749674aa3"},{"version":"6f2aa7f9f87d544a7e09f91c77a69986fd3f1340a3bec98f4c3d63e909003fc6","signature":"9dcad96a428d989d972d18d3c94e3453ba7121c00415b2e4ddbc0e3aed01c992"},{"version":"7f9849a8b683db0e69a4a8b87afde0f028f1dd4394e60aad7a68ea2a912f60fb","signature":"107d43eb843b630b80c6204d8377df820a9ad25c1e8d866b15ba064f137af2c8"},{"version":"55461596dc873b866911ef4e640fae4c39da7ac1fbc7ef5e649cb2f2fb42c349","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"87d9d29dbc745f182683f63187bf3d53fd8673e5fca38ad5eaab69798ed29fbc","impliedFormat":1},{"version":"8117d2726c78497306ceef07b4ccd08a863a9bd6e1fd7ff9ed6332f0e49bbb1a","affectsGlobalScope":true,"impliedFormat":1},{"version":"170d4db14678c68178ee8a3d5a990d5afb759ecb6ec44dbd885c50f6da6204f6","affectsGlobalScope":true,"impliedFormat":1},{"version":"5e76305d58bcdc924ff2bf14f6a9dc2aa5441ed06464b7e7bd039e611d66a89b","impliedFormat":1},{"version":"e077886219cf64381045928ab7d90a1b0d42c6236f73b76e37b4b2c546ab1850","impliedFormat":1},{"version":"c6b3ccefdd9f8fee237ba2b61ff60f237ce9ffdb336d696c516a403ba21956b0","impliedFormat":1},{"version":"fb893a0dfc3c9fb0f9ca93d0648694dd95f33cbad2c0f2c629f842981dfd4e2e","impliedFormat":1},{"version":"3eb11dbf3489064a47a2e1cf9d261b1f100ef0b3b50ffca6c44dd99d6dd81ac1","impliedFormat":1},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","impliedFormat":1},{"version":"89121c1bf2990f5219bfd802a3e7fc557de447c62058d6af68d6b6348d64499a","impliedFormat":1},{"version":"d4a22007b481fe2a2e6bfd3a42c00cd62d41edb36d30fc4697df2692e9891fc8","impliedFormat":1}],"root":[[46,55]],"options":{"composite":true,"declaration":true,"declarationDir":"./dist","declarationMap":true,"esModuleInterop":true,"module":1,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"strict":true,"target":7},"referencedMap":[[62,1],[59,2],[61,3],[52,4],[46,4],[47,4],[48,4],[49,4],[51,5],[55,6],[65,7],[70,8]],"latestChangedDtsFile":"./dist/index.d.ts","version":"5.9.3"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mentra/sdk",
3
- "version": "2.1.30-beta.1",
3
+ "version": "2.1.31-beta.2",
4
4
  "description": "Build apps for MentraOS smartglasses. This SDK provides everything you need to create real-time smartglasses applications.",
5
5
  "source": "src/index.ts",
6
6
  "main": "dist/index.js",
@@ -37,13 +37,14 @@
37
37
  "build:full": "bun run clean && bun run build:js && bun run build:types",
38
38
  "clean": "rm -rf dist",
39
39
  "build:js": "bun build src/index.ts src/display-utils.ts --outdir dist --target node --format esm --sourcemap=external --external @logtail/pino --external axios --external boxen --external chalk --external cookie-parser --external dotenv --external express --external jimp --external jsonwebtoken --external jsrsasign --external multer --external pino --external pino-pretty --external strip-ansi --external ws",
40
- "build:types": "bun x tsc --emitDeclarationOnly",
40
+ "build:types": "bun x tsc --build --force",
41
41
  "dev": "echo 'No build needed in dev mode - using source files directly'",
42
42
  "prepare": "bun run build",
43
43
  "link-pkg": "bun link"
44
44
  },
45
45
  "dependencies": {
46
46
  "@logtail/pino": "^0.5.4",
47
+ "@mentra/types": "1.0.0",
47
48
  "axios": "^1.8.1",
48
49
  "boxen": "^8.0.1",
49
50
  "chalk": "^5.6.2",
@@ -59,8 +60,10 @@
59
60
  "strip-ansi": "^7.1.2",
60
61
  "ws": "^8.18.2"
61
62
  },
63
+ "bundledDependencies": [
64
+ "@mentra/types"
65
+ ],
62
66
  "devDependencies": {
63
- "@mentra/types": "1.0.0",
64
67
  "@types/babel__core": "^7.20.5",
65
68
  "@types/express": "^4.17.17",
66
69
  "@types/jsonwebtoken": "^9.0.2",