@ykdz/template 0.0.3 → 0.0.4

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.
Files changed (84) hide show
  1. package/README.md +1 -1
  2. package/dist/src/cli.d.ts +0 -1
  3. package/dist/src/cli.js +14 -2
  4. package/dist/src/declarations.d.ts +2 -3
  5. package/dist/src/declarations.js +46 -36
  6. package/dist/src/dependency-catalog.d.ts +9 -1
  7. package/dist/src/dependency-catalog.js +69 -0
  8. package/dist/src/devcontainer.d.ts +49 -9
  9. package/dist/src/devcontainer.js +192 -14
  10. package/dist/src/editor-customization.d.ts +0 -1
  11. package/dist/src/editor-customization.js +54 -47
  12. package/dist/src/generation-context.d.ts +0 -1
  13. package/dist/src/generation-context.js +4 -1
  14. package/dist/src/module-graph.d.ts +8 -5
  15. package/dist/src/module-graph.js +10 -0
  16. package/dist/src/next-step-instructions.d.ts +0 -1
  17. package/dist/src/next-step-instructions.js +35 -0
  18. package/dist/src/package-addition.d.ts +1 -1
  19. package/dist/src/package-addition.js +170 -15
  20. package/dist/src/preset-projection.d.ts +1 -1
  21. package/dist/src/project-github.d.ts +3 -2
  22. package/dist/src/project-github.js +24 -6
  23. package/dist/src/renderer.d.ts +16 -2
  24. package/dist/src/renderer.js +95 -12
  25. package/dist/src/runtime-paths.d.ts +0 -1
  26. package/dist/src/template-boundary-check.d.ts +34 -0
  27. package/dist/src/template-boundary-check.js +448 -0
  28. package/dist/src/toolchain-resolution.d.ts +0 -1
  29. package/dist/templates/hono-api/projection.d.ts +2 -3
  30. package/dist/templates/hono-api/projection.js +230 -69
  31. package/dist/templates/projection-plans.d.ts +0 -1
  32. package/dist/templates/registry.d.ts +0 -1
  33. package/dist/templates/registry.js +2 -2
  34. package/dist/templates/rust-bin/projection.d.ts +2 -3
  35. package/dist/templates/rust-bin/projection.js +161 -53
  36. package/dist/templates/ts-lib/projection.d.ts +2 -3
  37. package/dist/templates/ts-lib/projection.js +215 -64
  38. package/dist/templates/vue-app/projection.d.ts +2 -3
  39. package/dist/templates/vue-app/projection.js +246 -83
  40. package/dist/templates/vue-hono-app/projection.d.ts +0 -1
  41. package/dist/templates/vue-hono-app/projection.js +191 -87
  42. package/package.json +10 -5
  43. package/pnpm-workspace.yaml +1 -0
  44. package/templates/hono-api/.github/dependabot.yml +13 -0
  45. package/templates/rust-bin/.github/dependabot.yml +18 -1
  46. package/templates/rust-bin/rust-toolchain.toml +3 -0
  47. package/templates/rust-bin/rustfmt.toml +2 -0
  48. package/templates/shared/devcontainer/browser-test.Dockerfile +2 -0
  49. package/templates/shared/devcontainer/node-pnpm.Dockerfile +6 -0
  50. package/templates/shared/devcontainer/rust.Dockerfile +16 -0
  51. package/templates/shared/editor-customization/capabilities.json +56 -0
  52. package/templates/ts-lib/.github/dependabot.yml +13 -0
  53. package/templates/ts-lib/src/index.ts +5 -1
  54. package/templates/vue-app/.github/dependabot.yml +13 -0
  55. package/templates/vue-app/.github/workflows/check.yml +1 -1
  56. package/templates/vue-hono-app/.github/dependabot.yml +13 -0
  57. package/dist/src/cli.d.ts.map +0 -1
  58. package/dist/src/declarations.d.ts.map +0 -1
  59. package/dist/src/dependency-catalog.d.ts.map +0 -1
  60. package/dist/src/devcontainer.d.ts.map +0 -1
  61. package/dist/src/editor-customization.d.ts.map +0 -1
  62. package/dist/src/generation-context.d.ts.map +0 -1
  63. package/dist/src/module-graph.d.ts.map +0 -1
  64. package/dist/src/next-step-instructions.d.ts.map +0 -1
  65. package/dist/src/package-addition.d.ts.map +0 -1
  66. package/dist/src/preset-projection.d.ts.map +0 -1
  67. package/dist/src/project-github.d.ts.map +0 -1
  68. package/dist/src/renderer.d.ts.map +0 -1
  69. package/dist/src/runtime-paths.d.ts.map +0 -1
  70. package/dist/src/toolchain-resolution.d.ts.map +0 -1
  71. package/dist/templates/hono-api/projection.d.ts.map +0 -1
  72. package/dist/templates/projection-plans.d.ts.map +0 -1
  73. package/dist/templates/registry.d.ts.map +0 -1
  74. package/dist/templates/rust-bin/projection.d.ts.map +0 -1
  75. package/dist/templates/ts-lib/projection.d.ts.map +0 -1
  76. package/dist/templates/vue-app/projection.d.ts.map +0 -1
  77. package/dist/templates/vue-hono-app/projection.d.ts.map +0 -1
  78. package/templates/hono-api/projection.ts +0 -453
  79. package/templates/projection-plans.ts +0 -135
  80. package/templates/registry.ts +0 -59
  81. package/templates/rust-bin/projection.ts +0 -346
  82. package/templates/ts-lib/projection.ts +0 -454
  83. package/templates/vue-app/projection.ts +0 -687
  84. package/templates/vue-hono-app/projection.ts +0 -669
@@ -1,10 +1,23 @@
1
1
  version: 2
2
+
2
3
  updates:
3
4
  - package-ecosystem: npm
4
5
  directory: /
5
6
  schedule:
6
7
  interval: weekly
8
+ ignore:
9
+ - dependency-name: "@types/node"
10
+ update-types:
11
+ - version-update:semver-major
7
12
  - package-ecosystem: github-actions
8
13
  directory: /
9
14
  schedule:
10
15
  interval: weekly
16
+ - package-ecosystem: docker
17
+ directory: /.devcontainer
18
+ schedule:
19
+ interval: weekly
20
+ ignore:
21
+ - dependency-name: mcr.microsoft.com/devcontainers/typescript-node
22
+ update-types:
23
+ - version-update:semver-major
@@ -16,5 +16,5 @@ jobs:
16
16
  node-version-file: package.json
17
17
  - run: corepack enable
18
18
  - run: pnpm install
19
- - run: pnpm exec playwright install --with-deps chromium
19
+ - run: pnpm --filter ./apps/web exec playwright install --with-deps chromium
20
20
  - run: pnpm run check
@@ -1,10 +1,23 @@
1
1
  version: 2
2
+
2
3
  updates:
3
4
  - package-ecosystem: npm
4
5
  directory: /
5
6
  schedule:
6
7
  interval: weekly
8
+ ignore:
9
+ - dependency-name: "@types/node"
10
+ update-types:
11
+ - version-update:semver-major
7
12
  - package-ecosystem: github-actions
8
13
  directory: /
9
14
  schedule:
10
15
  interval: weekly
16
+ - package-ecosystem: docker
17
+ directory: /.devcontainer
18
+ schedule:
19
+ interval: weekly
20
+ ignore:
21
+ - dependency-name: mcr.microsoft.com/devcontainers/typescript-node
22
+ update-types:
23
+ - version-update:semver-major
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"declarations.d.ts","sourceRoot":"","sources":["../../src/declarations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAG7B,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,WAAW,GAAG,QAAQ,CAAC;IACnC,wBAAwB,EAAE,SAAS,cAAc,EAAE,CAAC;IACpD,qBAAqB,EAAE,SAAS,WAAW,EAAE,CAAC;IAC9C,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG,eAAe,CAAC;AAE7D,MAAM,MAAM,WAAW,GACnB,cAAc,GACd,iBAAiB,GACjB,mBAAmB,GACnB,YAAY,GACZ,aAAa,GACb,cAAc,GACd,gBAAgB,GAChB,YAAY,GACZ,gBAAgB,GAChB,YAAY,GACZ,uBAAuB,CAAC;AAE5B,MAAM,MAAM,UAAU,GAAG;IACvB,aAAa,EAAE,CAAC,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,wBAAwB,EAAE,cAAc,EAAE,CAAC;IAC3C,qBAAqB,EAAE,WAAW,EAAE,CAAC;IACrC,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,CAAC,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,SAAS,aAAa,EAA0B,CAAC;AAgB9E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCvB,CAAC;AAEX,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BtB,CAAC;AAOX,eAAO,MAAM,gBAAgB;;;;;;;;aAQ3B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;aAcjC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAC1B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GACtB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,eAAe,EAAE,CAAA;CAAE,CAAC;AAgD7C,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,CAAC,UAAU,CAAC,CA2B/E;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAEzE;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,GACb,gBAAgB,CAAC,gBAAgB,CAAC,CAqFpC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dependency-catalog.d.ts","sourceRoot":"","sources":["../../src/dependency-catalog.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE/D,MAAM,MAAM,iCAAiC,GAAG;IAC9C,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChD,CAAC;AA2CF,wBAAgB,6BAA6B,IAAI,yBAAyB,CAOzE;AAED,wBAAgB,sCAAsC,CACpD,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,OAAO,GAAE,yBAA2D,GACnE,yBAAyB,CAe3B;AAMD,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,iCAAiC,GACzC,MAAM,CA4BR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"devcontainer.d.ts","sourceRoot":"","sources":["../../src/devcontainer.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,8BAA8B,GAAG;IAC3C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,wBAAgB,gCAAgC,CAC9C,iBAAiB,EAAE,MAAM,GACxB,MAAM,CAER;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,8BAA8B,GACtC,MAAM,CAAC,uCAAuC,EAAE,uBAAuB,CAAC,CAO1E;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE;IAC5C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAY1B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor-customization.d.ts","sourceRoot":"","sources":["../../src/editor-customization.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,6BAA6B,GACrC,iBAAiB,GACjB,cAAc,GACd,UAAU,GACV,KAAK,GACL,QAAQ,CAAC;AAEb,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,CAAC,cAAc,CAAC,EACpB,QAAQ,GACR;QACE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;CACP,CAAC;AA0GF,wBAAgB,kCAAkC,CAChD,YAAY,EAAE,SAAS,6BAA6B,EAAE,EACtD,OAAO,CAAC,EAAE,0BAA0B,GACnC,mBAAmB,CAwBrB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"generation-context.d.ts","sourceRoot":"","sources":["../../src/generation-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAE3E,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,wBAAwB,CAAC;IACnD,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC;CAC/C,CAAC;AAEF,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gCAAgC,GACxC,iBAAiB,CAUnB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"module-graph.d.ts","sourceRoot":"","sources":["../../src/module-graph.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,GAAG,GAAG,UAAU,GAAG,UAAU,CAAC;CAC9C,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,oBAAoB,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAC1B,sBAAsB,GACtB,UAAU,GACV,kBAAkB,GAClB,OAAO,GACP,WAAW,GACX,UAAU,GACV,aAAa,GACb,eAAe,GACf,cAAc,GACd,YAAY,CAAC;AAEjB,MAAM,MAAM,gBAAgB,GACxB,kBAAkB,GAClB,cAAc,GACd,WAAW,GACX,eAAe,CAAC;AAEpB,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,IAAI,EAAE,2BAA2B,CAAC;IAC3C,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,UAAU,EAAE,cAAc,EAAE,CAAC;IACtC,QAAQ,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,CAAC,UAAU,EAAE,YAAY,EAAE,CAAC;CACrC,CAAC;AAwCF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAE9D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAEtD;AAED,wBAAgB,qCAAqC,CACnD,IAAI,EAAE,oBAAoB,GACzB,MAAM,CAMR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"next-step-instructions.d.ts","sourceRoot":"","sources":["../../src/next-step-instructions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;CAC/C,CAAC;AAqFF,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,+BAA+B,GACvC,uBAAuB,CAyBzB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-addition.d.ts","sourceRoot":"","sources":["../../src/package-addition.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AA0PF,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+E1E"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"preset-projection.d.ts","sourceRoot":"","sources":["../../src/preset-projection.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"project-github.d.ts","sourceRoot":"","sources":["../../src/project-github.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9E,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,OAAO,GAAG,gBAAgB,CAAC;AAErE,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,CAAC,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAC3C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;CAC7B,CAAC;AAEF,KAAK,2BAA2B,GAAG;IACjC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC;IACnC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACpE,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC;CACpC,CAAC;AAaF,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,2BAA2B,GACnC,MAAM,CAmDR;AAED,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,2BAA2B,GAClC,MAAM,CAYR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/renderer.ts"],"names":[],"mappings":"AAgBA,KAAK,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,OAAO,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,gBAAgB,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,YAAY,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,eAAe,GACvB,iBAAiB,GACjB,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAClB,sBAAsB,GACtB,uBAAuB,CAAC;AAE5B,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,UAAU,EAAE,eAAe,EAAE,CAAC;CAC/B,CAAC;AAmfF,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkChF;AAiCD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBnF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime-paths.d.ts","sourceRoot":"","sources":["../../src/runtime-paths.ts"],"names":[],"mappings":"AAGA,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,GAAG,QAAQ,EAAE,MAAM,EAAE,GACpB,MAAM,CASR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"toolchain-resolution.d.ts","sourceRoot":"","sources":["../../src/toolchain-resolution.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,yBAAyB,GAAG,QAAQ,GAAG,kBAAkB,CAAC;AAEtE,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,QAAQ,MAAM,EAAE,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,yBAAyB,GAAG,MAAM,CAAC;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACvD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,mBAAmB,uCAAuC,CAAC;AACxE,eAAO,MAAM,eAAe,oCAAoC,CAAC;AAEjE,KAAK,wCAAwC,GAAG;IAC9C,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACxD,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG;IACpD,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;CAChC,CAAC;AAmBF,wBAAsB,wBAAwB,CAC5C,OAAO,GAAE,+BAAoC,GAC5C,OAAO,CAAC,yBAAyB,CAAC,CAiCpC;AAED,wBAAsB,sCAAsC,CAC1D,OAAO,GAAE,wCAA6C,GACrD,OAAO,CAAC,uCAAuC,CAAC,CAwBlD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../../templates/hono-api/projection.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAUnC,OAAO,KAAK,EAGV,gBAAgB,EAEjB,MAAM,gCAAgC,CAAC;AAexC,eAAO,MAAM,qBAAqB,EAAE,aAiBnC,CAAC;AAOF,wBAAgB,gBAAgB,IAAI,gBAAgB,CAQnD;AAED,wBAAgB,4BAA4B,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAarE;AAoUD,eAAO,MAAM,uBAAuB,EAAE,gBA4CrC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"projection-plans.d.ts","sourceRoot":"","sources":["../../templates/projection-plans.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAEd,SAAS,EAET,YAAY,EACZ,OAAO,EACR,MAAM,wBAAwB,CAAC;AAiBhC,MAAM,MAAM,mBAAmB,GAC3B,UAAU,GACV,SAAS,GACT,eAAe,GACf,cAAc,GACd,cAAc,CAAC;AAEnB,MAAM,MAAM,iBAAiB,GACzB,UAAU,GACV,SAAS,GACT,eAAe,GACf,cAAc,GACd,cAAc,CAAC;AA8BnB,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,mBAAmB,GAC1B,cAAc,EAAE,CAalB;AAED,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,iBAAiB,GACxB,YAAY,EAAE,CAYhB;AA4BD,wBAAgB,cAAc,CAAC,MAAM,EAAE,mBAAmB,GAAG,SAAS,CAKrE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAEhE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../templates/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EACV,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AA4BrC,eAAO,MAAM,wBAAwB,EAAE,SAAS,gBAAgB,EAM/D,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,SAAS,aAAa,EAGzD,CAAC;AAEF,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,GACX,gBAAgB,GAAG,SAAS,CAI9B;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,iBAAiB,GACzB,oBAAoB,GAAG,SAAS,CAElC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../../templates/rust-bin/projection.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,KAAK,SAAS,EAEd,KAAK,OAAO,EAGb,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACV,gBAAgB,EAEjB,MAAM,gCAAgC,CAAC;AAcxC,eAAO,MAAM,qBAAqB,EAAE,aAiBnC,CAAC;AAuBF,wBAAgB,iBAAiB,IAAI,SAAS,CAS7C;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAI1C;AAED,wBAAgB,gBAAgB,IAAI,gBAAgB,CAQnD;AAED,wBAAgB,4BAA4B,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAKrE;AAsMD,eAAO,MAAM,uBAAuB,EAAE,gBAwCrC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../../templates/ts-lib/projection.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAYnC,OAAO,KAAK,EAGV,gBAAgB,EAEjB,MAAM,gCAAgC,CAAC;AAcxC,eAAO,MAAM,mBAAmB,EAAE,aAiBjC,CAAC;AAgCF,wBAAgB,cAAc,IAAI,gBAAgB,CAQjD;AAED,wBAAgB,0BAA0B,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAcnE;AA0SD,eAAO,MAAM,qBAAqB,EAAE,gBA4CnC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../../templates/vue-app/projection.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAUnC,OAAO,KAAK,EAGV,gBAAgB,EAEjB,MAAM,gCAAgC,CAAC;AAexC,eAAO,MAAM,oBAAoB,EAAE,aAkBlC,CAAC;AAOF,wBAAgB,eAAe,IAAI,gBAAgB,CAQlD;AAED,wBAAgB,2BAA2B,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAepE;AAgjBD,eAAO,MAAM,sBAAsB,EAAE,gBAsCpC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../../templates/vue-hono-app/projection.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAUnC,OAAO,KAAK,EACV,sBAAsB,EACtB,gBAAgB,EAEjB,MAAM,gCAAgC,CAAC;AAexC,eAAO,MAAM,wBAAwB,EAAE,aAiBtC,CAAC;AAmBF,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,sBAAsB,GAC9B,gBAAgB,CAclB;AAED,wBAAgB,gCAAgC,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMzE;AAED,wBAAgB,+BAA+B,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAcxE;AAED,wBAAgB,+BAA+B,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAexE;AA0fD,eAAO,MAAM,0BAA0B,EAAE,gBAiCxC,CAAC"}
@@ -1,453 +0,0 @@
1
- import { existsSync } from "node:fs";
2
- import path from "node:path";
3
- import { fileURLToPath } from "node:url";
4
-
5
- import type {
6
- BuiltInPreset,
7
- ProjectBlueprint,
8
- } from "../../src/declarations.js";
9
- import { renderGeneratedPnpmWorkspaceYaml } from "../../src/dependency-catalog.js";
10
- import { nodePnpmDevcontainer } from "../../src/devcontainer.js";
11
- import { editorCustomizationForCapabilities } from "../../src/editor-customization.js";
12
- import type { GenerationContext } from "../../src/generation-context.js";
13
- import {
14
- type CheckPlan,
15
- renderFixCommand,
16
- renderRootCheckCommand,
17
- } from "../../src/module-graph.js";
18
- import type {
19
- PresetPackageAdditionOptions,
20
- PresetPackageAdditionPlan,
21
- PresetProjection,
22
- PresetProjectionPlan,
23
- } from "../../src/preset-projection.js";
24
- import {
25
- projectCheckWorkflow,
26
- projectDependabotConfig,
27
- type DependencyMaintenancePolicy,
28
- } from "../../src/project-github.js";
29
- import { renderNewProject, type RenderOperation } from "../../src/renderer.js";
30
- import { planNodeChecks, planNodeFixes } from "../projection-plans.js";
31
-
32
- const generatedBy = {
33
- packageName: "@ykdz/template",
34
- version: "0.0.0",
35
- command: "template init --preset hono-api",
36
- };
37
-
38
- export const honoApiPresetMetadata: BuiltInPreset = {
39
- name: "hono-api",
40
- title: "Hono API",
41
- description: "Single-package Hono Node API with strict TypeScript tooling.",
42
- generation: "supported",
43
- supportedPackageManagers: ["pnpm"],
44
- supportedProjectKinds: ["single-package"],
45
- features: [
46
- "pnpm-catalog",
47
- "oxc-format-lint",
48
- "strict-typescript",
49
- "root-check",
50
- "fix-command",
51
- "devcontainer",
52
- "github-actions",
53
- "dependabot",
54
- ],
55
- };
56
-
57
- const dependencyMaintenancePolicy: DependencyMaintenancePolicy = {
58
- ecosystems: ["npm", "github-actions"],
59
- interval: "weekly",
60
- };
61
-
62
- export function honoApiBlueprint(): ProjectBlueprint {
63
- return {
64
- schemaVersion: 1,
65
- preset: "hono-api",
66
- packageManager: "pnpm",
67
- projectKind: "single-package",
68
- features: [...honoApiPresetMetadata.features],
69
- };
70
- }
71
-
72
- export function projectHonoApiPackageScripts(): Record<string, string> {
73
- return {
74
- build: "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
75
- check: renderRootCheckCommand(planNodeChecks("hono-api")),
76
- fix: renderFixCommand(planNodeFixes("hono-api")),
77
- "format:check": "oxfmt --check .",
78
- "format:write": "oxfmt --write .",
79
- lint: "oxlint . --deny-warnings",
80
- "lint:fix": "oxlint . --fix --deny-warnings",
81
- start: "node dist/server.js",
82
- test: "vitest run",
83
- typecheck: "tsc -p tsconfig.json --noEmit",
84
- };
85
- }
86
-
87
- function packageJson(
88
- context: GenerationContext,
89
- packageScripts: Record<string, string>,
90
- ): Record<string, unknown> {
91
- return {
92
- name: context.projectName.value,
93
- version: "0.0.0",
94
- private: true,
95
- type: "module",
96
- scripts: packageScripts,
97
- dependencies: {
98
- "@hono/node-server": "catalog:",
99
- hono: "catalog:",
100
- },
101
- devDependencies: {
102
- "@types/node": "catalog:",
103
- oxfmt: "catalog:",
104
- oxlint: "catalog:",
105
- "tsc-alias": "catalog:",
106
- typescript: "catalog:",
107
- vitest: "catalog:",
108
- },
109
- engines: {
110
- node: context.toolchain.nodeLtsMajor.value,
111
- },
112
- packageManager: context.toolchain.packageManagerPin.value,
113
- };
114
- }
115
-
116
- function generationRecord(context: GenerationContext): Record<string, unknown> {
117
- return {
118
- ...generatedBy,
119
- toolchain: {
120
- nodeLtsMajor: context.toolchain.nodeLtsMajor.value,
121
- packageManagerPin: context.toolchain.packageManagerPin.value,
122
- source: context.toolchain.source,
123
- },
124
- };
125
- }
126
-
127
- function operationsForHonoApi(
128
- context: GenerationContext,
129
- packageScripts: Record<string, string>,
130
- checkPlan: CheckPlan,
131
- ): RenderOperation[] {
132
- const editorCustomization = editorCustomizationForCapabilities([
133
- "oxc-format-lint",
134
- "vitest",
135
- ]);
136
-
137
- return [
138
- {
139
- kind: "writeJson",
140
- to: "package.json",
141
- value: packageJson(context, packageScripts),
142
- },
143
- {
144
- kind: "writeText",
145
- to: "pnpm-workspace.yaml",
146
- text: renderGeneratedPnpmWorkspaceYaml({
147
- dependencies: [
148
- "@hono/node-server",
149
- "@types/node",
150
- "hono",
151
- "oxfmt",
152
- "oxlint",
153
- "tsc-alias",
154
- "typescript",
155
- "vitest",
156
- ],
157
- }),
158
- },
159
- {
160
- kind: "writeJson",
161
- to: "tsconfig.json",
162
- value: {
163
- compilerOptions: {
164
- module: "NodeNext",
165
- moduleResolution: "NodeNext",
166
- noEmitOnError: true,
167
- paths: {
168
- "@/*": ["./src/*"],
169
- },
170
- skipLibCheck: false,
171
- strict: true,
172
- target: "ES2022",
173
- types: ["node", "vitest/globals"],
174
- },
175
- include: ["src/**/*.ts", "test/**/*.ts", "vitest.config.ts"],
176
- },
177
- },
178
- {
179
- kind: "writeJson",
180
- to: "tsconfig.build.json",
181
- value: {
182
- extends: "./tsconfig.json",
183
- compilerOptions: {
184
- outDir: "dist",
185
- rootDir: "src",
186
- types: ["node"],
187
- },
188
- include: ["src/**/*.ts"],
189
- },
190
- },
191
- {
192
- kind: "copyFile",
193
- sourceRoot: "sharedOxc",
194
- from: "node/oxlint.config.ts",
195
- to: "oxlint.config.ts",
196
- },
197
- {
198
- kind: "copyFile",
199
- sourceRoot: "sharedOxc",
200
- from: "oxfmt.config.ts",
201
- to: "oxfmt.config.ts",
202
- },
203
- {
204
- kind: "writeText",
205
- to: ".gitignore",
206
- text: ["node_modules", "dist", ".env", ""].join("\n"),
207
- },
208
- { kind: "copyFile", from: "src/app.ts", to: "src/app.ts" },
209
- { kind: "copyFile", from: "src/server.ts", to: "src/server.ts" },
210
- { kind: "copyFile", from: "test/app.test.ts", to: "test/app.test.ts" },
211
- { kind: "copyFile", from: "vitest.config.ts", to: "vitest.config.ts" },
212
- {
213
- kind: "writeJson",
214
- to: ".project-kit/blueprint.json",
215
- value: honoApiBlueprint(),
216
- },
217
- {
218
- kind: "writeJson",
219
- to: ".project-kit/generated-by.json",
220
- value: generationRecord(context),
221
- },
222
- {
223
- kind: "writeJson",
224
- to: ".devcontainer/devcontainer.json",
225
- value: nodePnpmDevcontainer({
226
- name: `${context.projectName.value} API development`,
227
- nodeVersion: context.toolchain.nodeLtsMajor.value,
228
- packageManagerPin: context.toolchain.packageManagerPin.value,
229
- extensions: editorCustomization.extensions,
230
- settings: editorCustomization.settings,
231
- }),
232
- },
233
- {
234
- kind: "writeJson",
235
- to: ".vscode/extensions.json",
236
- value: {
237
- recommendations: editorCustomization.extensions,
238
- },
239
- multilineArrays: ["recommendations"],
240
- },
241
- {
242
- kind: "writeJson",
243
- to: ".vscode/settings.json",
244
- value: editorCustomization.settings,
245
- },
246
- {
247
- kind: "writeText",
248
- to: ".github/workflows/check.yml",
249
- text: projectCheckWorkflow({ checkPlan }),
250
- },
251
- {
252
- kind: "writeText",
253
- to: ".github/dependabot.yml",
254
- text: projectDependabotConfig(dependencyMaintenancePolicy),
255
- },
256
- ];
257
- }
258
-
259
- function packageAdditionOperations(
260
- packagePath: string,
261
- packageName: string,
262
- nodeVersion: string,
263
- ): RenderOperation[] {
264
- return [
265
- {
266
- kind: "writeJson",
267
- to: `${packagePath}/package.json`,
268
- value: {
269
- name: packageName,
270
- version: "0.0.0",
271
- private: true,
272
- type: "module",
273
- scripts: projectHonoApiPackageScripts(),
274
- dependencies: {
275
- "@hono/node-server": "catalog:",
276
- hono: "catalog:",
277
- },
278
- devDependencies: {
279
- "@types/node": "catalog:",
280
- oxfmt: "catalog:",
281
- oxlint: "catalog:",
282
- "tsc-alias": "catalog:",
283
- typescript: "catalog:",
284
- vitest: "catalog:",
285
- },
286
- engines: {
287
- node: nodeVersion,
288
- },
289
- },
290
- },
291
- {
292
- kind: "writeJson",
293
- to: `${packagePath}/tsconfig.json`,
294
- value: {
295
- compilerOptions: {
296
- composite: true,
297
- module: "NodeNext",
298
- moduleResolution: "NodeNext",
299
- noEmitOnError: true,
300
- paths: {
301
- "@/*": ["./src/*"],
302
- },
303
- skipLibCheck: false,
304
- strict: true,
305
- target: "ES2022",
306
- types: ["node", "vitest/globals"],
307
- },
308
- include: ["src/**/*.ts", "test/**/*.ts", "vitest.config.ts"],
309
- },
310
- },
311
- {
312
- kind: "writeJson",
313
- to: `${packagePath}/tsconfig.build.json`,
314
- value: {
315
- extends: "./tsconfig.json",
316
- compilerOptions: {
317
- outDir: "dist",
318
- rootDir: "src",
319
- types: ["node"],
320
- },
321
- include: ["src/**/*.ts"],
322
- },
323
- },
324
- {
325
- kind: "copyFile",
326
- sourceRoot: "sharedOxc",
327
- from: "node/oxlint.config.ts",
328
- to: `${packagePath}/oxlint.config.ts`,
329
- },
330
- {
331
- kind: "copyFile",
332
- sourceRoot: "sharedOxc",
333
- from: "oxfmt.config.ts",
334
- to: `${packagePath}/oxfmt.config.ts`,
335
- },
336
- { kind: "copyFile", from: "src/app.ts", to: `${packagePath}/src/app.ts` },
337
- {
338
- kind: "copyFile",
339
- from: "src/server.ts",
340
- to: `${packagePath}/src/server.ts`,
341
- },
342
- {
343
- kind: "copyFile",
344
- from: "test/app.test.ts",
345
- to: `${packagePath}/test/app.test.ts`,
346
- },
347
- {
348
- kind: "copyFile",
349
- from: "vitest.config.ts",
350
- to: `${packagePath}/vitest.config.ts`,
351
- },
352
- ];
353
- }
354
-
355
- function packageAdditionPlan(
356
- packageLeafName: string,
357
- packageName: string,
358
- nodeVersion: string,
359
- ): PresetPackageAdditionPlan {
360
- const packagePath = `apps/${packageLeafName}`;
361
-
362
- return {
363
- packagePath,
364
- workspacePackageGlob: "apps/*",
365
- rootTsconfigReferences: [`./${packagePath}/tsconfig.json`],
366
- sourceRoot: templateSourceRoot(),
367
- sourceRoots: { sharedOxc: sharedOxcSourceRoot() },
368
- operations: packageAdditionOperations(
369
- packagePath,
370
- packageName,
371
- nodeVersion,
372
- ),
373
- };
374
- }
375
-
376
- function templateSourceRoot(): string {
377
- const projectionDir = path.dirname(fileURLToPath(import.meta.url));
378
- const publishedTemplateRoot = path.join(
379
- projectionDir,
380
- "..",
381
- "..",
382
- "..",
383
- "templates",
384
- "hono-api",
385
- );
386
-
387
- return existsSync(path.join(publishedTemplateRoot, "src", "app.ts"))
388
- ? publishedTemplateRoot
389
- : projectionDir;
390
- }
391
-
392
- function sharedOxcSourceRoot(): string {
393
- const projectionDir = path.dirname(fileURLToPath(import.meta.url));
394
- const publishedSharedRoot = path.join(
395
- projectionDir,
396
- "..",
397
- "..",
398
- "..",
399
- "templates",
400
- "shared",
401
- "oxc",
402
- );
403
-
404
- return existsSync(path.join(publishedSharedRoot, "oxfmt.config.ts"))
405
- ? publishedSharedRoot
406
- : path.join(projectionDir, "..", "shared", "oxc");
407
- }
408
-
409
- export const honoApiPresetProjection: PresetProjection = {
410
- metadata: honoApiPresetMetadata,
411
- capabilities: {
412
- packageAddition: {
413
- planPackageAddition({
414
- packageLeafName,
415
- packageName,
416
- nodeVersion,
417
- }: PresetPackageAdditionOptions) {
418
- return packageAdditionPlan(packageLeafName, packageName, nodeVersion);
419
- },
420
- },
421
- },
422
- blueprint: honoApiBlueprint,
423
- project(context: GenerationContext): PresetProjectionPlan {
424
- const checkPlan = planNodeChecks("hono-api");
425
- const fixPlan = planNodeFixes("hono-api");
426
- const packageScripts = projectHonoApiPackageScripts();
427
-
428
- return {
429
- sourceRoot: templateSourceRoot(),
430
- sourceRoots: { sharedOxc: sharedOxcSourceRoot() },
431
- operations: operationsForHonoApi(context, packageScripts, checkPlan),
432
- checkPlan,
433
- fixPlan,
434
- dependencyMaintenancePolicy,
435
- packageScripts,
436
- capabilities: {
437
- rootCheck: true,
438
- fixCommand: true,
439
- githubActions: true,
440
- dependabot: true,
441
- devcontainer: true,
442
- },
443
- };
444
- },
445
- async render({ targetDir, plan }): Promise<void> {
446
- await renderNewProject({
447
- sourceRoot: plan.sourceRoot,
448
- sourceRoots: plan.sourceRoots,
449
- targetRoot: targetDir,
450
- operations: [...plan.operations],
451
- });
452
- },
453
- };