create-cubing-app 0.43.5 → 0.47.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,530 @@
1
+ {
2
+ "name": "app-template",
3
+ "lockfileVersion": 3,
4
+ "requires": true,
5
+ "packages": {
6
+ "": {
7
+ "dependencies": {
8
+ "cubing": "^0.47.1"
9
+ },
10
+ "devDependencies": {
11
+ "barely-a-dev-server": "^0.6.1"
12
+ }
13
+ },
14
+ "node_modules/@esbuild/aix-ppc64": {
15
+ "version": "0.20.1",
16
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.1.tgz",
17
+ "integrity": "sha512-m55cpeupQ2DbuRGQMMZDzbv9J9PgVelPjlcmM5kxHnrBdBx6REaEd7LamYV7Dm8N7rCyR/XwU6rVP8ploKtIkA==",
18
+ "cpu": [
19
+ "ppc64"
20
+ ],
21
+ "dev": true,
22
+ "optional": true,
23
+ "os": [
24
+ "aix"
25
+ ],
26
+ "peer": true,
27
+ "engines": {
28
+ "node": ">=12"
29
+ }
30
+ },
31
+ "node_modules/@esbuild/android-arm": {
32
+ "version": "0.20.1",
33
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.1.tgz",
34
+ "integrity": "sha512-4j0+G27/2ZXGWR5okcJi7pQYhmkVgb4D7UKwxcqrjhvp5TKWx3cUjgB1CGj1mfdmJBQ9VnUGgUhign+FPF2Zgw==",
35
+ "cpu": [
36
+ "arm"
37
+ ],
38
+ "dev": true,
39
+ "optional": true,
40
+ "os": [
41
+ "android"
42
+ ],
43
+ "peer": true,
44
+ "engines": {
45
+ "node": ">=12"
46
+ }
47
+ },
48
+ "node_modules/@esbuild/android-arm64": {
49
+ "version": "0.20.1",
50
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.1.tgz",
51
+ "integrity": "sha512-hCnXNF0HM6AjowP+Zou0ZJMWWa1VkD77BXe959zERgGJBBxB+sV+J9f/rcjeg2c5bsukD/n17RKWXGFCO5dD5A==",
52
+ "cpu": [
53
+ "arm64"
54
+ ],
55
+ "dev": true,
56
+ "optional": true,
57
+ "os": [
58
+ "android"
59
+ ],
60
+ "peer": true,
61
+ "engines": {
62
+ "node": ">=12"
63
+ }
64
+ },
65
+ "node_modules/@esbuild/android-x64": {
66
+ "version": "0.20.1",
67
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.1.tgz",
68
+ "integrity": "sha512-MSfZMBoAsnhpS+2yMFYIQUPs8Z19ajwfuaSZx+tSl09xrHZCjbeXXMsUF/0oq7ojxYEpsSo4c0SfjxOYXRbpaA==",
69
+ "cpu": [
70
+ "x64"
71
+ ],
72
+ "dev": true,
73
+ "optional": true,
74
+ "os": [
75
+ "android"
76
+ ],
77
+ "peer": true,
78
+ "engines": {
79
+ "node": ">=12"
80
+ }
81
+ },
82
+ "node_modules/@esbuild/darwin-arm64": {
83
+ "version": "0.20.1",
84
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.1.tgz",
85
+ "integrity": "sha512-Ylk6rzgMD8klUklGPzS414UQLa5NPXZD5tf8JmQU8GQrj6BrFA/Ic9tb2zRe1kOZyCbGl+e8VMbDRazCEBqPvA==",
86
+ "cpu": [
87
+ "arm64"
88
+ ],
89
+ "dev": true,
90
+ "optional": true,
91
+ "os": [
92
+ "darwin"
93
+ ],
94
+ "peer": true,
95
+ "engines": {
96
+ "node": ">=12"
97
+ }
98
+ },
99
+ "node_modules/@esbuild/darwin-x64": {
100
+ "version": "0.20.1",
101
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.1.tgz",
102
+ "integrity": "sha512-pFIfj7U2w5sMp52wTY1XVOdoxw+GDwy9FsK3OFz4BpMAjvZVs0dT1VXs8aQm22nhwoIWUmIRaE+4xow8xfIDZA==",
103
+ "cpu": [
104
+ "x64"
105
+ ],
106
+ "dev": true,
107
+ "optional": true,
108
+ "os": [
109
+ "darwin"
110
+ ],
111
+ "peer": true,
112
+ "engines": {
113
+ "node": ">=12"
114
+ }
115
+ },
116
+ "node_modules/@esbuild/freebsd-arm64": {
117
+ "version": "0.20.1",
118
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.1.tgz",
119
+ "integrity": "sha512-UyW1WZvHDuM4xDz0jWun4qtQFauNdXjXOtIy7SYdf7pbxSWWVlqhnR/T2TpX6LX5NI62spt0a3ldIIEkPM6RHw==",
120
+ "cpu": [
121
+ "arm64"
122
+ ],
123
+ "dev": true,
124
+ "optional": true,
125
+ "os": [
126
+ "freebsd"
127
+ ],
128
+ "peer": true,
129
+ "engines": {
130
+ "node": ">=12"
131
+ }
132
+ },
133
+ "node_modules/@esbuild/freebsd-x64": {
134
+ "version": "0.20.1",
135
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.1.tgz",
136
+ "integrity": "sha512-itPwCw5C+Jh/c624vcDd9kRCCZVpzpQn8dtwoYIt2TJF3S9xJLiRohnnNrKwREvcZYx0n8sCSbvGH349XkcQeg==",
137
+ "cpu": [
138
+ "x64"
139
+ ],
140
+ "dev": true,
141
+ "optional": true,
142
+ "os": [
143
+ "freebsd"
144
+ ],
145
+ "peer": true,
146
+ "engines": {
147
+ "node": ">=12"
148
+ }
149
+ },
150
+ "node_modules/@esbuild/linux-arm": {
151
+ "version": "0.20.1",
152
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.1.tgz",
153
+ "integrity": "sha512-LojC28v3+IhIbfQ+Vu4Ut5n3wKcgTu6POKIHN9Wpt0HnfgUGlBuyDDQR4jWZUZFyYLiz4RBBBmfU6sNfn6RhLw==",
154
+ "cpu": [
155
+ "arm"
156
+ ],
157
+ "dev": true,
158
+ "optional": true,
159
+ "os": [
160
+ "linux"
161
+ ],
162
+ "peer": true,
163
+ "engines": {
164
+ "node": ">=12"
165
+ }
166
+ },
167
+ "node_modules/@esbuild/linux-arm64": {
168
+ "version": "0.20.1",
169
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.1.tgz",
170
+ "integrity": "sha512-cX8WdlF6Cnvw/DO9/X7XLH2J6CkBnz7Twjpk56cshk9sjYVcuh4sXQBy5bmTwzBjNVZze2yaV1vtcJS04LbN8w==",
171
+ "cpu": [
172
+ "arm64"
173
+ ],
174
+ "dev": true,
175
+ "optional": true,
176
+ "os": [
177
+ "linux"
178
+ ],
179
+ "peer": true,
180
+ "engines": {
181
+ "node": ">=12"
182
+ }
183
+ },
184
+ "node_modules/@esbuild/linux-ia32": {
185
+ "version": "0.20.1",
186
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.1.tgz",
187
+ "integrity": "sha512-4H/sQCy1mnnGkUt/xszaLlYJVTz3W9ep52xEefGtd6yXDQbz/5fZE5dFLUgsPdbUOQANcVUa5iO6g3nyy5BJiw==",
188
+ "cpu": [
189
+ "ia32"
190
+ ],
191
+ "dev": true,
192
+ "optional": true,
193
+ "os": [
194
+ "linux"
195
+ ],
196
+ "peer": true,
197
+ "engines": {
198
+ "node": ">=12"
199
+ }
200
+ },
201
+ "node_modules/@esbuild/linux-loong64": {
202
+ "version": "0.20.1",
203
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.1.tgz",
204
+ "integrity": "sha512-c0jgtB+sRHCciVXlyjDcWb2FUuzlGVRwGXgI+3WqKOIuoo8AmZAddzeOHeYLtD+dmtHw3B4Xo9wAUdjlfW5yYA==",
205
+ "cpu": [
206
+ "loong64"
207
+ ],
208
+ "dev": true,
209
+ "optional": true,
210
+ "os": [
211
+ "linux"
212
+ ],
213
+ "peer": true,
214
+ "engines": {
215
+ "node": ">=12"
216
+ }
217
+ },
218
+ "node_modules/@esbuild/linux-mips64el": {
219
+ "version": "0.20.1",
220
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.1.tgz",
221
+ "integrity": "sha512-TgFyCfIxSujyuqdZKDZ3yTwWiGv+KnlOeXXitCQ+trDODJ+ZtGOzLkSWngynP0HZnTsDyBbPy7GWVXWaEl6lhA==",
222
+ "cpu": [
223
+ "mips64el"
224
+ ],
225
+ "dev": true,
226
+ "optional": true,
227
+ "os": [
228
+ "linux"
229
+ ],
230
+ "peer": true,
231
+ "engines": {
232
+ "node": ">=12"
233
+ }
234
+ },
235
+ "node_modules/@esbuild/linux-ppc64": {
236
+ "version": "0.20.1",
237
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.1.tgz",
238
+ "integrity": "sha512-b+yuD1IUeL+Y93PmFZDZFIElwbmFfIKLKlYI8M6tRyzE6u7oEP7onGk0vZRh8wfVGC2dZoy0EqX1V8qok4qHaw==",
239
+ "cpu": [
240
+ "ppc64"
241
+ ],
242
+ "dev": true,
243
+ "optional": true,
244
+ "os": [
245
+ "linux"
246
+ ],
247
+ "peer": true,
248
+ "engines": {
249
+ "node": ">=12"
250
+ }
251
+ },
252
+ "node_modules/@esbuild/linux-riscv64": {
253
+ "version": "0.20.1",
254
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.1.tgz",
255
+ "integrity": "sha512-wpDlpE0oRKZwX+GfomcALcouqjjV8MIX8DyTrxfyCfXxoKQSDm45CZr9fanJ4F6ckD4yDEPT98SrjvLwIqUCgg==",
256
+ "cpu": [
257
+ "riscv64"
258
+ ],
259
+ "dev": true,
260
+ "optional": true,
261
+ "os": [
262
+ "linux"
263
+ ],
264
+ "peer": true,
265
+ "engines": {
266
+ "node": ">=12"
267
+ }
268
+ },
269
+ "node_modules/@esbuild/linux-s390x": {
270
+ "version": "0.20.1",
271
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.1.tgz",
272
+ "integrity": "sha512-5BepC2Au80EohQ2dBpyTquqGCES7++p7G+7lXe1bAIvMdXm4YYcEfZtQrP4gaoZ96Wv1Ute61CEHFU7h4FMueQ==",
273
+ "cpu": [
274
+ "s390x"
275
+ ],
276
+ "dev": true,
277
+ "optional": true,
278
+ "os": [
279
+ "linux"
280
+ ],
281
+ "peer": true,
282
+ "engines": {
283
+ "node": ">=12"
284
+ }
285
+ },
286
+ "node_modules/@esbuild/linux-x64": {
287
+ "version": "0.20.1",
288
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.1.tgz",
289
+ "integrity": "sha512-5gRPk7pKuaIB+tmH+yKd2aQTRpqlf1E4f/mC+tawIm/CGJemZcHZpp2ic8oD83nKgUPMEd0fNanrnFljiruuyA==",
290
+ "cpu": [
291
+ "x64"
292
+ ],
293
+ "dev": true,
294
+ "optional": true,
295
+ "os": [
296
+ "linux"
297
+ ],
298
+ "peer": true,
299
+ "engines": {
300
+ "node": ">=12"
301
+ }
302
+ },
303
+ "node_modules/@esbuild/netbsd-x64": {
304
+ "version": "0.20.1",
305
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.1.tgz",
306
+ "integrity": "sha512-4fL68JdrLV2nVW2AaWZBv3XEm3Ae3NZn/7qy2KGAt3dexAgSVT+Hc97JKSZnqezgMlv9x6KV0ZkZY7UO5cNLCg==",
307
+ "cpu": [
308
+ "x64"
309
+ ],
310
+ "dev": true,
311
+ "optional": true,
312
+ "os": [
313
+ "netbsd"
314
+ ],
315
+ "peer": true,
316
+ "engines": {
317
+ "node": ">=12"
318
+ }
319
+ },
320
+ "node_modules/@esbuild/openbsd-x64": {
321
+ "version": "0.20.1",
322
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.1.tgz",
323
+ "integrity": "sha512-GhRuXlvRE+twf2ES+8REbeCb/zeikNqwD3+6S5y5/x+DYbAQUNl0HNBs4RQJqrechS4v4MruEr8ZtAin/hK5iw==",
324
+ "cpu": [
325
+ "x64"
326
+ ],
327
+ "dev": true,
328
+ "optional": true,
329
+ "os": [
330
+ "openbsd"
331
+ ],
332
+ "peer": true,
333
+ "engines": {
334
+ "node": ">=12"
335
+ }
336
+ },
337
+ "node_modules/@esbuild/sunos-x64": {
338
+ "version": "0.20.1",
339
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.1.tgz",
340
+ "integrity": "sha512-ZnWEyCM0G1Ex6JtsygvC3KUUrlDXqOihw8RicRuQAzw+c4f1D66YlPNNV3rkjVW90zXVsHwZYWbJh3v+oQFM9Q==",
341
+ "cpu": [
342
+ "x64"
343
+ ],
344
+ "dev": true,
345
+ "optional": true,
346
+ "os": [
347
+ "sunos"
348
+ ],
349
+ "peer": true,
350
+ "engines": {
351
+ "node": ">=12"
352
+ }
353
+ },
354
+ "node_modules/@esbuild/win32-arm64": {
355
+ "version": "0.20.1",
356
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.1.tgz",
357
+ "integrity": "sha512-QZ6gXue0vVQY2Oon9WyLFCdSuYbXSoxaZrPuJ4c20j6ICedfsDilNPYfHLlMH7vGfU5DQR0czHLmJvH4Nzis/A==",
358
+ "cpu": [
359
+ "arm64"
360
+ ],
361
+ "dev": true,
362
+ "optional": true,
363
+ "os": [
364
+ "win32"
365
+ ],
366
+ "peer": true,
367
+ "engines": {
368
+ "node": ">=12"
369
+ }
370
+ },
371
+ "node_modules/@esbuild/win32-ia32": {
372
+ "version": "0.20.1",
373
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.1.tgz",
374
+ "integrity": "sha512-HzcJa1NcSWTAU0MJIxOho8JftNp9YALui3o+Ny7hCh0v5f90nprly1U3Sj1Ldj/CvKKdvvFsCRvDkpsEMp4DNw==",
375
+ "cpu": [
376
+ "ia32"
377
+ ],
378
+ "dev": true,
379
+ "optional": true,
380
+ "os": [
381
+ "win32"
382
+ ],
383
+ "peer": true,
384
+ "engines": {
385
+ "node": ">=12"
386
+ }
387
+ },
388
+ "node_modules/@esbuild/win32-x64": {
389
+ "version": "0.20.1",
390
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.1.tgz",
391
+ "integrity": "sha512-0MBh53o6XtI6ctDnRMeQ+xoCN8kD2qI1rY1KgF/xdWQwoFeKou7puvDfV8/Wv4Ctx2rRpET/gGdz3YlNtNACSA==",
392
+ "cpu": [
393
+ "x64"
394
+ ],
395
+ "dev": true,
396
+ "optional": true,
397
+ "os": [
398
+ "win32"
399
+ ],
400
+ "peer": true,
401
+ "engines": {
402
+ "node": ">=12"
403
+ }
404
+ },
405
+ "node_modules/@types/stats.js": {
406
+ "version": "0.17.3",
407
+ "resolved": "https://registry.npmjs.org/@types/stats.js/-/stats.js-0.17.3.tgz",
408
+ "integrity": "sha512-pXNfAD3KHOdif9EQXZ9deK82HVNaXP5ZIF5RP2QG6OQFNTaY2YIetfrE9t528vEreGQvEPRDDc8muaoYeK0SxQ=="
409
+ },
410
+ "node_modules/@types/three": {
411
+ "version": "0.160.0",
412
+ "resolved": "https://registry.npmjs.org/@types/three/-/three-0.160.0.tgz",
413
+ "integrity": "sha512-jWlbUBovicUKaOYxzgkLlhkiEQJkhCVvg4W2IYD2trqD2om3VK4DGLpHH5zQHNr7RweZK/5re/4IVhbhvxbV9w==",
414
+ "dependencies": {
415
+ "@types/stats.js": "*",
416
+ "@types/webxr": "*",
417
+ "fflate": "~0.6.10",
418
+ "meshoptimizer": "~0.18.1"
419
+ }
420
+ },
421
+ "node_modules/@types/web-bluetooth": {
422
+ "version": "0.0.20",
423
+ "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz",
424
+ "integrity": "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow=="
425
+ },
426
+ "node_modules/@types/webxr": {
427
+ "version": "0.5.10",
428
+ "resolved": "https://registry.npmjs.org/@types/webxr/-/webxr-0.5.10.tgz",
429
+ "integrity": "sha512-n3u5sqXQJhf1CS68mw3Wf16FQ4cRPNBBwdYLFzq3UddiADOim1Pn3Y6PBdDilz1vOJF3ybLxJ8ZEDlLIzrOQZg=="
430
+ },
431
+ "node_modules/barely-a-dev-server": {
432
+ "version": "0.6.1",
433
+ "resolved": "https://registry.npmjs.org/barely-a-dev-server/-/barely-a-dev-server-0.6.1.tgz",
434
+ "integrity": "sha512-9VplhaxfbMhAk+PTcvBkR68sQDNpaxrd+GCc1MjFkPYb0ccxgSU+qzgcP4gjxMMvQ29vMgbwgYNp371lBofPOg==",
435
+ "dev": true,
436
+ "engines": {
437
+ "bun": ">=1.0.30",
438
+ "node": ">=19"
439
+ },
440
+ "peerDependencies": {
441
+ "esbuild": "^0.20.1"
442
+ }
443
+ },
444
+ "node_modules/comlink": {
445
+ "version": "4.4.1",
446
+ "resolved": "https://registry.npmjs.org/comlink/-/comlink-4.4.1.tgz",
447
+ "integrity": "sha512-+1dlx0aY5Jo1vHy/tSsIGpSkN4tS9rZSW8FIhG0JH/crs9wwweswIo/POr451r7bZww3hFbPAKnTpimzL/mm4Q=="
448
+ },
449
+ "node_modules/cubing": {
450
+ "version": "0.47.1",
451
+ "resolved": "https://registry.npmjs.org/cubing/-/cubing-0.47.1.tgz",
452
+ "integrity": "sha512-wWY7I3oI1b3goDOMr5qHtMcVyijKFMF6NCHxEz9+8hcrhJ8DU7p9rSwNrATv0PHZGR7K0HIaqAjw9z0vk/fKwQ==",
453
+ "dependencies": {
454
+ "@types/three": "^0.160.0",
455
+ "@types/web-bluetooth": "^0.0.20",
456
+ "comlink": "^4.4.1",
457
+ "random-uint-below": "^2.0.0",
458
+ "three": "^0.160.0"
459
+ },
460
+ "bin": {
461
+ "scramble": "dist/bin/scramble.js"
462
+ },
463
+ "engines": {
464
+ "node": ">=19"
465
+ }
466
+ },
467
+ "node_modules/esbuild": {
468
+ "version": "0.20.1",
469
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.1.tgz",
470
+ "integrity": "sha512-OJwEgrpWm/PCMsLVWXKqvcjme3bHNpOgN7Tb6cQnR5n0TPbQx1/Xrn7rqM+wn17bYeT6MGB5sn1Bh5YiGi70nA==",
471
+ "dev": true,
472
+ "hasInstallScript": true,
473
+ "peer": true,
474
+ "bin": {
475
+ "esbuild": "bin/esbuild"
476
+ },
477
+ "engines": {
478
+ "node": ">=12"
479
+ },
480
+ "optionalDependencies": {
481
+ "@esbuild/aix-ppc64": "0.20.1",
482
+ "@esbuild/android-arm": "0.20.1",
483
+ "@esbuild/android-arm64": "0.20.1",
484
+ "@esbuild/android-x64": "0.20.1",
485
+ "@esbuild/darwin-arm64": "0.20.1",
486
+ "@esbuild/darwin-x64": "0.20.1",
487
+ "@esbuild/freebsd-arm64": "0.20.1",
488
+ "@esbuild/freebsd-x64": "0.20.1",
489
+ "@esbuild/linux-arm": "0.20.1",
490
+ "@esbuild/linux-arm64": "0.20.1",
491
+ "@esbuild/linux-ia32": "0.20.1",
492
+ "@esbuild/linux-loong64": "0.20.1",
493
+ "@esbuild/linux-mips64el": "0.20.1",
494
+ "@esbuild/linux-ppc64": "0.20.1",
495
+ "@esbuild/linux-riscv64": "0.20.1",
496
+ "@esbuild/linux-s390x": "0.20.1",
497
+ "@esbuild/linux-x64": "0.20.1",
498
+ "@esbuild/netbsd-x64": "0.20.1",
499
+ "@esbuild/openbsd-x64": "0.20.1",
500
+ "@esbuild/sunos-x64": "0.20.1",
501
+ "@esbuild/win32-arm64": "0.20.1",
502
+ "@esbuild/win32-ia32": "0.20.1",
503
+ "@esbuild/win32-x64": "0.20.1"
504
+ }
505
+ },
506
+ "node_modules/fflate": {
507
+ "version": "0.6.10",
508
+ "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.6.10.tgz",
509
+ "integrity": "sha512-IQrh3lEPM93wVCEczc9SaAOvkmcoQn/G8Bo1e8ZPlY3X3bnAxWaBdvTdvM1hP62iZp0BXWDy4vTAy4fF0+Dlpg=="
510
+ },
511
+ "node_modules/meshoptimizer": {
512
+ "version": "0.18.1",
513
+ "resolved": "https://registry.npmjs.org/meshoptimizer/-/meshoptimizer-0.18.1.tgz",
514
+ "integrity": "sha512-ZhoIoL7TNV4s5B6+rx5mC//fw8/POGyNxS/DZyCJeiZ12ScLfVwRE/GfsxwiTkMYYD5DmK2/JXnEVXqL4rF+Sw=="
515
+ },
516
+ "node_modules/random-uint-below": {
517
+ "version": "2.0.0",
518
+ "resolved": "https://registry.npmjs.org/random-uint-below/-/random-uint-below-2.0.0.tgz",
519
+ "integrity": "sha512-2gD9r+3IkNJ6JGfra+T2tA4SGf3ne5pz2QGuXQ9fXdxAX38i0OEsqJ19smnEsYnjhYi0H0ICo8D4pfqw3Pszhw==",
520
+ "engines": {
521
+ "node": ">=19"
522
+ }
523
+ },
524
+ "node_modules/three": {
525
+ "version": "0.160.0",
526
+ "resolved": "https://registry.npmjs.org/three/-/three-0.160.0.tgz",
527
+ "integrity": "sha512-DLU8lc0zNIPkM7rH5/e1Ks1Z8tWCGRq6g8mPowdDJpw1CFBJMU7UoJjC6PefXW7z//SSl0b2+GCw14LB+uDhng=="
528
+ }
529
+ }
530
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "type": "module",
3
+ "scripts": {
4
+ "build": "node script/build.js",
5
+ "dev": "node script/build.js -- --dev",
6
+ "clean": "rm -rf ./dist",
7
+ "upgrade-cubing": "npm install --save cubing@latest"
8
+ },
9
+ "dependencies": {
10
+ "cubing": "^0.47.1"
11
+ },
12
+ "devDependencies": {
13
+ "barely-a-dev-server": "^0.6.1"
14
+ }
15
+ }
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env node
2
+
3
+ import {barelyServe} from "barely-a-dev-server";
4
+
5
+ export const COMMON_BUILD_OPTIONS = {
6
+ entryRoot: "./src",
7
+ esbuildOptions: {chunkNames: "chunks/[name]-[hash]"}
8
+ }
9
+
10
+ if (process.argv.at(-1) === "--dev") {
11
+
12
+ barelyServe(COMMON_BUILD_OPTIONS);
13
+
14
+ } else {
15
+
16
+ const outDir = "./dist/web";
17
+ await barelyServe({
18
+ ...COMMON_BUILD_OPTIONS,
19
+ dev: false,
20
+ outDir,
21
+ });
22
+
23
+ console.log(`
24
+ Your app has been built in: ${outDir}
25
+ `)
26
+ }
@@ -0,0 +1,9 @@
1
+ /* Center everything on the page. */
2
+ html, body {
3
+ height: 100%;
4
+ margin: 0;
5
+ display: grid;
6
+ place-content: center;
7
+ gap: 1em;
8
+ font-family: sans-serif;
9
+ }
@@ -0,0 +1,17 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+
4
+ <head>
5
+ <meta charset="utf8">
6
+ <title>My Cubing App</title>
7
+ <link rel="stylesheet" href="./index.css">
8
+ <!-- Note: the source file is `main.ts`, but here we use the transpiled file name it will have on the web server. -->
9
+ <script src="./main.js" type="module"></script>
10
+ </head>
11
+
12
+ <body>
13
+ <h1>My Cubing App</h1>
14
+ <twisty-player id="main-player"></twisty-player>
15
+ </body>
16
+
17
+ </html>
@@ -0,0 +1,27 @@
1
+ // Always keep the following line if you are using any twisty players on your page.
2
+ import "cubing/twisty";
3
+ // Use the following line for specific imports from `cubing/twisty`.
4
+ import { TwistyAlgViewer, type TwistyPlayer } from "cubing/twisty";
5
+
6
+ // Import from other modules as usual.
7
+ import { randomScrambleForEvent } from "cubing/scramble";
8
+
9
+ class App {
10
+ // Example of getting an element from the page.
11
+ twistyPlayer: TwistyPlayer = document.querySelector("#main-player")!;
12
+ // Example of creating a new element and adding it to the page.
13
+ twistyAlgViewer = document.body.appendChild(
14
+ new TwistyAlgViewer({ twistyPlayer: this.twistyPlayer })
15
+ );
16
+ constructor() {
17
+ this.updateScramble();
18
+ }
19
+
20
+ async updateScramble() {
21
+ this.twistyPlayer.alg = await randomScrambleForEvent("333");
22
+ }
23
+ }
24
+
25
+ // Make the app object available in the console for debugging.
26
+ // Try running: app.updateScramble()
27
+ globalThis.app = new App();
@@ -0,0 +1,8 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es2022",
4
+ "module": "es2022",
5
+ "moduleResolution": "bundler",
6
+ "verbatimModuleSyntax": true, // avoids surprises with `cubing/twisty`
7
+ }
8
+ }
@@ -66,9 +66,8 @@ Please select a different name (or delete the existing project folder).
66
66
  }
67
67
  await mkdir(projectPath, { recursive: true });
68
68
 
69
- const f = new URL("../app", import.meta.url).pathname;
70
- console.log(f);
71
- await cp(f, projectPath, {
69
+ const appTemplatePath = new URL("../app-template", import.meta.url).pathname;
70
+ await cp(appTemplatePath, projectPath, {
72
71
  recursive: true,
73
72
  });
74
73
  await execPromise("npm install", {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-cubing-app",
3
- "version": "0.43.5",
3
+ "version": "0.47.1",
4
4
  "type": "module",
5
5
  "bin": "./bin/create-cubing-app.js",
6
6
  "engines": {
@@ -10,16 +10,17 @@
10
10
  "prepublish-only": "prepublish-only"
11
11
  },
12
12
  "dependencies": {
13
- "cubing": "^0.43.4"
13
+ "cubing": "^0.47.1"
14
14
  },
15
15
  "devDependencies": {
16
- "@biomejs/biome": "^1.2.2",
17
- "@types/validate-npm-package-name": "^4.0.0",
18
- "barely-a-dev-server": "^0.6.0",
19
- "esbuild": "^0.19.2",
16
+ "@biomejs/biome": "^1.6.0",
17
+ "@types/validate-npm-package-name": "^4.0.2",
18
+ "barely-a-dev-server": "^0.6.1",
19
+ "esbuild": "^0.20.1",
20
20
  "validate-npm-package-name": "^5.0.0"
21
21
  },
22
22
  "files": [
23
+ "./app-template",
23
24
  "./bin",
24
25
  "./script",
25
26
  "./src",