@zigrivers/scaffold 3.30.0 → 3.31.1
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/content/guides/AUTHORING.md +8 -5
- package/content/guides/cli/index.html +367 -14
- package/content/guides/concepts/index.html +367 -14
- package/content/guides/dashboard/index.html +367 -14
- package/content/guides/index.html +368 -15
- package/content/guides/install/index.html +373 -20
- package/content/guides/install/index.md +6 -6
- package/content/guides/knowledge/index.html +367 -14
- package/content/guides/knowledge-freshness/index.html +369 -16
- package/content/guides/knowledge-freshness/index.md +2 -2
- package/content/guides/mmr/index.html +373 -20
- package/content/guides/multi-agent/index.html +369 -16
- package/content/guides/multi-agent/index.md +2 -2
- package/content/guides/observability/index.html +367 -14
- package/content/guides/pipeline/index.html +378 -37
- package/content/guides/pipeline/index.md +8 -8
- package/content/guides/review-workflow/index.html +367 -14
- package/dist/cli/commands/info.test.js +3 -0
- package/dist/cli/commands/info.test.js.map +1 -1
- package/dist/cli/commands/list.test.js +6 -0
- package/dist/cli/commands/list.test.js.map +1 -1
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +38 -4
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/status.test.js +66 -2
- package/dist/cli/commands/status.test.js.map +1 -1
- package/dist/e2e/commands.test.js +3 -0
- package/dist/e2e/commands.test.js.map +1 -1
- package/dist/e2e/knowledge.test.js +5 -0
- package/dist/e2e/knowledge.test.js.map +1 -1
- package/dist/guides/build.d.ts +1 -1
- package/dist/guides/build.d.ts.map +1 -1
- package/dist/guides/build.js +14 -7
- package/dist/guides/build.js.map +1 -1
- package/dist/guides/build.test.js +39 -0
- package/dist/guides/build.test.js.map +1 -1
- package/dist/guides/chrome.d.ts.map +1 -1
- package/dist/guides/chrome.js +83 -12
- package/dist/guides/chrome.js.map +1 -1
- package/dist/guides/cli-guides.test.js +3 -0
- package/dist/guides/cli-guides.test.js.map +1 -1
- package/dist/guides/dashboard-theme.css +8 -0
- package/dist/guides/directives-tabs.test.js +47 -0
- package/dist/guides/directives-tabs.test.js.map +1 -1
- package/dist/guides/directives.d.ts.map +1 -1
- package/dist/guides/directives.js +14 -0
- package/dist/guides/directives.js.map +1 -1
- package/dist/guides/guides.css +268 -0
- package/dist/guides/index-page.d.ts.map +1 -1
- package/dist/guides/index-page.js +41 -8
- package/dist/guides/index-page.js.map +1 -1
- package/dist/guides/sanitize.d.ts.map +1 -1
- package/dist/guides/sanitize.js +4 -0
- package/dist/guides/sanitize.js.map +1 -1
- package/dist/guides/template.d.ts.map +1 -1
- package/dist/guides/template.js +7 -2
- package/dist/guides/template.js.map +1 -1
- package/dist/state/ensure-v3-migration.d.ts.map +1 -1
- package/dist/state/ensure-v3-migration.js +4 -2
- package/dist/state/ensure-v3-migration.js.map +1 -1
- package/dist/utils/fs.d.ts +6 -30
- package/dist/utils/fs.d.ts.map +1 -1
- package/dist/utils/fs.js +66 -58
- package/dist/utils/fs.js.map +1 -1
- package/dist/utils/fs.test.js +53 -6
- package/dist/utils/fs.test.js.map +1 -1
- package/dist/validation/index.test.js +3 -0
- package/dist/validation/index.test.js.map +1 -1
- package/package.json +2 -2
package/dist/utils/fs.js
CHANGED
|
@@ -29,82 +29,90 @@ export function getPackageRoot() {
|
|
|
29
29
|
// package root is two levels up from utils/
|
|
30
30
|
return path.resolve(path.dirname(thisFile), '..', '..');
|
|
31
31
|
}
|
|
32
|
-
/**
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
if (fs.existsSync(local))
|
|
41
|
-
return local;
|
|
32
|
+
/** Read the `name` field from `<dir>/package.json`, or null if absent/unreadable. */
|
|
33
|
+
function readPackageName(dir) {
|
|
34
|
+
try {
|
|
35
|
+
const pkg = JSON.parse(fs.readFileSync(path.join(dir, 'package.json'), 'utf8'));
|
|
36
|
+
return typeof pkg?.name === 'string' ? pkg.name : null;
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
return null;
|
|
42
40
|
}
|
|
43
|
-
return path.join(getPackageRoot(), 'content', 'pipeline');
|
|
44
41
|
}
|
|
45
42
|
/**
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
43
|
+
* The npm package name of the *running* scaffold, read once from its own
|
|
44
|
+
* package.json (with a literal fallback). Deriving it — rather than hardcoding
|
|
45
|
+
* — means the gate below reads "is projectRoot the same package as the scaffold
|
|
46
|
+
* that's running", which also stays correct for forks/renames.
|
|
49
47
|
*/
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
return local;
|
|
48
|
+
let cachedOwnPackageName;
|
|
49
|
+
function ownPackageName() {
|
|
50
|
+
if (cachedOwnPackageName === undefined) {
|
|
51
|
+
cachedOwnPackageName = readPackageName(getPackageRoot()) ?? '@zigrivers/scaffold';
|
|
55
52
|
}
|
|
56
|
-
return
|
|
53
|
+
return cachedOwnPackageName;
|
|
57
54
|
}
|
|
58
55
|
/**
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
56
|
+
* True only when `dir` is scaffold's own source/install tree, detected by its
|
|
57
|
+
* package.json name matching the running scaffold's. This gates the dev-mode
|
|
58
|
+
* content override so that a downstream project which merely happens to have a
|
|
59
|
+
* `content/` directory (e.g. a scaffold-like CLI tool, whose project-structure
|
|
60
|
+
* step generates `content/pipeline/` + `content/methodology/`) does NOT shadow
|
|
61
|
+
* scaffold's bundled content. Without this gate the resolved pipeline silently
|
|
62
|
+
* collapses. Result is memoized per directory — this runs for every
|
|
63
|
+
* getPackage*Dir call (6+ per command) and scaffold is a short-lived process.
|
|
64
|
+
*
|
|
65
|
+
* Note: only the exact `dir` passed is checked (no upward walk). Callers pass
|
|
66
|
+
* the project root that holds `.scaffold/` and, for scaffold itself, its
|
|
67
|
+
* package.json + content/ sit at that same root.
|
|
62
68
|
*/
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
69
|
+
const scaffoldRootCache = new Map();
|
|
70
|
+
function isScaffoldPackageRoot(dir) {
|
|
71
|
+
let cached = scaffoldRootCache.get(dir);
|
|
72
|
+
if (cached === undefined) {
|
|
73
|
+
cached = readPackageName(dir) === ownPackageName();
|
|
74
|
+
scaffoldRootCache.set(dir, cached);
|
|
68
75
|
}
|
|
69
|
-
return
|
|
76
|
+
return cached;
|
|
70
77
|
}
|
|
71
78
|
/**
|
|
72
|
-
* Resolve
|
|
73
|
-
*
|
|
74
|
-
*
|
|
79
|
+
* Resolve a `content/<subdir>` directory.
|
|
80
|
+
*
|
|
81
|
+
* The project-local override (`<projectRoot>/content/<subdir>`) is used ONLY
|
|
82
|
+
* when running scaffold against scaffold's own source tree — i.e. developing
|
|
83
|
+
* scaffold itself with a globally-installed binary. For every other project,
|
|
84
|
+
* and when installed, the package's bundled `content/<subdir>` is used.
|
|
75
85
|
*/
|
|
76
|
-
|
|
77
|
-
if (projectRoot) {
|
|
78
|
-
const local = path.join(projectRoot, 'content',
|
|
86
|
+
function resolveContentDir(subdir, projectRoot) {
|
|
87
|
+
if (projectRoot && isScaffoldPackageRoot(projectRoot)) {
|
|
88
|
+
const local = path.join(projectRoot, 'content', subdir);
|
|
79
89
|
if (fs.existsSync(local))
|
|
80
90
|
return local;
|
|
81
91
|
}
|
|
82
|
-
return path.join(getPackageRoot(), 'content',
|
|
92
|
+
return path.join(getPackageRoot(), 'content', subdir);
|
|
83
93
|
}
|
|
84
|
-
/**
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
*/
|
|
94
|
+
/** Resolve the pipeline directory (bundled, unless running against scaffold itself). */
|
|
95
|
+
export function getPackagePipelineDir(projectRoot) {
|
|
96
|
+
return resolveContentDir('pipeline', projectRoot);
|
|
97
|
+
}
|
|
98
|
+
/** Resolve the knowledge directory (bundled, unless running against scaffold itself). */
|
|
99
|
+
export function getPackageKnowledgeDir(projectRoot) {
|
|
100
|
+
return resolveContentDir('knowledge', projectRoot);
|
|
101
|
+
}
|
|
102
|
+
/** Resolve the tools directory (bundled, unless running against scaffold itself). */
|
|
103
|
+
export function getPackageToolsDir(projectRoot) {
|
|
104
|
+
return resolveContentDir('tools', projectRoot);
|
|
105
|
+
}
|
|
106
|
+
/** Resolve the skills template directory (bundled, unless running against scaffold itself). */
|
|
107
|
+
export function getPackageSkillsDir(projectRoot) {
|
|
108
|
+
return resolveContentDir('skills', projectRoot);
|
|
109
|
+
}
|
|
110
|
+
/** Resolve the methodology directory (bundled, unless running against scaffold itself). */
|
|
89
111
|
export function getPackageMethodologyDir(projectRoot) {
|
|
90
|
-
|
|
91
|
-
const local = path.join(projectRoot, 'content', 'methodology');
|
|
92
|
-
if (fs.existsSync(local))
|
|
93
|
-
return local;
|
|
94
|
-
}
|
|
95
|
-
return path.join(getPackageRoot(), 'content', 'methodology');
|
|
112
|
+
return resolveContentDir('methodology', projectRoot);
|
|
96
113
|
}
|
|
97
|
-
/**
|
|
98
|
-
* Resolve the guides directory.
|
|
99
|
-
* If projectRoot is provided and contains content/guides/, use that (dev/test mode).
|
|
100
|
-
* Otherwise use the package's bundled content/guides/.
|
|
101
|
-
*/
|
|
114
|
+
/** Resolve the guides directory (bundled, unless running against scaffold itself). */
|
|
102
115
|
export function getPackageGuidesDir(projectRoot) {
|
|
103
|
-
|
|
104
|
-
const local = path.join(projectRoot, 'content', 'guides');
|
|
105
|
-
if (fs.existsSync(local))
|
|
106
|
-
return local;
|
|
107
|
-
}
|
|
108
|
-
return path.join(getPackageRoot(), 'content', 'guides');
|
|
116
|
+
return resolveContentDir('guides', projectRoot);
|
|
109
117
|
}
|
|
110
118
|
//# sourceMappingURL=fs.js.map
|
package/dist/utils/fs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,QAAgB,EAAE,OAAe;IAC/D,MAAM,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAA;IACjC,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IAC1C,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;AAClC,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,UAAU,CAAC,QAAgB;IACzC,OAAO,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;AAChC,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC/C,2DAA2D;IAC3D,4CAA4C;IAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AACzD,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/fs.test.js
CHANGED
|
@@ -3,7 +3,7 @@ import os from 'node:os';
|
|
|
3
3
|
import path from 'node:path';
|
|
4
4
|
import crypto from 'node:crypto';
|
|
5
5
|
import { describe, it, expect, afterEach } from 'vitest';
|
|
6
|
-
import { atomicWriteFile, fileExists, ensureDir, getPackageSkillsDir } from './fs.js';
|
|
6
|
+
import { atomicWriteFile, fileExists, ensureDir, getPackageSkillsDir, getPackageMethodologyDir, getPackagePipelineDir, } from './fs.js';
|
|
7
7
|
const tmpFiles = [];
|
|
8
8
|
const tmpDirs = [];
|
|
9
9
|
function tmpPath(ext = '') {
|
|
@@ -90,12 +90,29 @@ describe('ensureDir', () => {
|
|
|
90
90
|
expect(fs.statSync(nested).isDirectory()).toBe(true);
|
|
91
91
|
});
|
|
92
92
|
});
|
|
93
|
+
/** Create a tmp project root containing content/<sub>, optionally marking it as
|
|
94
|
+
* the scaffold package itself via a package.json with the scaffold name. */
|
|
95
|
+
function makeProjectWithContent(sub, opts) {
|
|
96
|
+
const root = tmpDir();
|
|
97
|
+
const local = path.join(root, 'content', sub);
|
|
98
|
+
fs.mkdirSync(local, { recursive: true });
|
|
99
|
+
if (opts.asScaffold) {
|
|
100
|
+
fs.writeFileSync(path.join(root, 'package.json'), JSON.stringify({ name: '@zigrivers/scaffold' }), 'utf8');
|
|
101
|
+
}
|
|
102
|
+
return { root, local };
|
|
103
|
+
}
|
|
93
104
|
describe('getPackageSkillsDir', () => {
|
|
94
|
-
it('
|
|
95
|
-
const root =
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
105
|
+
it('uses a project-local content/skills directory only when the project IS scaffold itself', () => {
|
|
106
|
+
const { root, local } = makeProjectWithContent('skills', { asScaffold: true });
|
|
107
|
+
expect(getPackageSkillsDir(root)).toBe(local);
|
|
108
|
+
});
|
|
109
|
+
it('ignores a project-local content/skills directory for a downstream project (not scaffold)', () => {
|
|
110
|
+
// A downstream project (e.g. a scaffold-like CLI tool) that merely has a
|
|
111
|
+
// content/skills directory must NOT shadow scaffold's bundled content.
|
|
112
|
+
const { root, local } = makeProjectWithContent('skills', { asScaffold: false });
|
|
113
|
+
const resolved = getPackageSkillsDir(root);
|
|
114
|
+
expect(resolved).not.toBe(local);
|
|
115
|
+
expect(resolved).toBe(getPackageSkillsDir()); // bundled fallback
|
|
99
116
|
});
|
|
100
117
|
it('falls back to the bundled content/skills directory when no local override exists', () => {
|
|
101
118
|
const bundledDir = getPackageSkillsDir();
|
|
@@ -104,4 +121,34 @@ describe('getPackageSkillsDir', () => {
|
|
|
104
121
|
expect(fs.existsSync(path.join(bundledDir, 'scaffold-runner', 'SKILL.md'))).toBe(true);
|
|
105
122
|
});
|
|
106
123
|
});
|
|
124
|
+
describe('getPackageMethodologyDir', () => {
|
|
125
|
+
it('ignores a project-local content/methodology directory for a downstream project (not scaffold)', () => {
|
|
126
|
+
// This is the surface regression: a project whose own content/methodology
|
|
127
|
+
// exists must not shadow the bundled methodology presets (which would
|
|
128
|
+
// collapse the resolved pipeline graph).
|
|
129
|
+
const { root, local } = makeProjectWithContent('methodology', { asScaffold: false });
|
|
130
|
+
const resolved = getPackageMethodologyDir(root);
|
|
131
|
+
expect(resolved).not.toBe(local);
|
|
132
|
+
expect(resolved).toBe(getPackageMethodologyDir()); // bundled fallback
|
|
133
|
+
});
|
|
134
|
+
it('uses a project-local content/methodology directory when the project IS scaffold itself', () => {
|
|
135
|
+
const { root, local } = makeProjectWithContent('methodology', { asScaffold: true });
|
|
136
|
+
expect(getPackageMethodologyDir(root)).toBe(local);
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
describe('getPackagePipelineDir', () => {
|
|
140
|
+
// Guards the shared resolveContentDir contract for a third subdir, so a
|
|
141
|
+
// future refactor that splits the implementation can't silently lose the
|
|
142
|
+
// gate for the pipeline resolver (the one whose collapse caused the bug).
|
|
143
|
+
it('ignores a project-local content/pipeline directory for a downstream project (not scaffold)', () => {
|
|
144
|
+
const { root, local } = makeProjectWithContent('pipeline', { asScaffold: false });
|
|
145
|
+
const resolved = getPackagePipelineDir(root);
|
|
146
|
+
expect(resolved).not.toBe(local);
|
|
147
|
+
expect(resolved).toBe(getPackagePipelineDir()); // bundled fallback
|
|
148
|
+
});
|
|
149
|
+
it('uses a project-local content/pipeline directory when the project IS scaffold itself', () => {
|
|
150
|
+
const { root, local } = makeProjectWithContent('pipeline', { asScaffold: true });
|
|
151
|
+
expect(getPackagePipelineDir(root)).toBe(local);
|
|
152
|
+
});
|
|
153
|
+
});
|
|
107
154
|
//# sourceMappingURL=fs.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs.test.js","sourceRoot":"","sources":["../../src/utils/fs.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"fs.test.js","sourceRoot":"","sources":["../../src/utils/fs.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,9 @@ function makeTmpDir() {
|
|
|
16
16
|
function makeProjectRoot(opts = {}) {
|
|
17
17
|
const root = makeTmpDir();
|
|
18
18
|
fs.mkdirSync(path.join(root, '.scaffold'), { recursive: true });
|
|
19
|
+
// Declare this fixture as a scaffold content tree so getPackage*Dir uses its
|
|
20
|
+
// local content/ override (gated on package.json name; see utils/fs.ts).
|
|
21
|
+
fs.writeFileSync(path.join(root, 'package.json'), '{"name":"@zigrivers/scaffold"}', 'utf8');
|
|
19
22
|
if (opts.configContent !== undefined && opts.configContent !== null) {
|
|
20
23
|
fs.writeFileSync(path.join(root, '.scaffold', 'config.yml'), opts.configContent, 'utf8');
|
|
21
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/validation/index.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAExD,8EAA8E;AAC9E,qDAAqD;AACrD,8EAA8E;AAE9E,MAAM,OAAO,GAAa,EAAE,CAAA;AAE5B,SAAS,UAAU;IACjB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,4BAA4B,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;IACnF,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACpC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACf,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,eAAe,CAAC,OAIrB,EAAE;IACJ,MAAM,IAAI,GAAG,UAAU,EAAE,CAAA;IACzB,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/validation/index.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zigrivers/scaffold",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.31.1",
|
|
4
4
|
"description": "AI-powered software project scaffolding pipeline",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"workspaces": [
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"scaffold": "dist/index.js"
|
|
39
39
|
},
|
|
40
40
|
"scripts": {
|
|
41
|
-
"build": "tsc && cp src/core/knowledge/knowledge-update-template.md dist/core/knowledge/knowledge-update-template.md && mkdir -p dist/guides && cp lib/dashboard-theme.css dist/guides/dashboard-theme.css",
|
|
41
|
+
"build": "tsc && cp src/core/knowledge/knowledge-update-template.md dist/core/knowledge/knowledge-update-template.md && mkdir -p dist/guides && cp lib/dashboard-theme.css dist/guides/dashboard-theme.css && cp lib/guides.css dist/guides/guides.css",
|
|
42
42
|
"test": "vitest run",
|
|
43
43
|
"test:coverage": "vitest run --coverage",
|
|
44
44
|
"test:e2e": "vitest run --config vitest.e2e.config.ts",
|