siteplane 0.1.39 → 0.1.41
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/README.md +15 -0
- package/dist/bin/siteplane.js +237 -300
- package/dist/index.js +204 -159
- package/dist/next.js +127 -82
- package/package.json +1 -1
package/dist/next.js
CHANGED
|
@@ -1216,11 +1216,48 @@ var CONTINUE_SITE_SETUP_LOCATOR_HINT_MAX_BYTES = 512;
|
|
|
1216
1216
|
var CONTINUE_SITE_SETUP_REQUESTED_LABEL_MAX_BYTES = 120;
|
|
1217
1217
|
var CONTINUE_SITE_SETUP_REQUESTED_SECTION_MAX_BYTES = 120;
|
|
1218
1218
|
var CONTINUE_SITE_SETUP_REQUESTED_SUBSECTION_MAX_BYTES = 120;
|
|
1219
|
+
var SITE_SETUP_OWNER_EDITABILITY_NOTE_MAX_LENGTH = 2e3;
|
|
1220
|
+
var SITE_SETUP_OWNER_EDITABILITY_NOTE_MAX_BYTES = 8e3;
|
|
1219
1221
|
var CONTINUE_SITE_SETUP_ITEMS_MAX_BYTES = 32 * 1024;
|
|
1220
1222
|
var CONTINUE_SITE_SETUP_HTTP_BODY_MAX_BYTES = 64 * 1024;
|
|
1221
1223
|
var siteSetupRunStatusSchema = z14.enum(SITE_SETUP_RUN_STATUSES);
|
|
1222
1224
|
var siteSetupRunModeSchema = z14.enum(SITE_SETUP_RUN_MODES);
|
|
1223
1225
|
var siteSetupErrorCodeSchema = z14.enum(SITE_SETUP_ERROR_CODES);
|
|
1226
|
+
var siteSetupTaskSchema = z14.object({
|
|
1227
|
+
contractVersion: z14.literal("siteplane.setup-task.v1"),
|
|
1228
|
+
workflow: z14.enum(["initial_setup", "structure_update"]),
|
|
1229
|
+
goal: z14.string().min(1),
|
|
1230
|
+
modules: z14.tuple([z14.literal("visual_editor")]),
|
|
1231
|
+
packages: z14.object({
|
|
1232
|
+
siteplane: z14.string().regex(/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/u),
|
|
1233
|
+
runtimeNext: z14.string().regex(/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/u)
|
|
1234
|
+
}).strict(),
|
|
1235
|
+
communication: z14.object({
|
|
1236
|
+
beforeSourceChanges: z14.string().min(1),
|
|
1237
|
+
updates: z14.array(z14.string().min(1)).min(1),
|
|
1238
|
+
blocker: z14.string().min(1)
|
|
1239
|
+
}).strict(),
|
|
1240
|
+
discovery: z14.object({
|
|
1241
|
+
inspectPublicRoutes: z14.boolean(),
|
|
1242
|
+
contentKinds: z14.array(z14.enum(["text", "longText", "link", "image"])).min(1),
|
|
1243
|
+
rules: z14.array(z14.string().min(1)).min(1)
|
|
1244
|
+
}).strict(),
|
|
1245
|
+
steps: z14.array(z14.object({
|
|
1246
|
+
id: z14.enum([
|
|
1247
|
+
"inspect_repository",
|
|
1248
|
+
"install_packages",
|
|
1249
|
+
"instrument_fields",
|
|
1250
|
+
"apply_contract",
|
|
1251
|
+
"deploy_production",
|
|
1252
|
+
"verify_deployment"
|
|
1253
|
+
]),
|
|
1254
|
+
instruction: z14.string().min(1)
|
|
1255
|
+
}).strict()).length(6),
|
|
1256
|
+
completion: z14.object({
|
|
1257
|
+
verifiedStatus: z14.literal("ready_for_review"),
|
|
1258
|
+
instruction: z14.string().min(1)
|
|
1259
|
+
}).strict()
|
|
1260
|
+
}).strict();
|
|
1224
1261
|
var editorFieldSchema = z14.object({
|
|
1225
1262
|
fieldId: fieldIdSchema,
|
|
1226
1263
|
label: z14.string().trim().min(1),
|
|
@@ -1305,6 +1342,7 @@ var editorDefinitionV1Schema = z14.object({
|
|
|
1305
1342
|
}
|
|
1306
1343
|
});
|
|
1307
1344
|
var forbiddenControlOrBidi = /[\u0000-\u001f\u007f-\u009f\u202a-\u202e\u2066-\u2069]/u;
|
|
1345
|
+
var forbiddenOwnerNoteControlOrBidi = /[\u0000-\u0008\u000b\u000c\u000e-\u001f\u007f-\u009f\u202a-\u202e\u2066-\u2069]/u;
|
|
1308
1346
|
var unsafeLocator = /<\/?[a-z][^>]*>|\b(?:javascript|data:text\/html)\s*:|\bon[a-z]+\s*=/iu;
|
|
1309
1347
|
var renderedPathSchema = z14.string().trim().transform((value) => value !== "/" ? value.replace(/\/+$/u, "") : value).superRefine((value, context) => {
|
|
1310
1348
|
if (!value.startsWith("/") || value === "$global" || value.includes("?") || value.includes("#")) {
|
|
@@ -1357,6 +1395,20 @@ var setupCorrectionItemsSchema = z14.array(setupCorrectionItemSchema).max(CONTIN
|
|
|
1357
1395
|
});
|
|
1358
1396
|
}
|
|
1359
1397
|
});
|
|
1398
|
+
var siteSetupOwnerEditabilityNoteSchema = z14.string().trim().max(SITE_SETUP_OWNER_EDITABILITY_NOTE_MAX_LENGTH).superRefine((value, context) => {
|
|
1399
|
+
if (utf8Bytes(value) > SITE_SETUP_OWNER_EDITABILITY_NOTE_MAX_BYTES) {
|
|
1400
|
+
context.addIssue({
|
|
1401
|
+
code: "custom",
|
|
1402
|
+
message: `ownerEditabilityNote exceeds ${SITE_SETUP_OWNER_EDITABILITY_NOTE_MAX_BYTES} UTF-8 bytes.`
|
|
1403
|
+
});
|
|
1404
|
+
}
|
|
1405
|
+
if (forbiddenOwnerNoteControlOrBidi.test(value)) {
|
|
1406
|
+
context.addIssue({
|
|
1407
|
+
code: "custom",
|
|
1408
|
+
message: "ownerEditabilityNote contains a forbidden control or bidi character."
|
|
1409
|
+
});
|
|
1410
|
+
}
|
|
1411
|
+
});
|
|
1360
1412
|
var canonicalHashSchema = z14.string().regex(/^sha256:[0-9a-f]{64}$/iu);
|
|
1361
1413
|
var deploymentRevisionSchema = normalizedSafeTextSchema(256, "deploymentRevision");
|
|
1362
1414
|
var continueSiteSetupInputSchema = z14.object({
|
|
@@ -1364,7 +1416,15 @@ var continueSiteSetupInputSchema = z14.object({
|
|
|
1364
1416
|
runId: z14.string().uuid(),
|
|
1365
1417
|
expectedFieldContractHash: canonicalHashSchema,
|
|
1366
1418
|
expectedDeploymentRevision: deploymentRevisionSchema,
|
|
1367
|
-
correctionItems: setupCorrectionItemsSchema
|
|
1419
|
+
correctionItems: setupCorrectionItemsSchema,
|
|
1420
|
+
ownerEditabilityNote: siteSetupOwnerEditabilityNoteSchema.optional()
|
|
1421
|
+
}).strict();
|
|
1422
|
+
var saveSiteSetupOwnerNoteInputSchema = z14.object({
|
|
1423
|
+
siteId: z14.string().uuid(),
|
|
1424
|
+
runId: z14.string().uuid(),
|
|
1425
|
+
expectedFieldContractHash: canonicalHashSchema,
|
|
1426
|
+
expectedDeploymentRevision: deploymentRevisionSchema,
|
|
1427
|
+
ownerEditabilityNote: siteSetupOwnerEditabilityNoteSchema
|
|
1368
1428
|
}).strict();
|
|
1369
1429
|
var siteSetupContextInputSchema = z14.object({}).strict();
|
|
1370
1430
|
var siteSetupApplyInputSchema = z14.object({
|
|
@@ -1529,6 +1589,7 @@ var FIELD_BRIDGE_MESSAGE_TYPES = [
|
|
|
1529
1589
|
"siteplane:field-bridge:preview-ack",
|
|
1530
1590
|
"siteplane:field-bridge:set-visual-control-state",
|
|
1531
1591
|
"siteplane:field-bridge:missing-content",
|
|
1592
|
+
"siteplane:field-bridge:preview-scrolled",
|
|
1532
1593
|
"siteplane:field-bridge:error"
|
|
1533
1594
|
];
|
|
1534
1595
|
var canonicalFieldContractHashSchema = z15.string().regex(/^sha256:[0-9a-f]{64}$/u);
|
|
@@ -1659,6 +1720,10 @@ var fieldBridgeMissingContentMessageSchema = fieldBridgeBaseSchema.extend({
|
|
|
1659
1720
|
suggestedSection: bridgeSectionSchema.optional()
|
|
1660
1721
|
}).strict()
|
|
1661
1722
|
});
|
|
1723
|
+
var fieldBridgePreviewScrolledMessageSchema = fieldBridgeBaseSchema.extend({
|
|
1724
|
+
type: z15.literal("siteplane:field-bridge:preview-scrolled"),
|
|
1725
|
+
payload: z15.object({ renderedPath: realRenderedPathSchema }).strict()
|
|
1726
|
+
});
|
|
1662
1727
|
var fieldBridgeErrorMessageSchema = fieldBridgeBaseSchema.extend({
|
|
1663
1728
|
type: z15.literal("siteplane:field-bridge:error"),
|
|
1664
1729
|
payload: z15.object({
|
|
@@ -1678,6 +1743,7 @@ var fieldBridgeMessageSchema = z15.discriminatedUnion("type", [
|
|
|
1678
1743
|
fieldBridgePreviewAckMessageSchema,
|
|
1679
1744
|
fieldBridgeSetVisualControlStateMessageSchema,
|
|
1680
1745
|
fieldBridgeMissingContentMessageSchema,
|
|
1746
|
+
fieldBridgePreviewScrolledMessageSchema,
|
|
1681
1747
|
fieldBridgeErrorMessageSchema
|
|
1682
1748
|
]);
|
|
1683
1749
|
|
|
@@ -1897,40 +1963,35 @@ alwaysApply: true
|
|
|
1897
1963
|
|
|
1898
1964
|
${bookingRulesTemplate}`;
|
|
1899
1965
|
|
|
1900
|
-
// ../cli/dist/
|
|
1901
|
-
import {
|
|
1902
|
-
import { randomBytes } from "crypto";
|
|
1903
|
-
import { z as z27 } from "zod";
|
|
1904
|
-
|
|
1905
|
-
// ../cli/dist/config/credentials.js
|
|
1906
|
-
import { execFile } from "child_process";
|
|
1966
|
+
// ../cli/dist/config/project-config.js
|
|
1967
|
+
import { access, chmod, open, readFile as readFile5, rename, rm } from "fs/promises";
|
|
1907
1968
|
import { randomUUID as randomUUID2 } from "crypto";
|
|
1908
|
-
import {
|
|
1909
|
-
import { dirname as dirname5, join as join3, relative } from "path";
|
|
1910
|
-
import { promisify } from "util";
|
|
1969
|
+
import { join as join3 } from "path";
|
|
1911
1970
|
import { z as z24 } from "zod";
|
|
1912
|
-
var
|
|
1913
|
-
|
|
1914
|
-
|
|
1971
|
+
var siteplaneProjectConfigSchema = z24.object({
|
|
1972
|
+
version: z24.literal(1),
|
|
1973
|
+
apiBaseUrl: z24.string().url(),
|
|
1974
|
+
siteId: z24.string().uuid(),
|
|
1975
|
+
publicSiteKeyId: z24.string().uuid(),
|
|
1976
|
+
publicSiteKey: z24.string().trim().min(1),
|
|
1977
|
+
fieldContractHash: z24.string().regex(/^sha256:[0-9a-f]{64}$/iu).optional()
|
|
1915
1978
|
}).strict();
|
|
1916
|
-
|
|
1979
|
+
async function readProjectConfig(projectDir) {
|
|
1980
|
+
return siteplaneProjectConfigSchema.parse(JSON.parse(await readFile5(join3(projectDir, "siteplane.config.json"), "utf8")));
|
|
1981
|
+
}
|
|
1917
1982
|
|
|
1918
|
-
// ../cli/dist/config/
|
|
1919
|
-
import {
|
|
1983
|
+
// ../cli/dist/config/credentials.js
|
|
1984
|
+
import { execFile } from "child_process";
|
|
1920
1985
|
import { randomUUID as randomUUID3 } from "crypto";
|
|
1921
|
-
import {
|
|
1986
|
+
import { chmod as chmod2, mkdir as mkdir5, open as open2, readFile as readFile6, rename as rename2, rm as rm2 } from "fs/promises";
|
|
1987
|
+
import { dirname as dirname5, join as join4, relative } from "path";
|
|
1988
|
+
import { promisify } from "util";
|
|
1922
1989
|
import { z as z25 } from "zod";
|
|
1923
|
-
var
|
|
1924
|
-
|
|
1925
|
-
|
|
1926
|
-
siteId: z25.string().uuid(),
|
|
1927
|
-
publicSiteKeyId: z25.string().uuid(),
|
|
1928
|
-
publicSiteKey: z25.string().trim().min(1),
|
|
1929
|
-
fieldContractHash: z25.string().regex(/^sha256:[0-9a-f]{64}$/iu).optional()
|
|
1990
|
+
var siteplaneCredentialsSchema = z25.object({
|
|
1991
|
+
accessToken: z25.string().trim().min(1),
|
|
1992
|
+
siteRevalidationSecret: z25.string().trim().min(1)
|
|
1930
1993
|
}).strict();
|
|
1931
|
-
|
|
1932
|
-
return siteplaneProjectConfigSchema.parse(JSON.parse(await readFile6(join4(projectDir, "siteplane.config.json"), "utf8")));
|
|
1933
|
-
}
|
|
1994
|
+
var execFileAsync = promisify(execFile);
|
|
1934
1995
|
|
|
1935
1996
|
// ../cli/dist/commands/init.js
|
|
1936
1997
|
import { join as join5 } from "path";
|
|
@@ -1958,24 +2019,6 @@ var bootstrapResponseSchema = z26.object({
|
|
|
1958
2019
|
])
|
|
1959
2020
|
}).strict();
|
|
1960
2021
|
|
|
1961
|
-
// ../cli/dist/commands/connect.js
|
|
1962
|
-
var claimResponseSchema = z27.object({
|
|
1963
|
-
ok: z27.literal(true),
|
|
1964
|
-
data: z27.object({
|
|
1965
|
-
pairingId: z27.string().uuid(),
|
|
1966
|
-
status: z27.literal("approval_required"),
|
|
1967
|
-
approvalUrl: z27.string().url()
|
|
1968
|
-
}).passthrough()
|
|
1969
|
-
}).strict();
|
|
1970
|
-
var waitingResponseSchema = z27.object({
|
|
1971
|
-
ok: z27.literal(true),
|
|
1972
|
-
data: z27.object({ status: z27.literal("approval_required") }).strict()
|
|
1973
|
-
}).strict();
|
|
1974
|
-
var bootstrapResponseSchema2 = z27.object({
|
|
1975
|
-
ok: z27.literal(true),
|
|
1976
|
-
data: siteSetupBootstrapDataSchema
|
|
1977
|
-
}).strict();
|
|
1978
|
-
|
|
1979
2022
|
// ../cli/dist/commands/scan.js
|
|
1980
2023
|
import { readdir } from "fs/promises";
|
|
1981
2024
|
import { extname, join as join6 } from "path";
|
|
@@ -2021,7 +2064,7 @@ async function collectSourceFiles(directory) {
|
|
|
2021
2064
|
import { execFile as execFile2 } from "child_process";
|
|
2022
2065
|
import { readFile as readFile7 } from "fs/promises";
|
|
2023
2066
|
import { promisify as promisify2 } from "util";
|
|
2024
|
-
import { z as
|
|
2067
|
+
import { z as z27 } from "zod";
|
|
2025
2068
|
|
|
2026
2069
|
// ../cli/dist/scan/next-source-scan.js
|
|
2027
2070
|
import ts2 from "typescript";
|
|
@@ -2688,52 +2731,54 @@ function isPositionalFieldReference(value) {
|
|
|
2688
2731
|
|
|
2689
2732
|
// ../cli/dist/commands/site-setup.js
|
|
2690
2733
|
var execFileAsync2 = promisify2(execFile2);
|
|
2691
|
-
var safeErrorSchema =
|
|
2692
|
-
code:
|
|
2693
|
-
message:
|
|
2734
|
+
var safeErrorSchema = z27.object({
|
|
2735
|
+
code: z27.string().trim().min(1),
|
|
2736
|
+
message: z27.string().trim().min(1)
|
|
2694
2737
|
}).passthrough();
|
|
2695
|
-
var errorResponseSchema2 =
|
|
2696
|
-
var contextDataSchema =
|
|
2697
|
-
|
|
2698
|
-
|
|
2699
|
-
|
|
2700
|
-
|
|
2701
|
-
|
|
2738
|
+
var errorResponseSchema2 = z27.object({ ok: z27.literal(false), error: safeErrorSchema }).passthrough();
|
|
2739
|
+
var contextDataSchema = z27.object({
|
|
2740
|
+
task: siteSetupTaskSchema,
|
|
2741
|
+
site: z27.object({ siteId: z27.string().uuid(), portalPath: z27.string() }),
|
|
2742
|
+
run: z27.object({
|
|
2743
|
+
runId: z27.string().uuid(),
|
|
2744
|
+
mode: z27.enum(["initial", "update"]),
|
|
2745
|
+
status: z27.enum([
|
|
2702
2746
|
"waiting_for_agent",
|
|
2703
2747
|
"working",
|
|
2704
2748
|
"action_required",
|
|
2705
2749
|
"ready_for_review"
|
|
2706
2750
|
]),
|
|
2707
|
-
fieldContractHash:
|
|
2708
|
-
deploymentOrigin:
|
|
2709
|
-
deploymentRevision:
|
|
2710
|
-
errorCode:
|
|
2711
|
-
errorMessage:
|
|
2751
|
+
fieldContractHash: z27.string().nullable(),
|
|
2752
|
+
deploymentOrigin: z27.string().nullable(),
|
|
2753
|
+
deploymentRevision: z27.string().nullable(),
|
|
2754
|
+
errorCode: z27.string().nullable(),
|
|
2755
|
+
errorMessage: z27.string().nullable()
|
|
2712
2756
|
}),
|
|
2713
|
-
structureHandoff:
|
|
2714
|
-
pendingFields:
|
|
2757
|
+
structureHandoff: z27.object({
|
|
2758
|
+
pendingFields: z27.array(setupCorrectionItemSchema).max(50),
|
|
2759
|
+
ownerEditabilityNote: siteSetupOwnerEditabilityNoteSchema
|
|
2715
2760
|
}).strict().nullable(),
|
|
2716
|
-
allowedTasks:
|
|
2717
|
-
requiredEnvironmentNames:
|
|
2761
|
+
allowedTasks: z27.array(z27.string()),
|
|
2762
|
+
requiredEnvironmentNames: z27.array(z27.string())
|
|
2718
2763
|
}).strict();
|
|
2719
|
-
var contextResponseSchema =
|
|
2720
|
-
var applyDataSchema =
|
|
2721
|
-
status:
|
|
2722
|
-
runId:
|
|
2723
|
-
contractVersionId:
|
|
2724
|
-
fieldContractHash:
|
|
2725
|
-
editorDefinitionHash:
|
|
2726
|
-
fieldCount:
|
|
2727
|
-
routeCount:
|
|
2764
|
+
var contextResponseSchema = z27.object({ ok: z27.literal(true), data: contextDataSchema }).strict();
|
|
2765
|
+
var applyDataSchema = z27.object({
|
|
2766
|
+
status: z27.enum(["applied", "ready_for_review"]),
|
|
2767
|
+
runId: z27.string().uuid().optional(),
|
|
2768
|
+
contractVersionId: z27.string().uuid().optional(),
|
|
2769
|
+
fieldContractHash: z27.string().regex(/^sha256:[0-9a-f]{64}$/u),
|
|
2770
|
+
editorDefinitionHash: z27.string().regex(/^sha256:[0-9a-f]{64}$/u).optional(),
|
|
2771
|
+
fieldCount: z27.number().int().nonnegative().optional(),
|
|
2772
|
+
routeCount: z27.number().int().nonnegative().optional()
|
|
2728
2773
|
}).strict();
|
|
2729
|
-
var applyResponseSchema =
|
|
2730
|
-
var verifyDataSchema =
|
|
2731
|
-
status:
|
|
2732
|
-
runId:
|
|
2733
|
-
deploymentOrigin:
|
|
2734
|
-
deploymentRevision:
|
|
2774
|
+
var applyResponseSchema = z27.object({ ok: z27.literal(true), data: applyDataSchema }).strict();
|
|
2775
|
+
var verifyDataSchema = z27.object({
|
|
2776
|
+
status: z27.literal("ready_for_review"),
|
|
2777
|
+
runId: z27.string().uuid().optional(),
|
|
2778
|
+
deploymentOrigin: z27.string().url().optional(),
|
|
2779
|
+
deploymentRevision: z27.string().optional()
|
|
2735
2780
|
}).strict();
|
|
2736
|
-
var verifyResponseSchema =
|
|
2781
|
+
var verifyResponseSchema = z27.object({ ok: z27.literal(true), data: verifyDataSchema }).strict();
|
|
2737
2782
|
|
|
2738
2783
|
// src/next.ts
|
|
2739
2784
|
var SiteplaneNextContractError = class extends Error {
|