toiljs 0.0.14 → 0.0.16

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 (225) hide show
  1. package/.babelrc +13 -13
  2. package/.gitattributes +2 -2
  3. package/.github/ISSUE_TEMPLATE/bug_report.md +38 -38
  4. package/.github/ISSUE_TEMPLATE/bug_report.yml +90 -90
  5. package/.github/ISSUE_TEMPLATE/config.yml +8 -8
  6. package/.github/ISSUE_TEMPLATE/feature_request.md +20 -20
  7. package/.github/PULL_REQUEST_TEMPLATE.md +43 -43
  8. package/.github/changelog-config.json +45 -45
  9. package/.github/dependabot.yml +27 -27
  10. package/.github/workflows/ci.yml +191 -191
  11. package/.prettierrc.json +11 -11
  12. package/.vscode/settings.json +9 -9
  13. package/CHANGELOG.md +5 -5
  14. package/LICENSE +187 -187
  15. package/README.md +339 -315
  16. package/as-pect.asconfig.json +34 -34
  17. package/as-pect.config.js +65 -65
  18. package/assets/logo.svg +36 -36
  19. package/build/backend/.tsbuildinfo +1 -1
  20. package/build/cli/.tsbuildinfo +1 -1
  21. package/build/cli/index.js +2926 -191
  22. package/build/client/.tsbuildinfo +1 -1
  23. package/build/client/dev/devtools.d.ts +6 -0
  24. package/build/client/dev/devtools.js +442 -0
  25. package/build/client/dev/error-overlay.d.ts +9 -0
  26. package/build/client/dev/error-overlay.js +19 -4
  27. package/build/client/head/metadata.d.ts +3 -1
  28. package/build/client/head/metadata.js +8 -0
  29. package/build/client/index.d.ts +4 -4
  30. package/build/client/index.js +2 -2
  31. package/build/client/navigation/navigation.d.ts +2 -0
  32. package/build/client/navigation/navigation.js +9 -1
  33. package/build/client/navigation/prefetch.d.ts +1 -0
  34. package/build/client/navigation/prefetch.js +35 -0
  35. package/build/client/routing/Router.js +1 -1
  36. package/build/client/routing/hooks.js +6 -2
  37. package/build/client/routing/loader.d.ts +25 -0
  38. package/build/client/routing/loader.js +53 -7
  39. package/build/client/routing/mount.js +4 -3
  40. package/build/compiler/.tsbuildinfo +1 -1
  41. package/build/compiler/config.d.ts +18 -0
  42. package/build/compiler/config.js +8 -0
  43. package/build/compiler/docs.js +16 -16
  44. package/build/compiler/generate.js +3 -0
  45. package/build/compiler/index.d.ts +2 -2
  46. package/build/compiler/index.js +3 -1
  47. package/build/compiler/plugin.js +156 -0
  48. package/build/compiler/prerender.d.ts +1 -0
  49. package/build/compiler/prerender.js +2 -1
  50. package/build/compiler/seo.d.ts +2 -2
  51. package/build/compiler/seo.js +8 -6
  52. package/build/compiler/ssg.d.ts +5 -0
  53. package/build/compiler/ssg.js +121 -0
  54. package/build/io/.tsbuildinfo +1 -1
  55. package/build/logger/.tsbuildinfo +1 -1
  56. package/build/shared/.tsbuildinfo +1 -1
  57. package/eslint.config.js +48 -48
  58. package/examples/basic/client/404.tsx +11 -11
  59. package/examples/basic/client/components/.gitkeep +1 -1
  60. package/examples/basic/client/global-error.tsx +13 -13
  61. package/examples/basic/client/layout.tsx +25 -25
  62. package/examples/basic/client/public/images/.gitkeep +1 -1
  63. package/examples/basic/client/public/images/logo.svg +36 -36
  64. package/examples/basic/client/public/robots.txt +2 -2
  65. package/examples/basic/client/routes/docs/[...slug].tsx +12 -12
  66. package/examples/basic/client/routes/features/error/error.tsx +16 -16
  67. package/examples/basic/client/routes/features/template/b.tsx +14 -14
  68. package/examples/basic/client/routes/files/[[...slug]].tsx +21 -21
  69. package/examples/basic/client/routes/gallery/layout.tsx +13 -13
  70. package/examples/basic/client/routes/io.tsx +24 -24
  71. package/examples/basic/client/routes/loader-demo/loading.tsx +13 -13
  72. package/examples/basic/client/routes/search.tsx +61 -61
  73. package/examples/basic/client/toil.tsx +5 -5
  74. package/package.json +155 -147
  75. package/presets/eslint.js +88 -88
  76. package/presets/no-uint8array-tostring.js +200 -200
  77. package/presets/prettier.json +18 -18
  78. package/presets/tsconfig.json +37 -37
  79. package/src/backend/index.ts +160 -160
  80. package/src/cli/proc.ts +50 -50
  81. package/src/cli/updates.ts +69 -69
  82. package/src/cli/validate.ts +31 -31
  83. package/src/client/channel/channel.ts +146 -146
  84. package/src/client/components/Form.tsx +65 -65
  85. package/src/client/components/Script.tsx +113 -113
  86. package/src/client/components/Slot.tsx +21 -21
  87. package/src/client/dev/devtools.tsx +973 -0
  88. package/src/client/dev/error-overlay.tsx +30 -4
  89. package/src/client/head/head.ts +167 -167
  90. package/src/client/head/metadata.ts +19 -1
  91. package/src/client/index.ts +19 -9
  92. package/src/client/navigation/NavLink.tsx +86 -86
  93. package/src/client/navigation/navigation.ts +25 -5
  94. package/src/client/navigation/prefetch.ts +169 -130
  95. package/src/client/navigation/scroll.ts +53 -53
  96. package/src/client/routing/Router.tsx +8 -2
  97. package/src/client/routing/action.ts +122 -122
  98. package/src/client/routing/error-boundary.tsx +43 -43
  99. package/src/client/routing/hooks.ts +21 -6
  100. package/src/client/routing/loader.ts +325 -225
  101. package/src/client/routing/match.ts +47 -47
  102. package/src/client/routing/mount.tsx +54 -52
  103. package/src/client/routing/params-context.ts +10 -10
  104. package/src/client/routing/slot-context.ts +7 -7
  105. package/src/client/search/search.ts +189 -189
  106. package/src/client/search/use-page-search.ts +73 -73
  107. package/src/client/types.ts +73 -73
  108. package/src/compiler/config.ts +47 -1
  109. package/src/compiler/docs.ts +228 -228
  110. package/src/compiler/generate.ts +394 -391
  111. package/src/compiler/index.ts +64 -54
  112. package/src/compiler/pages.ts +70 -70
  113. package/src/compiler/plugin.ts +170 -2
  114. package/src/compiler/prerender.ts +5 -1
  115. package/src/compiler/seo.ts +23 -7
  116. package/src/compiler/ssg.ts +162 -0
  117. package/src/io/BinaryReader.ts +340 -340
  118. package/src/io/BinaryWriter.ts +385 -385
  119. package/src/io/FastMap.ts +127 -127
  120. package/src/io/index.ts +11 -11
  121. package/src/io/lengths.ts +14 -14
  122. package/src/io/types.ts +18 -18
  123. package/src/logger/index.ts +22 -22
  124. package/src/server/index.ts +10 -10
  125. package/src/server/main.ts +13 -13
  126. package/src/server/tsconfig.json +4 -4
  127. package/src/shared/index.ts +10 -10
  128. package/std/client/index.d.ts +15 -15
  129. package/std/client/package.json +3 -3
  130. package/test/assembly/example.spec.ts +7 -7
  131. package/test/channel.test.ts +21 -21
  132. package/test/dom/Link.test.tsx +47 -47
  133. package/test/dom/NavLink.test.tsx +37 -37
  134. package/test/dom/error-overlay.test.tsx +44 -44
  135. package/test/dom/loader.test.tsx +121 -121
  136. package/test/dom/navigation.test.ts +59 -59
  137. package/test/dom/revalidate.test.tsx +38 -38
  138. package/test/dom/route-head.test.tsx +78 -78
  139. package/test/dom/router-loading.test.tsx +44 -44
  140. package/test/dom/scroll.test.ts +56 -56
  141. package/test/dom/use-metadata.test.tsx +58 -0
  142. package/test/io.test.ts +93 -93
  143. package/test/navlink.test.ts +28 -28
  144. package/test/placeholder.test.ts +9 -9
  145. package/test/routes.test.ts +76 -76
  146. package/test/seo.test.ts +175 -164
  147. package/test/slot-layouts.test.ts +69 -69
  148. package/test/ssg.test.ts +36 -0
  149. package/test/update.test.ts +44 -44
  150. package/test/validate.test.ts +42 -42
  151. package/toil-routes.d.ts +7 -0
  152. package/toilconfig.json +30 -30
  153. package/tsconfig.backend.json +13 -13
  154. package/tsconfig.base.json +35 -35
  155. package/tsconfig.cli.json +13 -13
  156. package/tsconfig.client.json +14 -14
  157. package/tsconfig.compiler.json +13 -13
  158. package/tsconfig.io.json +12 -12
  159. package/tsconfig.json +22 -22
  160. package/tsconfig.logger.json +12 -12
  161. package/tsconfig.server.json +10 -10
  162. package/tsconfig.shared.json +12 -12
  163. package/vitest.config.ts +26 -26
  164. package/.idea/codeStyles/Project.xml +0 -54
  165. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  166. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  167. package/.idea/modules.xml +0 -8
  168. package/.idea/prettier.xml +0 -7
  169. package/.idea/toiljs.iml +0 -8
  170. package/.idea/vcs.xml +0 -6
  171. package/.toil/entry.tsx +0 -9
  172. package/.toil/index.html +0 -12
  173. package/.toil/routes.ts +0 -9
  174. package/build/cli/configure.d.ts +0 -16
  175. package/build/cli/configure.js +0 -272
  176. package/build/cli/create.d.ts +0 -16
  177. package/build/cli/create.js +0 -420
  178. package/build/cli/diagnostics.d.ts +0 -55
  179. package/build/cli/diagnostics.js +0 -333
  180. package/build/cli/doctor.d.ts +0 -6
  181. package/build/cli/doctor.js +0 -249
  182. package/build/cli/features.d.ts +0 -25
  183. package/build/cli/features.js +0 -107
  184. package/build/cli/index.d.ts +0 -2
  185. package/build/cli/proc.d.ts +0 -6
  186. package/build/cli/proc.js +0 -31
  187. package/build/cli/ui.d.ts +0 -9
  188. package/build/cli/ui.js +0 -75
  189. package/build/cli/update.d.ts +0 -7
  190. package/build/cli/update.js +0 -117
  191. package/build/cli/updates.d.ts +0 -10
  192. package/build/cli/updates.js +0 -45
  193. package/build/cli/validate.d.ts +0 -4
  194. package/build/cli/validate.js +0 -19
  195. package/build/client/Link.d.ts +0 -8
  196. package/build/client/Link.js +0 -44
  197. package/build/client/NavLink.d.ts +0 -14
  198. package/build/client/NavLink.js +0 -37
  199. package/build/client/Router.d.ts +0 -7
  200. package/build/client/Router.js +0 -55
  201. package/build/client/channel.d.ts +0 -23
  202. package/build/client/channel.js +0 -94
  203. package/build/client/error-boundary.d.ts +0 -16
  204. package/build/client/error-boundary.js +0 -19
  205. package/build/client/head.d.ts +0 -26
  206. package/build/client/head.js +0 -87
  207. package/build/client/hooks.d.ts +0 -17
  208. package/build/client/hooks.js +0 -48
  209. package/build/client/lazy.d.ts +0 -16
  210. package/build/client/lazy.js +0 -53
  211. package/build/client/match.d.ts +0 -2
  212. package/build/client/match.js +0 -32
  213. package/build/client/mount.d.ts +0 -2
  214. package/build/client/mount.js +0 -13
  215. package/build/client/navigation.d.ts +0 -13
  216. package/build/client/navigation.js +0 -97
  217. package/build/client/params-context.d.ts +0 -2
  218. package/build/client/params-context.js +0 -2
  219. package/build/client/prefetch.d.ts +0 -11
  220. package/build/client/prefetch.js +0 -100
  221. package/build/client/runtime.d.ts +0 -31
  222. package/build/client/runtime.js +0 -112
  223. package/build/client/scroll.d.ts +0 -8
  224. package/build/client/scroll.js +0 -36
  225. package/toil-env.d.ts +0 -16
@@ -1,191 +1,191 @@
1
- name: CI for TOILJS
2
-
3
- on:
4
- push:
5
- tags:
6
- - 'v*'
7
-
8
- jobs:
9
- publish:
10
- runs-on: ubuntu-latest
11
-
12
- permissions:
13
- contents: write
14
- id-token: write
15
-
16
- steps:
17
- - name: Checkout code
18
- uses: actions/checkout@v6
19
- with:
20
- fetch-depth: 0
21
-
22
- - name: Setup Node.js
23
- uses: actions/setup-node@v6
24
- with:
25
- node-version: '24.x'
26
- registry-url: 'https://registry.npmjs.org'
27
-
28
- - name: Update npm
29
- run: npm install -g npm@latest
30
-
31
- - name: Install dependencies
32
- run: npm install
33
-
34
- - name: Build the project
35
- run: npm run build
36
-
37
- - name: Determine npm tag
38
- id: npm_tag
39
- run: |
40
- VERSION="${{ github.ref_name }}"
41
- if [[ "$VERSION" == *"-alpha"* ]]; then
42
- echo "tag=alpha" >> $GITHUB_OUTPUT
43
- elif [[ "$VERSION" == *"-beta"* ]]; then
44
- echo "tag=beta" >> $GITHUB_OUTPUT
45
- elif [[ "$VERSION" == *"-rc"* ]]; then
46
- echo "tag=rc" >> $GITHUB_OUTPUT
47
- else
48
- echo "tag=latest" >> $GITHUB_OUTPUT
49
- fi
50
- echo "Determined npm tag: $(cat $GITHUB_OUTPUT | grep tag | cut -d= -f2)"
51
-
52
- - name: Publish to npm
53
- run: npm publish --access public --tag ${{ steps.npm_tag.outputs.tag }}
54
- env:
55
- NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
56
-
57
- release:
58
- runs-on: ubuntu-latest
59
- needs: publish
60
-
61
- permissions:
62
- contents: write
63
-
64
- steps:
65
- - name: Checkout code
66
- uses: actions/checkout@v6
67
- with:
68
- fetch-depth: 0
69
-
70
- - name: Determine if prerelease
71
- id: prerelease
72
- run: |
73
- VERSION="${{ github.ref_name }}"
74
- if [[ "$VERSION" == *"-alpha"* ]] || [[ "$VERSION" == *"-beta"* ]] || [[ "$VERSION" == *"-rc"* ]]; then
75
- echo "is_prerelease=true" >> $GITHUB_OUTPUT
76
- else
77
- echo "is_prerelease=false" >> $GITHUB_OUTPUT
78
- fi
79
-
80
- - name: Generate changelog
81
- id: changelog
82
- uses: mikepenz/release-changelog-builder-action@v6
83
- with:
84
- ignorePreReleases: ${{ steps.prerelease.outputs.is_prerelease == 'false' }}
85
- configurationJson: |
86
- {
87
- "categories": [
88
- {
89
- "title": "### Breaking Changes",
90
- "labels": ["breaking", "breaking-change", "BREAKING-CHANGE"]
91
- },
92
- {
93
- "title": "### Features",
94
- "labels": ["feature", "feat", "enhancement"]
95
- },
96
- {
97
- "title": "### Bug Fixes",
98
- "labels": ["bug", "fix", "bugfix"]
99
- },
100
- {
101
- "title": "### Performance",
102
- "labels": ["performance", "perf"]
103
- },
104
- {
105
- "title": "### Documentation",
106
- "labels": ["documentation", "docs"]
107
- },
108
- {
109
- "title": "### Dependencies",
110
- "labels": ["dependencies", "deps"]
111
- },
112
- {
113
- "title": "### Other Changes",
114
- "labels": []
115
- }
116
- ],
117
- "sort": {
118
- "order": "ASC",
119
- "on_property": "mergedAt"
120
- },
121
- "template": "#{{CHANGELOG}}",
122
- "pr_template": "- #{{TITLE}} ([##{{NUMBER}}](#{{URL}})) by @#{{AUTHOR}}",
123
- "empty_template": "- No changes",
124
- "max_tags_to_fetch": 200,
125
- "max_pull_requests": 200,
126
- "max_back_track_time_days": 365,
127
- "tag_resolver": {
128
- "method": "semver"
129
- }
130
- }
131
- env:
132
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
133
-
134
- - name: Update CHANGELOG.md
135
- env:
136
- CHANGELOG_CONTENT: ${{ steps.changelog.outputs.changelog }}
137
- run: |
138
- TAG="${{ github.ref_name }}"
139
- DATE=$(date +%Y-%m-%d)
140
- NEW_HEADER="## [$TAG] - $DATE"
141
-
142
- # Write changelog content to temp file using env var (avoids shell escaping)
143
- printf '%s\n' "$CHANGELOG_CONTENT" > /tmp/new_entry.md
144
-
145
- if [ -f CHANGELOG.md ]; then
146
- # Create new file with entry inserted after header line
147
- {
148
- head -n 1 CHANGELOG.md
149
- echo ""
150
- echo "$NEW_HEADER"
151
- echo ""
152
- cat /tmp/new_entry.md
153
- echo ""
154
- tail -n +2 CHANGELOG.md
155
- } > /tmp/CHANGELOG_NEW.md
156
- mv /tmp/CHANGELOG_NEW.md CHANGELOG.md
157
- else
158
- # Create new CHANGELOG.md
159
- {
160
- echo "# Changelog"
161
- echo ""
162
- echo "All notable changes to this project will be documented in this file."
163
- echo ""
164
- echo "This changelog is automatically generated from merged pull requests."
165
- echo ""
166
- echo "$NEW_HEADER"
167
- echo ""
168
- cat /tmp/new_entry.md
169
- } > CHANGELOG.md
170
- fi
171
-
172
- rm -f /tmp/new_entry.md
173
-
174
- - name: Commit changelog
175
- run: |
176
- git config user.name "github-actions[bot]"
177
- git config user.email "github-actions[bot]@users.noreply.github.com"
178
- git add CHANGELOG.md
179
- git diff --staged --quiet || git commit -m "docs: update CHANGELOG.md for ${{ github.ref_name }}"
180
- git push origin HEAD:main || echo "No changes to push or push failed"
181
-
182
- - name: Create GitHub Release
183
- uses: softprops/action-gh-release@v2
184
- with:
185
- tag_name: ${{ github.ref_name }}
186
- name: Release ${{ github.ref_name }}
187
- body: ${{ steps.changelog.outputs.changelog }}
188
- prerelease: ${{ steps.prerelease.outputs.is_prerelease == 'true' }}
189
- generate_release_notes: false
190
- env:
191
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1
+ name: CI for TOILJS
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*'
7
+
8
+ jobs:
9
+ publish:
10
+ runs-on: ubuntu-latest
11
+
12
+ permissions:
13
+ contents: write
14
+ id-token: write
15
+
16
+ steps:
17
+ - name: Checkout code
18
+ uses: actions/checkout@v6
19
+ with:
20
+ fetch-depth: 0
21
+
22
+ - name: Setup Node.js
23
+ uses: actions/setup-node@v6
24
+ with:
25
+ node-version: '24.x'
26
+ registry-url: 'https://registry.npmjs.org'
27
+
28
+ - name: Update npm
29
+ run: npm install -g npm@latest
30
+
31
+ - name: Install dependencies
32
+ run: npm install
33
+
34
+ - name: Build the project
35
+ run: npm run build
36
+
37
+ - name: Determine npm tag
38
+ id: npm_tag
39
+ run: |
40
+ VERSION="${{ github.ref_name }}"
41
+ if [[ "$VERSION" == *"-alpha"* ]]; then
42
+ echo "tag=alpha" >> $GITHUB_OUTPUT
43
+ elif [[ "$VERSION" == *"-beta"* ]]; then
44
+ echo "tag=beta" >> $GITHUB_OUTPUT
45
+ elif [[ "$VERSION" == *"-rc"* ]]; then
46
+ echo "tag=rc" >> $GITHUB_OUTPUT
47
+ else
48
+ echo "tag=latest" >> $GITHUB_OUTPUT
49
+ fi
50
+ echo "Determined npm tag: $(cat $GITHUB_OUTPUT | grep tag | cut -d= -f2)"
51
+
52
+ - name: Publish to npm
53
+ run: npm publish --access public --tag ${{ steps.npm_tag.outputs.tag }}
54
+ env:
55
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
56
+
57
+ release:
58
+ runs-on: ubuntu-latest
59
+ needs: publish
60
+
61
+ permissions:
62
+ contents: write
63
+
64
+ steps:
65
+ - name: Checkout code
66
+ uses: actions/checkout@v6
67
+ with:
68
+ fetch-depth: 0
69
+
70
+ - name: Determine if prerelease
71
+ id: prerelease
72
+ run: |
73
+ VERSION="${{ github.ref_name }}"
74
+ if [[ "$VERSION" == *"-alpha"* ]] || [[ "$VERSION" == *"-beta"* ]] || [[ "$VERSION" == *"-rc"* ]]; then
75
+ echo "is_prerelease=true" >> $GITHUB_OUTPUT
76
+ else
77
+ echo "is_prerelease=false" >> $GITHUB_OUTPUT
78
+ fi
79
+
80
+ - name: Generate changelog
81
+ id: changelog
82
+ uses: mikepenz/release-changelog-builder-action@v6
83
+ with:
84
+ ignorePreReleases: ${{ steps.prerelease.outputs.is_prerelease == 'false' }}
85
+ configurationJson: |
86
+ {
87
+ "categories": [
88
+ {
89
+ "title": "### Breaking Changes",
90
+ "labels": ["breaking", "breaking-change", "BREAKING-CHANGE"]
91
+ },
92
+ {
93
+ "title": "### Features",
94
+ "labels": ["feature", "feat", "enhancement"]
95
+ },
96
+ {
97
+ "title": "### Bug Fixes",
98
+ "labels": ["bug", "fix", "bugfix"]
99
+ },
100
+ {
101
+ "title": "### Performance",
102
+ "labels": ["performance", "perf"]
103
+ },
104
+ {
105
+ "title": "### Documentation",
106
+ "labels": ["documentation", "docs"]
107
+ },
108
+ {
109
+ "title": "### Dependencies",
110
+ "labels": ["dependencies", "deps"]
111
+ },
112
+ {
113
+ "title": "### Other Changes",
114
+ "labels": []
115
+ }
116
+ ],
117
+ "sort": {
118
+ "order": "ASC",
119
+ "on_property": "mergedAt"
120
+ },
121
+ "template": "#{{CHANGELOG}}",
122
+ "pr_template": "- #{{TITLE}} ([##{{NUMBER}}](#{{URL}})) by @#{{AUTHOR}}",
123
+ "empty_template": "- No changes",
124
+ "max_tags_to_fetch": 200,
125
+ "max_pull_requests": 200,
126
+ "max_back_track_time_days": 365,
127
+ "tag_resolver": {
128
+ "method": "semver"
129
+ }
130
+ }
131
+ env:
132
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
133
+
134
+ - name: Update CHANGELOG.md
135
+ env:
136
+ CHANGELOG_CONTENT: ${{ steps.changelog.outputs.changelog }}
137
+ run: |
138
+ TAG="${{ github.ref_name }}"
139
+ DATE=$(date +%Y-%m-%d)
140
+ NEW_HEADER="## [$TAG] - $DATE"
141
+
142
+ # Write changelog content to temp file using env var (avoids shell escaping)
143
+ printf '%s\n' "$CHANGELOG_CONTENT" > /tmp/new_entry.md
144
+
145
+ if [ -f CHANGELOG.md ]; then
146
+ # Create new file with entry inserted after header line
147
+ {
148
+ head -n 1 CHANGELOG.md
149
+ echo ""
150
+ echo "$NEW_HEADER"
151
+ echo ""
152
+ cat /tmp/new_entry.md
153
+ echo ""
154
+ tail -n +2 CHANGELOG.md
155
+ } > /tmp/CHANGELOG_NEW.md
156
+ mv /tmp/CHANGELOG_NEW.md CHANGELOG.md
157
+ else
158
+ # Create new CHANGELOG.md
159
+ {
160
+ echo "# Changelog"
161
+ echo ""
162
+ echo "All notable changes to this project will be documented in this file."
163
+ echo ""
164
+ echo "This changelog is automatically generated from merged pull requests."
165
+ echo ""
166
+ echo "$NEW_HEADER"
167
+ echo ""
168
+ cat /tmp/new_entry.md
169
+ } > CHANGELOG.md
170
+ fi
171
+
172
+ rm -f /tmp/new_entry.md
173
+
174
+ - name: Commit changelog
175
+ run: |
176
+ git config user.name "github-actions[bot]"
177
+ git config user.email "github-actions[bot]@users.noreply.github.com"
178
+ git add CHANGELOG.md
179
+ git diff --staged --quiet || git commit -m "docs: update CHANGELOG.md for ${{ github.ref_name }}"
180
+ git push origin HEAD:main || echo "No changes to push or push failed"
181
+
182
+ - name: Create GitHub Release
183
+ uses: softprops/action-gh-release@v2
184
+ with:
185
+ tag_name: ${{ github.ref_name }}
186
+ name: Release ${{ github.ref_name }}
187
+ body: ${{ steps.changelog.outputs.changelog }}
188
+ prerelease: ${{ steps.prerelease.outputs.is_prerelease == 'true' }}
189
+ generate_release_notes: false
190
+ env:
191
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
package/.prettierrc.json CHANGED
@@ -1,12 +1,12 @@
1
- {
2
- "printWidth": 100,
3
- "trailingComma": "all",
4
- "tabWidth": 4,
5
- "semi": true,
6
- "singleQuote": true,
7
- "quoteProps": "as-needed",
8
- "bracketSpacing": true,
9
- "bracketSameLine": true,
10
- "arrowParens": "always",
11
- "singleAttributePerLine": true
1
+ {
2
+ "printWidth": 100,
3
+ "trailingComma": "all",
4
+ "tabWidth": 4,
5
+ "semi": true,
6
+ "singleQuote": true,
7
+ "quoteProps": "as-needed",
8
+ "bracketSpacing": true,
9
+ "bracketSameLine": true,
10
+ "arrowParens": "always",
11
+ "singleAttributePerLine": true
12
12
  }
@@ -1,10 +1,10 @@
1
- {
2
- "eslint.validate": ["javascript", "typescript"],
3
- "prettier.useEditorConfig": false,
4
- "prettier.useTabs": false,
5
- "prettier.configPath": ".prettierrc.json",
6
- "prettier.requireConfig": true,
7
- "prettier.tabWidth": 4,
8
- "prettier.singleQuote": true,
9
- "editor.formatOnSave": true,
1
+ {
2
+ "eslint.validate": ["javascript", "typescript"],
3
+ "prettier.useEditorConfig": false,
4
+ "prettier.useTabs": false,
5
+ "prettier.configPath": ".prettierrc.json",
6
+ "prettier.requireConfig": true,
7
+ "prettier.tabWidth": 4,
8
+ "prettier.singleQuote": true,
9
+ "editor.formatOnSave": true,
10
10
  }
package/CHANGELOG.md CHANGED
@@ -1,5 +1,5 @@
1
- # Changelog
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- This changelog is automatically generated from merged pull requests.
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ This changelog is automatically generated from merged pull requests.