@anvil-works/anvil-cli 0.3.12 → 0.4.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.
package/dist/index.js CHANGED
@@ -90,6 +90,704 @@ var __webpack_modules__ = {
90
90
  exports1.deferred = deferred;
91
91
  exports1.createDeferred = deferred;
92
92
  },
93
+ "./node_modules/.pnpm/@napi-rs+keyring@1.2.0/node_modules/@napi-rs/keyring/index.js" (module, __unused_rspack_exports, __webpack_require__) {
94
+ var require1;
95
+ const { createRequire } = __webpack_require__("node:module");
96
+ require1 = createRequire(__filename);
97
+ const { readFileSync } = __webpack_require__("node:fs");
98
+ let nativeBinding = null;
99
+ const loadErrors = [];
100
+ const isMusl = ()=>{
101
+ let musl = false;
102
+ if ('linux' === process.platform) {
103
+ musl = isMuslFromFilesystem();
104
+ if (null === musl) musl = isMuslFromReport();
105
+ if (null === musl) musl = isMuslFromChildProcess();
106
+ }
107
+ return musl;
108
+ };
109
+ const isFileMusl = (f)=>f.includes('libc.musl-') || f.includes('ld-musl-');
110
+ const isMuslFromFilesystem = ()=>{
111
+ try {
112
+ return readFileSync('/usr/bin/ldd', 'utf-8').includes('musl');
113
+ } catch {
114
+ return null;
115
+ }
116
+ };
117
+ const isMuslFromReport = ()=>{
118
+ let report = null;
119
+ if ('function' == typeof process.report?.getReport) {
120
+ process.report.excludeNetwork = true;
121
+ report = process.report.getReport();
122
+ }
123
+ if (!report) return null;
124
+ if (report.header && report.header.glibcVersionRuntime) return false;
125
+ if (Array.isArray(report.sharedObjects)) {
126
+ if (report.sharedObjects.some(isFileMusl)) return true;
127
+ }
128
+ return false;
129
+ };
130
+ const isMuslFromChildProcess = ()=>{
131
+ try {
132
+ return __webpack_require__("child_process").execSync('ldd --version', {
133
+ encoding: 'utf8'
134
+ }).includes('musl');
135
+ } catch (e) {
136
+ return false;
137
+ }
138
+ };
139
+ function requireNative() {
140
+ if (process.env.NAPI_RS_NATIVE_LIBRARY_PATH) try {
141
+ nativeBinding = require1(process.env.NAPI_RS_NATIVE_LIBRARY_PATH);
142
+ } catch (err) {
143
+ loadErrors.push(err);
144
+ }
145
+ else if ('android' === process.platform) if ('arm64' === process.arch) {
146
+ try {
147
+ return __webpack_require__(Object(function() {
148
+ var e = new Error("Cannot find module './keyring.android-arm64.node'");
149
+ e.code = 'MODULE_NOT_FOUND';
150
+ throw e;
151
+ }()));
152
+ } catch (e) {
153
+ loadErrors.push(e);
154
+ }
155
+ try {
156
+ const binding = __webpack_require__(Object(function() {
157
+ var e = new Error("Cannot find module '@napi-rs/keyring-android-arm64'");
158
+ e.code = 'MODULE_NOT_FOUND';
159
+ throw e;
160
+ }()));
161
+ const bindingPackageVersion = __webpack_require__(Object(function() {
162
+ var e = new Error("Cannot find module '@napi-rs/keyring-android-arm64/package.json'");
163
+ e.code = 'MODULE_NOT_FOUND';
164
+ throw e;
165
+ }()));
166
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
167
+ return binding;
168
+ } catch (e) {
169
+ loadErrors.push(e);
170
+ }
171
+ } else if ('arm' === process.arch) {
172
+ try {
173
+ return __webpack_require__(Object(function() {
174
+ var e = new Error("Cannot find module './keyring.android-arm-eabi.node'");
175
+ e.code = 'MODULE_NOT_FOUND';
176
+ throw e;
177
+ }()));
178
+ } catch (e) {
179
+ loadErrors.push(e);
180
+ }
181
+ try {
182
+ const binding = __webpack_require__(Object(function() {
183
+ var e = new Error("Cannot find module '@napi-rs/keyring-android-arm-eabi'");
184
+ e.code = 'MODULE_NOT_FOUND';
185
+ throw e;
186
+ }()));
187
+ const bindingPackageVersion = __webpack_require__(Object(function() {
188
+ var e = new Error("Cannot find module '@napi-rs/keyring-android-arm-eabi/package.json'");
189
+ e.code = 'MODULE_NOT_FOUND';
190
+ throw e;
191
+ }()));
192
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
193
+ return binding;
194
+ } catch (e) {
195
+ loadErrors.push(e);
196
+ }
197
+ } else loadErrors.push(new Error(`Unsupported architecture on Android ${process.arch}`));
198
+ else if ('win32' === process.platform) if ('x64' === process.arch) {
199
+ try {
200
+ return __webpack_require__(Object(function() {
201
+ var e = new Error("Cannot find module './keyring.win32-x64-msvc.node'");
202
+ e.code = 'MODULE_NOT_FOUND';
203
+ throw e;
204
+ }()));
205
+ } catch (e) {
206
+ loadErrors.push(e);
207
+ }
208
+ try {
209
+ const binding = __webpack_require__(Object(function() {
210
+ var e = new Error("Cannot find module '@napi-rs/keyring-win32-x64-msvc'");
211
+ e.code = 'MODULE_NOT_FOUND';
212
+ throw e;
213
+ }()));
214
+ const bindingPackageVersion = __webpack_require__(Object(function() {
215
+ var e = new Error("Cannot find module '@napi-rs/keyring-win32-x64-msvc/package.json'");
216
+ e.code = 'MODULE_NOT_FOUND';
217
+ throw e;
218
+ }()));
219
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
220
+ return binding;
221
+ } catch (e) {
222
+ loadErrors.push(e);
223
+ }
224
+ } else if ('ia32' === process.arch) {
225
+ try {
226
+ return __webpack_require__(Object(function() {
227
+ var e = new Error("Cannot find module './keyring.win32-ia32-msvc.node'");
228
+ e.code = 'MODULE_NOT_FOUND';
229
+ throw e;
230
+ }()));
231
+ } catch (e) {
232
+ loadErrors.push(e);
233
+ }
234
+ try {
235
+ const binding = __webpack_require__(Object(function() {
236
+ var e = new Error("Cannot find module '@napi-rs/keyring-win32-ia32-msvc'");
237
+ e.code = 'MODULE_NOT_FOUND';
238
+ throw e;
239
+ }()));
240
+ const bindingPackageVersion = __webpack_require__(Object(function() {
241
+ var e = new Error("Cannot find module '@napi-rs/keyring-win32-ia32-msvc/package.json'");
242
+ e.code = 'MODULE_NOT_FOUND';
243
+ throw e;
244
+ }()));
245
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
246
+ return binding;
247
+ } catch (e) {
248
+ loadErrors.push(e);
249
+ }
250
+ } else if ('arm64' === process.arch) {
251
+ try {
252
+ return __webpack_require__(Object(function() {
253
+ var e = new Error("Cannot find module './keyring.win32-arm64-msvc.node'");
254
+ e.code = 'MODULE_NOT_FOUND';
255
+ throw e;
256
+ }()));
257
+ } catch (e) {
258
+ loadErrors.push(e);
259
+ }
260
+ try {
261
+ const binding = __webpack_require__(Object(function() {
262
+ var e = new Error("Cannot find module '@napi-rs/keyring-win32-arm64-msvc'");
263
+ e.code = 'MODULE_NOT_FOUND';
264
+ throw e;
265
+ }()));
266
+ const bindingPackageVersion = __webpack_require__(Object(function() {
267
+ var e = new Error("Cannot find module '@napi-rs/keyring-win32-arm64-msvc/package.json'");
268
+ e.code = 'MODULE_NOT_FOUND';
269
+ throw e;
270
+ }()));
271
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
272
+ return binding;
273
+ } catch (e) {
274
+ loadErrors.push(e);
275
+ }
276
+ } else loadErrors.push(new Error(`Unsupported architecture on Windows: ${process.arch}`));
277
+ else if ('darwin' === process.platform) {
278
+ try {
279
+ return __webpack_require__(Object(function() {
280
+ var e = new Error("Cannot find module './keyring.darwin-universal.node'");
281
+ e.code = 'MODULE_NOT_FOUND';
282
+ throw e;
283
+ }()));
284
+ } catch (e) {
285
+ loadErrors.push(e);
286
+ }
287
+ try {
288
+ const binding = __webpack_require__(Object(function() {
289
+ var e = new Error("Cannot find module '@napi-rs/keyring-darwin-universal'");
290
+ e.code = 'MODULE_NOT_FOUND';
291
+ throw e;
292
+ }()));
293
+ const bindingPackageVersion = __webpack_require__(Object(function() {
294
+ var e = new Error("Cannot find module '@napi-rs/keyring-darwin-universal/package.json'");
295
+ e.code = 'MODULE_NOT_FOUND';
296
+ throw e;
297
+ }()));
298
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
299
+ return binding;
300
+ } catch (e) {
301
+ loadErrors.push(e);
302
+ }
303
+ if ('x64' === process.arch) {
304
+ try {
305
+ return __webpack_require__(Object(function() {
306
+ var e = new Error("Cannot find module './keyring.darwin-x64.node'");
307
+ e.code = 'MODULE_NOT_FOUND';
308
+ throw e;
309
+ }()));
310
+ } catch (e) {
311
+ loadErrors.push(e);
312
+ }
313
+ try {
314
+ const binding = __webpack_require__(Object(function() {
315
+ var e = new Error("Cannot find module '@napi-rs/keyring-darwin-x64'");
316
+ e.code = 'MODULE_NOT_FOUND';
317
+ throw e;
318
+ }()));
319
+ const bindingPackageVersion = __webpack_require__(Object(function() {
320
+ var e = new Error("Cannot find module '@napi-rs/keyring-darwin-x64/package.json'");
321
+ e.code = 'MODULE_NOT_FOUND';
322
+ throw e;
323
+ }()));
324
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
325
+ return binding;
326
+ } catch (e) {
327
+ loadErrors.push(e);
328
+ }
329
+ } else if ('arm64' === process.arch) {
330
+ try {
331
+ return __webpack_require__(Object(function() {
332
+ var e = new Error("Cannot find module './keyring.darwin-arm64.node'");
333
+ e.code = 'MODULE_NOT_FOUND';
334
+ throw e;
335
+ }()));
336
+ } catch (e) {
337
+ loadErrors.push(e);
338
+ }
339
+ try {
340
+ const binding = __webpack_require__("./node_modules/.pnpm/@napi-rs+keyring-darwin-arm64@1.2.0/node_modules/@napi-rs/keyring-darwin-arm64/keyring.darwin-arm64.node");
341
+ const bindingPackageVersion = __webpack_require__("./node_modules/.pnpm/@napi-rs+keyring-darwin-arm64@1.2.0/node_modules/@napi-rs/keyring-darwin-arm64/package.json").rE;
342
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
343
+ return binding;
344
+ } catch (e) {
345
+ loadErrors.push(e);
346
+ }
347
+ } else loadErrors.push(new Error(`Unsupported architecture on macOS: ${process.arch}`));
348
+ } else if ('freebsd' === process.platform) if ('x64' === process.arch) {
349
+ try {
350
+ return __webpack_require__(Object(function() {
351
+ var e = new Error("Cannot find module './keyring.freebsd-x64.node'");
352
+ e.code = 'MODULE_NOT_FOUND';
353
+ throw e;
354
+ }()));
355
+ } catch (e) {
356
+ loadErrors.push(e);
357
+ }
358
+ try {
359
+ const binding = __webpack_require__(Object(function() {
360
+ var e = new Error("Cannot find module '@napi-rs/keyring-freebsd-x64'");
361
+ e.code = 'MODULE_NOT_FOUND';
362
+ throw e;
363
+ }()));
364
+ const bindingPackageVersion = __webpack_require__(Object(function() {
365
+ var e = new Error("Cannot find module '@napi-rs/keyring-freebsd-x64/package.json'");
366
+ e.code = 'MODULE_NOT_FOUND';
367
+ throw e;
368
+ }()));
369
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
370
+ return binding;
371
+ } catch (e) {
372
+ loadErrors.push(e);
373
+ }
374
+ } else if ('arm64' === process.arch) {
375
+ try {
376
+ return __webpack_require__(Object(function() {
377
+ var e = new Error("Cannot find module './keyring.freebsd-arm64.node'");
378
+ e.code = 'MODULE_NOT_FOUND';
379
+ throw e;
380
+ }()));
381
+ } catch (e) {
382
+ loadErrors.push(e);
383
+ }
384
+ try {
385
+ const binding = __webpack_require__(Object(function() {
386
+ var e = new Error("Cannot find module '@napi-rs/keyring-freebsd-arm64'");
387
+ e.code = 'MODULE_NOT_FOUND';
388
+ throw e;
389
+ }()));
390
+ const bindingPackageVersion = __webpack_require__(Object(function() {
391
+ var e = new Error("Cannot find module '@napi-rs/keyring-freebsd-arm64/package.json'");
392
+ e.code = 'MODULE_NOT_FOUND';
393
+ throw e;
394
+ }()));
395
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
396
+ return binding;
397
+ } catch (e) {
398
+ loadErrors.push(e);
399
+ }
400
+ } else loadErrors.push(new Error(`Unsupported architecture on FreeBSD: ${process.arch}`));
401
+ else if ('linux' === process.platform) if ('x64' === process.arch) if (isMusl()) {
402
+ try {
403
+ return __webpack_require__(Object(function() {
404
+ var e = new Error("Cannot find module './keyring.linux-x64-musl.node'");
405
+ e.code = 'MODULE_NOT_FOUND';
406
+ throw e;
407
+ }()));
408
+ } catch (e) {
409
+ loadErrors.push(e);
410
+ }
411
+ try {
412
+ const binding = __webpack_require__(Object(function() {
413
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-x64-musl'");
414
+ e.code = 'MODULE_NOT_FOUND';
415
+ throw e;
416
+ }()));
417
+ const bindingPackageVersion = __webpack_require__(Object(function() {
418
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-x64-musl/package.json'");
419
+ e.code = 'MODULE_NOT_FOUND';
420
+ throw e;
421
+ }()));
422
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
423
+ return binding;
424
+ } catch (e) {
425
+ loadErrors.push(e);
426
+ }
427
+ } else {
428
+ try {
429
+ return __webpack_require__(Object(function() {
430
+ var e = new Error("Cannot find module './keyring.linux-x64-gnu.node'");
431
+ e.code = 'MODULE_NOT_FOUND';
432
+ throw e;
433
+ }()));
434
+ } catch (e) {
435
+ loadErrors.push(e);
436
+ }
437
+ try {
438
+ const binding = __webpack_require__(Object(function() {
439
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-x64-gnu'");
440
+ e.code = 'MODULE_NOT_FOUND';
441
+ throw e;
442
+ }()));
443
+ const bindingPackageVersion = __webpack_require__(Object(function() {
444
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-x64-gnu/package.json'");
445
+ e.code = 'MODULE_NOT_FOUND';
446
+ throw e;
447
+ }()));
448
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
449
+ return binding;
450
+ } catch (e) {
451
+ loadErrors.push(e);
452
+ }
453
+ }
454
+ else if ('arm64' === process.arch) if (isMusl()) {
455
+ try {
456
+ return __webpack_require__(Object(function() {
457
+ var e = new Error("Cannot find module './keyring.linux-arm64-musl.node'");
458
+ e.code = 'MODULE_NOT_FOUND';
459
+ throw e;
460
+ }()));
461
+ } catch (e) {
462
+ loadErrors.push(e);
463
+ }
464
+ try {
465
+ const binding = __webpack_require__(Object(function() {
466
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-arm64-musl'");
467
+ e.code = 'MODULE_NOT_FOUND';
468
+ throw e;
469
+ }()));
470
+ const bindingPackageVersion = __webpack_require__(Object(function() {
471
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-arm64-musl/package.json'");
472
+ e.code = 'MODULE_NOT_FOUND';
473
+ throw e;
474
+ }()));
475
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
476
+ return binding;
477
+ } catch (e) {
478
+ loadErrors.push(e);
479
+ }
480
+ } else {
481
+ try {
482
+ return __webpack_require__(Object(function() {
483
+ var e = new Error("Cannot find module './keyring.linux-arm64-gnu.node'");
484
+ e.code = 'MODULE_NOT_FOUND';
485
+ throw e;
486
+ }()));
487
+ } catch (e) {
488
+ loadErrors.push(e);
489
+ }
490
+ try {
491
+ const binding = __webpack_require__(Object(function() {
492
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-arm64-gnu'");
493
+ e.code = 'MODULE_NOT_FOUND';
494
+ throw e;
495
+ }()));
496
+ const bindingPackageVersion = __webpack_require__(Object(function() {
497
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-arm64-gnu/package.json'");
498
+ e.code = 'MODULE_NOT_FOUND';
499
+ throw e;
500
+ }()));
501
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
502
+ return binding;
503
+ } catch (e) {
504
+ loadErrors.push(e);
505
+ }
506
+ }
507
+ else if ('arm' === process.arch) if (isMusl()) {
508
+ try {
509
+ return __webpack_require__(Object(function() {
510
+ var e = new Error("Cannot find module './keyring.linux-arm-musleabihf.node'");
511
+ e.code = 'MODULE_NOT_FOUND';
512
+ throw e;
513
+ }()));
514
+ } catch (e) {
515
+ loadErrors.push(e);
516
+ }
517
+ try {
518
+ const binding = __webpack_require__(Object(function() {
519
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-arm-musleabihf'");
520
+ e.code = 'MODULE_NOT_FOUND';
521
+ throw e;
522
+ }()));
523
+ const bindingPackageVersion = __webpack_require__(Object(function() {
524
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-arm-musleabihf/package.json'");
525
+ e.code = 'MODULE_NOT_FOUND';
526
+ throw e;
527
+ }()));
528
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
529
+ return binding;
530
+ } catch (e) {
531
+ loadErrors.push(e);
532
+ }
533
+ } else {
534
+ try {
535
+ return __webpack_require__(Object(function() {
536
+ var e = new Error("Cannot find module './keyring.linux-arm-gnueabihf.node'");
537
+ e.code = 'MODULE_NOT_FOUND';
538
+ throw e;
539
+ }()));
540
+ } catch (e) {
541
+ loadErrors.push(e);
542
+ }
543
+ try {
544
+ const binding = __webpack_require__(Object(function() {
545
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-arm-gnueabihf'");
546
+ e.code = 'MODULE_NOT_FOUND';
547
+ throw e;
548
+ }()));
549
+ const bindingPackageVersion = __webpack_require__(Object(function() {
550
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-arm-gnueabihf/package.json'");
551
+ e.code = 'MODULE_NOT_FOUND';
552
+ throw e;
553
+ }()));
554
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
555
+ return binding;
556
+ } catch (e) {
557
+ loadErrors.push(e);
558
+ }
559
+ }
560
+ else if ('riscv64' === process.arch) if (isMusl()) {
561
+ try {
562
+ return __webpack_require__(Object(function() {
563
+ var e = new Error("Cannot find module './keyring.linux-riscv64-musl.node'");
564
+ e.code = 'MODULE_NOT_FOUND';
565
+ throw e;
566
+ }()));
567
+ } catch (e) {
568
+ loadErrors.push(e);
569
+ }
570
+ try {
571
+ const binding = __webpack_require__(Object(function() {
572
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-riscv64-musl'");
573
+ e.code = 'MODULE_NOT_FOUND';
574
+ throw e;
575
+ }()));
576
+ const bindingPackageVersion = __webpack_require__(Object(function() {
577
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-riscv64-musl/package.json'");
578
+ e.code = 'MODULE_NOT_FOUND';
579
+ throw e;
580
+ }()));
581
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
582
+ return binding;
583
+ } catch (e) {
584
+ loadErrors.push(e);
585
+ }
586
+ } else {
587
+ try {
588
+ return __webpack_require__(Object(function() {
589
+ var e = new Error("Cannot find module './keyring.linux-riscv64-gnu.node'");
590
+ e.code = 'MODULE_NOT_FOUND';
591
+ throw e;
592
+ }()));
593
+ } catch (e) {
594
+ loadErrors.push(e);
595
+ }
596
+ try {
597
+ const binding = __webpack_require__(Object(function() {
598
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-riscv64-gnu'");
599
+ e.code = 'MODULE_NOT_FOUND';
600
+ throw e;
601
+ }()));
602
+ const bindingPackageVersion = __webpack_require__(Object(function() {
603
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-riscv64-gnu/package.json'");
604
+ e.code = 'MODULE_NOT_FOUND';
605
+ throw e;
606
+ }()));
607
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
608
+ return binding;
609
+ } catch (e) {
610
+ loadErrors.push(e);
611
+ }
612
+ }
613
+ else if ('ppc64' === process.arch) {
614
+ try {
615
+ return __webpack_require__(Object(function() {
616
+ var e = new Error("Cannot find module './keyring.linux-ppc64-gnu.node'");
617
+ e.code = 'MODULE_NOT_FOUND';
618
+ throw e;
619
+ }()));
620
+ } catch (e) {
621
+ loadErrors.push(e);
622
+ }
623
+ try {
624
+ const binding = __webpack_require__(Object(function() {
625
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-ppc64-gnu'");
626
+ e.code = 'MODULE_NOT_FOUND';
627
+ throw e;
628
+ }()));
629
+ const bindingPackageVersion = __webpack_require__(Object(function() {
630
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-ppc64-gnu/package.json'");
631
+ e.code = 'MODULE_NOT_FOUND';
632
+ throw e;
633
+ }()));
634
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
635
+ return binding;
636
+ } catch (e) {
637
+ loadErrors.push(e);
638
+ }
639
+ } else if ('s390x' === process.arch) {
640
+ try {
641
+ return __webpack_require__(Object(function() {
642
+ var e = new Error("Cannot find module './keyring.linux-s390x-gnu.node'");
643
+ e.code = 'MODULE_NOT_FOUND';
644
+ throw e;
645
+ }()));
646
+ } catch (e) {
647
+ loadErrors.push(e);
648
+ }
649
+ try {
650
+ const binding = __webpack_require__(Object(function() {
651
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-s390x-gnu'");
652
+ e.code = 'MODULE_NOT_FOUND';
653
+ throw e;
654
+ }()));
655
+ const bindingPackageVersion = __webpack_require__(Object(function() {
656
+ var e = new Error("Cannot find module '@napi-rs/keyring-linux-s390x-gnu/package.json'");
657
+ e.code = 'MODULE_NOT_FOUND';
658
+ throw e;
659
+ }()));
660
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
661
+ return binding;
662
+ } catch (e) {
663
+ loadErrors.push(e);
664
+ }
665
+ } else loadErrors.push(new Error(`Unsupported architecture on Linux: ${process.arch}`));
666
+ else if ('openharmony' === process.platform) if ('arm64' === process.arch) {
667
+ try {
668
+ return __webpack_require__(Object(function() {
669
+ var e = new Error("Cannot find module './keyring.openharmony-arm64.node'");
670
+ e.code = 'MODULE_NOT_FOUND';
671
+ throw e;
672
+ }()));
673
+ } catch (e) {
674
+ loadErrors.push(e);
675
+ }
676
+ try {
677
+ const binding = __webpack_require__(Object(function() {
678
+ var e = new Error("Cannot find module '@napi-rs/keyring-openharmony-arm64'");
679
+ e.code = 'MODULE_NOT_FOUND';
680
+ throw e;
681
+ }()));
682
+ const bindingPackageVersion = __webpack_require__(Object(function() {
683
+ var e = new Error("Cannot find module '@napi-rs/keyring-openharmony-arm64/package.json'");
684
+ e.code = 'MODULE_NOT_FOUND';
685
+ throw e;
686
+ }()));
687
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
688
+ return binding;
689
+ } catch (e) {
690
+ loadErrors.push(e);
691
+ }
692
+ } else if ('x64' === process.arch) {
693
+ try {
694
+ return __webpack_require__(Object(function() {
695
+ var e = new Error("Cannot find module './keyring.openharmony-x64.node'");
696
+ e.code = 'MODULE_NOT_FOUND';
697
+ throw e;
698
+ }()));
699
+ } catch (e) {
700
+ loadErrors.push(e);
701
+ }
702
+ try {
703
+ const binding = __webpack_require__(Object(function() {
704
+ var e = new Error("Cannot find module '@napi-rs/keyring-openharmony-x64'");
705
+ e.code = 'MODULE_NOT_FOUND';
706
+ throw e;
707
+ }()));
708
+ const bindingPackageVersion = __webpack_require__(Object(function() {
709
+ var e = new Error("Cannot find module '@napi-rs/keyring-openharmony-x64/package.json'");
710
+ e.code = 'MODULE_NOT_FOUND';
711
+ throw e;
712
+ }()));
713
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
714
+ return binding;
715
+ } catch (e) {
716
+ loadErrors.push(e);
717
+ }
718
+ } else if ('arm' === process.arch) {
719
+ try {
720
+ return __webpack_require__(Object(function() {
721
+ var e = new Error("Cannot find module './keyring.openharmony-arm.node'");
722
+ e.code = 'MODULE_NOT_FOUND';
723
+ throw e;
724
+ }()));
725
+ } catch (e) {
726
+ loadErrors.push(e);
727
+ }
728
+ try {
729
+ const binding = __webpack_require__(Object(function() {
730
+ var e = new Error("Cannot find module '@napi-rs/keyring-openharmony-arm'");
731
+ e.code = 'MODULE_NOT_FOUND';
732
+ throw e;
733
+ }()));
734
+ const bindingPackageVersion = __webpack_require__(Object(function() {
735
+ var e = new Error("Cannot find module '@napi-rs/keyring-openharmony-arm/package.json'");
736
+ e.code = 'MODULE_NOT_FOUND';
737
+ throw e;
738
+ }()));
739
+ if ('1.2.0' !== bindingPackageVersion && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && '0' !== process.env.NAPI_RS_ENFORCE_VERSION_CHECK) throw new Error(`Native binding package version mismatch, expected 1.2.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`);
740
+ return binding;
741
+ } catch (e) {
742
+ loadErrors.push(e);
743
+ }
744
+ } else loadErrors.push(new Error(`Unsupported architecture on OpenHarmony: ${process.arch}`));
745
+ else loadErrors.push(new Error(`Unsupported OS: ${process.platform}, architecture: ${process.arch}`));
746
+ }
747
+ nativeBinding = requireNative();
748
+ if (!nativeBinding || process.env.NAPI_RS_FORCE_WASI) {
749
+ try {
750
+ nativeBinding = __webpack_require__(Object(function() {
751
+ var e = new Error("Cannot find module './keyring.wasi.cjs'");
752
+ e.code = 'MODULE_NOT_FOUND';
753
+ throw e;
754
+ }()));
755
+ } catch (err) {
756
+ if (process.env.NAPI_RS_FORCE_WASI) loadErrors.push(err);
757
+ }
758
+ if (!nativeBinding) try {
759
+ nativeBinding = __webpack_require__(Object(function() {
760
+ var e = new Error("Cannot find module '@napi-rs/keyring-wasm32-wasi'");
761
+ e.code = 'MODULE_NOT_FOUND';
762
+ throw e;
763
+ }()));
764
+ } catch (err) {
765
+ if (process.env.NAPI_RS_FORCE_WASI) loadErrors.push(err);
766
+ }
767
+ }
768
+ if (!nativeBinding) {
769
+ if (loadErrors.length > 0) throw new Error("Cannot find native binding. npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). Please try `npm i` again after removing both package-lock.json and node_modules directory.", {
770
+ cause: loadErrors
771
+ });
772
+ throw new Error("Failed to load native binding");
773
+ }
774
+ module.exports = nativeBinding;
775
+ module.exports.AsyncEntry = nativeBinding.AsyncEntry;
776
+ module.exports.Entry = nativeBinding.Entry;
777
+ module.exports.findCredentials = nativeBinding.findCredentials;
778
+ module.exports.findCredentialsAsync = nativeBinding.findCredentialsAsync;
779
+ },
780
+ "./node_modules/.pnpm/@napi-rs+keyring-darwin-arm64@1.2.0/node_modules/@napi-rs/keyring-darwin-arm64/keyring.darwin-arm64.node" (module, __unused_rspack_exports, __webpack_require__) {
781
+ module = __webpack_require__.nmd(module);
782
+ try {
783
+ const path = __webpack_require__("node:path");
784
+ process.dlopen(module, path.join(__dirname, "keyring.darwin-arm64.node"));
785
+ } catch (error) {
786
+ throw new Error('Failed to load Node.js addon: "keyring.darwin-arm64.node"', {
787
+ cause: error
788
+ });
789
+ }
790
+ },
93
791
  "./node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.17.1/node_modules/ajv-formats/dist/formats.js" (__unused_rspack_module, exports1) {
94
792
  "use strict";
95
793
  Object.defineProperty(exports1, "__esModule", {
@@ -10547,6 +11245,10 @@ var __webpack_modules__ = {
10547
11245
  "use strict";
10548
11246
  module.exports = require("buffer");
10549
11247
  },
11248
+ child_process (module) {
11249
+ "use strict";
11250
+ module.exports = require("child_process");
11251
+ },
10550
11252
  crypto (module) {
10551
11253
  "use strict";
10552
11254
  module.exports = require("crypto");
@@ -10571,6 +11273,18 @@ var __webpack_modules__ = {
10571
11273
  "use strict";
10572
11274
  module.exports = require("net");
10573
11275
  },
11276
+ "node:fs" (module) {
11277
+ "use strict";
11278
+ module.exports = require("node:fs");
11279
+ },
11280
+ "node:module" (module) {
11281
+ "use strict";
11282
+ module.exports = require("node:module");
11283
+ },
11284
+ "node:path" (module) {
11285
+ "use strict";
11286
+ module.exports = require("node:path");
11287
+ },
10574
11288
  os (module) {
10575
11289
  "use strict";
10576
11290
  module.exports = require("os");
@@ -11164,6 +11878,12 @@ var __webpack_modules__ = {
11164
11878
  stringArrayToHexStripped
11165
11879
  };
11166
11880
  },
11881
+ "./node_modules/.pnpm/@napi-rs+keyring-darwin-arm64@1.2.0/node_modules/@napi-rs/keyring-darwin-arm64/package.json" (module) {
11882
+ "use strict";
11883
+ module.exports = {
11884
+ rE: "1.2.0"
11885
+ };
11886
+ },
11167
11887
  "./node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/refs/data.json" (module) {
11168
11888
  "use strict";
11169
11889
  module.exports = JSON.parse('{"$id":"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#","description":"Meta-schema for $data reference (JSON AnySchema extension proposal)","type":"object","required":["$data"],"properties":{"$data":{"type":"string","anyOf":[{"format":"relative-json-pointer"},{"format":"json-pointer"}]}},"additionalProperties":false}');
@@ -11210,9 +11930,12 @@ function __webpack_require__(moduleId) {
11210
11930
  var cachedModule = __webpack_module_cache__[moduleId];
11211
11931
  if (void 0 !== cachedModule) return cachedModule.exports;
11212
11932
  var module = __webpack_module_cache__[moduleId] = {
11933
+ id: moduleId,
11934
+ loaded: false,
11213
11935
  exports: {}
11214
11936
  };
11215
11937
  __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
11938
+ module.loaded = true;
11216
11939
  return module.exports;
11217
11940
  }
11218
11941
  (()=>{
@@ -11245,33 +11968,47 @@ function __webpack_require__(moduleId) {
11245
11968
  });
11246
11969
  };
11247
11970
  })();
11971
+ (()=>{
11972
+ __webpack_require__.nmd = (module)=>{
11973
+ module.paths = [];
11974
+ if (!module.children) module.children = [];
11975
+ return module;
11976
+ };
11977
+ })();
11248
11978
  var __webpack_exports__ = {};
11249
11979
  (()=>{
11250
11980
  "use strict";
11251
11981
  __webpack_require__.r(__webpack_exports__);
11252
11982
  __webpack_require__.d(__webpack_exports__, {
11253
- syncToLatest: ()=>syncToLatest,
11254
- validateAnvilApp: ()=>validateAnvilApp,
11255
- validateBranchSyncStatus: ()=>validateBranchSyncStatus,
11256
11983
  verifyAuth: ()=>verifyAuth,
11257
- watch: ()=>api_watch,
11258
- detectAppIds: ()=>detectAppIds,
11259
- hasTokensForUrl: ()=>hasTokensForUrl,
11984
+ lookupRemoteInfoForAppId: ()=>lookupRemoteInfoForAppId,
11985
+ validateBranchSyncStatus: ()=>validateBranchSyncStatus,
11986
+ AppIdWithContext: ()=>anvil_api_namespaceObject.AppIdWithContext,
11260
11987
  checkUncommittedChanges: ()=>checkUncommittedChanges,
11261
- getValidAuthToken: ()=>auth_getValidAuthToken,
11262
- login: ()=>login,
11988
+ hasTokensForUrl: ()=>hasTokensForUrl,
11989
+ validateAnvilApp: ()=>validateAnvilApp,
11263
11990
  logout: ()=>logout,
11264
11991
  detectAppIdsFromAllRemotes: ()=>detectAppIdsFromAllRemotes,
11992
+ BranchSyncStatus: ()=>validation_namespaceObject.BranchSyncStatus,
11993
+ formatCandidateLabel: ()=>formatCandidateLabel,
11994
+ syncToLatest: ()=>syncToLatest,
11995
+ filterCandidates: ()=>filterCandidates,
11996
+ getValidAuthToken: ()=>auth_getValidAuthToken,
11997
+ login: ()=>login,
11998
+ watch: ()=>api_watch,
11265
11999
  AppIdCandidate: ()=>anvil_api_namespaceObject.AppIdCandidate,
11266
- BranchSyncStatus: ()=>validation_namespaceObject.BranchSyncStatus
12000
+ detectAppIdsByCommitLookup: ()=>detectAppIdsByCommitLookup
11267
12001
  });
11268
12002
  var anvil_api_namespaceObject = {};
11269
12003
  __webpack_require__.r(anvil_api_namespaceObject);
11270
12004
  __webpack_require__.d(anvil_api_namespaceObject, {
11271
- PH: ()=>detectAppIds,
12005
+ lx: ()=>detectAppIdsByCommitLookup,
11272
12006
  NZ: ()=>detectAppIdsFromAllRemotes,
12007
+ rZ: ()=>filterCandidates,
12008
+ T_: ()=>formatCandidateLabel,
11273
12009
  OI: ()=>getGitFetchUrl,
11274
- $0: ()=>getWebSocketUrl
12010
+ $0: ()=>getWebSocketUrl,
12011
+ Wj: ()=>lookupRemoteInfoForAppId
11275
12012
  });
11276
12013
  var validation_namespaceObject = {};
11277
12014
  __webpack_require__.r(validation_namespaceObject);
@@ -11846,9 +12583,9 @@ var __webpack_exports__ = {};
11846
12583
  const external_node_buffer_namespaceObject = require("node:buffer");
11847
12584
  var dist = __webpack_require__("./node_modules/.pnpm/@kwsites+file-exists@1.1.1/node_modules/@kwsites/file-exists/dist/index.js");
11848
12585
  var src = __webpack_require__("./node_modules/.pnpm/debug@4.4.3_supports-color@5.5.0/node_modules/debug/src/index.js");
11849
- const external_child_process_namespaceObject = require("child_process");
12586
+ var external_child_process_ = __webpack_require__("child_process");
11850
12587
  var promise_deferred_dist = __webpack_require__("./node_modules/.pnpm/@kwsites+promise-deferred@1.1.1/node_modules/@kwsites/promise-deferred/dist/index.js");
11851
- const external_node_path_namespaceObject = require("node:path");
12588
+ var external_node_path_ = __webpack_require__("node:path");
11852
12589
  const external_node_events_namespaceObject = require("node:events");
11853
12590
  var __defProp = Object.defineProperty;
11854
12591
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -13084,7 +13821,7 @@ var __webpack_exports__ = {};
13084
13821
  rejection = reason || rejection;
13085
13822
  }
13086
13823
  });
13087
- const spawned = (0, external_child_process_namespaceObject.spawn)(command, args, spawnOptions);
13824
+ const spawned = (0, external_child_process_.spawn)(command, args, spawnOptions);
13088
13825
  spawned.stdout.on("data", onDataReceived(stdOut, "stdOut", logger, outputLogger.step("stdOut")));
13089
13826
  spawned.stderr.on("data", onDataReceived(stdErr, "stdErr", logger, outputLogger.step("stdErr")));
13090
13827
  spawned.on("error", onErrorReceived(stdErr, logger));
@@ -14767,7 +15504,7 @@ var __webpack_exports__ = {};
14767
15504
  });
14768
15505
  function esm_toPath(input) {
14769
15506
  const path = input.trim().replace(/^["']|["']$/g, "");
14770
- return path && (0, external_node_path_namespaceObject.normalize)(path);
15507
+ return path && (0, external_node_path_.normalize)(path);
14771
15508
  }
14772
15509
  var parseCheckIgnore;
14773
15510
  var init_CheckIgnore = __esm({
@@ -18035,7 +18772,7 @@ var __webpack_exports__ = {};
18035
18772
  }
18036
18773
  }
18037
18774
  const external_node_util_namespaceObject = require("node:util");
18038
- const external_node_fs_namespaceObject = require("node:fs");
18775
+ var external_node_fs_ = __webpack_require__("node:fs");
18039
18776
  const external_node_crypto_namespaceObject = require("node:crypto");
18040
18777
  const external_node_assert_namespaceObject = require("node:assert");
18041
18778
  const dot_prop_isObject = (value)=>{
@@ -18222,34 +18959,34 @@ var __webpack_exports__ = {};
18222
18959
  const tmpdir = external_node_os_namespaceObject.tmpdir();
18223
18960
  const { env: env_paths_env } = external_node_process_namespaceObject;
18224
18961
  const macos = (name)=>{
18225
- const library = external_node_path_namespaceObject.join(homedir, 'Library');
18962
+ const library = external_node_path_.join(homedir, 'Library');
18226
18963
  return {
18227
- data: external_node_path_namespaceObject.join(library, 'Application Support', name),
18228
- config: external_node_path_namespaceObject.join(library, 'Preferences', name),
18229
- cache: external_node_path_namespaceObject.join(library, 'Caches', name),
18230
- log: external_node_path_namespaceObject.join(library, 'Logs', name),
18231
- temp: external_node_path_namespaceObject.join(tmpdir, name)
18964
+ data: external_node_path_.join(library, 'Application Support', name),
18965
+ config: external_node_path_.join(library, 'Preferences', name),
18966
+ cache: external_node_path_.join(library, 'Caches', name),
18967
+ log: external_node_path_.join(library, 'Logs', name),
18968
+ temp: external_node_path_.join(tmpdir, name)
18232
18969
  };
18233
18970
  };
18234
18971
  const windows = (name)=>{
18235
- const appData = env_paths_env.APPDATA || external_node_path_namespaceObject.join(homedir, 'AppData', 'Roaming');
18236
- const localAppData = env_paths_env.LOCALAPPDATA || external_node_path_namespaceObject.join(homedir, 'AppData', 'Local');
18972
+ const appData = env_paths_env.APPDATA || external_node_path_.join(homedir, 'AppData', 'Roaming');
18973
+ const localAppData = env_paths_env.LOCALAPPDATA || external_node_path_.join(homedir, 'AppData', 'Local');
18237
18974
  return {
18238
- data: external_node_path_namespaceObject.join(localAppData, name, 'Data'),
18239
- config: external_node_path_namespaceObject.join(appData, name, 'Config'),
18240
- cache: external_node_path_namespaceObject.join(localAppData, name, 'Cache'),
18241
- log: external_node_path_namespaceObject.join(localAppData, name, 'Log'),
18242
- temp: external_node_path_namespaceObject.join(tmpdir, name)
18975
+ data: external_node_path_.join(localAppData, name, 'Data'),
18976
+ config: external_node_path_.join(appData, name, 'Config'),
18977
+ cache: external_node_path_.join(localAppData, name, 'Cache'),
18978
+ log: external_node_path_.join(localAppData, name, 'Log'),
18979
+ temp: external_node_path_.join(tmpdir, name)
18243
18980
  };
18244
18981
  };
18245
18982
  const linux = (name)=>{
18246
- const username = external_node_path_namespaceObject.basename(homedir);
18983
+ const username = external_node_path_.basename(homedir);
18247
18984
  return {
18248
- data: external_node_path_namespaceObject.join(env_paths_env.XDG_DATA_HOME || external_node_path_namespaceObject.join(homedir, '.local', 'share'), name),
18249
- config: external_node_path_namespaceObject.join(env_paths_env.XDG_CONFIG_HOME || external_node_path_namespaceObject.join(homedir, '.config'), name),
18250
- cache: external_node_path_namespaceObject.join(env_paths_env.XDG_CACHE_HOME || external_node_path_namespaceObject.join(homedir, '.cache'), name),
18251
- log: external_node_path_namespaceObject.join(env_paths_env.XDG_STATE_HOME || external_node_path_namespaceObject.join(homedir, '.local', 'state'), name),
18252
- temp: external_node_path_namespaceObject.join(tmpdir, username, name)
18985
+ data: external_node_path_.join(env_paths_env.XDG_DATA_HOME || external_node_path_.join(homedir, '.local', 'share'), name),
18986
+ config: external_node_path_.join(env_paths_env.XDG_CONFIG_HOME || external_node_path_.join(homedir, '.config'), name),
18987
+ cache: external_node_path_.join(env_paths_env.XDG_CACHE_HOME || external_node_path_.join(homedir, '.cache'), name),
18988
+ log: external_node_path_.join(env_paths_env.XDG_STATE_HOME || external_node_path_.join(homedir, '.local', 'state'), name),
18989
+ temp: external_node_path_.join(tmpdir, username, name)
18253
18990
  };
18254
18991
  };
18255
18992
  function envPaths(name, { suffix = 'nodejs' } = {}) {
@@ -18350,41 +19087,41 @@ var __webpack_exports__ = {};
18350
19087
  };
18351
19088
  const FS = {
18352
19089
  attempt: {
18353
- chmod: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.chmod), ATTEMPTIFY_CHANGE_ERROR_OPTIONS),
18354
- chown: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.chown), ATTEMPTIFY_CHANGE_ERROR_OPTIONS),
18355
- close: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.close), ATTEMPTIFY_NOOP_OPTIONS),
18356
- fsync: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.fsync), ATTEMPTIFY_NOOP_OPTIONS),
18357
- mkdir: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.mkdir), ATTEMPTIFY_NOOP_OPTIONS),
18358
- realpath: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.realpath), ATTEMPTIFY_NOOP_OPTIONS),
18359
- stat: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.stat), ATTEMPTIFY_NOOP_OPTIONS),
18360
- unlink: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.unlink), ATTEMPTIFY_NOOP_OPTIONS),
18361
- chmodSync: attemptify_sync(external_node_fs_namespaceObject.chmodSync, ATTEMPTIFY_CHANGE_ERROR_OPTIONS),
18362
- chownSync: attemptify_sync(external_node_fs_namespaceObject.chownSync, ATTEMPTIFY_CHANGE_ERROR_OPTIONS),
18363
- closeSync: attemptify_sync(external_node_fs_namespaceObject.closeSync, ATTEMPTIFY_NOOP_OPTIONS),
18364
- existsSync: attemptify_sync(external_node_fs_namespaceObject.existsSync, ATTEMPTIFY_NOOP_OPTIONS),
18365
- fsyncSync: attemptify_sync(external_node_fs_namespaceObject.fsync, ATTEMPTIFY_NOOP_OPTIONS),
18366
- mkdirSync: attemptify_sync(external_node_fs_namespaceObject.mkdirSync, ATTEMPTIFY_NOOP_OPTIONS),
18367
- realpathSync: attemptify_sync(external_node_fs_namespaceObject.realpathSync, ATTEMPTIFY_NOOP_OPTIONS),
18368
- statSync: attemptify_sync(external_node_fs_namespaceObject.statSync, ATTEMPTIFY_NOOP_OPTIONS),
18369
- unlinkSync: attemptify_sync(external_node_fs_namespaceObject.unlinkSync, ATTEMPTIFY_NOOP_OPTIONS)
19090
+ chmod: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.chmod), ATTEMPTIFY_CHANGE_ERROR_OPTIONS),
19091
+ chown: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.chown), ATTEMPTIFY_CHANGE_ERROR_OPTIONS),
19092
+ close: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.close), ATTEMPTIFY_NOOP_OPTIONS),
19093
+ fsync: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.fsync), ATTEMPTIFY_NOOP_OPTIONS),
19094
+ mkdir: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.mkdir), ATTEMPTIFY_NOOP_OPTIONS),
19095
+ realpath: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.realpath), ATTEMPTIFY_NOOP_OPTIONS),
19096
+ stat: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.stat), ATTEMPTIFY_NOOP_OPTIONS),
19097
+ unlink: attemptify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.unlink), ATTEMPTIFY_NOOP_OPTIONS),
19098
+ chmodSync: attemptify_sync(external_node_fs_.chmodSync, ATTEMPTIFY_CHANGE_ERROR_OPTIONS),
19099
+ chownSync: attemptify_sync(external_node_fs_.chownSync, ATTEMPTIFY_CHANGE_ERROR_OPTIONS),
19100
+ closeSync: attemptify_sync(external_node_fs_.closeSync, ATTEMPTIFY_NOOP_OPTIONS),
19101
+ existsSync: attemptify_sync(external_node_fs_.existsSync, ATTEMPTIFY_NOOP_OPTIONS),
19102
+ fsyncSync: attemptify_sync(external_node_fs_.fsync, ATTEMPTIFY_NOOP_OPTIONS),
19103
+ mkdirSync: attemptify_sync(external_node_fs_.mkdirSync, ATTEMPTIFY_NOOP_OPTIONS),
19104
+ realpathSync: attemptify_sync(external_node_fs_.realpathSync, ATTEMPTIFY_NOOP_OPTIONS),
19105
+ statSync: attemptify_sync(external_node_fs_.statSync, ATTEMPTIFY_NOOP_OPTIONS),
19106
+ unlinkSync: attemptify_sync(external_node_fs_.unlinkSync, ATTEMPTIFY_NOOP_OPTIONS)
18370
19107
  },
18371
19108
  retry: {
18372
- close: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.close), RETRYIFY_OPTIONS),
18373
- fsync: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.fsync), RETRYIFY_OPTIONS),
18374
- open: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.open), RETRYIFY_OPTIONS),
18375
- readFile: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.readFile), RETRYIFY_OPTIONS),
18376
- rename: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.rename), RETRYIFY_OPTIONS),
18377
- stat: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.stat), RETRYIFY_OPTIONS),
18378
- write: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.write), RETRYIFY_OPTIONS),
18379
- writeFile: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_namespaceObject.writeFile), RETRYIFY_OPTIONS),
18380
- closeSync: retryify_sync(external_node_fs_namespaceObject.closeSync, RETRYIFY_OPTIONS),
18381
- fsyncSync: retryify_sync(external_node_fs_namespaceObject.fsyncSync, RETRYIFY_OPTIONS),
18382
- openSync: retryify_sync(external_node_fs_namespaceObject.openSync, RETRYIFY_OPTIONS),
18383
- readFileSync: retryify_sync(external_node_fs_namespaceObject.readFileSync, RETRYIFY_OPTIONS),
18384
- renameSync: retryify_sync(external_node_fs_namespaceObject.renameSync, RETRYIFY_OPTIONS),
18385
- statSync: retryify_sync(external_node_fs_namespaceObject.statSync, RETRYIFY_OPTIONS),
18386
- writeSync: retryify_sync(external_node_fs_namespaceObject.writeSync, RETRYIFY_OPTIONS),
18387
- writeFileSync: retryify_sync(external_node_fs_namespaceObject.writeFileSync, RETRYIFY_OPTIONS)
19109
+ close: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.close), RETRYIFY_OPTIONS),
19110
+ fsync: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.fsync), RETRYIFY_OPTIONS),
19111
+ open: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.open), RETRYIFY_OPTIONS),
19112
+ readFile: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.readFile), RETRYIFY_OPTIONS),
19113
+ rename: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.rename), RETRYIFY_OPTIONS),
19114
+ stat: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.stat), RETRYIFY_OPTIONS),
19115
+ write: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.write), RETRYIFY_OPTIONS),
19116
+ writeFile: retryify_async((0, external_node_util_namespaceObject.promisify)(external_node_fs_.writeFile), RETRYIFY_OPTIONS),
19117
+ closeSync: retryify_sync(external_node_fs_.closeSync, RETRYIFY_OPTIONS),
19118
+ fsyncSync: retryify_sync(external_node_fs_.fsyncSync, RETRYIFY_OPTIONS),
19119
+ openSync: retryify_sync(external_node_fs_.openSync, RETRYIFY_OPTIONS),
19120
+ readFileSync: retryify_sync(external_node_fs_.readFileSync, RETRYIFY_OPTIONS),
19121
+ renameSync: retryify_sync(external_node_fs_.renameSync, RETRYIFY_OPTIONS),
19122
+ statSync: retryify_sync(external_node_fs_.statSync, RETRYIFY_OPTIONS),
19123
+ writeSync: retryify_sync(external_node_fs_.writeSync, RETRYIFY_OPTIONS),
19124
+ writeFileSync: retryify_sync(external_node_fs_.writeFileSync, RETRYIFY_OPTIONS)
18388
19125
  }
18389
19126
  };
18390
19127
  const stubborn_fs_dist = FS;
@@ -18474,7 +19211,7 @@ var __webpack_exports__ = {};
18474
19211
  for(const filePath in temp_Temp.store)temp_Temp.purgeSync(filePath);
18475
19212
  },
18476
19213
  truncate: (filePath)=>{
18477
- const basename = external_node_path_namespaceObject.basename(filePath);
19214
+ const basename = external_node_path_.basename(filePath);
18478
19215
  if (basename.length <= LIMIT_BASENAME_LENGTH) return filePath;
18479
19216
  const truncable = /^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(basename);
18480
19217
  if (!truncable) return filePath;
@@ -18516,7 +19253,7 @@ var __webpack_exports__ = {};
18516
19253
  }
18517
19254
  }
18518
19255
  if (!filePathExists) {
18519
- const parentPath = external_node_path_namespaceObject.dirname(filePath);
19256
+ const parentPath = external_node_path_.dirname(filePath);
18520
19257
  stubborn_fs_dist.attempt.mkdirSync(parentPath, {
18521
19258
  mode: constants_DEFAULT_FOLDER_MODE,
18522
19259
  recursive: true
@@ -18795,7 +19532,7 @@ var __webpack_exports__ = {};
18795
19532
  }
18796
19533
  get store() {
18797
19534
  try {
18798
- const data = external_node_fs_namespaceObject.readFileSync(this.path, this.#encryptionKey ? null : 'utf8');
19535
+ const data = external_node_fs_.readFileSync(this.path, this.#encryptionKey ? null : 'utf8');
18799
19536
  const dataString = this._decryptData(data);
18800
19537
  const deserializedData = this._deserialize(dataString);
18801
19538
  if (!this.#isInMigration) this._validate(deserializedData);
@@ -18816,7 +19553,7 @@ var __webpack_exports__ = {};
18816
19553
  set store(value) {
18817
19554
  this._ensureDirectory();
18818
19555
  if (!hasProperty(value, INTERNAL_KEY)) try {
18819
- const data = external_node_fs_namespaceObject.readFileSync(this.path, this.#encryptionKey ? null : 'utf8');
19556
+ const data = external_node_fs_.readFileSync(this.path, this.#encryptionKey ? null : 'utf8');
18820
19557
  const dataString = this._decryptData(data);
18821
19558
  const currentStore = this._deserialize(dataString);
18822
19559
  if (hasProperty(currentStore, INTERNAL_KEY)) dot_prop_setProperty(value, INTERNAL_KEY, getProperty(currentStore, INTERNAL_KEY));
@@ -18837,7 +19574,7 @@ var __webpack_exports__ = {};
18837
19574
  this.#watcher = void 0;
18838
19575
  }
18839
19576
  if (this.#watchFile) {
18840
- external_node_fs_namespaceObject.unwatchFile(this.path);
19577
+ external_node_fs_.unwatchFile(this.path);
18841
19578
  this.#watchFile = false;
18842
19579
  }
18843
19580
  this.#debouncedChangeHandler = void 0;
@@ -18907,7 +19644,7 @@ var __webpack_exports__ = {};
18907
19644
  throw new Error('Config schema violation: ' + errors.join('; '));
18908
19645
  }
18909
19646
  _ensureDirectory() {
18910
- external_node_fs_namespaceObject.mkdirSync(external_node_path_namespaceObject.dirname(this.path), {
19647
+ external_node_fs_.mkdirSync(external_node_path_.dirname(this.path), {
18911
19648
  recursive: true
18912
19649
  });
18913
19650
  }
@@ -18924,7 +19661,7 @@ var __webpack_exports__ = {};
18924
19661
  cipher.final()
18925
19662
  ]);
18926
19663
  }
18927
- if (external_node_process_namespaceObject.env.SNAP) external_node_fs_namespaceObject.writeFileSync(this.path, data, {
19664
+ if (external_node_process_namespaceObject.env.SNAP) external_node_fs_.writeFileSync(this.path, data, {
18928
19665
  mode: this.#options.configFileMode
18929
19666
  });
18930
19667
  else try {
@@ -18932,7 +19669,7 @@ var __webpack_exports__ = {};
18932
19669
  mode: this.#options.configFileMode
18933
19670
  });
18934
19671
  } catch (error) {
18935
- if (error?.code === 'EXDEV') return void external_node_fs_namespaceObject.writeFileSync(this.path, data, {
19672
+ if (error?.code === 'EXDEV') return void external_node_fs_.writeFileSync(this.path, data, {
18936
19673
  mode: this.#options.configFileMode
18937
19674
  });
18938
19675
  throw error;
@@ -18940,16 +19677,16 @@ var __webpack_exports__ = {};
18940
19677
  }
18941
19678
  _watch() {
18942
19679
  this._ensureDirectory();
18943
- if (!external_node_fs_namespaceObject.existsSync(this.path)) this._write(createPlainObject());
19680
+ if (!external_node_fs_.existsSync(this.path)) this._write(createPlainObject());
18944
19681
  if ('win32' === external_node_process_namespaceObject.platform || 'darwin' === external_node_process_namespaceObject.platform) {
18945
19682
  this.#debouncedChangeHandler ??= debounce_fn(()=>{
18946
19683
  this.events.dispatchEvent(new Event('change'));
18947
19684
  }, {
18948
19685
  wait: 100
18949
19686
  });
18950
- const directory = external_node_path_namespaceObject.dirname(this.path);
18951
- const basename = external_node_path_namespaceObject.basename(this.path);
18952
- this.#watcher = external_node_fs_namespaceObject.watch(directory, {
19687
+ const directory = external_node_path_.dirname(this.path);
19688
+ const basename = external_node_path_.basename(this.path);
19689
+ this.#watcher = external_node_fs_.watch(directory, {
18953
19690
  persistent: false,
18954
19691
  encoding: 'utf8'
18955
19692
  }, (_eventType, filename)=>{
@@ -18962,7 +19699,7 @@ var __webpack_exports__ = {};
18962
19699
  }, {
18963
19700
  wait: 1000
18964
19701
  });
18965
- external_node_fs_namespaceObject.watchFile(this.path, {
19702
+ external_node_fs_.watchFile(this.path, {
18966
19703
  persistent: false
18967
19704
  }, (_current, _previous)=>{
18968
19705
  if ('function' == typeof this.#debouncedChangeHandler) this.#debouncedChangeHandler();
@@ -19088,7 +19825,7 @@ var __webpack_exports__ = {};
19088
19825
  #resolvePath(options) {
19089
19826
  const normalizedFileExtension = 'string' == typeof options.fileExtension ? options.fileExtension : void 0;
19090
19827
  const fileExtension = normalizedFileExtension ? `.${normalizedFileExtension}` : '';
19091
- return external_node_path_namespaceObject.resolve(options.cwd, `${options.configName ?? 'config'}${fileExtension}`);
19828
+ return external_node_path_.resolve(options.cwd, `${options.configName ?? 'config'}${fileExtension}`);
19092
19829
  }
19093
19830
  #initializeStore(options) {
19094
19831
  if (options.migrations) {
@@ -19124,6 +19861,57 @@ var __webpack_exports__ = {};
19124
19861
  }
19125
19862
  }
19126
19863
  }
19864
+ let Entry = null;
19865
+ let loadAttempted = false;
19866
+ function loadKeyring() {
19867
+ if (loadAttempted) return Entry;
19868
+ loadAttempted = true;
19869
+ try {
19870
+ const mod = __webpack_require__("./node_modules/.pnpm/@napi-rs+keyring@1.2.0/node_modules/@napi-rs/keyring/index.js");
19871
+ Entry = mod.Entry;
19872
+ } catch {}
19873
+ return Entry;
19874
+ }
19875
+ function getServiceName(url) {
19876
+ return `anvil-cli:${url}`;
19877
+ }
19878
+ function keychain_keychainGet(url, username) {
19879
+ if (isTestMode()) return null;
19880
+ const Ctor = loadKeyring();
19881
+ if (!Ctor) return null;
19882
+ try {
19883
+ const entry = new Ctor(getServiceName(url), username);
19884
+ const raw = entry.getPassword();
19885
+ const parsed = JSON.parse(raw);
19886
+ return {
19887
+ authToken: parsed.authToken ?? null,
19888
+ refreshToken: parsed.refreshToken ?? null
19889
+ };
19890
+ } catch {
19891
+ return null;
19892
+ }
19893
+ }
19894
+ function keychainSet(url, username, secrets) {
19895
+ if (isTestMode()) return false;
19896
+ const Ctor = loadKeyring();
19897
+ if (!Ctor) return false;
19898
+ try {
19899
+ const entry = new Ctor(getServiceName(url), username);
19900
+ entry.setPassword(JSON.stringify(secrets));
19901
+ return true;
19902
+ } catch {
19903
+ return false;
19904
+ }
19905
+ }
19906
+ function keychainDelete(url, username) {
19907
+ if (isTestMode()) return;
19908
+ const Ctor = loadKeyring();
19909
+ if (!Ctor) return;
19910
+ try {
19911
+ const entry = new Ctor(getServiceName(url), username);
19912
+ entry.deletePassword();
19913
+ } catch {}
19914
+ }
19127
19915
  const EMPTY_TOKENS = {
19128
19916
  authToken: null,
19129
19917
  refreshToken: null,
@@ -19157,17 +19945,30 @@ var __webpack_exports__ = {};
19157
19945
  const normalized = config_normalizeAnvilUrl(url);
19158
19946
  return store[normalized];
19159
19947
  }
19948
+ function token_store_getAccountTokens(url, username) {
19949
+ const urlTokens = getUrlTokens(url);
19950
+ if (!urlTokens || !urlTokens[username]) return {
19951
+ ...EMPTY_TOKENS
19952
+ };
19953
+ const configTokens = urlTokens[username];
19954
+ if (!configTokens.authToken && !configTokens.refreshToken) {
19955
+ const secrets = keychain_keychainGet(config_normalizeAnvilUrl(url), username);
19956
+ if (secrets) return {
19957
+ ...configTokens,
19958
+ ...secrets
19959
+ };
19960
+ }
19961
+ return configTokens;
19962
+ }
19160
19963
  function token_store_getTokensAutoSelect(url, username) {
19161
19964
  const normalized = config_normalizeAnvilUrl(url);
19965
+ if (username) return token_store_getAccountTokens(normalized, username);
19162
19966
  const urlTokens = getUrlTokens(normalized);
19163
19967
  if (!urlTokens) return {
19164
19968
  ...EMPTY_TOKENS
19165
19969
  };
19166
- if (username) return urlTokens[username] ?? {
19167
- ...EMPTY_TOKENS
19168
- };
19169
19970
  const accounts = Object.keys(urlTokens);
19170
- if (1 === accounts.length) return urlTokens[accounts[0]];
19971
+ if (1 === accounts.length) return token_store_getAccountTokens(normalized, accounts[0]);
19171
19972
  return {
19172
19973
  ...EMPTY_TOKENS
19173
19974
  };
@@ -19176,11 +19977,21 @@ var __webpack_exports__ = {};
19176
19977
  const normalized = config_normalizeAnvilUrl(url);
19177
19978
  const store = getTokenStore();
19178
19979
  if (!store[normalized]) store[normalized] = {};
19179
- store[normalized][username] = tokens;
19980
+ const keychainOk = keychainSet(normalized, username, {
19981
+ authToken: tokens.authToken,
19982
+ refreshToken: tokens.refreshToken
19983
+ });
19984
+ if (keychainOk) store[normalized][username] = {
19985
+ authToken: null,
19986
+ refreshToken: null,
19987
+ authTokenExpiresAt: tokens.authTokenExpiresAt
19988
+ };
19989
+ else store[normalized][username] = tokens;
19180
19990
  setTokenStore(store);
19181
19991
  }
19182
19992
  function deleteAccountTokens(url, username) {
19183
19993
  const normalized = config_normalizeAnvilUrl(url);
19994
+ keychainDelete(normalized, username);
19184
19995
  const store = getTokenStore();
19185
19996
  if (!store[normalized] || !store[normalized][username]) return false;
19186
19997
  delete store[normalized][username];
@@ -19192,14 +20003,22 @@ var __webpack_exports__ = {};
19192
20003
  const normalized = config_normalizeAnvilUrl(url);
19193
20004
  const store = getTokenStore();
19194
20005
  if (!store[normalized]) return false;
20006
+ for (const username of Object.keys(store[normalized]))keychainDelete(normalized, username);
19195
20007
  delete store[normalized];
19196
20008
  setTokenStore(store);
19197
20009
  return true;
19198
20010
  }
19199
20011
  function findAccountByRefreshToken(url, refreshToken) {
19200
- const urlTokens = getUrlTokens(url);
20012
+ const normalized = config_normalizeAnvilUrl(url);
20013
+ const urlTokens = getUrlTokens(normalized);
19201
20014
  if (!urlTokens) return;
19202
- for (const [username, tokens] of Object.entries(urlTokens))if (tokens.refreshToken === refreshToken) return username;
20015
+ for (const [username, tokens] of Object.entries(urlTokens)){
20016
+ if (tokens.refreshToken === refreshToken) return username;
20017
+ if (!tokens.refreshToken) {
20018
+ const secrets = keychain_keychainGet(normalized, username);
20019
+ if (secrets?.refreshToken === refreshToken) return username;
20020
+ }
20021
+ }
19203
20022
  }
19204
20023
  function token_store_hasTokens(url, username) {
19205
20024
  const normalized = config_normalizeAnvilUrl(url);
@@ -19207,11 +20026,18 @@ var __webpack_exports__ = {};
19207
20026
  if (!urlTokens) return false;
19208
20027
  if (username) {
19209
20028
  const tokens = urlTokens[username];
19210
- return !!(tokens && (tokens.authToken || tokens.refreshToken));
20029
+ if (!tokens) return false;
20030
+ if (tokens.authToken || tokens.refreshToken) return true;
20031
+ return null !== keychain_keychainGet(normalized, username);
19211
20032
  }
19212
- return Object.values(urlTokens).some((tokens)=>tokens.authToken || tokens.refreshToken);
20033
+ return Object.entries(urlTokens).some(([uname, tokens])=>{
20034
+ if (tokens.authToken || tokens.refreshToken) return true;
20035
+ return null !== keychain_keychainGet(normalized, uname);
20036
+ });
19213
20037
  }
19214
20038
  function clearAllTokens() {
20039
+ const store = getTokenStore();
20040
+ for (const [url, urlTokens] of Object.entries(store))for (const username of Object.keys(urlTokens))keychainDelete(url, username);
19215
20041
  setTokenStore({});
19216
20042
  }
19217
20043
  const configDefaults = {
@@ -20081,7 +20907,7 @@ var __webpack_exports__ = {};
20081
20907
  this._wantsDir = type ? DIR_TYPES.has(type) : false;
20082
20908
  this._wantsFile = type ? FILE_TYPES.has(type) : false;
20083
20909
  this._wantsEverything = type === EntryTypes.EVERYTHING_TYPE;
20084
- this._root = (0, external_node_path_namespaceObject.resolve)(root);
20910
+ this._root = (0, external_node_path_.resolve)(root);
20085
20911
  this._isDirent = !opts.alwaysStat;
20086
20912
  this._statsProp = this._isDirent ? 'dirent' : 'stats';
20087
20913
  this._rdOptions = {
@@ -20155,9 +20981,9 @@ var __webpack_exports__ = {};
20155
20981
  let entry;
20156
20982
  const basename = this._isDirent ? dirent.name : dirent;
20157
20983
  try {
20158
- const fullPath = (0, external_node_path_namespaceObject.resolve)((0, external_node_path_namespaceObject.join)(path, basename));
20984
+ const fullPath = (0, external_node_path_.resolve)((0, external_node_path_.join)(path, basename));
20159
20985
  entry = {
20160
- path: (0, external_node_path_namespaceObject.relative)(this._root, fullPath),
20986
+ path: (0, external_node_path_.relative)(this._root, fullPath),
20161
20987
  fullPath,
20162
20988
  basename
20163
20989
  };
@@ -20185,7 +21011,7 @@ var __webpack_exports__ = {};
20185
21011
  if (entryRealPathStats.isFile()) return 'file';
20186
21012
  if (entryRealPathStats.isDirectory()) {
20187
21013
  const len = entryRealPath.length;
20188
- if (full.startsWith(entryRealPath) && full.substr(len, 1) === external_node_path_namespaceObject.sep) {
21014
+ if (full.startsWith(entryRealPath) && full.substr(len, 1) === external_node_path_.sep) {
20189
21015
  const recursiveError = new Error(`Circular symlink detected: "${full}" points to "${entryRealPath}"`);
20190
21016
  recursiveError.code = RECURSIVE_ERROR_CODE;
20191
21017
  return this._onError(recursiveError);
@@ -21697,38 +22523,36 @@ var __webpack_exports__ = {};
21697
22523
  function getWebSocketUrl(appId, authToken, anvilUrl = anvil_api_getDefaultAnvilUrl()) {
21698
22524
  return anvilUrl.replace(/^http/, "ws") + `/ide/api/_/apps/${appId}/ws?access_token=${authToken}`;
21699
22525
  }
21700
- async function detectAppIdsFromRemotes(repoPath, anvilUrl) {
21701
- const git = esm_default(repoPath);
21702
- const out = [];
21703
- try {
21704
- const remotes = await git.getRemotes(true);
21705
- const url = new URL(anvilUrl);
21706
- const expectedHost = url.hostname;
21707
- for (const remote of remotes){
21708
- const httpMatch = remote.refs.fetch?.match(/(?:http|https):\/\/(?:[^@]+@)?([^:\/]+)(?::\d+)?\/git\/([A-Z0-9]+)\.git/);
21709
- if (httpMatch) {
21710
- const [, host, detectedAppId] = httpMatch;
21711
- if (host === expectedHost) {
21712
- out.push({
21713
- appId: detectedAppId,
21714
- source: "remote",
21715
- description: `Git remote '${remote.name}'`
21716
- });
21717
- continue;
21718
- }
21719
- }
21720
- const sshMatch = remote.refs.fetch?.match(/ssh:\/\/(?:[^@]+@)?([^:\/]+):(\d+)\/([A-Z0-9]+)\.git/);
21721
- if (sshMatch) {
21722
- const [, host, , detectedAppId] = sshMatch;
21723
- if (host === expectedHost) out.push({
21724
- appId: detectedAppId,
21725
- source: "remote",
21726
- description: `Git remote '${remote.name}' (SSH)`
21727
- });
21728
- }
21729
- }
21730
- } catch (_e) {}
21731
- return out;
22526
+ function filterCandidates(candidates, explicitUrl, explicitUsername) {
22527
+ let filtered = candidates;
22528
+ if (explicitUrl) {
22529
+ const normalizedExplicit = config_normalizeAnvilUrl(explicitUrl);
22530
+ filtered = filtered.filter((c)=>c.detectedUrl && config_normalizeAnvilUrl(c.detectedUrl) === normalizedExplicit);
22531
+ }
22532
+ if (explicitUsername) filtered = filtered.filter((c)=>!c.detectedUsername || c.detectedUsername === explicitUsername);
22533
+ return filtered;
22534
+ }
22535
+ function formatCandidateLabel(candidate) {
22536
+ const parts = [
22537
+ candidate.appId
22538
+ ];
22539
+ if (candidate.detectedUrl) if (candidate.detectedUsername) parts.push(`(${candidate.detectedUsername} on ${candidate.detectedUrl})`);
22540
+ else parts.push(`(${candidate.detectedUrl})`);
22541
+ parts.push(`- ${candidate.description}`);
22542
+ return parts.join(" ");
22543
+ }
22544
+ function lookupRemoteInfoForAppId(appId, detectedRemotes) {
22545
+ const matches = detectedRemotes.filter((c)=>c.appId === appId);
22546
+ if (0 === matches.length) return {};
22547
+ const withUsername = matches.find((c)=>c.detectedUsername);
22548
+ if (withUsername) return {
22549
+ detectedUrl: withUsername.detectedUrl,
22550
+ detectedUsername: withUsername.detectedUsername
22551
+ };
22552
+ return {
22553
+ detectedUrl: matches[0].detectedUrl,
22554
+ detectedUsername: matches[0].detectedUsername
22555
+ };
21732
22556
  }
21733
22557
  async function detectAppIdsFromAllRemotes(repoPath) {
21734
22558
  const git = esm_default(repoPath);
@@ -21764,11 +22588,13 @@ var __webpack_exports__ = {};
21764
22588
  } catch (_e) {}
21765
22589
  return out;
21766
22590
  }
21767
- async function detectAppIdsByCommitLookup(repoPath, anvilUrl) {
22591
+ async function detectAppIdsByCommitLookup(repoPath, options) {
22592
+ const anvilUrl = options.anvilUrl || resolveAnvilUrl();
22593
+ const username = options.username;
21768
22594
  const git = esm_default(repoPath);
21769
22595
  const out = [];
21770
22596
  try {
21771
- const authToken = await auth_getValidAuthToken(anvilUrl);
22597
+ const authToken = await auth_getValidAuthToken(anvilUrl, username);
21772
22598
  const branchRef = await git.revparse([
21773
22599
  "--abbrev-ref",
21774
22600
  "HEAD"
@@ -21807,16 +22633,6 @@ var __webpack_exports__ = {};
21807
22633
  } catch (_e) {}
21808
22634
  return out;
21809
22635
  }
21810
- async function detectAppIds(repoPath, options = {}) {
21811
- const anvilUrl = options.anvilUrl || resolveAnvilUrl();
21812
- const results = [];
21813
- const includeReverseLookup = options.includeReverseLookup ?? true;
21814
- results.push(...await detectAppIdsFromRemotes(repoPath, anvilUrl));
21815
- if (0 === results.length && includeReverseLookup) results.push(...await detectAppIdsByCommitLookup(repoPath, anvilUrl));
21816
- const seen = new Set();
21817
- const unique = results.filter((c)=>seen.has(c.appId) ? false : (seen.add(c.appId), true));
21818
- return unique;
21819
- }
21820
22636
  class WebSocketClient extends Emitter {
21821
22637
  ws = null;
21822
22638
  appId;
@@ -21876,8 +22692,8 @@ var __webpack_exports__ = {};
21876
22692
  logger_logger.debug(`[WebSocket ${this.sessionId}]`, `Closed: code=${code}, reason=${reason.toString()}`);
21877
22693
  this.ws = null;
21878
22694
  if (1008 === code || reason.toString().includes("unauthenticated")) {
21879
- logger_logger.warn(chalk_source.yellow(" WebSocket authentication failed - real-time sync disabled"));
21880
- logger_logger.verbose(chalk_source.gray(" File watching will continue, but remote changes won't be detected until you save"));
22695
+ logger_logger.warn(chalk_source.yellow(" WebSocket authentication failed - changes from the Anvil Editor won't be detected"));
22696
+ logger_logger.verbose(chalk_source.gray(" Local changes will still sync to Anvil, but editor changes won't appear locally"));
21881
22697
  this.emit("auth-failed", void 0);
21882
22698
  return;
21883
22699
  }
@@ -21895,7 +22711,7 @@ var __webpack_exports__ = {};
21895
22711
  });
21896
22712
  });
21897
22713
  }, this.RECONNECT_DELAY);
21898
- } else logger_logger.warn(chalk_source.yellow(` WebSocket reconnection failed after ${this.MAX_RECONNECT_ATTEMPTS} attempts. Real-time sync disabled.`));
22714
+ } else logger_logger.warn(chalk_source.yellow(` WebSocket reconnection failed after ${this.MAX_RECONNECT_ATTEMPTS} attempts - changes from the Anvil Editor won't be detected`));
21899
22715
  });
21900
22716
  this.ws.on("error", (error)=>{
21901
22717
  logger_logger.debug(`[WebSocket ${this.sessionId}]`, `Error: ${error.message}`);
@@ -24219,8 +25035,8 @@ var __webpack_exports__ = {};
24219
25035
  try {
24220
25036
  await this.connectWebSocket();
24221
25037
  } catch (error) {
24222
- logger_logger.warn(chalk_source.yellow(" WebSocket connection unavailable - real-time sync disabled"));
24223
- logger_logger.verbose(chalk_source.gray(" (Server may need to support token-based WebSocket auth)"));
25038
+ logger_logger.warn(chalk_source.yellow(" WebSocket connection unavailable - changes from the Anvil Editor won't be detected"));
25039
+ logger_logger.verbose(chalk_source.gray(" Local changes will still sync to Anvil, but editor changes won't appear locally"));
24224
25040
  logger_logger.debug("WebSocket init error:", error.message);
24225
25041
  }
24226
25042
  }
@@ -24640,7 +25456,8 @@ var __webpack_exports__ = {};
24640
25456
  authToken,
24641
25457
  currentBranch,
24642
25458
  commitId,
24643
- stagedOnly
25459
+ stagedOnly,
25460
+ username
24644
25461
  });
24645
25462
  session.on("branch-changed", (data)=>{
24646
25463
  logger_logger.debug("Event: branch-changed", data);
@@ -24671,14 +25488,18 @@ var __webpack_exports__ = {};
24671
25488
  }
24672
25489
  })();
24673
25490
  exports.AppIdCandidate = __webpack_exports__.AppIdCandidate;
25491
+ exports.AppIdWithContext = __webpack_exports__.AppIdWithContext;
24674
25492
  exports.BranchSyncStatus = __webpack_exports__.BranchSyncStatus;
24675
25493
  exports.checkUncommittedChanges = __webpack_exports__.checkUncommittedChanges;
24676
- exports.detectAppIds = __webpack_exports__.detectAppIds;
25494
+ exports.detectAppIdsByCommitLookup = __webpack_exports__.detectAppIdsByCommitLookup;
24677
25495
  exports.detectAppIdsFromAllRemotes = __webpack_exports__.detectAppIdsFromAllRemotes;
25496
+ exports.filterCandidates = __webpack_exports__.filterCandidates;
25497
+ exports.formatCandidateLabel = __webpack_exports__.formatCandidateLabel;
24678
25498
  exports.getValidAuthToken = __webpack_exports__.getValidAuthToken;
24679
25499
  exports.hasTokensForUrl = __webpack_exports__.hasTokensForUrl;
24680
25500
  exports.login = __webpack_exports__.login;
24681
25501
  exports.logout = __webpack_exports__.logout;
25502
+ exports.lookupRemoteInfoForAppId = __webpack_exports__.lookupRemoteInfoForAppId;
24682
25503
  exports.syncToLatest = __webpack_exports__.syncToLatest;
24683
25504
  exports.validateAnvilApp = __webpack_exports__.validateAnvilApp;
24684
25505
  exports.validateBranchSyncStatus = __webpack_exports__.validateBranchSyncStatus;
@@ -24686,14 +25507,18 @@ exports.verifyAuth = __webpack_exports__.verifyAuth;
24686
25507
  exports.watch = __webpack_exports__.watch;
24687
25508
  for(var __rspack_i in __webpack_exports__)if (-1 === [
24688
25509
  "AppIdCandidate",
25510
+ "AppIdWithContext",
24689
25511
  "BranchSyncStatus",
24690
25512
  "checkUncommittedChanges",
24691
- "detectAppIds",
25513
+ "detectAppIdsByCommitLookup",
24692
25514
  "detectAppIdsFromAllRemotes",
25515
+ "filterCandidates",
25516
+ "formatCandidateLabel",
24693
25517
  "getValidAuthToken",
24694
25518
  "hasTokensForUrl",
24695
25519
  "login",
24696
25520
  "logout",
25521
+ "lookupRemoteInfoForAppId",
24697
25522
  "syncToLatest",
24698
25523
  "validateAnvilApp",
24699
25524
  "validateBranchSyncStatus",