bsmnt 0.6.4 → 0.7.0
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/application/add-integration/index.d.ts.map +1 -1
- package/dist/application/add-integration/index.js +30 -4
- package/dist/application/add-integration/index.js.map +1 -1
- package/dist/application/shared/node-version.d.ts +8 -0
- package/dist/application/shared/node-version.d.ts.map +1 -0
- package/dist/application/shared/node-version.js +31 -0
- package/dist/application/shared/node-version.js.map +1 -0
- package/dist/application/shared/strip-ansi.d.ts +3 -0
- package/dist/application/shared/strip-ansi.d.ts.map +1 -0
- package/dist/application/shared/strip-ansi.js +7 -0
- package/dist/application/shared/strip-ansi.js.map +1 -0
- package/dist/core/create/execute-plan.d.ts +3 -0
- package/dist/core/create/execute-plan.d.ts.map +1 -1
- package/dist/core/create/execute-plan.js +3 -0
- package/dist/core/create/execute-plan.js.map +1 -1
- package/dist/domain/cms.d.ts +2 -0
- package/dist/domain/cms.d.ts.map +1 -1
- package/dist/domain/cms.js +1 -0
- package/dist/domain/cms.js.map +1 -1
- package/dist/domain/forms.d.ts +2 -2
- package/dist/domain/forms.js +1 -1
- package/dist/domain/forms.js.map +1 -1
- package/dist/domain/integration.d.ts +7 -3
- package/dist/domain/integration.d.ts.map +1 -1
- package/dist/domain/integration.js.map +1 -1
- package/dist/domain/skills.d.ts +26 -8
- package/dist/domain/skills.d.ts.map +1 -1
- package/dist/domain/skills.js +30 -9
- package/dist/domain/skills.js.map +1 -1
- package/dist/index.js +132 -16
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/create/executor.d.ts.map +1 -1
- package/dist/infrastructure/create/executor.js +2 -1
- package/dist/infrastructure/create/executor.js.map +1 -1
- package/dist/infrastructure/create/init-git-repo.d.ts +11 -7
- package/dist/infrastructure/create/init-git-repo.d.ts.map +1 -1
- package/dist/infrastructure/create/init-git-repo.js +21 -18
- package/dist/infrastructure/create/init-git-repo.js.map +1 -1
- package/dist/infrastructure/create/sanity-auth.d.ts +11 -0
- package/dist/infrastructure/create/sanity-auth.d.ts.map +1 -0
- package/dist/infrastructure/create/sanity-auth.js +72 -0
- package/dist/infrastructure/create/sanity-auth.js.map +1 -0
- package/dist/infrastructure/create/setup-agent.d.ts +4 -3
- package/dist/infrastructure/create/setup-agent.d.ts.map +1 -1
- package/dist/infrastructure/create/setup-agent.js +51 -30
- package/dist/infrastructure/create/setup-agent.js.map +1 -1
- package/dist/infrastructure/create/setup-dotenvx.js +1 -1
- package/dist/infrastructure/create/setup-dotenvx.js.map +1 -1
- package/dist/infrastructure/create/setup-remote.d.ts +14 -0
- package/dist/infrastructure/create/setup-remote.d.ts.map +1 -0
- package/dist/infrastructure/create/setup-remote.js +139 -0
- package/dist/infrastructure/create/setup-remote.js.map +1 -0
- package/dist/infrastructure/create/setup-sanity.d.ts +3 -2
- package/dist/infrastructure/create/setup-sanity.d.ts.map +1 -1
- package/dist/infrastructure/create/setup-sanity.js +34 -49
- package/dist/infrastructure/create/setup-sanity.js.map +1 -1
- package/dist/modules/features/env/dotenvx/config.d.ts.map +1 -1
- package/dist/modules/features/env/dotenvx/config.js +6 -0
- package/dist/modules/features/env/dotenvx/config.js.map +1 -1
- package/dist/paths.d.ts +0 -2
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +0 -2
- package/dist/paths.js.map +1 -1
- package/package.json +3 -3
- package/src/agent-skills/hubspot-pagebuilder-block/SKILL.md +160 -0
- package/src/agent-skills/rss-feed/SKILL.md +158 -0
- package/src/modules/features/cms/sanity/files/lib/integrations/sanity/sanity.config.ts +3 -0
- package/src/modules/features/cms/sanity-pagebuilder/files/lib/integrations/sanity/sanity.config.ts +3 -0
- package/src/modules/features/cms/sanity-pagebuilder/files/lib/scripts/sanity-typegen.ts +16 -25
- package/src/modules/features/env/dotenvx/files/push-keys.mjs +7 -7
- package/src/modules/features/env/dotenvx/files/setup-remote.ts +182 -0
- package/src/modules/features/forms/hubspot/files/_sanity-adapter/form-block.ts +60 -0
- package/src/modules/features/forms/hubspot/files/_sanity-adapter/form-field.ts +30 -0
- package/src/modules/features/forms/hubspot/files/_sanity-adapter/form-select-input.tsx +169 -0
- package/src/modules/features/forms/hubspot/files/lib/integrations/hubspot/README.md +114 -0
- package/src/modules/features/forms/hubspot/files/lib/integrations/hubspot/embed.tsx +165 -0
- package/src/modules/features/forms/hubspot/files/lib/integrations/hubspot/form-selection.ts +40 -0
- package/src/modules/features/forms/hubspot/files/lib/integrations/hubspot/form.tsx +29 -0
- package/src/modules/features/forms/hubspot/files/lib/integrations/hubspot/forms.ts +142 -0
- package/src/modules/features/forms/hubspot/files/lib/integrations/hubspot/hubspot-form.css +634 -0
- package/src/modules/features/forms/hubspot/files/lib/integrations/hubspot/skeleton.tsx +24 -0
- package/src/templates/next-default/README.md +1 -0
- package/src/templates/next-default/knip.json +9 -1
- package/src/templates/next-experiments/README.md +1 -0
- package/src/templates/next-experiments/knip.json +9 -1
- package/src/templates/next-pagebuilder/README.md +1 -0
- package/src/templates/next-pagebuilder/knip.json +7 -2
- package/src/templates/next-pagebuilder/lib/integrations/sanity/sanity.types.ts +1197 -176
- package/src/templates/next-webgl/README.md +1 -0
- package/src/templates/next-webgl/knip.json +9 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-sanity.js","sourceRoot":"","sources":["../../../src/infrastructure/create/setup-sanity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup-sanity.js","sourceRoot":"","sources":["../../../src/infrastructure/create/setup-sanity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/modules/features/env/dotenvx/config.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,iFAAiF;IACjF,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,2EAA2E;IAC3E,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7C,qEAAqE;IACrE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACxC;AAED,eAAO,MAAM,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/modules/features/env/dotenvx/config.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,iFAAiF;IACjF,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,2EAA2E;IAC3E,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7C,qEAAqE;IACrE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACxC;AAED,eAAO,MAAM,aAAa,EAAE,aAsD3B,CAAC"}
|
|
@@ -24,6 +24,11 @@ export const dotenvxConfig = {
|
|
|
24
24
|
// Push the private keys from .env.keys to CI / host so envs decrypt there.
|
|
25
25
|
// Pick a target from a menu, or pass `github` / `vercel`.
|
|
26
26
|
"env:setup-remote": "bun run scripts/push-keys.mjs",
|
|
27
|
+
// One-shot remote provisioning: create the GitHub repo, link a Vercel
|
|
28
|
+
// project to it, and push the private key to Vercel env — the key lands
|
|
29
|
+
// before the git connection so the first push can decrypt. (CI reads the
|
|
30
|
+
// key from 1Password via OP_SERVICE_ACCOUNT_TOKEN, so no GitHub secret.)
|
|
31
|
+
"setup-remote": "bun ./lib/scripts/setup-remote.ts",
|
|
27
32
|
// Save the private key to 1Password (Development vault) + point .env's op-ref at it.
|
|
28
33
|
"env:save": "bun run scripts/save-key.mjs",
|
|
29
34
|
// Onboarding: bun install restores .env.keys from 1Password (soft — never
|
|
@@ -36,6 +41,7 @@ export const dotenvxConfig = {
|
|
|
36
41
|
"scripts/decrypt-env.mjs": "decrypt-env.mjs",
|
|
37
42
|
"scripts/write-env.mjs": "write-env.mjs",
|
|
38
43
|
"scripts/push-keys.mjs": "push-keys.mjs",
|
|
44
|
+
"lib/scripts/setup-remote.ts": "setup-remote.ts",
|
|
39
45
|
"scripts/save-key.mjs": "save-key.mjs",
|
|
40
46
|
// Runtime decryption on serverless (Vercel functions) — the run wrapper
|
|
41
47
|
// only covers local dev + build. Next.js root instrumentation file.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../src/modules/features/env/dotenvx/config.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,gEAAgE;AAchE,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC3C,IAAI,EAAE,SAAS;IAEf,YAAY,EAAE;QACb,kBAAkB,EAAE,SAAS;KAC7B;IAED,WAAW,EAAE;QACZ,OAAO;QACP,OAAO;QACP,KAAK;QACL,WAAW;QACX,aAAa;QACb,sBAAsB;KACtB;IAED,aAAa,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEnD,UAAU,EAAE;QACX,WAAW,EAAE,+BAA+B;QAC5C,UAAU,EAAE,iCAAiC;QAC7C,2EAA2E;QAC3E,4EAA4E;QAC5E,SAAS,EAAE,mCAAmC;QAC9C,iBAAiB,EAAE,uCAAuC;QAC1D,2EAA2E;QAC3E,0DAA0D;QAC1D,kBAAkB,EAAE,+BAA+B;QACnD,qFAAqF;QACrF,UAAU,EAAE,8BAA8B;QAC1C,0EAA0E;QAC1E,uEAAuE;QACvE,UAAU,EAAE,sCAAsC;KAClD;IAED,KAAK,EAAE;QACN,gCAAgC,EAAE,cAAc;QAChD,uBAAuB,EAAE,eAAe;QACxC,yBAAyB,EAAE,iBAAiB;QAC5C,uBAAuB,EAAE,eAAe;QACxC,uBAAuB,EAAE,eAAe;QACxC,sBAAsB,EAAE,cAAc;QACtC,wEAAwE;QACxE,oEAAoE;QACpE,oBAAoB,EAAE,oBAAoB;QAC1C,mEAAmE;QACnE,eAAe,EAAE,cAAc;KAC/B;CACD,CAAC"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../src/modules/features/env/dotenvx/config.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,gEAAgE;AAchE,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC3C,IAAI,EAAE,SAAS;IAEf,YAAY,EAAE;QACb,kBAAkB,EAAE,SAAS;KAC7B;IAED,WAAW,EAAE;QACZ,OAAO;QACP,OAAO;QACP,KAAK;QACL,WAAW;QACX,aAAa;QACb,sBAAsB;KACtB;IAED,aAAa,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEnD,UAAU,EAAE;QACX,WAAW,EAAE,+BAA+B;QAC5C,UAAU,EAAE,iCAAiC;QAC7C,2EAA2E;QAC3E,4EAA4E;QAC5E,SAAS,EAAE,mCAAmC;QAC9C,iBAAiB,EAAE,uCAAuC;QAC1D,2EAA2E;QAC3E,0DAA0D;QAC1D,kBAAkB,EAAE,+BAA+B;QACnD,sEAAsE;QACtE,wEAAwE;QACxE,yEAAyE;QACzE,yEAAyE;QACzE,cAAc,EAAE,mCAAmC;QACnD,qFAAqF;QACrF,UAAU,EAAE,8BAA8B;QAC1C,0EAA0E;QAC1E,uEAAuE;QACvE,UAAU,EAAE,sCAAsC;KAClD;IAED,KAAK,EAAE;QACN,gCAAgC,EAAE,cAAc;QAChD,uBAAuB,EAAE,eAAe;QACxC,yBAAyB,EAAE,iBAAiB;QAC5C,uBAAuB,EAAE,eAAe;QACxC,uBAAuB,EAAE,eAAe;QACxC,6BAA6B,EAAE,iBAAiB;QAChD,sBAAsB,EAAE,cAAc;QACtC,wEAAwE;QACxE,oEAAoE;QACpE,oBAAoB,EAAE,oBAAoB;QAC1C,mEAAmE;QACnE,eAAe,EAAE,cAAc;KAC/B;CACD,CAAC"}
|
package/dist/paths.d.ts
CHANGED
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
export declare const TEMPLATES_DIR: string;
|
|
3
3
|
/** Directory containing the reusable React hook files. */
|
|
4
4
|
export declare const TEMPLATE_HOOKS_DIR: string;
|
|
5
|
-
/** Directory containing the Biome linting plugin rules. */
|
|
6
|
-
export declare const PLUGINS_DIR: string;
|
|
7
5
|
/** Directory containing bundled agent skills copied into generated projects. */
|
|
8
6
|
export declare const AGENT_SKILLS_DIR: string;
|
|
9
7
|
/** Node-version guard injected into each scaffolded project; under `src/` so it ships verbatim. */
|
package/dist/paths.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAaA,6DAA6D;AAC7D,eAAO,MAAM,aAAa,EAAE,MAI3B,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,kBAAkB,EAAE,MAIhC,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAaA,6DAA6D;AAC7D,eAAO,MAAM,aAAa,EAAE,MAI3B,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,kBAAkB,EAAE,MAIhC,CAAC;AAEF,gFAAgF;AAChF,eAAO,MAAM,gBAAgB,EAAE,MAI9B,CAAC;AAEF,mGAAmG;AACnG,eAAO,MAAM,uBAAuB,EAAE,MAKrC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAQ9B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,EAAE,MAQ1C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAQ/B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAQ/B,CAAC"}
|
package/dist/paths.js
CHANGED
|
@@ -12,8 +12,6 @@ const PROJECT_ROOT = path.resolve(__dirname, "..");
|
|
|
12
12
|
export const TEMPLATES_DIR = path.join(PROJECT_ROOT, "src", "templates");
|
|
13
13
|
/** Directory containing the reusable React hook files. */
|
|
14
14
|
export const TEMPLATE_HOOKS_DIR = path.join(PROJECT_ROOT, "src", "template-hooks");
|
|
15
|
-
/** Directory containing the Biome linting plugin rules. */
|
|
16
|
-
export const PLUGINS_DIR = path.join(PROJECT_ROOT, "plugins");
|
|
17
15
|
/** Directory containing bundled agent skills copied into generated projects. */
|
|
18
16
|
export const AGENT_SKILLS_DIR = path.join(PROJECT_ROOT, "src", "agent-skills");
|
|
19
17
|
/** Node-version guard injected into each scaffolded project; under `src/` so it ships verbatim. */
|
package/dist/paths.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,UAAU,GAAW,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1D,MAAM,SAAS,GAAW,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAEnD;;;;GAIG;AACH,MAAM,YAAY,GAAW,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAE3D,6DAA6D;AAC7D,MAAM,CAAC,MAAM,aAAa,GAAW,IAAI,CAAC,IAAI,CAC7C,YAAY,EACZ,KAAK,EACL,WAAW,CACX,CAAC;AAEF,0DAA0D;AAC1D,MAAM,CAAC,MAAM,kBAAkB,GAAW,IAAI,CAAC,IAAI,CAClD,YAAY,EACZ,KAAK,EACL,gBAAgB,CAChB,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,UAAU,GAAW,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1D,MAAM,SAAS,GAAW,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAEnD;;;;GAIG;AACH,MAAM,YAAY,GAAW,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAE3D,6DAA6D;AAC7D,MAAM,CAAC,MAAM,aAAa,GAAW,IAAI,CAAC,IAAI,CAC7C,YAAY,EACZ,KAAK,EACL,WAAW,CACX,CAAC;AAEF,0DAA0D;AAC1D,MAAM,CAAC,MAAM,kBAAkB,GAAW,IAAI,CAAC,IAAI,CAClD,YAAY,EACZ,KAAK,EACL,gBAAgB,CAChB,CAAC;AAEF,gFAAgF;AAChF,MAAM,CAAC,MAAM,gBAAgB,GAAW,IAAI,CAAC,IAAI,CAChD,YAAY,EACZ,KAAK,EACL,cAAc,CACd,CAAC;AAEF,mGAAmG;AACnG,MAAM,CAAC,MAAM,uBAAuB,GAAW,IAAI,CAAC,IAAI,CACvD,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,wBAAwB,CACxB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAW,IAAI,CAAC,IAAI,CAChD,YAAY,EACZ,KAAK,EACL,SAAS,EACT,UAAU,EACV,KAAK,EACL,QAAQ,EACR,OAAO,CACP,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAW,IAAI,CAAC,IAAI,CAC5D,YAAY,EACZ,KAAK,EACL,SAAS,EACT,UAAU,EACV,KAAK,EACL,oBAAoB,EACpB,OAAO,CACP,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAW,IAAI,CAAC,IAAI,CACjD,YAAY,EACZ,KAAK,EACL,SAAS,EACT,UAAU,EACV,OAAO,EACP,SAAS,EACT,OAAO,CACP,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAW,IAAI,CAAC,IAAI,CACjD,YAAY,EACZ,KAAK,EACL,SAAS,EACT,UAAU,EACV,KAAK,EACL,SAAS,EACT,OAAO,CACP,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bsmnt",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"packageManager": "bun@1.3.14",
|
|
5
5
|
"description": "CLI to scaffold basement projects and add integrations",
|
|
6
6
|
"type": "module",
|
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
"src/agent-skills",
|
|
27
27
|
"src/modules/features/cms/sanity/files",
|
|
28
28
|
"src/modules/features/cms/sanity-pagebuilder/files",
|
|
29
|
+
"src/modules/features/forms/hubspot/files",
|
|
29
30
|
"src/modules/features/env/dotenvx/files",
|
|
30
|
-
"src/assets"
|
|
31
|
-
"plugins"
|
|
31
|
+
"src/assets"
|
|
32
32
|
],
|
|
33
33
|
"scripts": {
|
|
34
34
|
"preinstall": "node src/assets/check-node-version.mjs",
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: hubspot-pagebuilder-block
|
|
3
|
+
description: >-
|
|
4
|
+
Register a HubSpot form as a selectable `hubspotFormBlock` in a basement Sanity
|
|
5
|
+
page builder. Use when the user asks to "integrate/add HubSpot to the page
|
|
6
|
+
builder", "add a HubSpot form block", "make the HubSpot form selectable in the
|
|
7
|
+
page builder / Studio", "register the HubSpot form block in Sanity", or "wire
|
|
8
|
+
up the HubSpot form so editors can drop it on a page". Also covers rendering a
|
|
9
|
+
HubSpot form directly (no CMS) when asked how to use/show a HubSpot form.
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Wire the HubSpot form block into the page builder
|
|
13
|
+
|
|
14
|
+
The HubSpot integration ships an agnostic core plus an optional Sanity adapter
|
|
15
|
+
(`lib/integrations/hubspot/sanity/`). The adapter is **not** auto-registered into
|
|
16
|
+
the page builder (that wiring couples to each project's schema), so do it here by
|
|
17
|
+
editing the project's real files. Read each file first and adapt to its actual
|
|
18
|
+
shape — do not blindly pattern-match. If an anchor below is missing, stop and
|
|
19
|
+
report it rather than guessing.
|
|
20
|
+
|
|
21
|
+
## 0. Preconditions
|
|
22
|
+
|
|
23
|
+
- `lib/integrations/hubspot/` exists (the integration was added).
|
|
24
|
+
- `lib/integrations/hubspot/sanity/form-block.ts` exists (Sanity adapter — only
|
|
25
|
+
copied when Sanity is present). If it's missing, the project isn't a Sanity
|
|
26
|
+
project; skip to **Direct rendering** below.
|
|
27
|
+
- The project has a page builder: `lib/integrations/sanity/page-builder-config.ts`
|
|
28
|
+
exists. If not, it's the standard Sanity integration (no page builder) — skip to
|
|
29
|
+
**Direct rendering**.
|
|
30
|
+
|
|
31
|
+
## 1. Register the schema — `lib/integrations/sanity/schemas/index.ts`
|
|
32
|
+
|
|
33
|
+
Add the import and include the block in the `schema.types` array (alongside the
|
|
34
|
+
other component documents, e.g. near `hero` / `description`):
|
|
35
|
+
|
|
36
|
+
```ts
|
|
37
|
+
import { hubspotFormBlock } from "@/lib/integrations/hubspot/sanity/form-block"
|
|
38
|
+
// ...
|
|
39
|
+
export const schema: { types: SchemaTypeDefinition[] } = {
|
|
40
|
+
types: [
|
|
41
|
+
// ...existing component types...
|
|
42
|
+
hubspotFormBlock,
|
|
43
|
+
],
|
|
44
|
+
}
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## 2. Add it to the page-builder config — `lib/integrations/sanity/page-builder-config.ts`
|
|
48
|
+
|
|
49
|
+
Extend the `PageBuilderDocumentType` union and add a reusable reference member:
|
|
50
|
+
|
|
51
|
+
```ts
|
|
52
|
+
export type PageBuilderDocumentType =
|
|
53
|
+
| "hero"
|
|
54
|
+
| "description"
|
|
55
|
+
| "hubspotFormBlock"
|
|
56
|
+
// ...rest...
|
|
57
|
+
|
|
58
|
+
// inside reusablePageBuilderReferenceMembers:
|
|
59
|
+
{
|
|
60
|
+
documentType: "hubspotFormBlock",
|
|
61
|
+
name: "hubspotFormBlockReference",
|
|
62
|
+
title: "HubSpot Form",
|
|
63
|
+
groups: ["generic"],
|
|
64
|
+
},
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## 3. List it in the Studio — `lib/integrations/sanity/structure.ts`
|
|
68
|
+
|
|
69
|
+
Under the "Reusable Components" list, add (the schema's own envelope icon is used
|
|
70
|
+
automatically, so `.icon()` is optional):
|
|
71
|
+
|
|
72
|
+
```ts
|
|
73
|
+
S.documentTypeListItem("hubspotFormBlock").title("HubSpot Forms"),
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## 4. (Optional) Envelope icon — `lib/integrations/sanity/icons.ts`
|
|
77
|
+
|
|
78
|
+
The block already defaults to `@sanity/icons`' `EnvelopeIcon`. To match this
|
|
79
|
+
project's phosphor duotone icons, add and apply one:
|
|
80
|
+
|
|
81
|
+
```ts
|
|
82
|
+
import { EnvelopeIcon } from "@phosphor-icons/react/dist/ssr"
|
|
83
|
+
export const hubspotFormIcon = asDuotoneIcon(EnvelopeIcon)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Then override the icon where the block is registered in `schemas/index.ts`:
|
|
87
|
+
|
|
88
|
+
```ts
|
|
89
|
+
import { hubspotFormBlock as hubspotFormBlockBase } from "@/lib/integrations/hubspot/sanity/form-block"
|
|
90
|
+
import { hubspotFormIcon } from "../icons"
|
|
91
|
+
const hubspotFormBlock: SchemaTypeDefinition = {
|
|
92
|
+
...hubspotFormBlockBase,
|
|
93
|
+
icon: hubspotFormIcon,
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## 5. Render it — `components/page-builder/renderer.tsx` + a new component
|
|
98
|
+
|
|
99
|
+
Create `components/page-builder/components/hubspot-form.tsx`:
|
|
100
|
+
|
|
101
|
+
```tsx
|
|
102
|
+
import { stegaClean } from "next-sanity"
|
|
103
|
+
import { HubSpotForm } from "@/lib/integrations/hubspot/form"
|
|
104
|
+
import { decodeHubSpotFormSelection } from "@/lib/integrations/hubspot/form-selection"
|
|
105
|
+
import type { PageBuilderBlock } from "../types"
|
|
106
|
+
|
|
107
|
+
type HubSpotFormBlockProps = {
|
|
108
|
+
block: Extract<PageBuilderBlock, { _type: "hubspotFormBlock" }>
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
export function HubSpotFormBlock({ block }: HubSpotFormBlockProps) {
|
|
112
|
+
// stegaClean strips visual-editing metadata so the JSON selection parses.
|
|
113
|
+
const selection = decodeHubSpotFormSelection(stegaClean(block.form))
|
|
114
|
+
if (!selection) return null
|
|
115
|
+
|
|
116
|
+
return (
|
|
117
|
+
<section className="px-4 py-8 md:py-12">
|
|
118
|
+
<HubSpotForm
|
|
119
|
+
className="mx-auto max-w-[590px]"
|
|
120
|
+
formId={selection.formId}
|
|
121
|
+
portalId={selection.portalId}
|
|
122
|
+
region={selection.region}
|
|
123
|
+
/>
|
|
124
|
+
</section>
|
|
125
|
+
)
|
|
126
|
+
}
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
Then add the case to the renderer's `switch (block._type)`:
|
|
130
|
+
|
|
131
|
+
```tsx
|
|
132
|
+
import { HubSpotFormBlock } from "./components/hubspot-form"
|
|
133
|
+
// ...
|
|
134
|
+
case "hubspotFormBlock":
|
|
135
|
+
return <HubSpotFormBlock block={block} />
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## 6. Regenerate types + verify
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
bun run sanity:typegen # regenerates sanity.types.ts so PageBuilderBlock includes the block
|
|
142
|
+
bun typecheck
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
`bun typecheck` must pass. The page query already spreads dereferenced block
|
|
146
|
+
fields (`...@->{ ... }`), so `form` flows through with no query change.
|
|
147
|
+
|
|
148
|
+
## Direct rendering (no page builder)
|
|
149
|
+
|
|
150
|
+
For any project, render a form without a CMS by passing the IDs directly:
|
|
151
|
+
|
|
152
|
+
```tsx
|
|
153
|
+
import { HubSpotForm } from "@/lib/integrations/hubspot/form"
|
|
154
|
+
|
|
155
|
+
<HubSpotForm portalId="…" formId="…" region="na1" />
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
`region` is the portal's data-hosting location (`na1`, `eu1`, …). Requires
|
|
159
|
+
`HUBSPOT_ACCESS_TOKEN` only for the Studio form picker, not for rendering. See
|
|
160
|
+
`lib/integrations/hubspot/README.md` for full usage.
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rss-feed
|
|
3
|
+
description: >-
|
|
4
|
+
Add or extend an RSS feed for a Sanity content type in a basement-scaffolded
|
|
5
|
+
project. Use when the user asks to "add RSS for events / changelog / releases /
|
|
6
|
+
<type>", "create a feed.xml for <content type>", "add a second RSS feed",
|
|
7
|
+
"extend the blog feed to include X", or "make this content syndicatable". The
|
|
8
|
+
blog feed at /feed.xml ships by default; this covers everything beyond it.
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Add an RSS feed for a content type
|
|
12
|
+
|
|
13
|
+
basement Sanity projects ship a blog feed at `app/feed.xml/route.ts` plus a
|
|
14
|
+
reusable helper at `lib/utils/rss.ts` (`generateRssFeed`, `rssErrorResponse`).
|
|
15
|
+
To syndicate any other content type (events, changelog, releases, …), reuse that
|
|
16
|
+
helper — do **not** rewrite the XML generation.
|
|
17
|
+
|
|
18
|
+
Read each real file first and adapt to its actual shape; the two CMS variants
|
|
19
|
+
differ (see below). If `lib/utils/rss.ts` is missing, the project predates the
|
|
20
|
+
feed — port it from the blog feed pattern or stop and report.
|
|
21
|
+
|
|
22
|
+
## Decision: extend vs. new feed
|
|
23
|
+
|
|
24
|
+
- **New dedicated feed** (recommended): `app/<type>/feed.xml/route.ts`, e.g.
|
|
25
|
+
`/events/feed.xml`. Cleaner, independently cacheable, one query per feed.
|
|
26
|
+
- **Extend the blog feed**: only when the user explicitly wants a single combined
|
|
27
|
+
feed. Merge the extra items into the existing `app/feed.xml/route.ts` `items`
|
|
28
|
+
array before `generateRssFeed`.
|
|
29
|
+
|
|
30
|
+
## The helper contract — `lib/utils/rss.ts`
|
|
31
|
+
|
|
32
|
+
```ts
|
|
33
|
+
generateRssFeed({
|
|
34
|
+
title: string,
|
|
35
|
+
link: string, // channel homepage for this feed
|
|
36
|
+
description: string,
|
|
37
|
+
feedUrl: string, // absolute URL of THIS feed (self link)
|
|
38
|
+
items: RssFeedItem[],
|
|
39
|
+
})
|
|
40
|
+
// RssFeedItem: { title, link, description?, pubDate?, authors?, category? }
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
`pubDate` is parsed with `new Date(...)`, so pass an ISO date string. `authors`
|
|
44
|
+
becomes `<dc:creator>` entries. Always return `rssErrorResponse()` from a `catch`.
|
|
45
|
+
|
|
46
|
+
## Identify the variant
|
|
47
|
+
|
|
48
|
+
Look at `lib/integrations/sanity/queries.ts`:
|
|
49
|
+
|
|
50
|
+
- **Standard Sanity** — content types are top-level documents (like `article`).
|
|
51
|
+
Use `getBaseUrl` from `lib/utils/url.ts` and build paths inline
|
|
52
|
+
(`` `${baseUrl}/blog/${slug}` ``). Only `getBaseUrl` is guaranteed here: the base
|
|
53
|
+
templates ship their own `lib/utils/url.ts` and the integration is copied with
|
|
54
|
+
`overwrite: false`, so don't rely on extra exports like `getPageUrl`.
|
|
55
|
+
- **Page builder** — content is `page` documents under a `pageFolder`, with the
|
|
56
|
+
type-specific fields inside a page-builder block (like `blogContent`). URL
|
|
57
|
+
helpers live in `lib/utils/sitemap.ts` (`getSitemapBaseUrl`, `getPageUrl`).
|
|
58
|
+
|
|
59
|
+
## Steps
|
|
60
|
+
|
|
61
|
+
1. **Query** — add a GROQ query to `lib/integrations/sanity/queries.ts` (wrap with
|
|
62
|
+
`defineQuery` so typegen types it). Select the fields you'll map: title, slug
|
|
63
|
+
(or `resolvedSlug`), a date, an author, and `metadata` (for `noIndex`).
|
|
64
|
+
2. **Route** — create `app/<type>/feed.xml/route.ts` with
|
|
65
|
+
`export const dynamic = "force-dynamic"`, guard on a null `client`, fetch in a
|
|
66
|
+
`try/catch`, filter out `metadata?.noIndex`, map docs to `RssFeedItem`, return
|
|
67
|
+
`generateRssFeed(...)`.
|
|
68
|
+
3. **Register the path in the CLI** — if you're editing the *basement-cli source*
|
|
69
|
+
(not a generated project), add `"app/<type>/feed.xml"` to the integration's
|
|
70
|
+
`additivePaths` in `config.ts`. In a generated project, no registration is
|
|
71
|
+
needed — the file is live.
|
|
72
|
+
4. **Regenerate types + verify**: `bun run sanity:typegen` then `bun typecheck`,
|
|
73
|
+
and `curl http://localhost:3000/<type>/feed.xml` to confirm valid RSS 2.0.
|
|
74
|
+
|
|
75
|
+
## Worked example — `event` type (standard Sanity)
|
|
76
|
+
|
|
77
|
+
GROQ (`queries.ts`):
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
export const ALL_EVENTS_QUERY = defineQuery(`
|
|
81
|
+
*[_type == "event"] | order(startDate desc) {
|
|
82
|
+
_id, title, slug, excerpt, host, startDate, metadata, _updatedAt
|
|
83
|
+
}
|
|
84
|
+
`);
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Route (`app/events/feed.xml/route.ts`):
|
|
88
|
+
|
|
89
|
+
```ts
|
|
90
|
+
import { client } from "@/lib/integrations/sanity/client";
|
|
91
|
+
import { ALL_EVENTS_QUERY } from "@/lib/integrations/sanity/queries";
|
|
92
|
+
import { generateRssFeed, rssErrorResponse } from "@/lib/utils/rss";
|
|
93
|
+
import { getBaseUrl } from "@/lib/utils/url";
|
|
94
|
+
|
|
95
|
+
export const dynamic = "force-dynamic";
|
|
96
|
+
|
|
97
|
+
export async function GET() {
|
|
98
|
+
const baseUrl = getBaseUrl();
|
|
99
|
+
if (!client) return rssErrorResponse();
|
|
100
|
+
|
|
101
|
+
try {
|
|
102
|
+
const events = await client.fetch(ALL_EVENTS_QUERY);
|
|
103
|
+
const items = (events ?? [])
|
|
104
|
+
.filter((e) => e.slug?.current && !e.metadata?.noIndex)
|
|
105
|
+
.map((e) => ({
|
|
106
|
+
title: e.title ?? "Untitled",
|
|
107
|
+
link: `${baseUrl}/events/${e.slug?.current}`,
|
|
108
|
+
description: e.excerpt ?? undefined,
|
|
109
|
+
pubDate: e.startDate ?? undefined,
|
|
110
|
+
authors: e.host ? [e.host] : undefined,
|
|
111
|
+
}));
|
|
112
|
+
|
|
113
|
+
return generateRssFeed({
|
|
114
|
+
title: `${new URL(baseUrl).hostname} Events`,
|
|
115
|
+
link: `${baseUrl}/events`,
|
|
116
|
+
description: "Upcoming events",
|
|
117
|
+
feedUrl: `${baseUrl}/events/feed.xml`,
|
|
118
|
+
items,
|
|
119
|
+
});
|
|
120
|
+
} catch (error) {
|
|
121
|
+
console.error("Error generating events RSS feed:", error);
|
|
122
|
+
return rssErrorResponse();
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## Page-builder variant differences
|
|
128
|
+
|
|
129
|
+
When content lives under a `pageFolder` with a block:
|
|
130
|
+
|
|
131
|
+
- Query like `ALL_BLOG_ARTICLES_QUERY` — filter `pageFolder->slug.current == "<folder>"`,
|
|
132
|
+
project `"resolvedSlug": <slug expression>`, and reach into the block for date/author.
|
|
133
|
+
- Import `getSitemapBaseUrl` + `getPageUrl` from `@/lib/utils/sitemap`, and build the
|
|
134
|
+
link with `getPageUrl(baseUrl, article.resolvedSlug)`.
|
|
135
|
+
- Description from `metadata?.metaDescription`; date from `block.date`; author from
|
|
136
|
+
`block.author?.name`. Mirror `app/feed.xml/route.ts` from this integration.
|
|
137
|
+
- **Indexability differs from the standard blog.** The page-builder's canonical
|
|
138
|
+
field is `metadata.index` (visible, defaults to `true`); `metadata.noIndex` is a
|
|
139
|
+
hidden legacy field. Do **not** filter on `noIndex` alone. Instead project the
|
|
140
|
+
normalized value in your query — the same `select` used by `PAGE_SITEMAP_QUERY` /
|
|
141
|
+
`ALL_BLOG_ARTICLES_QUERY` — and filter on it:
|
|
142
|
+
```groq
|
|
143
|
+
"noIndex": select(
|
|
144
|
+
defined(metadata.index) => !metadata.index,
|
|
145
|
+
defined(metadata.noIndex) => metadata.noIndex,
|
|
146
|
+
false
|
|
147
|
+
)
|
|
148
|
+
```
|
|
149
|
+
(The standard Sanity blog has no `index` field, so there `!metadata?.noIndex` is correct.)
|
|
150
|
+
|
|
151
|
+
## Optional: discoverability
|
|
152
|
+
|
|
153
|
+
To let readers auto-detect the feed, add an alternate link in the relevant
|
|
154
|
+
layout's `metadata.alternates.types`:
|
|
155
|
+
|
|
156
|
+
```ts
|
|
157
|
+
alternates: { types: { "application/rss+xml": "/events/feed.xml" } }
|
|
158
|
+
```
|
|
@@ -36,6 +36,9 @@ export default defineConfig({
|
|
|
36
36
|
projectId,
|
|
37
37
|
dataset,
|
|
38
38
|
schema,
|
|
39
|
+
// Content Releases is an Enterprise-only feature; hide it from the Studio.
|
|
40
|
+
releases: { enabled: false },
|
|
41
|
+
scheduledDrafts: { enabled: false },
|
|
39
42
|
plugins: [
|
|
40
43
|
structureTool({ structure }),
|
|
41
44
|
// Presentation tool for visual editing
|
package/src/modules/features/cms/sanity-pagebuilder/files/lib/integrations/sanity/sanity.config.ts
CHANGED
|
@@ -28,6 +28,9 @@ export default defineConfig({
|
|
|
28
28
|
basePath: "/studio",
|
|
29
29
|
projectId,
|
|
30
30
|
dataset,
|
|
31
|
+
// Content Releases is an Enterprise-only feature; hide it from the Studio.
|
|
32
|
+
releases: { enabled: false },
|
|
33
|
+
scheduledDrafts: { enabled: false },
|
|
31
34
|
schema: {
|
|
32
35
|
...schema,
|
|
33
36
|
templates: (previousTemplates) => [
|
|
@@ -1,43 +1,34 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Wrapper around `sanity schema extract && sanity typegen generate
|
|
3
|
-
*
|
|
2
|
+
* Wrapper around `sanity schema extract && sanity typegen generate`; skips when
|
|
3
|
+
* Sanity isn't configured. Reads the project id from `process.env` — the
|
|
4
|
+
* dotenvx-wrapped script already decrypted `.env` into it — so it runs on Vercel
|
|
5
|
+
* too, which has no `.env.local`.
|
|
4
6
|
*/
|
|
5
7
|
import { execSync } from "node:child_process";
|
|
6
|
-
import { existsSync } from "node:fs";
|
|
7
8
|
import { resolve } from "node:path";
|
|
8
9
|
|
|
9
10
|
const sanityDir = resolve(import.meta.dir, "../integrations/sanity");
|
|
10
|
-
const envFile = resolve(import.meta.dir, "../../.env.local");
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
const hasEnvFile = existsSync(envFile);
|
|
14
|
-
|
|
15
|
-
if (!hasEnvFile) {
|
|
16
|
-
console.log(" Skipping sanity:typegen — .env.local not found");
|
|
17
|
-
process.exit(0);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
// Read .env.local to check for project ID
|
|
21
|
-
const envContent = Bun.file(envFile);
|
|
22
|
-
const text = await envContent.text();
|
|
23
|
-
const hasProjectId = text
|
|
24
|
-
.split("\n")
|
|
25
|
-
.some(
|
|
26
|
-
(line) =>
|
|
27
|
-
line.startsWith("NEXT_PUBLIC_SANITY_PROJECT_ID=") &&
|
|
28
|
-
line.split("=")[1]?.trim() !== "",
|
|
29
|
-
);
|
|
30
|
-
|
|
31
|
-
if (!hasProjectId) {
|
|
12
|
+
if (!process.env.NEXT_PUBLIC_SANITY_PROJECT_ID) {
|
|
32
13
|
console.log(
|
|
33
14
|
" Skipping sanity:typegen — NEXT_PUBLIC_SANITY_PROJECT_ID not set",
|
|
34
15
|
);
|
|
35
16
|
process.exit(0);
|
|
36
17
|
}
|
|
37
18
|
|
|
19
|
+
// Format the generated file to the project's biome style so the committed types
|
|
20
|
+
// match lint — but only locally. In CI/Vercel the build discards the formatted
|
|
21
|
+
// result, so running biome there is pure per-deploy waste. (Scoped to the one
|
|
22
|
+
// file; linting the whole dir would rewrite unrelated source.)
|
|
23
|
+
const format =
|
|
24
|
+
process.env.CI || process.env.VERCEL
|
|
25
|
+
? ""
|
|
26
|
+
: " && bun biome check --write --unsafe sanity.types.ts";
|
|
27
|
+
|
|
38
28
|
try {
|
|
29
|
+
// No `--env-file` — dotenvx already injected the env into process.env.
|
|
39
30
|
execSync(
|
|
40
|
-
`cd ${sanityDir} && bun
|
|
31
|
+
`cd ${sanityDir} && bun sanity schema extract && bun sanity typegen generate${format}`,
|
|
41
32
|
{ stdio: "inherit" },
|
|
42
33
|
);
|
|
43
34
|
} catch {
|
|
@@ -25,13 +25,12 @@ export function parsePrivateKeys(content) {
|
|
|
25
25
|
return keys;
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
//
|
|
29
|
-
//
|
|
28
|
+
// Base key → Production + Preview (where the server decrypts .env); a suffixed
|
|
29
|
+
// key (…_PRODUCTION / …_PREVIEW) targets just that env. No Development: local
|
|
30
|
+
// dev decrypts with .env.keys, not a Vercel var.
|
|
30
31
|
export function vercelEnvsFor(name) {
|
|
31
32
|
const suffix = name.slice("DOTENV_PRIVATE_KEY".length).replace(/^_/, "");
|
|
32
|
-
return suffix
|
|
33
|
-
? [suffix.toLowerCase()]
|
|
34
|
-
: ["production", "preview", "development"];
|
|
33
|
+
return suffix ? [suffix.toLowerCase()] : ["production", "preview"];
|
|
35
34
|
}
|
|
36
35
|
|
|
37
36
|
// Ask which remote when no arg was given. Never hang a non-interactive shell.
|
|
@@ -101,8 +100,9 @@ async function main() {
|
|
|
101
100
|
ok = pipe("gh", ["secret", "set", name], value) && ok;
|
|
102
101
|
} else {
|
|
103
102
|
for (const env of vercelEnvsFor(name)) {
|
|
104
|
-
console.log(`→ vercel env add ${name} ${env}`);
|
|
105
|
-
|
|
103
|
+
console.log(`→ vercel env add ${name} ${env} (sensitive)`);
|
|
104
|
+
// --sensitive: write-only, never shown in the dashboard.
|
|
105
|
+
ok = pipe("vercel", ["env", "add", name, env, "--sensitive"], value) && ok;
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
}
|