@editframe/create 0.6.0-beta.17 → 0.6.0-beta.18
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.
- package/dist/templates/card-poetry/package.json +4 -4
- package/dist/templates/react-demo/index.html +13 -0
- package/dist/templates/react-demo/package.json +28 -0
- package/dist/templates/react-demo/postcss.config.cjs +5 -0
- package/dist/templates/react-demo/src/Video.tsx +62 -0
- package/dist/templates/react-demo/src/assets/.gitkeep +0 -0
- package/dist/templates/react-demo/src/assets/cards/card-9-spades.json +362 -0
- package/dist/templates/react-demo/src/assets/cards/card-9-spades.mp3 +0 -0
- package/dist/templates/react-demo/src/assets/cards/card-9-spades.png +0 -0
- package/dist/templates/react-demo/src/assets/cards/card-joker.json +326 -0
- package/dist/templates/react-demo/src/assets/cards/card-joker.mp3 +0 -0
- package/dist/templates/react-demo/src/assets/cards/card-joker.png +0 -0
- package/dist/templates/react-demo/src/assets/cards/card-king-clubs.json +344 -0
- package/dist/templates/react-demo/src/assets/cards/card-king-clubs.mp3 +0 -0
- package/dist/templates/react-demo/src/assets/cards/card-king-clubs.png +0 -0
- package/dist/templates/react-demo/src/assets/cards/card-queen-spades.json +338 -0
- package/dist/templates/react-demo/src/assets/cards/card-queen-spades.mp3 +0 -0
- package/dist/templates/react-demo/src/assets/cards/card-queen-spades.png +0 -0
- package/dist/templates/react-demo/src/main.tsx +10 -0
- package/dist/templates/react-demo/src/styles.css +3 -0
- package/dist/templates/react-demo/tailwind.config.js +8 -0
- package/dist/templates/react-demo/vite.config.ts +16 -0
- package/dist/templates/simple-demo/package.json +5 -5
- package/package.json +1 -1
- package/vite.config.ts.timestamp-1720899052384-0abb0e6a326c2.mjs +0 -94
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
{
|
|
2
|
+
"text": " The Queen of Spades, a mysterious and formidable presence in the deck. Cloaked in the enigma of the Spade, she is the embodiment of intellect and intuition. The Queen of Spades, a strategist in her own right, weaves a tapestry of complexity and depth, challenging all who cross her path.",
|
|
3
|
+
"segments": [
|
|
4
|
+
{
|
|
5
|
+
"start": 0.12,
|
|
6
|
+
"end": 3.74,
|
|
7
|
+
"text": " The Queen of Spades, a mysterious and formidable presence in the deck.",
|
|
8
|
+
"confidence": 0.94,
|
|
9
|
+
"words": [
|
|
10
|
+
{
|
|
11
|
+
"text": "The",
|
|
12
|
+
"start": 0.12,
|
|
13
|
+
"end": 0.24,
|
|
14
|
+
"confidence": 0.8
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"text": "Queen",
|
|
18
|
+
"start": 0.24,
|
|
19
|
+
"end": 0.4,
|
|
20
|
+
"confidence": 0.86
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"text": "of",
|
|
24
|
+
"start": 0.4,
|
|
25
|
+
"end": 0.56,
|
|
26
|
+
"confidence": 0.98
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"text": "Spades,",
|
|
30
|
+
"start": 0.56,
|
|
31
|
+
"end": 1.02,
|
|
32
|
+
"confidence": 0.99
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"text": "a",
|
|
36
|
+
"start": 1.2,
|
|
37
|
+
"end": 1.28,
|
|
38
|
+
"confidence": 0.87
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"text": "mysterious",
|
|
42
|
+
"start": 1.28,
|
|
43
|
+
"end": 1.72,
|
|
44
|
+
"confidence": 0.98
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"text": "and",
|
|
48
|
+
"start": 1.72,
|
|
49
|
+
"end": 2.16,
|
|
50
|
+
"confidence": 0.99
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"text": "formidable",
|
|
54
|
+
"start": 2.16,
|
|
55
|
+
"end": 2.58,
|
|
56
|
+
"confidence": 0.99
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"text": "presence",
|
|
60
|
+
"start": 2.58,
|
|
61
|
+
"end": 3.06,
|
|
62
|
+
"confidence": 0.99
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"text": "in",
|
|
66
|
+
"start": 3.06,
|
|
67
|
+
"end": 3.36,
|
|
68
|
+
"confidence": 0.98
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"text": "the",
|
|
72
|
+
"start": 3.36,
|
|
73
|
+
"end": 3.5,
|
|
74
|
+
"confidence": 0.99
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"text": "deck.",
|
|
78
|
+
"start": 3.5,
|
|
79
|
+
"end": 3.74,
|
|
80
|
+
"confidence": 0.87
|
|
81
|
+
}
|
|
82
|
+
]
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"start": 4.88,
|
|
86
|
+
"end": 8.94,
|
|
87
|
+
"text": " Cloaked in the enigma of the Spade, she is the embodiment of intellect and intuition.",
|
|
88
|
+
"confidence": 0.94,
|
|
89
|
+
"words": [
|
|
90
|
+
{
|
|
91
|
+
"text": "Cloaked",
|
|
92
|
+
"start": 4.88,
|
|
93
|
+
"end": 5.16,
|
|
94
|
+
"confidence": 0.85
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"text": "in",
|
|
98
|
+
"start": 5.16,
|
|
99
|
+
"end": 5.28,
|
|
100
|
+
"confidence": 1.0
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"text": "the",
|
|
104
|
+
"start": 5.28,
|
|
105
|
+
"end": 5.38,
|
|
106
|
+
"confidence": 1.0
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"text": "enigma",
|
|
110
|
+
"start": 5.38,
|
|
111
|
+
"end": 5.72,
|
|
112
|
+
"confidence": 0.93
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"text": "of",
|
|
116
|
+
"start": 5.72,
|
|
117
|
+
"end": 5.92,
|
|
118
|
+
"confidence": 1.0
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
"text": "the",
|
|
122
|
+
"start": 5.92,
|
|
123
|
+
"end": 6.02,
|
|
124
|
+
"confidence": 0.95
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"text": "Spade,",
|
|
128
|
+
"start": 6.02,
|
|
129
|
+
"end": 6.46,
|
|
130
|
+
"confidence": 0.76
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"text": "she",
|
|
134
|
+
"start": 6.64,
|
|
135
|
+
"end": 6.76,
|
|
136
|
+
"confidence": 0.96
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"text": "is",
|
|
140
|
+
"start": 6.76,
|
|
141
|
+
"end": 6.88,
|
|
142
|
+
"confidence": 1.0
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"text": "the",
|
|
146
|
+
"start": 6.88,
|
|
147
|
+
"end": 7.02,
|
|
148
|
+
"confidence": 1.0
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
"text": "embodiment",
|
|
152
|
+
"start": 7.02,
|
|
153
|
+
"end": 7.52,
|
|
154
|
+
"confidence": 1.0
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"text": "of",
|
|
158
|
+
"start": 7.52,
|
|
159
|
+
"end": 7.7,
|
|
160
|
+
"confidence": 0.99
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"text": "intellect",
|
|
164
|
+
"start": 7.7,
|
|
165
|
+
"end": 8.14,
|
|
166
|
+
"confidence": 0.99
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
"text": "and",
|
|
170
|
+
"start": 8.14,
|
|
171
|
+
"end": 8.46,
|
|
172
|
+
"confidence": 0.98
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"text": "intuition.",
|
|
176
|
+
"start": 8.46,
|
|
177
|
+
"end": 8.94,
|
|
178
|
+
"confidence": 0.99
|
|
179
|
+
}
|
|
180
|
+
]
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"start": 10.14,
|
|
184
|
+
"end": 15.28,
|
|
185
|
+
"text": " The Queen of Spades, a strategist in her own right, weaves a tapestry of complexity and depth,",
|
|
186
|
+
"confidence": 0.94,
|
|
187
|
+
"words": [
|
|
188
|
+
{
|
|
189
|
+
"text": "The",
|
|
190
|
+
"start": 10.14,
|
|
191
|
+
"end": 10.24,
|
|
192
|
+
"confidence": 1.0
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
"text": "Queen",
|
|
196
|
+
"start": 10.24,
|
|
197
|
+
"end": 10.44,
|
|
198
|
+
"confidence": 0.99
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
"text": "of",
|
|
202
|
+
"start": 10.44,
|
|
203
|
+
"end": 10.58,
|
|
204
|
+
"confidence": 1.0
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"text": "Spades,",
|
|
208
|
+
"start": 10.58,
|
|
209
|
+
"end": 11.06,
|
|
210
|
+
"confidence": 1.0
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
"text": "a",
|
|
214
|
+
"start": 11.22,
|
|
215
|
+
"end": 11.3,
|
|
216
|
+
"confidence": 0.99
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
"text": "strategist",
|
|
220
|
+
"start": 11.3,
|
|
221
|
+
"end": 11.94,
|
|
222
|
+
"confidence": 1.0
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
"text": "in",
|
|
226
|
+
"start": 11.94,
|
|
227
|
+
"end": 12.12,
|
|
228
|
+
"confidence": 0.99
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
"text": "her",
|
|
232
|
+
"start": 12.12,
|
|
233
|
+
"end": 12.28,
|
|
234
|
+
"confidence": 1.0
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
"text": "own",
|
|
238
|
+
"start": 12.28,
|
|
239
|
+
"end": 12.46,
|
|
240
|
+
"confidence": 1.0
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"text": "right,",
|
|
244
|
+
"start": 12.46,
|
|
245
|
+
"end": 12.78,
|
|
246
|
+
"confidence": 0.99
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
"text": "weaves",
|
|
250
|
+
"start": 13.1,
|
|
251
|
+
"end": 13.36,
|
|
252
|
+
"confidence": 0.67
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
"text": "a",
|
|
256
|
+
"start": 13.36,
|
|
257
|
+
"end": 13.48,
|
|
258
|
+
"confidence": 0.99
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
"text": "tapestry",
|
|
262
|
+
"start": 13.48,
|
|
263
|
+
"end": 13.94,
|
|
264
|
+
"confidence": 0.99
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
"text": "of",
|
|
268
|
+
"start": 13.94,
|
|
269
|
+
"end": 14.12,
|
|
270
|
+
"confidence": 0.98
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
"text": "complexity",
|
|
274
|
+
"start": 14.12,
|
|
275
|
+
"end": 14.64,
|
|
276
|
+
"confidence": 0.99
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"text": "and",
|
|
280
|
+
"start": 14.64,
|
|
281
|
+
"end": 15.08,
|
|
282
|
+
"confidence": 0.8
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
"text": "depth,",
|
|
286
|
+
"start": 15.08,
|
|
287
|
+
"end": 15.28,
|
|
288
|
+
"confidence": 0.86
|
|
289
|
+
}
|
|
290
|
+
]
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"start": 15.28,
|
|
294
|
+
"end": 17.38,
|
|
295
|
+
"text": " challenging all who cross her path.",
|
|
296
|
+
"confidence": 1.0,
|
|
297
|
+
"words": [
|
|
298
|
+
{
|
|
299
|
+
"text": "challenging",
|
|
300
|
+
"start": 15.28,
|
|
301
|
+
"end": 16.1,
|
|
302
|
+
"confidence": 0.98
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
"text": "all",
|
|
306
|
+
"start": 16.1,
|
|
307
|
+
"end": 16.46,
|
|
308
|
+
"confidence": 1.0
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"text": "who",
|
|
312
|
+
"start": 16.46,
|
|
313
|
+
"end": 16.64,
|
|
314
|
+
"confidence": 1.0
|
|
315
|
+
},
|
|
316
|
+
{
|
|
317
|
+
"text": "cross",
|
|
318
|
+
"start": 16.64,
|
|
319
|
+
"end": 16.88,
|
|
320
|
+
"confidence": 1.0
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
"text": "her",
|
|
324
|
+
"start": 16.88,
|
|
325
|
+
"end": 17.08,
|
|
326
|
+
"confidence": 1.0
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"text": "path.",
|
|
330
|
+
"start": 17.08,
|
|
331
|
+
"end": 17.38,
|
|
332
|
+
"confidence": 1.0
|
|
333
|
+
}
|
|
334
|
+
]
|
|
335
|
+
}
|
|
336
|
+
],
|
|
337
|
+
"language": "en"
|
|
338
|
+
}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import ReactDOM from "react-dom/client";
|
|
2
|
+
import { Video } from "./Video";
|
|
3
|
+
import "@editframe/elements/styles.css";
|
|
4
|
+
|
|
5
|
+
const root = document.getElementById("root");
|
|
6
|
+
if (!root) {
|
|
7
|
+
throw new Error("Root element not found");
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
ReactDOM.createRoot(root).render(<Video />);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { defineConfig } from "vite";
|
|
2
|
+
import { viteSingleFile } from "vite-plugin-singlefile";
|
|
3
|
+
import react from "@vitejs/plugin-react";
|
|
4
|
+
import { vitePluginEditframe } from "@editframe/vite-plugin";
|
|
5
|
+
import path from "node:path";
|
|
6
|
+
|
|
7
|
+
export default defineConfig({
|
|
8
|
+
plugins: [
|
|
9
|
+
vitePluginEditframe({
|
|
10
|
+
root: path.join(__dirname, "src"),
|
|
11
|
+
cacheRoot: path.join(__dirname, "src", "assets"),
|
|
12
|
+
}),
|
|
13
|
+
viteSingleFile(),
|
|
14
|
+
react(),
|
|
15
|
+
],
|
|
16
|
+
});
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "
|
|
2
|
+
"name": "simple-demo",
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"scripts": {
|
|
8
|
-
"
|
|
8
|
+
"start": "editframe preview"
|
|
9
9
|
},
|
|
10
10
|
"keywords": [],
|
|
11
11
|
"author": "",
|
|
12
12
|
"license": "ISC",
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@editframe/cli": "0.6.0-beta.
|
|
15
|
-
"@editframe/elements": "0.6.0-beta.
|
|
16
|
-
"@editframe/vite-plugin": "0.6.0-beta.
|
|
14
|
+
"@editframe/cli": "0.6.0-beta.18",
|
|
15
|
+
"@editframe/elements": "0.6.0-beta.18",
|
|
16
|
+
"@editframe/vite-plugin": "0.6.0-beta.18",
|
|
17
17
|
"tailwindcss": "^3.4.3",
|
|
18
18
|
"vite": "^5.2.11",
|
|
19
19
|
"vite-plugin-singlefile": "^2.0.1"
|
package/package.json
CHANGED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
// ../../lib/util/execPromise.ts
|
|
2
|
-
import { exec } from "node:child_process";
|
|
3
|
-
import { promisify } from "node:util";
|
|
4
|
-
var execPromise = promisify(exec);
|
|
5
|
-
|
|
6
|
-
// vite.config.ts
|
|
7
|
-
import path2 from "node:path";
|
|
8
|
-
|
|
9
|
-
// ../defineViteBuildConfig.ts
|
|
10
|
-
import path from "node:path";
|
|
11
|
-
import { defineConfig } from "file:///app/node_modules/vite/dist/node/index.js";
|
|
12
|
-
import tsconfigPaths from "file:///app/node_modules/vite-tsconfig-paths/dist/index.mjs";
|
|
13
|
-
import rollupTsConfigPaths from "file:///app/node_modules/rollup-plugin-tsconfig-paths/index.mjs";
|
|
14
|
-
import dts from "file:///app/node_modules/vite-plugin-dts/dist/index.mjs";
|
|
15
|
-
var defineViteBuildConfig = (config) => {
|
|
16
|
-
const outDir = config.outDirPrefix ? path.join(config.root, "dist", config.outDirPrefix) : path.join(config.root, "dist");
|
|
17
|
-
const extraEntries = config.extraEntries ?? [];
|
|
18
|
-
return defineConfig({
|
|
19
|
-
esbuild: {
|
|
20
|
-
target: "es2022",
|
|
21
|
-
platform: "browser",
|
|
22
|
-
include: /\.(m?[jt]s|[jt]sx)$/,
|
|
23
|
-
exclude: []
|
|
24
|
-
},
|
|
25
|
-
plugins: [tsconfigPaths(), dts(), ...config.plugins || []],
|
|
26
|
-
appType: "custom",
|
|
27
|
-
root: config.root,
|
|
28
|
-
build: {
|
|
29
|
-
ssr: true,
|
|
30
|
-
target: "es2022",
|
|
31
|
-
rollupOptions: {
|
|
32
|
-
treeshake: "recommended",
|
|
33
|
-
output: {
|
|
34
|
-
inlineDynamicImports: false,
|
|
35
|
-
preserveModules: true
|
|
36
|
-
},
|
|
37
|
-
external: [
|
|
38
|
-
"@editframe/assets",
|
|
39
|
-
"@editframe/vite-plugin",
|
|
40
|
-
"@editframe/elements"
|
|
41
|
-
],
|
|
42
|
-
plugins: [rollupTsConfigPaths({})]
|
|
43
|
-
},
|
|
44
|
-
emptyOutDir: true,
|
|
45
|
-
outDir,
|
|
46
|
-
lib: {
|
|
47
|
-
entry: [...extraEntries, path.join(config.root, "./src/index.ts")],
|
|
48
|
-
name: config.name,
|
|
49
|
-
fileName: config.name,
|
|
50
|
-
formats: ["es", "cjs"]
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
// vite.config.ts
|
|
57
|
-
import { cp } from "node:fs/promises";
|
|
58
|
-
var __vite_injected_original_dirname = "/app/packages/create";
|
|
59
|
-
var __vite_injected_original_import_meta_url = "file:///app/packages/create/vite.config.ts";
|
|
60
|
-
var vite_config_default = defineViteBuildConfig({
|
|
61
|
-
root: path2.dirname(new URL(__vite_injected_original_import_meta_url).pathname),
|
|
62
|
-
name: "editframe-create",
|
|
63
|
-
plugins: [
|
|
64
|
-
{
|
|
65
|
-
name: "chmod-executables",
|
|
66
|
-
async closeBundle() {
|
|
67
|
-
const cliExecPath = path2.join(__vite_injected_original_dirname, "dist/index.js");
|
|
68
|
-
await execPromise(`chmod +x ${cliExecPath}`);
|
|
69
|
-
console.log("chmod +x", cliExecPath);
|
|
70
|
-
}
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
name: "watch-external",
|
|
74
|
-
async buildStart() {
|
|
75
|
-
this.addWatchFile(path2.join(__vite_injected_original_dirname, "src/templates"));
|
|
76
|
-
}
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
name: "copy template",
|
|
80
|
-
async closeBundle() {
|
|
81
|
-
await cp(
|
|
82
|
-
path2.join(__vite_injected_original_dirname, "src/templates"),
|
|
83
|
-
path2.join(__vite_injected_original_dirname, "dist/templates"),
|
|
84
|
-
{ recursive: true }
|
|
85
|
-
);
|
|
86
|
-
console.log("Copied template into dist");
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
]
|
|
90
|
-
});
|
|
91
|
-
export {
|
|
92
|
-
vite_config_default as default
|
|
93
|
-
};
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vbGliL3V0aWwvZXhlY1Byb21pc2UudHMiLCAidml0ZS5jb25maWcudHMiLCAiLi4vZGVmaW5lVml0ZUJ1aWxkQ29uZmlnLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiL2FwcC9saWIvdXRpbFwiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiL2FwcC9saWIvdXRpbC9leGVjUHJvbWlzZS50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vYXBwL2xpYi91dGlsL2V4ZWNQcm9taXNlLnRzXCI7aW1wb3J0IHsgZXhlYyB9IGZyb20gXCJub2RlOmNoaWxkX3Byb2Nlc3NcIjtcbmltcG9ydCB7IHByb21pc2lmeSB9IGZyb20gXCJub2RlOnV0aWxcIjtcblxuZXhwb3J0IGNvbnN0IGV4ZWNQcm9taXNlID0gcHJvbWlzaWZ5KGV4ZWMpO1xuIiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvYXBwL3BhY2thZ2VzL2NyZWF0ZVwiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiL2FwcC9wYWNrYWdlcy9jcmVhdGUvdml0ZS5jb25maWcudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL2FwcC9wYWNrYWdlcy9jcmVhdGUvdml0ZS5jb25maWcudHNcIjtpbXBvcnQgeyBleGVjUHJvbWlzZSB9IGZyb20gXCIuLi8uLi9saWIvdXRpbC9leGVjUHJvbWlzZVwiO1xuXG5pbXBvcnQgcGF0aCBmcm9tIFwibm9kZTpwYXRoXCI7XG5cbmltcG9ydCB7IGRlZmluZVZpdGVCdWlsZENvbmZpZyB9IGZyb20gXCIuLi9kZWZpbmVWaXRlQnVpbGRDb25maWdcIjtcbmltcG9ydCB7IGNwIH0gZnJvbSBcIm5vZGU6ZnMvcHJvbWlzZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lVml0ZUJ1aWxkQ29uZmlnKHtcbiAgcm9vdDogcGF0aC5kaXJuYW1lKG5ldyBVUkwoaW1wb3J0Lm1ldGEudXJsKS5wYXRobmFtZSksXG4gIG5hbWU6IFwiZWRpdGZyYW1lLWNyZWF0ZVwiLFxuICBwbHVnaW5zOiBbXG4gICAge1xuICAgICAgbmFtZTogXCJjaG1vZC1leGVjdXRhYmxlc1wiLFxuICAgICAgYXN5bmMgY2xvc2VCdW5kbGUoKSB7XG4gICAgICAgIGNvbnN0IGNsaUV4ZWNQYXRoID0gcGF0aC5qb2luKF9fZGlybmFtZSwgXCJkaXN0L2luZGV4LmpzXCIpO1xuICAgICAgICBhd2FpdCBleGVjUHJvbWlzZShgY2htb2QgK3ggJHtjbGlFeGVjUGF0aH1gKTtcbiAgICAgICAgY29uc29sZS5sb2coXCJjaG1vZCAreFwiLCBjbGlFeGVjUGF0aCk7XG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogXCJ3YXRjaC1leHRlcm5hbFwiLFxuICAgICAgYXN5bmMgYnVpbGRTdGFydCgpIHtcbiAgICAgICAgdGhpcy5hZGRXYXRjaEZpbGUocGF0aC5qb2luKF9fZGlybmFtZSwgXCJzcmMvdGVtcGxhdGVzXCIpKTtcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiBcImNvcHkgdGVtcGxhdGVcIixcbiAgICAgIGFzeW5jIGNsb3NlQnVuZGxlKCkge1xuICAgICAgICBhd2FpdCBjcChcbiAgICAgICAgICBwYXRoLmpvaW4oX19kaXJuYW1lLCBcInNyYy90ZW1wbGF0ZXNcIiksXG4gICAgICAgICAgcGF0aC5qb2luKF9fZGlybmFtZSwgXCJkaXN0L3RlbXBsYXRlc1wiKSxcbiAgICAgICAgICB7IHJlY3Vyc2l2ZTogdHJ1ZSB9LFxuICAgICAgICApO1xuICAgICAgICBjb25zb2xlLmxvZyhcIkNvcGllZCB0ZW1wbGF0ZSBpbnRvIGRpc3RcIik7XG4gICAgICB9LFxuICAgIH0sXG4gIF0sXG59KTtcbiIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiL2FwcC9wYWNrYWdlc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiL2FwcC9wYWNrYWdlcy9kZWZpbmVWaXRlQnVpbGRDb25maWcudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL2FwcC9wYWNrYWdlcy9kZWZpbmVWaXRlQnVpbGRDb25maWcudHNcIjtpbXBvcnQgcGF0aCBmcm9tIFwibm9kZTpwYXRoXCI7XG5cbmltcG9ydCB7IGRlZmluZUNvbmZpZywgdHlwZSBVc2VyQ29uZmlnIH0gZnJvbSBcInZpdGVcIjtcbmltcG9ydCB0c2NvbmZpZ1BhdGhzIGZyb20gXCJ2aXRlLXRzY29uZmlnLXBhdGhzXCI7XG5pbXBvcnQgcm9sbHVwVHNDb25maWdQYXRocyBmcm9tIFwicm9sbHVwLXBsdWdpbi10c2NvbmZpZy1wYXRoc1wiO1xuaW1wb3J0IGR0cyBmcm9tIFwidml0ZS1wbHVnaW4tZHRzXCI7XG5cbmludGVyZmFjZSBWaXRlQnVpbGRDb25maWcge1xuICByb290OiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgb3V0RGlyUHJlZml4Pzogc3RyaW5nO1xuICBwbHVnaW5zPzogVXNlckNvbmZpZ1tcInBsdWdpbnNcIl07XG4gIGV4dHJhRW50cmllcz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgY29uc3QgZGVmaW5lVml0ZUJ1aWxkQ29uZmlnID0gKGNvbmZpZzogVml0ZUJ1aWxkQ29uZmlnKSA9PiB7XG4gIGNvbnN0IG91dERpciA9IGNvbmZpZy5vdXREaXJQcmVmaXhcbiAgICA/IHBhdGguam9pbihjb25maWcucm9vdCwgXCJkaXN0XCIsIGNvbmZpZy5vdXREaXJQcmVmaXgpXG4gICAgOiBwYXRoLmpvaW4oY29uZmlnLnJvb3QsIFwiZGlzdFwiKTtcblxuICBjb25zdCBleHRyYUVudHJpZXMgPSBjb25maWcuZXh0cmFFbnRyaWVzID8/IFtdO1xuICByZXR1cm4gZGVmaW5lQ29uZmlnKHtcbiAgICBlc2J1aWxkOiB7XG4gICAgICB0YXJnZXQ6IFwiZXMyMDIyXCIsXG4gICAgICBwbGF0Zm9ybTogXCJicm93c2VyXCIsXG4gICAgICBpbmNsdWRlOiAvXFwuKG0/W2p0XXN8W2p0XXN4KSQvLFxuICAgICAgZXhjbHVkZTogW10sXG4gICAgfSxcbiAgICBwbHVnaW5zOiBbdHNjb25maWdQYXRocygpLCBkdHMoKSwgLi4uKGNvbmZpZy5wbHVnaW5zIHx8IFtdKV0sXG4gICAgYXBwVHlwZTogXCJjdXN0b21cIixcbiAgICByb290OiBjb25maWcucm9vdCxcbiAgICBidWlsZDoge1xuICAgICAgc3NyOiB0cnVlLFxuICAgICAgdGFyZ2V0OiBcImVzMjAyMlwiLFxuICAgICAgcm9sbHVwT3B0aW9uczoge1xuICAgICAgICB0cmVlc2hha2U6IFwicmVjb21tZW5kZWRcIixcbiAgICAgICAgb3V0cHV0OiB7XG4gICAgICAgICAgaW5saW5lRHluYW1pY0ltcG9ydHM6IGZhbHNlLFxuICAgICAgICAgIHByZXNlcnZlTW9kdWxlczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgZXh0ZXJuYWw6IFtcbiAgICAgICAgICBcIkBlZGl0ZnJhbWUvYXNzZXRzXCIsXG4gICAgICAgICAgXCJAZWRpdGZyYW1lL3ZpdGUtcGx1Z2luXCIsXG4gICAgICAgICAgXCJAZWRpdGZyYW1lL2VsZW1lbnRzXCIsXG4gICAgICAgIF0sXG4gICAgICAgIHBsdWdpbnM6IFtyb2xsdXBUc0NvbmZpZ1BhdGhzKHt9KV0sXG4gICAgICB9LFxuICAgICAgZW1wdHlPdXREaXI6IHRydWUsXG4gICAgICBvdXREaXI6IG91dERpcixcbiAgICAgIGxpYjoge1xuICAgICAgICBlbnRyeTogWy4uLmV4dHJhRW50cmllcywgcGF0aC5qb2luKGNvbmZpZy5yb290LCBcIi4vc3JjL2luZGV4LnRzXCIpXSxcbiAgICAgICAgbmFtZTogY29uZmlnLm5hbWUsXG4gICAgICAgIGZpbGVOYW1lOiBjb25maWcubmFtZSxcbiAgICAgICAgZm9ybWF0czogW1wiZXNcIiwgXCJjanNcIl0sXG4gICAgICB9LFxuICAgIH0sXG4gIH0pO1xufTtcbiJdLAogICJtYXBwaW5ncyI6ICI7QUFBeU4sU0FBUyxZQUFZO0FBQzlPLFNBQVMsaUJBQWlCO0FBRW5CLElBQU0sY0FBYyxVQUFVLElBQUk7OztBQ0R6QyxPQUFPQSxXQUFVOzs7QUNGNE4sT0FBTyxVQUFVO0FBRTlQLFNBQVMsb0JBQXFDO0FBQzlDLE9BQU8sbUJBQW1CO0FBQzFCLE9BQU8seUJBQXlCO0FBQ2hDLE9BQU8sU0FBUztBQVVULElBQU0sd0JBQXdCLENBQUMsV0FBNEI7QUFDaEUsUUFBTSxTQUFTLE9BQU8sZUFDbEIsS0FBSyxLQUFLLE9BQU8sTUFBTSxRQUFRLE9BQU8sWUFBWSxJQUNsRCxLQUFLLEtBQUssT0FBTyxNQUFNLE1BQU07QUFFakMsUUFBTSxlQUFlLE9BQU8sZ0JBQWdCLENBQUM7QUFDN0MsU0FBTyxhQUFhO0FBQUEsSUFDbEIsU0FBUztBQUFBLE1BQ1AsUUFBUTtBQUFBLE1BQ1IsVUFBVTtBQUFBLE1BQ1YsU0FBUztBQUFBLE1BQ1QsU0FBUyxDQUFDO0FBQUEsSUFDWjtBQUFBLElBQ0EsU0FBUyxDQUFDLGNBQWMsR0FBRyxJQUFJLEdBQUcsR0FBSSxPQUFPLFdBQVcsQ0FBQyxDQUFFO0FBQUEsSUFDM0QsU0FBUztBQUFBLElBQ1QsTUFBTSxPQUFPO0FBQUEsSUFDYixPQUFPO0FBQUEsTUFDTCxLQUFLO0FBQUEsTUFDTCxRQUFRO0FBQUEsTUFDUixlQUFlO0FBQUEsUUFDYixXQUFXO0FBQUEsUUFDWCxRQUFRO0FBQUEsVUFDTixzQkFBc0I7QUFBQSxVQUN0QixpQkFBaUI7QUFBQSxRQUNuQjtBQUFBLFFBQ0EsVUFBVTtBQUFBLFVBQ1I7QUFBQSxVQUNBO0FBQUEsVUFDQTtBQUFBLFFBQ0Y7QUFBQSxRQUNBLFNBQVMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7QUFBQSxNQUNuQztBQUFBLE1BQ0EsYUFBYTtBQUFBLE1BQ2I7QUFBQSxNQUNBLEtBQUs7QUFBQSxRQUNILE9BQU8sQ0FBQyxHQUFHLGNBQWMsS0FBSyxLQUFLLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUFBLFFBQ2pFLE1BQU0sT0FBTztBQUFBLFFBQ2IsVUFBVSxPQUFPO0FBQUEsUUFDakIsU0FBUyxDQUFDLE1BQU0sS0FBSztBQUFBLE1BQ3ZCO0FBQUEsSUFDRjtBQUFBLEVBQ0YsQ0FBQztBQUNIOzs7QURwREEsU0FBUyxVQUFVO0FBTG5CLElBQU0sbUNBQW1DO0FBQXVHLElBQU0sMkNBQTJDO0FBT2pNLElBQU8sc0JBQVEsc0JBQXNCO0FBQUEsRUFDbkMsTUFBTUMsTUFBSyxRQUFRLElBQUksSUFBSSx3Q0FBZSxFQUFFLFFBQVE7QUFBQSxFQUNwRCxNQUFNO0FBQUEsRUFDTixTQUFTO0FBQUEsSUFDUDtBQUFBLE1BQ0UsTUFBTTtBQUFBLE1BQ04sTUFBTSxjQUFjO0FBQ2xCLGNBQU0sY0FBY0EsTUFBSyxLQUFLLGtDQUFXLGVBQWU7QUFDeEQsY0FBTSxZQUFZLFlBQVksV0FBVyxFQUFFO0FBQzNDLGdCQUFRLElBQUksWUFBWSxXQUFXO0FBQUEsTUFDckM7QUFBQSxJQUNGO0FBQUEsSUFDQTtBQUFBLE1BQ0UsTUFBTTtBQUFBLE1BQ04sTUFBTSxhQUFhO0FBQ2pCLGFBQUssYUFBYUEsTUFBSyxLQUFLLGtDQUFXLGVBQWUsQ0FBQztBQUFBLE1BQ3pEO0FBQUEsSUFDRjtBQUFBLElBQ0E7QUFBQSxNQUNFLE1BQU07QUFBQSxNQUNOLE1BQU0sY0FBYztBQUNsQixjQUFNO0FBQUEsVUFDSkEsTUFBSyxLQUFLLGtDQUFXLGVBQWU7QUFBQSxVQUNwQ0EsTUFBSyxLQUFLLGtDQUFXLGdCQUFnQjtBQUFBLFVBQ3JDLEVBQUUsV0FBVyxLQUFLO0FBQUEsUUFDcEI7QUFDQSxnQkFBUSxJQUFJLDJCQUEyQjtBQUFBLE1BQ3pDO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFDRixDQUFDOyIsCiAgIm5hbWVzIjogWyJwYXRoIiwgInBhdGgiXQp9Cg==
|