@d-zero/scaffold 5.0.0-beta.1 → 5.0.0-beta.10

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 (45) hide show
  1. package/.gitignore +9 -0
  2. package/.vscode/settings.json +0 -1
  3. package/CHANGELOG.md +74 -0
  4. package/README.md +8 -7
  5. package/__assets/_libs/.markuplintrc +6 -0
  6. package/__assets/_libs/component/c-content-main.css +133 -16
  7. package/__assets/_libs/component/c-nav-breadcrumb.pug +17 -39
  8. package/__assets/_libs/component/c-pagination.css +2 -0
  9. package/__assets/_libs/component/c-title-page.pug +1 -1
  10. package/__assets/_libs/data/bge-blocks-v2.html +2101 -0
  11. package/__assets/_libs/data/bge-blocks.html +1040 -1824
  12. package/__assets/_libs/data/blocks.js +1 -1
  13. package/__assets/_libs/data/breadcrumbs.js +77 -0
  14. package/__assets/_libs/data/titlelist.js +16 -0
  15. package/__assets/_libs/layouts/home.pug +17 -0
  16. package/__assets/_libs/layouts/sub.pug +25 -0
  17. package/__assets/_libs/mixin/meta-basercms.pug +14 -0
  18. package/__assets/_libs/mixin/meta.pug +26 -21
  19. package/__assets/_libs/style/general/all.css +1 -0
  20. package/__assets/htdocs/__tmpl/000_home.json +4 -0
  21. package/__assets/htdocs/__tmpl/000_home.pug +2 -20
  22. package/__assets/htdocs/__tmpl/100_sub.json +4 -0
  23. package/__assets/htdocs/__tmpl/100_sub.pug +1 -23
  24. package/__assets/htdocs/__tmpl/200_blog_index.json +5 -0
  25. package/__assets/htdocs/__tmpl/200_blog_index.pug +14 -40
  26. package/__assets/htdocs/__tmpl/210_blog_index.json +5 -0
  27. package/__assets/htdocs/__tmpl/210_blog_index.pug +14 -40
  28. package/__assets/htdocs/__tmpl/300_form_input.json +4 -0
  29. package/__assets/htdocs/__tmpl/300_form_input.pug +529 -568
  30. package/__assets/htdocs/__tmpl/301_form_confirm.json +4 -0
  31. package/__assets/htdocs/__tmpl/301_form_confirm.pug +188 -212
  32. package/__assets/htdocs/__tmpl/302_form_complete.json +4 -0
  33. package/__assets/htdocs/__tmpl/302_form_complete.pug +3 -27
  34. package/__assets/htdocs/sample/index.html +15 -0
  35. package/__assets/htdocs/sub-folder.test/index.pug +1 -3
  36. package/burgereditor.config.js +25 -0
  37. package/eleventy.config.mjs +7 -1
  38. package/markuplint.config.js +4 -0
  39. package/package.json +36 -19
  40. package/.clineignore +0 -6
  41. package/.clinerules +0 -17
  42. package/__assets/_libs/data/blocks.html +0 -71
  43. package/ai-tasks/create-component.md +0 -127
  44. package/ai-tasks/create-page.md +0 -110
  45. package/ai-tasks/page-to-burger.md +0 -68
package/.gitignore CHANGED
@@ -33,3 +33,12 @@ htdocs/*
33
33
  !htdocs/img
34
34
  htdocs/img/*
35
35
  !htdocs/img/*.test.*
36
+ !htdocs/files
37
+ htdocs/files/*
38
+ !htdocs/files/images
39
+ htdocs/files/images/*
40
+ !htdocs/files/images/sample.png
41
+ !htdocs/__tmpl
42
+ htdocs/__tmpl/**/*
43
+ !htdocs/__tmpl/__burger_editor
44
+ !htdocs/__tmpl/__burger_editor/**/*
@@ -10,7 +10,6 @@
10
10
  "stylelint.validate": ["css"],
11
11
  "files.associations": {
12
12
  "*.mdc": "markdown",
13
- ".clinerules": "markdown",
14
13
  ".stylelintrc": "json",
15
14
  ".markuplintrc": "json",
16
15
  ".pug-lintrc": "json"
package/CHANGELOG.md CHANGED
@@ -3,6 +3,80 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [5.0.0-beta.10](https://github.com/d-zero-dev/frontend-env/compare/v5.0.0-beta.9...v5.0.0-beta.10) (2025-10-20)
7
+
8
+ ### Bug Fixes
9
+
10
+ - update prettier glob patterns for rc files ([80231cb](https://github.com/d-zero-dev/frontend-env/commit/80231cb5af39cbcbd8c5d4c5d08bb3e5ac80a350))
11
+
12
+ ### Features
13
+
14
+ - **create-frontend:** add library copying functionality for baserCMS projects ([8e73300](https://github.com/d-zero-dev/frontend-env/commit/8e73300a730aa7dcdcc2f19bb57b99eb5f4d561c))
15
+ - **create-frontend:** update project type options and remove unused blocks.html ([b003628](https://github.com/d-zero-dev/frontend-env/commit/b00362847c11493ab14f8c87c01f9577563f2e07))
16
+ - **scaffold:** add baserCMS-specific meta template and conditional inclusion ([885fe35](https://github.com/d-zero-dev/frontend-env/commit/885fe352ecb692cd1ccf3ca4ee1d82749193a60d))
17
+
18
+ # [5.0.0-beta.9](https://github.com/d-zero-dev/frontend-env/compare/v5.0.0-beta.8...v5.0.0-beta.9) (2025-10-05)
19
+
20
+ **Note:** Version bump only for package @d-zero/scaffold
21
+
22
+ # [5.0.0-beta.8](https://github.com/d-zero-dev/frontend-env/compare/v5.0.0-beta.7...v5.0.0-beta.8) (2025-10-05)
23
+
24
+ **Note:** Version bump only for package @d-zero/scaffold
25
+
26
+ # [5.0.0-beta.7](https://github.com/d-zero-dev/frontend-env/compare/v5.0.0-beta.6...v5.0.0-beta.7) (2025-10-03)
27
+
28
+ ### Features
29
+
30
+ - **builder:** add --clear-cache option to CLI ([a09aa0b](https://github.com/d-zero-dev/frontend-env/commit/a09aa0b304a7c693a2b856314a39ffa25f35141e))
31
+
32
+ # [5.0.0-beta.6](https://github.com/d-zero-dev/frontend-env/compare/v5.0.0-beta.5...v5.0.0-beta.6) (2025-10-03)
33
+
34
+ ### Bug Fixes
35
+
36
+ - **scaffold:** filter empty strings in breadcrumb depth calculation ([02d5ffc](https://github.com/d-zero-dev/frontend-env/commit/02d5ffc7935b055d22fbb9dbf0cf2ee7767fc60a))
37
+
38
+ # [5.0.0-beta.5](https://github.com/d-zero-dev/frontend-env/compare/v5.0.0-beta.4...v5.0.0-beta.5) (2025-09-17)
39
+
40
+ ### Bug Fixes
41
+
42
+ - **scaffold:** add dotenv ([f9e09fb](https://github.com/d-zero-dev/frontend-env/commit/f9e09fbc1e32f99dd0529b5fba40cc8c205471cb))
43
+ - **scaffold:** remove unnecessary async keyword from breadcrumbs function ([2e1e11f](https://github.com/d-zero-dev/frontend-env/commit/2e1e11f29face454705de7b359ab1bc598c549cf))
44
+ - **scaffold:** use rel="icon" for favicon ([af6c9e8](https://github.com/d-zero-dev/frontend-env/commit/af6c9e83c2bd2b454bf54745de0b8275063450d5))
45
+
46
+ ### Features
47
+
48
+ - **scaffold:** add dynamic breadcrumb generation ([4816002](https://github.com/d-zero-dev/frontend-env/commit/4816002823cb0698cac60858db26bffe081ab8e0))
49
+ - **scaffold:** add dynamic title generation using breadcrumbs ([39fd107](https://github.com/d-zero-dev/frontend-env/commit/39fd1076cd7d722bb97942751bc6f65826f93c1a))
50
+ - **scaffold:** update c-title-page component ([77d8bbe](https://github.com/d-zero-dev/frontend-env/commit/77d8bbe534392b1ae2bd82ea0e0da02287f32ff0))
51
+ - **scaffold:** update layout and template files ([6f95978](https://github.com/d-zero-dev/frontend-env/commit/6f9597865bf66e9d8f336a4e5e9db0462953116b))
52
+ - **scaffold:** update meta mixin, sample page and package config ([f97f141](https://github.com/d-zero-dev/frontend-env/commit/f97f1416ddd2053cdfab38823fe66adfdf3ef5f9))
53
+ - **scaffold:** update template data with Japanese titles ([7c60679](https://github.com/d-zero-dev/frontend-env/commit/7c606797db4a94b527de69b3ec79980fed275f61))
54
+
55
+ # [5.0.0-beta.4](https://github.com/d-zero-dev/frontend-env/compare/v5.0.0-beta.3...v5.0.0-beta.4) (2025-08-14)
56
+
57
+ ### Bug Fixes
58
+
59
+ - **scaffold:** update burger-editor config and sample file format ([e45030d](https://github.com/d-zero-dev/frontend-env/commit/e45030d19b8adbc63ad4aef4d8abb42dcf84aff1))
60
+ - **scaffold:** update CSS to use logical properties and fix formatting ([d2339db](https://github.com/d-zero-dev/frontend-env/commit/d2339db25cd4f227a1476af4b533b69d39c0ccb3))
61
+
62
+ ### Features
63
+
64
+ - **scaffold:** add 11ty layout files ([fafeb55](https://github.com/d-zero-dev/frontend-env/commit/fafeb557c47d372a3037c94d5d093873ad47b84a))
65
+ - **scaffold:** add sample page for static file production ([f2cacbd](https://github.com/d-zero-dev/frontend-env/commit/f2cacbdf90c237aa7dc80e7bae2a8b80c8732088))
66
+ - **scaffold:** enable prettier by default in eleventy config ([ba539bd](https://github.com/d-zero-dev/frontend-env/commit/ba539bd0228fc86a0e126bd48cd04df41da91f3d))
67
+ - **scaffold:** integrate lint check into build process ([9c99c22](https://github.com/d-zero-dev/frontend-env/commit/9c99c22eeb986ed07a774e82467c82e1403da1fe))
68
+ - **scaffold:** update burger-editor dependencies to 4.0.0-alpha.14 ([3bec3a5](https://github.com/d-zero-dev/frontend-env/commit/3bec3a594af622aff826cd3c9ef29704ad95306b))
69
+
70
+ # [5.0.0-beta.3](https://github.com/d-zero-dev/frontend-env/compare/v5.0.0-beta.2...v5.0.0-beta.3) (2025-07-11)
71
+
72
+ **Note:** Version bump only for package @d-zero/scaffold
73
+
74
+ # [5.0.0-beta.2](https://github.com/d-zero-dev/frontend-env/compare/v5.0.0-beta.1...v5.0.0-beta.2) (2025-07-11)
75
+
76
+ ### Features
77
+
78
+ - **scaffold:** introduce @burger-editor/local for local development ([1524937](https://github.com/d-zero-dev/frontend-env/commit/15249370d68aeeb9c5b20d7c29dd4c8dfc0d000e))
79
+
6
80
  # [5.0.0-beta.1](https://github.com/d-zero-dev/frontend-env/compare/v5.0.0-beta.0...v5.0.0-beta.1) (2025-07-01)
7
81
 
8
82
  ### Features
package/README.md CHANGED
@@ -4,10 +4,11 @@
4
4
 
5
5
  ## コマンド
6
6
 
7
- | コマンド | 実行される内容 |
8
- | ------------ | ---------------------------------------------------- |
9
- | `yarn` | 必要なパッケージのインストール |
10
- | `yarn dev` | 開発用ローカル環境の起動( http://localhost:8080/ ) |
11
- | `yarn lint` | リントチェック |
12
- | `yarn build` | ビルド |
13
- | `yarn up` | 依存パッケージのアップデート |
7
+ | コマンド | 実行される内容 |
8
+ | -------------------------- | ---------------------------------------------------- |
9
+ | `yarn` | 必要なパッケージのインストール |
10
+ | `yarn dev` | 開発用ローカル環境の起動( http://localhost:8080/ ) |
11
+ | `yarn lint` | リントチェック |
12
+ | `yarn build` | ビルド |
13
+ | `yarn build --clear-cache` | ビルド(キャッシュをクリア) |
14
+ | `yarn update` | 依存パッケージのアップデート |
@@ -14,6 +14,12 @@
14
14
  }
15
15
  }
16
16
  }
17
+ },
18
+ {
19
+ "selector": "script[⚠️], script[src*=jquery]",
20
+ "rules": {
21
+ "required-attr": false
22
+ }
17
23
  }
18
24
  ]
19
25
  }
@@ -7,12 +7,8 @@
7
7
  * ただし、クラス名は`c-`で開始してはいけない。もちろん 【`c-` + `コンポーネント名` + `__` + `エレメント名`】 という規則でクラス名をつけない。
8
8
  * さらにそのルールに従って、メインコンテンツの中にコンポーネントを内包してはいけない。 */
9
9
  .c-content-main {
10
- :where(*) {
11
- text-underline-offset: 3px;
12
- }
13
-
14
10
  :where(h2, h3, h4, h5, h6, p) {
15
- margin-block-end: max(0.75rem, 1rem);
11
+ margin-block-end: 1rem;
16
12
  }
17
13
 
18
14
  :where(ul, ol, table, blockquote) {
@@ -58,12 +54,124 @@
58
54
  border: 1px solid var(--border-color);
59
55
  }
60
56
 
57
+ [data-bgi] {
58
+ :where(&, & > div) {
59
+ :where(& > :first-child) {
60
+ margin-block-start: 0;
61
+ }
62
+
63
+ :where(& > :last-child) {
64
+ margin-block-end: 0;
65
+ }
66
+ }
67
+ }
68
+
69
+ [data-bgi='button'],
70
+ [data-bgi='download-file'] {
71
+ a {
72
+ display: flex;
73
+ justify-content: center;
74
+ min-inline-size: 10em;
75
+ max-inline-size: 20em;
76
+ padding-block: 0.5em;
77
+ padding-inline: 1em;
78
+ color: inherit;
79
+ text-decoration: none;
80
+ border: 1px solid currentcolor;
81
+ border-radius: calc(infinity * 1px);
82
+ }
83
+ }
84
+
85
+ [data-bgi='table'],
86
+ [data-bgi='wysiwyg'] {
87
+ table {
88
+ inline-size: 100%;
89
+ border-spacing: 0;
90
+ border-collapse: collapse;
91
+
92
+ th,
93
+ td {
94
+ padding: 1.5em;
95
+ border: 1px solid currentcolor;
96
+ }
97
+ }
98
+ }
99
+
100
+ [data-bgi='hr'] {
101
+ --border-color: currentcolor;
102
+ --border-width: 3px;
103
+
104
+ [data-bgi-hr-kind='dashed'] {
105
+ --border-kind: dashed;
106
+ }
107
+
108
+ [data-bgi-hr-kind='bold'] {
109
+ --border-width: 5px;
110
+ }
111
+
112
+ [data-bgi-hr-kind='narrow'] {
113
+ --border-width: 1px;
114
+ }
115
+
116
+ [data-bgi-hr-kind='short'] {
117
+ --inline-size: 50%;
118
+ }
119
+ }
120
+
121
+ @container bge-container (width < 768px) {
122
+ [data-bge-container='grid:1'],
123
+ [data-bge-container^='grid:1:'] {
124
+ [data-bge-container-frame] {
125
+ --bge-grid-col: 1;
126
+ }
127
+ }
128
+
129
+ [data-bge-container='grid:2'],
130
+ [data-bge-container^='grid:2:'] {
131
+ [data-bge-container-frame] {
132
+ --bge-grid-col: 2;
133
+ }
134
+ }
135
+
136
+ [data-bge-container='grid:3'],
137
+ [data-bge-container^='grid:3:'] {
138
+ [data-bge-container-frame] {
139
+ --bge-grid-col: 2;
140
+
141
+ /* 最後の要素を2列分にする */
142
+ > :nth-child(2n + 1):last-child {
143
+ grid-column: span 2;
144
+ }
145
+ }
146
+ }
147
+
148
+ [data-bge-container='grid:4'],
149
+ [data-bge-container^='grid:4:'] {
150
+ [data-bge-container-frame] {
151
+ --bge-grid-col: 2;
152
+ }
153
+ }
154
+
155
+ [data-bge-container='grid:5'],
156
+ [data-bge-container^='grid:5:'] {
157
+ [data-bge-container-frame] {
158
+ --bge-grid-col: 2;
159
+
160
+ /* 最後の要素を2列分にする */
161
+ > :nth-child(2n + 1):last-child {
162
+ grid-column: span 2;
163
+ }
164
+ }
165
+ }
166
+ }
167
+
61
168
  .cc-form-description {
62
169
  font-size: calc(14 / 16 * 1rem);
63
170
  }
64
171
 
65
172
  .cc-form {
66
- margin: 0 auto;
173
+ margin-block: 0;
174
+ margin-inline: auto;
67
175
  }
68
176
 
69
177
  .cc-form-field-list {
@@ -73,7 +181,8 @@
73
181
 
74
182
  .cc-form-fieldset {
75
183
  display: block;
76
- padding: 1rem 2rem;
184
+ padding-block: 1rem;
185
+ padding-inline: 2rem;
77
186
 
78
187
  fieldset {
79
188
  padding: 0;
@@ -101,7 +210,8 @@
101
210
  .required,
102
211
  .optional {
103
212
  display: block;
104
- margin: 0 0 0 0.5rem;
213
+ margin-block: 0;
214
+ margin-inline: 0 0.5rem;
105
215
  font-size: calc(12 / 18 * 1rem);
106
216
  line-height: 1;
107
217
  border-radius: 0.2rem;
@@ -109,7 +219,8 @@
109
219
  }
110
220
 
111
221
  .cc-form-fieldset-attention {
112
- margin: 0.5rem 0;
222
+ margin-block: 0.5rem;
223
+ margin-inline: 0;
113
224
  font-size: calc(12 / 18 * 1rem);
114
225
  font-weight: normal;
115
226
  }
@@ -119,8 +230,10 @@
119
230
  }
120
231
 
121
232
  .mail-field {
122
- padding: 0 0 1rem;
123
- margin: 0 0 0 1rem;
233
+ padding-block: 0 1rem;
234
+ padding-inline: 0;
235
+ margin-block: 0;
236
+ margin-inline: 0 1rem;
124
237
 
125
238
  &:last-child {
126
239
  border-block-end: 1px solid var(--border-color);
@@ -134,7 +247,7 @@
134
247
  'description description description' auto
135
248
  'error-message error-message error-message' auto
136
249
  / auto 1fr auto;
137
- grid-gap: 0;
250
+ gap: 0;
138
251
 
139
252
  > * {
140
253
  place-self: center flex-start;
@@ -142,7 +255,8 @@
142
255
 
143
256
  .mail-before-attachment {
144
257
  grid-area: before-attachment;
145
- margin: 0 1rem 0 0;
258
+ margin-block: 0;
259
+ margin-inline: 0 1rem;
146
260
 
147
261
  &:empty {
148
262
  margin: 0;
@@ -155,7 +269,8 @@
155
269
 
156
270
  .mail-after-attachment {
157
271
  grid-area: after-attachment;
158
- margin: 0 0 0 1rem;
272
+ margin-block: 0;
273
+ margin-inline: 1rem 0;
159
274
 
160
275
  &:empty {
161
276
  margin: 0;
@@ -219,7 +334,8 @@
219
334
  }
220
335
 
221
336
  select {
222
- padding: 0.5rem calc(0.5rem + 24px + 2px) 0.5rem 0.5rem;
337
+ padding-block: 0.5rem;
338
+ padding-inline: 0.5rem calc(0.5rem + 24px + 2px);
223
339
  appearance: none;
224
340
  background-image: url('/img/bg-arrow.svg');
225
341
  background-repeat: no-repeat;
@@ -255,7 +371,8 @@
255
371
  input {
256
372
  display: block;
257
373
  padding: 0;
258
- margin: 0 0.5rem 0 0;
374
+ margin-block: 0;
375
+ margin-inline: 0 0.5rem;
259
376
  line-height: 1;
260
377
  }
261
378
 
@@ -1,42 +1,20 @@
1
1
  .c-nav-breadcrumb
2
2
  ol(itemscope itemtype="https://schema.org/BreadcrumbList")
3
- li.c-nav-breadcrumb__item(
4
- itemscope
5
- itemprop="itemListElement"
6
- itemtype="https://schema.org/ListItem"
7
- data-breadcrumb="home")
8
- a(
9
- href="/"
3
+ - const HOME_TITLE = "Home";
4
+ - const linkList = breadcrumbs(page, collections);
5
+ each link, index in linkList
6
+ li.c-nav-breadcrumb__item(
10
7
  itemscope
11
- itemprop="item"
12
- itemtype="https://schema.org/WebPage"
13
- itemid="/")
14
- span(itemprop="name") Home
15
- meta(itemprop="position" content="1")
16
- span.c-nav-breadcrumb__separetor
17
- li.c-nav-breadcrumb__item(
18
- itemscope
19
- itemprop="itemListElement"
20
- itemtype="https://schema.org/ListItem")
21
- a(
22
- href="/first/"
23
- itemscope
24
- itemprop="item"
25
- itemtype="https://schema.org/WebPage"
26
- itemid="/first/")
27
- span(itemprop="name") Parent
28
- meta(itemprop="position" content="2")
29
- span.c-nav-breadcrumb__separetor
30
- li.c-nav-breadcrumb__item(
31
- itemscope
32
- itemprop="itemListElement"
33
- itemtype="https://schema.org/ListItem"
34
- data-breadcrumb="current")
35
- a(
36
- href="/first/about"
37
- itemscope
38
- itemprop="item"
39
- itemtype="https://schema.org/WebPage"
40
- itemid="/first/about")
41
- span(itemprop="name") Current
42
- meta(itemprop="position" content="3")
8
+ itemprop="itemListElement"
9
+ itemtype="https://schema.org/ListItem"
10
+ data-breadcrumb=link.href === "/" ? "home" : undefined)
11
+ a(
12
+ href=link.href
13
+ itemscope
14
+ itemprop="item"
15
+ itemtype="https://schema.org/WebPage"
16
+ itemid=link.href)
17
+ span(itemprop="name")= link.href === "/" ? HOME_TITLE || link.title : link.title
18
+ meta(itemprop="position" content=index + 1)
19
+ if index < linkList.length - 1
20
+ span.c-nav-breadcrumb__separetor
@@ -87,6 +87,7 @@
87
87
  }
88
88
 
89
89
  /* 🐲 baserCMSの仕様上 マルチクラスでしかカレントを定義できない */
90
+
90
91
  /* stylelint-disable selector-class-pattern */
91
92
  .c-pagination__number--current {
92
93
  border-block-end: 2px solid var(--border-color);
@@ -95,4 +96,5 @@
95
96
  padding-block-end: 0;
96
97
  }
97
98
  }
99
+
98
100
  /* stylelint-enable selector-class-pattern */
@@ -1,2 +1,2 @@
1
1
  .c-title-page
2
- h1 ページタイトル
2
+ h1= title