cabloy 5.1.77 → 5.1.79

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/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 5.1.79
4
+
5
+ ### Improvements
6
+
7
+ - Refresh the `vona zova-core` patch for `v5.1.64`.
8
+
9
+ ## 5.1.78
10
+
11
+ ### Improvements
12
+
13
+ - Add a release compensation flow for `zova-core`.
14
+ - Publish the latest package updates.
15
+
3
16
  ## 5.1.77
4
17
 
5
18
  ### Improvements
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cabloy",
3
- "version": "5.1.77",
3
+ "version": "5.1.79",
4
4
  "gitHead": "2c5c19284bab738e492856189acb6fad74b8a7b7",
5
5
  "description": "A Node.js fullstack framework",
6
6
  "keywords": [
@@ -1,39 +1,100 @@
1
1
  import minimist from 'minimist';
2
2
  import { execSync } from 'node:child_process';
3
- import { existsSync, readFileSync, writeFileSync } from 'node:fs';
3
+ import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs';
4
4
  import { dirname, resolve } from 'node:path';
5
5
  import { fileURLToPath } from 'node:url';
6
6
 
7
7
  // --- Constants ---
8
8
  const TAG_PREFIX = 'cabloy@';
9
9
  const GITHUB_REPO = 'cabloy/cabloy';
10
- const PACKAGE_JSON_PATH = resolve(dirname(fileURLToPath(import.meta.url)), '..', 'package.json');
11
- const CHANGELOG_PATH = resolve(dirname(fileURLToPath(import.meta.url)), '..', 'CHANGELOG.md');
12
10
  const COMMIT_CAP = 200;
13
- // const ZOVA_DIR = resolve(dirname(fileURLToPath(import.meta.url)), '..', 'zova');
14
- // const VONA_DIR = resolve(dirname(fileURLToPath(import.meta.url)), '..', 'vona');
11
+ const RELEASE_SCRIPT_PATH = fileURLToPath(import.meta.url);
12
+ const ROOT_DIR = resolve(dirname(RELEASE_SCRIPT_PATH), '..');
13
+ const VONA_DIR = resolve(ROOT_DIR, 'vona');
14
+ const VONA_WORKSPACE_PATH = resolve(VONA_DIR, 'pnpm-workspace.yaml');
15
+ const VONA_PATCHES_DIR = resolve(VONA_DIR, 'patches');
16
+ const ZOVA_CORE_PACKAGE_JSON_PATH = resolve(
17
+ ROOT_DIR,
18
+ 'zova',
19
+ 'packages-zova',
20
+ 'zova-core',
21
+ 'package.json',
22
+ );
23
+ const PACKAGE_JSON_PATH = resolve(ROOT_DIR, 'package.json');
24
+ const CHANGELOG_PATH = resolve(ROOT_DIR, 'CHANGELOG.md');
25
+
26
+ interface ExecOptions {
27
+ cwd?: string;
28
+ env?: NodeJS.ProcessEnv;
29
+ }
15
30
 
16
31
  // --- Utility functions ---
17
- function exec(cmd: string, dryRun?: boolean): string {
32
+ function exec(cmd: string, dryRun?: boolean, options?: ExecOptions): string {
18
33
  if (dryRun) {
19
34
  // eslint-disable-next-line
20
35
  console.log(` [dry-run] ${cmd}`);
21
36
  return '';
22
37
  }
23
- return execSync(cmd, { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] }).trim();
38
+ return execSync(cmd, {
39
+ cwd: options?.cwd || ROOT_DIR,
40
+ env: options?.env ? { ...process.env, ...options.env } : process.env,
41
+ encoding: 'utf-8',
42
+ stdio: ['pipe', 'pipe', 'pipe'],
43
+ }).trim();
44
+ }
45
+
46
+ function execInherited(cmd: string, dryRun?: boolean, options?: ExecOptions): void {
47
+ if (dryRun) {
48
+ // eslint-disable-next-line
49
+ console.log(` [dry-run] ${cmd}`);
50
+ return;
51
+ }
52
+ execSync(cmd, {
53
+ cwd: options?.cwd || ROOT_DIR,
54
+ env: options?.env ? { ...process.env, ...options.env } : process.env,
55
+ encoding: 'utf-8',
56
+ stdio: 'inherit',
57
+ });
58
+ }
59
+
60
+ function readJson(filePath: string): Record<string, any> {
61
+ return JSON.parse(readFileSync(filePath, 'utf-8'));
24
62
  }
25
63
 
26
64
  function readPackageJson(): Record<string, any> {
27
- return JSON.parse(readFileSync(PACKAGE_JSON_PATH, 'utf-8'));
65
+ return readJson(PACKAGE_JSON_PATH);
28
66
  }
29
67
 
30
68
  function writePackageJson(pkg: Record<string, any>): void {
31
69
  writeFileSync(PACKAGE_JSON_PATH, `${JSON.stringify(pkg, null, 2)}\n`);
32
70
  }
33
71
 
72
+ function isValidVersion(version: string): boolean {
73
+ return /^\d+\.\d+\.\d+$/.test(version);
74
+ }
75
+
76
+ function parseVersion(version: string): [number, number, number] {
77
+ if (!isValidVersion(version)) {
78
+ throw new Error(`Invalid version: ${version}`);
79
+ }
80
+ const [major, minor, patch] = version.split('.').map(item => Number.parseInt(item, 10));
81
+ return [major, minor, patch];
82
+ }
83
+
84
+ function compareVersions(left: string, right: string): number {
85
+ const leftParts = parseVersion(left);
86
+ const rightParts = parseVersion(right);
87
+ for (let i = 0; i < leftParts.length; i++) {
88
+ if (leftParts[i] > rightParts[i]) return 1;
89
+ if (leftParts[i] < rightParts[i]) return -1;
90
+ }
91
+ return 0;
92
+ }
93
+
34
94
  function getLastTag(): string | null {
35
95
  try {
36
96
  const result = execSync(`git tag -l '${TAG_PREFIX}*' --sort=-v:refname`, {
97
+ cwd: ROOT_DIR,
37
98
  encoding: 'utf-8',
38
99
  }).trim();
39
100
  const tags = result.split('\n').filter(Boolean);
@@ -51,7 +112,7 @@ interface CommitInfo {
51
112
  function getCommitsSinceTag(tag: string | null): CommitInfo[] {
52
113
  const range = tag ? `${tag}..HEAD` : 'HEAD';
53
114
  const logCmd = `git log ${range} --pretty=format:"%h|||%s" --no-merges -${COMMIT_CAP}`;
54
- const result = execSync(logCmd, { encoding: 'utf-8' }).trim();
115
+ const result = execSync(logCmd, { cwd: ROOT_DIR, encoding: 'utf-8' }).trim();
55
116
  if (!result) return [];
56
117
  return result.split('\n').map(line => {
57
118
  const [hash, subject] = line.split('|||');
@@ -79,9 +140,107 @@ function getToday(): string {
79
140
  return new Date().toISOString().split('T')[0];
80
141
  }
81
142
 
143
+ function getPatchFilePath(version: string): string {
144
+ return resolve(VONA_PATCHES_DIR, `zova-core@${version}.patch`);
145
+ }
146
+
147
+ function readCurrentPatchedZovaCoreVersion(): string | null {
148
+ const content = readFileSync(VONA_WORKSPACE_PATH, 'utf-8');
149
+ const match = content.match(/^\s*zova-core@(\d+\.\d+\.\d+):\s+patches\/zova-core@\1\.patch\s*$/m);
150
+ return match?.[1] || null;
151
+ }
152
+
153
+ function readLocalZovaCoreVersion(): string {
154
+ const pkg = readJson(ZOVA_CORE_PACKAGE_JSON_PATH);
155
+ const version = pkg.version?.trim();
156
+ if (!version || !isValidVersion(version)) {
157
+ throw new Error(`Invalid zova-core version in ${ZOVA_CORE_PACKAGE_JSON_PATH}`);
158
+ }
159
+ return version;
160
+ }
161
+
162
+ function normalizeVonaPatchedDependency(version: string): void {
163
+ const patchLine = ` zova-core@${version}: patches/zova-core@${version}.patch`;
164
+ const lines = readFileSync(VONA_WORKSPACE_PATH, 'utf-8').split('\n');
165
+ const patchedDependenciesIndex = lines.findIndex(line => line.trim() === 'patchedDependencies:');
166
+ if (patchedDependenciesIndex === -1) {
167
+ throw new Error(`Missing patchedDependencies block in ${VONA_WORKSPACE_PATH}`);
168
+ }
169
+ let blockEndIndex = patchedDependenciesIndex + 1;
170
+ while (blockEndIndex < lines.length) {
171
+ const line = lines[blockEndIndex];
172
+ if (line && !/^\s/.test(line)) break;
173
+ blockEndIndex++;
174
+ }
175
+ const preservedBlockLines = lines
176
+ .slice(patchedDependenciesIndex + 1, blockEndIndex)
177
+ .filter(
178
+ line =>
179
+ !/^\s*zova-core@\d+\.\d+\.\d+:\s+patches\/zova-core@\d+\.\d+\.\d+\.patch\s*$/.test(line),
180
+ );
181
+ const newLines = [
182
+ ...lines.slice(0, patchedDependenciesIndex + 1),
183
+ patchLine,
184
+ ...preservedBlockLines,
185
+ ...lines.slice(blockEndIndex),
186
+ ];
187
+ writeFileSync(VONA_WORKSPACE_PATH, `${newLines.join('\n').replace(/\n+$/, '\n')}\n`);
188
+ }
189
+
190
+ function replaceOrThrow(
191
+ content: string,
192
+ search: RegExp,
193
+ replacement: string,
194
+ description: string,
195
+ ): string {
196
+ const matches = content.match(search);
197
+ if (!matches || matches.length !== 1) {
198
+ throw new Error(
199
+ `Unable to locate ${description} exactly once while regenerating the zova-core patch`,
200
+ );
201
+ }
202
+ return content.replace(search, replacement);
203
+ }
204
+
205
+ function applyKnownZovaCorePatchEdits(editDir: string): void {
206
+ const errorGlobalPath = resolve(editDir, 'dist', 'bean', 'resource', 'error', 'errorGlobal.d.ts');
207
+ const envPath = resolve(editDir, 'dist', 'types', 'utils', 'env.d.ts');
208
+ const modulePath = resolve(editDir, 'dist', 'types', 'interface', 'module.d.ts');
209
+
210
+ for (const filePath of [errorGlobalPath, envPath, modulePath]) {
211
+ if (!existsSync(filePath)) {
212
+ throw new Error(`Expected patch target file is missing: ${filePath}`);
213
+ }
214
+ }
215
+
216
+ const errorGlobalContent = readFileSync(errorGlobalPath, 'utf-8');
217
+ if (!errorGlobalContent.includes('declare global')) {
218
+ throw new Error(`Expected global Error augmentation in ${errorGlobalPath}`);
219
+ }
220
+ writeFileSync(errorGlobalPath, 'export {};\n');
221
+
222
+ const envContent = readFileSync(envPath, 'utf-8');
223
+ const envNext = replaceOrThrow(
224
+ envContent,
225
+ /declare global \{\n {4}namespace NodeJS \{\n interface ProcessEnv \{[\s\S]*?\n \}\n \}\n\}\n?/,
226
+ '',
227
+ 'the NodeJS.ProcessEnv augmentation',
228
+ );
229
+ writeFileSync(envPath, envNext);
230
+
231
+ const moduleContent = readFileSync(modulePath, 'utf-8');
232
+ const moduleNext = replaceOrThrow(
233
+ moduleContent,
234
+ /declare module '@cabloy\/module-info' \{\n {4}interface IModule \{[\s\S]*?\n \}\n\}\n?/,
235
+ '',
236
+ 'the @cabloy/module-info augmentation',
237
+ );
238
+ writeFileSync(modulePath, moduleNext);
239
+ }
240
+
82
241
  // --- Pre-step: Commit pending changes ---
83
242
  function commitPendingChanges(dryRun?: boolean): void {
84
- const status = execSync('git status --porcelain', { encoding: 'utf-8' }).trim();
243
+ const status = execSync('git status --porcelain', { cwd: ROOT_DIR, encoding: 'utf-8' }).trim();
85
244
  if (!status) return;
86
245
  // eslint-disable-next-line
87
246
  console.log('\n📁 Committing pending changes...');
@@ -94,12 +253,144 @@ function commitPendingChanges(dryRun?: boolean): void {
94
253
  function subProjectRelease(bumpType: 'patch' | 'minor' | 'major', dryRun?: boolean): void {
95
254
  // eslint-disable-next-line
96
255
  console.log(`\n🔧 Running vona/zova release (${bumpType})...`);
256
+ execInherited(`lerna publish ${bumpType} --yes`, dryRun);
257
+ }
258
+
259
+ // --- Compensation step: Refresh the zova-core patch ---
260
+ function regenerateVonaZovaCorePatch(
261
+ currentPatchedVersion: string,
262
+ targetVersion: string,
263
+ dryRun?: boolean,
264
+ ): void {
265
+ const editDir = resolve(
266
+ VONA_DIR,
267
+ 'node_modules',
268
+ '.release-compensation',
269
+ `zova-core-${targetVersion}`,
270
+ );
271
+ const oldPatchFilePath = getPatchFilePath(currentPatchedVersion);
272
+ const newPatchFilePath = getPatchFilePath(targetVersion);
273
+
274
+ // eslint-disable-next-line
275
+ console.log(`\n🩹 Regenerating the Vona zova-core patch for ${targetVersion}...`);
276
+
97
277
  if (dryRun) {
278
+ exec(
279
+ `pnpm --dir "${VONA_DIR}" patch zova-core@${targetVersion} --edit-dir "${editDir}" --ignore-existing`,
280
+ true,
281
+ );
282
+ // eslint-disable-next-line
283
+ console.log(' [dry-run] Apply the known zova-core declaration-file patch edits');
284
+ exec(`pnpm --dir "${VONA_DIR}" patch-commit "${editDir}"`, true);
98
285
  // eslint-disable-next-line
99
- console.log(` [dry-run] lerna publish ${bumpType} --yes`);
286
+ console.log(` [dry-run] Normalize ${VONA_WORKSPACE_PATH}`);
287
+ // eslint-disable-next-line
288
+ console.log(` [dry-run] Remove ${oldPatchFilePath} if it still exists`);
100
289
  return;
101
290
  }
102
- execSync(`lerna publish ${bumpType} --yes`, { encoding: 'utf-8', stdio: 'inherit' });
291
+
292
+ rmSync(editDir, { recursive: true, force: true });
293
+ mkdirSync(dirname(editDir), { recursive: true });
294
+
295
+ try {
296
+ execInherited(
297
+ `pnpm --dir "${VONA_DIR}" patch zova-core@${targetVersion} --edit-dir "${editDir}" --ignore-existing`,
298
+ );
299
+ applyKnownZovaCorePatchEdits(editDir);
300
+ execInherited(`pnpm --dir "${VONA_DIR}" patch-commit "${editDir}"`);
301
+
302
+ normalizeVonaPatchedDependency(targetVersion);
303
+
304
+ if (!existsSync(newPatchFilePath)) {
305
+ throw new Error(`Expected regenerated patch file is missing: ${newPatchFilePath}`);
306
+ }
307
+ if (currentPatchedVersion !== targetVersion && existsSync(oldPatchFilePath)) {
308
+ rmSync(oldPatchFilePath);
309
+ }
310
+ } finally {
311
+ rmSync(editDir, { recursive: true, force: true });
312
+ }
313
+ }
314
+
315
+ function refreshVonaLockfile(dryRun?: boolean): void {
316
+ // eslint-disable-next-line
317
+ console.log('\n📦 Refreshing the Vona lockfile...');
318
+ execInherited(`pnpm --dir "${VONA_DIR}" install`, dryRun);
319
+ }
320
+
321
+ function verifyCompensationPatch(dryRun?: boolean): void {
322
+ // eslint-disable-next-line
323
+ console.log('\n✅ Verifying the refreshed zova-core patch...');
324
+ execInherited('pnpm exec tsc -p tsconfig.json --noEmit', dryRun, { cwd: VONA_DIR });
325
+ execInherited('npm run tsc', dryRun);
326
+ }
327
+
328
+ function commitCompensationChanges(targetVersion: string, dryRun?: boolean): void {
329
+ // eslint-disable-next-line
330
+ console.log('\n📁 Committing compensation changes...');
331
+ exec('git add vona/pnpm-workspace.yaml vona/pnpm-lock.yaml vona/patches', dryRun);
332
+ if (!dryRun) {
333
+ const staged = execSync(
334
+ 'git diff --cached --name-only -- vona/pnpm-workspace.yaml vona/pnpm-lock.yaml vona/patches',
335
+ { cwd: ROOT_DIR, encoding: 'utf-8' },
336
+ ).trim();
337
+ if (!staged) {
338
+ throw new Error('No compensation changes were staged for commit');
339
+ }
340
+ }
341
+ exec(`git commit -m "chore: refresh vona zova-core patch for v${targetVersion}"`, dryRun);
342
+ exec('git push', dryRun);
343
+ }
344
+
345
+ function rerunPatchReleaseAfterCompensation(noAi?: boolean, dryRun?: boolean): void {
346
+ const noAiFlag = noAi ? ' --no-ai' : '';
347
+ // eslint-disable-next-line
348
+ console.log('\n🚀 Running the compensation patch release...');
349
+ execInherited(`node "${RELEASE_SCRIPT_PATH}" patch --skip-compensation${noAiFlag}`, dryRun);
350
+ }
351
+
352
+ async function postReleaseCompensation(options: ReleaseOptions): Promise<void> {
353
+ if (
354
+ options.dryRun ||
355
+ options.changelogOnly ||
356
+ options.publishOnly ||
357
+ options.releaseOnly ||
358
+ options.skipCompensation
359
+ ) {
360
+ return;
361
+ }
362
+
363
+ // eslint-disable-next-line
364
+ console.log('\n🔍 Checking whether zova-core compensation is needed...');
365
+
366
+ const currentPatchedVersion = readCurrentPatchedZovaCoreVersion();
367
+ if (!currentPatchedVersion) {
368
+ throw new Error(`Missing zova-core patchedDependencies entry in ${VONA_WORKSPACE_PATH}`);
369
+ }
370
+
371
+ const localZovaCoreVersion = readLocalZovaCoreVersion();
372
+ // eslint-disable-next-line
373
+ console.log(`Current Vona zova-core patch target: ${currentPatchedVersion}`);
374
+ // eslint-disable-next-line
375
+ console.log(`Local zova-core version: ${localZovaCoreVersion}`);
376
+
377
+ if (compareVersions(localZovaCoreVersion, currentPatchedVersion) <= 0) {
378
+ // eslint-disable-next-line
379
+ console.log('zova-core patch already matches the local version. Skipping compensation.');
380
+ return;
381
+ }
382
+
383
+ if (compareVersions(localZovaCoreVersion, currentPatchedVersion) <= 0) {
384
+ // eslint-disable-next-line
385
+ console.log('No newer local zova-core version needs patch compensation. Skipping.');
386
+ return;
387
+ }
388
+
389
+ regenerateVonaZovaCorePatch(currentPatchedVersion, localZovaCoreVersion, options.dryRun);
390
+ refreshVonaLockfile(options.dryRun);
391
+ verifyCompensationPatch(options.dryRun);
392
+ commitCompensationChanges(localZovaCoreVersion, options.dryRun);
393
+ rerunPatchReleaseAfterCompensation(options.noAi, options.dryRun);
103
394
  }
104
395
 
105
396
  // --- Step 1: Version Bump ---
@@ -115,6 +406,7 @@ async function versionBump(
115
406
  if (lastTag) {
116
407
  const diffCmd = `git -c diff.renameLimit=10000 diff --name-only ${lastTag}..HEAD`;
117
408
  const changedFiles = execSync(diffCmd, {
409
+ cwd: ROOT_DIR,
118
410
  encoding: 'utf-8',
119
411
  stdio: ['pipe', 'pipe', 'pipe'],
120
412
  }).trim();
@@ -211,7 +503,10 @@ async function generateChangelog(version: string, dryRun?: boolean, noAi?: boole
211
503
  // After version bump, the current tag (e.g. cabloy@5.1.4) points to HEAD,
212
504
  // so we need the tag BEFORE that to get the commit range
213
505
  const currentTag = `${TAG_PREFIX}${version}`;
214
- const allTags = execSync(`git tag -l '${TAG_PREFIX}*' --sort=-v:refname`, { encoding: 'utf-8' })
506
+ const allTags = execSync(`git tag -l '${TAG_PREFIX}*' --sort=-v:refname`, {
507
+ cwd: ROOT_DIR,
508
+ encoding: 'utf-8',
509
+ })
215
510
  .trim()
216
511
  .split('\n')
217
512
  .filter(Boolean);
@@ -279,7 +574,7 @@ async function npmPublish(dryRun?: boolean): Promise<void> {
279
574
  return;
280
575
  }
281
576
 
282
- execSync('npm publish', { encoding: 'utf-8', stdio: 'inherit' });
577
+ execSync('npm publish', { cwd: ROOT_DIR, encoding: 'utf-8', stdio: 'inherit' });
283
578
  }
284
579
 
285
580
  // --- Step 4: GitHub Release ---
@@ -313,19 +608,20 @@ async function githubRelease(version: string, dryRun?: boolean): Promise<void> {
313
608
  }
314
609
 
315
610
  // Use gh CLI with a temp file for notes to avoid shell escaping issues
316
- const tmpFile = resolve(dirname(fileURLToPath(import.meta.url)), '..', '.release-notes.tmp.md');
611
+ const tmpFile = resolve(ROOT_DIR, '.release-notes.tmp.md');
317
612
  writeFileSync(tmpFile, notes);
318
613
  try {
319
614
  execSync(
320
615
  `gh release create ${tag} --repo ${GITHUB_REPO} --title "v${version}" --notes-file "${tmpFile}"`,
321
616
  {
617
+ cwd: ROOT_DIR,
322
618
  encoding: 'utf-8',
323
619
  stdio: 'inherit',
324
620
  },
325
621
  );
326
622
  } finally {
327
623
  if (existsSync(tmpFile)) {
328
- execSync(`rm -f "${tmpFile}"`);
624
+ execSync(`rm -f "${tmpFile}"`, { cwd: ROOT_DIR });
329
625
  }
330
626
  }
331
627
  }
@@ -340,6 +636,7 @@ interface ReleaseOptions {
340
636
  skipChangelog?: boolean;
341
637
  skipPublish?: boolean;
342
638
  skipRelease?: boolean;
639
+ skipCompensation?: boolean;
343
640
  noAi?: boolean;
344
641
  }
345
642
 
@@ -349,14 +646,18 @@ async function release(options: ReleaseOptions): Promise<void> {
349
646
 
350
647
  // Pre-flight checks
351
648
  try {
352
- execSync('git rev-parse --is-inside-work-tree', { encoding: 'utf-8', stdio: 'pipe' });
649
+ execSync('git rev-parse --is-inside-work-tree', {
650
+ cwd: ROOT_DIR,
651
+ encoding: 'utf-8',
652
+ stdio: 'pipe',
653
+ });
353
654
  } catch {
354
655
  // eslint-disable-next-line
355
656
  console.error('Error: Not in a git repository');
356
657
  process.exit(1);
357
658
  }
358
659
 
359
- const status = execSync('git status --porcelain', { encoding: 'utf-8' }).trim();
660
+ const status = execSync('git status --porcelain', { cwd: ROOT_DIR, encoding: 'utf-8' }).trim();
360
661
  if (status && !options.dryRun) {
361
662
  // eslint-disable-next-line
362
663
  console.error('Error: Working tree is not clean. Commit or stash your changes first.');
@@ -395,6 +696,8 @@ async function release(options: ReleaseOptions): Promise<void> {
395
696
  await githubRelease(version, options.dryRun);
396
697
  }
397
698
 
699
+ await postReleaseCompensation(options);
700
+
398
701
  // eslint-disable-next-line
399
702
  console.log('\n✅ Release complete!');
400
703
  }
@@ -409,6 +712,7 @@ const args = minimist(process.argv.slice(2), {
409
712
  'skip-changelog',
410
713
  'skip-publish',
411
714
  'skip-release',
715
+ 'skip-compensation',
412
716
  'no-ai',
413
717
  ],
414
718
  default: {
@@ -419,6 +723,7 @@ const args = minimist(process.argv.slice(2), {
419
723
  'skip-changelog': false,
420
724
  'skip-publish': false,
421
725
  'skip-release': false,
726
+ 'skip-compensation': false,
422
727
  'no-ai': false,
423
728
  },
424
729
  });
@@ -439,6 +744,7 @@ release({
439
744
  skipChangelog: args['skip-changelog'],
440
745
  skipPublish: args['skip-publish'],
441
746
  skipRelease: args['skip-release'],
747
+ skipCompensation: args['skip-compensation'],
442
748
  noAi: args['no-ai'],
443
749
  }).catch(err => {
444
750
  // eslint-disable-next-line
@@ -0,0 +1,56 @@
1
+ diff --git a/dist/bean/resource/error/errorGlobal.d.ts b/dist/bean/resource/error/errorGlobal.d.ts
2
+ index 73cebe18f3e260c295bdf42a3d1ab9e86fa2de87..cb0ff5c3b541f646105198ee23ac0fc3d805023e 100644
3
+ --- a/dist/bean/resource/error/errorGlobal.d.ts
4
+ +++ b/dist/bean/resource/error/errorGlobal.d.ts
5
+ @@ -1,9 +1 @@
6
+ -import type { TypeScopesErrorCodes } from '../../type.ts';
7
+ -declare global {
8
+ - export interface Error {
9
+ - code?: TypeScopesErrorCodes | number | undefined;
10
+ - status?: number | string | undefined;
11
+ - }
12
+ -}
13
+ export {};
14
+ -//# sourceMappingURL=errorGlobal.d.ts.map
15
+
16
+ diff --git a/dist/types/interface/module.d.ts b/dist/types/interface/module.d.ts
17
+ index 838e299407218b7bfac469d42a12d6ab59820380..314deb46c0c40670e9c0bc0c6146024e23b147d7 100644
18
+ --- a/dist/types/interface/module.d.ts
19
+ +++ b/dist/types/interface/module.d.ts
20
+ @@ -23,12 +23,6 @@ export interface IModuleResource {
21
+ components: TypeModuleResourceComponents;
22
+ }
23
+ export declare const SymbolInstalled: unique symbol;
24
+ -declare module '@cabloy/module-info' {
25
+ - interface IModule {
26
+ - resource: IModuleResource;
27
+ - info: IModuleInfo;
28
+ - }
29
+ -}
30
+ export interface IModuleApp {
31
+ }
32
+ //# sourceMappingURL=module.d.ts.map
33
+ diff --git a/dist/types/utils/env.d.ts b/dist/types/utils/env.d.ts
34
+ index 708c0a584dfec65b8c7ad2d049156f900de49928..df2bfa254283a8dce5122d97e931244e9d86e41a 100644
35
+ --- a/dist/types/utils/env.d.ts
36
+ +++ b/dist/types/utils/env.d.ts
37
+ @@ -34,19 +34,4 @@ export interface ZovaConfigEnv {
38
+ MOCK_BUILD: string | undefined;
39
+ MOCK_BUILD_PORT: string | undefined;
40
+ }
41
+ -declare global {
42
+ - namespace NodeJS {
43
+ - interface ProcessEnv {
44
+ - NODE_ENV: ZovaMetaMode;
45
+ - META_FLAVOR: ZovaMetaFlavor;
46
+ - META_MODE: ZovaMetaMode;
47
+ - META_APP_MODE: ZovaMetaAppMode;
48
+ - SSR: boolean;
49
+ - DEV: boolean;
50
+ - PROD: boolean;
51
+ - CLIENT: boolean;
52
+ - SERVER: boolean;
53
+ - }
54
+ - }
55
+ -}
56
+ //# sourceMappingURL=env.d.ts.map
@@ -16,7 +16,7 @@ overrides:
16
16
  zod: npm:@cabloy/zod@4.3.8
17
17
 
18
18
  patchedDependencies:
19
- zova-core@5.1.61: 0f4164c4d2bbb16d671beb5c26759dff37769be0709df941bc7b90b94261ac54
19
+ zova-core@5.1.64: 19f064dcd545b69ae05dff4e470afe2152fc27b7970b4c7ffa9a501e1b241a7d
20
20
 
21
21
  importers:
22
22
 
@@ -474,11 +474,11 @@ importers:
474
474
  specifier: npm:@cabloy/zod@4.3.8
475
475
  version: '@cabloy/zod@4.3.8'
476
476
  zova:
477
- specifier: ^5.1.119
478
- version: 5.1.119(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3))
477
+ specifier: ^5.1.121
478
+ version: 5.1.121(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3))
479
479
  zova-jsx:
480
- specifier: ^1.1.67
481
- version: 1.1.67(typescript@5.9.3)
480
+ specifier: ^1.1.69
481
+ version: 1.1.69(typescript@5.9.3)
482
482
  zova-module-a-api:
483
483
  specifier: ^5.1.21
484
484
  version: 5.1.21
@@ -546,11 +546,11 @@ importers:
546
546
  specifier: npm:@cabloy/zod@4.3.8
547
547
  version: '@cabloy/zod@4.3.8'
548
548
  zova:
549
- specifier: ^5.1.118
550
- version: 5.1.118(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3))
549
+ specifier: ^5.1.121
550
+ version: 5.1.121(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3))
551
551
  zova-jsx:
552
- specifier: ^1.1.67
553
- version: 1.1.67(typescript@5.9.3)
552
+ specifier: ^1.1.69
553
+ version: 1.1.69(typescript@5.9.3)
554
554
  zova-module-a-api:
555
555
  specifier: ^5.1.21
556
556
  version: 5.1.21
@@ -7535,11 +7535,11 @@ packages:
7535
7535
  peerDependencies:
7536
7536
  zod: ^3.25.28 || ^4
7537
7537
 
7538
- zova-core@5.1.61:
7539
- resolution: {integrity: sha512-NpIG/6+NzZfVNh1I+sqxP3u9mVNNdWLoeqUWBip0dcFhH/EvkEtgd89OXRl1K2PGZ5ikbLCAItQEp+yMjCm6nw==}
7538
+ zova-core@5.1.64:
7539
+ resolution: {integrity: sha512-reskEHAs8G42RTXJJjFlalyNglpE3x1rkBILLpcEnZHG+3pUOz2ajUScZavvumHVZ4pT7Qo6cfWMqEdcUqRZOA==}
7540
7540
 
7541
- zova-jsx@1.1.67:
7542
- resolution: {integrity: sha512-w7Vq46Ggxy0Tjx3vM0E9ihb6SNfSnGaTUNuTZFhdkR+xkIYb40r7EypcSsB16YE2HZ/QD91SC5oduOOCmYLj5A==}
7541
+ zova-jsx@1.1.69:
7542
+ resolution: {integrity: sha512-DD0NCtOF9iXO9pUstqvp9snFhJkXKdxaOHT4bH41K5Gwwap5AFgnNfURZwJ77S5hFecSlb6gqC7vRXeu9W13oA==}
7543
7543
 
7544
7544
  zova-module-a-api@5.1.21:
7545
7545
  resolution: {integrity: sha512-qjm/hfjC4/+7Ap/uzJfBzV0PwRlp2idEmEKwCZYxquaXq6QtJBbTWTznw1iukT4lkJZip2KFkjOvXTzdvZA2UA==}
@@ -7610,29 +7610,20 @@ packages:
7610
7610
  zova-module-a-table@5.1.37:
7611
7611
  resolution: {integrity: sha512-P1WdqTGLdbAh81NhF3+dN+Y91ZidOL87AzVh22jCTevk2NFYz48wBRH9b7EqMSk8HMbB22sbzIQclbnr7+BW3w==}
7612
7612
 
7613
- zova-module-a-zod@5.1.34:
7614
- resolution: {integrity: sha512-CURvuDMIID7iyIG3cP6RefJ53e7fMM8TPY/hvjMxJsfCphILK3ZG8DjPN3L1fAjhR1m9OOuXmkYUwrPaoRbtUw==}
7613
+ zova-module-a-zod@5.1.35:
7614
+ resolution: {integrity: sha512-hCZG81WY5MPG5ozaYLMiNML4FtdCGNOJpi5drEKTP/xpsvzil66ZaOXkWj+XO/3MlkulmcBEThBx7amcHHWszg==}
7615
7615
 
7616
- zova-module-a-zova@5.1.81:
7617
- resolution: {integrity: sha512-H5D3TwmGVi7C4syp6EZJSy0JZB8pk92gh4zWOelj8l/WT2Xqfc/98RtL/o21lsrOobSjJC8hfplSdJWuTUO60w==}
7618
-
7619
- zova-module-a-zova@5.1.82:
7620
- resolution: {integrity: sha512-JDgLmu/7+oPrFLb7/zhHtl739+dhuBL/J508ObWuahiVymU7wzJEPPSmi/XaCnKB58FXpfcaoe0rMoxNsT0gmA==}
7616
+ zova-module-a-zova@5.1.84:
7617
+ resolution: {integrity: sha512-ZdjUMHImKZ1bnui84hkzUgFP8dvG5h/en7W1hPu97b1VlcN7a7eHP8uSDLDtEbDIGyoEjJ/EgXuph0XE98fTpw==}
7621
7618
 
7622
7619
  zova-module-rest-resource@5.1.40:
7623
7620
  resolution: {integrity: sha512-rMqZaXSK6nJ4LW2O1yO/jZqxI7joCiWylzjutMTKpx7EfNmtK1t1nVoWFd+gCTxqgbbv9uXh0vfFaSFA7GKYFg==}
7624
7621
 
7625
- zova-suite-a-zova@5.1.117:
7626
- resolution: {integrity: sha512-Ceo7CqXmmDHCGKvwQ9cb90DLbF5P0s2qT/jYyBeTf8BllpSjIqYqxUPE0Eh88XYWHlTWgH28wP6SD7DeGfPaCA==}
7627
-
7628
- zova-suite-a-zova@5.1.118:
7629
- resolution: {integrity: sha512-DhnlKOT6VG0+v60TjQNN/Qaa9v1UEsGU8jo/layFlLociG5AHUuoiCABSN4dklYcBnAVwu1EvCVQhcgnWwrPfA==}
7622
+ zova-suite-a-zova@5.1.120:
7623
+ resolution: {integrity: sha512-blLGBOhUXZGsJcB6xEdkVrT2sjCQ3757gly3+DoTaUvfCU7BoaEohHj/AahXOcpuxDWkbJod19MP7thBRBWl+Q==}
7630
7624
 
7631
- zova@5.1.118:
7632
- resolution: {integrity: sha512-hgj4FKy68B2Mve47NrhqhQEaESbdZUci/7WtlGagaZgyFzfBn19CHkWDRkJNToeBVb/LD1Zwt0HY7TDEe7WPDw==}
7633
-
7634
- zova@5.1.119:
7635
- resolution: {integrity: sha512-st8Wwh4NvoNcZUvNb67XsG7GVhaMyFIK/EZ6Zfc0uqwdKtUShC6IBGHMc3u/28cIXRcpsH5REi9HL6SB8WQj/Q==}
7625
+ zova@5.1.121:
7626
+ resolution: {integrity: sha512-KExyNjd8HlwZtYzIS9mMD/TGrkMIsUaSHS6XENm5pcdG1j1O/8zuae2Df4VbJsqzaZRJZV9Ul2iaqDj4T6Mg4w==}
7636
7627
 
7637
7628
  zwitch@1.0.5:
7638
7629
  resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==}
@@ -13101,7 +13092,7 @@ snapshots:
13101
13092
  dependencies:
13102
13093
  zod: '@cabloy/zod@4.3.8'
13103
13094
 
13104
- zova-core@5.1.61(patch_hash=0f4164c4d2bbb16d671beb5c26759dff37769be0709df941bc7b90b94261ac54)(typescript@5.9.3):
13095
+ zova-core@5.1.64(patch_hash=19f064dcd545b69ae05dff4e470afe2152fc27b7970b4c7ffa9a501e1b241a7d)(typescript@5.9.3):
13105
13096
  dependencies:
13106
13097
  '@cabloy/compose': link:packages-utils/compose
13107
13098
  '@cabloy/extend': link:packages-utils/extend
@@ -13130,14 +13121,14 @@ snapshots:
13130
13121
  transitivePeerDependencies:
13131
13122
  - typescript
13132
13123
 
13133
- zova-jsx@1.1.67(typescript@5.9.3):
13124
+ zova-jsx@1.1.69(typescript@5.9.3):
13134
13125
  dependencies:
13135
13126
  '@cabloy/compose': link:packages-utils/compose
13136
13127
  '@cabloy/utils': link:packages-utils/utils
13137
13128
  '@cabloy/word-utils': 2.1.14
13138
13129
  typestyle: 2.4.0
13139
13130
  vue: 3.5.39(typescript@5.9.3)
13140
- zova-core: 5.1.61(patch_hash=0f4164c4d2bbb16d671beb5c26759dff37769be0709df941bc7b90b94261ac54)(typescript@5.9.3)
13131
+ zova-core: 5.1.64(patch_hash=19f064dcd545b69ae05dff4e470afe2152fc27b7970b4c7ffa9a501e1b241a7d)(typescript@5.9.3)
13141
13132
  transitivePeerDependencies:
13142
13133
  - typescript
13143
13134
 
@@ -13231,30 +13222,14 @@ snapshots:
13231
13222
  transitivePeerDependencies:
13232
13223
  - vue
13233
13224
 
13234
- zova-module-a-zod@5.1.34:
13225
+ zova-module-a-zod@5.1.35:
13235
13226
  dependencies:
13236
13227
  '@cabloy/zod-errors-custom': link:packages-utils/zod-errors-custom
13237
13228
  '@cabloy/zod-openapi': link:packages-utils/zod-openapi
13238
13229
  '@cabloy/zod-query': link:packages-utils/zod-query
13239
13230
  zod: '@cabloy/zod@4.3.8'
13240
13231
 
13241
- zova-module-a-zova@5.1.81(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)):
13242
- dependencies:
13243
- '@cabloy/compose': link:packages-utils/compose
13244
- '@cabloy/deps': link:packages-utils/deps
13245
- '@cabloy/json5': link:packages-utils/json5
13246
- '@cabloy/module-info': 2.0.0
13247
- '@cabloy/utils': link:packages-utils/utils
13248
- '@cabloy/vue-router': 4.4.16(vue@3.5.39(typescript@5.9.3))
13249
- '@cabloy/word-utils': 2.1.14
13250
- defu: 6.1.7
13251
- luxon: 3.7.2
13252
- zova-jsx: 1.1.67(typescript@5.9.3)
13253
- transitivePeerDependencies:
13254
- - typescript
13255
- - vue
13256
-
13257
- zova-module-a-zova@5.1.82(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)):
13232
+ zova-module-a-zova@5.1.84(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)):
13258
13233
  dependencies:
13259
13234
  '@cabloy/compose': link:packages-utils/compose
13260
13235
  '@cabloy/deps': link:packages-utils/deps
@@ -13265,48 +13240,14 @@ snapshots:
13265
13240
  '@cabloy/word-utils': 2.1.14
13266
13241
  defu: 6.1.7
13267
13242
  luxon: 3.7.2
13268
- zova-jsx: 1.1.67(typescript@5.9.3)
13243
+ zova-jsx: 1.1.69(typescript@5.9.3)
13269
13244
  transitivePeerDependencies:
13270
13245
  - typescript
13271
13246
  - vue
13272
13247
 
13273
13248
  zova-module-rest-resource@5.1.40: {}
13274
13249
 
13275
- zova-suite-a-zova@5.1.117(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)):
13276
- dependencies:
13277
- zova-module-a-api: 5.1.21
13278
- zova-module-a-app: 5.1.24
13279
- zova-module-a-bean: 5.1.31
13280
- zova-module-a-behavior: 5.1.25
13281
- zova-module-a-behaviors: 5.1.21
13282
- zova-module-a-boundary: 5.1.21
13283
- zova-module-a-command: 5.1.33
13284
- zova-module-a-fetch: 5.1.23
13285
- zova-module-a-form: 5.1.43(vue@3.5.39(typescript@5.9.3))
13286
- zova-module-a-icon: 5.1.26
13287
- zova-module-a-interceptor: 5.1.29
13288
- zova-module-a-logger: 5.1.26
13289
- zova-module-a-meta: 5.1.21
13290
- zova-module-a-model: 5.1.30(vue@3.5.39(typescript@5.9.3))
13291
- zova-module-a-openapi: 5.1.41
13292
- zova-module-a-router: 5.1.29
13293
- zova-module-a-routerstack: 5.1.26
13294
- zova-module-a-routertabs: 5.1.32
13295
- zova-module-a-ssr: 5.1.26
13296
- zova-module-a-ssrhmr: 5.1.22
13297
- zova-module-a-ssrserver: 5.1.22
13298
- zova-module-a-style: 5.1.32
13299
- zova-module-a-table: 5.1.37(vue@3.5.39(typescript@5.9.3))
13300
- zova-module-a-zod: 5.1.34
13301
- zova-module-a-zova: 5.1.81(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3))
13302
- transitivePeerDependencies:
13303
- - '@vue/composition-api'
13304
- - debug
13305
- - supports-color
13306
- - typescript
13307
- - vue
13308
-
13309
- zova-suite-a-zova@5.1.118(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)):
13250
+ zova-suite-a-zova@5.1.120(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)):
13310
13251
  dependencies:
13311
13252
  zova-module-a-api: 5.1.21
13312
13253
  zova-module-a-app: 5.1.24
@@ -13331,19 +13272,8 @@ snapshots:
13331
13272
  zova-module-a-ssrserver: 5.1.22
13332
13273
  zova-module-a-style: 5.1.32
13333
13274
  zova-module-a-table: 5.1.37(vue@3.5.39(typescript@5.9.3))
13334
- zova-module-a-zod: 5.1.34
13335
- zova-module-a-zova: 5.1.82(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3))
13336
- transitivePeerDependencies:
13337
- - '@vue/composition-api'
13338
- - debug
13339
- - supports-color
13340
- - typescript
13341
- - vue
13342
-
13343
- zova@5.1.118(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)):
13344
- dependencies:
13345
- zova-core: 5.1.61(patch_hash=0f4164c4d2bbb16d671beb5c26759dff37769be0709df941bc7b90b94261ac54)(typescript@5.9.3)
13346
- zova-suite-a-zova: 5.1.117(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3))
13275
+ zova-module-a-zod: 5.1.35
13276
+ zova-module-a-zova: 5.1.84(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3))
13347
13277
  transitivePeerDependencies:
13348
13278
  - '@vue/composition-api'
13349
13279
  - debug
@@ -13351,10 +13281,10 @@ snapshots:
13351
13281
  - typescript
13352
13282
  - vue
13353
13283
 
13354
- zova@5.1.119(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)):
13284
+ zova@5.1.121(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3)):
13355
13285
  dependencies:
13356
- zova-core: 5.1.61(patch_hash=0f4164c4d2bbb16d671beb5c26759dff37769be0709df941bc7b90b94261ac54)(typescript@5.9.3)
13357
- zova-suite-a-zova: 5.1.118(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3))
13286
+ zova-core: 5.1.64(patch_hash=19f064dcd545b69ae05dff4e470afe2152fc27b7970b4c7ffa9a501e1b241a7d)(typescript@5.9.3)
13287
+ zova-suite-a-zova: 5.1.120(typescript@5.9.3)(vue@3.5.39(typescript@5.9.3))
13358
13288
  transitivePeerDependencies:
13359
13289
  - '@vue/composition-api'
13360
13290
  - debug
@@ -52,4 +52,4 @@ allowBuilds:
52
52
  vue-demi: true
53
53
 
54
54
  patchedDependencies:
55
- zova-core@5.1.61: patches/zova-core@5.1.61.patch
55
+ zova-core@5.1.64: patches/zova-core@5.1.64.patch
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zova-jsx",
3
- "version": "1.1.68",
3
+ "version": "1.1.69",
4
4
  "gitHead": "2c5c19284bab738e492856189acb6fad74b8a7b7",
5
5
  "description": "Zova JSX",
6
6
  "keywords": [
@@ -50,7 +50,7 @@
50
50
  "@cabloy/word-utils": "^2.1.14",
51
51
  "typestyle": "^2.4.0",
52
52
  "vue": "^3.5.38",
53
- "zova-core": "^5.1.62"
53
+ "zova-core": "^5.1.64"
54
54
  },
55
55
  "devDependencies": {
56
56
  "clean-package": "^2.2.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zova",
3
- "version": "5.1.120",
3
+ "version": "5.1.121",
4
4
  "gitHead": "2c5c19284bab738e492856189acb6fad74b8a7b7",
5
5
  "description": "A vue3 framework with ioc",
6
6
  "keywords": [
@@ -45,8 +45,8 @@
45
45
  "postpack": "clean-package restore"
46
46
  },
47
47
  "dependencies": {
48
- "zova-core": "^5.1.62",
49
- "zova-suite-a-zova": "^5.1.119"
48
+ "zova-core": "^5.1.64",
49
+ "zova-suite-a-zova": "^5.1.120"
50
50
  },
51
51
  "devDependencies": {
52
52
  "clean-package": "^2.2.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zova-core",
3
- "version": "5.1.62",
3
+ "version": "5.1.64",
4
4
  "gitHead": "2c5c19284bab738e492856189acb6fad74b8a7b7",
5
5
  "description": "A vue3 framework with ioc",
6
6
  "keywords": [
@@ -309,7 +309,7 @@ importers:
309
309
  devDependencies:
310
310
  '@cabloy/cli':
311
311
  specifier: ^3.1.27
312
- version: 3.1.27(vue@3.5.38(typescript@5.9.3))
312
+ version: 3.1.27(supports-color@10.2.2)(vue@3.5.38(typescript@5.9.3))
313
313
  '@cabloy/lint':
314
314
  specifier: ^5.1.27
315
315
  version: 5.1.30(@typescript-eslint/eslint-plugin@8.62.0(@typescript-eslint/parser@8.62.0(eslint@10.5.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.5.0(jiti@2.7.0))(typescript@5.9.3))(@typescript-eslint/rule-tester@8.62.0(eslint@10.5.0(jiti@2.7.0))(typescript@5.9.3))(@typescript-eslint/typescript-estree@8.62.0(typescript@5.9.3))(@typescript-eslint/utils@8.62.0(eslint@10.5.0(jiti@2.7.0))(typescript@5.9.3))(eslint@10.5.0(jiti@2.7.0))(oxfmt@0.45.0)(oxlint@1.71.0)(supports-color@10.2.2)(typescript@5.9.3)(vue-eslint-parser@10.4.1(eslint@10.5.0(jiti@2.7.0)))
@@ -384,7 +384,7 @@ importers:
384
384
  dependencies:
385
385
  '@cabloy/cli':
386
386
  specifier: ^3.1.27
387
- version: 3.1.27(vue@3.5.38(typescript@5.9.3))
387
+ version: 3.1.27(supports-color@10.2.2)(vue@3.5.38(typescript@5.9.3))
388
388
  '@cabloy/process-helper':
389
389
  specifier: ^3.1.8
390
390
  version: 3.1.8
@@ -418,7 +418,7 @@ importers:
418
418
  version: 7.29.7(@babel/core@7.29.7)
419
419
  '@cabloy/cli':
420
420
  specifier: ^3.1.27
421
- version: 3.1.27(vue@3.5.38(typescript@5.9.3))
421
+ version: 3.1.27(supports-color@10.2.2)(vue@3.5.38(typescript@5.9.3))
422
422
  '@cabloy/extend':
423
423
  specifier: ^3.2.8
424
424
  version: 3.2.8
@@ -672,7 +672,7 @@ importers:
672
672
  specifier: ^3.5.38
673
673
  version: 3.5.38(typescript@5.9.3)
674
674
  zova-core:
675
- specifier: ^5.1.61
675
+ specifier: ^5.1.62
676
676
  version: link:../../packages-zova/zova-core
677
677
  devDependencies:
678
678
  clean-package:
@@ -813,10 +813,10 @@ importers:
813
813
  packages-zova/zova:
814
814
  dependencies:
815
815
  zova-core:
816
- specifier: ^5.1.61
816
+ specifier: ^5.1.62
817
817
  version: link:../zova-core
818
818
  zova-suite-a-zova:
819
- specifier: ^5.1.118
819
+ specifier: ^5.1.119
820
820
  version: link:../../src/suite-vendor/a-zova
821
821
  devDependencies:
822
822
  clean-package:
@@ -871,8 +871,8 @@ importers:
871
871
  specifier: ^2.1.14
872
872
  version: link:../../packages-utils/word-utils
873
873
  '@cabloy/zod-errors-custom':
874
- specifier: ^2.1.9
875
- version: 2.1.9
874
+ specifier: ^2.1.10
875
+ version: 2.1.10
876
876
  '@cabloy/zod-openapi':
877
877
  specifier: ^1.1.9
878
878
  version: 1.1.9
@@ -998,10 +998,10 @@ importers:
998
998
  specifier: ^5.1.37
999
999
  version: link:modules/a-table
1000
1000
  zova-module-a-zod:
1001
- specifier: ^5.1.34
1001
+ specifier: ^5.1.35
1002
1002
  version: link:modules/a-zod
1003
1003
  zova-module-a-zova:
1004
- specifier: ^5.1.82
1004
+ specifier: ^5.1.83
1005
1005
  version: link:modules/a-zova
1006
1006
 
1007
1007
  src/suite-vendor/a-zova/modules/a-api:
@@ -1291,8 +1291,8 @@ importers:
1291
1291
  src/suite-vendor/a-zova/modules/a-zod:
1292
1292
  dependencies:
1293
1293
  '@cabloy/zod-errors-custom':
1294
- specifier: ^2.1.9
1295
- version: 2.1.9
1294
+ specifier: ^2.1.10
1295
+ version: 2.1.10
1296
1296
  '@cabloy/zod-openapi':
1297
1297
  specifier: ^1.1.9
1298
1298
  version: 1.1.9
@@ -1340,12 +1340,12 @@ importers:
1340
1340
  specifier: ^3.7.2
1341
1341
  version: 3.7.2
1342
1342
  zova-jsx:
1343
- specifier: ^1.1.67
1343
+ specifier: ^1.1.68
1344
1344
  version: link:../../../../../packages-utils/zova-jsx
1345
1345
  devDependencies:
1346
1346
  '@cabloy/cli':
1347
1347
  specifier: ^3.1.27
1348
- version: 3.1.27(vue@3.5.38(typescript@5.9.3))
1348
+ version: 3.1.27(supports-color@10.2.2)(vue@3.5.38(typescript@5.9.3))
1349
1349
  '@types/luxon':
1350
1350
  specifier: ^3.7.1
1351
1351
  version: 3.7.2
@@ -2086,8 +2086,8 @@ packages:
2086
2086
  peerDependencies:
2087
2087
  vue: 3.5.13
2088
2088
 
2089
- '@cabloy/zod-errors-custom@2.1.9':
2090
- resolution: {integrity: sha512-k30D8uyqO8vfCq6ZJBbiUpt5jliqIBFiumJneLCUyAlCChOXWNvwzaAq+c9f1JVoJguEePhAxPiGQpsksKJHpQ==}
2089
+ '@cabloy/zod-errors-custom@2.1.10':
2090
+ resolution: {integrity: sha512-MEyJClI621uGezvBN0RjyvFv63hW6jbalT0TZ4F9FagR3aQRE/qDYyl/o8DlD18My3l2OsoiWnLHsJfJPD99tg==}
2091
2091
 
2092
2092
  '@cabloy/zod-openapi@1.1.9':
2093
2093
  resolution: {integrity: sha512-rAZz0/OeQ2WjNGJlj8RuvI5n106VSUQQ1JrFncRPY6mme98RQThMOVPObx299yBA5QQRCR6nkl0tGMHG3q6uVg==}
@@ -8189,7 +8189,7 @@ snapshots:
8189
8189
 
8190
8190
  '@bufbuild/protobuf@2.12.1': {}
8191
8191
 
8192
- '@cabloy/cli@3.1.27(vue@3.5.38(typescript@5.9.3))':
8192
+ '@cabloy/cli@3.1.27(supports-color@10.2.2)(vue@3.5.38(typescript@5.9.3))':
8193
8193
  dependencies:
8194
8194
  '@babel/parser': 7.29.7
8195
8195
  '@cabloy/module-glob': 5.3.16
@@ -8198,7 +8198,7 @@ snapshots:
8198
8198
  '@cabloy/utils': 2.1.25
8199
8199
  '@cabloy/word-utils': link:packages-utils/word-utils
8200
8200
  '@npmcli/config': 10.11.0
8201
- '@zhennann/common-bin': 4.0.1
8201
+ '@zhennann/common-bin': 4.0.1(supports-color@10.2.2)
8202
8202
  '@zhennann/ejs': 3.0.1
8203
8203
  boxen: 4.2.0
8204
8204
  chalk: 3.0.0
@@ -8451,9 +8451,10 @@ snapshots:
8451
8451
  '@vue/shared': 3.5.13
8452
8452
  vue: 3.5.38(typescript@5.9.3)
8453
8453
 
8454
- '@cabloy/zod-errors-custom@2.1.9':
8454
+ '@cabloy/zod-errors-custom@2.1.10':
8455
8455
  dependencies:
8456
8456
  '@cabloy/word-utils': link:packages-utils/word-utils
8457
+ zod: '@cabloy/zod@4.3.8'
8457
8458
 
8458
8459
  '@cabloy/zod-openapi@1.1.9':
8459
8460
  dependencies:
@@ -10218,7 +10219,7 @@ snapshots:
10218
10219
 
10219
10220
  '@vue/shared@3.5.13': {}
10220
10221
 
10221
- '@zhennann/common-bin@4.0.1':
10222
+ '@zhennann/common-bin@4.0.1(supports-color@10.2.2)':
10222
10223
  dependencies:
10223
10224
  chalk: 4.1.2
10224
10225
  change-case: 4.1.2
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zova-module-a-zova",
3
- "version": "5.1.83",
3
+ "version": "5.1.84",
4
4
  "gitHead": "2c5c19284bab738e492856189acb6fad74b8a7b7",
5
5
  "description": "zova",
6
6
  "keywords": [
@@ -43,7 +43,7 @@
43
43
  "@cabloy/word-utils": "^2.1.14",
44
44
  "defu": "^6.1.7",
45
45
  "luxon": "^3.7.2",
46
- "zova-jsx": "^1.1.68"
46
+ "zova-jsx": "^1.1.69"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@cabloy/cli": "^3.1.27",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zova-suite-a-zova",
3
- "version": "5.1.119",
3
+ "version": "5.1.120",
4
4
  "gitHead": "2c5c19284bab738e492856189acb6fad74b8a7b7",
5
5
  "description": "zova",
6
6
  "license": "MIT",
@@ -32,7 +32,7 @@
32
32
  "zova-module-a-style": "^5.1.32",
33
33
  "zova-module-a-table": "^5.1.37",
34
34
  "zova-module-a-zod": "^5.1.35",
35
- "zova-module-a-zova": "^5.1.83"
35
+ "zova-module-a-zova": "^5.1.84"
36
36
  },
37
37
  "title": "a-zova"
38
38
  }