@motrix/mdxp 0.1.0

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 (103) hide show
  1. package/LICENSE +9 -0
  2. package/README.md +103 -0
  3. package/dist/browser.d.ts +3 -0
  4. package/dist/browser.d.ts.map +1 -0
  5. package/dist/browser.js +14 -0
  6. package/dist/browser.js.map +1 -0
  7. package/dist/connection.d.ts +50 -0
  8. package/dist/connection.d.ts.map +1 -0
  9. package/dist/connection.js +38 -0
  10. package/dist/connection.js.map +1 -0
  11. package/dist/errors.d.ts +33 -0
  12. package/dist/errors.d.ts.map +1 -0
  13. package/dist/errors.js +34 -0
  14. package/dist/errors.js.map +1 -0
  15. package/dist/index.d.ts +11 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/index.js +10 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/methods.d.ts +28 -0
  20. package/dist/methods.d.ts.map +1 -0
  21. package/dist/methods.js +32 -0
  22. package/dist/methods.js.map +1 -0
  23. package/dist/node.d.ts +3 -0
  24. package/dist/node.d.ts.map +1 -0
  25. package/dist/node.js +15 -0
  26. package/dist/node.js.map +1 -0
  27. package/dist/schemas/download-add.d.ts +72 -0
  28. package/dist/schemas/download-add.d.ts.map +1 -0
  29. package/dist/schemas/download-add.js +49 -0
  30. package/dist/schemas/download-add.js.map +1 -0
  31. package/dist/schemas/download.d.ts +156 -0
  32. package/dist/schemas/download.d.ts.map +1 -0
  33. package/dist/schemas/download.js +34 -0
  34. package/dist/schemas/download.js.map +1 -0
  35. package/dist/schemas/engine.d.ts +41 -0
  36. package/dist/schemas/engine.d.ts.map +1 -0
  37. package/dist/schemas/engine.js +24 -0
  38. package/dist/schemas/engine.js.map +1 -0
  39. package/dist/schemas/events.d.ts +36 -0
  40. package/dist/schemas/events.d.ts.map +1 -0
  41. package/dist/schemas/events.js +26 -0
  42. package/dist/schemas/events.js.map +1 -0
  43. package/dist/schemas/index.d.ts +12 -0
  44. package/dist/schemas/index.d.ts.map +1 -0
  45. package/dist/schemas/index.js +12 -0
  46. package/dist/schemas/index.js.map +1 -0
  47. package/dist/schemas/initialize.d.ts +70 -0
  48. package/dist/schemas/initialize.d.ts.map +1 -0
  49. package/dist/schemas/initialize.js +72 -0
  50. package/dist/schemas/initialize.js.map +1 -0
  51. package/dist/schemas/resource.d.ts +39 -0
  52. package/dist/schemas/resource.d.ts.map +1 -0
  53. package/dist/schemas/resource.js +21 -0
  54. package/dist/schemas/resource.js.map +1 -0
  55. package/dist/schemas/selection.d.ts +129 -0
  56. package/dist/schemas/selection.d.ts.map +1 -0
  57. package/dist/schemas/selection.js +30 -0
  58. package/dist/schemas/selection.js.map +1 -0
  59. package/dist/schemas/stats.d.ts +18 -0
  60. package/dist/schemas/stats.d.ts.map +1 -0
  61. package/dist/schemas/stats.js +14 -0
  62. package/dist/schemas/stats.js.map +1 -0
  63. package/dist/schemas/system.d.ts +11 -0
  64. package/dist/schemas/system.d.ts.map +1 -0
  65. package/dist/schemas/system.js +9 -0
  66. package/dist/schemas/system.js.map +1 -0
  67. package/dist/schemas/task.d.ts +202 -0
  68. package/dist/schemas/task.d.ts.map +1 -0
  69. package/dist/schemas/task.js +90 -0
  70. package/dist/schemas/task.js.map +1 -0
  71. package/dist/schemas/url.d.ts +162 -0
  72. package/dist/schemas/url.d.ts.map +1 -0
  73. package/dist/schemas/url.js +73 -0
  74. package/dist/schemas/url.js.map +1 -0
  75. package/dist/tools.d.ts +35 -0
  76. package/dist/tools.d.ts.map +1 -0
  77. package/dist/tools.js +124 -0
  78. package/dist/tools.js.map +1 -0
  79. package/dist/types.d.ts +12 -0
  80. package/dist/types.d.ts.map +1 -0
  81. package/dist/types.js +2 -0
  82. package/dist/types.js.map +1 -0
  83. package/package.json +73 -0
  84. package/src/browser.ts +14 -0
  85. package/src/connection.ts +162 -0
  86. package/src/errors.ts +60 -0
  87. package/src/index.ts +31 -0
  88. package/src/methods.ts +36 -0
  89. package/src/node.ts +15 -0
  90. package/src/schemas/download-add.ts +55 -0
  91. package/src/schemas/download.ts +42 -0
  92. package/src/schemas/engine.ts +32 -0
  93. package/src/schemas/events.ts +36 -0
  94. package/src/schemas/index.ts +11 -0
  95. package/src/schemas/initialize.ts +88 -0
  96. package/src/schemas/resource.ts +26 -0
  97. package/src/schemas/selection.ts +32 -0
  98. package/src/schemas/stats.ts +20 -0
  99. package/src/schemas/system.ts +13 -0
  100. package/src/schemas/task.ts +113 -0
  101. package/src/schemas/url.ts +86 -0
  102. package/src/tools.ts +175 -0
  103. package/src/types.ts +63 -0
@@ -0,0 +1,156 @@
1
+ import { z } from 'zod';
2
+ export declare const DownloadSubmitParamsSchema: z.ZodObject<{
3
+ source: z.ZodObject<{
4
+ pageUrl: z.ZodString;
5
+ pageTitle: z.ZodString;
6
+ detectedAt: z.ZodNumber;
7
+ siteHint: z.ZodOptional<z.ZodString>;
8
+ }, z.core.$strip>;
9
+ selection: z.ZodDiscriminatedUnion<[z.ZodObject<{
10
+ kind: z.ZodLiteral<"direct">;
11
+ primary: z.ZodObject<{
12
+ url: z.ZodURL;
13
+ headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
14
+ cookies: z.ZodDefault<z.ZodArray<z.ZodObject<{
15
+ name: z.ZodString;
16
+ value: z.ZodString;
17
+ domain: z.ZodString;
18
+ path: z.ZodDefault<z.ZodString>;
19
+ secure: z.ZodDefault<z.ZodBoolean>;
20
+ httpOnly: z.ZodDefault<z.ZodBoolean>;
21
+ sameSite: z.ZodDefault<z.ZodEnum<{
22
+ strict: "strict";
23
+ lax: "lax";
24
+ none: "none";
25
+ unspecified: "unspecified";
26
+ }>>;
27
+ expiresAt: z.ZodOptional<z.ZodNumber>;
28
+ }, z.core.$strip>>>;
29
+ refererPolicy: z.ZodDefault<z.ZodString>;
30
+ }, z.core.$strip>;
31
+ container: z.ZodOptional<z.ZodString>;
32
+ }, z.core.$strip>, z.ZodObject<{
33
+ kind: z.ZodLiteral<"hls">;
34
+ primary: z.ZodObject<{
35
+ url: z.ZodURL;
36
+ headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
37
+ cookies: z.ZodDefault<z.ZodArray<z.ZodObject<{
38
+ name: z.ZodString;
39
+ value: z.ZodString;
40
+ domain: z.ZodString;
41
+ path: z.ZodDefault<z.ZodString>;
42
+ secure: z.ZodDefault<z.ZodBoolean>;
43
+ httpOnly: z.ZodDefault<z.ZodBoolean>;
44
+ sameSite: z.ZodDefault<z.ZodEnum<{
45
+ strict: "strict";
46
+ lax: "lax";
47
+ none: "none";
48
+ unspecified: "unspecified";
49
+ }>>;
50
+ expiresAt: z.ZodOptional<z.ZodNumber>;
51
+ }, z.core.$strip>>>;
52
+ refererPolicy: z.ZodDefault<z.ZodString>;
53
+ }, z.core.$strip>;
54
+ container: z.ZodDefault<z.ZodEnum<{
55
+ mp4: "mp4";
56
+ mkv: "mkv";
57
+ ts: "ts";
58
+ }>>;
59
+ }, z.core.$strip>, z.ZodObject<{
60
+ kind: z.ZodLiteral<"dash">;
61
+ primary: z.ZodObject<{
62
+ url: z.ZodURL;
63
+ headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
64
+ cookies: z.ZodDefault<z.ZodArray<z.ZodObject<{
65
+ name: z.ZodString;
66
+ value: z.ZodString;
67
+ domain: z.ZodString;
68
+ path: z.ZodDefault<z.ZodString>;
69
+ secure: z.ZodDefault<z.ZodBoolean>;
70
+ httpOnly: z.ZodDefault<z.ZodBoolean>;
71
+ sameSite: z.ZodDefault<z.ZodEnum<{
72
+ strict: "strict";
73
+ lax: "lax";
74
+ none: "none";
75
+ unspecified: "unspecified";
76
+ }>>;
77
+ expiresAt: z.ZodOptional<z.ZodNumber>;
78
+ }, z.core.$strip>>>;
79
+ refererPolicy: z.ZodDefault<z.ZodString>;
80
+ }, z.core.$strip>;
81
+ container: z.ZodDefault<z.ZodEnum<{
82
+ mp4: "mp4";
83
+ mkv: "mkv";
84
+ }>>;
85
+ }, z.core.$strip>, z.ZodObject<{
86
+ kind: z.ZodLiteral<"mux">;
87
+ video: z.ZodObject<{
88
+ url: z.ZodURL;
89
+ headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
90
+ cookies: z.ZodDefault<z.ZodArray<z.ZodObject<{
91
+ name: z.ZodString;
92
+ value: z.ZodString;
93
+ domain: z.ZodString;
94
+ path: z.ZodDefault<z.ZodString>;
95
+ secure: z.ZodDefault<z.ZodBoolean>;
96
+ httpOnly: z.ZodDefault<z.ZodBoolean>;
97
+ sameSite: z.ZodDefault<z.ZodEnum<{
98
+ strict: "strict";
99
+ lax: "lax";
100
+ none: "none";
101
+ unspecified: "unspecified";
102
+ }>>;
103
+ expiresAt: z.ZodOptional<z.ZodNumber>;
104
+ }, z.core.$strip>>>;
105
+ refererPolicy: z.ZodDefault<z.ZodString>;
106
+ }, z.core.$strip>;
107
+ audio: z.ZodObject<{
108
+ url: z.ZodURL;
109
+ headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
110
+ cookies: z.ZodDefault<z.ZodArray<z.ZodObject<{
111
+ name: z.ZodString;
112
+ value: z.ZodString;
113
+ domain: z.ZodString;
114
+ path: z.ZodDefault<z.ZodString>;
115
+ secure: z.ZodDefault<z.ZodBoolean>;
116
+ httpOnly: z.ZodDefault<z.ZodBoolean>;
117
+ sameSite: z.ZodDefault<z.ZodEnum<{
118
+ strict: "strict";
119
+ lax: "lax";
120
+ none: "none";
121
+ unspecified: "unspecified";
122
+ }>>;
123
+ expiresAt: z.ZodOptional<z.ZodNumber>;
124
+ }, z.core.$strip>>>;
125
+ refererPolicy: z.ZodDefault<z.ZodString>;
126
+ }, z.core.$strip>;
127
+ container: z.ZodDefault<z.ZodEnum<{
128
+ mp4: "mp4";
129
+ mkv: "mkv";
130
+ }>>;
131
+ }, z.core.$strip>, z.ZodObject<{
132
+ kind: z.ZodLiteral<"magnet">;
133
+ uri: z.ZodString;
134
+ }, z.core.$strip>], "kind">;
135
+ meta: z.ZodObject<{
136
+ suggestedFilename: z.ZodString;
137
+ qualityLabel: z.ZodString;
138
+ estimatedBytes: z.ZodOptional<z.ZodNumber>;
139
+ durationSec: z.ZodOptional<z.ZodNumber>;
140
+ }, z.core.$strip>;
141
+ idempotencyKey: z.ZodOptional<z.ZodString>;
142
+ }, z.core.$strip>;
143
+ export declare const DownloadSubmitResultSchema: z.ZodObject<{
144
+ taskId: z.ZodString;
145
+ }, z.core.$strip>;
146
+ export declare const DownloadCancelParamsSchema: z.ZodObject<{
147
+ taskId: z.ZodString;
148
+ }, z.core.$strip>;
149
+ export declare const DownloadCancelResultSchema: z.ZodObject<{
150
+ ok: z.ZodLiteral<true>;
151
+ }, z.core.$strip>;
152
+ export type DownloadSubmitParams = z.infer<typeof DownloadSubmitParamsSchema>;
153
+ export type DownloadSubmitResult = z.infer<typeof DownloadSubmitResultSchema>;
154
+ export type DownloadCancelParams = z.infer<typeof DownloadCancelParamsSchema>;
155
+ export type DownloadCancelResult = z.infer<typeof DownloadCancelResultSchema>;
156
+ //# sourceMappingURL=download.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../src/schemas/download.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqBrC,CAAA;AAEF,eAAO,MAAM,0BAA0B;;iBAErC,CAAA;AAEF,eAAO,MAAM,0BAA0B;;iBAErC,CAAA;AAEF,eAAO,MAAM,0BAA0B;;iBAErC,CAAA;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAC7E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAC7E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAC7E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA"}
@@ -0,0 +1,34 @@
1
+ import { z } from 'zod';
2
+ import { SelectionSchema } from './selection.js';
3
+ export const DownloadSubmitParamsSchema = z.object({
4
+ source: z.object({
5
+ pageUrl: z.string().url(),
6
+ pageTitle: z.string().max(500),
7
+ detectedAt: z.number(),
8
+ siteHint: z.string().max(64).optional(),
9
+ }),
10
+ selection: SelectionSchema,
11
+ meta: z.object({
12
+ suggestedFilename: z.string().max(255),
13
+ qualityLabel: z.string().max(64),
14
+ estimatedBytes: z.number().nonnegative().optional(),
15
+ durationSec: z.number().nonnegative().optional(),
16
+ }),
17
+ /**
18
+ * Client-generated key identifying ONE logical submit. Motrix dedups on
19
+ * (session, key): a retransmit of the same submission — lost response,
20
+ * reconnect replay — returns the original task instead of creating a
21
+ * duplicate. Optional for backward compatibility.
22
+ */
23
+ idempotencyKey: z.string().min(8).max(128).optional(),
24
+ });
25
+ export const DownloadSubmitResultSchema = z.object({
26
+ taskId: z.string().min(1),
27
+ });
28
+ export const DownloadCancelParamsSchema = z.object({
29
+ taskId: z.string().min(1),
30
+ });
31
+ export const DownloadCancelResultSchema = z.object({
32
+ ok: z.literal(true),
33
+ });
34
+ //# sourceMappingURL=download.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"download.js","sourceRoot":"","sources":["../../src/schemas/download.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAEhD,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;QAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;KACxC,CAAC;IACF,SAAS,EAAE,eAAe;IAC1B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACb,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;QACtC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;QAChC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;QACnD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;KACjD,CAAC;IACF;;;;;OAKG;IACH,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CACtD,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CACpB,CAAC,CAAA"}
@@ -0,0 +1,41 @@
1
+ import { z } from 'zod';
2
+ export declare const EngineStateSchema: z.ZodEnum<{
3
+ stopped: "stopped";
4
+ starting: "starting";
5
+ ready: "ready";
6
+ restarting: "restarting";
7
+ failed: "failed";
8
+ }>;
9
+ /** Capability-discovery info; all fields are external-safe. `features` is the
10
+ * raw engine feature-string list (e.g. contains 'SQLite3-Persistence'). */
11
+ export declare const EngineFeatureReportSchema: z.ZodObject<{
12
+ version: z.ZodString;
13
+ features: z.ZodArray<z.ZodString>;
14
+ hasBtSeedUnverified: z.ZodBoolean;
15
+ hasBtSaveMetadata: z.ZodBoolean;
16
+ hasMoveStorage: z.ZodBoolean;
17
+ hasSqlitePersistence: z.ZodBoolean;
18
+ }, z.core.$strip>;
19
+ export declare const EngineStatusParamsSchema: z.ZodObject<{}, z.core.$strict>;
20
+ export declare const EngineStatusResultSchema: z.ZodObject<{
21
+ state: z.ZodEnum<{
22
+ stopped: "stopped";
23
+ starting: "starting";
24
+ ready: "ready";
25
+ restarting: "restarting";
26
+ failed: "failed";
27
+ }>;
28
+ featureReport: z.ZodNullable<z.ZodObject<{
29
+ version: z.ZodString;
30
+ features: z.ZodArray<z.ZodString>;
31
+ hasBtSeedUnverified: z.ZodBoolean;
32
+ hasBtSaveMetadata: z.ZodBoolean;
33
+ hasMoveStorage: z.ZodBoolean;
34
+ hasSqlitePersistence: z.ZodBoolean;
35
+ }, z.core.$strip>>;
36
+ }, z.core.$strip>;
37
+ export type EngineState = z.infer<typeof EngineStateSchema>;
38
+ export type EngineFeatureReport = z.infer<typeof EngineFeatureReportSchema>;
39
+ export type EngineStatusParams = z.infer<typeof EngineStatusParamsSchema>;
40
+ export type EngineStatusResult = z.infer<typeof EngineStatusResultSchema>;
41
+ //# sourceMappingURL=engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/schemas/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,iBAAiB;;;;;;EAM5B,CAAA;AAEF;4EAC4E;AAC5E,eAAO,MAAM,yBAAyB;;;;;;;iBAOpC,CAAA;AAEF,eAAO,MAAM,wBAAwB,iCAAqB,CAAA;AAE1D,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;iBAGnC,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAC3D,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAC3E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AACzE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA"}
@@ -0,0 +1,24 @@
1
+ import { z } from 'zod';
2
+ export const EngineStateSchema = z.enum([
3
+ 'stopped',
4
+ 'starting',
5
+ 'ready',
6
+ 'restarting',
7
+ 'failed',
8
+ ]);
9
+ /** Capability-discovery info; all fields are external-safe. `features` is the
10
+ * raw engine feature-string list (e.g. contains 'SQLite3-Persistence'). */
11
+ export const EngineFeatureReportSchema = z.object({
12
+ version: z.string(),
13
+ features: z.array(z.string()),
14
+ hasBtSeedUnverified: z.boolean(),
15
+ hasBtSaveMetadata: z.boolean(),
16
+ hasMoveStorage: z.boolean(),
17
+ hasSqlitePersistence: z.boolean(),
18
+ });
19
+ export const EngineStatusParamsSchema = z.strictObject({});
20
+ export const EngineStatusResultSchema = z.object({
21
+ state: EngineStateSchema,
22
+ featureReport: EngineFeatureReportSchema.nullable(),
23
+ });
24
+ //# sourceMappingURL=engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/schemas/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC;IACtC,SAAS;IACT,UAAU;IACV,OAAO;IACP,YAAY;IACZ,QAAQ;CACT,CAAC,CAAA;AAEF;4EAC4E;AAC5E,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC7B,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE;IAChC,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE;IAC9B,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE;IAC3B,oBAAoB,EAAE,CAAC,CAAC,OAAO,EAAE;CAClC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;AAE1D,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,iBAAiB;IACxB,aAAa,EAAE,yBAAyB,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAA"}
@@ -0,0 +1,36 @@
1
+ import { z } from 'zod';
2
+ export declare const TaskProgressParamsSchema: z.ZodObject<{
3
+ taskId: z.ZodString;
4
+ bytesDone: z.ZodNumber;
5
+ bytesTotal: z.ZodNullable<z.ZodNumber>;
6
+ speedBps: z.ZodNumber;
7
+ etaSec: z.ZodNullable<z.ZodNumber>;
8
+ phase: z.ZodEnum<{
9
+ queued: "queued";
10
+ downloading: "downloading";
11
+ finalizing: "finalizing";
12
+ muxing: "muxing";
13
+ }>;
14
+ }, z.core.$strip>;
15
+ export declare const TaskCompletedParamsSchema: z.ZodObject<{
16
+ taskId: z.ZodString;
17
+ filePath: z.ZodString;
18
+ durationMs: z.ZodNumber;
19
+ }, z.core.$strip>;
20
+ export declare const TaskErrorParamsSchema: z.ZodObject<{
21
+ taskId: z.ZodString;
22
+ code: z.ZodString;
23
+ message: z.ZodString;
24
+ }, z.core.$strip>;
25
+ export declare const PairRevokedParamsSchema: z.ZodObject<{
26
+ reason: z.ZodString;
27
+ }, z.core.$strip>;
28
+ export declare const CancelRequestParamsSchema: z.ZodObject<{
29
+ id: z.ZodString;
30
+ }, z.core.$strip>;
31
+ export type TaskProgressParams = z.infer<typeof TaskProgressParamsSchema>;
32
+ export type TaskCompletedParams = z.infer<typeof TaskCompletedParamsSchema>;
33
+ export type TaskErrorParams = z.infer<typeof TaskErrorParamsSchema>;
34
+ export type PairRevokedParams = z.infer<typeof PairRevokedParamsSchema>;
35
+ export type CancelRequestParams = z.infer<typeof CancelRequestParamsSchema>;
36
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/schemas/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,wBAAwB;;;;;;;;;;;;iBAOnC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;iBAIpC,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;iBAIhC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;iBAElC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;iBAEpC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AACzE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAC3E,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACnE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA"}
@@ -0,0 +1,26 @@
1
+ import { z } from 'zod';
2
+ export const TaskProgressParamsSchema = z.object({
3
+ taskId: z.string().min(1),
4
+ bytesDone: z.number().nonnegative(),
5
+ bytesTotal: z.number().nonnegative().nullable(),
6
+ speedBps: z.number().nonnegative(),
7
+ etaSec: z.number().nonnegative().nullable(),
8
+ phase: z.enum(['queued', 'downloading', 'muxing', 'finalizing']),
9
+ });
10
+ export const TaskCompletedParamsSchema = z.object({
11
+ taskId: z.string().min(1),
12
+ filePath: z.string().min(1),
13
+ durationMs: z.number().nonnegative(),
14
+ });
15
+ export const TaskErrorParamsSchema = z.object({
16
+ taskId: z.string().min(1),
17
+ code: z.string(),
18
+ message: z.string(),
19
+ });
20
+ export const PairRevokedParamsSchema = z.object({
21
+ reason: z.string(),
22
+ });
23
+ export const CancelRequestParamsSchema = z.object({
24
+ id: z.string().min(1),
25
+ });
26
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/schemas/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAC3C,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;CACjE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE;CACrC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACtB,CAAC,CAAA"}
@@ -0,0 +1,12 @@
1
+ export * from './download.js';
2
+ export * from './download-add.js';
3
+ export * from './engine.js';
4
+ export * from './events.js';
5
+ export * from './initialize.js';
6
+ export * from './resource.js';
7
+ export * from './selection.js';
8
+ export * from './stats.js';
9
+ export * from './system.js';
10
+ export * from './task.js';
11
+ export * from './url.js';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA"}
@@ -0,0 +1,12 @@
1
+ export * from './download.js';
2
+ export * from './download-add.js';
3
+ export * from './engine.js';
4
+ export * from './events.js';
5
+ export * from './initialize.js';
6
+ export * from './resource.js';
7
+ export * from './selection.js';
8
+ export * from './stats.js';
9
+ export * from './system.js';
10
+ export * from './task.js';
11
+ export * from './url.js';
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA"}
@@ -0,0 +1,70 @@
1
+ import { z } from 'zod';
2
+ export declare const InitializeParamsSchema: z.ZodObject<{
3
+ protocolVersion: z.ZodLiteral<"1.0">;
4
+ client: z.ZodPreprocess<z.ZodDiscriminatedUnion<[z.ZodObject<{
5
+ kind: z.ZodLiteral<"extension">;
6
+ name: z.ZodString;
7
+ version: z.ZodString;
8
+ extensionId: z.ZodString;
9
+ browser: z.ZodEnum<{
10
+ chromium: "chromium";
11
+ firefox: "firefox";
12
+ }>;
13
+ browserVersion: z.ZodString;
14
+ locale: z.ZodString;
15
+ }, z.core.$strip>, z.ZodObject<{
16
+ kind: z.ZodLiteral<"cli">;
17
+ name: z.ZodString;
18
+ version: z.ZodString;
19
+ locale: z.ZodOptional<z.ZodString>;
20
+ pid: z.ZodOptional<z.ZodNumber>;
21
+ host: z.ZodOptional<z.ZodString>;
22
+ }, z.core.$strip>], "kind">>;
23
+ capabilities: z.ZodObject<{
24
+ submitDownload: z.ZodOptional<z.ZodBoolean>;
25
+ resolveUrl: z.ZodOptional<z.ZodBoolean>;
26
+ probeUrl: z.ZodOptional<z.ZodBoolean>;
27
+ cancellation: z.ZodOptional<z.ZodBoolean>;
28
+ progress: z.ZodOptional<z.ZodBoolean>;
29
+ }, z.core.$strip>;
30
+ adapters: z.ZodArray<z.ZodObject<{
31
+ id: z.ZodString;
32
+ version: z.ZodString;
33
+ urlPatterns: z.ZodArray<z.ZodString>;
34
+ capabilities: z.ZodArray<z.ZodEnum<{
35
+ resolve: "resolve";
36
+ sniff: "sniff";
37
+ batch: "batch";
38
+ }>>;
39
+ }, z.core.$strip>>;
40
+ }, z.core.$strip>;
41
+ export declare const InitializeResultSchema: z.ZodObject<{
42
+ protocolVersion: z.ZodLiteral<"1.0">;
43
+ server: z.ZodObject<{
44
+ name: z.ZodString;
45
+ version: z.ZodString;
46
+ runtime: z.ZodEnum<{
47
+ server: "server";
48
+ electron: "electron";
49
+ }>;
50
+ }, z.core.$strip>;
51
+ capabilities: z.ZodObject<{
52
+ ffmpegAvailable: z.ZodBoolean;
53
+ selectionKinds: z.ZodArray<z.ZodEnum<{
54
+ direct: "direct";
55
+ hls: "hls";
56
+ dash: "dash";
57
+ mux: "mux";
58
+ }>>;
59
+ progress: z.ZodBoolean;
60
+ cancellation: z.ZodBoolean;
61
+ }, z.core.$strip>;
62
+ serverAdapters: z.ZodArray<z.ZodObject<{
63
+ id: z.ZodString;
64
+ urlPatterns: z.ZodArray<z.ZodString>;
65
+ }, z.core.$strip>>;
66
+ pairToken: z.ZodOptional<z.ZodString>;
67
+ }, z.core.$strip>;
68
+ export type InitializeParams = z.infer<typeof InitializeParamsSchema>;
69
+ export type InitializeResult = z.infer<typeof InitializeResultSchema>;
70
+ //# sourceMappingURL=initialize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initialize.d.ts","sourceRoot":"","sources":["../../src/schemas/initialize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAuDvB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKjC,CAAA;AAcF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;iBAUjC,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
@@ -0,0 +1,72 @@
1
+ import { z } from 'zod';
2
+ const PROTOCOL_VERSION = '1.0';
3
+ const AdapterDeclSchema = z.object({
4
+ id: z.string().min(1),
5
+ version: z.string().min(1),
6
+ urlPatterns: z.array(z.string()),
7
+ capabilities: z.array(z.enum(['resolve', 'sniff', 'batch'])),
8
+ });
9
+ const ClientCapabilitiesSchema = z.object({
10
+ submitDownload: z.boolean().optional(),
11
+ resolveUrl: z.boolean().optional(),
12
+ probeUrl: z.boolean().optional(),
13
+ cancellation: z.boolean().optional(),
14
+ progress: z.boolean().optional(),
15
+ });
16
+ const ExtensionClientSchema = z.object({
17
+ kind: z.literal('extension'),
18
+ name: z.string().min(1),
19
+ version: z.string().min(1),
20
+ extensionId: z.string().min(1),
21
+ browser: z.enum(['chromium', 'firefox']),
22
+ browserVersion: z.string().min(1),
23
+ locale: z.string().min(1),
24
+ });
25
+ const CliClientSchema = z.object({
26
+ kind: z.literal('cli'),
27
+ name: z.string().min(1),
28
+ version: z.string().min(1),
29
+ locale: z.string().min(1).optional(),
30
+ pid: z.number().int().optional(),
31
+ host: z.string().optional(),
32
+ });
33
+ /**
34
+ * Client identity, generalized to a `kind` discriminated union so non-extension
35
+ * clients (CLI/agents) can connect. Compat shim: the shipped extension sends NO
36
+ * `kind` field, so inject `kind: 'extension'` when absent before discriminating
37
+ * — keeping `PROTOCOL_VERSION` '1.0' and the existing extension payload valid.
38
+ */
39
+ const ClientSchema = z.preprocess((value) => value &&
40
+ typeof value === 'object' &&
41
+ !Array.isArray(value) &&
42
+ value.kind === undefined
43
+ ? { ...value, kind: 'extension' }
44
+ : value, z.discriminatedUnion('kind', [ExtensionClientSchema, CliClientSchema]));
45
+ export const InitializeParamsSchema = z.object({
46
+ protocolVersion: z.literal(PROTOCOL_VERSION),
47
+ client: ClientSchema,
48
+ capabilities: ClientCapabilitiesSchema,
49
+ adapters: z.array(AdapterDeclSchema),
50
+ });
51
+ const ServerAdapterSchema = z.object({
52
+ id: z.string().min(1),
53
+ urlPatterns: z.array(z.string()),
54
+ });
55
+ const ServerCapabilitiesSchema = z.object({
56
+ ffmpegAvailable: z.boolean(),
57
+ selectionKinds: z.array(z.enum(['direct', 'hls', 'dash', 'mux'])),
58
+ progress: z.boolean(),
59
+ cancellation: z.boolean(),
60
+ });
61
+ export const InitializeResultSchema = z.object({
62
+ protocolVersion: z.literal(PROTOCOL_VERSION),
63
+ server: z.object({
64
+ name: z.string().min(1),
65
+ version: z.string().min(1),
66
+ runtime: z.enum(['electron', 'server']),
67
+ }),
68
+ capabilities: ServerCapabilitiesSchema,
69
+ serverAdapters: z.array(ServerAdapterSchema),
70
+ pairToken: z.string().optional(),
71
+ });
72
+ //# sourceMappingURL=initialize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initialize.js","sourceRoot":"","sources":["../../src/schemas/initialize.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { z } from 'zod';
2
+ export declare const CookieSchema: z.ZodObject<{
3
+ name: z.ZodString;
4
+ value: z.ZodString;
5
+ domain: z.ZodString;
6
+ path: z.ZodDefault<z.ZodString>;
7
+ secure: z.ZodDefault<z.ZodBoolean>;
8
+ httpOnly: z.ZodDefault<z.ZodBoolean>;
9
+ sameSite: z.ZodDefault<z.ZodEnum<{
10
+ strict: "strict";
11
+ lax: "lax";
12
+ none: "none";
13
+ unspecified: "unspecified";
14
+ }>>;
15
+ expiresAt: z.ZodOptional<z.ZodNumber>;
16
+ }, z.core.$strip>;
17
+ export declare const ResourceSchema: z.ZodObject<{
18
+ url: z.ZodURL;
19
+ headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
20
+ cookies: z.ZodDefault<z.ZodArray<z.ZodObject<{
21
+ name: z.ZodString;
22
+ value: z.ZodString;
23
+ domain: z.ZodString;
24
+ path: z.ZodDefault<z.ZodString>;
25
+ secure: z.ZodDefault<z.ZodBoolean>;
26
+ httpOnly: z.ZodDefault<z.ZodBoolean>;
27
+ sameSite: z.ZodDefault<z.ZodEnum<{
28
+ strict: "strict";
29
+ lax: "lax";
30
+ none: "none";
31
+ unspecified: "unspecified";
32
+ }>>;
33
+ expiresAt: z.ZodOptional<z.ZodNumber>;
34
+ }, z.core.$strip>>>;
35
+ refererPolicy: z.ZodDefault<z.ZodString>;
36
+ }, z.core.$strip>;
37
+ export type Resource = z.infer<typeof ResourceSchema>;
38
+ export type Cookie = z.infer<typeof CookieSchema>;
39
+ //# sourceMappingURL=resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../../src/schemas/resource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;iBAWvB,CAAA;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;iBAKzB,CAAA;AAEF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AACrD,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { z } from 'zod';
2
+ const HttpUrl = z.httpUrl({ message: 'URL must be http: or https:' });
3
+ export const CookieSchema = z.object({
4
+ name: z.string(),
5
+ value: z.string(),
6
+ domain: z.string(),
7
+ path: z.string().default('/'),
8
+ secure: z.boolean().default(false),
9
+ httpOnly: z.boolean().default(false),
10
+ sameSite: z
11
+ .enum(['strict', 'lax', 'none', 'unspecified'])
12
+ .default('unspecified'),
13
+ expiresAt: z.number().optional(),
14
+ });
15
+ export const ResourceSchema = z.object({
16
+ url: HttpUrl,
17
+ headers: z.record(z.string(), z.string()).default({}),
18
+ cookies: z.array(CookieSchema).default([]),
19
+ refererPolicy: z.string().default('strict-origin-when-cross-origin'),
20
+ });
21
+ //# sourceMappingURL=resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../src/schemas/resource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAA;AAErE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;IAC7B,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAClC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACpC,QAAQ,EAAE,CAAC;SACR,IAAI,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;SAC9C,OAAO,CAAC,aAAa,CAAC;IACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,GAAG,EAAE,OAAO;IACZ,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACrD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,iCAAiC,CAAC;CACrE,CAAC,CAAA"}