create-specment 0.2.2 → 0.2.8
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/bin/commands/create.d.ts.map +1 -1
- package/bin/commands/create.js.map +1 -1
- package/bin/constants/languages.d.ts +1 -1
- package/bin/constants/languages.d.ts.map +1 -1
- package/bin/constants/languages.js +3 -3
- package/bin/core/interactive-setup.d.ts.map +1 -1
- package/bin/core/interactive-setup.js +20 -18
- package/bin/core/interactive-setup.js.map +1 -1
- package/bin/core/interactive-setup.test.js +11 -11
- package/bin/core/interactive-setup.test.js.map +1 -1
- package/bin/core/project-generator.d.ts.map +1 -1
- package/bin/core/project-generator.js +5 -10
- package/bin/core/project-generator.js.map +1 -1
- package/bin/features/index.js +12 -12
- package/bin/generators/docusaurus-config.js +48 -48
- package/bin/generators/docusaurus-config.js.map +1 -1
- package/bin/generators/package-json.js +14 -14
- package/bin/generators/package-json.js.map +1 -1
- package/bin/generators/template-files.d.ts.map +1 -1
- package/bin/generators/template-files.js +18 -15
- package/bin/generators/template-files.js.map +1 -1
- package/bin/index.d.ts.map +1 -1
- package/bin/index.js.map +1 -1
- package/bin/plugins/i18n-integration.d.ts.map +1 -1
- package/bin/plugins/i18n-integration.js +61 -60
- package/bin/plugins/i18n-integration.js.map +1 -1
- package/bin/plugins/plantuml-integration.d.ts.map +1 -1
- package/bin/plugins/plantuml-integration.js +12 -11
- package/bin/plugins/plantuml-integration.js.map +1 -1
- package/bin/plugins/redoc-integration.d.ts.map +1 -1
- package/bin/plugins/redoc-integration.js +13 -12
- package/bin/plugins/redoc-integration.js.map +1 -1
- package/bin/plugins/search-integration.d.ts.map +1 -1
- package/bin/plugins/search-integration.js +15 -11
- package/bin/plugins/search-integration.js.map +1 -1
- package/bin/templates/index.js +15 -15
- package/bin/templates/index.js.map +1 -1
- package/bin/templates/template-definitions.d.ts.map +1 -1
- package/bin/templates/template-definitions.js +228 -7
- package/bin/templates/template-definitions.js.map +1 -1
- package/bin/tests/integration.test.js +26 -24
- package/bin/tests/integration.test.js.map +1 -1
- package/bin/utils/config-merger.d.ts +1 -1
- package/bin/utils/config-merger.d.ts.map +1 -1
- package/bin/utils/config-merger.js +12 -14
- package/bin/utils/config-merger.js.map +1 -1
- package/bin/utils/install.d.ts.map +1 -1
- package/bin/utils/install.js +28 -4
- package/bin/utils/install.js.map +1 -1
- package/bin/utils/message-formatter.d.ts.map +1 -1
- package/bin/utils/message-formatter.js +1 -0
- package/bin/utils/message-formatter.js.map +1 -1
- package/bin/utils/template-processor.d.ts.map +1 -1
- package/bin/utils/template-processor.js +2 -2
- package/bin/utils/template-processor.js.map +1 -1
- package/bin/utils/version.js +3 -3
- package/bin/utils/version.js.map +1 -1
- package/package.json +3 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAM/D,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAM/D,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE/E,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,WAA+B,EAC/B,OAA8B;IAE9B,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,SAAS,GAAG,IAAI,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC5D,MAAM,SAAS,CAAC,QAAQ,EAAE,CAAC;QAE3B,0BAA0B;QAC1B,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAE/B,gBAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;YACxC,6CAA6C;YAC7C,OAAO;QACT,CAAC;QAED,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;YAC9B,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3B,MAAM,KAAK,CAAC;QACd,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACzE,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC5B,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"languages.d.ts","sourceRoot":"","sources":["../../src/constants/languages.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,IAAI;;;;;;;;;CASP,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,MAAM,OAAO,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"languages.d.ts","sourceRoot":"","sources":["../../src/constants/languages.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,IAAI;;;;;;;;;CASP,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,OAAO,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-setup.d.ts","sourceRoot":"","sources":["../../src/core/interactive-setup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"interactive-setup.d.ts","sourceRoot":"","sources":["../../src/core/interactive-setup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,qBAAqB,EACrB,cAAc,EAGf,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAQ,KAAK,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAGhE,qBAAa,gBAAgB;IAGf,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,gBAAgB,CAA0B;gBAE9B,OAAO,EAAE,qBAAqB;IAElD,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAEK,GAAG,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;YAmBjD,cAAc;IAgB5B,OAAO,CAAC,WAAW;YAYL,cAAc;YA4Cd,oBAAoB;YA0DpB,oBAAoB;CA4CnC"}
|
|
@@ -24,7 +24,7 @@ export class InteractiveSetup {
|
|
|
24
24
|
return {
|
|
25
25
|
projectName,
|
|
26
26
|
templates,
|
|
27
|
-
features
|
|
27
|
+
features,
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
30
|
async selectLanguage() {
|
|
@@ -32,8 +32,8 @@ export class InteractiveSetup {
|
|
|
32
32
|
message: 'Please select display language / 表示言語を選択してください:',
|
|
33
33
|
options: [
|
|
34
34
|
{ value: LANG.EN.code, label: LANG.EN.label },
|
|
35
|
-
{ value: LANG.JP.code, label: LANG.JP.label }
|
|
36
|
-
]
|
|
35
|
+
{ value: LANG.JP.code, label: LANG.JP.label },
|
|
36
|
+
],
|
|
37
37
|
});
|
|
38
38
|
if (isCancel(language)) {
|
|
39
39
|
throw new UserCancelledError();
|
|
@@ -80,7 +80,7 @@ export class InteractiveSetup {
|
|
|
80
80
|
? 'Only alphanumeric characters, hyphens, and underscores are allowed'
|
|
81
81
|
: '英数字、ハイフン、アンダースコアのみ使用可能です';
|
|
82
82
|
}
|
|
83
|
-
}
|
|
83
|
+
},
|
|
84
84
|
});
|
|
85
85
|
if (isCancel(projectName)) {
|
|
86
86
|
throw new UserCancelledError();
|
|
@@ -90,7 +90,7 @@ export class InteractiveSetup {
|
|
|
90
90
|
async getTemplateSelection() {
|
|
91
91
|
if (this.options.template) {
|
|
92
92
|
const templates = getAvailableTemplates(this.selectedLanguage);
|
|
93
|
-
const template = templates.find(t => t.name === this.options.template);
|
|
93
|
+
const template = templates.find((t) => t.name === this.options.template);
|
|
94
94
|
if (!template) {
|
|
95
95
|
throw new Error(`Template "${this.options.template}" not found`);
|
|
96
96
|
}
|
|
@@ -105,17 +105,17 @@ export class InteractiveSetup {
|
|
|
105
105
|
message: isEn
|
|
106
106
|
? 'Which templates would you like to use? (Multiple selection)'
|
|
107
107
|
: 'どのテンプレートを使用しますか?(複数選択可)',
|
|
108
|
-
options: templates.map(template => ({
|
|
108
|
+
options: templates.map((template) => ({
|
|
109
109
|
value: template.name,
|
|
110
110
|
label: template.displayName,
|
|
111
|
-
hint: template.description
|
|
111
|
+
hint: template.description,
|
|
112
112
|
})),
|
|
113
|
-
required: true
|
|
113
|
+
required: true,
|
|
114
114
|
});
|
|
115
115
|
if (isCancel(selectedTemplateNames)) {
|
|
116
116
|
throw new UserCancelledError();
|
|
117
117
|
}
|
|
118
|
-
const selectedTemplates = templates.filter(t => selectedTemplateNames.includes(t.name));
|
|
118
|
+
const selectedTemplates = templates.filter((t) => selectedTemplateNames.includes(t.name));
|
|
119
119
|
if (selectedTemplates.length === 0) {
|
|
120
120
|
throw new Error('No templates selected');
|
|
121
121
|
}
|
|
@@ -126,7 +126,9 @@ export class InteractiveSetup {
|
|
|
126
126
|
allFeatures.add(feature);
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
|
-
note(Array.from(allFeatures)
|
|
129
|
+
note(Array.from(allFeatures)
|
|
130
|
+
.map((feature) => `• ${feature}`)
|
|
131
|
+
.join('\n'), isEn
|
|
130
132
|
? 'Features supported by selected templates:'
|
|
131
133
|
: '選択したテンプレートがサポートする機能:');
|
|
132
134
|
return selectedTemplates;
|
|
@@ -140,11 +142,11 @@ export class InteractiveSetup {
|
|
|
140
142
|
allSupportedFeatures.add(feature);
|
|
141
143
|
}
|
|
142
144
|
}
|
|
143
|
-
const supportedFeatures = availableFeatures.filter(feature => allSupportedFeatures.has(feature.name));
|
|
145
|
+
const supportedFeatures = availableFeatures.filter((feature) => allSupportedFeatures.has(feature.name));
|
|
144
146
|
if (supportedFeatures.length === 0) {
|
|
145
|
-
return availableFeatures.map(feature => ({
|
|
147
|
+
return availableFeatures.map((feature) => ({
|
|
146
148
|
...feature,
|
|
147
|
-
enabled: false
|
|
149
|
+
enabled: false,
|
|
148
150
|
}));
|
|
149
151
|
}
|
|
150
152
|
const isEn = this.selectedLanguage === LANG.EN.code;
|
|
@@ -152,19 +154,19 @@ export class InteractiveSetup {
|
|
|
152
154
|
message: isEn
|
|
153
155
|
? 'Which additional features would you like to include?'
|
|
154
156
|
: 'どの追加機能を含めますか?',
|
|
155
|
-
options: supportedFeatures.map(feature => ({
|
|
157
|
+
options: supportedFeatures.map((feature) => ({
|
|
156
158
|
value: feature.name,
|
|
157
159
|
label: feature.displayName,
|
|
158
|
-
hint: feature.description
|
|
160
|
+
hint: feature.description,
|
|
159
161
|
})),
|
|
160
|
-
required: false
|
|
162
|
+
required: false,
|
|
161
163
|
});
|
|
162
164
|
if (isCancel(selectedFeatures)) {
|
|
163
165
|
throw new UserCancelledError();
|
|
164
166
|
}
|
|
165
|
-
return availableFeatures.map(feature => ({
|
|
167
|
+
return availableFeatures.map((feature) => ({
|
|
166
168
|
...feature,
|
|
167
|
-
enabled: selectedFeatures.includes(feature.name)
|
|
169
|
+
enabled: selectedFeatures.includes(feature.name),
|
|
168
170
|
}));
|
|
169
171
|
}
|
|
170
172
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-setup.js","sourceRoot":"","sources":["../../src/core/interactive-setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"interactive-setup.js","sourceRoot":"","sources":["../../src/core/interactive-setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ vi.mock('@clack/prompts', () => ({
|
|
|
7
7
|
intro: vi.fn(),
|
|
8
8
|
text: vi.fn(),
|
|
9
9
|
multiselect: vi.fn(),
|
|
10
|
-
note: vi.fn()
|
|
10
|
+
note: vi.fn(),
|
|
11
11
|
}));
|
|
12
12
|
// テンプレートとフィーチャーをモック
|
|
13
13
|
vi.mock('../templates/index.js', () => ({
|
|
@@ -16,9 +16,9 @@ vi.mock('../templates/index.js', () => ({
|
|
|
16
16
|
name: 'classic-spec',
|
|
17
17
|
displayName: 'Classic Specification',
|
|
18
18
|
description: 'Test template',
|
|
19
|
-
features: ['plantuml']
|
|
20
|
-
}
|
|
21
|
-
])
|
|
19
|
+
features: ['plantuml'],
|
|
20
|
+
},
|
|
21
|
+
]),
|
|
22
22
|
}));
|
|
23
23
|
vi.mock('../features/index.js', () => ({
|
|
24
24
|
getAvailableFeatures: vi.fn(() => [
|
|
@@ -26,9 +26,9 @@ vi.mock('../features/index.js', () => ({
|
|
|
26
26
|
name: 'plantuml',
|
|
27
27
|
displayName: 'PlantUML',
|
|
28
28
|
description: 'PlantUML integration',
|
|
29
|
-
enabled: false
|
|
30
|
-
}
|
|
31
|
-
])
|
|
29
|
+
enabled: false,
|
|
30
|
+
},
|
|
31
|
+
]),
|
|
32
32
|
}));
|
|
33
33
|
describe('InteractiveSetup with Validation', () => {
|
|
34
34
|
let setup;
|
|
@@ -37,7 +37,7 @@ describe('InteractiveSetup with Validation', () => {
|
|
|
37
37
|
mockOptions = {
|
|
38
38
|
template: undefined,
|
|
39
39
|
skipInstall: false,
|
|
40
|
-
verbose: false
|
|
40
|
+
verbose: false,
|
|
41
41
|
};
|
|
42
42
|
setup = new InteractiveSetup(mockOptions);
|
|
43
43
|
// console.logをモック
|
|
@@ -53,7 +53,7 @@ describe('InteractiveSetup with Validation', () => {
|
|
|
53
53
|
const options = {
|
|
54
54
|
template: 'classic-spec',
|
|
55
55
|
skipInstall: false,
|
|
56
|
-
verbose: false
|
|
56
|
+
verbose: false,
|
|
57
57
|
};
|
|
58
58
|
const setupWithTemplate = new InteractiveSetup(options);
|
|
59
59
|
// 有効なプロジェクト名でテスト
|
|
@@ -70,7 +70,7 @@ describe('InteractiveSetup with Validation', () => {
|
|
|
70
70
|
const options = {
|
|
71
71
|
template: 'classic-spec',
|
|
72
72
|
skipInstall: false,
|
|
73
|
-
verbose: false
|
|
73
|
+
verbose: false,
|
|
74
74
|
};
|
|
75
75
|
const setupWithTemplate = new InteractiveSetup(options);
|
|
76
76
|
// 無効なプロジェクト名でテスト
|
|
@@ -80,7 +80,7 @@ describe('InteractiveSetup with Validation', () => {
|
|
|
80
80
|
const options = {
|
|
81
81
|
template: 'invalid-template',
|
|
82
82
|
skipInstall: false,
|
|
83
|
-
verbose: false
|
|
83
|
+
verbose: false,
|
|
84
84
|
};
|
|
85
85
|
const setupWithTemplate = new InteractiveSetup(options);
|
|
86
86
|
await expect(setupWithTemplate.run('valid-project')).rejects.toThrow();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-setup.test.js","sourceRoot":"","sources":["../../src/core/interactive-setup.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D,qBAAqB;AACrB,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;IAC/B,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE;IACf,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;IAC5B,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;IACd,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;IACb,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE;IACpB,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;CACd,CAAC,CAAC,CAAC;AAEJ,oBAAoB;AACpB,EAAE,CAAC,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE,CAAC,CAAC;IACtC,qBAAqB,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACjC;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,uBAAuB;YACpC,WAAW,EAAE,eAAe;YAC5B,QAAQ,EAAE,CAAC,UAAU,CAAC;SACvB;KACF,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;IACrC,oBAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAChC;YACE,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,UAAU;YACvB,WAAW,EAAE,sBAAsB;YACnC,OAAO,EAAE,KAAK;SACf;KACF,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,IAAI,KAAuB,CAAC;IAC5B,IAAI,WAAkC,CAAC;IAEvC,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,WAAW,GAAG;YACZ,QAAQ,EAAE,SAAS;YACnB,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,KAAK;SACf,CAAC;QACF,KAAK,GAAG,IAAI,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAE1C,kBAAkB;QAClB,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"interactive-setup.test.js","sourceRoot":"","sources":["../../src/core/interactive-setup.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-generator.d.ts","sourceRoot":"","sources":["../../src/core/project-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAM/E,qBAAa,gBAAgB;IAIzB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,OAAO;IAJjB,OAAO,CAAC,WAAW,CAAS;gBAGlB,UAAU,EAAE,cAAc,EAC1B,OAAO,EAAE,qBAAqB;IAKlC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"project-generator.d.ts","sourceRoot":"","sources":["../../src/core/project-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAM/E,qBAAa,gBAAgB;IAIzB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,OAAO;IAJjB,OAAO,CAAC,WAAW,CAAS;gBAGlB,UAAU,EAAE,cAAc,EAC1B,OAAO,EAAE,qBAAqB;IAKlC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YA6CjB,sBAAsB;YAatB,mBAAmB;YAUnB,mBAAmB;CAGlC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { mkdir, writeFile } from 'fs/promises';
|
|
2
|
-
import { join, resolve } from 'path';
|
|
3
|
-
import { existsSync } from 'fs';
|
|
1
|
+
import { mkdir, writeFile } from 'node:fs/promises';
|
|
2
|
+
import { join, resolve } from 'node:path';
|
|
3
|
+
import { existsSync } from 'node:fs';
|
|
4
4
|
import { spinner, note } from '@clack/prompts';
|
|
5
5
|
import { generatePackageJson } from '../generators/package-json.js';
|
|
6
6
|
import { generateDocusaurusConfig } from '../generators/docusaurus-config.js';
|
|
@@ -41,7 +41,7 @@ export class ProjectGenerator {
|
|
|
41
41
|
await installDependencies(this.projectPath, { verbose: false });
|
|
42
42
|
s.stop('依存関係をインストールしました');
|
|
43
43
|
}
|
|
44
|
-
catch (
|
|
44
|
+
catch (_error) {
|
|
45
45
|
s.stop('依存関係のインストールに失敗しました');
|
|
46
46
|
note('プロジェクトは作成されましたが、依存関係のインストールに失敗しました。\n手動でインストールしてください:\n\n' +
|
|
47
47
|
`cd ${this.selections.projectName}\nni`, '警告');
|
|
@@ -57,12 +57,7 @@ export class ProjectGenerator {
|
|
|
57
57
|
// Create project root directory
|
|
58
58
|
await mkdir(this.projectPath, { recursive: true });
|
|
59
59
|
// Create basic directory structure
|
|
60
|
-
const directories = [
|
|
61
|
-
'docs',
|
|
62
|
-
'src/css',
|
|
63
|
-
'src/components',
|
|
64
|
-
'static/img'
|
|
65
|
-
];
|
|
60
|
+
const directories = ['docs', 'src/css', 'src/components', 'static/img'];
|
|
66
61
|
for (const dir of directories) {
|
|
67
62
|
const dirPath = join(this.projectPath, dir);
|
|
68
63
|
await mkdir(dirPath, { recursive: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-generator.js","sourceRoot":"","sources":["../../src/core/project-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"project-generator.js","sourceRoot":"","sources":["../../src/core/project-generator.ts"],"names":[],"mappings":"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"}
|
package/bin/features/index.js
CHANGED
|
@@ -9,9 +9,9 @@ export function getAvailableFeatures() {
|
|
|
9
9
|
plugin: 'docusaurus-theme-plantuml',
|
|
10
10
|
config: {
|
|
11
11
|
plantuml: {
|
|
12
|
-
server: 'https://www.plantuml.com/plantuml'
|
|
13
|
-
}
|
|
14
|
-
}
|
|
12
|
+
server: 'https://www.plantuml.com/plantuml',
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
15
|
},
|
|
16
16
|
{
|
|
17
17
|
name: 'redoc',
|
|
@@ -24,11 +24,11 @@ export function getAvailableFeatures() {
|
|
|
24
24
|
specs: [
|
|
25
25
|
{
|
|
26
26
|
spec: 'static/openapi.yaml',
|
|
27
|
-
route: '/api/'
|
|
28
|
-
}
|
|
29
|
-
]
|
|
30
|
-
}
|
|
31
|
-
}
|
|
27
|
+
route: '/api/',
|
|
28
|
+
},
|
|
29
|
+
],
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
32
|
},
|
|
33
33
|
{
|
|
34
34
|
name: 'i18n',
|
|
@@ -38,10 +38,10 @@ export function getAvailableFeatures() {
|
|
|
38
38
|
config: {
|
|
39
39
|
i18n: {
|
|
40
40
|
defaultLocale: LANG.EN.code,
|
|
41
|
-
locales: [LANG.EN.code, 'ja']
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
41
|
+
locales: [LANG.EN.code, 'ja'],
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
45
|
];
|
|
46
46
|
}
|
|
47
47
|
//# sourceMappingURL=index.js.map
|
|
@@ -5,7 +5,7 @@ import { I18nIntegration } from '../plugins/i18n-integration.js';
|
|
|
5
5
|
import { LANG } from '../constants/languages.js';
|
|
6
6
|
export function generateDocusaurusConfig(selections) {
|
|
7
7
|
const { projectName, templates, features } = selections;
|
|
8
|
-
const enabledFeatures = features.filter(f => f.enabled);
|
|
8
|
+
const enabledFeatures = features.filter((f) => f.enabled);
|
|
9
9
|
// 複数テンプレートに応じた基本設定(最初のテンプレートをベースにする)
|
|
10
10
|
const primaryTemplate = templates[0];
|
|
11
11
|
const baseConfig = getBaseConfigForTemplate(primaryTemplate.name, projectName);
|
|
@@ -28,16 +28,11 @@ function getBaseConfigForTemplate(templateName, projectName) {
|
|
|
28
28
|
onBrokenMarkdownLinks: 'warn',
|
|
29
29
|
i18n: {
|
|
30
30
|
defaultLocale: LANG.EN.code,
|
|
31
|
-
locales: [LANG.EN.code]
|
|
31
|
+
locales: [LANG.EN.code],
|
|
32
32
|
},
|
|
33
|
-
presets: [
|
|
34
|
-
[
|
|
35
|
-
'classic',
|
|
36
|
-
getPresetConfigForTemplate(templateName)
|
|
37
|
-
]
|
|
38
|
-
],
|
|
33
|
+
presets: [['classic', getPresetConfigForTemplate(templateName)]],
|
|
39
34
|
themeConfig: getThemeConfigForTemplate(templateName, projectName),
|
|
40
|
-
plugins: []
|
|
35
|
+
plugins: [],
|
|
41
36
|
};
|
|
42
37
|
return baseConfig;
|
|
43
38
|
}
|
|
@@ -46,7 +41,7 @@ function getTaglineForTemplate(templateName) {
|
|
|
46
41
|
'classic-spec': 'Classic Specification Documentation',
|
|
47
42
|
'api-spec': 'API Specification Documentation',
|
|
48
43
|
'technical-spec': 'Technical Specification Documentation',
|
|
49
|
-
'enterprise-spec': 'Enterprise Specification Documentation'
|
|
44
|
+
'enterprise-spec': 'Enterprise Specification Documentation',
|
|
50
45
|
};
|
|
51
46
|
return taglines[templateName] || 'Documentation Site';
|
|
52
47
|
}
|
|
@@ -54,11 +49,11 @@ function getPresetConfigForTemplate(templateName) {
|
|
|
54
49
|
const basePresetConfig = {
|
|
55
50
|
docs: {
|
|
56
51
|
sidebarPath: './sidebars.js',
|
|
57
|
-
editUrl: 'https://github.com/your-org/your-repo/tree/main/'
|
|
52
|
+
editUrl: 'https://github.com/your-org/your-repo/tree/main/',
|
|
58
53
|
},
|
|
59
54
|
theme: {
|
|
60
|
-
customCss: './src/css/custom.css'
|
|
61
|
-
}
|
|
55
|
+
customCss: './src/css/custom.css',
|
|
56
|
+
},
|
|
62
57
|
};
|
|
63
58
|
// テンプレートに応じてブログ機能を調整
|
|
64
59
|
if (templateName === 'classic-spec') {
|
|
@@ -66,14 +61,14 @@ function getPresetConfigForTemplate(templateName) {
|
|
|
66
61
|
...basePresetConfig,
|
|
67
62
|
blog: {
|
|
68
63
|
showReadingTime: true,
|
|
69
|
-
editUrl: 'https://github.com/your-org/your-repo/tree/main/'
|
|
70
|
-
}
|
|
64
|
+
editUrl: 'https://github.com/your-org/your-repo/tree/main/',
|
|
65
|
+
},
|
|
71
66
|
};
|
|
72
67
|
}
|
|
73
68
|
// 仕様書系テンプレートではブログを無効化
|
|
74
69
|
return {
|
|
75
70
|
...basePresetConfig,
|
|
76
|
-
blog: false
|
|
71
|
+
blog: false,
|
|
77
72
|
};
|
|
78
73
|
}
|
|
79
74
|
function getThemeConfigForTemplate(templateName, projectName) {
|
|
@@ -83,19 +78,19 @@ function getThemeConfigForTemplate(templateName, projectName) {
|
|
|
83
78
|
title: projectName,
|
|
84
79
|
logo: {
|
|
85
80
|
alt: `${projectName} Logo`,
|
|
86
|
-
src: 'img/logo.svg'
|
|
81
|
+
src: 'img/logo.svg',
|
|
87
82
|
},
|
|
88
|
-
items: getNavbarItemsForTemplate(templateName)
|
|
83
|
+
items: getNavbarItemsForTemplate(templateName),
|
|
89
84
|
},
|
|
90
85
|
footer: {
|
|
91
86
|
style: 'dark',
|
|
92
87
|
links: getFooterLinksForTemplate(templateName),
|
|
93
|
-
copyright: `Copyright © ${new Date().getFullYear()} ${projectName}. Built with Docusaurus
|
|
88
|
+
copyright: `Copyright © ${new Date().getFullYear()} ${projectName}. Built with Docusaurus.`,
|
|
94
89
|
},
|
|
95
90
|
prism: {
|
|
96
|
-
theme: 'github',
|
|
97
|
-
darkTheme: 'dracula'
|
|
98
|
-
}
|
|
91
|
+
theme: 'prism-react-renderer/themes/github',
|
|
92
|
+
darkTheme: 'prism-react-renderer/themes/dracula',
|
|
93
|
+
},
|
|
99
94
|
};
|
|
100
95
|
return baseThemeConfig;
|
|
101
96
|
}
|
|
@@ -104,8 +99,8 @@ function getNavbarItemsForTemplate(templateName) {
|
|
|
104
99
|
{
|
|
105
100
|
href: 'https://github.com/your-org/your-repo',
|
|
106
101
|
label: 'GitHub',
|
|
107
|
-
position: 'right'
|
|
108
|
-
}
|
|
102
|
+
position: 'right',
|
|
103
|
+
},
|
|
109
104
|
];
|
|
110
105
|
switch (templateName) {
|
|
111
106
|
case 'classic-spec':
|
|
@@ -114,9 +109,9 @@ function getNavbarItemsForTemplate(templateName) {
|
|
|
114
109
|
type: 'docSidebar',
|
|
115
110
|
sidebarId: 'tutorialSidebar',
|
|
116
111
|
position: 'left',
|
|
117
|
-
label: 'Documentation'
|
|
112
|
+
label: 'Documentation',
|
|
118
113
|
},
|
|
119
|
-
...baseItems
|
|
114
|
+
...baseItems,
|
|
120
115
|
];
|
|
121
116
|
case 'api-spec':
|
|
122
117
|
return [
|
|
@@ -124,15 +119,15 @@ function getNavbarItemsForTemplate(templateName) {
|
|
|
124
119
|
type: 'docSidebar',
|
|
125
120
|
sidebarId: 'apiSidebar',
|
|
126
121
|
position: 'left',
|
|
127
|
-
label: 'API Reference'
|
|
122
|
+
label: 'API Reference',
|
|
128
123
|
},
|
|
129
124
|
{
|
|
130
125
|
type: 'docSidebar',
|
|
131
126
|
sidebarId: 'guidesSidebar',
|
|
132
127
|
position: 'left',
|
|
133
|
-
label: 'Guides'
|
|
128
|
+
label: 'Guides',
|
|
134
129
|
},
|
|
135
|
-
...baseItems
|
|
130
|
+
...baseItems,
|
|
136
131
|
];
|
|
137
132
|
case 'technical-spec':
|
|
138
133
|
return [
|
|
@@ -140,15 +135,15 @@ function getNavbarItemsForTemplate(templateName) {
|
|
|
140
135
|
type: 'docSidebar',
|
|
141
136
|
sidebarId: 'architectureSidebar',
|
|
142
137
|
position: 'left',
|
|
143
|
-
label: 'Architecture'
|
|
138
|
+
label: 'Architecture',
|
|
144
139
|
},
|
|
145
140
|
{
|
|
146
141
|
type: 'docSidebar',
|
|
147
142
|
sidebarId: 'implementationSidebar',
|
|
148
143
|
position: 'left',
|
|
149
|
-
label: 'Implementation'
|
|
144
|
+
label: 'Implementation',
|
|
150
145
|
},
|
|
151
|
-
...baseItems
|
|
146
|
+
...baseItems,
|
|
152
147
|
];
|
|
153
148
|
case 'enterprise-spec':
|
|
154
149
|
return [
|
|
@@ -156,21 +151,21 @@ function getNavbarItemsForTemplate(templateName) {
|
|
|
156
151
|
type: 'docSidebar',
|
|
157
152
|
sidebarId: 'overviewSidebar',
|
|
158
153
|
position: 'left',
|
|
159
|
-
label: 'Overview'
|
|
154
|
+
label: 'Overview',
|
|
160
155
|
},
|
|
161
156
|
{
|
|
162
157
|
type: 'docSidebar',
|
|
163
158
|
sidebarId: 'specificationSidebar',
|
|
164
159
|
position: 'left',
|
|
165
|
-
label: 'Specifications'
|
|
160
|
+
label: 'Specifications',
|
|
166
161
|
},
|
|
167
162
|
{
|
|
168
163
|
type: 'docSidebar',
|
|
169
164
|
sidebarId: 'processSidebar',
|
|
170
165
|
position: 'left',
|
|
171
|
-
label: 'Processes'
|
|
166
|
+
label: 'Processes',
|
|
172
167
|
},
|
|
173
|
-
...baseItems
|
|
168
|
+
...baseItems,
|
|
174
169
|
];
|
|
175
170
|
default:
|
|
176
171
|
return [
|
|
@@ -178,32 +173,32 @@ function getNavbarItemsForTemplate(templateName) {
|
|
|
178
173
|
type: 'docSidebar',
|
|
179
174
|
sidebarId: 'tutorialSidebar',
|
|
180
175
|
position: 'left',
|
|
181
|
-
label: 'Documentation'
|
|
176
|
+
label: 'Documentation',
|
|
182
177
|
},
|
|
183
|
-
...baseItems
|
|
178
|
+
...baseItems,
|
|
184
179
|
];
|
|
185
180
|
}
|
|
186
181
|
}
|
|
187
|
-
function getFooterLinksForTemplate(
|
|
182
|
+
function getFooterLinksForTemplate(_templateName) {
|
|
188
183
|
const baseLinks = [
|
|
189
184
|
{
|
|
190
185
|
title: 'Community',
|
|
191
186
|
items: [
|
|
192
187
|
{
|
|
193
188
|
label: 'GitHub',
|
|
194
|
-
href: 'https://github.com/your-org/your-repo'
|
|
195
|
-
}
|
|
196
|
-
]
|
|
197
|
-
}
|
|
189
|
+
href: 'https://github.com/your-org/your-repo',
|
|
190
|
+
},
|
|
191
|
+
],
|
|
192
|
+
},
|
|
198
193
|
];
|
|
199
194
|
const docLinks = {
|
|
200
195
|
title: 'Documentation',
|
|
201
196
|
items: [
|
|
202
197
|
{
|
|
203
198
|
label: 'Getting Started',
|
|
204
|
-
to: '/docs/intro'
|
|
205
|
-
}
|
|
206
|
-
]
|
|
199
|
+
to: '/docs/intro',
|
|
200
|
+
},
|
|
201
|
+
],
|
|
207
202
|
};
|
|
208
203
|
return [docLinks, ...baseLinks];
|
|
209
204
|
}
|
|
@@ -253,7 +248,7 @@ function validateConfig(config) {
|
|
|
253
248
|
try {
|
|
254
249
|
new URL(config.url);
|
|
255
250
|
}
|
|
256
|
-
catch (
|
|
251
|
+
catch (_error) {
|
|
257
252
|
throw new Error(`Invalid URL format: ${config.url}`);
|
|
258
253
|
}
|
|
259
254
|
// プリセット設定の検証
|
|
@@ -262,11 +257,16 @@ function validateConfig(config) {
|
|
|
262
257
|
}
|
|
263
258
|
}
|
|
264
259
|
function generateConfigString(config) {
|
|
260
|
+
// Prismテーマの設定を特別に処理
|
|
261
|
+
let configString = JSON.stringify(config, null, 2);
|
|
262
|
+
// Prismテーマの文字列をrequire文に置換
|
|
263
|
+
configString = configString.replace('"prism-react-renderer/themes/github"', 'require("prism-react-renderer").themes.github');
|
|
264
|
+
configString = configString.replace('"prism-react-renderer/themes/dracula"', 'require("prism-react-renderer").themes.dracula');
|
|
265
265
|
return `// @ts-check
|
|
266
266
|
// Note: type annotations allow type checking and IDEs autocompletion
|
|
267
267
|
|
|
268
268
|
/** @type {import('@docusaurus/types').Config} */
|
|
269
|
-
const config = ${
|
|
269
|
+
const config = ${configString};
|
|
270
270
|
|
|
271
271
|
module.exports = config;`;
|
|
272
272
|
}
|