specweave 0.8.2 → 0.8.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.
- package/.claude-plugin/marketplace.json +11 -0
- package/dist/adapters/adapter-loader.d.ts +4 -4
- package/dist/adapters/adapter-loader.d.ts.map +1 -1
- package/dist/adapters/adapter-loader.js +8 -7
- package/dist/adapters/adapter-loader.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +78 -21
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/metrics/calculators/change-failure-rate.d.ts +1 -1
- package/dist/metrics/calculators/change-failure-rate.d.ts.map +1 -1
- package/dist/metrics/calculators/change-failure-rate.js +1 -1
- package/dist/metrics/calculators/change-failure-rate.js.map +1 -1
- package/dist/metrics/calculators/deployment-frequency.d.ts +1 -1
- package/dist/metrics/calculators/deployment-frequency.d.ts.map +1 -1
- package/dist/metrics/calculators/deployment-frequency.js +1 -1
- package/dist/metrics/calculators/deployment-frequency.js.map +1 -1
- package/dist/metrics/calculators/lead-time.d.ts +1 -1
- package/dist/metrics/calculators/lead-time.d.ts.map +1 -1
- package/dist/metrics/calculators/lead-time.js +2 -2
- package/dist/metrics/calculators/lead-time.js.map +1 -1
- package/dist/metrics/calculators/mttr.d.ts +1 -1
- package/dist/metrics/calculators/mttr.d.ts.map +1 -1
- package/dist/metrics/calculators/mttr.js +2 -2
- package/dist/metrics/calculators/mttr.js.map +1 -1
- package/dist/metrics/dora-calculator.d.ts +2 -2
- package/dist/metrics/dora-calculator.d.ts.map +1 -1
- package/dist/metrics/dora-calculator.js +5 -5
- package/dist/metrics/dora-calculator.js.map +1 -1
- package/dist/metrics/github-client.d.ts +1 -1
- package/dist/metrics/github-client.d.ts.map +1 -1
- package/dist/metrics/utils/tier-classifier.d.ts +1 -1
- package/dist/metrics/utils/tier-classifier.d.ts.map +1 -1
- package/dist/utils/docs-preview/config-generator.d.ts +46 -0
- package/dist/utils/docs-preview/config-generator.d.ts.map +1 -0
- package/dist/utils/docs-preview/config-generator.js +377 -0
- package/dist/utils/docs-preview/config-generator.js.map +1 -0
- package/dist/utils/docs-preview/docusaurus-setup.d.ts +38 -0
- package/dist/utils/docs-preview/docusaurus-setup.d.ts.map +1 -0
- package/dist/utils/docs-preview/docusaurus-setup.js +177 -0
- package/dist/utils/docs-preview/docusaurus-setup.js.map +1 -0
- package/dist/utils/docs-preview/index.d.ts +11 -0
- package/dist/utils/docs-preview/index.d.ts.map +1 -0
- package/dist/utils/docs-preview/index.js +17 -0
- package/dist/utils/docs-preview/index.js.map +1 -0
- package/dist/utils/docs-preview/package-installer.d.ts +42 -0
- package/dist/utils/docs-preview/package-installer.d.ts.map +1 -0
- package/dist/utils/docs-preview/package-installer.js +182 -0
- package/dist/utils/docs-preview/package-installer.js.map +1 -0
- package/dist/utils/docs-preview/server-manager.d.ts +30 -0
- package/dist/utils/docs-preview/server-manager.d.ts.map +1 -0
- package/dist/utils/docs-preview/server-manager.js +207 -0
- package/dist/utils/docs-preview/server-manager.js.map +1 -0
- package/dist/utils/docs-preview/sidebar-builder.d.ts +31 -0
- package/dist/utils/docs-preview/sidebar-builder.d.ts.map +1 -0
- package/dist/utils/docs-preview/sidebar-builder.js +202 -0
- package/dist/utils/docs-preview/sidebar-builder.js.map +1 -0
- package/dist/utils/docs-preview/types.d.ts +60 -0
- package/dist/utils/docs-preview/types.d.ts.map +1 -0
- package/dist/utils/docs-preview/types.js +5 -0
- package/dist/utils/docs-preview/types.js.map +1 -0
- package/dist/utils/docs-preview.bak/config-generator.d.ts +46 -0
- package/dist/utils/docs-preview.bak/config-generator.d.ts.map +1 -0
- package/dist/utils/docs-preview.bak/config-generator.js +377 -0
- package/dist/utils/docs-preview.bak/config-generator.js.map +1 -0
- package/dist/utils/docs-preview.bak/package-installer.d.ts +42 -0
- package/dist/utils/docs-preview.bak/package-installer.d.ts.map +1 -0
- package/dist/utils/docs-preview.bak/package-installer.js +182 -0
- package/dist/utils/docs-preview.bak/package-installer.js.map +1 -0
- package/dist/utils/docs-preview.bak/server-manager.d.ts +30 -0
- package/dist/utils/docs-preview.bak/server-manager.d.ts.map +1 -0
- package/dist/utils/docs-preview.bak/server-manager.js +207 -0
- package/dist/utils/docs-preview.bak/server-manager.js.map +1 -0
- package/dist/utils/docs-preview.bak/sidebar-builder.d.ts +31 -0
- package/dist/utils/docs-preview.bak/sidebar-builder.d.ts.map +1 -0
- package/dist/utils/docs-preview.bak/sidebar-builder.js +202 -0
- package/dist/utils/docs-preview.bak/sidebar-builder.js.map +1 -0
- package/dist/utils/docs-preview.bak/types.d.ts +60 -0
- package/dist/utils/docs-preview.bak/types.d.ts.map +1 -0
- package/dist/utils/docs-preview.bak/types.js +5 -0
- package/dist/utils/docs-preview.bak/types.js.map +1 -0
- package/package.json +2 -1
- package/dist/cli/commands/plugin.js +0 -322
- package/dist/cli/commands/plugin.js.map +0 -1
- package/dist/core/plugin-detector.d.ts +0 -97
- package/dist/core/plugin-detector.d.ts.map +0 -1
- package/dist/core/plugin-detector.js +0 -374
- package/dist/core/plugin-detector.js.map +0 -1
- package/dist/core/plugin-manager.d.ts +0 -144
- package/dist/core/plugin-manager.d.ts.map +0 -1
- package/dist/core/plugin-manager.js +0 -393
- package/dist/core/plugin-manager.js.map +0 -1
- package/dist/utils/plugin-detection.js +0 -229
- package/dist/utils/plugin-detection.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lead-time.js","sourceRoot":"","sources":["../../../src/metrics/calculators/lead-time.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"lead-time.js","sourceRoot":"","sources":["../../../src/metrics/calculators/lead-time.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Calculates average time to recover from incidents (DORA metric #4)
|
|
5
5
|
* Data source: GitHub Issues with labels "incident" or "production-bug"
|
|
6
6
|
*/
|
|
7
|
-
import { Issue, MTTRMetric } from '../types';
|
|
7
|
+
import { Issue, MTTRMetric } from '../types.js';
|
|
8
8
|
/**
|
|
9
9
|
* Calculate Mean Time to Recovery (MTTR)
|
|
10
10
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mttr.d.ts","sourceRoot":"","sources":["../../../src/metrics/calculators/mttr.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"mttr.d.ts","sourceRoot":"","sources":["../../../src/metrics/calculators/mttr.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIhD;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAiDzD"}
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* Calculates average time to recover from incidents (DORA metric #4)
|
|
5
5
|
* Data source: GitHub Issues with labels "incident" or "production-bug"
|
|
6
6
|
*/
|
|
7
|
-
import { classifyMTTR } from '../utils/tier-classifier';
|
|
8
|
-
import { calculatePercentile } from '../utils/percentile';
|
|
7
|
+
import { classifyMTTR } from '../utils/tier-classifier.js';
|
|
8
|
+
import { calculatePercentile } from '../utils/percentile.js';
|
|
9
9
|
/**
|
|
10
10
|
* Calculate Mean Time to Recovery (MTTR)
|
|
11
11
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mttr.js","sourceRoot":"","sources":["../../../src/metrics/calculators/mttr.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"mttr.js","sourceRoot":"","sources":["../../../src/metrics/calculators/mttr.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,MAAe;IAC3C,0BAA0B;IAC1B,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CACnC,KAAK,CAAC,EAAE,CACN,KAAK,CAAC,KAAK,KAAK,QAAQ;QACxB,KAAK,CAAC,SAAS,KAAK,IAAI;QACxB,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CACxB,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAC7D,CACJ,CAAC;IAEF,+BAA+B;IAC/B,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,CAAC;SACP,CAAC;IACJ,CAAC;IAED,wCAAwC;IACxC,MAAM,aAAa,GAAa,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;QAC7D,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAU,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;QAC5D,OAAO,UAAU,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAE,qBAAqB;IACzD,CAAC,CAAC,CAAC;IAEH,uBAAuB;IACvB,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC;IAC1F,MAAM,GAAG,GAAG,mBAAmB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,mBAAmB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAEnD,gBAAgB;IAChB,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAEvC,0BAA0B;IAC1B,MAAM,IAAI,GAAG,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,GAAG,EAAE,CAAC;IAElE,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,EAAG,qBAAqB;QAC1D,IAAI;QACJ,IAAI;QACJ,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE;QAC9B,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE;KAC/B,CAAC;AACJ,CAAC"}
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
* Main orchestrator that calculates all 4 DORA metrics
|
|
6
6
|
* Entry point for CLI and GitHub Actions workflow
|
|
7
7
|
*/
|
|
8
|
-
import { GitHubClient } from './github-client';
|
|
9
|
-
import { DORAMetrics } from './types';
|
|
8
|
+
import { GitHubClient } from './github-client.js';
|
|
9
|
+
import { DORAMetrics } from './types.js';
|
|
10
10
|
/**
|
|
11
11
|
* Calculate all DORA metrics
|
|
12
12
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dora-calculator.d.ts","sourceRoot":"","sources":["../../src/metrics/dora-calculator.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"dora-calculator.d.ts","sourceRoot":"","sources":["../../src/metrics/dora-calculator.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKlD,OAAO,EAAE,WAAW,EAAgB,MAAM,YAAY,CAAC;AAEvD;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAyCrF;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAY7E"}
|
|
@@ -7,11 +7,11 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import * as fs from 'fs';
|
|
9
9
|
import * as path from 'path';
|
|
10
|
-
import { GitHubClient } from './github-client';
|
|
11
|
-
import { calculateDeploymentFrequency } from './calculators/deployment-frequency';
|
|
12
|
-
import { calculateLeadTime } from './calculators/lead-time';
|
|
13
|
-
import { calculateChangeFailureRate } from './calculators/change-failure-rate';
|
|
14
|
-
import { calculateMTTR } from './calculators/mttr';
|
|
10
|
+
import { GitHubClient } from './github-client.js';
|
|
11
|
+
import { calculateDeploymentFrequency } from './calculators/deployment-frequency.js';
|
|
12
|
+
import { calculateLeadTime } from './calculators/lead-time.js';
|
|
13
|
+
import { calculateChangeFailureRate } from './calculators/change-failure-rate.js';
|
|
14
|
+
import { calculateMTTR } from './calculators/mttr.js';
|
|
15
15
|
/**
|
|
16
16
|
* Calculate all DORA metrics
|
|
17
17
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dora-calculator.js","sourceRoot":"","sources":["../../src/metrics/dora-calculator.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"dora-calculator.js","sourceRoot":"","sources":["../../src/metrics/dora-calculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Wrapper around Octokit for fetching DORA metrics data
|
|
5
5
|
* Handles authentication, rate limiting, and error handling
|
|
6
6
|
*/
|
|
7
|
-
import { Release, Commit, Issue, GitHubConfig } from './types';
|
|
7
|
+
import { Release, Commit, Issue, GitHubConfig } from './types.js';
|
|
8
8
|
/**
|
|
9
9
|
* GitHub API Client for DORA Metrics
|
|
10
10
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github-client.d.ts","sourceRoot":"","sources":["../../src/metrics/github-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"github-client.d.ts","sourceRoot":"","sources":["../../src/metrics/github-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AASlE;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,IAAI,CAAS;gBAET,MAAM,EAAE,YAAY;IAQhC;;;;;OAKG;IACG,WAAW,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAsBlD;;;;;;OAMG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAoB7D;;;;;;OAMG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAqBhE;;;;;;;;;OASG;YACW,eAAe;CAiB9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tier-classifier.d.ts","sourceRoot":"","sources":["../../../src/metrics/utils/tier-classifier.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"tier-classifier.d.ts","sourceRoot":"","sources":["../../../src/metrics/utils/tier-classifier.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CAAC,cAAc,EAAE,MAAM,GAAG,QAAQ,CAM5E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAMxD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,CAMtE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,CAMtD"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Docusaurus configuration generator
|
|
3
|
+
* Generates docusaurus.config.js with sensible defaults
|
|
4
|
+
*/
|
|
5
|
+
import { DocusaurusConfig } from './types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Generate docusaurus.config.js content
|
|
8
|
+
*/
|
|
9
|
+
export declare function generateDocusaurusConfig(config: DocusaurusConfig): string;
|
|
10
|
+
/**
|
|
11
|
+
* Write docusaurus.config.js to file
|
|
12
|
+
*/
|
|
13
|
+
export declare function writeDocusaurusConfig(targetDir: string, config: DocusaurusConfig): Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* Generate package.json for Docusaurus site
|
|
16
|
+
*/
|
|
17
|
+
export declare function generatePackageJSON(title: string): string;
|
|
18
|
+
/**
|
|
19
|
+
* Write package.json to file
|
|
20
|
+
*/
|
|
21
|
+
export declare function writePackageJSON(targetDir: string, title: string): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* Generate custom CSS for theme customization
|
|
24
|
+
*/
|
|
25
|
+
export declare function generateCustomCSS(theme: 'default' | 'classic' | 'dark'): string;
|
|
26
|
+
/**
|
|
27
|
+
* Write custom CSS to file
|
|
28
|
+
*/
|
|
29
|
+
export declare function writeCustomCSS(targetDir: string, theme: 'default' | 'classic' | 'dark'): Promise<void>;
|
|
30
|
+
/**
|
|
31
|
+
* Generate index page (landing page)
|
|
32
|
+
*/
|
|
33
|
+
export declare function generateIndexPage(title: string, tagline: string): string;
|
|
34
|
+
/**
|
|
35
|
+
* Write index page to file
|
|
36
|
+
*/
|
|
37
|
+
export declare function writeIndexPage(targetDir: string, title: string, tagline: string): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* Generate index.module.css for landing page styles
|
|
40
|
+
*/
|
|
41
|
+
export declare function generateIndexModuleCSS(): string;
|
|
42
|
+
/**
|
|
43
|
+
* Write index.module.css to file
|
|
44
|
+
*/
|
|
45
|
+
export declare function writeIndexModuleCSS(targetDir: string): Promise<void>;
|
|
46
|
+
//# sourceMappingURL=config-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-generator.d.ts","sourceRoot":"","sources":["../../../src/utils/docs-preview/config-generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAqHzE;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAMtG;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAmCzD;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMtF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CA8E/E;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAM5G;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CA8DxE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMrG;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAsB/C;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAM1E"}
|
|
@@ -0,0 +1,377 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Docusaurus configuration generator
|
|
3
|
+
* Generates docusaurus.config.js with sensible defaults
|
|
4
|
+
*/
|
|
5
|
+
import * as path from 'path';
|
|
6
|
+
import * as fs from 'fs-extra';
|
|
7
|
+
/**
|
|
8
|
+
* Generate docusaurus.config.js content
|
|
9
|
+
*/
|
|
10
|
+
export function generateDocusaurusConfig(config) {
|
|
11
|
+
const { title, tagline, url, baseUrl, docsPath, theme = 'default' } = config;
|
|
12
|
+
return `// @ts-check
|
|
13
|
+
// This is a Docusaurus site configuration object.
|
|
14
|
+
// Auto-generated by SpecWeave docs-preview plugin
|
|
15
|
+
// Generated: ${new Date().toISOString()}
|
|
16
|
+
|
|
17
|
+
import {themes as prismThemes} from 'prism-react-renderer';
|
|
18
|
+
|
|
19
|
+
/** @type {import('@docusaurus/types').Config} */
|
|
20
|
+
const config = {
|
|
21
|
+
title: '${title}',
|
|
22
|
+
tagline: '${tagline}',
|
|
23
|
+
favicon: 'img/favicon.ico',
|
|
24
|
+
|
|
25
|
+
// Production URL
|
|
26
|
+
url: '${url}',
|
|
27
|
+
baseUrl: '${baseUrl}',
|
|
28
|
+
|
|
29
|
+
// GitHub Pages deployment config
|
|
30
|
+
organizationName: 'your-org',
|
|
31
|
+
projectName: 'your-repo',
|
|
32
|
+
|
|
33
|
+
onBrokenLinks: 'warn',
|
|
34
|
+
onBrokenMarkdownLinks: 'warn',
|
|
35
|
+
|
|
36
|
+
// Internationalization
|
|
37
|
+
i18n: {
|
|
38
|
+
defaultLocale: 'en',
|
|
39
|
+
locales: ['en'],
|
|
40
|
+
},
|
|
41
|
+
|
|
42
|
+
presets: [
|
|
43
|
+
[
|
|
44
|
+
'classic',
|
|
45
|
+
/** @type {import('@docusaurus/preset-classic').Options} */
|
|
46
|
+
({
|
|
47
|
+
docs: {
|
|
48
|
+
routeBasePath: '/',
|
|
49
|
+
path: '${docsPath}',
|
|
50
|
+
sidebarPath: './sidebars.js',
|
|
51
|
+
editUrl: undefined, // Disable "Edit this page" for internal docs
|
|
52
|
+
},
|
|
53
|
+
blog: false, // Disable blog
|
|
54
|
+
theme: {
|
|
55
|
+
customCss: './src/css/custom.css',
|
|
56
|
+
},
|
|
57
|
+
}),
|
|
58
|
+
],
|
|
59
|
+
],
|
|
60
|
+
|
|
61
|
+
themeConfig:
|
|
62
|
+
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
|
|
63
|
+
({
|
|
64
|
+
// Social card image (optional)
|
|
65
|
+
image: 'img/docusaurus-social-card.jpg',
|
|
66
|
+
|
|
67
|
+
navbar: {
|
|
68
|
+
title: '${title}',
|
|
69
|
+
logo: {
|
|
70
|
+
alt: '${title} Logo',
|
|
71
|
+
src: 'img/logo.svg',
|
|
72
|
+
},
|
|
73
|
+
items: [
|
|
74
|
+
{
|
|
75
|
+
type: 'docSidebar',
|
|
76
|
+
sidebarId: 'docs',
|
|
77
|
+
position: 'left',
|
|
78
|
+
label: 'Documentation',
|
|
79
|
+
},
|
|
80
|
+
],
|
|
81
|
+
},
|
|
82
|
+
|
|
83
|
+
footer: {
|
|
84
|
+
style: 'dark',
|
|
85
|
+
links: [
|
|
86
|
+
{
|
|
87
|
+
title: 'Documentation',
|
|
88
|
+
items: [
|
|
89
|
+
{
|
|
90
|
+
label: 'Strategy',
|
|
91
|
+
to: '/strategy',
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
label: 'Architecture',
|
|
95
|
+
to: '/architecture',
|
|
96
|
+
},
|
|
97
|
+
],
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
copyright: \`Copyright © \${new Date().getFullYear()} SpecWeave. Built with Docusaurus.\`,
|
|
101
|
+
},
|
|
102
|
+
|
|
103
|
+
prism: {
|
|
104
|
+
theme: prismThemes.github,
|
|
105
|
+
darkTheme: prismThemes.dracula,
|
|
106
|
+
additionalLanguages: ['bash', 'typescript', 'javascript', 'json', 'yaml'],
|
|
107
|
+
},
|
|
108
|
+
}),
|
|
109
|
+
|
|
110
|
+
// Mermaid diagrams support
|
|
111
|
+
markdown: {
|
|
112
|
+
mermaid: true,
|
|
113
|
+
},
|
|
114
|
+
themes: ['@docusaurus/theme-mermaid'],
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
export default config;
|
|
118
|
+
`;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Write docusaurus.config.js to file
|
|
122
|
+
*/
|
|
123
|
+
export async function writeDocusaurusConfig(targetDir, config) {
|
|
124
|
+
const configPath = path.join(targetDir, 'docusaurus.config.js');
|
|
125
|
+
const content = generateDocusaurusConfig(config);
|
|
126
|
+
await fs.ensureDir(targetDir);
|
|
127
|
+
await fs.writeFile(configPath, content, 'utf-8');
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Generate package.json for Docusaurus site
|
|
131
|
+
*/
|
|
132
|
+
export function generatePackageJSON(title) {
|
|
133
|
+
return JSON.stringify({
|
|
134
|
+
name: 'specweave-docs',
|
|
135
|
+
version: '1.0.0',
|
|
136
|
+
description: `${title} - Documentation Site`,
|
|
137
|
+
private: true,
|
|
138
|
+
scripts: {
|
|
139
|
+
docusaurus: 'docusaurus',
|
|
140
|
+
start: 'docusaurus start',
|
|
141
|
+
build: 'docusaurus build',
|
|
142
|
+
swizzle: 'docusaurus swizzle',
|
|
143
|
+
deploy: 'docusaurus deploy',
|
|
144
|
+
clear: 'docusaurus clear',
|
|
145
|
+
serve: 'docusaurus serve',
|
|
146
|
+
'write-translations': 'docusaurus write-translations',
|
|
147
|
+
'write-heading-ids': 'docusaurus write-heading-ids'
|
|
148
|
+
},
|
|
149
|
+
dependencies: {
|
|
150
|
+
'@docusaurus/core': '^3.0.0',
|
|
151
|
+
'@docusaurus/preset-classic': '^3.0.0',
|
|
152
|
+
'@docusaurus/theme-mermaid': '^3.0.0',
|
|
153
|
+
'@mdx-js/react': '^3.0.0',
|
|
154
|
+
'clsx': '^2.0.0',
|
|
155
|
+
'prism-react-renderer': '^2.1.0',
|
|
156
|
+
'react': '^18.0.0',
|
|
157
|
+
'react-dom': '^18.0.0'
|
|
158
|
+
},
|
|
159
|
+
devDependencies: {
|
|
160
|
+
'@docusaurus/module-type-aliases': '^3.0.0',
|
|
161
|
+
'@docusaurus/types': '^3.0.0'
|
|
162
|
+
},
|
|
163
|
+
engines: {
|
|
164
|
+
node: '>=18.0'
|
|
165
|
+
}
|
|
166
|
+
}, null, 2);
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Write package.json to file
|
|
170
|
+
*/
|
|
171
|
+
export async function writePackageJSON(targetDir, title) {
|
|
172
|
+
const packagePath = path.join(targetDir, 'package.json');
|
|
173
|
+
const content = generatePackageJSON(title);
|
|
174
|
+
await fs.ensureDir(targetDir);
|
|
175
|
+
await fs.writeFile(packagePath, content, 'utf-8');
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Generate custom CSS for theme customization
|
|
179
|
+
*/
|
|
180
|
+
export function generateCustomCSS(theme) {
|
|
181
|
+
const themes = {
|
|
182
|
+
default: `
|
|
183
|
+
:root {
|
|
184
|
+
--ifm-color-primary: #2e8555;
|
|
185
|
+
--ifm-color-primary-dark: #29784c;
|
|
186
|
+
--ifm-color-primary-darker: #277148;
|
|
187
|
+
--ifm-color-primary-darkest: #205d3b;
|
|
188
|
+
--ifm-color-primary-light: #33925d;
|
|
189
|
+
--ifm-color-primary-lighter: #359962;
|
|
190
|
+
--ifm-color-primary-lightest: #3cad6e;
|
|
191
|
+
--ifm-code-font-size: 95%;
|
|
192
|
+
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
[data-theme='dark'] {
|
|
196
|
+
--ifm-color-primary: #25c2a0;
|
|
197
|
+
--ifm-color-primary-dark: #21af90;
|
|
198
|
+
--ifm-color-primary-darker: #1fa588;
|
|
199
|
+
--ifm-color-primary-darkest: #1a8870;
|
|
200
|
+
--ifm-color-primary-light: #29d5b0;
|
|
201
|
+
--ifm-color-primary-lighter: #32d8b4;
|
|
202
|
+
--ifm-color-primary-lightest: #4fddbf;
|
|
203
|
+
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
|
|
204
|
+
}
|
|
205
|
+
`,
|
|
206
|
+
classic: `
|
|
207
|
+
:root {
|
|
208
|
+
--ifm-color-primary: #0066cc;
|
|
209
|
+
--ifm-color-primary-dark: #005cb8;
|
|
210
|
+
--ifm-color-primary-darker: #0056ad;
|
|
211
|
+
--ifm-color-primary-darkest: #00478f;
|
|
212
|
+
--ifm-color-primary-light: #0070e0;
|
|
213
|
+
--ifm-color-primary-lighter: #0076eb;
|
|
214
|
+
--ifm-color-primary-lightest: #1a85ff;
|
|
215
|
+
--ifm-code-font-size: 95%;
|
|
216
|
+
}
|
|
217
|
+
`,
|
|
218
|
+
dark: `
|
|
219
|
+
:root {
|
|
220
|
+
--ifm-color-primary: #1e1e1e;
|
|
221
|
+
--ifm-background-color: #0d1117;
|
|
222
|
+
--ifm-code-font-size: 95%;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
[data-theme='dark'] {
|
|
226
|
+
--ifm-color-primary: #58a6ff;
|
|
227
|
+
--ifm-background-color: #0d1117;
|
|
228
|
+
}
|
|
229
|
+
`
|
|
230
|
+
};
|
|
231
|
+
return `/**
|
|
232
|
+
* Custom CSS for SpecWeave documentation
|
|
233
|
+
* Theme: ${theme}
|
|
234
|
+
* Auto-generated by SpecWeave docs-preview plugin
|
|
235
|
+
*/
|
|
236
|
+
|
|
237
|
+
${themes[theme]}
|
|
238
|
+
|
|
239
|
+
/* Custom styles */
|
|
240
|
+
.markdown {
|
|
241
|
+
--ifm-h1-font-size: 2rem;
|
|
242
|
+
--ifm-h2-font-size: 1.5rem;
|
|
243
|
+
--ifm-h3-font-size: 1.25rem;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
/* Code blocks */
|
|
247
|
+
.prism-code {
|
|
248
|
+
font-size: 0.9rem;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
/* Mermaid diagrams */
|
|
252
|
+
.docusaurus-mermaid-container {
|
|
253
|
+
text-align: center;
|
|
254
|
+
margin: 2rem 0;
|
|
255
|
+
}
|
|
256
|
+
`;
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Write custom CSS to file
|
|
260
|
+
*/
|
|
261
|
+
export async function writeCustomCSS(targetDir, theme) {
|
|
262
|
+
const cssPath = path.join(targetDir, 'src', 'css', 'custom.css');
|
|
263
|
+
const content = generateCustomCSS(theme);
|
|
264
|
+
await fs.ensureDir(path.dirname(cssPath));
|
|
265
|
+
await fs.writeFile(cssPath, content, 'utf-8');
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Generate index page (landing page)
|
|
269
|
+
*/
|
|
270
|
+
export function generateIndexPage(title, tagline) {
|
|
271
|
+
return `import React from 'react';
|
|
272
|
+
import clsx from 'clsx';
|
|
273
|
+
import Link from '@docusaurus/Link';
|
|
274
|
+
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
|
|
275
|
+
import Layout from '@theme/Layout';
|
|
276
|
+
import styles from './index.module.css';
|
|
277
|
+
|
|
278
|
+
function HomepageHeader() {
|
|
279
|
+
const {siteConfig} = useDocusaurusContext();
|
|
280
|
+
return (
|
|
281
|
+
<header className={clsx('hero hero--primary', styles.heroBanner)}>
|
|
282
|
+
<div className="container">
|
|
283
|
+
<h1 className="hero__title">{siteConfig.title}</h1>
|
|
284
|
+
<p className="hero__subtitle">{siteConfig.tagline}</p>
|
|
285
|
+
<div className={styles.buttons}>
|
|
286
|
+
<Link
|
|
287
|
+
className="button button--secondary button--lg"
|
|
288
|
+
to="/strategy">
|
|
289
|
+
View Documentation
|
|
290
|
+
</Link>
|
|
291
|
+
</div>
|
|
292
|
+
</div>
|
|
293
|
+
</header>
|
|
294
|
+
);
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
export default function Home() {
|
|
298
|
+
const {siteConfig} = useDocusaurusContext();
|
|
299
|
+
return (
|
|
300
|
+
<Layout
|
|
301
|
+
title={\`\${siteConfig.title}\`}
|
|
302
|
+
description="${tagline}">
|
|
303
|
+
<HomepageHeader />
|
|
304
|
+
<main>
|
|
305
|
+
<div className="container" style={{marginTop: '2rem', marginBottom: '2rem'}}>
|
|
306
|
+
<div className="row">
|
|
307
|
+
<div className="col col--12">
|
|
308
|
+
<h2>Welcome to ${title}</h2>
|
|
309
|
+
<p>
|
|
310
|
+
This is your SpecWeave documentation site, automatically generated from your
|
|
311
|
+
<code>.specweave/docs/</code> folder.
|
|
312
|
+
</p>
|
|
313
|
+
<p>
|
|
314
|
+
Use the sidebar to navigate through your documentation:
|
|
315
|
+
</p>
|
|
316
|
+
<ul>
|
|
317
|
+
<li><strong>Strategy</strong>: Business rationale, PRDs, OKRs</li>
|
|
318
|
+
<li><strong>Specs</strong>: Feature specifications and user stories</li>
|
|
319
|
+
<li><strong>Architecture</strong>: Technical design, ADRs, diagrams</li>
|
|
320
|
+
<li><strong>Delivery</strong>: Build & release processes</li>
|
|
321
|
+
<li><strong>Operations</strong>: Runbooks, SLOs, incidents</li>
|
|
322
|
+
<li><strong>Governance</strong>: Policies, security, compliance</li>
|
|
323
|
+
</ul>
|
|
324
|
+
</div>
|
|
325
|
+
</div>
|
|
326
|
+
</div>
|
|
327
|
+
</main>
|
|
328
|
+
</Layout>
|
|
329
|
+
);
|
|
330
|
+
}
|
|
331
|
+
`;
|
|
332
|
+
}
|
|
333
|
+
/**
|
|
334
|
+
* Write index page to file
|
|
335
|
+
*/
|
|
336
|
+
export async function writeIndexPage(targetDir, title, tagline) {
|
|
337
|
+
const indexPath = path.join(targetDir, 'src', 'pages', 'index.js');
|
|
338
|
+
const content = generateIndexPage(title, tagline);
|
|
339
|
+
await fs.ensureDir(path.dirname(indexPath));
|
|
340
|
+
await fs.writeFile(indexPath, content, 'utf-8');
|
|
341
|
+
}
|
|
342
|
+
/**
|
|
343
|
+
* Generate index.module.css for landing page styles
|
|
344
|
+
*/
|
|
345
|
+
export function generateIndexModuleCSS() {
|
|
346
|
+
return `.heroBanner {
|
|
347
|
+
padding: 4rem 0;
|
|
348
|
+
text-align: center;
|
|
349
|
+
position: relative;
|
|
350
|
+
overflow: hidden;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
@media screen and (max-width: 996px) {
|
|
354
|
+
.heroBanner {
|
|
355
|
+
padding: 2rem;
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
.buttons {
|
|
360
|
+
display: flex;
|
|
361
|
+
align-items: center;
|
|
362
|
+
justify-content: center;
|
|
363
|
+
gap: 1rem;
|
|
364
|
+
margin-top: 2rem;
|
|
365
|
+
}
|
|
366
|
+
`;
|
|
367
|
+
}
|
|
368
|
+
/**
|
|
369
|
+
* Write index.module.css to file
|
|
370
|
+
*/
|
|
371
|
+
export async function writeIndexModuleCSS(targetDir) {
|
|
372
|
+
const cssPath = path.join(targetDir, 'src', 'pages', 'index.module.css');
|
|
373
|
+
const content = generateIndexModuleCSS();
|
|
374
|
+
await fs.ensureDir(path.dirname(cssPath));
|
|
375
|
+
await fs.writeFile(cssPath, content, 'utf-8');
|
|
376
|
+
}
|
|
377
|
+
//# sourceMappingURL=config-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-generator.js","sourceRoot":"","sources":["../../../src/utils/docs-preview/config-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Main orchestrator for Docusaurus setup
|
|
3
|
+
* Coordinates all setup steps: install, config, sidebar, server launch
|
|
4
|
+
*/
|
|
5
|
+
import { SetupOptions, ServerProcess } from './types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Full Docusaurus setup workflow
|
|
8
|
+
*/
|
|
9
|
+
export declare function setupDocusaurus(options: SetupOptions): Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* Quick setup with defaults
|
|
12
|
+
*/
|
|
13
|
+
export declare function quickSetup(projectRoot: string): Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* Launch preview (setup if needed, then start server)
|
|
16
|
+
*/
|
|
17
|
+
export declare function launchPreview(projectRoot: string, options?: {
|
|
18
|
+
port?: number;
|
|
19
|
+
openBrowser?: boolean;
|
|
20
|
+
force?: boolean;
|
|
21
|
+
}): Promise<ServerProcess>;
|
|
22
|
+
/**
|
|
23
|
+
* Build static site
|
|
24
|
+
*/
|
|
25
|
+
export declare function buildStaticSite(projectRoot: string): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Check if setup is needed
|
|
28
|
+
*/
|
|
29
|
+
export declare function isSetupNeeded(projectRoot: string): Promise<boolean>;
|
|
30
|
+
/**
|
|
31
|
+
* Get docs site path
|
|
32
|
+
*/
|
|
33
|
+
export declare function getDocsSitePath(projectRoot: string): string;
|
|
34
|
+
/**
|
|
35
|
+
* Get docs path
|
|
36
|
+
*/
|
|
37
|
+
export declare function getDocsPath(projectRoot: string): string;
|
|
38
|
+
//# sourceMappingURL=docusaurus-setup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docusaurus-setup.d.ts","sourceRoot":"","sources":["../../../src/utils/docs-preview/docusaurus-setup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,YAAY,EAAoB,aAAa,EAAE,MAAM,YAAY,CAAC;AAY3E;;GAEG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA2E1E;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BnE;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GACtE,OAAO,CAAC,aAAa,CAAC,CAyBxB;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqCxE;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAGzE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAEvD"}
|