ugly-app 0.1.623 → 0.1.625

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 (54) hide show
  1. package/dist/cli/version.d.ts +1 -1
  2. package/dist/cli/version.js +1 -1
  3. package/dist/native/contract-meta.d.ts.map +1 -1
  4. package/dist/native/contract-meta.js +14 -1
  5. package/dist/native/contract-meta.js.map +1 -1
  6. package/dist/native/contract.d.ts +84 -1
  7. package/dist/native/contract.d.ts.map +1 -1
  8. package/dist/native/contract.js.map +1 -1
  9. package/dist/native/facades/browser.d.ts +27 -0
  10. package/dist/native/facades/browser.d.ts.map +1 -0
  11. package/dist/native/facades/browser.js +13 -0
  12. package/dist/native/facades/browser.js.map +1 -0
  13. package/dist/native/facades/net.d.ts +8 -6
  14. package/dist/native/facades/net.d.ts.map +1 -1
  15. package/dist/native/facades/net.js +93 -11
  16. package/dist/native/facades/net.js.map +1 -1
  17. package/dist/native/facades/process.d.ts +15 -5
  18. package/dist/native/facades/process.d.ts.map +1 -1
  19. package/dist/native/facades/process.js +38 -9
  20. package/dist/native/facades/process.js.map +1 -1
  21. package/dist/native/facades/studio.d.ts +7 -11
  22. package/dist/native/facades/studio.d.ts.map +1 -1
  23. package/dist/native/facades/studio.js +23 -23
  24. package/dist/native/facades/studio.js.map +1 -1
  25. package/dist/native/index.d.ts +1 -0
  26. package/dist/native/index.d.ts.map +1 -1
  27. package/dist/native/install.js +6 -7
  28. package/dist/native/install.js.map +1 -1
  29. package/dist/native/protocol.d.ts +0 -5
  30. package/dist/native/protocol.d.ts.map +1 -1
  31. package/dist/native/wrapper.d.ts +1 -0
  32. package/dist/native/wrapper.d.ts.map +1 -1
  33. package/dist/native/wrapper.js +21 -13
  34. package/dist/native/wrapper.js.map +1 -1
  35. package/dist/search/server/WebRetriever.d.ts +13 -0
  36. package/dist/search/server/WebRetriever.d.ts.map +1 -1
  37. package/dist/search/server/WebRetriever.js +16 -2
  38. package/dist/search/server/WebRetriever.js.map +1 -1
  39. package/package.json +1 -1
  40. package/src/cli/version.ts +1 -1
  41. package/src/native/contract-meta.ts +14 -1
  42. package/src/native/contract.ts +18 -1
  43. package/src/native/facades/browser.ts +39 -0
  44. package/src/native/facades/facades.test.ts +42 -18
  45. package/src/native/facades/net.ts +95 -20
  46. package/src/native/facades/process.test.ts +48 -0
  47. package/src/native/facades/process.ts +49 -16
  48. package/src/native/facades/studio.ts +24 -33
  49. package/src/native/index.ts +1 -0
  50. package/src/native/install.test.ts +10 -15
  51. package/src/native/install.ts +6 -6
  52. package/src/native/protocol.ts +2 -7
  53. package/src/native/wrapper.ts +29 -21
  54. package/src/search/server/WebRetriever.ts +28 -2
@@ -1,2 +1,2 @@
1
- export declare const CLI_VERSION = "0.1.623";
1
+ export declare const CLI_VERSION = "0.1.625";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1,3 +1,3 @@
1
1
  // Auto-generated by prebuild — do not edit manually
2
- export const CLI_VERSION = "0.1.623";
2
+ export const CLI_VERSION = "0.1.625";
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract-meta.d.ts","sourceRoot":"","sources":["../../src/native/contract-meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAGxD,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,KAAK,CAAC;AAC7D,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D,eAAO,MAAM,UAAU,EAAE,SAAS,EAmBjC,CAAC;AAiFF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAA0B,CAAC;AAEpG,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAK1E"}
1
+ {"version":3,"file":"contract-meta.d.ts","sourceRoot":"","sources":["../../src/native/contract-meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAGxD,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,KAAK,CAAC;AAC7D,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D,eAAO,MAAM,UAAU,EAAE,SAAS,EAoBjC,CAAC;AA6FF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAA0B,CAAC;AAEpG,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAK1E"}
@@ -18,6 +18,7 @@ export const NAMESPACES = [
18
18
  'process',
19
19
  'permissions',
20
20
  'studio',
21
+ 'browser',
21
22
  ];
22
23
  // Per-namespace fallback profile when no explicit channel override applies.
23
24
  // Tuple order: [ios, android, desktop, web].
@@ -37,9 +38,10 @@ const NS_DEFAULT = {
37
38
  serve: ['native', 'native', 'native', 'throw'],
38
39
  workers: ['native', 'native', 'native', 'throw'],
39
40
  net: ['native', 'native', 'native', 'throw'],
40
- process: ['throw', 'throw', 'native', 'throw'],
41
+ process: ['native', 'native', 'native', 'throw'], // uniform API — mobile may implement it too
41
42
  permissions: ['native', 'native', 'native', 'native'],
42
43
  studio: ['native', 'native', 'native', 'throw'],
44
+ browser: ['throw', 'throw', 'native', 'throw'],
43
45
  };
44
46
  const PLATFORM_INDEX = { ios: 0, android: 1, desktop: 2, web: 3 };
45
47
  // All request/response channels (mirrors contract.ts channels; the test guards count).
@@ -76,6 +78,8 @@ const CHANNELS = [
76
78
  'fs.stat',
77
79
  'fs.exists',
78
80
  'fs.realpath',
81
+ 'fs.readFileBytes',
82
+ 'fs.writeFileBytes',
79
83
  'secrets.get',
80
84
  'secrets.set',
81
85
  'secrets.delete',
@@ -85,6 +89,15 @@ const CHANNELS = [
85
89
  'workers.register',
86
90
  'workers.unregister',
87
91
  'workers.list',
92
+ 'process.spawn',
93
+ 'process.write',
94
+ 'process.closeStdin',
95
+ 'process.kill',
96
+ 'net.connect',
97
+ 'net.listen',
98
+ 'net.write',
99
+ 'net.end',
100
+ 'net.close',
88
101
  ];
89
102
  function buildChannelFallback() {
90
103
  const out = {};
@@ -1 +1 @@
1
- {"version":3,"file":"contract-meta.js","sourceRoot":"","sources":["../../src/native/contract-meta.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract-meta.js","sourceRoot":"","sources":["../../src/native/contract-meta.ts"],"names":[],"mappings":"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"}
@@ -239,6 +239,21 @@ export interface NativeContract {
239
239
  path: string;
240
240
  };
241
241
  };
242
+ 'fs.readFileBytes': {
243
+ payload: {
244
+ path: string;
245
+ };
246
+ result: {
247
+ data: string;
248
+ };
249
+ };
250
+ 'fs.writeFileBytes': {
251
+ payload: {
252
+ path: string;
253
+ data: string;
254
+ };
255
+ result: void;
256
+ };
242
257
  'secrets.get': {
243
258
  payload: {
244
259
  key: string;
@@ -302,6 +317,74 @@ export interface NativeContract {
302
317
  ids: string[];
303
318
  };
304
319
  };
320
+ 'process.spawn': {
321
+ payload: {
322
+ cmd: string;
323
+ args: string[];
324
+ opts?: SpawnOpts;
325
+ };
326
+ result: {
327
+ id: string;
328
+ pid: number | null;
329
+ };
330
+ };
331
+ 'process.write': {
332
+ payload: {
333
+ id: string;
334
+ data: string;
335
+ };
336
+ result: void;
337
+ };
338
+ 'process.closeStdin': {
339
+ payload: {
340
+ id: string;
341
+ };
342
+ result: void;
343
+ };
344
+ 'process.kill': {
345
+ payload: {
346
+ id: string;
347
+ signal?: string;
348
+ };
349
+ result: void;
350
+ };
351
+ 'net.connect': {
352
+ payload: {
353
+ host: string;
354
+ port: number;
355
+ };
356
+ result: {
357
+ id: string;
358
+ };
359
+ };
360
+ 'net.listen': {
361
+ payload: {
362
+ port?: number;
363
+ };
364
+ result: {
365
+ id: string;
366
+ port: number;
367
+ };
368
+ };
369
+ 'net.write': {
370
+ payload: {
371
+ id: string;
372
+ data: string;
373
+ };
374
+ result: void;
375
+ };
376
+ 'net.end': {
377
+ payload: {
378
+ id: string;
379
+ };
380
+ result: void;
381
+ };
382
+ 'net.close': {
383
+ payload: {
384
+ id: string;
385
+ };
386
+ result: void;
387
+ };
305
388
  };
306
389
  events: {
307
390
  'gps.position': {
@@ -338,6 +421,6 @@ export type NativeEvent = keyof NativeContract['events'];
338
421
  export type PayloadOf<C extends Channel> = NativeContract['channels'][C]['payload'];
339
422
  export type ResultOf<C extends Channel> = NativeContract['channels'][C]['result'];
340
423
  export type DataOf<E extends NativeEvent> = NativeContract['events'][E];
341
- export type Namespace = 'capture' | 'gps' | 'liveActivity' | 'alarm' | 'tts' | 'push' | 'clipboard' | 'system' | 'badge' | 'ui' | 'fs' | 'secrets' | 'serve' | 'workers' | 'net' | 'process' | 'permissions' | 'studio';
424
+ export type Namespace = 'capture' | 'gps' | 'liveActivity' | 'alarm' | 'tts' | 'push' | 'clipboard' | 'system' | 'badge' | 'ui' | 'fs' | 'secrets' | 'serve' | 'workers' | 'net' | 'process' | 'permissions' | 'studio' | 'browser';
342
425
  export declare function namespaceOf(channel: Channel): Namespace;
343
426
  //# sourceMappingURL=contract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/native/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/native/contract.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/native/contract.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAiK/D,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAc,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/native/contract.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAkL/D,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAc,CAAC;AAC5C,CAAC"}
@@ -0,0 +1,27 @@
1
+ /** A tab in the Ugly Studio browser (one app per top-level tab). */
2
+ export interface BrowserTab {
3
+ id: number;
4
+ url: string;
5
+ title: string;
6
+ active: boolean;
7
+ canGoBack?: boolean;
8
+ }
9
+ /**
10
+ * `browser.*` — tab control for the Ugly Studio browser, over the uniform
11
+ * protocol (invoke for actions, subscribe for the tab set). Desktop implements
12
+ * it; other hosts reject. No UglyDesktop bridge.
13
+ */
14
+ export interface BrowserFacade {
15
+ newTab(url: string): Promise<number>;
16
+ navigate(id: number, url: string): Promise<void>;
17
+ switch(id: number): Promise<void>;
18
+ close(id: number): Promise<void>;
19
+ back(id: number): Promise<void>;
20
+ list(): Promise<BrowserTab[]>;
21
+ onTabs(cb: (tabs: BrowserTab[]) => void): () => void;
22
+ }
23
+ type Invoke = (channel: string, payload: unknown) => Promise<unknown>;
24
+ type Subscribe = (event: string, cb: (data: unknown) => void) => () => void;
25
+ export declare function createBrowserFacade(invoke: Invoke, subscribe: Subscribe): BrowserFacade;
26
+ export {};
27
+ //# sourceMappingURL=browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../src/native/facades/browser.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CACtD;AAED,KAAK,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AACtE,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;AAE5E,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,aAAa,CAWvF"}
@@ -0,0 +1,13 @@
1
+ export function createBrowserFacade(invoke, subscribe) {
2
+ const inv = (ch, p) => invoke(ch, p);
3
+ return {
4
+ newTab: (url) => inv('browser.newTab', { url }).then((r) => r.id),
5
+ navigate: (id, url) => inv('browser.navigate', { id, url }),
6
+ switch: (id) => inv('browser.switch', { id }),
7
+ close: (id) => inv('browser.close', { id }),
8
+ back: (id) => inv('browser.back', { id }),
9
+ list: () => inv('browser.list').then((r) => r.tabs),
10
+ onTabs: (cb) => subscribe('browser.tabs', (d) => cb(d.tabs)),
11
+ };
12
+ }
13
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/native/facades/browser.ts"],"names":[],"mappings":"AA2BA,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,SAAoB;IACtE,MAAM,GAAG,GAAG,CAAI,EAAU,EAAE,CAAW,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAe,CAAC;IACxE,OAAO;QACL,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAiB,gBAAgB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,QAAQ,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAO,kBAAkB,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;QACjE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAO,gBAAgB,EAAE,EAAE,EAAE,EAAE,CAAC;QACnD,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAO,eAAe,EAAE,EAAE,EAAE,EAAE,CAAC;QACjD,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAO,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC;QAC/C,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,CAAyB,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3E,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAE,CAA4B,CAAC,IAAI,CAAC,CAAC;KACzF,CAAC;AACJ,CAAC"}
@@ -1,4 +1,3 @@
1
- import type { Platform } from '../contract-meta.js';
2
1
  export interface UglySocket {
3
2
  onConnect(cb: () => void): void;
4
3
  onData(cb: (chunk: Uint8Array) => void): void;
@@ -13,14 +12,17 @@ export interface UglyServer {
13
12
  onConnection(cb: (s: UglySocket) => void): void;
14
13
  close(): void;
15
14
  }
16
- interface NetBridge {
17
- connect(host: string, port: number): UglySocket;
18
- listen(port?: number): Promise<UglyServer>;
19
- }
20
15
  export interface NetFacade {
21
16
  connect(host: string, port: number): UglySocket;
22
17
  listen(port?: number): Promise<UglyServer>;
23
18
  }
24
- export declare function createNetFacade(getBridge: () => NetBridge | undefined, platform: Platform, ensure: () => Promise<void>): NetFacade;
19
+ type Invoke = (channel: string, payload: unknown) => Promise<unknown>;
20
+ type Subscribe = (event: string, cb: (data: unknown) => void) => () => void;
21
+ /**
22
+ * `net` over the uniform protocol — no UglyDesktop. connect/listen return ids;
23
+ * data/connection/close/error arrive as id-keyed subscribe() events. Works on any
24
+ * host that implements invoke/subscribe.
25
+ */
26
+ export declare function createNetFacade(invoke: Invoke, subscribe: Subscribe, ensure: () => Promise<void>): NetFacade;
25
27
  export {};
26
28
  //# sourceMappingURL=net.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"net.d.ts","sourceRoot":"","sources":["../../../src/native/facades/net.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAChC,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI,CAAC;IAC9C,OAAO,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IACzC,KAAK,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAAC;IACvC,GAAG,IAAI,IAAI,CAAC;IACZ,KAAK,IAAI,IAAI,CAAC;CACf;AACD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI,CAAC;IAChD,KAAK,IAAI,IAAI,CAAC;CACf;AAED,UAAU,SAAS;IACjB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IAChD,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IAChD,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC5C;AAED,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,SAAS,GAAG,SAAS,EACtC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC1B,SAAS,CAiBX"}
1
+ {"version":3,"file":"net.d.ts","sourceRoot":"","sources":["../../../src/native/facades/net.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAChC,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI,CAAC;IAC9C,OAAO,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IACzC,KAAK,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAAC;IACvC,GAAG,IAAI,IAAI,CAAC;IACZ,KAAK,IAAI,IAAI,CAAC;CACf;AACD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI,CAAC;IAChD,KAAK,IAAI,IAAI,CAAC;CACf;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IAChD,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC5C;AAED,KAAK,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AACtE,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;AAiD5E;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAiD5G"}
@@ -1,21 +1,103 @@
1
- import { NativeUnavailableError } from '../protocol.js';
2
- export function createNetFacade(getBridge, platform, ensure) {
3
- const guard = () => {
4
- if (platform === 'web')
5
- throw new NativeUnavailableError('net.connect');
6
- const b = getBridge();
7
- if (!b)
8
- throw new NativeUnavailableError('net.connect');
1
+ // Arbitrary bytes survive invoke/event JSON as a binary string (one char per byte),
2
+ // matching the mobile id-stream convention.
3
+ function bytesToBinStr(b) {
4
+ if (typeof b === 'string')
9
5
  return b;
6
+ let s = '';
7
+ for (let i = 0; i < b.length; i++)
8
+ s += String.fromCharCode(b[i]);
9
+ return s;
10
+ }
11
+ function binStrToBytes(s) {
12
+ const out = new Uint8Array(s.length);
13
+ for (let i = 0; i < s.length; i++)
14
+ out[i] = s.charCodeAt(i) & 0xff;
15
+ return out;
16
+ }
17
+ /** Wire a socket's data/close/error (and optionally connect) streams by id, and
18
+ * return the client-side UglySocket whose write/end/close route through invoke. */
19
+ function buildSocket(invoke, subscribe, id, alreadyConnected) {
20
+ const cbs = {
21
+ connect: [],
22
+ data: [],
23
+ close: [],
24
+ error: [],
10
25
  };
26
+ const unsubs = [];
27
+ if (!alreadyConnected) {
28
+ unsubs.push(subscribe(`net.connect:${id}`, () => cbs.connect.forEach((cb) => cb())));
29
+ }
30
+ unsubs.push(subscribe(`net.data:${id}`, (d) => {
31
+ const bytes = binStrToBytes(d.data);
32
+ cbs.data.forEach((cb) => cb(bytes));
33
+ }));
34
+ unsubs.push(subscribe(`net.error:${id}`, (d) => cbs.error.forEach((cb) => cb(d.err))));
35
+ unsubs.push(subscribe(`net.close:${id}`, () => {
36
+ cbs.close.forEach((cb) => cb());
37
+ unsubs.forEach((u) => u());
38
+ }));
39
+ return {
40
+ onConnect: (cb) => cbs.connect.push(cb),
41
+ onData: (cb) => cbs.data.push(cb),
42
+ onClose: (cb) => cbs.close.push(cb),
43
+ onError: (cb) => cbs.error.push(cb),
44
+ write: (data) => void invoke('net.write', { id, data: bytesToBinStr(data) }),
45
+ end: () => void invoke('net.end', { id }),
46
+ close: () => void invoke('net.close', { id }),
47
+ };
48
+ }
49
+ /**
50
+ * `net` over the uniform protocol — no UglyDesktop. connect/listen return ids;
51
+ * data/connection/close/error arrive as id-keyed subscribe() events. Works on any
52
+ * host that implements invoke/subscribe.
53
+ */
54
+ export function createNetFacade(invoke, subscribe, ensure) {
11
55
  return {
12
56
  connect(host, port) {
13
57
  void ensure();
14
- return guard().connect(host, port);
58
+ const cbs = {
59
+ connect: [],
60
+ data: [],
61
+ close: [],
62
+ error: [],
63
+ };
64
+ const unsubs = [];
65
+ const ready = invoke('net.connect', { host, port }).then((r) => {
66
+ const id = r.id;
67
+ unsubs.push(subscribe(`net.connect:${id}`, () => cbs.connect.forEach((cb) => cb())));
68
+ unsubs.push(subscribe(`net.data:${id}`, (d) => cbs.data.forEach((cb) => cb(binStrToBytes(d.data)))));
69
+ unsubs.push(subscribe(`net.error:${id}`, (d) => cbs.error.forEach((cb) => cb(d.err))));
70
+ unsubs.push(subscribe(`net.close:${id}`, () => {
71
+ cbs.close.forEach((cb) => cb());
72
+ unsubs.forEach((u) => u());
73
+ }));
74
+ return id;
75
+ });
76
+ const withId = (fn) => void ready.then(fn).catch(() => { });
77
+ return {
78
+ onConnect: (cb) => cbs.connect.push(cb),
79
+ onData: (cb) => cbs.data.push(cb),
80
+ onClose: (cb) => cbs.close.push(cb),
81
+ onError: (cb) => cbs.error.push(cb),
82
+ write: (data) => withId((id) => void invoke('net.write', { id, data: bytesToBinStr(data) })),
83
+ end: () => withId((id) => void invoke('net.end', { id })),
84
+ close: () => withId((id) => void invoke('net.close', { id })),
85
+ };
15
86
  },
16
- listen(port) {
87
+ async listen(port) {
17
88
  void ensure();
18
- return guard().listen(port);
89
+ const r = (await invoke('net.listen', { port }));
90
+ const connCbs = [];
91
+ subscribe(`net.connection:${r.id}`, (d) => {
92
+ const socketId = d.socketId;
93
+ const sock = buildSocket(invoke, subscribe, socketId, true);
94
+ connCbs.forEach((cb) => cb(sock));
95
+ });
96
+ return {
97
+ port: r.port,
98
+ onConnection: (cb) => connCbs.push(cb),
99
+ close: () => void invoke('net.close', { id: r.id }),
100
+ };
19
101
  },
20
102
  };
21
103
  }
@@ -1 +1 @@
1
- {"version":3,"file":"net.js","sourceRoot":"","sources":["../../../src/native/facades/net.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AA4BxD,MAAM,UAAU,eAAe,CAC7B,SAAsC,EACtC,QAAkB,EAClB,MAA2B;IAE3B,MAAM,KAAK,GAAG,GAAc,EAAE;QAC5B,IAAI,QAAQ,KAAK,KAAK;YAAE,MAAM,IAAI,sBAAsB,CAAC,aAAa,CAAC,CAAC;QACxE,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,sBAAsB,CAAC,aAAa,CAAC,CAAC;QACxD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IACF,OAAO;QACL,OAAO,CAAC,IAAI,EAAE,IAAI;YAChB,KAAK,MAAM,EAAE,CAAC;YACd,OAAO,KAAK,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,CAAC;QACD,MAAM,CAAC,IAAI;YACT,KAAK,MAAM,EAAE,CAAC;YACd,OAAO,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"net.js","sourceRoot":"","sources":["../../../src/native/facades/net.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import type { Platform } from '../contract-meta.js';
2
1
  import type { SpawnOpts } from '../contract.js';
3
2
  export interface UglyProcess {
4
3
  onStdout(cb: (chunk: string) => void): void;
@@ -9,12 +8,23 @@ export interface UglyProcess {
9
8
  closeStdin(): void;
10
9
  kill(signal?: string): void;
11
10
  }
12
- interface ProcessBridge {
13
- spawn(cmd: string, args: string[], opts?: SpawnOpts): UglyProcess;
14
- }
15
11
  export interface ProcessFacade {
16
12
  spawn(cmd: string, args: string[], opts?: SpawnOpts): UglyProcess;
17
13
  }
18
- export declare function createProcessFacade(getBridge: () => ProcessBridge | undefined, platform: Platform, ensure: () => Promise<void>): ProcessFacade;
14
+ /** Raw (untyped-channel) transport the same `invoke`/`subscribe` every host
15
+ * implements. The id-stream channels/events below are dynamic (keyed by the id
16
+ * `spawn` returns), so they ride the uniform protocol rather than a desktop-only
17
+ * bridge object. Any platform that can spawn implements them; the rest reject. */
18
+ type Invoke = (channel: string, payload: unknown) => Promise<unknown>;
19
+ type Subscribe = (event: string, cb: (data: unknown) => void) => () => void;
20
+ /**
21
+ * Build a `process` facade over the uniform UglyNative protocol:
22
+ * spawn → invoke('process.spawn') → { id, pid }
23
+ * stdout → subscribe('process.stdout:'+id) (also stderr/exit/error)
24
+ * write/closeStdin/kill → invoke('process.{write,closeStdin,kill}', { id, … })
25
+ * The `UglyProcess` is assembled client-side, so it works identically on desktop
26
+ * and mobile — no `window.UglyDesktop`, no platform gating in the wrapper.
27
+ */
28
+ export declare function createProcessFacade(invoke: Invoke, subscribe: Subscribe, ensure: () => Promise<void>): ProcessFacade;
19
29
  export {};
20
30
  //# sourceMappingURL=process.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../../src/native/facades/process.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAC5C,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC;IAChD,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IACzC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,IAAI,IAAI,CAAC;IACnB,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,UAAU,aAAa;IACrB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;CACnE;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;CACnE;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,aAAa,GAAG,SAAS,EAC1C,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC1B,aAAa,CAUf"}
1
+ {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../../src/native/facades/process.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAC5C,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAAC;IAChD,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IACzC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,IAAI,IAAI,CAAC;IACnB,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;CACnE;AAED;;;mFAGmF;AACnF,KAAK,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AACtE,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;AAE5E;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,aAAa,CAsCpH"}
@@ -1,14 +1,43 @@
1
- import { NativeUnavailableError } from '../protocol.js';
2
- export function createProcessFacade(getBridge, platform, ensure) {
1
+ /**
2
+ * Build a `process` facade over the uniform UglyNative protocol:
3
+ * spawn → invoke('process.spawn') → { id, pid }
4
+ * stdout → subscribe('process.stdout:'+id) (also stderr/exit/error)
5
+ * write/closeStdin/kill → invoke('process.{write,closeStdin,kill}', { id, … })
6
+ * The `UglyProcess` is assembled client-side, so it works identically on desktop
7
+ * and mobile — no `window.UglyDesktop`, no platform gating in the wrapper.
8
+ */
9
+ export function createProcessFacade(invoke, subscribe, ensure) {
3
10
  return {
4
11
  spawn(cmd, args, opts) {
5
- if (platform !== 'desktop')
6
- throw new NativeUnavailableError('process.spawn');
7
- void ensure(); // fire the permission check; the desktop daemon also enforces
8
- const bridge = getBridge();
9
- if (!bridge)
10
- throw new NativeUnavailableError('process.spawn');
11
- return bridge.spawn(cmd, args, opts);
12
+ void ensure(); // fire the permission check; the host daemon also enforces
13
+ const cbs = {
14
+ stdout: [],
15
+ stderr: [],
16
+ exit: [],
17
+ error: [],
18
+ };
19
+ const unsubs = [];
20
+ const ready = invoke('process.spawn', { cmd, args, opts }).then((r) => {
21
+ const id = r.id;
22
+ unsubs.push(subscribe(`process.stdout:${id}`, (d) => cbs.stdout.forEach((cb) => cb(d.chunk))));
23
+ unsubs.push(subscribe(`process.stderr:${id}`, (d) => cbs.stderr.forEach((cb) => cb(d.chunk))));
24
+ unsubs.push(subscribe(`process.error:${id}`, (d) => cbs.error.forEach((cb) => cb(d.err))));
25
+ unsubs.push(subscribe(`process.exit:${id}`, (d) => {
26
+ cbs.exit.forEach((cb) => cb(d.code));
27
+ unsubs.forEach((u) => u());
28
+ }));
29
+ return id;
30
+ });
31
+ const withId = (fn) => void ready.then(fn).catch(() => { });
32
+ return {
33
+ onStdout: (cb) => cbs.stdout.push(cb),
34
+ onStderr: (cb) => cbs.stderr.push(cb),
35
+ onExit: (cb) => cbs.exit.push(cb),
36
+ onError: (cb) => cbs.error.push(cb),
37
+ write: (data) => withId((id) => void invoke('process.write', { id, data })),
38
+ closeStdin: () => withId((id) => void invoke('process.closeStdin', { id })),
39
+ kill: (signal) => withId((id) => void invoke('process.kill', { id, signal })),
40
+ };
12
41
  },
13
42
  };
14
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"process.js","sourceRoot":"","sources":["../../../src/native/facades/process.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAsBxD,MAAM,UAAU,mBAAmB,CACjC,SAA0C,EAC1C,QAAkB,EAClB,MAA2B;IAE3B,OAAO;QACL,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI;YACnB,IAAI,QAAQ,KAAK,SAAS;gBAAE,MAAM,IAAI,sBAAsB,CAAC,eAAe,CAAC,CAAC;YAC9E,KAAK,MAAM,EAAE,CAAC,CAAC,8DAA8D;YAC7E,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,sBAAsB,CAAC,eAAe,CAAC,CAAC;YAC/D,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACvC,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"process.js","sourceRoot":"","sources":["../../../src/native/facades/process.ts"],"names":[],"mappings":"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"}
@@ -32,16 +32,12 @@ export interface StudioFacade {
32
32
  };
33
33
  openProjectInNewWindow(path: string): Promise<void>;
34
34
  }
35
- type StudioBridge = Partial<{
36
- window: StudioFacade['window'];
37
- fullscreen: StudioFacade['fullscreen'];
38
- zoom: StudioFacade['zoom'];
39
- update: StudioFacade['update'];
40
- dialog: StudioFacade['dialog'];
41
- revealInFolder: (p: string) => Promise<void>;
42
- getAppVersion: () => Promise<string>;
43
- openProjectInNewWindow: (p: string) => Promise<void>;
44
- }>;
45
- export declare function createStudioFacade(getBridge: () => StudioBridge | undefined, platform: Platform): StudioFacade;
35
+ type Invoke = (channel: string, payload: unknown) => Promise<unknown>;
36
+ /**
37
+ * `studio.*` over the uniform protocol — each method is an invoke channel (no
38
+ * UglyDesktop / electronAPI bridge). Desktop implements them; other hosts reject
39
+ * via the host's web/native fallback (studio is desktop-class chrome).
40
+ */
41
+ export declare function createStudioFacade(invoke: Invoke, platform: Platform): StudioFacade;
46
42
  export {};
47
43
  //# sourceMappingURL=studio.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"studio.d.ts","sourceRoot":"","sources":["../../../src/native/facades/studio.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE;QACN,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1B,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;KACjC,CAAC;IACF,UAAU,EAAE;QAAE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;QAAC,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC;IACnE,IAAI,EAAE;QAAE,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;QAAC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,CAAC;IACpE,MAAM,EAAE;QACN,KAAK,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;QAC/B,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;QAClC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,SAAS,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;KACpC,CAAC;IACF,MAAM,EAAE;QAAE,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;KAAE,CAAC;IACpD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,GAAG,EAAE;QAAE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;QAAC,QAAQ,IAAI,cAAc,CAAA;KAAE,CAAC;IAChE,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD;AAED,KAAK,YAAY,GAAG,OAAO,CAAC;IAC1B,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/B,UAAU,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;IACvC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/B,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/B,cAAc,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,aAAa,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,sBAAsB,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtD,CAAC,CAAC;AAEH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,YAAY,GAAG,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,YAAY,CAmC9G"}
1
+ {"version":3,"file":"studio.d.ts","sourceRoot":"","sources":["../../../src/native/facades/studio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE;QACN,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1B,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;KACjC,CAAC;IACF,UAAU,EAAE;QAAE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;QAAC,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC;IACnE,IAAI,EAAE;QAAE,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;QAAC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,CAAC;IACpE,MAAM,EAAE;QACN,KAAK,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;QAC/B,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;QAClC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,SAAS,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;KACpC,CAAC;IACF,MAAM,EAAE;QAAE,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;KAAE,CAAC;IACpD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,GAAG,EAAE;QAAE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;QAAC,QAAQ,IAAI,cAAc,CAAA;KAAE,CAAC;IAChE,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD;AAED,KAAK,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtE;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,YAAY,CA+BnF"}