@businessdash/sdk 0.9.60
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/LICENSE +21 -0
- package/README.md +899 -0
- package/dist/adapters-revalidate.d.ts +44 -0
- package/dist/adapters-revalidate.d.ts.map +1 -0
- package/dist/adapters-revalidate.js +68 -0
- package/dist/adapters-revalidate.js.map +1 -0
- package/dist/alpha.d.ts +21 -0
- package/dist/alpha.d.ts.map +1 -0
- package/dist/alpha.js +21 -0
- package/dist/alpha.js.map +1 -0
- package/dist/analytics-core.d.ts +34 -0
- package/dist/analytics-core.d.ts.map +1 -0
- package/dist/analytics-core.js +138 -0
- package/dist/analytics-core.js.map +1 -0
- package/dist/analytics-server.d.ts +54 -0
- package/dist/analytics-server.d.ts.map +1 -0
- package/dist/analytics-server.js +78 -0
- package/dist/analytics-server.js.map +1 -0
- package/dist/attribution-logo.d.ts +2 -0
- package/dist/attribution-logo.d.ts.map +1 -0
- package/dist/attribution-logo.js +5 -0
- package/dist/attribution-logo.js.map +1 -0
- package/dist/auth-handler.d.ts +92 -0
- package/dist/auth-handler.d.ts.map +1 -0
- package/dist/auth-handler.js +277 -0
- package/dist/auth-handler.js.map +1 -0
- package/dist/biab-forms.css +484 -0
- package/dist/cli.d.ts +46 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +1824 -0
- package/dist/cli.js.map +1 -0
- package/dist/client.d.ts +1681 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +2845 -0
- package/dist/client.js.map +1 -0
- package/dist/collections.d.ts +13 -0
- package/dist/collections.d.ts.map +1 -0
- package/dist/collections.js +13 -0
- package/dist/collections.js.map +1 -0
- package/dist/contracts.d.ts +14609 -0
- package/dist/contracts.d.ts.map +1 -0
- package/dist/contracts.js +2428 -0
- package/dist/contracts.js.map +1 -0
- package/dist/data-model-schema.d.ts +962 -0
- package/dist/data-model-schema.d.ts.map +1 -0
- package/dist/data-model-schema.js +2295 -0
- package/dist/data-model-schema.js.map +1 -0
- package/dist/distribution.d.ts +38 -0
- package/dist/distribution.d.ts.map +1 -0
- package/dist/distribution.js +61 -0
- package/dist/distribution.js.map +1 -0
- package/dist/element.d.ts +121 -0
- package/dist/element.d.ts.map +1 -0
- package/dist/element.js +276 -0
- package/dist/element.js.map +1 -0
- package/dist/enums.d.ts +25 -0
- package/dist/enums.d.ts.map +1 -0
- package/dist/enums.js +38 -0
- package/dist/enums.js.map +1 -0
- package/dist/errors.d.ts +195 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +188 -0
- package/dist/errors.js.map +1 -0
- package/dist/forms-core/autocomplete.d.ts +37 -0
- package/dist/forms-core/autocomplete.d.ts.map +1 -0
- package/dist/forms-core/autocomplete.js +82 -0
- package/dist/forms-core/autocomplete.js.map +1 -0
- package/dist/forms-core/business-function.d.ts +61 -0
- package/dist/forms-core/business-function.d.ts.map +1 -0
- package/dist/forms-core/business-function.js +149 -0
- package/dist/forms-core/business-function.js.map +1 -0
- package/dist/forms-core/calculation.d.ts +72 -0
- package/dist/forms-core/calculation.d.ts.map +1 -0
- package/dist/forms-core/calculation.js +103 -0
- package/dist/forms-core/calculation.js.map +1 -0
- package/dist/forms-core/controller.d.ts +249 -0
- package/dist/forms-core/controller.d.ts.map +1 -0
- package/dist/forms-core/controller.js +590 -0
- package/dist/forms-core/controller.js.map +1 -0
- package/dist/forms-core/elements.d.ts +44 -0
- package/dist/forms-core/elements.d.ts.map +1 -0
- package/dist/forms-core/elements.js +68 -0
- package/dist/forms-core/elements.js.map +1 -0
- package/dist/forms-core/email-domains.d.ts +10 -0
- package/dist/forms-core/email-domains.d.ts.map +1 -0
- package/dist/forms-core/email-domains.js +69 -0
- package/dist/forms-core/email-domains.js.map +1 -0
- package/dist/forms-core/file-rules.d.ts +51 -0
- package/dist/forms-core/file-rules.d.ts.map +1 -0
- package/dist/forms-core/file-rules.js +105 -0
- package/dist/forms-core/file-rules.js.map +1 -0
- package/dist/forms-core/formula.d.ts +114 -0
- package/dist/forms-core/formula.d.ts.map +1 -0
- package/dist/forms-core/formula.js +1170 -0
- package/dist/forms-core/formula.js.map +1 -0
- package/dist/forms-core/index.d.ts +24 -0
- package/dist/forms-core/index.d.ts.map +1 -0
- package/dist/forms-core/index.js +28 -0
- package/dist/forms-core/index.js.map +1 -0
- package/dist/forms-core/units.d.ts +49 -0
- package/dist/forms-core/units.d.ts.map +1 -0
- package/dist/forms-core/units.js +255 -0
- package/dist/forms-core/units.js.map +1 -0
- package/dist/forms-core/us-states.d.ts +14 -0
- package/dist/forms-core/us-states.d.ts.map +1 -0
- package/dist/forms-core/us-states.js +66 -0
- package/dist/forms-core/us-states.js.map +1 -0
- package/dist/forms-core/validation.d.ts +266 -0
- package/dist/forms-core/validation.d.ts.map +1 -0
- package/dist/forms-core/validation.js +850 -0
- package/dist/forms-core/validation.js.map +1 -0
- package/dist/forms.d.ts +19 -0
- package/dist/forms.d.ts.map +1 -0
- package/dist/forms.js +29 -0
- package/dist/forms.js.map +1 -0
- package/dist/gallery-types.d.ts +32 -0
- package/dist/gallery-types.d.ts.map +1 -0
- package/dist/gallery-types.js +2 -0
- package/dist/gallery-types.js.map +1 -0
- package/dist/graphql.d.ts +97 -0
- package/dist/graphql.d.ts.map +1 -0
- package/dist/graphql.js +212 -0
- package/dist/graphql.js.map +1 -0
- package/dist/index.cjs +19448 -0
- package/dist/index.d.cts +19 -0
- package/dist/index.d.mts +19 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -0
- package/dist/marketing-schema.d.ts +216 -0
- package/dist/marketing-schema.d.ts.map +1 -0
- package/dist/marketing-schema.js +200 -0
- package/dist/marketing-schema.js.map +1 -0
- package/dist/mcp.d.ts +42 -0
- package/dist/mcp.d.ts.map +1 -0
- package/dist/mcp.js +87 -0
- package/dist/mcp.js.map +1 -0
- package/dist/native.d.ts +45 -0
- package/dist/native.d.ts.map +1 -0
- package/dist/native.js +43 -0
- package/dist/native.js.map +1 -0
- package/dist/next-revalidate.d.ts +43 -0
- package/dist/next-revalidate.d.ts.map +1 -0
- package/dist/next-revalidate.js +84 -0
- package/dist/next-revalidate.js.map +1 -0
- package/dist/parallel-pages.d.ts +102 -0
- package/dist/parallel-pages.d.ts.map +1 -0
- package/dist/parallel-pages.js +108 -0
- package/dist/parallel-pages.js.map +1 -0
- package/dist/payment-icons.d.ts +66 -0
- package/dist/payment-icons.d.ts.map +1 -0
- package/dist/payment-icons.js +160 -0
- package/dist/payment-icons.js.map +1 -0
- package/dist/proxy.d.ts +67 -0
- package/dist/proxy.d.ts.map +1 -0
- package/dist/proxy.js +97 -0
- package/dist/proxy.js.map +1 -0
- package/dist/react-analytics.d.ts +39 -0
- package/dist/react-analytics.d.ts.map +1 -0
- package/dist/react-analytics.js +59 -0
- package/dist/react-analytics.js.map +1 -0
- package/dist/react-attribution.d.ts +99 -0
- package/dist/react-attribution.d.ts.map +1 -0
- package/dist/react-attribution.js +52 -0
- package/dist/react-attribution.js.map +1 -0
- package/dist/react-marketing.d.ts +181 -0
- package/dist/react-marketing.d.ts.map +1 -0
- package/dist/react-marketing.js +215 -0
- package/dist/react-marketing.js.map +1 -0
- package/dist/react.d.ts +727 -0
- package/dist/react.d.ts.map +1 -0
- package/dist/react.js +2418 -0
- package/dist/react.js.map +1 -0
- package/dist/reserved-paths.d.ts +24 -0
- package/dist/reserved-paths.d.ts.map +1 -0
- package/dist/reserved-paths.js +60 -0
- package/dist/reserved-paths.js.map +1 -0
- package/dist/revalidate-verify.d.ts +30 -0
- package/dist/revalidate-verify.d.ts.map +1 -0
- package/dist/revalidate-verify.js +74 -0
- package/dist/revalidate-verify.js.map +1 -0
- package/dist/sdk.d.ts +678 -0
- package/dist/sdk.d.ts.map +1 -0
- package/dist/sdk.js +801 -0
- package/dist/sdk.js.map +1 -0
- package/dist/seo.d.ts +218 -0
- package/dist/seo.d.ts.map +1 -0
- package/dist/seo.js +309 -0
- package/dist/seo.js.map +1 -0
- package/dist/socials.d.ts +47 -0
- package/dist/socials.d.ts.map +1 -0
- package/dist/socials.js +172 -0
- package/dist/socials.js.map +1 -0
- package/dist/static.d.ts +14 -0
- package/dist/static.d.ts.map +1 -0
- package/dist/static.js +14 -0
- package/dist/static.js.map +1 -0
- package/dist/url-pattern.d.ts +47 -0
- package/dist/url-pattern.d.ts.map +1 -0
- package/dist/url-pattern.js +124 -0
- package/dist/url-pattern.js.map +1 -0
- package/dist/vanilla.d.ts +77 -0
- package/dist/vanilla.d.ts.map +1 -0
- package/dist/vanilla.js +903 -0
- package/dist/vanilla.js.map +1 -0
- package/openapi.json +13779 -0
- package/package.json +204 -0
- package/src/adapters-revalidate.ts +88 -0
- package/src/alpha.ts +89 -0
- package/src/analytics-core.ts +175 -0
- package/src/analytics-server.ts +99 -0
- package/src/angular/biab-form.component.ts +1443 -0
- package/src/angular/index.ts +26 -0
- package/src/attribution-logo.ts +5 -0
- package/src/auth-handler.ts +352 -0
- package/src/cli.ts +2517 -0
- package/src/client.ts +3578 -0
- package/src/collections.ts +101 -0
- package/src/contracts.ts +3390 -0
- package/src/data-model-schema.ts +4042 -0
- package/src/distribution.ts +73 -0
- package/src/element.ts +321 -0
- package/src/enums.ts +65 -0
- package/src/errors.ts +338 -0
- package/src/forms-core/autocomplete.ts +97 -0
- package/src/forms-core/business-function.ts +209 -0
- package/src/forms-core/calculation.ts +167 -0
- package/src/forms-core/controller.ts +922 -0
- package/src/forms-core/elements.ts +86 -0
- package/src/forms-core/email-domains.ts +68 -0
- package/src/forms-core/file-rules.ts +123 -0
- package/src/forms-core/formula.ts +1339 -0
- package/src/forms-core/index.ts +122 -0
- package/src/forms-core/units.ts +308 -0
- package/src/forms-core/us-states.ts +68 -0
- package/src/forms-core/validation.ts +1037 -0
- package/src/forms.ts +63 -0
- package/src/gallery-types.ts +31 -0
- package/src/graphql.ts +295 -0
- package/src/index.ts +505 -0
- package/src/marketing-schema.ts +395 -0
- package/src/mcp.ts +108 -0
- package/src/native.ts +73 -0
- package/src/next-revalidate.ts +124 -0
- package/src/parallel-pages.ts +192 -0
- package/src/payment-icons.ts +205 -0
- package/src/proxy.ts +173 -0
- package/src/qwik.tsx +1234 -0
- package/src/react-analytics.tsx +76 -0
- package/src/react-attribution.tsx +192 -0
- package/src/react-marketing.tsx +338 -0
- package/src/react.tsx +5495 -0
- package/src/reserved-paths.ts +65 -0
- package/src/revalidate-verify.ts +98 -0
- package/src/sdk.ts +1671 -0
- package/src/seo.ts +488 -0
- package/src/socials.ts +230 -0
- package/src/solid.tsx +1466 -0
- package/src/static.ts +21 -0
- package/src/styles/biab-forms.css +484 -0
- package/src/svelte/BiabForm.svelte +1069 -0
- package/src/svelte/context.ts +57 -0
- package/src/svelte/index.ts +79 -0
- package/src/url-pattern.ts +153 -0
- package/src/vanilla.ts +1290 -0
- package/src/vue/BiabForm.vue +1538 -0
- package/src/vue/index.ts +119 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/forms-core/validation.ts"],"names":[],"mappings":"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"}
|
package/dist/forms.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@businessdash/sdk/forms` — public entry for the headless `<BiabForm>` core.
|
|
3
|
+
*
|
|
4
|
+
* This is the compiled (tsc → dist) entry the framework bindings depend on. It
|
|
5
|
+
* re-exports the framework-agnostic controller + validation primitives from
|
|
6
|
+
* `forms-core`. Bindings shipped as SOURCE (Vue / Svelte / Solid / Qwik /
|
|
7
|
+
* Angular) import from `@businessdash/sdk/forms`; bindings compiled to dist (React /
|
|
8
|
+
* web-component / vanilla) do the same.
|
|
9
|
+
*/
|
|
10
|
+
export * from "./forms-core/index.js";
|
|
11
|
+
export { type BoundaryMetadata, type CollectionRefNode, type ConditionalBlockNode, createFormSchemaOrchestrator, createSingleResourceForm, type EvaluationRule, type FormAndSchemaConfig, type FormNode, type FormOrchestrationOptions, type FormStepNode, type InferCollectionValues, type InferFieldsValues, type InferFieldValue, type InferFormValues, type InferSchemaValues, type LayoutNode, type LogicalOperator, layout, layoutContainers, type MultiPopulatorConfig, type MultiPopulatorNode, type MultiPopulatorOutput, type OptionGroup, type OrConditionNode, type ProgressStyle, type RuleMatchOperator, SchemaBoundary, type SchemaBoundaryNode, type SingleResourceFormOptions, type SingleResourceForms, } from "./data-model-schema.js";
|
|
12
|
+
/**
|
|
13
|
+
* Slug of the platform-provided default contact form ("General Inquiry"). Any
|
|
14
|
+
* org that hasn't authored its own `general-inquiry` form falls back to this
|
|
15
|
+
* platform default, so a starter renders a working contact form with zero
|
|
16
|
+
* dashboard setup. Swap in your own org's form slug once you've built one.
|
|
17
|
+
*/
|
|
18
|
+
export declare const BIAB_DEFAULT_FORM_SLUG = "general-inquiry";
|
|
19
|
+
//# sourceMappingURL=forms.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"forms.d.ts","sourceRoot":"","sources":["../src/forms.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,uBAAuB,CAAC;AAatC,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,4BAA4B,EAC5B,wBAAwB,EACxB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACb,KAAK,wBAAwB,EAC7B,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,MAAM,EACN,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,cAAc,EACd,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,GACxB,MAAM,wBAAwB,CAAC;AAEhC;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,oBAAoB,CAAC"}
|
package/dist/forms.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@businessdash/sdk/forms` — public entry for the headless `<BiabForm>` core.
|
|
3
|
+
*
|
|
4
|
+
* This is the compiled (tsc → dist) entry the framework bindings depend on. It
|
|
5
|
+
* re-exports the framework-agnostic controller + validation primitives from
|
|
6
|
+
* `forms-core`. Bindings shipped as SOURCE (Vue / Svelte / Solid / Qwik /
|
|
7
|
+
* Angular) import from `@businessdash/sdk/forms`; bindings compiled to dist (React /
|
|
8
|
+
* web-component / vanilla) do the same.
|
|
9
|
+
*/
|
|
10
|
+
export * from "./forms-core/index.js";
|
|
11
|
+
// ── Form Schema Design Layer ─────────────────────────────────────────
|
|
12
|
+
//
|
|
13
|
+
// These exports let you define the *structure* of a form (layout / steps /
|
|
14
|
+
// conditional groups) that is compiled by createFormSchemaOrchestrator()
|
|
15
|
+
// alongside your collections. They live here because platform forms are
|
|
16
|
+
// assembled from both schema layout + runtime controller.
|
|
17
|
+
//
|
|
18
|
+
// ```ts
|
|
19
|
+
// import { layout, createFormSchemaOrchestrator } from "@businessdash/sdk/forms";
|
|
20
|
+
// ```
|
|
21
|
+
export { createFormSchemaOrchestrator, createSingleResourceForm, layout, layoutContainers, SchemaBoundary, } from "./data-model-schema.js";
|
|
22
|
+
/**
|
|
23
|
+
* Slug of the platform-provided default contact form ("General Inquiry"). Any
|
|
24
|
+
* org that hasn't authored its own `general-inquiry` form falls back to this
|
|
25
|
+
* platform default, so a starter renders a working contact form with zero
|
|
26
|
+
* dashboard setup. Swap in your own org's form slug once you've built one.
|
|
27
|
+
*/
|
|
28
|
+
export const BIAB_DEFAULT_FORM_SLUG = "general-inquiry";
|
|
29
|
+
//# sourceMappingURL=forms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"forms.js","sourceRoot":"","sources":["../src/forms.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,uBAAuB,CAAC;AAEtC,wEAAwE;AACxE,EAAE;AACF,2EAA2E;AAC3E,yEAAyE;AACzE,wEAAwE;AACxE,0DAA0D;AAC1D,EAAE;AACF,QAAQ;AACR,kFAAkF;AAClF,MAAM;AAEN,OAAO,EAIN,4BAA4B,EAC5B,wBAAwB,EAaxB,MAAM,EACN,gBAAgB,EAQhB,cAAc,GAId,MAAM,wBAAwB,CAAC;AAEhC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shape of one gallery item returned by `GET /sites/{siteId}/gallery`.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the platform-side `BundleGalleryItem` so the SDK can offer
|
|
5
|
+
* typed field selection (`fields: ["src", "title"]` narrows the
|
|
6
|
+
* return type via const generics in `sdk.ts`).
|
|
7
|
+
*
|
|
8
|
+
* Kept as a flat type — no SDK dependency on zod or runtime
|
|
9
|
+
* validation here, since `createBiabClient` trusts the platform
|
|
10
|
+
* response (the platform owns the schema; the SDK is a typed
|
|
11
|
+
* facade).
|
|
12
|
+
*/
|
|
13
|
+
export interface BundleGalleryItem {
|
|
14
|
+
id: string;
|
|
15
|
+
type: "image" | "video";
|
|
16
|
+
src: string;
|
|
17
|
+
width: number | null;
|
|
18
|
+
height: number | null;
|
|
19
|
+
blurDataURL: string | null;
|
|
20
|
+
alt: string | null;
|
|
21
|
+
title: string | null;
|
|
22
|
+
category: string | null;
|
|
23
|
+
description: string | null;
|
|
24
|
+
jobId: string | null;
|
|
25
|
+
jobName: string | null;
|
|
26
|
+
takenAt: string | null;
|
|
27
|
+
location: string | null;
|
|
28
|
+
system: string | null;
|
|
29
|
+
year: number | null;
|
|
30
|
+
aboutHtml: string | null;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=gallery-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gallery-types.d.ts","sourceRoot":"","sources":["../src/gallery-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,iBAAiB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gallery-types.js","sourceRoot":"","sources":["../src/gallery-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generate a GraphQL SDL schema from a BIAB data model.
|
|
3
|
+
*
|
|
4
|
+
* "GraphQL layer compatibility" for a data-model-as-code platform starts here:
|
|
5
|
+
* a real, typed GraphQL schema of the org's custom database that any GraphQL
|
|
6
|
+
* codegen / tooling can consume, and that an AI agent can read alongside a
|
|
7
|
+
* `export-data-model` snapshot — the schema of the data next to the data.
|
|
8
|
+
*
|
|
9
|
+
* Pure and dependency-free: string generation over the live-model artifact
|
|
10
|
+
* (the same JSON `view-data-model --json` returns), exactly how
|
|
11
|
+
* `view-data-model --out` renders the TS config client-side. It does NOT stand
|
|
12
|
+
* up a GraphQL server — execution (resolvers over this schema) is a separate,
|
|
13
|
+
* heavier layer that needs a runtime.
|
|
14
|
+
*
|
|
15
|
+
* Shape decisions:
|
|
16
|
+
* - Every relation is a LIST. BIAB relations are link rows (`sync-records`
|
|
17
|
+
* converges an array of target ids), and the records API always returns
|
|
18
|
+
* `relations` as arrays — so `[Target!]!` is faithful, one-to-one included.
|
|
19
|
+
* - SELECT/MULTI_SELECT become a GraphQL enum WHEN every option value is a
|
|
20
|
+
* legal, unique enum name; otherwise a `String` with the allowed values in
|
|
21
|
+
* a comment. Keeps the SDL valid against arbitrary option text.
|
|
22
|
+
* - CURRENCY is `Int` — money is integer cents platform-wide.
|
|
23
|
+
*/
|
|
24
|
+
export type GraphqlSdlOption = {
|
|
25
|
+
value: string;
|
|
26
|
+
label?: string;
|
|
27
|
+
};
|
|
28
|
+
export type GraphqlSdlField = {
|
|
29
|
+
name: string;
|
|
30
|
+
type: string;
|
|
31
|
+
label?: string;
|
|
32
|
+
description?: string;
|
|
33
|
+
/** Absent OR true ⇒ nullable; only an explicit `false` marks a required field. */
|
|
34
|
+
isNullable?: boolean;
|
|
35
|
+
options?: GraphqlSdlOption[];
|
|
36
|
+
/** `universalIdentifier` of the target object, for RELATION/MORPH_RELATION. */
|
|
37
|
+
relationTarget?: string;
|
|
38
|
+
};
|
|
39
|
+
export type GraphqlSdlObject = {
|
|
40
|
+
universalIdentifier: string;
|
|
41
|
+
kind?: string;
|
|
42
|
+
nameSingular: string;
|
|
43
|
+
namePlural: string;
|
|
44
|
+
labelSingular?: string;
|
|
45
|
+
labelPlural?: string;
|
|
46
|
+
description?: string;
|
|
47
|
+
fields: GraphqlSdlField[];
|
|
48
|
+
};
|
|
49
|
+
export type GraphqlSdlModel = {
|
|
50
|
+
objects: GraphqlSdlObject[];
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Render the model as a GraphQL SDL document (string).
|
|
54
|
+
*
|
|
55
|
+
* By default only `kind === "custom"` objects — the custom collections — are
|
|
56
|
+
* emitted; standard CRM objects are the platform's, not the org's schema. Pass
|
|
57
|
+
* `includeStandard` to emit them too.
|
|
58
|
+
*/
|
|
59
|
+
export declare function dataModelToGraphqlSdl(model: GraphqlSdlModel, opts?: {
|
|
60
|
+
includeStandard?: boolean;
|
|
61
|
+
header?: string;
|
|
62
|
+
}): string;
|
|
63
|
+
export type GraphqlResult<T = unknown> = {
|
|
64
|
+
data?: T;
|
|
65
|
+
errors?: Array<{
|
|
66
|
+
message: string;
|
|
67
|
+
locations?: Array<{
|
|
68
|
+
line: number;
|
|
69
|
+
column: number;
|
|
70
|
+
}>;
|
|
71
|
+
path?: Array<string | number>;
|
|
72
|
+
}>;
|
|
73
|
+
};
|
|
74
|
+
export type GraphqlClient = {
|
|
75
|
+
query<T = unknown>(query: string, variables?: Record<string, unknown>, operationName?: string): Promise<GraphqlResult<T>>;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Minimal client for the executable GraphQL endpoint
|
|
79
|
+
* (`POST /sites/{siteId}/graphql`). Dependency-free — a typed fetch wrapper, so
|
|
80
|
+
* it drops into any of the SDK's framework starters without pulling in a
|
|
81
|
+
* GraphQL client library. Pair the returned shape with types generated from
|
|
82
|
+
* `export-graphql-schema` for end-to-end typing.
|
|
83
|
+
*
|
|
84
|
+
* Requires a SECRET key with the `graphql:query` scope (the endpoint is not
|
|
85
|
+
* browser-callable). Enterprise entitlement + rate limits are enforced
|
|
86
|
+
* server-side; a plan-gated caller gets `{ available: false }` rather than
|
|
87
|
+
* `data`/`errors`, so check for that if you gate the UI on it.
|
|
88
|
+
*/
|
|
89
|
+
export declare function createGraphqlClient(input: {
|
|
90
|
+
/** Package API base, e.g. `https://biab.app/api/package/v1`. */
|
|
91
|
+
baseUrl: string;
|
|
92
|
+
siteId: string;
|
|
93
|
+
/** A secret (`biab_…`) key holding `graphql:query`. */
|
|
94
|
+
apiKey: string;
|
|
95
|
+
fetch?: typeof fetch;
|
|
96
|
+
}): GraphqlClient;
|
|
97
|
+
//# sourceMappingURL=graphql.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql.d.ts","sourceRoot":"","sources":["../src/graphql.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,MAAM,MAAM,gBAAgB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjE,MAAM,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kFAAkF;IAClF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC7B,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAAE,OAAO,EAAE,gBAAgB,EAAE,CAAA;CAAE,CAAC;AA0D9D;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACpC,KAAK,EAAE,eAAe,EACtB,IAAI,GAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GACvD,MAAM,CAgGR;AAID,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,OAAO,IAAI;IACxC,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,MAAM,CAAC,EAAE,KAAK,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACpD,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;KAC9B,CAAC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC3B,KAAK,CAAC,CAAC,GAAG,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,aAAa,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;CAC7B,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IAC1C,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACrB,GAAG,aAAa,CAyChB"}
|
package/dist/graphql.js
ADDED
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generate a GraphQL SDL schema from a BIAB data model.
|
|
3
|
+
*
|
|
4
|
+
* "GraphQL layer compatibility" for a data-model-as-code platform starts here:
|
|
5
|
+
* a real, typed GraphQL schema of the org's custom database that any GraphQL
|
|
6
|
+
* codegen / tooling can consume, and that an AI agent can read alongside a
|
|
7
|
+
* `export-data-model` snapshot — the schema of the data next to the data.
|
|
8
|
+
*
|
|
9
|
+
* Pure and dependency-free: string generation over the live-model artifact
|
|
10
|
+
* (the same JSON `view-data-model --json` returns), exactly how
|
|
11
|
+
* `view-data-model --out` renders the TS config client-side. It does NOT stand
|
|
12
|
+
* up a GraphQL server — execution (resolvers over this schema) is a separate,
|
|
13
|
+
* heavier layer that needs a runtime.
|
|
14
|
+
*
|
|
15
|
+
* Shape decisions:
|
|
16
|
+
* - Every relation is a LIST. BIAB relations are link rows (`sync-records`
|
|
17
|
+
* converges an array of target ids), and the records API always returns
|
|
18
|
+
* `relations` as arrays — so `[Target!]!` is faithful, one-to-one included.
|
|
19
|
+
* - SELECT/MULTI_SELECT become a GraphQL enum WHEN every option value is a
|
|
20
|
+
* legal, unique enum name; otherwise a `String` with the allowed values in
|
|
21
|
+
* a comment. Keeps the SDL valid against arbitrary option text.
|
|
22
|
+
* - CURRENCY is `Int` — money is integer cents platform-wide.
|
|
23
|
+
*/
|
|
24
|
+
const GRAPHQL_NAME = /^[_A-Za-z][_0-9A-Za-z]*$/;
|
|
25
|
+
function pascal(input) {
|
|
26
|
+
const parts = input.split(/[^0-9A-Za-z]+/).filter(Boolean);
|
|
27
|
+
const joined = parts
|
|
28
|
+
.map((p) => p.charAt(0).toUpperCase() + p.slice(1))
|
|
29
|
+
.join("");
|
|
30
|
+
return /^[A-Za-z_]/.test(joined) ? joined : `T${joined}`;
|
|
31
|
+
}
|
|
32
|
+
function camel(input) {
|
|
33
|
+
const p = pascal(input);
|
|
34
|
+
return p.charAt(0).toLowerCase() + p.slice(1);
|
|
35
|
+
}
|
|
36
|
+
/** GraphQL descriptions are triple-quoted strings; a stray `"""` would break
|
|
37
|
+
* the block, so collapse them. */
|
|
38
|
+
function describe(text, indent) {
|
|
39
|
+
if (!text)
|
|
40
|
+
return "";
|
|
41
|
+
const clean = text.replace(/"""/g, '"').replace(/\r?\n/g, " ").trim();
|
|
42
|
+
return clean ? `${indent}"""${clean}"""\n` : "";
|
|
43
|
+
}
|
|
44
|
+
/** An enum only if every option value is already a legal, unique GraphQL enum
|
|
45
|
+
* member — otherwise the field falls back to String and stays valid. */
|
|
46
|
+
function planEnum(typeName, field) {
|
|
47
|
+
const values = (field.options ?? []).map((o) => o.value);
|
|
48
|
+
if (values.length === 0)
|
|
49
|
+
return null;
|
|
50
|
+
const seen = new Set();
|
|
51
|
+
for (const v of values) {
|
|
52
|
+
if (!GRAPHQL_NAME.test(v) || seen.has(v))
|
|
53
|
+
return null;
|
|
54
|
+
seen.add(v);
|
|
55
|
+
}
|
|
56
|
+
return { name: `${typeName}${pascal(field.name)}`, values };
|
|
57
|
+
}
|
|
58
|
+
function scalarFor(field) {
|
|
59
|
+
switch (field.type) {
|
|
60
|
+
case "NUMBER":
|
|
61
|
+
return "Float";
|
|
62
|
+
case "RATING":
|
|
63
|
+
return "Int";
|
|
64
|
+
case "CURRENCY":
|
|
65
|
+
return "Int";
|
|
66
|
+
case "BOOLEAN":
|
|
67
|
+
return "Boolean";
|
|
68
|
+
case "DATE_TIME":
|
|
69
|
+
return "DateTime";
|
|
70
|
+
default:
|
|
71
|
+
// TEXT, UUID, RICH_TEXT, EMAILS, PHONES, DATE, and anything unmapped.
|
|
72
|
+
return "String";
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Render the model as a GraphQL SDL document (string).
|
|
77
|
+
*
|
|
78
|
+
* By default only `kind === "custom"` objects — the custom collections — are
|
|
79
|
+
* emitted; standard CRM objects are the platform's, not the org's schema. Pass
|
|
80
|
+
* `includeStandard` to emit them too.
|
|
81
|
+
*/
|
|
82
|
+
export function dataModelToGraphqlSdl(model, opts = {}) {
|
|
83
|
+
const all = model.objects ?? [];
|
|
84
|
+
const objects = opts.includeStandard
|
|
85
|
+
? all
|
|
86
|
+
: all.filter((o) => o.kind !== "standard");
|
|
87
|
+
// Target-type resolution spans the WHOLE model — a custom object can relate
|
|
88
|
+
// to a standard one even when standard types aren't emitted.
|
|
89
|
+
const typeNameByUid = new Map(all.map((o) => [o.universalIdentifier, pascal(o.nameSingular)]));
|
|
90
|
+
const enums = [];
|
|
91
|
+
const types = [];
|
|
92
|
+
const connections = [];
|
|
93
|
+
const queryFields = [];
|
|
94
|
+
for (const obj of objects) {
|
|
95
|
+
const typeName = pascal(obj.nameSingular);
|
|
96
|
+
const lines = [];
|
|
97
|
+
lines.push(describe(obj.description ?? obj.labelSingular, ""));
|
|
98
|
+
lines.push(`type ${typeName} {`);
|
|
99
|
+
lines.push("\tid: ID!");
|
|
100
|
+
lines.push("\tuniversalIdentifier: ID");
|
|
101
|
+
for (const field of obj.fields) {
|
|
102
|
+
if (field.name === "id" || field.name === "universalIdentifier")
|
|
103
|
+
continue;
|
|
104
|
+
const fieldName = camel(field.name);
|
|
105
|
+
if (!GRAPHQL_NAME.test(fieldName))
|
|
106
|
+
continue;
|
|
107
|
+
const required = field.isNullable === false;
|
|
108
|
+
let gqlType;
|
|
109
|
+
if (field.type === "RELATION" || field.type === "MORPH_RELATION") {
|
|
110
|
+
const target = field.relationTarget
|
|
111
|
+
? typeNameByUid.get(field.relationTarget)
|
|
112
|
+
: undefined;
|
|
113
|
+
// A relation always resolves to a list (link rows); a morph with no
|
|
114
|
+
// single target degrades to JSON rather than an invalid ref.
|
|
115
|
+
gqlType = target ? `[${target}!]!` : "JSON";
|
|
116
|
+
}
|
|
117
|
+
else if (field.type === "SELECT" || field.type === "MULTI_SELECT") {
|
|
118
|
+
const plan = planEnum(typeName, field);
|
|
119
|
+
if (plan) {
|
|
120
|
+
enums.push(`enum ${plan.name} {\n${plan.values.map((v) => `\t${v}`).join("\n")}\n}`);
|
|
121
|
+
gqlType =
|
|
122
|
+
field.type === "MULTI_SELECT" ? `[${plan.name}!]` : plan.name;
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
gqlType = field.type === "MULTI_SELECT" ? "[String!]" : "String";
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
gqlType = scalarFor(field);
|
|
130
|
+
}
|
|
131
|
+
if (required && !gqlType.endsWith("!"))
|
|
132
|
+
gqlType = `${gqlType}!`;
|
|
133
|
+
lines.push(describe(field.description ?? field.label, "\t"));
|
|
134
|
+
lines.push(`\t${fieldName}: ${gqlType}`);
|
|
135
|
+
}
|
|
136
|
+
lines.push("\tcreatedAt: DateTime!");
|
|
137
|
+
lines.push("\tupdatedAt: DateTime!");
|
|
138
|
+
lines.push("}");
|
|
139
|
+
types.push(lines.filter(Boolean).join("\n"));
|
|
140
|
+
connections.push(`type ${typeName}Connection {\n\tnodes: [${typeName}!]!\n\t"""Pass back to \`cursor\` for the next page; null on the last page."""\n\tnextCursor: String\n}`);
|
|
141
|
+
queryFields.push(`\t${camel(obj.namePlural)}(limit: Int, cursor: String): ${typeName}Connection!`);
|
|
142
|
+
queryFields.push(`\t${camel(obj.nameSingular)}(id: ID!): ${typeName}`);
|
|
143
|
+
}
|
|
144
|
+
const header = opts.header ??
|
|
145
|
+
"# GraphQL schema generated from your BIAB data model by `biab-dev export-graphql-schema`.\n# Regenerate on schema change; commit it for a git-diffable, AI-readable contract.";
|
|
146
|
+
const scalars = "scalar DateTime\nscalar JSON\n\n# Cents; money is integer cents platform-wide.\n";
|
|
147
|
+
const query = queryFields.length > 0
|
|
148
|
+
? `type Query {\n${queryFields.join("\n")}\n}`
|
|
149
|
+
: "type Query {\n\t_empty: Boolean\n}";
|
|
150
|
+
return [
|
|
151
|
+
header,
|
|
152
|
+
scalars.trim(),
|
|
153
|
+
enums.join("\n\n"),
|
|
154
|
+
types.join("\n\n"),
|
|
155
|
+
connections.join("\n\n"),
|
|
156
|
+
query,
|
|
157
|
+
]
|
|
158
|
+
.filter((s) => s.trim().length > 0)
|
|
159
|
+
.join("\n\n")
|
|
160
|
+
.concat("\n");
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Minimal client for the executable GraphQL endpoint
|
|
164
|
+
* (`POST /sites/{siteId}/graphql`). Dependency-free — a typed fetch wrapper, so
|
|
165
|
+
* it drops into any of the SDK's framework starters without pulling in a
|
|
166
|
+
* GraphQL client library. Pair the returned shape with types generated from
|
|
167
|
+
* `export-graphql-schema` for end-to-end typing.
|
|
168
|
+
*
|
|
169
|
+
* Requires a SECRET key with the `graphql:query` scope (the endpoint is not
|
|
170
|
+
* browser-callable). Enterprise entitlement + rate limits are enforced
|
|
171
|
+
* server-side; a plan-gated caller gets `{ available: false }` rather than
|
|
172
|
+
* `data`/`errors`, so check for that if you gate the UI on it.
|
|
173
|
+
*/
|
|
174
|
+
export function createGraphqlClient(input) {
|
|
175
|
+
const doFetch = input.fetch ?? globalThis.fetch;
|
|
176
|
+
const base = input.baseUrl.replace(/\/+$/, "");
|
|
177
|
+
const url = `${base}/sites/${encodeURIComponent(input.siteId)}/graphql`;
|
|
178
|
+
return {
|
|
179
|
+
async query(query, variables, operationName) {
|
|
180
|
+
const res = await doFetch(url, {
|
|
181
|
+
method: "POST",
|
|
182
|
+
headers: {
|
|
183
|
+
"content-type": "application/json",
|
|
184
|
+
authorization: `Bearer ${input.apiKey}`,
|
|
185
|
+
},
|
|
186
|
+
body: JSON.stringify({
|
|
187
|
+
query,
|
|
188
|
+
...(variables ? { variables } : {}),
|
|
189
|
+
...(operationName ? { operationName } : {}),
|
|
190
|
+
}),
|
|
191
|
+
});
|
|
192
|
+
const text = await res.text();
|
|
193
|
+
let parsed = null;
|
|
194
|
+
try {
|
|
195
|
+
parsed = text ? JSON.parse(text) : null;
|
|
196
|
+
}
|
|
197
|
+
catch {
|
|
198
|
+
parsed = null;
|
|
199
|
+
}
|
|
200
|
+
if (!res.ok) {
|
|
201
|
+
const message = parsed &&
|
|
202
|
+
typeof parsed === "object" &&
|
|
203
|
+
typeof parsed.message === "string"
|
|
204
|
+
? parsed.message
|
|
205
|
+
: `HTTP ${res.status} ${res.statusText}`;
|
|
206
|
+
return { errors: [{ message }] };
|
|
207
|
+
}
|
|
208
|
+
return (parsed ?? {});
|
|
209
|
+
},
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
//# sourceMappingURL=graphql.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql.js","sourceRoot":"","sources":["../src/graphql.ts"],"names":[],"mappings":"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"}
|