@tantawowa/hosanna-tools 3.7.4 → 3.7.6

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.
@@ -17,6 +17,7 @@ const framework_installer_js_1 = require("../updater/framework-installer.js");
17
17
  const sdk_manager_js_1 = require("../updater/sdk-manager.js");
18
18
  const local_sdk_manager_js_1 = require("../updater/local-sdk-manager.js");
19
19
  const symlink_registry_js_1 = require("../updater/symlink-registry.js");
20
+ const local_source_override_js_1 = require("./local-source-override.js");
20
21
  const FIELD_ORDER = [
21
22
  'git-url',
22
23
  'sdk-version',
@@ -282,7 +283,9 @@ function hasUpdates(updates) {
282
283
  function isFlavour(value) {
283
284
  return value === 'fullSource' || value === 'core' || value === 'game' || value === 'full';
284
285
  }
285
- function sourceModeFromConfig(config) {
286
+ function sourceModeFromConfig(config, localOverride) {
287
+ if (localOverride)
288
+ return localOverride.mode;
286
289
  if (config['sdk-version'] === 'LOCAL_SDK' || config.branch === 'LOCAL_SDK') {
287
290
  if (config['local-sdk-mode'] === 'embedded' || config['local-sdk-mode'] === 'shared') {
288
291
  return config['local-sdk-mode'];
@@ -310,9 +313,15 @@ function parsePlatformList(value) {
310
313
  }
311
314
  return Array.from(new Set(platforms));
312
315
  }
313
- function formatSourceConfig(config, cwd) {
314
- const mode = sourceModeFromConfig(config);
316
+ function formatSourceConfig(config, cwd, localOverride) {
317
+ var _a;
318
+ const mode = sourceModeFromConfig(config, localOverride);
315
319
  const lines = [`Hosanna source install mode: ${mode}`];
320
+ if (localOverride) {
321
+ lines.push(' local-override: active (private to this Git worktree)');
322
+ lines.push(` override-file: ${(0, local_source_override_js_1.getLocalSourceOverridePath)(cwd)}`);
323
+ lines.push(` committed-source-mode: ${sourceModeFromConfig(config)}`);
324
+ }
316
325
  if (mode === 'keygen') {
317
326
  lines.push(` flavour: ${typeof config.flavour === 'string' ? config.flavour : '(unset)'}`);
318
327
  lines.push(` platforms: ${Array.isArray(config.platforms) ? config.platforms.join(', ') : '(unset)'}`);
@@ -327,7 +336,7 @@ function formatSourceConfig(config, cwd) {
327
336
  lines.push(` checksum: ${artifact.checksum || '(unavailable)'}`);
328
337
  }
329
338
  }
330
- catch (_a) {
339
+ catch (_b) {
331
340
  lines.push(' resolved-install: (not installed)');
332
341
  }
333
342
  }
@@ -340,7 +349,7 @@ function formatSourceConfig(config, cwd) {
340
349
  lines.push(` source: ${path_1.default.join(cwd, 'hosanna-ui')}`);
341
350
  }
342
351
  else if (mode === 'shared') {
343
- const configured = typeof config['local-sdk-path'] === 'string' ? config['local-sdk-path'] : '';
352
+ const configured = (_a = localOverride === null || localOverride === void 0 ? void 0 : localOverride.sourcePath) !== null && _a !== void 0 ? _a : (typeof config['local-sdk-path'] === 'string' ? config['local-sdk-path'] : '');
344
353
  lines.push(` configured-source: ${configured || '(unset)'}`);
345
354
  try {
346
355
  lines.push(` resolved-source: ${(0, local_sdk_manager_js_1.resolveLocalSdkSource)(cwd, configured)}`);
@@ -433,22 +442,24 @@ async function installSourceMode(mode, cwd, force, sourcePath) {
433
442
  // LOCAL_SDK is a caller-provided checkout; writing its config is the install.
434
443
  }
435
444
  async function runHosannaSourceConfig(options = {}) {
436
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
445
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
437
446
  const cwd = resolveCwd(options.cwd);
438
447
  const mode = (_a = options.mode) !== null && _a !== void 0 ? _a : 'show';
439
448
  const writeStdout = (_b = options.writeStdout) !== null && _b !== void 0 ? _b : ((text) => console.info(text));
440
449
  const config = readHosannaJson(cwd, { allowMissing: true });
450
+ const localOverride = (0, local_source_override_js_1.readLocalSourceOverride)(cwd);
441
451
  if (mode === 'show') {
442
- const message = formatSourceConfig(config, cwd);
452
+ const message = formatSourceConfig(config, cwd, localOverride);
443
453
  writeStdout(message);
444
454
  return {
445
455
  updated: false,
446
- mode: sourceModeFromConfig(config),
456
+ mode: sourceModeFromConfig(config, localOverride),
447
457
  config,
448
458
  message,
449
459
  };
450
460
  }
451
461
  const next = Object.assign({}, config);
462
+ let nextLocalOverride;
452
463
  if (mode === 'keygen') {
453
464
  const requestedFlavour = (_c = options.flavour) !== null && _c !== void 0 ? _c : (isFlavour(next.flavour) ? next.flavour : DEFAULT_KEYGEN_FLAVOUR);
454
465
  const platforms = (_d = options.platforms) !== null && _d !== void 0 ? _d : (Array.isArray(next.platforms) ? next.platforms : []);
@@ -461,7 +472,9 @@ async function runHosannaSourceConfig(options = {}) {
461
472
  next.platforms = platforms;
462
473
  else
463
474
  delete next.platforms;
464
- next['sdk-version'] = (_e = options.sdkVersion) !== null && _e !== void 0 ? _e : DEFAULT_KEYGEN_SDK_VERSION;
475
+ next['sdk-version'] = (_e = options.sdkVersion) !== null && _e !== void 0 ? _e : (sourceModeFromConfig(config) === 'keygen' && typeof config['sdk-version'] === 'string'
476
+ ? config['sdk-version']
477
+ : DEFAULT_KEYGEN_SDK_VERSION);
465
478
  delete next['git-url'];
466
479
  delete next.branch;
467
480
  delete next['local-sdk-mode'];
@@ -480,48 +493,48 @@ async function runHosannaSourceConfig(options = {}) {
480
493
  delete next['local-sdk-path'];
481
494
  }
482
495
  else {
483
- next.distribution = 'git';
484
- next['sdk-version'] = 'LOCAL_SDK';
485
- next.branch = 'LOCAL_SDK';
486
- if (options.gitUrl || typeof next['git-url'] !== 'string') {
487
- next['git-url'] = (_j = options.gitUrl) !== null && _j !== void 0 ? _j : DEFAULT_GIT_URL;
488
- }
489
- delete next.flavour;
490
- delete next.platforms;
491
496
  if (mode === 'embedded') {
492
- next['local-sdk-mode'] = 'embedded';
493
- delete next['local-sdk-path'];
494
- if (!options.sourcePath && sourceModeFromConfig(config) !== 'embedded') {
497
+ const sourcePath = (_j = options.sourcePath) !== null && _j !== void 0 ? _j : localOverride === null || localOverride === void 0 ? void 0 : localOverride.sourcePath;
498
+ if (!sourcePath && sourceModeFromConfig(config, localOverride) !== 'embedded') {
495
499
  throw new Error('Embedded source mode requires --source-path <hosanna-ui-checkout>.');
496
500
  }
501
+ nextLocalOverride = Object.assign({ schemaVersion: 1, mode: 'embedded' }, (sourcePath ? { sourcePath } : {}));
497
502
  }
498
503
  else if (mode === 'shared') {
499
- const sourcePath = (_k = options.sourcePath) !== null && _k !== void 0 ? _k : (typeof next['local-sdk-path'] === 'string' ? next['local-sdk-path'] : undefined);
504
+ const sourcePath = (_l = (_k = options.sourcePath) !== null && _k !== void 0 ? _k : localOverride === null || localOverride === void 0 ? void 0 : localOverride.sourcePath) !== null && _l !== void 0 ? _l : (typeof config['local-sdk-path'] === 'string' ? config['local-sdk-path'] : undefined);
500
505
  if (!sourcePath)
501
506
  throw new Error('Shared source mode requires --source-path <hosanna-ui-checkout>.');
502
- next['local-sdk-mode'] = 'shared';
503
- next['local-sdk-path'] = sourcePath;
507
+ nextLocalOverride = { schemaVersion: 1, mode: 'shared', sourcePath };
504
508
  }
505
509
  else {
506
- delete next['local-sdk-mode'];
507
- delete next['local-sdk-path'];
510
+ nextLocalOverride = { schemaVersion: 1, mode: 'local' };
508
511
  }
509
512
  }
510
- const message = `Updated hosanna.json source install mode to ${mode}.`;
513
+ const isLocalMode = mode === 'local' || mode === 'embedded' || mode === 'shared';
514
+ const message = isLocalMode
515
+ ? `Updated private local Hosanna source override to ${mode}; hosanna.json is unchanged.`
516
+ : `Updated committed Hosanna source install mode to ${mode} and cleared any local override.`;
511
517
  if (!options.install) {
512
- writeHosannaJson(cwd, next);
518
+ if (nextLocalOverride)
519
+ (0, local_source_override_js_1.writeLocalSourceOverride)(cwd, nextLocalOverride);
520
+ else {
521
+ writeHosannaJson(cwd, next);
522
+ (0, local_source_override_js_1.clearLocalSourceOverride)(cwd);
523
+ }
513
524
  writeStdout(message);
514
525
  return {
515
526
  updated: true,
516
- mode: sourceModeFromConfig(next),
527
+ mode: sourceModeFromConfig(next, nextLocalOverride),
517
528
  config: next,
518
529
  message,
519
530
  };
520
531
  }
521
532
  const repoDir = path_1.default.join(cwd, 'hosanna-ui');
522
- const currentMode = sourceModeFromConfig(config);
533
+ const currentMode = sourceModeFromConfig(config, localOverride);
523
534
  const originalConfigPath = path_1.default.join(cwd, 'hosanna.json');
524
535
  const originalConfig = fs_1.default.existsSync(originalConfigPath) ? fs_1.default.readFileSync(originalConfigPath, 'utf8') : undefined;
536
+ const localOverridePath = (0, local_source_override_js_1.getLocalSourceOverridePath)(cwd);
537
+ const originalLocalOverride = fs_1.default.existsSync(localOverridePath) ? fs_1.default.readFileSync(localOverridePath, 'utf8') : undefined;
525
538
  let backupRoot;
526
539
  let backupRepoDir;
527
540
  let projectPathSnapshot;
@@ -529,17 +542,23 @@ async function runHosannaSourceConfig(options = {}) {
529
542
  throw new Error(`${repoDir} does not exist. Local source mode requires a caller-provided Hosanna checkout.`);
530
543
  }
531
544
  try {
532
- const sharedTargetChanged = mode === 'shared' && currentMode === 'shared' && options.sourcePath !== undefined && (() => {
545
+ const sharedSourcePath = (nextLocalOverride === null || nextLocalOverride === void 0 ? void 0 : nextLocalOverride.mode) === 'shared' ? nextLocalOverride.sourcePath : undefined;
546
+ const sharedTargetChanged = mode === 'shared' && currentMode === 'shared' && sharedSourcePath !== undefined && (() => {
533
547
  try {
534
- return fs_1.default.realpathSync(repoDir) !== (0, local_sdk_manager_js_1.resolveLocalSdkSource)(cwd, options.sourcePath);
548
+ return fs_1.default.realpathSync(repoDir) !== (0, local_sdk_manager_js_1.resolveLocalSdkSource)(cwd, sharedSourcePath);
535
549
  }
536
550
  catch (_a) {
537
551
  return true;
538
552
  }
539
553
  })();
540
554
  const embeddedRefresh = mode === 'embedded' && currentMode === 'embedded' && options.sourcePath !== undefined;
541
- const needsCrossModeReplacement = fs_1.default.lstatSync(repoDir, { throwIfNoEntry: false }) !== undefined &&
542
- mode !== 'local' && (currentMode !== mode || sharedTargetChanged || embeddedRefresh);
555
+ const repoStat = fs_1.default.lstatSync(repoDir, { throwIfNoEntry: false });
556
+ // The checked-in config can already say keygen while a developer's ignored
557
+ // hosanna-ui path is still a shared link. Never dereference that external
558
+ // checkout: unlink/backup the client-side link before the managed install.
559
+ const keygenSymlinkReplacement = mode === 'keygen' && (repoStat === null || repoStat === void 0 ? void 0 : repoStat.isSymbolicLink()) === true;
560
+ const needsCrossModeReplacement = repoStat !== undefined &&
561
+ mode !== 'local' && (currentMode !== mode || sharedTargetChanged || embeddedRefresh || keygenSymlinkReplacement);
543
562
  if (needsCrossModeReplacement && !options.replaceExisting) {
544
563
  throw new Error(`${repoDir} already exists. Use --replace-existing with --install to switch source modes safely.`);
545
564
  }
@@ -585,15 +604,20 @@ async function runHosannaSourceConfig(options = {}) {
585
604
  throw error;
586
605
  }
587
606
  }
588
- writeHosannaJson(cwd, next);
589
- await installSourceMode(mode, cwd, Boolean(options.force), (_l = options.sourcePath) !== null && _l !== void 0 ? _l : (typeof next['local-sdk-path'] === 'string' ? next['local-sdk-path'] : undefined));
607
+ if (nextLocalOverride)
608
+ (0, local_source_override_js_1.writeLocalSourceOverride)(cwd, nextLocalOverride);
609
+ else {
610
+ writeHosannaJson(cwd, next);
611
+ (0, local_source_override_js_1.clearLocalSourceOverride)(cwd);
612
+ }
613
+ await installSourceMode(mode, cwd, Boolean(options.force), (_m = nextLocalOverride === null || nextLocalOverride === void 0 ? void 0 : nextLocalOverride.sourcePath) !== null && _m !== void 0 ? _m : options.sourcePath);
590
614
  if (backupRoot)
591
615
  fs_1.default.rmSync(backupRoot, { recursive: true, force: true });
592
616
  writeStdout(message);
593
617
  writeStdout(`Installed Hosanna source mode ${mode}.`);
594
618
  return {
595
619
  updated: true,
596
- mode: sourceModeFromConfig(next),
620
+ mode: sourceModeFromConfig(next, nextLocalOverride),
597
621
  config: next,
598
622
  message,
599
623
  };
@@ -611,8 +635,9 @@ async function runHosannaSourceConfig(options = {}) {
611
635
  if (backupRoot)
612
636
  fs_1.default.rmSync(backupRoot, { recursive: true, force: true });
613
637
  restoreHosannaConfig(cwd, originalConfig);
638
+ (0, local_source_override_js_1.restoreLocalSourceOverride)(cwd, originalLocalOverride);
614
639
  }
615
- catch (_m) {
640
+ catch (_o) {
616
641
  // Preserve the original install failure; rollback failures are secondary.
617
642
  }
618
643
  throw error;
@@ -1 +1 @@
1
- {"version":3,"file":"hosanna-config.js","sourceRoot":"","sources":["../../src/lib/hosanna-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hosanna-config.js","sourceRoot":"","sources":["../../src/lib/hosanna-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ export type LocalSourceMode = 'local' | 'embedded' | 'shared';
2
+ export type LocalSourceOverride = {
3
+ schemaVersion: 1;
4
+ mode: LocalSourceMode;
5
+ sourcePath?: string;
6
+ };
7
+ export type LocalSourceOverrideInstall = {
8
+ expectedSource: string;
9
+ installedSource: string | null;
10
+ matches: boolean;
11
+ };
12
+ /**
13
+ * Git projects keep the override in private, worktree-specific Git metadata so
14
+ * it can never affect status. Non-Git projects use a project-local fallback.
15
+ */
16
+ export declare function getLocalSourceOverridePath(projectRoot: string): string;
17
+ export declare function readLocalSourceOverride(projectRoot: string): LocalSourceOverride | undefined;
18
+ export declare function writeLocalSourceOverride(projectRoot: string, override: LocalSourceOverride): string;
19
+ export declare function clearLocalSourceOverride(projectRoot: string): void;
20
+ export declare function inspectLocalSourceOverrideInstall(projectRoot: string, override: LocalSourceOverride): LocalSourceOverrideInstall;
21
+ export declare function assertLocalSourceOverrideInstalled(projectRoot: string, override: LocalSourceOverride): void;
22
+ export declare function restoreLocalSourceOverride(projectRoot: string, contents: string | undefined): void;
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getLocalSourceOverridePath = getLocalSourceOverridePath;
7
+ exports.readLocalSourceOverride = readLocalSourceOverride;
8
+ exports.writeLocalSourceOverride = writeLocalSourceOverride;
9
+ exports.clearLocalSourceOverride = clearLocalSourceOverride;
10
+ exports.inspectLocalSourceOverrideInstall = inspectLocalSourceOverrideInstall;
11
+ exports.assertLocalSourceOverrideInstalled = assertLocalSourceOverrideInstalled;
12
+ exports.restoreLocalSourceOverride = restoreLocalSourceOverride;
13
+ const fs_1 = __importDefault(require("fs"));
14
+ const path_1 = __importDefault(require("path"));
15
+ const OVERRIDE_FILE_NAME = 'hosanna-source-override.json';
16
+ const NON_GIT_OVERRIDE_PATH = path_1.default.join('.hosanna-tools', 'source.local.json');
17
+ function resolveGitDir(projectRoot) {
18
+ const dotGit = path_1.default.join(projectRoot, '.git');
19
+ let stat;
20
+ try {
21
+ stat = fs_1.default.lstatSync(dotGit);
22
+ }
23
+ catch (_a) {
24
+ return undefined;
25
+ }
26
+ if (stat.isDirectory())
27
+ return dotGit;
28
+ if (!stat.isFile())
29
+ return undefined;
30
+ const match = fs_1.default.readFileSync(dotGit, 'utf8').trim().match(/^gitdir:\s*(.+)$/i);
31
+ if (!match)
32
+ return undefined;
33
+ return path_1.default.resolve(projectRoot, match[1]);
34
+ }
35
+ /**
36
+ * Git projects keep the override in private, worktree-specific Git metadata so
37
+ * it can never affect status. Non-Git projects use a project-local fallback.
38
+ */
39
+ function getLocalSourceOverridePath(projectRoot) {
40
+ const root = path_1.default.resolve(projectRoot);
41
+ const gitDir = resolveGitDir(root);
42
+ return gitDir
43
+ ? path_1.default.join(gitDir, OVERRIDE_FILE_NAME)
44
+ : path_1.default.join(root, NON_GIT_OVERRIDE_PATH);
45
+ }
46
+ function validateOverride(value, filePath) {
47
+ if (!value || typeof value !== 'object') {
48
+ throw new Error(`Invalid local Hosanna source override at ${filePath}: expected a JSON object.`);
49
+ }
50
+ const candidate = value;
51
+ if (candidate.schemaVersion !== 1) {
52
+ throw new Error(`Invalid local Hosanna source override at ${filePath}: unsupported schemaVersion.`);
53
+ }
54
+ if (candidate.mode !== 'local' && candidate.mode !== 'embedded' && candidate.mode !== 'shared') {
55
+ throw new Error(`Invalid local Hosanna source override at ${filePath}: unsupported mode.`);
56
+ }
57
+ if (candidate.mode === 'shared' && (typeof candidate.sourcePath !== 'string' || !candidate.sourcePath.trim())) {
58
+ throw new Error(`Invalid local Hosanna source override at ${filePath}: shared mode requires sourcePath.`);
59
+ }
60
+ if (candidate.sourcePath !== undefined && typeof candidate.sourcePath !== 'string') {
61
+ throw new Error(`Invalid local Hosanna source override at ${filePath}: sourcePath must be a string.`);
62
+ }
63
+ return Object.assign({ schemaVersion: 1, mode: candidate.mode }, (candidate.sourcePath !== undefined ? { sourcePath: candidate.sourcePath } : {}));
64
+ }
65
+ function readLocalSourceOverride(projectRoot) {
66
+ const filePath = getLocalSourceOverridePath(projectRoot);
67
+ if (!fs_1.default.existsSync(filePath))
68
+ return undefined;
69
+ try {
70
+ return validateOverride(JSON.parse(fs_1.default.readFileSync(filePath, 'utf8')), filePath);
71
+ }
72
+ catch (error) {
73
+ if (error instanceof SyntaxError) {
74
+ throw new Error(`Invalid local Hosanna source override at ${filePath}: ${error.message}`);
75
+ }
76
+ throw error;
77
+ }
78
+ }
79
+ function writeLocalSourceOverride(projectRoot, override) {
80
+ const filePath = getLocalSourceOverridePath(projectRoot);
81
+ const validated = validateOverride(override, filePath);
82
+ fs_1.default.mkdirSync(path_1.default.dirname(filePath), { recursive: true });
83
+ const temporaryPath = `${filePath}.${process.pid}.${Date.now()}.tmp`;
84
+ try {
85
+ fs_1.default.writeFileSync(temporaryPath, `${JSON.stringify(validated, null, 2)}\n`, 'utf8');
86
+ fs_1.default.renameSync(temporaryPath, filePath);
87
+ }
88
+ finally {
89
+ fs_1.default.rmSync(temporaryPath, { force: true });
90
+ }
91
+ return filePath;
92
+ }
93
+ function clearLocalSourceOverride(projectRoot) {
94
+ fs_1.default.rmSync(getLocalSourceOverridePath(projectRoot), { force: true });
95
+ }
96
+ function inspectLocalSourceOverrideInstall(projectRoot, override) {
97
+ const root = path_1.default.resolve(projectRoot);
98
+ const installedRoot = path_1.default.join(root, 'hosanna-ui');
99
+ const stat = fs_1.default.lstatSync(installedRoot, { throwIfNoEntry: false });
100
+ let installedSource = null;
101
+ if (stat) {
102
+ try {
103
+ installedSource = fs_1.default.realpathSync(installedRoot);
104
+ }
105
+ catch (_a) {
106
+ installedSource = null;
107
+ }
108
+ }
109
+ if (override.mode === 'shared') {
110
+ const expectedSource = fs_1.default.realpathSync(path_1.default.resolve(root, override.sourcePath));
111
+ return {
112
+ expectedSource,
113
+ installedSource,
114
+ matches: (stat === null || stat === void 0 ? void 0 : stat.isSymbolicLink()) === true && installedSource === expectedSource,
115
+ };
116
+ }
117
+ return {
118
+ expectedSource: installedRoot,
119
+ installedSource,
120
+ matches: Boolean(stat) && (override.mode !== 'embedded' || (stat === null || stat === void 0 ? void 0 : stat.isSymbolicLink()) === false),
121
+ };
122
+ }
123
+ function assertLocalSourceOverrideInstalled(projectRoot, override) {
124
+ var _a;
125
+ const inspection = inspectLocalSourceOverrideInstall(projectRoot, override);
126
+ if (inspection.matches)
127
+ return;
128
+ throw new Error(`Private ${override.mode} Hosanna source override is configured but not installed ` +
129
+ `(expected ${inspection.expectedSource}, found ${(_a = inspection.installedSource) !== null && _a !== void 0 ? _a : 'missing'}). ` +
130
+ `Run \`hst config source ${override.mode}${override.sourcePath ? ` --source-path ${override.sourcePath}` : ''} --install --replace-existing\`.`);
131
+ }
132
+ function restoreLocalSourceOverride(projectRoot, contents) {
133
+ const filePath = getLocalSourceOverridePath(projectRoot);
134
+ if (contents === undefined) {
135
+ fs_1.default.rmSync(filePath, { force: true });
136
+ return;
137
+ }
138
+ fs_1.default.mkdirSync(path_1.default.dirname(filePath), { recursive: true });
139
+ fs_1.default.writeFileSync(filePath, contents, 'utf8');
140
+ }
141
+ //# sourceMappingURL=local-source-override.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-source-override.js","sourceRoot":"","sources":["../../src/lib/local-source-override.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tantawowa/hosanna-tools",
3
- "version": "3.7.4",
3
+ "version": "3.7.6",
4
4
  "type": "commonjs",
5
5
  "engines": {
6
6
  "node": ">=24.17.0 <25"