@icebreakers/monorepo-templates 1.0.13 → 1.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@icebreakers/monorepo": patch
3
+ ---
4
+
5
+ 修复 Version Packages PR 合并后正式发布被错误跳过的问题,确保已更新版本但尚未发布到 npm 的包会继续执行发布。
@@ -34,7 +34,7 @@ jobs:
34
34
  - uses: pnpm/action-setup@v6
35
35
 
36
36
  - name: Setup Node.js environment
37
- uses: actions/setup-node@v6
37
+ uses: actions/setup-node@v7
38
38
  with:
39
39
  node-version: ${{ matrix.node-version }}
40
40
  cache: pnpm
@@ -9,6 +9,23 @@ on:
9
9
  - rc
10
10
  - next
11
11
  workflow_dispatch:
12
+ inputs:
13
+ mode:
14
+ description: Release operation
15
+ required: true
16
+ default: changesets
17
+ type: choice
18
+ options:
19
+ - changesets
20
+ - publish-unpublished
21
+ package:
22
+ description: Package used to verify an unpublished-version recovery
23
+ required: false
24
+ type: string
25
+ version:
26
+ description: Version used to verify an unpublished-version recovery
27
+ required: false
28
+ type: string
12
29
 
13
30
  concurrency: ${{ github.workflow }}-${{ github.ref }}
14
31
  env:
@@ -32,7 +49,7 @@ jobs:
32
49
  - uses: pnpm/action-setup@v6
33
50
 
34
51
  - name: Setup Node.js environment
35
- uses: actions/setup-node@v6
52
+ uses: actions/setup-node@v7
36
53
  with:
37
54
  node-version: 24
38
55
  cache: pnpm
@@ -41,27 +58,66 @@ jobs:
41
58
  run: pnpm i
42
59
 
43
60
  - name: Create Release Pull Request or Publish to npm
61
+ if: github.event_name != 'workflow_dispatch' || inputs.mode == 'changesets'
44
62
  id: changesets
45
- uses: changesets/action@v1
63
+ uses: changesets/action@v2.0.0
46
64
  with:
47
- publish: pnpm exec repo release stable
65
+ github-token: ${{ secrets.GITHUB_TOKEN }}
66
+ publish-script: pnpm exec repo release stable
48
67
  env:
49
68
  # this doesn't work but semantic-release works
50
69
  # see https://github.com/sonofmagic/npm-lib-rollup-template/blob/main/.github/workflows/release.yml#L46
51
70
  # NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
52
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
53
71
  # NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
54
72
  npm_config_registry: https://registry.npmjs.org
55
73
  # https://github.com/changesets/changesets/pull/1659
56
74
  NPM_CONFIG_PROVENANCE: true
57
75
 
76
+ - name: Validate unpublished-version recovery
77
+ if: github.event_name == 'workflow_dispatch' && inputs.mode == 'publish-unpublished'
78
+ shell: bash
79
+ env:
80
+ RECOVERY_PACKAGE: ${{ inputs.package }}
81
+ RECOVERY_VERSION: ${{ inputs.version }}
82
+ run: |
83
+ if [[ -z "$RECOVERY_PACKAGE" || -z "$RECOVERY_VERSION" ]]; then
84
+ echo "package and version are required for publish-unpublished" >&2
85
+ exit 1
86
+ fi
87
+ actual_version="$(pnpm --filter "$RECOVERY_PACKAGE" exec node -p "require('./package.json').version")"
88
+ if [[ "$actual_version" != "$RECOVERY_VERSION" ]]; then
89
+ echo "Expected $RECOVERY_PACKAGE@$RECOVERY_VERSION on main, found $actual_version" >&2
90
+ exit 1
91
+ fi
92
+
93
+ - name: Publish unpublished versions to npm
94
+ if: github.event_name == 'workflow_dispatch' && inputs.mode == 'publish-unpublished'
95
+ run: pnpm exec repo release stable
96
+ env:
97
+ npm_config_registry: https://registry.npmjs.org
98
+ NPM_CONFIG_PROVENANCE: true
99
+
100
+ - name: Verify recovered npm version
101
+ if: github.event_name == 'workflow_dispatch' && inputs.mode == 'publish-unpublished'
102
+ shell: bash
103
+ env:
104
+ RECOVERY_PACKAGE: ${{ inputs.package }}
105
+ RECOVERY_VERSION: ${{ inputs.version }}
106
+ run: |
107
+ published_version="$(npm view "$RECOVERY_PACKAGE@$RECOVERY_VERSION" version)"
108
+ test "$published_version" = "$RECOVERY_VERSION"
109
+
110
+ - name: Push recovered release tags
111
+ if: github.event_name == 'workflow_dispatch' && inputs.mode == 'publish-unpublished'
112
+ run: git push origin --follow-tags
113
+
58
114
  - name: Upload coverage reports to Codecov
59
115
  uses: codecov/codecov-action@v7
60
116
  env:
61
117
  CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
62
118
 
63
119
  prerelease:
64
- if: github.ref_name != 'main'
120
+ if: github.event_name == 'push' && github.ref_name != 'main'
65
121
  name: Prerelease
66
122
  runs-on: ubuntu-latest
67
123
  steps:
@@ -71,7 +127,7 @@ jobs:
71
127
  - uses: pnpm/action-setup@v6
72
128
 
73
129
  - name: Setup Node.js environment
74
- uses: actions/setup-node@v6
130
+ uses: actions/setup-node@v7
75
131
  with:
76
132
  node-version: 24
77
133
  cache: pnpm
@@ -3,7 +3,7 @@
3
3
  "type": "module",
4
4
  "version": "0.0.0",
5
5
  "private": true,
6
- "packageManager": "pnpm@11.10.0",
6
+ "packageManager": "pnpm@11.21.0",
7
7
  "author": "ice breaker <hi@sonofmagic.top>",
8
8
  "repository": {
9
9
  "type": "git",
@@ -25,6 +25,8 @@
25
25
  "tsd": "turbo run tsd",
26
26
  "audit": "pnpm audit --audit-level=moderate",
27
27
  "audit:fix": "pnpm audit --fix",
28
+ "cf-typegen": "pnpm --filter @icebreakers/client --filter @icebreakers/server run cf-typegen",
29
+ "cf-typegen:check": "pnpm --filter @icebreakers/client --filter @icebreakers/server run cf-typegen:check",
28
30
  "typecheck": "turbo run typecheck",
29
31
  "format": "eslint . --fix",
30
32
  "validate": "pnpm run build && pnpm run lint && pnpm run typecheck && pnpm run tsd && pnpm run test",
@@ -50,31 +52,31 @@
50
52
  "--------": "----------------"
51
53
  },
52
54
  "devDependencies": {
53
- "@changesets/cli": "^2.31.0",
54
- "@commitlint/cli": "^21.2.0",
55
+ "@changesets/cli": "^3.0.0",
56
+ "@commitlint/cli": "^21.2.1",
55
57
  "@icebreakers/changelog-github": "^2.0.0",
56
58
  "@icebreakers/monorepo": "workspace:*",
57
- "@types/node": "^26.1.0",
58
- "@types/semver": "^7.7.1",
59
+ "@types/node": "^26.2.0",
60
+ "@types/semver": "^7.8.0",
59
61
  "@vitest/coverage-v8": "~4.1.10",
60
62
  "ci-info": "^4.4.0",
61
63
  "cross-env": "^10.1.0",
62
64
  "defu": "^6.1.7",
63
- "es-toolkit": "^1.49.0",
64
- "eslint": "^10.6.0",
65
+ "es-toolkit": "^1.50.0",
66
+ "eslint": "^10.8.1",
65
67
  "husky": "^9.1.7",
66
- "lint-staged": "^17.0.8",
68
+ "lint-staged": "^17.3.0",
67
69
  "only-allow": "^1.2.2",
68
70
  "pathe": "^2.0.3",
69
71
  "pkg-types": "^2.3.1",
70
72
  "repoctl": "workspace:*",
71
- "stylelint": "^17.14.0",
72
- "tailwindcss": "^4.3.2",
73
+ "stylelint": "^17.14.1",
74
+ "tailwindcss": "^4.3.3",
73
75
  "tsd": "^0.33.0",
74
- "tsdown": "0.22.3",
76
+ "tsdown": "0.22.14",
75
77
  "tslib": "^2.8.1",
76
- "tsx": "^4.23.0",
77
- "turbo": "^2.10.3",
78
+ "tsx": "^4.23.12",
79
+ "turbo": "^2.10.9",
78
80
  "type-fest": "^5.8.0",
79
81
  "typescript": "^6.0.3",
80
82
  "vitest": "~4.1.10",
@@ -23,6 +23,17 @@
23
23
  "pin",
24
24
  "digest"
25
25
  ]
26
+ },
27
+ {
28
+ "matchManagers": [
29
+ "npm"
30
+ ],
31
+ "matchPackageNames": [
32
+ "wrangler",
33
+ "@cloudflare/vite-plugin"
34
+ ],
35
+ "groupName": "Cloudflare Workers tooling",
36
+ "groupSlug": "cloudflare-workers-tooling"
26
37
  }
27
38
  ]
28
39
  }
package/dist/cli.d.mts CHANGED
@@ -1 +1 @@
1
- export { };
1
+ export {}
package/dist/cli.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { t as prepareAssets } from "./prepare-BBSJX9-U.mjs";
1
+ import { t as prepareAssets } from "./prepare-CNCmvco-.mjs";
2
2
  import process from "node:process";
3
3
  //#region src/cli.ts
4
4
  async function main() {
package/dist/index.d.mts CHANGED
@@ -2,7 +2,6 @@ import checkbox from "@inquirer/checkbox";
2
2
  import input from "@inquirer/input";
3
3
  import select from "@inquirer/select";
4
4
  import { Command, program } from "commander";
5
-
6
5
  //#region src/types.d.ts
7
6
  type TemplateCategory = 'app' | 'docs' | 'library' | 'service' | 'tool';
8
7
  interface TemplateChoice {
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { a as toPublishGitignorePath, c as assetsDir, d as templatesDir, f as assetTargets$1, i as isGitignoreFile, l as packageDir, n as createTemplateCopyFilter, o as toWorkspaceGitignorePath, p as getAssetTargets$1, r as shouldSkipTemplatePath, s as templateChoices$1, t as prepareAssets, u as skeletonDir } from "./prepare-BBSJX9-U.mjs";
1
+ import { a as toPublishGitignorePath, c as assetsDir, d as templatesDir, f as assetTargets$1, i as isGitignoreFile, l as packageDir, n as createTemplateCopyFilter, o as toWorkspaceGitignorePath, p as getAssetTargets$1, r as shouldSkipTemplatePath, s as templateChoices$1, t as prepareAssets, u as skeletonDir } from "./prepare-CNCmvco-.mjs";
2
2
  import path from "node:path";
3
3
  import fs, { access, open, rm } from "node:fs/promises";
4
4
  import exec from "nanoexec";
@@ -131,7 +131,7 @@ function isGitignoreFile(name) {
131
131
  }
132
132
  //#endregion
133
133
  //#region src/utils/template-filter.ts
134
- const skipDirs = new Set([
134
+ const skipDirs = /* @__PURE__ */ new Set([
135
135
  "node_modules",
136
136
  "dist",
137
137
  ".turbo",
@@ -141,7 +141,7 @@ const skipDirs = new Set([
141
141
  ".vue-global-types",
142
142
  ".wrangler"
143
143
  ]);
144
- const skipFiles = new Set([
144
+ const skipFiles = /* @__PURE__ */ new Set([
145
145
  ".DS_Store",
146
146
  "CHANGELOG.md",
147
147
  "route-map.d.ts"
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@icebreakers/monorepo-templates",
3
3
  "type": "module",
4
- "version": "1.0.13",
4
+ "version": "1.0.15",
5
5
  "description": "Template assets for icebreaker monorepo scaffolding",
6
6
  "author": "ice breaker <hi@sonofmagic.top>",
7
7
  "license": "MIT",
@@ -29,7 +29,7 @@
29
29
  "consola": "^3.4.2"
30
30
  },
31
31
  "devDependencies": {
32
- "tsdown": "0.22.3"
32
+ "tsdown": "0.22.14"
33
33
  },
34
34
  "publishConfig": {
35
35
  "bin": {
@@ -11,42 +11,42 @@
11
11
  "preview": "vite preview",
12
12
  "deploy": "wrangler deploy",
13
13
  "cf-typegen": "wrangler types",
14
- "postinstall": "pnpm cf-typegen",
15
- "typecheck": "vue-tsc -b"
14
+ "cf-typegen:check": "wrangler types --check",
15
+ "typecheck": "pnpm cf-typegen:check && vue-tsc -b"
16
16
  },
17
17
  "dependencies": {
18
18
  "@faker-js/faker": "^10.5.0",
19
- "@tanstack/vue-query": "^5.101.2",
20
- "@tanstack/vue-query-devtools": "^6.1.36",
21
- "@tanstack/vue-table": "^8.21.3",
22
- "@tanstack/vue-virtual": "^3.13.31",
19
+ "@tanstack/vue-query": "^5.101.4",
20
+ "@tanstack/vue-query-devtools": "^6.1.38",
21
+ "@tanstack/vue-table": "^9.1.2",
22
+ "@tanstack/vue-virtual": "^3.13.35",
23
23
  "@trpc/client": "^11.18.0",
24
24
  "clsx": "^2.1.1",
25
- "pinia": "^3.0.4",
25
+ "pinia": "^4.0.3",
26
26
  "tailwind-merge": "^3.6.0",
27
- "tailwind-variants": "^3.2.2",
28
- "vue": "^3.5.39",
29
- "vue-i18n": "^11.4.6",
30
- "vue-router": "^5.1.0"
27
+ "tailwind-variants": "^3.3.1",
28
+ "vue": "^3.5.41",
29
+ "vue-i18n": "^11.4.8",
30
+ "vue-router": "^5.2.0"
31
31
  },
32
32
  "devDependencies": {
33
- "@cloudflare/vite-plugin": "^1.43.0",
34
- "@hono/node-server": "^2.0.8",
33
+ "@cloudflare/vite-plugin": "^1.52.0",
34
+ "@hono/node-server": "^2.1.0",
35
35
  "@hono/trpc-server": "^0.4.2",
36
- "@tailwindcss/vite": "^4.3.2",
36
+ "@tailwindcss/vite": "^4.3.3",
37
37
  "@trpc/server": "^11.18.0",
38
- "@vitejs/plugin-vue": "^6.0.7",
38
+ "@vitejs/plugin-vue": "^6.0.8",
39
39
  "@vitejs/plugin-vue-jsx": "^5.1.6",
40
40
  "@vue/tsconfig": "^0.9.1",
41
41
  "consola": "^3.4.2",
42
- "hono": "^4.12.27",
43
- "tailwindcss": "^4.3.2",
42
+ "hono": "^4.13.1",
43
+ "tailwindcss": "^4.3.3",
44
44
  "typescript": "~6.0.3",
45
- "vite": "^8.1.3",
46
- "vite-plugin-vue-devtools": "^8.1.5",
45
+ "vite": "^8.2.1",
46
+ "vite-plugin-vue-devtools": "^8.2.1",
47
47
  "vite-tsconfig-paths": "^6.1.1",
48
- "vue-tsc": "3.3.6",
49
- "wrangler": "^4.107.0",
48
+ "vue-tsc": "3.3.9",
49
+ "wrangler": "^4.122.0",
50
50
  "zod": "^4.4.3"
51
51
  }
52
52
  }
@@ -20,7 +20,6 @@
20
20
  "noUncheckedSideEffectImports": true
21
21
  },
22
22
  "include": [
23
- "./worker-configuration.d.ts",
24
23
  "src/**/*.ts",
25
24
  "src/**/*.tsx",
26
25
  "src/**/*.vue"