canopycms 0.0.31 → 0.0.33
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/dist/api/__test__/mock-client.d.ts.map +1 -1
- package/dist/api/__test__/mock-client.js.map +1 -1
- package/dist/api/branch-review.d.ts +1 -10
- package/dist/api/branch-review.d.ts.map +1 -1
- package/dist/api/branch-review.js +4 -11
- package/dist/api/branch-review.js.map +1 -1
- package/dist/api/branch-status.d.ts +1 -7
- package/dist/api/branch-status.d.ts.map +1 -1
- package/dist/api/branch-status.js +1 -8
- package/dist/api/branch-status.js.map +1 -1
- package/dist/api/branch-withdraw.d.ts.map +1 -1
- package/dist/api/branch-withdraw.js +1 -5
- package/dist/api/branch-withdraw.js.map +1 -1
- package/dist/api/branch.d.ts +1 -11
- package/dist/api/branch.d.ts.map +1 -1
- package/dist/api/branch.js +1 -4
- package/dist/api/branch.js.map +1 -1
- package/dist/api/client.d.ts +1 -2
- package/dist/api/client.d.ts.map +1 -1
- package/dist/api/client.js +2 -2
- package/dist/api/client.js.map +1 -1
- package/dist/api/comments.d.ts.map +1 -1
- package/dist/api/comments.js +2 -5
- package/dist/api/comments.js.map +1 -1
- package/dist/api/groups.js +1 -1
- package/dist/api/groups.js.map +1 -1
- package/dist/api/permissions.js +1 -1
- package/dist/api/permissions.js.map +1 -1
- package/dist/api/reference-options.d.ts.map +1 -1
- package/dist/api/reference-options.js +12 -1
- package/dist/api/reference-options.js.map +1 -1
- package/dist/api/resolve-references.d.ts.map +1 -1
- package/dist/api/resolve-references.js +5 -0
- package/dist/api/resolve-references.js.map +1 -1
- package/dist/api/validators.d.ts +15 -0
- package/dist/api/validators.d.ts.map +1 -1
- package/dist/api/validators.js +7 -0
- package/dist/api/validators.js.map +1 -1
- package/dist/asset-store.d.ts.map +1 -1
- package/dist/asset-store.js +4 -3
- package/dist/asset-store.js.map +1 -1
- package/dist/branch-metadata.d.ts.map +1 -1
- package/dist/branch-metadata.js +11 -3
- package/dist/branch-metadata.js.map +1 -1
- package/dist/cli/generate-ai-content.js +11 -3
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +88 -48
- package/dist/cli/init.js.map +1 -1
- package/dist/editor/Editor.d.ts +1 -0
- package/dist/editor/Editor.d.ts.map +1 -1
- package/dist/editor/Editor.js +3 -3
- package/dist/editor/Editor.js.map +1 -1
- package/dist/editor/FormRenderer.d.ts.map +1 -1
- package/dist/editor/FormRenderer.js +1 -0
- package/dist/editor/FormRenderer.js.map +1 -1
- package/dist/editor/editor-utils.d.ts.map +1 -1
- package/dist/editor/editor-utils.js +1 -0
- package/dist/editor/editor-utils.js.map +1 -1
- package/dist/editor/fields/BlockField.d.ts.map +1 -1
- package/dist/editor/fields/BlockField.js +1 -0
- package/dist/editor/fields/BlockField.js.map +1 -1
- package/dist/editor/fields/MarkdownField.d.ts.map +1 -1
- package/dist/editor/fields/MarkdownField.js +1 -0
- package/dist/editor/fields/MarkdownField.js.map +1 -1
- package/dist/editor/fields/ReferenceField.d.ts.map +1 -1
- package/dist/editor/fields/ReferenceField.js +3 -2
- package/dist/editor/fields/ReferenceField.js.map +1 -1
- package/dist/editor/fields/entry-link/EntryLinkContext.d.ts +0 -6
- package/dist/editor/fields/entry-link/EntryLinkContext.d.ts.map +1 -1
- package/dist/editor/fields/entry-link/EntryLinkContext.js +1 -0
- package/dist/editor/fields/entry-link/EntryLinkContext.js.map +1 -1
- package/dist/editor/fields/entry-link/InsertEntryLink.d.ts.map +1 -1
- package/dist/editor/fields/entry-link/InsertEntryLink.js +3 -2
- package/dist/editor/fields/entry-link/InsertEntryLink.js.map +1 -1
- package/dist/editor/hooks/useBranchActions.d.ts +2 -2
- package/dist/editor/hooks/useBranchActions.d.ts.map +1 -1
- package/dist/editor/hooks/useBranchActions.js +2 -2
- package/dist/editor/hooks/useBranchActions.js.map +1 -1
- package/dist/editor/hooks/useBranchManager.d.ts.map +1 -1
- package/dist/editor/hooks/useBranchManager.js +2 -1
- package/dist/editor/hooks/useBranchManager.js.map +1 -1
- package/dist/editor/hooks/useDraftManager.d.ts +1 -0
- package/dist/editor/hooks/useDraftManager.d.ts.map +1 -1
- package/dist/editor/hooks/useDraftManager.js +24 -1
- package/dist/editor/hooks/useDraftManager.js.map +1 -1
- package/dist/editor/hooks/useEntryManager.d.ts +1 -1
- package/dist/editor/hooks/useEntryManager.d.ts.map +1 -1
- package/dist/editor/hooks/useEntryManager.js +20 -11
- package/dist/editor/hooks/useEntryManager.js.map +1 -1
- package/dist/editor/hooks/useUserContext.d.ts.map +1 -1
- package/dist/editor/hooks/useUserContext.js +1 -0
- package/dist/editor/hooks/useUserContext.js.map +1 -1
- package/dist/schema/meta-loader.d.ts.map +1 -1
- package/dist/schema/meta-loader.js +2 -0
- package/dist/schema/meta-loader.js.map +1 -1
- package/dist/task-queue/task-queue.d.ts.map +1 -1
- package/dist/task-queue/task-queue.js +23 -21
- package/dist/task-queue/task-queue.js.map +1 -1
- package/dist/utils/atomic-write.d.ts +2 -2
- package/dist/utils/atomic-write.d.ts.map +1 -1
- package/dist/utils/atomic-write.js +2 -2
- package/dist/utils/atomic-write.js.map +1 -1
- package/dist/validation/deletion-checker.d.ts.map +1 -1
- package/dist/validation/deletion-checker.js +13 -17
- package/dist/validation/deletion-checker.js.map +1 -1
- package/dist/validation/field-traversal.d.ts.map +1 -1
- package/dist/validation/field-traversal.js +12 -2
- package/dist/validation/field-traversal.js.map +1 -1
- package/package.json +1 -1
- package/dist/settings-branch-utils.d.ts +0 -21
- package/dist/settings-branch-utils.d.ts.map +0 -1
- package/dist/settings-branch-utils.js +0 -33
- package/dist/settings-branch-utils.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/api/permissions.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/api/permissions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reference-options.d.ts","sourceRoot":"","sources":["../../src/api/reference-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,KAAK,EAA0B,WAAW,EAAE,MAAM,SAAS,CAAA;AASlE,0CAA0C;AAC1C,MAAM,MAAM,wBAAwB,GAAG,WAAW,CAAC;IACjD,OAAO,EAAE,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;KACnB,CAAC,CAAA;CACH,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"reference-options.d.ts","sourceRoot":"","sources":["../../src/api/reference-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,KAAK,EAA0B,WAAW,EAAE,MAAM,SAAS,CAAA;AASlE,0CAA0C;AAC1C,MAAM,MAAM,wBAAwB,GAAG,WAAW,CAAC;IACjD,OAAO,EAAE,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;KACnB,CAAC,CAAA;CACH,CAAC,CAAA;AAqIF;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;CAE3B,CAAA"}
|
|
@@ -68,7 +68,18 @@ const getReferenceOptionsHandler = async (gc, ctx, req, _params) => {
|
|
|
68
68
|
: undefined;
|
|
69
69
|
// Load reference options
|
|
70
70
|
const resolver = new ReferenceResolver(store, idIndex);
|
|
71
|
-
const
|
|
71
|
+
const allOptions = await resolver.loadReferenceOptions(collections, displayField, search, entryTypes);
|
|
72
|
+
// Filter by path-level read permissions
|
|
73
|
+
const options = [];
|
|
74
|
+
for (const option of allOptions) {
|
|
75
|
+
const location = idIndex.findById(option.id);
|
|
76
|
+
if (!location)
|
|
77
|
+
continue;
|
|
78
|
+
const access = await ctx.services.checkContentAccess(branchContext, branchContext.branchRoot, location.relativePath, req.user, 'read');
|
|
79
|
+
if (!access.allowed)
|
|
80
|
+
continue;
|
|
81
|
+
options.push(option);
|
|
82
|
+
}
|
|
72
83
|
return {
|
|
73
84
|
ok: true,
|
|
74
85
|
status: 200,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reference-options.js","sourceRoot":"","sources":["../../src/api/reference-options.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"reference-options.js","sourceRoot":"","sources":["../../src/api/reference-options.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-references.d.ts","sourceRoot":"","sources":["../../src/api/resolve-references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,KAAK,EAA0B,WAAW,EAAE,MAAM,SAAS,CAAA;AAOlE,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,EAAE,CAAA;CACd;AAED,4CAA4C;AAC5C,MAAM,MAAM,yBAAyB,GAAG,WAAW,CAAC;IAClD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"resolve-references.d.ts","sourceRoot":"","sources":["../../src/api/resolve-references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,KAAK,EAA0B,WAAW,EAAE,MAAM,SAAS,CAAA;AAOlE,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,EAAE,CAAA;CACd;AAED,4CAA4C;AAC5C,MAAM,MAAM,yBAAyB,GAAG,WAAW,CAAC;IAClD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC,CAAC,CAAA;AAgGF;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;CAE5B,CAAA"}
|
|
@@ -26,6 +26,11 @@ const resolveReferencesHandler = async (gc, ctx, req, params, body) => {
|
|
|
26
26
|
try {
|
|
27
27
|
const result = await resolver.resolve(id);
|
|
28
28
|
if (result && result.exists && result.collection && result.slug) {
|
|
29
|
+
// Check path-level read permission before returning content
|
|
30
|
+
const resolvedPath = await store.resolveDocumentPath(result.collection, result.slug);
|
|
31
|
+
const access = await ctx.services.checkContentAccess(branchContext, branchContext.branchRoot, resolvedPath.relativePath, req.user, 'read');
|
|
32
|
+
if (!access.allowed)
|
|
33
|
+
continue;
|
|
29
34
|
const doc = await store.read(result.collection, result.slug);
|
|
30
35
|
if (doc && doc.data) {
|
|
31
36
|
resolved[id] = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-references.js","sourceRoot":"","sources":["../../src/api/resolve-references.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resolve-references.js","sourceRoot":"","sources":["../../src/api/resolve-references.ts"],"names":[],"mappings":"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"}
|
package/dist/api/validators.d.ts
CHANGED
|
@@ -71,5 +71,20 @@ export declare const slugSchema: z.ZodType<Slug>;
|
|
|
71
71
|
* - No leading/trailing slashes
|
|
72
72
|
* - No consecutive slashes
|
|
73
73
|
*/
|
|
74
|
+
/**
|
|
75
|
+
* Common params schema for endpoints that accept a branch name path parameter.
|
|
76
|
+
* Shared across branch-status, branch-review, branch-withdraw, comments, and branch handlers.
|
|
77
|
+
*/
|
|
78
|
+
export declare const branchParamSchema: z.ZodObject<{
|
|
79
|
+
branch: z.ZodType<BranchName, z.ZodTypeDef, BranchName>;
|
|
80
|
+
}, "strip", z.ZodTypeAny, {
|
|
81
|
+
branch: string & {
|
|
82
|
+
readonly __brand: "BranchName";
|
|
83
|
+
};
|
|
84
|
+
}, {
|
|
85
|
+
branch: string & {
|
|
86
|
+
readonly __brand: "BranchName";
|
|
87
|
+
};
|
|
88
|
+
}>;
|
|
74
89
|
export declare const permissionPathSchema: z.ZodType<PermissionPath>;
|
|
75
90
|
//# sourceMappingURL=validators.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/api/validators.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAKL,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,IAAI,EACV,MAAM,UAAU,CAAA;AACjB,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAE3E;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,EAaV,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AAExC;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,EAaX,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;AAEzC;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,EAUX,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;AAErC;;;;;;;;GAQG;AACH,eAAO,MAAM,UAAU,EAaJ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAElC;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,EAad,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/api/validators.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAKL,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,IAAI,EACV,MAAM,UAAU,CAAA;AACjB,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAE3E;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,EAaV,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AAExC;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,EAaX,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;AAEzC;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,EAUX,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;AAErC;;;;;;;;GAQG;AACH,eAAO,MAAM,UAAU,EAaJ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAElC;;;;;;;;;GASG;AACH;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;EAE5B,CAAA;AAEF,eAAO,MAAM,oBAAoB,EAad,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA"}
|
package/dist/api/validators.js
CHANGED
|
@@ -120,6 +120,13 @@ export const slugSchema = z
|
|
|
120
120
|
* - No leading/trailing slashes
|
|
121
121
|
* - No consecutive slashes
|
|
122
122
|
*/
|
|
123
|
+
/**
|
|
124
|
+
* Common params schema for endpoints that accept a branch name path parameter.
|
|
125
|
+
* Shared across branch-status, branch-review, branch-withdraw, comments, and branch handlers.
|
|
126
|
+
*/
|
|
127
|
+
export const branchParamSchema = z.object({
|
|
128
|
+
branch: branchNameSchema,
|
|
129
|
+
});
|
|
123
130
|
export const permissionPathSchema = z
|
|
124
131
|
.string()
|
|
125
132
|
.min(1)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/api/validators.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/api/validators.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset-store.d.ts","sourceRoot":"","sources":["../src/asset-store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"asset-store.d.ts","sourceRoot":"","sources":["../src/asset-store.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAA;IAC3C,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IACxF,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,YAAY,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CACvE;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAID;;GAEG;AACH,qBAAa,eAAgB,YAAW,UAAU;IAChD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAQ;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAQ;gBAE3B,OAAO,EAAE,sBAAsB;IAK3C,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,KAAK;IAKP,IAAI,CAAC,MAAM,SAAK,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAwBvC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAaxF,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUlC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAOjD"}
|
package/dist/asset-store.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import fs from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { isNotFoundError } from './utils/error.js';
|
|
4
|
+
import { atomicWriteFile } from './utils/atomic-write.js';
|
|
4
5
|
const normalizeKey = (key) => key.replace(/^\/+/, '');
|
|
5
6
|
/**
|
|
6
7
|
* Local filesystem asset store for dev and tests. In production, swap with S3 adapter.
|
|
@@ -13,7 +14,8 @@ export class LocalAssetStore {
|
|
|
13
14
|
resolvePath(key) {
|
|
14
15
|
const clean = normalizeKey(key);
|
|
15
16
|
const resolved = path.resolve(this.root, clean);
|
|
16
|
-
|
|
17
|
+
const rootWithSep = this.root.endsWith(path.sep) ? this.root : this.root + path.sep;
|
|
18
|
+
if (resolved !== this.root && !resolved.startsWith(rootWithSep)) {
|
|
17
19
|
throw new Error('Path traversal detected');
|
|
18
20
|
}
|
|
19
21
|
return resolved;
|
|
@@ -51,8 +53,7 @@ export class LocalAssetStore {
|
|
|
51
53
|
}
|
|
52
54
|
async upload(key, data, contentType) {
|
|
53
55
|
const filePath = this.resolvePath(key);
|
|
54
|
-
await
|
|
55
|
-
await fs.writeFile(filePath, data);
|
|
56
|
+
await atomicWriteFile(filePath, data);
|
|
56
57
|
const stat = await fs.stat(filePath);
|
|
57
58
|
return {
|
|
58
59
|
key: normalizeKey(key),
|
package/dist/asset-store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset-store.js","sourceRoot":"","sources":["../src/asset-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAEjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"asset-store.js","sourceRoot":"","sources":["../src/asset-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch-metadata.d.ts","sourceRoot":"","sources":["../src/branch-metadata.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAgB,MAAM,SAAS,CAAA;AAG1E,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAMrD,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,cAAc,CAAA;CACvB;AAID,qBAAa,2BAA4B,SAAQ,KAAK;;CAKrD;AAwBD,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IAEjC,OAAO;IAMP;;;OAGG;WACU,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAa7E;;;OAGG;IACH,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,yBAAyB;YAI7D,IAAI;IAclB;;;OAGG;YACW,KAAK;
|
|
1
|
+
{"version":3,"file":"branch-metadata.d.ts","sourceRoot":"","sources":["../src/branch-metadata.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAgB,MAAM,SAAS,CAAA;AAG1E,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAMrD,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,cAAc,CAAA;CACvB;AAID,qBAAa,2BAA4B,SAAQ,KAAK;;CAKrD;AAwBD,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IAEjC,OAAO;IAMP;;;OAGG;WACU,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAa7E;;;OAGG;IACH,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,yBAAyB;YAI7D,IAAI;IAclB;;;OAGG;YACW,KAAK;YA8EL,SAAS;IAiBjB,IAAI,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAyCvE;;OAEG;YACW,kBAAkB;CAIjC;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,WAAW,CAAC,CAAC,CAAA;CAClE;AAED;;;GAGG;AACH,eAAO,MAAM,4BAA4B,GACvC,YAAY,MAAM,EAClB,UAAU,MAAM,KACf,yBAEF,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAU,SAAS;IAC/C,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,aAAa,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B,KAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAiB/B,CAAA"}
|
package/dist/branch-metadata.js
CHANGED
|
@@ -92,17 +92,25 @@ export class BranchMetadataFileManager {
|
|
|
92
92
|
await fs.mkdir(path.dirname(this.filePath), { recursive: true });
|
|
93
93
|
const content = JSON.stringify(payload, null, 2) + '\n';
|
|
94
94
|
if (expectedVersion === null) {
|
|
95
|
-
// New file: use
|
|
95
|
+
// New file: use temp-file + rename for atomicity, then link(target) to detect EEXIST races.
|
|
96
|
+
// Plain writeFile({flag:'wx'}) is not atomic — a crash mid-write leaves a partial file
|
|
97
|
+
// that makes JSON.parse fail on next startup, permanently breaking the branch.
|
|
98
|
+
const tempPath = `${this.filePath}.${Date.now()}.${Math.random().toString(36).slice(2)}.tmp`;
|
|
99
|
+
await fs.writeFile(tempPath, content, 'utf-8');
|
|
96
100
|
try {
|
|
97
|
-
|
|
98
|
-
|
|
101
|
+
// link() is atomic and fails with EEXIST if the target already exists,
|
|
102
|
+
// giving us the same exclusive-create semantics as wx without the atomicity risk.
|
|
103
|
+
await fs.link(tempPath, this.filePath);
|
|
99
104
|
}
|
|
100
105
|
catch (err) {
|
|
106
|
+
await fs.unlink(tempPath).catch(() => { });
|
|
101
107
|
if (isFileExistsError(err)) {
|
|
102
108
|
throw new BranchMetadataConflictError();
|
|
103
109
|
}
|
|
104
110
|
throw err;
|
|
105
111
|
}
|
|
112
|
+
await fs.unlink(tempPath).catch(() => { });
|
|
113
|
+
return { version: newVersion, writeId };
|
|
106
114
|
}
|
|
107
115
|
// Existing file: temp write + atomic rename + verification
|
|
108
116
|
const tempPath = `${this.filePath}.${Date.now()}.${Math.random().toString(36).slice(2)}.tmp`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch-metadata.js","sourceRoot":"","sources":["../src/branch-metadata.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"branch-metadata.js","sourceRoot":"","sources":["../src/branch-metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -711,7 +711,7 @@ async function atomicWriteFile(filePath, content) {
|
|
|
711
711
|
const dir = path.dirname(filePath);
|
|
712
712
|
await fs.mkdir(dir, { recursive: true });
|
|
713
713
|
const tempPath = `${filePath}.${Date.now()}.${Math.random().toString(36).slice(2)}.tmp`;
|
|
714
|
-
await fs.writeFile(tempPath, content, "utf-8");
|
|
714
|
+
await fs.writeFile(tempPath, content, typeof content === "string" ? "utf-8" : void 0);
|
|
715
715
|
try {
|
|
716
716
|
await fs.rename(tempPath, filePath);
|
|
717
717
|
} catch (err) {
|
|
@@ -1697,12 +1697,14 @@ var entryTypeMetaSchema = z6.object({
|
|
|
1697
1697
|
schema: z6.string().min(1),
|
|
1698
1698
|
// Entry schema registry key (validated at resolution time)
|
|
1699
1699
|
label: z6.string().optional(),
|
|
1700
|
+
description: z6.string().optional(),
|
|
1700
1701
|
default: z6.boolean().optional(),
|
|
1701
1702
|
maxItems: z6.number().int().positive().optional()
|
|
1702
1703
|
});
|
|
1703
1704
|
var collectionMetaSchema = z6.object({
|
|
1704
1705
|
name: z6.string().min(1),
|
|
1705
1706
|
label: z6.string().optional(),
|
|
1707
|
+
description: z6.string().optional(),
|
|
1706
1708
|
entries: z6.array(entryTypeMetaSchema).optional(),
|
|
1707
1709
|
order: z6.array(z6.string())
|
|
1708
1710
|
// Embedded IDs for ordering items (required)
|
|
@@ -3082,15 +3084,21 @@ var BranchMetadataFileManager = class _BranchMetadataFileManager {
|
|
|
3082
3084
|
await fs8.mkdir(path9.dirname(this.filePath), { recursive: true });
|
|
3083
3085
|
const content = JSON.stringify(payload, null, 2) + "\n";
|
|
3084
3086
|
if (expectedVersion === null) {
|
|
3087
|
+
const tempPath2 = `${this.filePath}.${Date.now()}.${Math.random().toString(36).slice(2)}.tmp`;
|
|
3088
|
+
await fs8.writeFile(tempPath2, content, "utf-8");
|
|
3085
3089
|
try {
|
|
3086
|
-
await fs8.
|
|
3087
|
-
return { version: newVersion, writeId };
|
|
3090
|
+
await fs8.link(tempPath2, this.filePath);
|
|
3088
3091
|
} catch (err) {
|
|
3092
|
+
await fs8.unlink(tempPath2).catch(() => {
|
|
3093
|
+
});
|
|
3089
3094
|
if (isFileExistsError(err)) {
|
|
3090
3095
|
throw new BranchMetadataConflictError();
|
|
3091
3096
|
}
|
|
3092
3097
|
throw err;
|
|
3093
3098
|
}
|
|
3099
|
+
await fs8.unlink(tempPath2).catch(() => {
|
|
3100
|
+
});
|
|
3101
|
+
return { version: newVersion, writeId };
|
|
3094
3102
|
}
|
|
3095
3103
|
const tempPath = `${this.filePath}.${Date.now()}.${Math.random().toString(36).slice(2)}.tmp`;
|
|
3096
3104
|
await fs8.writeFile(tempPath, content, "utf-8");
|
package/dist/cli/init.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAIhD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,KAAK,CAAA;AAE1C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,KAAK,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,OAAO,CAAA;IACd,cAAc,EAAE,OAAO,CAAA;IACvB,EAAE,EAAE,OAAO,CAAA;IACX,4CAA4C;IAC5C,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,kDAAkD;IAClD,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,UAAU,iBAAiB;IACzB,KAAK,EAAE,KAAK,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,OAAO,CAAA;IACd,cAAc,EAAE,OAAO,CAAA;CACxB;AA+CD;;;GAGG;AACH,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAqI9D;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2C7E;AAmED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,UAAU,CAAA;CACxB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyEhB"}
|
package/dist/cli/init.js
CHANGED
|
@@ -519,7 +519,7 @@ async function atomicWriteFile(filePath, content) {
|
|
|
519
519
|
const dir = path4.dirname(filePath);
|
|
520
520
|
await fs3.mkdir(dir, { recursive: true });
|
|
521
521
|
const tempPath = `${filePath}.${Date.now()}.${Math.random().toString(36).slice(2)}.tmp`;
|
|
522
|
-
await fs3.writeFile(tempPath, content, "utf-8");
|
|
522
|
+
await fs3.writeFile(tempPath, content, typeof content === "string" ? "utf-8" : void 0);
|
|
523
523
|
try {
|
|
524
524
|
await fs3.rename(tempPath, filePath);
|
|
525
525
|
} catch (err) {
|
|
@@ -572,18 +572,18 @@ async function dequeueTask(taskDir, logger = nullLogger) {
|
|
|
572
572
|
return null;
|
|
573
573
|
const now = Date.now();
|
|
574
574
|
const tasks = [];
|
|
575
|
-
for (const
|
|
575
|
+
for (const fileName of jsonFiles) {
|
|
576
576
|
try {
|
|
577
|
-
const content = await fs4.readFile(path5.join(pendingDir,
|
|
578
|
-
const
|
|
579
|
-
if (!
|
|
580
|
-
await moveToCorrupt(taskDir, pendingDir,
|
|
577
|
+
const content = await fs4.readFile(path5.join(pendingDir, fileName), "utf-8");
|
|
578
|
+
const task = parseTaskJson(content);
|
|
579
|
+
if (!task) {
|
|
580
|
+
await moveToCorrupt(taskDir, pendingDir, fileName, "Invalid JSON", logger);
|
|
581
581
|
continue;
|
|
582
582
|
}
|
|
583
|
-
if (
|
|
583
|
+
if (task.retryAfter && new Date(task.retryAfter).getTime() > now) {
|
|
584
584
|
continue;
|
|
585
585
|
}
|
|
586
|
-
tasks.push({ fileName
|
|
586
|
+
tasks.push({ fileName, task });
|
|
587
587
|
} catch (err) {
|
|
588
588
|
if (isNotFoundError2(err))
|
|
589
589
|
continue;
|
|
@@ -593,26 +593,28 @@ async function dequeueTask(taskDir, logger = nullLogger) {
|
|
|
593
593
|
if (tasks.length === 0)
|
|
594
594
|
return null;
|
|
595
595
|
tasks.sort((a, b) => a.task.createdAt.localeCompare(b.task.createdAt) || a.task.id.localeCompare(b.task.id));
|
|
596
|
-
const { fileName, task }
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
596
|
+
for (const { fileName, task } of tasks) {
|
|
597
|
+
if (await taskExistsIn(taskDir, task.id, ["completed", "failed"])) {
|
|
598
|
+
await fs4.unlink(path5.join(pendingDir, fileName)).catch(() => {
|
|
599
|
+
});
|
|
600
|
+
logger.debug("Skipped already-finished task", { id: task.id });
|
|
601
|
+
continue;
|
|
602
|
+
}
|
|
603
|
+
const sourcePath = path5.join(pendingDir, fileName);
|
|
604
|
+
const destPath = path5.join(processingDir, fileName);
|
|
605
|
+
try {
|
|
606
|
+
task.status = "processing";
|
|
607
|
+
await atomicWriteFile(destPath, JSON.stringify(task, null, 2));
|
|
608
|
+
await fs4.unlink(sourcePath);
|
|
609
|
+
logger.debug("Dequeued task", { id: task.id, action: task.action });
|
|
610
|
+
return task;
|
|
611
|
+
} catch (err) {
|
|
612
|
+
if (isNotFoundError2(err))
|
|
613
|
+
continue;
|
|
614
|
+
throw err;
|
|
615
|
+
}
|
|
615
616
|
}
|
|
617
|
+
return null;
|
|
616
618
|
}
|
|
617
619
|
async function completeTask(taskDir, taskId, result, logger = nullLogger) {
|
|
618
620
|
const processingPath = path5.join(taskDir, "processing", `${taskId}.json`);
|
|
@@ -916,6 +918,7 @@ var init_task_queue3 = __esm({
|
|
|
916
918
|
import fs5 from "node:fs/promises";
|
|
917
919
|
import path6 from "node:path";
|
|
918
920
|
import * as p from "@clack/prompts";
|
|
921
|
+
import { createJiti } from "jiti";
|
|
919
922
|
|
|
920
923
|
// dist/operating-mode/client-safe-strategy.js
|
|
921
924
|
var ProdClientSafeStrategy = class {
|
|
@@ -1120,6 +1123,15 @@ function operatingStrategy(mode) {
|
|
|
1120
1123
|
import fs from "node:fs/promises";
|
|
1121
1124
|
|
|
1122
1125
|
// dist/utils/error.js
|
|
1126
|
+
function getErrorMessage(err) {
|
|
1127
|
+
if (err instanceof Error) {
|
|
1128
|
+
return err.message;
|
|
1129
|
+
}
|
|
1130
|
+
if (typeof err === "string") {
|
|
1131
|
+
return err;
|
|
1132
|
+
}
|
|
1133
|
+
return String(err);
|
|
1134
|
+
}
|
|
1123
1135
|
function isNodeError(err) {
|
|
1124
1136
|
return err instanceof Error && "code" in err;
|
|
1125
1137
|
}
|
|
@@ -1267,17 +1279,36 @@ async function initDeployAws(options) {
|
|
|
1267
1279
|
p.note("CDK constructs are available via the canopycms-cdk package.\nSee the deployment plan for CDK stack setup.", "AWS deployment");
|
|
1268
1280
|
p.outro("Done!");
|
|
1269
1281
|
}
|
|
1270
|
-
async function
|
|
1271
|
-
const
|
|
1272
|
-
const cfgPath = path6.join(options.projectDir, "canopycms.config.ts");
|
|
1273
|
-
let mode = "dev";
|
|
1282
|
+
async function detectMode(projectDir) {
|
|
1283
|
+
const cfgPath = path6.join(projectDir, "canopycms.config.ts");
|
|
1274
1284
|
try {
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1285
|
+
await fs5.stat(cfgPath);
|
|
1286
|
+
} catch (err) {
|
|
1287
|
+
if (isNotFoundError(err))
|
|
1288
|
+
return "dev";
|
|
1289
|
+
throw err;
|
|
1290
|
+
}
|
|
1291
|
+
const jiti = createJiti(import.meta.url);
|
|
1292
|
+
let configModule;
|
|
1293
|
+
try {
|
|
1294
|
+
configModule = await jiti.import(cfgPath);
|
|
1295
|
+
} catch (err) {
|
|
1296
|
+
throw new Error(`Failed to load CanopyCMS config at ${cfgPath}: ${getErrorMessage(err)}. Refusing to default to dev mode \u2014 a broken config in a prod deployment would cause the worker-run-once prod-safety guard to silently skip prod tasks.`);
|
|
1297
|
+
}
|
|
1298
|
+
const configExport = configModule.default ?? configModule.config ?? configModule;
|
|
1299
|
+
const serverConfig = typeof configExport === "object" && configExport !== null && "server" in configExport ? configExport.server : configExport;
|
|
1300
|
+
if (!serverConfig || typeof serverConfig !== "object" || !("mode" in serverConfig) || typeof serverConfig.mode !== "string") {
|
|
1301
|
+
throw new Error(`Invalid CanopyCMS config at ${cfgPath}: expected server.mode to be a string. Make sure the config uses defineCanopyConfig() with a valid mode.`);
|
|
1280
1302
|
}
|
|
1303
|
+
const mode = serverConfig.mode;
|
|
1304
|
+
if (mode !== "prod" && mode !== "dev") {
|
|
1305
|
+
throw new Error(`Invalid CanopyCMS config at ${cfgPath}: mode must be 'prod' or 'dev', got '${mode}'.`);
|
|
1306
|
+
}
|
|
1307
|
+
return mode;
|
|
1308
|
+
}
|
|
1309
|
+
async function workerRunOnce(options) {
|
|
1310
|
+
const { getTaskQueueDir: getTaskQueueDir2 } = await Promise.resolve().then(() => (init_task_queue_config(), task_queue_config_exports));
|
|
1311
|
+
const mode = await detectMode(options.projectDir);
|
|
1281
1312
|
const taskDir = getTaskQueueDir2({ mode });
|
|
1282
1313
|
const cachePath = process.env.CANOPY_AUTH_CACHE_PATH ?? path6.join(operatingStrategy(mode).getWorkspaceRoot(options.projectDir), ".cache");
|
|
1283
1314
|
let refreshAuthCache;
|
|
@@ -1299,19 +1330,28 @@ CanopyCMS worker run-once (mode: ${mode}, auth: ${authMode})
|
|
|
1299
1330
|
await refreshAuthCache();
|
|
1300
1331
|
console.log("Auth cache refreshed");
|
|
1301
1332
|
}
|
|
1302
|
-
const { dequeueTask: dequeueTask2, completeTask: completeTask2 } = await Promise.resolve().then(() => (init_task_queue3(), task_queue_exports));
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
await completeTask2(taskDir, task.id, { skipped: true });
|
|
1309
|
-
taskCount++;
|
|
1310
|
-
}
|
|
1311
|
-
if (taskCount > 0) {
|
|
1312
|
-
console.log(`Processed ${taskCount} task(s)`);
|
|
1313
|
-
} else {
|
|
1333
|
+
const { dequeueTask: dequeueTask2, completeTask: completeTask2, listTasks: listTasks2 } = await Promise.resolve().then(() => (init_task_queue3(), task_queue_exports));
|
|
1334
|
+
if (mode === "prod") {
|
|
1335
|
+
const pending = await listTasks2(taskDir, "pending");
|
|
1336
|
+
if (pending.length > 0) {
|
|
1337
|
+
throw new Error(`workerRunOnce found ${pending.length} pending task(s) in prod mode but cannot execute them. Use the full worker daemon to process prod task queues.`);
|
|
1338
|
+
}
|
|
1314
1339
|
console.log("No pending tasks");
|
|
1340
|
+
} else {
|
|
1341
|
+
let taskCount = 0;
|
|
1342
|
+
let task = await dequeueTask2(taskDir);
|
|
1343
|
+
while (task !== null) {
|
|
1344
|
+
console.log(`Processing task: ${task.action} (${task.id})`);
|
|
1345
|
+
console.warn(` WARNING: Task skipped \u2014 GitHub operations require the full worker daemon`);
|
|
1346
|
+
await completeTask2(taskDir, task.id, { skipped: true });
|
|
1347
|
+
taskCount++;
|
|
1348
|
+
task = await dequeueTask2(taskDir);
|
|
1349
|
+
}
|
|
1350
|
+
if (taskCount > 0) {
|
|
1351
|
+
console.log(`Processed ${taskCount} task(s)`);
|
|
1352
|
+
} else {
|
|
1353
|
+
console.log("No pending tasks");
|
|
1354
|
+
}
|
|
1315
1355
|
}
|
|
1316
1356
|
console.log("\nDone");
|
|
1317
1357
|
}
|
package/dist/cli/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAA;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAwBjE;;;GAGG;AACH,KAAK,UAAU,SAAS,CACtB,QAAgB,EAChB,OAAe,EACf,OAAoD;IAEpD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAA;IAE3D,IAAI,MAAM,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,oCAAoC;QACtC,CAAC;aAAM,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAClC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,YAAY,mBAAmB,CAAC,CAAA;YACpD,OAAO,KAAK,CAAA;QACd,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC;gBAChC,OAAO,EAAE,GAAG,YAAY,6BAA6B;gBACrD,YAAY,EAAE,KAAK;aACpB,CAAC,CAAA;YACF,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACxC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;gBACnC,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3D,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAC9C,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,YAAY,EAAE,CAAC,CAAA;IACzC,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CAAC,MAAc,EAAE,OAAe;IACvD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAA;IACzD,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,CAAA;IACrC,OAAO,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,kBAAkB,CAAA;AACtD,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,OAAoB;IAC7C,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,OAAO,CAAA;IACvE,MAAM,SAAS,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,CAAA;IAC3C,MAAM,EACJ,eAAe,EACf,aAAa,EACb,eAAe,EACf,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,UAAU,EACV,UAAU,GACX,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAA;IAE/B,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;IAEzB,2BAA2B;IAC3B,IAAI,YAA0B,CAAA;IAC9B,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;IACrC,CAAC;SAAM,IAAI,cAAc,EAAE,CAAC;QAC1B,YAAY,GAAG,KAAK,CAAA;IACtB,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC;YAC5B,OAAO,EAAE,iDAAiD;YAC1D,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,0CAA0C,EAAE;gBACrE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE;aACzC;YACD,YAAY,EAAE,KAAqB;SACpC,CAAC,CAAA;QACF,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvB,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;YAC1B,OAAM;QACR,CAAC;QACD,YAAY,GAAG,MAAM,CAAA;IACvB,CAAC;IAED,0BAA0B;IAC1B,IAAI,WAAoB,CAAA;IACxB,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;IACnC,CAAC;SAAM,IAAI,cAAc,EAAE,CAAC;QAC1B,WAAW,GAAG,KAAK,CAAA;IACrB,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC;YAC7B,OAAO,EAAE,kEAAkE;YAC3E,YAAY,EAAE,KAAK;SACpB,CAAC,CAAA;QACF,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvB,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;YAC1B,OAAM;QACR,CAAC;QACD,WAAW,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,yEAAyE;IACzE,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAA;IAClE,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAA;IAEnE,iBAAiB;IACjB,MAAM,SAAS,CACb,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,qBAAqB,CAAC,EAC5C,MAAM,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,EAC/B,SAAS,CACV,CAAA;IACD,MAAM,SAAS,CACb,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC,EAC9C,MAAM,aAAa,CAAC,EAAE,YAAY,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAChF,SAAS,CACV,CAAA;IACD,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,eAAe,EAAE,EAAE,SAAS,CAAC,CAAA;IAChG,MAAM,SAAS,CACb,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,gCAAgC,cAAc,EAAE,CAAC,EAC/E,MAAM,QAAQ,CAAC;QACb,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,YAAY;KAC7C,CAAC,EACF,SAAS,CACV,CAAA;IACD,MAAM,SAAS,CACb,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,aAAa,EAAE,CAAC,EACtD,MAAM,QAAQ,CAAC,EAAE,YAAY,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAC3E,SAAS,CACV,CAAA;IACD,IAAI,EAAE,EAAE,CAAC;QACP,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAA;QAC3F,MAAM,SAAS,CACb,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,uBAAuB,CAAC,EACtD,MAAM,OAAO,CAAC,EAAE,YAAY,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAC5D,SAAS,CACV,CAAA;IACH,CAAC;IACD,MAAM,SAAS,CACb,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,EACvC,MAAM,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC,EACjC,SAAS,CACV,CAAA;IACD,MAAM,SAAS,CACb,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,EACtC,MAAM,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC,EAClC,SAAS,CACV,CAAA;IAED,oBAAoB;IACpB,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;IACzD,IAAI,MAAM,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;QACzD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACrC,MAAM,EAAE,CAAC,UAAU,CAAC,aAAa,EAAE,+BAA+B,CAAC,CAAA;YACnE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GACZ,YAAY,KAAK,OAAO;QACtB,CAAC,CAAC,kEAAkE;QACpE,CAAC,CAAC,6CAA6C,CAAA;IAEnD,CAAC,CAAC,IAAI,CACJ;QACE,0BAA0B;QAC1B,kBAAkB,QAAQ,EAAE;QAC5B,EAAE;QACF,eAAe,GAAG,MAAM,GAAG,sCAAsC;QACjE,EAAE;QACF,qBAAqB;QACrB,sCAAsC;KACvC,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,YAAY,CACb,CAAA;IAED,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;AAClB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAA0B;IAC5D,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,OAAO,CAAA;IACrD,MAAM,SAAS,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,CAAA;IAC3C,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAA;IAExE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAEpC,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,EAAE,MAAM,aAAa,EAAE,EAAE,SAAS,CAAC,CAAA;IAC1F,MAAM,SAAS,CACb,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,kCAAkC,CAAC,EACzD,MAAM,iBAAiB,EAAE,EACzB,SAAS,CACV,CAAA;IAED,wDAAwD;IACxD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAA;IAC9D,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAA;IAClE,MAAM,UAAU,GAAG,CAAC,MAAM,cAAc,CAAC,cAAc,CAAC,CAAC;QACvD,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,iBAAiB,CAAC,CAAC;YACzC,CAAC,CAAC,iBAAiB;YACnB,CAAC,CAAC,IAAI,CAAA;IAEV,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;QACtD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YACtC,CAAC,CAAC,IAAI,CACJ;gBACE,6BAA6B,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG;gBACzD,EAAE;gBACF,yEAAyE;aAC1E,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,aAAa,CACd,CAAA;QACH,CAAC;IACH,CAAC;IAED,CAAC,CAAC,IAAI,CACJ,2GAA2G,EAC3G,gBAAgB,CACjB,CAAA;IAED,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;AAClB,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,KAAK,UAAU,UAAU,CAAC,UAAkB;IAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAA;IAE5D,sDAAsD;IACtD,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACxB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,eAAe,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QACtC,MAAM,GAAG,CAAA;IACX,CAAC;IAED,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACxC,IAAI,YAAqC,CAAA;IACzC,IAAI,CAAC;QACH,YAAY,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAA4B,CAAA;IACxE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,sCAAsC,OAAO,KAAK,eAAe,CAAC,GAAG,CAAC,IAAI;YACxE,yEAAyE;YACzE,gFAAgF,CACnF,CAAA;IACH,CAAC;IAED,2FAA2F;IAC3F,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,MAAM,IAAI,YAAY,CAAA;IAChF,MAAM,YAAY,GAChB,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,IAAI,IAAI,QAAQ,IAAI,YAAY;QACnF,CAAC,CAAE,YAAoC,CAAC,MAAM;QAC9C,CAAC,CAAC,YAAY,CAAA;IAElB,IACE,CAAC,YAAY;QACb,OAAO,YAAY,KAAK,QAAQ;QAChC,CAAC,CAAC,MAAM,IAAI,YAAY,CAAC;QACzB,OAAQ,YAAkC,CAAC,IAAI,KAAK,QAAQ,EAC5D,CAAC;QACD,MAAM,IAAI,KAAK,CACb,+BAA+B,OAAO,yCAAyC;YAC7E,mEAAmE,CACtE,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GAAI,YAAiC,CAAC,IAAI,CAAA;IACpD,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CACb,+BAA+B,OAAO,wCAAwC,IAAI,IAAI,CACvF,CAAA;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAGnC;IACC,8DAA8D;IAC9D,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAA;IAEvE,kFAAkF;IAClF,qFAAqF;IACrF,mFAAmF;IACnF,mFAAmF;IACnF,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAEjD,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IAEzC,uDAAuD;IACvD,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,CAAC,sBAAsB;QAClC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,CAAA;IAEnF,IAAI,gBAAmD,CAAA;IACvD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,KAAK,CAAA;IAEtD,IAAI,OAAO,CAAC,UAAU,EAAE,oBAAoB,EAAE,CAAC;QAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;QACpE,IAAI,SAAS,EAAE,CAAC;YACd,gBAAgB,GAAG,KAAK,IAAI,EAAE;gBAC5B,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAA;gBAChC,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,SAAS,WAAW,MAAM,CAAC,UAAU,SAAS,CAAC,CAAA;YACzE,CAAC,CAAA;QACH,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,sCAAsC,IAAI,WAAW,QAAQ,KAAK,CAAC,CAAA;IAE/E,qBAAqB;IACrB,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;QACvC,MAAM,gBAAgB,EAAE,CAAA;QACxB,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;IACrC,CAAC;IAED,4CAA4C;IAC5C,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAA;IAErF,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,iFAAiF;QACjF,0EAA0E;QAC1E,iFAAiF;QACjF,+EAA+E;QAC/E,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QACnD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,uBAAuB,OAAO,CAAC,MAAM,yDAAyD;gBAC5F,yDAAyD,CAC5D,CAAA;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;IACjC,CAAC;SAAM,CAAC;QACN,wEAAwE;QACxE,IAAI,SAAS,GAAG,CAAC,CAAA;QACjB,IAAI,IAAI,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAA;QACrC,OAAO,IAAI,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;YAC3D,OAAO,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAA;YAC1F,MAAM,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;YACvD,SAAS,EAAE,CAAA;YACX,IAAI,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;QACD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,aAAa,SAAS,UAAU,CAAC,CAAA;QAC/C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;QACjC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;AACvB,CAAC"}
|