@contember/interface 1.3.0-alpha.14
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/development/bootstrap/ApplicationEntrypoint.cjs +35 -0
- package/dist/development/bootstrap/ApplicationEntrypoint.cjs.map +1 -0
- package/dist/development/bootstrap/ApplicationEntrypoint.js +35 -0
- package/dist/development/bootstrap/ApplicationEntrypoint.js.map +1 -0
- package/dist/development/bootstrap/DataViewPageNameKeyProvider.cjs +11 -0
- package/dist/development/bootstrap/DataViewPageNameKeyProvider.cjs.map +1 -0
- package/dist/development/bootstrap/DataViewPageNameKeyProvider.js +11 -0
- package/dist/development/bootstrap/DataViewPageNameKeyProvider.js.map +1 -0
- package/dist/development/bootstrap/runReactApp.cjs +11 -0
- package/dist/development/bootstrap/runReactApp.cjs.map +1 -0
- package/dist/development/bootstrap/runReactApp.js +11 -0
- package/dist/development/bootstrap/runReactApp.js.map +1 -0
- package/dist/development/components/binding/ClearFieldTrigger.cjs +17 -0
- package/dist/development/components/binding/ClearFieldTrigger.cjs.map +1 -0
- package/dist/development/components/binding/ClearFieldTrigger.js +17 -0
- package/dist/development/components/binding/ClearFieldTrigger.js.map +1 -0
- package/dist/development/components/binding/DeleteEntityTrigger.cjs +28 -0
- package/dist/development/components/binding/DeleteEntityTrigger.cjs.map +1 -0
- package/dist/development/components/binding/DeleteEntityTrigger.js +28 -0
- package/dist/development/components/binding/DeleteEntityTrigger.js.map +1 -0
- package/dist/development/components/binding/EntityBeforePersist.cjs +9 -0
- package/dist/development/components/binding/EntityBeforePersist.cjs.map +1 -0
- package/dist/development/components/binding/EntityBeforePersist.js +9 -0
- package/dist/development/components/binding/EntityBeforePersist.js.map +1 -0
- package/dist/development/components/binding/PersistTrigger.cjs +29 -0
- package/dist/development/components/binding/PersistTrigger.cjs.map +1 -0
- package/dist/development/components/binding/PersistTrigger.js +29 -0
- package/dist/development/components/binding/PersistTrigger.js.map +1 -0
- package/dist/development/components/binding/RedirectOnPersist.cjs +16 -0
- package/dist/development/components/binding/RedirectOnPersist.cjs.map +1 -0
- package/dist/development/components/binding/RedirectOnPersist.js +16 -0
- package/dist/development/components/binding/RedirectOnPersist.js.map +1 -0
- package/dist/development/index.cjs +41 -0
- package/dist/development/index.cjs.map +1 -0
- package/dist/development/index.js +20 -0
- package/dist/development/index.js.map +1 -0
- package/dist/production/bootstrap/ApplicationEntrypoint.cjs +35 -0
- package/dist/production/bootstrap/ApplicationEntrypoint.cjs.map +1 -0
- package/dist/production/bootstrap/ApplicationEntrypoint.js +35 -0
- package/dist/production/bootstrap/ApplicationEntrypoint.js.map +1 -0
- package/dist/production/bootstrap/DataViewPageNameKeyProvider.cjs +11 -0
- package/dist/production/bootstrap/DataViewPageNameKeyProvider.cjs.map +1 -0
- package/dist/production/bootstrap/DataViewPageNameKeyProvider.js +11 -0
- package/dist/production/bootstrap/DataViewPageNameKeyProvider.js.map +1 -0
- package/dist/production/bootstrap/runReactApp.cjs +11 -0
- package/dist/production/bootstrap/runReactApp.cjs.map +1 -0
- package/dist/production/bootstrap/runReactApp.js +11 -0
- package/dist/production/bootstrap/runReactApp.js.map +1 -0
- package/dist/production/components/binding/ClearFieldTrigger.cjs +17 -0
- package/dist/production/components/binding/ClearFieldTrigger.cjs.map +1 -0
- package/dist/production/components/binding/ClearFieldTrigger.js +17 -0
- package/dist/production/components/binding/ClearFieldTrigger.js.map +1 -0
- package/dist/production/components/binding/DeleteEntityTrigger.cjs +28 -0
- package/dist/production/components/binding/DeleteEntityTrigger.cjs.map +1 -0
- package/dist/production/components/binding/DeleteEntityTrigger.js +28 -0
- package/dist/production/components/binding/DeleteEntityTrigger.js.map +1 -0
- package/dist/production/components/binding/EntityBeforePersist.cjs +9 -0
- package/dist/production/components/binding/EntityBeforePersist.cjs.map +1 -0
- package/dist/production/components/binding/EntityBeforePersist.js +9 -0
- package/dist/production/components/binding/EntityBeforePersist.js.map +1 -0
- package/dist/production/components/binding/PersistTrigger.cjs +29 -0
- package/dist/production/components/binding/PersistTrigger.cjs.map +1 -0
- package/dist/production/components/binding/PersistTrigger.js +29 -0
- package/dist/production/components/binding/PersistTrigger.js.map +1 -0
- package/dist/production/components/binding/RedirectOnPersist.cjs +16 -0
- package/dist/production/components/binding/RedirectOnPersist.cjs.map +1 -0
- package/dist/production/components/binding/RedirectOnPersist.js +16 -0
- package/dist/production/components/binding/RedirectOnPersist.js.map +1 -0
- package/dist/production/index.cjs +41 -0
- package/dist/production/index.cjs.map +1 -0
- package/dist/production/index.js +20 -0
- package/dist/production/index.js.map +1 -0
- package/dist/types/bootstrap/ApplicationEntrypoint.d.ts +16 -0
- package/dist/types/bootstrap/ApplicationEntrypoint.d.ts.map +1 -0
- package/dist/types/bootstrap/DataViewPageNameKeyProvider.d.ts +5 -0
- package/dist/types/bootstrap/DataViewPageNameKeyProvider.d.ts.map +1 -0
- package/dist/types/bootstrap/index.d.ts +3 -0
- package/dist/types/bootstrap/index.d.ts.map +1 -0
- package/dist/types/bootstrap/runReactApp.d.ts +5 -0
- package/dist/types/bootstrap/runReactApp.d.ts.map +1 -0
- package/dist/types/components/binding/ClearFieldTrigger.d.ts +8 -0
- package/dist/types/components/binding/ClearFieldTrigger.d.ts.map +1 -0
- package/dist/types/components/binding/DeleteEntityTrigger.d.ts +10 -0
- package/dist/types/components/binding/DeleteEntityTrigger.d.ts.map +1 -0
- package/dist/types/components/binding/EntityBeforePersist.d.ts +5 -0
- package/dist/types/components/binding/EntityBeforePersist.d.ts.map +1 -0
- package/dist/types/components/binding/PersistTrigger.d.ts +9 -0
- package/dist/types/components/binding/PersistTrigger.d.ts.map +1 -0
- package/dist/types/components/binding/RedirectOnPersist.d.ts +5 -0
- package/dist/types/components/binding/RedirectOnPersist.d.ts.map +1 -0
- package/dist/types/components/binding/index.d.ts +6 -0
- package/dist/types/components/binding/index.d.ts.map +1 -0
- package/dist/types/components/index.d.ts +2 -0
- package/dist/types/components/index.d.ts.map +1 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/package.json +61 -0
- package/src/bootstrap/ApplicationEntrypoint.tsx +60 -0
- package/src/bootstrap/DataViewPageNameKeyProvider.tsx +13 -0
- package/src/bootstrap/index.ts +2 -0
- package/src/bootstrap/runReactApp.tsx +16 -0
- package/src/components/binding/ClearFieldTrigger.tsx +18 -0
- package/src/components/binding/DeleteEntityTrigger.tsx +36 -0
- package/src/components/binding/EntityBeforePersist.tsx +6 -0
- package/src/components/binding/PersistTrigger.tsx +35 -0
- package/src/components/binding/RedirectOnPersist.tsx +14 -0
- package/src/components/binding/index.ts +5 -0
- package/src/components/index.ts +1 -0
- package/src/index.ts +5 -0
- package/src/tsconfig.json +15 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const reactBinding = require("@contember/react-binding");
|
|
5
|
+
const reactClient = require("@contember/react-client");
|
|
6
|
+
const reactRouting = require("@contember/react-routing");
|
|
7
|
+
const DataViewPageNameKeyProvider = require("./DataViewPageNameKeyProvider.cjs");
|
|
8
|
+
const reactIdentity = require("@contember/react-identity");
|
|
9
|
+
const validateProps = (props) => {
|
|
10
|
+
if (typeof props.apiBaseUrl !== "string") {
|
|
11
|
+
throw new Error(`The ENV variables haven't been set. Check your \`.env.development.local\` file.`);
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
const ApplicationEntrypoint = (props) => {
|
|
15
|
+
validateProps(props);
|
|
16
|
+
const rootEnv = props.environment ?? reactBinding.Environment.create();
|
|
17
|
+
const routing = {
|
|
18
|
+
basePath: props.basePath,
|
|
19
|
+
routes: props.routes ?? { index: { path: "/" } },
|
|
20
|
+
defaultDimensions: rootEnv.getAllDimensions()
|
|
21
|
+
};
|
|
22
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactBinding.EnvironmentContext.Provider, { value: rootEnv, children: /* @__PURE__ */ jsxRuntime.jsx(reactRouting.RoutingContext.Provider, { value: routing, children: /* @__PURE__ */ jsxRuntime.jsx(reactRouting.RequestProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
23
|
+
reactClient.ContemberClient,
|
|
24
|
+
{
|
|
25
|
+
apiBaseUrl: props.apiBaseUrl,
|
|
26
|
+
sessionToken: props.sessionToken,
|
|
27
|
+
loginToken: props.loginToken,
|
|
28
|
+
project: props.project,
|
|
29
|
+
stage: props.stage,
|
|
30
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(reactBinding.EnvironmentExtensionProvider, { extension: reactIdentity.projectEnvironmentExtension, state: props.project ?? null, children: /* @__PURE__ */ jsxRuntime.jsx(DataViewPageNameKeyProvider.DataViewPageNameKeyProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(reactIdentity.IdentityProvider, { children: props.children }) }) })
|
|
31
|
+
}
|
|
32
|
+
) }) }) });
|
|
33
|
+
};
|
|
34
|
+
exports.ApplicationEntrypoint = ApplicationEntrypoint;
|
|
35
|
+
//# sourceMappingURL=ApplicationEntrypoint.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApplicationEntrypoint.cjs","sources":["../../../src/bootstrap/ApplicationEntrypoint.tsx"],"sourcesContent":["import { Environment, EnvironmentContext, EnvironmentExtensionProvider } from '@contember/react-binding'\nimport { ContemberClient, ContemberClientProps } from '@contember/react-client'\nimport { ReactNode } from 'react'\nimport { RequestProvider, RouteMap, RoutingContext, RoutingContextValue, SelectedDimension } from '@contember/react-routing'\nimport { DataViewPageNameKeyProvider } from './DataViewPageNameKeyProvider'\nimport { IdentityProvider, projectEnvironmentExtension } from '@contember/react-identity'\n\nexport interface ApplicationEntrypointProps extends ContemberClientProps {\n\tbasePath: string\n\tsessionToken?: string\n\troutes?: RouteMap\n\tchildren: ReactNode\n\tenvironment?: Environment\n}\n\nconst validateProps = (props: Partial<ApplicationEntrypointProps>) => {\n\tif (typeof props.apiBaseUrl !== 'string') {\n\t\tthrow new Error(`The ENV variables haven't been set. Check your \\`.env.development.local\\` file.`) // TODO: better message\n\t}\n}\n\n/**\n * @group Entrypoints\n */\nexport const ApplicationEntrypoint = (props: ApplicationEntrypointProps) => {\n\tvalidateProps(props)\n\n\tconst rootEnv = props.environment ?? Environment.create()\n\n\tconst routing: RoutingContextValue = {\n\t\tbasePath: props.basePath,\n\t\troutes: props.routes ?? { index: { path: '/' } },\n\t\tdefaultDimensions: rootEnv.getAllDimensions(),\n\t}\n\n\n\treturn (\n\t\t<EnvironmentContext.Provider value={rootEnv}>\n\t\t\t<RoutingContext.Provider value={routing}>\n\t\t\t\t<RequestProvider>\n\t\t\t\t\t<ContemberClient\n\t\t\t\t\t\tapiBaseUrl={props.apiBaseUrl}\n\t\t\t\t\t\tsessionToken={props.sessionToken}\n\t\t\t\t\t\tloginToken={props.loginToken}\n\t\t\t\t\t\tproject={props.project}\n\t\t\t\t\t\tstage={props.stage}\n\t\t\t\t\t>\n\t\t\t\t\t\t<EnvironmentExtensionProvider extension={projectEnvironmentExtension} state={props.project ?? null}>\n\t\t\t\t\t\t\t<DataViewPageNameKeyProvider>\n\t\t\t\t\t\t\t\t<IdentityProvider>\n\t\t\t\t\t\t\t\t\t{props.children}\n\t\t\t\t\t\t\t\t</IdentityProvider>\n\t\t\t\t\t\t\t</DataViewPageNameKeyProvider>\n\t\t\t\t\t\t</EnvironmentExtensionProvider>\n\t\t\t\t\t</ContemberClient>\n\t\t\t\t</RequestProvider>\n\t\t\t</RoutingContext.Provider>\n\t\t</EnvironmentContext.Provider>\n\t)\n}\n"],"names":["Environment","jsx","EnvironmentContext","RoutingContext","RequestProvider","ContemberClient","EnvironmentExtensionProvider","projectEnvironmentExtension","DataViewPageNameKeyProvider","IdentityProvider"],"mappings":";;;;;;;;AAeA,MAAM,gBAAgB,CAAC,UAA+C;AACjE,MAAA,OAAO,MAAM,eAAe,UAAU;AACnC,UAAA,IAAI,MAAM,iFAAiF;AAAA,EAClG;AACD;AAKa,MAAA,wBAAwB,CAAC,UAAsC;AAC3E,gBAAc,KAAK;AAEnB,QAAM,UAAU,MAAM,eAAeA,aAAA,YAAY,OAAO;AAExD,QAAM,UAA+B;AAAA,IACpC,UAAU,MAAM;AAAA,IAChB,QAAQ,MAAM,UAAU,EAAE,OAAO,EAAE,MAAM,MAAM;AAAA,IAC/C,mBAAmB,QAAQ,iBAAiB;AAAA,EAAA;AAI7C,SACEC,2BAAAA,IAAAC,aAAAA,mBAAmB,UAAnB,EAA4B,OAAO,SACnC,UAACD,+BAAAE,aAAAA,eAAe,UAAf,EAAwB,OAAO,SAC/B,yCAACC,aACA,iBAAA,EAAA,UAAAH,2BAAA;AAAA,IAACI,YAAA;AAAA,IAAA;AAAA,MACA,YAAY,MAAM;AAAA,MAClB,cAAc,MAAM;AAAA,MACpB,YAAY,MAAM;AAAA,MAClB,SAAS,MAAM;AAAA,MACf,OAAO,MAAM;AAAA,MAEb,UAACJ,2BAAAA,IAAAK,aAAA,8BAAA,EAA6B,WAAWC,2CAA6B,OAAO,MAAM,WAAW,MAC7F,UAAAN,+BAACO,4BAAAA,+BACA,UAACP,2BAAA,IAAAQ,gCAAA,EACC,UAAM,MAAA,SAAA,CACR,EACD,CAAA,GACD;AAAA,IAAA;AAAA,EAAA,GAEF,GACD,EACD,CAAA;AAEF;;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Environment, EnvironmentContext, EnvironmentExtensionProvider } from "@contember/react-binding";
|
|
3
|
+
import { ContemberClient } from "@contember/react-client";
|
|
4
|
+
import { RoutingContext, RequestProvider } from "@contember/react-routing";
|
|
5
|
+
import { DataViewPageNameKeyProvider } from "./DataViewPageNameKeyProvider.js";
|
|
6
|
+
import { projectEnvironmentExtension, IdentityProvider } from "@contember/react-identity";
|
|
7
|
+
const validateProps = (props) => {
|
|
8
|
+
if (typeof props.apiBaseUrl !== "string") {
|
|
9
|
+
throw new Error(`The ENV variables haven't been set. Check your \`.env.development.local\` file.`);
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
const ApplicationEntrypoint = (props) => {
|
|
13
|
+
validateProps(props);
|
|
14
|
+
const rootEnv = props.environment ?? Environment.create();
|
|
15
|
+
const routing = {
|
|
16
|
+
basePath: props.basePath,
|
|
17
|
+
routes: props.routes ?? { index: { path: "/" } },
|
|
18
|
+
defaultDimensions: rootEnv.getAllDimensions()
|
|
19
|
+
};
|
|
20
|
+
return /* @__PURE__ */ jsx(EnvironmentContext.Provider, { value: rootEnv, children: /* @__PURE__ */ jsx(RoutingContext.Provider, { value: routing, children: /* @__PURE__ */ jsx(RequestProvider, { children: /* @__PURE__ */ jsx(
|
|
21
|
+
ContemberClient,
|
|
22
|
+
{
|
|
23
|
+
apiBaseUrl: props.apiBaseUrl,
|
|
24
|
+
sessionToken: props.sessionToken,
|
|
25
|
+
loginToken: props.loginToken,
|
|
26
|
+
project: props.project,
|
|
27
|
+
stage: props.stage,
|
|
28
|
+
children: /* @__PURE__ */ jsx(EnvironmentExtensionProvider, { extension: projectEnvironmentExtension, state: props.project ?? null, children: /* @__PURE__ */ jsx(DataViewPageNameKeyProvider, { children: /* @__PURE__ */ jsx(IdentityProvider, { children: props.children }) }) })
|
|
29
|
+
}
|
|
30
|
+
) }) }) });
|
|
31
|
+
};
|
|
32
|
+
export {
|
|
33
|
+
ApplicationEntrypoint
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=ApplicationEntrypoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApplicationEntrypoint.js","sources":["../../../src/bootstrap/ApplicationEntrypoint.tsx"],"sourcesContent":["import { Environment, EnvironmentContext, EnvironmentExtensionProvider } from '@contember/react-binding'\nimport { ContemberClient, ContemberClientProps } from '@contember/react-client'\nimport { ReactNode } from 'react'\nimport { RequestProvider, RouteMap, RoutingContext, RoutingContextValue, SelectedDimension } from '@contember/react-routing'\nimport { DataViewPageNameKeyProvider } from './DataViewPageNameKeyProvider'\nimport { IdentityProvider, projectEnvironmentExtension } from '@contember/react-identity'\n\nexport interface ApplicationEntrypointProps extends ContemberClientProps {\n\tbasePath: string\n\tsessionToken?: string\n\troutes?: RouteMap\n\tchildren: ReactNode\n\tenvironment?: Environment\n}\n\nconst validateProps = (props: Partial<ApplicationEntrypointProps>) => {\n\tif (typeof props.apiBaseUrl !== 'string') {\n\t\tthrow new Error(`The ENV variables haven't been set. Check your \\`.env.development.local\\` file.`) // TODO: better message\n\t}\n}\n\n/**\n * @group Entrypoints\n */\nexport const ApplicationEntrypoint = (props: ApplicationEntrypointProps) => {\n\tvalidateProps(props)\n\n\tconst rootEnv = props.environment ?? Environment.create()\n\n\tconst routing: RoutingContextValue = {\n\t\tbasePath: props.basePath,\n\t\troutes: props.routes ?? { index: { path: '/' } },\n\t\tdefaultDimensions: rootEnv.getAllDimensions(),\n\t}\n\n\n\treturn (\n\t\t<EnvironmentContext.Provider value={rootEnv}>\n\t\t\t<RoutingContext.Provider value={routing}>\n\t\t\t\t<RequestProvider>\n\t\t\t\t\t<ContemberClient\n\t\t\t\t\t\tapiBaseUrl={props.apiBaseUrl}\n\t\t\t\t\t\tsessionToken={props.sessionToken}\n\t\t\t\t\t\tloginToken={props.loginToken}\n\t\t\t\t\t\tproject={props.project}\n\t\t\t\t\t\tstage={props.stage}\n\t\t\t\t\t>\n\t\t\t\t\t\t<EnvironmentExtensionProvider extension={projectEnvironmentExtension} state={props.project ?? null}>\n\t\t\t\t\t\t\t<DataViewPageNameKeyProvider>\n\t\t\t\t\t\t\t\t<IdentityProvider>\n\t\t\t\t\t\t\t\t\t{props.children}\n\t\t\t\t\t\t\t\t</IdentityProvider>\n\t\t\t\t\t\t\t</DataViewPageNameKeyProvider>\n\t\t\t\t\t\t</EnvironmentExtensionProvider>\n\t\t\t\t\t</ContemberClient>\n\t\t\t\t</RequestProvider>\n\t\t\t</RoutingContext.Provider>\n\t\t</EnvironmentContext.Provider>\n\t)\n}\n"],"names":[],"mappings":";;;;;;AAeA,MAAM,gBAAgB,CAAC,UAA+C;AACjE,MAAA,OAAO,MAAM,eAAe,UAAU;AACnC,UAAA,IAAI,MAAM,iFAAiF;AAAA,EAClG;AACD;AAKa,MAAA,wBAAwB,CAAC,UAAsC;AAC3E,gBAAc,KAAK;AAEnB,QAAM,UAAU,MAAM,eAAe,YAAY,OAAO;AAExD,QAAM,UAA+B;AAAA,IACpC,UAAU,MAAM;AAAA,IAChB,QAAQ,MAAM,UAAU,EAAE,OAAO,EAAE,MAAM,MAAM;AAAA,IAC/C,mBAAmB,QAAQ,iBAAiB;AAAA,EAAA;AAI7C,SACE,oBAAA,mBAAmB,UAAnB,EAA4B,OAAO,SACnC,UAAC,oBAAA,eAAe,UAAf,EAAwB,OAAO,SAC/B,8BAAC,iBACA,EAAA,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,YAAY,MAAM;AAAA,MAClB,cAAc,MAAM;AAAA,MACpB,YAAY,MAAM;AAAA,MAClB,SAAS,MAAM;AAAA,MACf,OAAO,MAAM;AAAA,MAEb,UAAC,oBAAA,8BAAA,EAA6B,WAAW,6BAA6B,OAAO,MAAM,WAAW,MAC7F,UAAA,oBAAC,+BACA,UAAC,oBAAA,kBAAA,EACC,UAAM,MAAA,SAAA,CACR,EACD,CAAA,GACD;AAAA,IAAA;AAAA,EAAA,GAEF,GACD,EACD,CAAA;AAEF;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const reactRouting = require("@contember/react-routing");
|
|
5
|
+
const reactDataview = require("@contember/react-dataview");
|
|
6
|
+
const DataViewPageNameKeyProvider = ({ children }) => {
|
|
7
|
+
const pageName = reactRouting.useCurrentRequest()?.pageName;
|
|
8
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactDataview.DataViewKeyProvider, { value: pageName ?? "", children });
|
|
9
|
+
};
|
|
10
|
+
exports.DataViewPageNameKeyProvider = DataViewPageNameKeyProvider;
|
|
11
|
+
//# sourceMappingURL=DataViewPageNameKeyProvider.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataViewPageNameKeyProvider.cjs","sources":["../../../src/bootstrap/DataViewPageNameKeyProvider.tsx"],"sourcesContent":["import { useCurrentRequest } from '@contember/react-routing'\nimport { DataViewKeyProvider } from '@contember/react-dataview'\nimport { ReactNode } from 'react'\n\nexport const DataViewPageNameKeyProvider = ({ children }: { children: ReactNode }) => {\n\tconst pageName = useCurrentRequest()?.pageName\n\n\treturn (\n\t\t<DataViewKeyProvider value={pageName ?? ''}>\n\t\t\t{children}\n\t\t</DataViewKeyProvider>\n\t)\n}\n"],"names":["useCurrentRequest","jsx","DataViewKeyProvider"],"mappings":";;;;;AAIO,MAAM,8BAA8B,CAAC,EAAE,eAAwC;AAC/E,QAAA,WAAWA,+BAAqB,GAAA;AAEtC,SACEC,2BAAAA,IAAAC,cAAAA,qBAAA,EAAoB,OAAO,YAAY,IACtC,SACF,CAAA;AAEF;;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCurrentRequest } from "@contember/react-routing";
|
|
3
|
+
import { DataViewKeyProvider } from "@contember/react-dataview";
|
|
4
|
+
const DataViewPageNameKeyProvider = ({ children }) => {
|
|
5
|
+
const pageName = useCurrentRequest()?.pageName;
|
|
6
|
+
return /* @__PURE__ */ jsx(DataViewKeyProvider, { value: pageName ?? "", children });
|
|
7
|
+
};
|
|
8
|
+
export {
|
|
9
|
+
DataViewPageNameKeyProvider
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=DataViewPageNameKeyProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataViewPageNameKeyProvider.js","sources":["../../../src/bootstrap/DataViewPageNameKeyProvider.tsx"],"sourcesContent":["import { useCurrentRequest } from '@contember/react-routing'\nimport { DataViewKeyProvider } from '@contember/react-dataview'\nimport { ReactNode } from 'react'\n\nexport const DataViewPageNameKeyProvider = ({ children }: { children: ReactNode }) => {\n\tconst pageName = useCurrentRequest()?.pageName\n\n\treturn (\n\t\t<DataViewKeyProvider value={pageName ?? ''}>\n\t\t\t{children}\n\t\t</DataViewKeyProvider>\n\t)\n}\n"],"names":[],"mappings":";;;AAIO,MAAM,8BAA8B,CAAC,EAAE,eAAwC;AAC/E,QAAA,WAAW,kBAAqB,GAAA;AAEtC,SACE,oBAAA,qBAAA,EAAoB,OAAO,YAAY,IACtC,SACF,CAAA;AAEF;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const reactDevbar = require("@contember/react-devbar");
|
|
4
|
+
const client = require("react-dom/client");
|
|
5
|
+
const runReactApp = (reactElement, { domRoot } = {}) => {
|
|
6
|
+
const rootEl = domRoot ?? document.body.appendChild(document.createElement("div"));
|
|
7
|
+
const errorHandler = reactDevbar.createErrorHandler((dom, react, onRecoverableError) => client.createRoot(dom, { onRecoverableError }).render(react));
|
|
8
|
+
errorHandler((onRecoverableError) => client.createRoot(rootEl, { onRecoverableError }).render(reactElement));
|
|
9
|
+
};
|
|
10
|
+
exports.runReactApp = runReactApp;
|
|
11
|
+
//# sourceMappingURL=runReactApp.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runReactApp.cjs","sources":["../../../src/bootstrap/runReactApp.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { createErrorHandler } from '@contember/react-devbar'\nimport { createRoot } from 'react-dom/client'\n\nexport const runReactApp = (\n\treactElement: ReactElement,\n\t{ domRoot }: {\n\t\tdomRoot?: HTMLElement,\n\t} = {},\n) => {\n\tconst rootEl = domRoot ?? document.body.appendChild(document.createElement('div'))\n\n\tconst errorHandler = createErrorHandler((dom, react, onRecoverableError) => createRoot(dom, { onRecoverableError }).render(react))\n\n\terrorHandler(onRecoverableError => createRoot(rootEl, { onRecoverableError }).render(reactElement))\n}\n"],"names":["createErrorHandler","createRoot"],"mappings":";;;;AAIO,MAAM,cAAc,CAC1B,cACA,EAAE,QAAQ,IAEN,CAAA,MACA;AACE,QAAA,SAAS,WAAW,SAAS,KAAK,YAAY,SAAS,cAAc,KAAK,CAAC;AAEjF,QAAM,eAAeA,YAAA,mBAAmB,CAAC,KAAK,OAAO,uBAAuBC,OAAAA,WAAW,KAAK,EAAE,mBAAoB,CAAA,EAAE,OAAO,KAAK,CAAC;AAEpH,eAAA,CAAA,uBAAsBA,OAAAA,WAAW,QAAQ,EAAE,oBAAoB,EAAE,OAAO,YAAY,CAAC;AACnG;;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { createErrorHandler } from "@contember/react-devbar";
|
|
2
|
+
import { createRoot } from "react-dom/client";
|
|
3
|
+
const runReactApp = (reactElement, { domRoot } = {}) => {
|
|
4
|
+
const rootEl = domRoot ?? document.body.appendChild(document.createElement("div"));
|
|
5
|
+
const errorHandler = createErrorHandler((dom, react, onRecoverableError) => createRoot(dom, { onRecoverableError }).render(react));
|
|
6
|
+
errorHandler((onRecoverableError) => createRoot(rootEl, { onRecoverableError }).render(reactElement));
|
|
7
|
+
};
|
|
8
|
+
export {
|
|
9
|
+
runReactApp
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=runReactApp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runReactApp.js","sources":["../../../src/bootstrap/runReactApp.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { createErrorHandler } from '@contember/react-devbar'\nimport { createRoot } from 'react-dom/client'\n\nexport const runReactApp = (\n\treactElement: ReactElement,\n\t{ domRoot }: {\n\t\tdomRoot?: HTMLElement,\n\t} = {},\n) => {\n\tconst rootEl = domRoot ?? document.body.appendChild(document.createElement('div'))\n\n\tconst errorHandler = createErrorHandler((dom, react, onRecoverableError) => createRoot(dom, { onRecoverableError }).render(react))\n\n\terrorHandler(onRecoverableError => createRoot(rootEl, { onRecoverableError }).render(reactElement))\n}\n"],"names":[],"mappings":";;AAIO,MAAM,cAAc,CAC1B,cACA,EAAE,QAAQ,IAEN,CAAA,MACA;AACE,QAAA,SAAS,WAAW,SAAS,KAAK,YAAY,SAAS,cAAc,KAAK,CAAC;AAEjF,QAAM,eAAe,mBAAmB,CAAC,KAAK,OAAO,uBAAuB,WAAW,KAAK,EAAE,mBAAoB,CAAA,EAAE,OAAO,KAAK,CAAC;AAEpH,eAAA,CAAA,uBAAsB,WAAW,QAAQ,EAAE,oBAAoB,EAAE,OAAO,YAAY,CAAC;AACnG;"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const react = require("react");
|
|
5
|
+
const reactSlot = require("@radix-ui/react-slot");
|
|
6
|
+
const reactBinding = require("@contember/react-binding");
|
|
7
|
+
const ClearFieldTrigger = reactBinding.Component(({ field, ...props }) => {
|
|
8
|
+
const fieldAccessor = reactBinding.useField(field);
|
|
9
|
+
const clearField = react.useCallback(() => {
|
|
10
|
+
fieldAccessor.updateValue(null);
|
|
11
|
+
}, [fieldAccessor]);
|
|
12
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactSlot.Slot, { onClick: clearField, ...props });
|
|
13
|
+
}, ({ field }) => {
|
|
14
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Field, { field });
|
|
15
|
+
});
|
|
16
|
+
exports.ClearFieldTrigger = ClearFieldTrigger;
|
|
17
|
+
//# sourceMappingURL=ClearFieldTrigger.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClearFieldTrigger.cjs","sources":["../../../../src/components/binding/ClearFieldTrigger.tsx"],"sourcesContent":["import { ReactNode, useCallback } from 'react'\nimport { Slot } from '@radix-ui/react-slot'\nimport { Component, Field, SugaredRelativeSingleField, useField } from '@contember/react-binding'\n\nexport interface ClearFieldTriggerProps {\n\tfield: SugaredRelativeSingleField['field']\n\tchildren: ReactNode\n}\n\nexport const ClearFieldTrigger = Component<ClearFieldTriggerProps>(({ field, ...props }) => {\n\tconst fieldAccessor = useField(field)\n\tconst clearField = useCallback(() => {\n\t\tfieldAccessor.updateValue(null)\n\t}, [fieldAccessor])\n\treturn <Slot onClick={clearField} {...props} />\n}, ({ field }) => {\n\treturn <Field field={field} />\n})\n"],"names":["Component","useField","useCallback","jsx","Slot","Field"],"mappings":";;;;;;AASO,MAAM,oBAAoBA,aAAAA,UAAkC,CAAC,EAAE,OAAO,GAAG,YAAY;AACrF,QAAA,gBAAgBC,sBAAS,KAAK;AAC9B,QAAA,aAAaC,MAAAA,YAAY,MAAM;AACpC,kBAAc,YAAY,IAAI;AAAA,EAAA,GAC5B,CAAC,aAAa,CAAC;AAClB,SAAQC,2BAAAA,IAAAC,UAAAA,MAAA,EAAK,SAAS,YAAa,GAAG,MAAO,CAAA;AAC9C,GAAG,CAAC,EAAE,YAAY;AACV,SAAAD,+BAACE,aAAAA,SAAM,MAAc,CAAA;AAC7B,CAAC;;"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from "react";
|
|
3
|
+
import { Slot } from "@radix-ui/react-slot";
|
|
4
|
+
import { Component, useField, Field } from "@contember/react-binding";
|
|
5
|
+
const ClearFieldTrigger = Component(({ field, ...props }) => {
|
|
6
|
+
const fieldAccessor = useField(field);
|
|
7
|
+
const clearField = useCallback(() => {
|
|
8
|
+
fieldAccessor.updateValue(null);
|
|
9
|
+
}, [fieldAccessor]);
|
|
10
|
+
return /* @__PURE__ */ jsx(Slot, { onClick: clearField, ...props });
|
|
11
|
+
}, ({ field }) => {
|
|
12
|
+
return /* @__PURE__ */ jsx(Field, { field });
|
|
13
|
+
});
|
|
14
|
+
export {
|
|
15
|
+
ClearFieldTrigger
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=ClearFieldTrigger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClearFieldTrigger.js","sources":["../../../../src/components/binding/ClearFieldTrigger.tsx"],"sourcesContent":["import { ReactNode, useCallback } from 'react'\nimport { Slot } from '@radix-ui/react-slot'\nimport { Component, Field, SugaredRelativeSingleField, useField } from '@contember/react-binding'\n\nexport interface ClearFieldTriggerProps {\n\tfield: SugaredRelativeSingleField['field']\n\tchildren: ReactNode\n}\n\nexport const ClearFieldTrigger = Component<ClearFieldTriggerProps>(({ field, ...props }) => {\n\tconst fieldAccessor = useField(field)\n\tconst clearField = useCallback(() => {\n\t\tfieldAccessor.updateValue(null)\n\t}, [fieldAccessor])\n\treturn <Slot onClick={clearField} {...props} />\n}, ({ field }) => {\n\treturn <Field field={field} />\n})\n"],"names":[],"mappings":";;;;AASO,MAAM,oBAAoB,UAAkC,CAAC,EAAE,OAAO,GAAG,YAAY;AACrF,QAAA,gBAAgB,SAAS,KAAK;AAC9B,QAAA,aAAa,YAAY,MAAM;AACpC,kBAAc,YAAY,IAAI;AAAA,EAAA,GAC5B,CAAC,aAAa,CAAC;AAClB,SAAQ,oBAAA,MAAA,EAAK,SAAS,YAAa,GAAG,MAAO,CAAA;AAC9C,GAAG,CAAC,EAAE,YAAY;AACV,SAAA,oBAAC,SAAM,MAAc,CAAA;AAC7B,CAAC;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const react = require("react");
|
|
5
|
+
const reactSlot = require("@radix-ui/react-slot");
|
|
6
|
+
const reactBinding = require("@contember/react-binding");
|
|
7
|
+
const SlotButton = reactSlot.Slot;
|
|
8
|
+
const DeleteEntityTrigger = ({ immediatePersist, onPersistError, onPersistSuccess, ...props }) => {
|
|
9
|
+
const parentEntity = reactBinding.useEntity();
|
|
10
|
+
const triggerPersist = reactBinding.usePersist();
|
|
11
|
+
const isMutating = reactBinding.useMutationState();
|
|
12
|
+
const onClick = react.useCallback(() => {
|
|
13
|
+
parentEntity.deleteEntity();
|
|
14
|
+
if (immediatePersist) {
|
|
15
|
+
triggerPersist().then(onPersistSuccess).catch(onPersistError);
|
|
16
|
+
}
|
|
17
|
+
}, [parentEntity, immediatePersist, triggerPersist, onPersistSuccess, onPersistError]);
|
|
18
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
19
|
+
SlotButton,
|
|
20
|
+
{
|
|
21
|
+
onClick,
|
|
22
|
+
disabled: isMutating ? true : void 0,
|
|
23
|
+
...props
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
};
|
|
27
|
+
exports.DeleteEntityTrigger = DeleteEntityTrigger;
|
|
28
|
+
//# sourceMappingURL=DeleteEntityTrigger.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DeleteEntityTrigger.cjs","sources":["../../../../src/components/binding/DeleteEntityTrigger.tsx"],"sourcesContent":["import { ComponentType, ReactNode, useCallback } from 'react'\nimport { Slot } from '@radix-ui/react-slot'\nimport { ErrorPersistResult, SuccessfulPersistResult, useEntity, useMutationState, usePersist } from '@contember/react-binding'\n\n\nconst SlotButton = Slot as ComponentType<React.ButtonHTMLAttributes<HTMLButtonElement>>\n\nexport interface DeleteEntityTriggerProps {\n\timmediatePersist?: true\n\tchildren: ReactNode\n\tonPersistSuccess?: (result: SuccessfulPersistResult) => void\n\tonPersistError?: (result: ErrorPersistResult) => void\n}\n\nexport const DeleteEntityTrigger = ({ immediatePersist, onPersistError, onPersistSuccess, ...props }: DeleteEntityTriggerProps) => {\n\tconst parentEntity = useEntity()\n\tconst triggerPersist = usePersist()\n\tconst isMutating = useMutationState()\n\tconst onClick = useCallback(() => {\n\t\tparentEntity.deleteEntity()\n\n\t\tif (immediatePersist) {\n\t\t\ttriggerPersist()\n\t\t\t\t.then(onPersistSuccess)\n\t\t\t\t.catch(onPersistError)\n\t\t}\n\t}, [parentEntity, immediatePersist, triggerPersist, onPersistSuccess, onPersistError])\n\n\treturn (\n\t\t<SlotButton\n\t\t\tonClick={onClick}\n\t\t\tdisabled={isMutating ? true : undefined}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n"],"names":["Slot","useEntity","usePersist","useMutationState","useCallback","jsx"],"mappings":";;;;;;AAKA,MAAM,aAAaA,UAAAA;AASN,MAAA,sBAAsB,CAAC,EAAE,kBAAkB,gBAAgB,kBAAkB,GAAG,YAAsC;AAClI,QAAM,eAAeC,aAAAA;AACrB,QAAM,iBAAiBC,aAAAA;AACvB,QAAM,aAAaC,aAAAA;AACb,QAAA,UAAUC,MAAAA,YAAY,MAAM;AACjC,iBAAa,aAAa;AAE1B,QAAI,kBAAkB;AACrB,qBAAA,EACE,KAAK,gBAAgB,EACrB,MAAM,cAAc;AAAA,IACvB;AAAA,EAAA,GACE,CAAC,cAAc,kBAAkB,gBAAgB,kBAAkB,cAAc,CAAC;AAGpF,SAAAC,2BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,UAAU,aAAa,OAAO;AAAA,MAC7B,GAAG;AAAA,IAAA;AAAA,EAAA;AAGP;;"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from "react";
|
|
3
|
+
import { Slot } from "@radix-ui/react-slot";
|
|
4
|
+
import { useEntity, usePersist, useMutationState } from "@contember/react-binding";
|
|
5
|
+
const SlotButton = Slot;
|
|
6
|
+
const DeleteEntityTrigger = ({ immediatePersist, onPersistError, onPersistSuccess, ...props }) => {
|
|
7
|
+
const parentEntity = useEntity();
|
|
8
|
+
const triggerPersist = usePersist();
|
|
9
|
+
const isMutating = useMutationState();
|
|
10
|
+
const onClick = useCallback(() => {
|
|
11
|
+
parentEntity.deleteEntity();
|
|
12
|
+
if (immediatePersist) {
|
|
13
|
+
triggerPersist().then(onPersistSuccess).catch(onPersistError);
|
|
14
|
+
}
|
|
15
|
+
}, [parentEntity, immediatePersist, triggerPersist, onPersistSuccess, onPersistError]);
|
|
16
|
+
return /* @__PURE__ */ jsx(
|
|
17
|
+
SlotButton,
|
|
18
|
+
{
|
|
19
|
+
onClick,
|
|
20
|
+
disabled: isMutating ? true : void 0,
|
|
21
|
+
...props
|
|
22
|
+
}
|
|
23
|
+
);
|
|
24
|
+
};
|
|
25
|
+
export {
|
|
26
|
+
DeleteEntityTrigger
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=DeleteEntityTrigger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DeleteEntityTrigger.js","sources":["../../../../src/components/binding/DeleteEntityTrigger.tsx"],"sourcesContent":["import { ComponentType, ReactNode, useCallback } from 'react'\nimport { Slot } from '@radix-ui/react-slot'\nimport { ErrorPersistResult, SuccessfulPersistResult, useEntity, useMutationState, usePersist } from '@contember/react-binding'\n\n\nconst SlotButton = Slot as ComponentType<React.ButtonHTMLAttributes<HTMLButtonElement>>\n\nexport interface DeleteEntityTriggerProps {\n\timmediatePersist?: true\n\tchildren: ReactNode\n\tonPersistSuccess?: (result: SuccessfulPersistResult) => void\n\tonPersistError?: (result: ErrorPersistResult) => void\n}\n\nexport const DeleteEntityTrigger = ({ immediatePersist, onPersistError, onPersistSuccess, ...props }: DeleteEntityTriggerProps) => {\n\tconst parentEntity = useEntity()\n\tconst triggerPersist = usePersist()\n\tconst isMutating = useMutationState()\n\tconst onClick = useCallback(() => {\n\t\tparentEntity.deleteEntity()\n\n\t\tif (immediatePersist) {\n\t\t\ttriggerPersist()\n\t\t\t\t.then(onPersistSuccess)\n\t\t\t\t.catch(onPersistError)\n\t\t}\n\t}, [parentEntity, immediatePersist, triggerPersist, onPersistSuccess, onPersistError])\n\n\treturn (\n\t\t<SlotButton\n\t\t\tonClick={onClick}\n\t\t\tdisabled={isMutating ? true : undefined}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n"],"names":[],"mappings":";;;;AAKA,MAAM,aAAa;AASN,MAAA,sBAAsB,CAAC,EAAE,kBAAkB,gBAAgB,kBAAkB,GAAG,YAAsC;AAClI,QAAM,eAAe;AACrB,QAAM,iBAAiB;AACvB,QAAM,aAAa;AACb,QAAA,UAAU,YAAY,MAAM;AACjC,iBAAa,aAAa;AAE1B,QAAI,kBAAkB;AACrB,qBAAA,EACE,KAAK,gBAAgB,EACrB,MAAM,cAAc;AAAA,IACvB;AAAA,EAAA,GACE,CAAC,cAAc,kBAAkB,gBAAgB,kBAAkB,cAAc,CAAC;AAGpF,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,UAAU,aAAa,OAAO;AAAA,MAC7B,GAAG;AAAA,IAAA;AAAA,EAAA;AAGP;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const reactBinding = require("@contember/react-binding");
|
|
4
|
+
const EntityBeforePersist = ({ listener }) => {
|
|
5
|
+
reactBinding.useEntityBeforePersist(listener);
|
|
6
|
+
return null;
|
|
7
|
+
};
|
|
8
|
+
exports.EntityBeforePersist = EntityBeforePersist;
|
|
9
|
+
//# sourceMappingURL=EntityBeforePersist.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntityBeforePersist.cjs","sources":["../../../../src/components/binding/EntityBeforePersist.tsx"],"sourcesContent":["import { EntityAccessor, useEntityBeforePersist } from '@contember/react-binding'\n\nexport const EntityBeforePersist = ({ listener }: { listener: EntityAccessor.EntityEventListenerMap['beforePersist']}) => {\n\tuseEntityBeforePersist(listener)\n\treturn null\n}\n"],"names":["useEntityBeforePersist"],"mappings":";;;AAEO,MAAM,sBAAsB,CAAC,EAAE,eAAoF;AACzHA,eAAA,uBAAuB,QAAQ;AACxB,SAAA;AACR;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntityBeforePersist.js","sources":["../../../../src/components/binding/EntityBeforePersist.tsx"],"sourcesContent":["import { EntityAccessor, useEntityBeforePersist } from '@contember/react-binding'\n\nexport const EntityBeforePersist = ({ listener }: { listener: EntityAccessor.EntityEventListenerMap['beforePersist']}) => {\n\tuseEntityBeforePersist(listener)\n\treturn null\n}\n"],"names":[],"mappings":";AAEO,MAAM,sBAAsB,CAAC,EAAE,eAAoF;AACzH,yBAAuB,QAAQ;AACxB,SAAA;AACR;"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const reactBinding = require("@contember/react-binding");
|
|
5
|
+
const react = require("react");
|
|
6
|
+
const reactSlot = require("@radix-ui/react-slot");
|
|
7
|
+
const utilities = require("@contember/utilities");
|
|
8
|
+
const SlotButton = reactSlot.Slot;
|
|
9
|
+
const PersistTrigger = ({ onPersistError, onPersistSuccess, ...props }) => {
|
|
10
|
+
const isMutating = reactBinding.useMutationState();
|
|
11
|
+
const isDirty = reactBinding.useDirtinessState();
|
|
12
|
+
const triggerPersist = reactBinding.usePersist();
|
|
13
|
+
const onClick = react.useCallback(() => {
|
|
14
|
+
triggerPersist().then(onPersistSuccess).catch(onPersistError);
|
|
15
|
+
}, [onPersistError, onPersistSuccess, triggerPersist]);
|
|
16
|
+
const isDisabled = isMutating || !isDirty;
|
|
17
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18
|
+
SlotButton,
|
|
19
|
+
{
|
|
20
|
+
disabled: isDisabled,
|
|
21
|
+
"data-dirty": utilities.dataAttribute(isDirty),
|
|
22
|
+
"data-loading": utilities.dataAttribute(isMutating),
|
|
23
|
+
onClick,
|
|
24
|
+
...props
|
|
25
|
+
}
|
|
26
|
+
);
|
|
27
|
+
};
|
|
28
|
+
exports.PersistTrigger = PersistTrigger;
|
|
29
|
+
//# sourceMappingURL=PersistTrigger.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PersistTrigger.cjs","sources":["../../../../src/components/binding/PersistTrigger.tsx"],"sourcesContent":["import { ErrorPersistResult, SuccessfulPersistResult, useDirtinessState, useMutationState, usePersist } from '@contember/react-binding'\nimport { ComponentType, ReactElement, useCallback } from 'react'\nimport { Slot } from '@radix-ui/react-slot'\nimport { dataAttribute } from '@contember/utilities'\n\nconst SlotButton = Slot as ComponentType<React.ButtonHTMLAttributes<HTMLButtonElement>>\n\nexport interface PersistTriggerProps {\n\tchildren: ReactElement\n\tonPersistSuccess?: (result: SuccessfulPersistResult) => void\n\tonPersistError?: (result: ErrorPersistResult) => void\n}\n\nexport const PersistTrigger = ({ onPersistError, onPersistSuccess, ...props }: PersistTriggerProps) => {\n\tconst isMutating = useMutationState()\n\tconst isDirty = useDirtinessState()\n\tconst triggerPersist = usePersist()\n\tconst onClick = useCallback(() => {\n\t\ttriggerPersist()\n\t\t\t.then(onPersistSuccess)\n\t\t\t.catch(onPersistError)\n\t}, [onPersistError, onPersistSuccess, triggerPersist])\n\n\tconst isDisabled = isMutating || !isDirty\n\n\treturn (\n\t\t<SlotButton\n\t\t\tdisabled={isDisabled}\n\t\t\tdata-dirty={dataAttribute(isDirty)}\n\t\t\tdata-loading={dataAttribute(isMutating)}\n\t\t\tonClick={onClick}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n"],"names":["Slot","useMutationState","useDirtinessState","usePersist","useCallback","jsx","dataAttribute"],"mappings":";;;;;;;AAKA,MAAM,aAAaA,UAAAA;AAQZ,MAAM,iBAAiB,CAAC,EAAE,gBAAgB,kBAAkB,GAAG,YAAiC;AACtG,QAAM,aAAaC,aAAAA;AACnB,QAAM,UAAUC,aAAAA;AAChB,QAAM,iBAAiBC,aAAAA;AACjB,QAAA,UAAUC,MAAAA,YAAY,MAAM;AACjC,mBAAA,EACE,KAAK,gBAAgB,EACrB,MAAM,cAAc;AAAA,EACpB,GAAA,CAAC,gBAAgB,kBAAkB,cAAc,CAAC;AAE/C,QAAA,aAAa,cAAc,CAAC;AAGjC,SAAAC,2BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,UAAU;AAAA,MACV,cAAYC,wBAAc,OAAO;AAAA,MACjC,gBAAcA,wBAAc,UAAU;AAAA,MACtC;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGP;;"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMutationState, useDirtinessState, usePersist } from "@contember/react-binding";
|
|
3
|
+
import { useCallback } from "react";
|
|
4
|
+
import { Slot } from "@radix-ui/react-slot";
|
|
5
|
+
import { dataAttribute } from "@contember/utilities";
|
|
6
|
+
const SlotButton = Slot;
|
|
7
|
+
const PersistTrigger = ({ onPersistError, onPersistSuccess, ...props }) => {
|
|
8
|
+
const isMutating = useMutationState();
|
|
9
|
+
const isDirty = useDirtinessState();
|
|
10
|
+
const triggerPersist = usePersist();
|
|
11
|
+
const onClick = useCallback(() => {
|
|
12
|
+
triggerPersist().then(onPersistSuccess).catch(onPersistError);
|
|
13
|
+
}, [onPersistError, onPersistSuccess, triggerPersist]);
|
|
14
|
+
const isDisabled = isMutating || !isDirty;
|
|
15
|
+
return /* @__PURE__ */ jsx(
|
|
16
|
+
SlotButton,
|
|
17
|
+
{
|
|
18
|
+
disabled: isDisabled,
|
|
19
|
+
"data-dirty": dataAttribute(isDirty),
|
|
20
|
+
"data-loading": dataAttribute(isMutating),
|
|
21
|
+
onClick,
|
|
22
|
+
...props
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
};
|
|
26
|
+
export {
|
|
27
|
+
PersistTrigger
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=PersistTrigger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PersistTrigger.js","sources":["../../../../src/components/binding/PersistTrigger.tsx"],"sourcesContent":["import { ErrorPersistResult, SuccessfulPersistResult, useDirtinessState, useMutationState, usePersist } from '@contember/react-binding'\nimport { ComponentType, ReactElement, useCallback } from 'react'\nimport { Slot } from '@radix-ui/react-slot'\nimport { dataAttribute } from '@contember/utilities'\n\nconst SlotButton = Slot as ComponentType<React.ButtonHTMLAttributes<HTMLButtonElement>>\n\nexport interface PersistTriggerProps {\n\tchildren: ReactElement\n\tonPersistSuccess?: (result: SuccessfulPersistResult) => void\n\tonPersistError?: (result: ErrorPersistResult) => void\n}\n\nexport const PersistTrigger = ({ onPersistError, onPersistSuccess, ...props }: PersistTriggerProps) => {\n\tconst isMutating = useMutationState()\n\tconst isDirty = useDirtinessState()\n\tconst triggerPersist = usePersist()\n\tconst onClick = useCallback(() => {\n\t\ttriggerPersist()\n\t\t\t.then(onPersistSuccess)\n\t\t\t.catch(onPersistError)\n\t}, [onPersistError, onPersistSuccess, triggerPersist])\n\n\tconst isDisabled = isMutating || !isDirty\n\n\treturn (\n\t\t<SlotButton\n\t\t\tdisabled={isDisabled}\n\t\t\tdata-dirty={dataAttribute(isDirty)}\n\t\t\tdata-loading={dataAttribute(isMutating)}\n\t\t\tonClick={onClick}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n"],"names":[],"mappings":";;;;;AAKA,MAAM,aAAa;AAQZ,MAAM,iBAAiB,CAAC,EAAE,gBAAgB,kBAAkB,GAAG,YAAiC;AACtG,QAAM,aAAa;AACnB,QAAM,UAAU;AAChB,QAAM,iBAAiB;AACjB,QAAA,UAAU,YAAY,MAAM;AACjC,mBAAA,EACE,KAAK,gBAAgB,EACrB,MAAM,cAAc;AAAA,EACpB,GAAA,CAAC,gBAAgB,kBAAkB,cAAc,CAAC;AAE/C,QAAA,aAAa,cAAc,CAAC;AAGjC,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,UAAU;AAAA,MACV,cAAY,cAAc,OAAO;AAAA,MACjC,gBAAc,cAAc,UAAU;AAAA,MACtC;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGP;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const reactBinding = require("@contember/react-binding");
|
|
4
|
+
const reactRouting = require("@contember/react-routing");
|
|
5
|
+
const RedirectOnPersist = ({ to }) => {
|
|
6
|
+
const redirect = reactRouting.useRedirect();
|
|
7
|
+
reactBinding.useEntityPersistSuccess((getEntity, options) => {
|
|
8
|
+
if (options.successType !== "justSuccess") {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
redirect(to);
|
|
12
|
+
});
|
|
13
|
+
return null;
|
|
14
|
+
};
|
|
15
|
+
exports.RedirectOnPersist = RedirectOnPersist;
|
|
16
|
+
//# sourceMappingURL=RedirectOnPersist.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RedirectOnPersist.cjs","sources":["../../../../src/components/binding/RedirectOnPersist.tsx"],"sourcesContent":["import { useEntityPersistSuccess } from '@contember/react-binding'\nimport { useRedirect } from '@contember/react-routing'\nimport { RoutingLinkTarget } from '@contember/react-routing'\n\nexport const RedirectOnPersist = ({ to }: { to: RoutingLinkTarget }) => {\n\tconst redirect = useRedirect()\n\tuseEntityPersistSuccess((getEntity, options) => {\n\t\tif (options.successType !== 'justSuccess') {\n\t\t\treturn\n\t\t}\n\t\tredirect(to)\n\t})\n\treturn null\n}\n"],"names":["useRedirect","useEntityPersistSuccess"],"mappings":";;;;AAIO,MAAM,oBAAoB,CAAC,EAAE,SAAoC;AACvE,QAAM,WAAWA,aAAAA;AACOC,uCAAA,CAAC,WAAW,YAAY;AAC3C,QAAA,QAAQ,gBAAgB,eAAe;AAC1C;AAAA,IACD;AACA,aAAS,EAAE;AAAA,EAAA,CACX;AACM,SAAA;AACR;;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { useEntityPersistSuccess } from "@contember/react-binding";
|
|
2
|
+
import { useRedirect } from "@contember/react-routing";
|
|
3
|
+
const RedirectOnPersist = ({ to }) => {
|
|
4
|
+
const redirect = useRedirect();
|
|
5
|
+
useEntityPersistSuccess((getEntity, options) => {
|
|
6
|
+
if (options.successType !== "justSuccess") {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
redirect(to);
|
|
10
|
+
});
|
|
11
|
+
return null;
|
|
12
|
+
};
|
|
13
|
+
export {
|
|
14
|
+
RedirectOnPersist
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=RedirectOnPersist.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RedirectOnPersist.js","sources":["../../../../src/components/binding/RedirectOnPersist.tsx"],"sourcesContent":["import { useEntityPersistSuccess } from '@contember/react-binding'\nimport { useRedirect } from '@contember/react-routing'\nimport { RoutingLinkTarget } from '@contember/react-routing'\n\nexport const RedirectOnPersist = ({ to }: { to: RoutingLinkTarget }) => {\n\tconst redirect = useRedirect()\n\tuseEntityPersistSuccess((getEntity, options) => {\n\t\tif (options.successType !== 'justSuccess') {\n\t\t\treturn\n\t\t}\n\t\tredirect(to)\n\t})\n\treturn null\n}\n"],"names":[],"mappings":";;AAIO,MAAM,oBAAoB,CAAC,EAAE,SAAoC;AACvE,QAAM,WAAW;AACO,0BAAA,CAAC,WAAW,YAAY;AAC3C,QAAA,QAAQ,gBAAgB,eAAe;AAC1C;AAAA,IACD;AACA,aAAS,EAAE;AAAA,EAAA,CACX;AACM,SAAA;AACR;"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const reactRouting = require("@contember/react-routing");
|
|
4
|
+
const reactBinding = require("@contember/react-binding");
|
|
5
|
+
const reactIdentity = require("@contember/react-identity");
|
|
6
|
+
const ApplicationEntrypoint = require("./bootstrap/ApplicationEntrypoint.cjs");
|
|
7
|
+
const runReactApp = require("./bootstrap/runReactApp.cjs");
|
|
8
|
+
const ClearFieldTrigger = require("./components/binding/ClearFieldTrigger.cjs");
|
|
9
|
+
const DeleteEntityTrigger = require("./components/binding/DeleteEntityTrigger.cjs");
|
|
10
|
+
const PersistTrigger = require("./components/binding/PersistTrigger.cjs");
|
|
11
|
+
const EntityBeforePersist = require("./components/binding/EntityBeforePersist.cjs");
|
|
12
|
+
const RedirectOnPersist = require("./components/binding/RedirectOnPersist.cjs");
|
|
13
|
+
exports.ApplicationEntrypoint = ApplicationEntrypoint.ApplicationEntrypoint;
|
|
14
|
+
exports.runReactApp = runReactApp.runReactApp;
|
|
15
|
+
exports.ClearFieldTrigger = ClearFieldTrigger.ClearFieldTrigger;
|
|
16
|
+
exports.DeleteEntityTrigger = DeleteEntityTrigger.DeleteEntityTrigger;
|
|
17
|
+
exports.PersistTrigger = PersistTrigger.PersistTrigger;
|
|
18
|
+
exports.EntityBeforePersist = EntityBeforePersist.EntityBeforePersist;
|
|
19
|
+
exports.RedirectOnPersist = RedirectOnPersist.RedirectOnPersist;
|
|
20
|
+
Object.keys(reactRouting).forEach((k) => {
|
|
21
|
+
if (k !== "default" && !Object.prototype.hasOwnProperty.call(exports, k))
|
|
22
|
+
Object.defineProperty(exports, k, {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
get: () => reactRouting[k]
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
Object.keys(reactBinding).forEach((k) => {
|
|
28
|
+
if (k !== "default" && !Object.prototype.hasOwnProperty.call(exports, k))
|
|
29
|
+
Object.defineProperty(exports, k, {
|
|
30
|
+
enumerable: true,
|
|
31
|
+
get: () => reactBinding[k]
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
Object.keys(reactIdentity).forEach((k) => {
|
|
35
|
+
if (k !== "default" && !Object.prototype.hasOwnProperty.call(exports, k))
|
|
36
|
+
Object.defineProperty(exports, k, {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: () => reactIdentity[k]
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export * from "@contember/react-routing";
|
|
2
|
+
export * from "@contember/react-binding";
|
|
3
|
+
export * from "@contember/react-identity";
|
|
4
|
+
import { ApplicationEntrypoint } from "./bootstrap/ApplicationEntrypoint.js";
|
|
5
|
+
import { runReactApp } from "./bootstrap/runReactApp.js";
|
|
6
|
+
import { ClearFieldTrigger } from "./components/binding/ClearFieldTrigger.js";
|
|
7
|
+
import { DeleteEntityTrigger } from "./components/binding/DeleteEntityTrigger.js";
|
|
8
|
+
import { PersistTrigger } from "./components/binding/PersistTrigger.js";
|
|
9
|
+
import { EntityBeforePersist } from "./components/binding/EntityBeforePersist.js";
|
|
10
|
+
import { RedirectOnPersist } from "./components/binding/RedirectOnPersist.js";
|
|
11
|
+
export {
|
|
12
|
+
ApplicationEntrypoint,
|
|
13
|
+
ClearFieldTrigger,
|
|
14
|
+
DeleteEntityTrigger,
|
|
15
|
+
EntityBeforePersist,
|
|
16
|
+
PersistTrigger,
|
|
17
|
+
RedirectOnPersist,
|
|
18
|
+
runReactApp
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const reactBinding = require("@contember/react-binding");
|
|
5
|
+
const reactClient = require("@contember/react-client");
|
|
6
|
+
const reactRouting = require("@contember/react-routing");
|
|
7
|
+
const DataViewPageNameKeyProvider = require("./DataViewPageNameKeyProvider.cjs");
|
|
8
|
+
const reactIdentity = require("@contember/react-identity");
|
|
9
|
+
const validateProps = (props) => {
|
|
10
|
+
if (typeof props.apiBaseUrl !== "string") {
|
|
11
|
+
throw new Error(`The ENV variables haven't been set. Check your \`.env.development.local\` file.`);
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
const ApplicationEntrypoint = (props) => {
|
|
15
|
+
validateProps(props);
|
|
16
|
+
const rootEnv = props.environment ?? reactBinding.Environment.create();
|
|
17
|
+
const routing = {
|
|
18
|
+
basePath: props.basePath,
|
|
19
|
+
routes: props.routes ?? { index: { path: "/" } },
|
|
20
|
+
defaultDimensions: rootEnv.getAllDimensions()
|
|
21
|
+
};
|
|
22
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactBinding.EnvironmentContext.Provider, { value: rootEnv, children: /* @__PURE__ */ jsxRuntime.jsx(reactRouting.RoutingContext.Provider, { value: routing, children: /* @__PURE__ */ jsxRuntime.jsx(reactRouting.RequestProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
23
|
+
reactClient.ContemberClient,
|
|
24
|
+
{
|
|
25
|
+
apiBaseUrl: props.apiBaseUrl,
|
|
26
|
+
sessionToken: props.sessionToken,
|
|
27
|
+
loginToken: props.loginToken,
|
|
28
|
+
project: props.project,
|
|
29
|
+
stage: props.stage,
|
|
30
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(reactBinding.EnvironmentExtensionProvider, { extension: reactIdentity.projectEnvironmentExtension, state: props.project ?? null, children: /* @__PURE__ */ jsxRuntime.jsx(DataViewPageNameKeyProvider.DataViewPageNameKeyProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(reactIdentity.IdentityProvider, { children: props.children }) }) })
|
|
31
|
+
}
|
|
32
|
+
) }) }) });
|
|
33
|
+
};
|
|
34
|
+
exports.ApplicationEntrypoint = ApplicationEntrypoint;
|
|
35
|
+
//# sourceMappingURL=ApplicationEntrypoint.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApplicationEntrypoint.cjs","sources":["../../../src/bootstrap/ApplicationEntrypoint.tsx"],"sourcesContent":["import { Environment, EnvironmentContext, EnvironmentExtensionProvider } from '@contember/react-binding'\nimport { ContemberClient, ContemberClientProps } from '@contember/react-client'\nimport { ReactNode } from 'react'\nimport { RequestProvider, RouteMap, RoutingContext, RoutingContextValue, SelectedDimension } from '@contember/react-routing'\nimport { DataViewPageNameKeyProvider } from './DataViewPageNameKeyProvider'\nimport { IdentityProvider, projectEnvironmentExtension } from '@contember/react-identity'\n\nexport interface ApplicationEntrypointProps extends ContemberClientProps {\n\tbasePath: string\n\tsessionToken?: string\n\troutes?: RouteMap\n\tchildren: ReactNode\n\tenvironment?: Environment\n}\n\nconst validateProps = (props: Partial<ApplicationEntrypointProps>) => {\n\tif (typeof props.apiBaseUrl !== 'string') {\n\t\tthrow new Error(`The ENV variables haven't been set. Check your \\`.env.development.local\\` file.`) // TODO: better message\n\t}\n}\n\n/**\n * @group Entrypoints\n */\nexport const ApplicationEntrypoint = (props: ApplicationEntrypointProps) => {\n\tvalidateProps(props)\n\n\tconst rootEnv = props.environment ?? Environment.create()\n\n\tconst routing: RoutingContextValue = {\n\t\tbasePath: props.basePath,\n\t\troutes: props.routes ?? { index: { path: '/' } },\n\t\tdefaultDimensions: rootEnv.getAllDimensions(),\n\t}\n\n\n\treturn (\n\t\t<EnvironmentContext.Provider value={rootEnv}>\n\t\t\t<RoutingContext.Provider value={routing}>\n\t\t\t\t<RequestProvider>\n\t\t\t\t\t<ContemberClient\n\t\t\t\t\t\tapiBaseUrl={props.apiBaseUrl}\n\t\t\t\t\t\tsessionToken={props.sessionToken}\n\t\t\t\t\t\tloginToken={props.loginToken}\n\t\t\t\t\t\tproject={props.project}\n\t\t\t\t\t\tstage={props.stage}\n\t\t\t\t\t>\n\t\t\t\t\t\t<EnvironmentExtensionProvider extension={projectEnvironmentExtension} state={props.project ?? null}>\n\t\t\t\t\t\t\t<DataViewPageNameKeyProvider>\n\t\t\t\t\t\t\t\t<IdentityProvider>\n\t\t\t\t\t\t\t\t\t{props.children}\n\t\t\t\t\t\t\t\t</IdentityProvider>\n\t\t\t\t\t\t\t</DataViewPageNameKeyProvider>\n\t\t\t\t\t\t</EnvironmentExtensionProvider>\n\t\t\t\t\t</ContemberClient>\n\t\t\t\t</RequestProvider>\n\t\t\t</RoutingContext.Provider>\n\t\t</EnvironmentContext.Provider>\n\t)\n}\n"],"names":["Environment","jsx","EnvironmentContext","RoutingContext","RequestProvider","ContemberClient","EnvironmentExtensionProvider","projectEnvironmentExtension","DataViewPageNameKeyProvider","IdentityProvider"],"mappings":";;;;;;;;AAeA,MAAM,gBAAgB,CAAC,UAA+C;AACjE,MAAA,OAAO,MAAM,eAAe,UAAU;AACnC,UAAA,IAAI,MAAM,iFAAiF;AAAA,EAClG;AACD;AAKa,MAAA,wBAAwB,CAAC,UAAsC;AAC3E,gBAAc,KAAK;AAEnB,QAAM,UAAU,MAAM,eAAeA,aAAA,YAAY,OAAO;AAExD,QAAM,UAA+B;AAAA,IACpC,UAAU,MAAM;AAAA,IAChB,QAAQ,MAAM,UAAU,EAAE,OAAO,EAAE,MAAM,MAAM;AAAA,IAC/C,mBAAmB,QAAQ,iBAAiB;AAAA,EAAA;AAI7C,SACEC,2BAAAA,IAAAC,aAAAA,mBAAmB,UAAnB,EAA4B,OAAO,SACnC,UAACD,+BAAAE,aAAAA,eAAe,UAAf,EAAwB,OAAO,SAC/B,yCAACC,aACA,iBAAA,EAAA,UAAAH,2BAAA;AAAA,IAACI,YAAA;AAAA,IAAA;AAAA,MACA,YAAY,MAAM;AAAA,MAClB,cAAc,MAAM;AAAA,MACpB,YAAY,MAAM;AAAA,MAClB,SAAS,MAAM;AAAA,MACf,OAAO,MAAM;AAAA,MAEb,UAACJ,2BAAAA,IAAAK,aAAA,8BAAA,EAA6B,WAAWC,2CAA6B,OAAO,MAAM,WAAW,MAC7F,UAAAN,+BAACO,4BAAAA,+BACA,UAACP,2BAAA,IAAAQ,gCAAA,EACC,UAAM,MAAA,SAAA,CACR,EACD,CAAA,GACD;AAAA,IAAA;AAAA,EAAA,GAEF,GACD,EACD,CAAA;AAEF;;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Environment, EnvironmentContext, EnvironmentExtensionProvider } from "@contember/react-binding";
|
|
3
|
+
import { ContemberClient } from "@contember/react-client";
|
|
4
|
+
import { RoutingContext, RequestProvider } from "@contember/react-routing";
|
|
5
|
+
import { DataViewPageNameKeyProvider } from "./DataViewPageNameKeyProvider.js";
|
|
6
|
+
import { projectEnvironmentExtension, IdentityProvider } from "@contember/react-identity";
|
|
7
|
+
const validateProps = (props) => {
|
|
8
|
+
if (typeof props.apiBaseUrl !== "string") {
|
|
9
|
+
throw new Error(`The ENV variables haven't been set. Check your \`.env.development.local\` file.`);
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
const ApplicationEntrypoint = (props) => {
|
|
13
|
+
validateProps(props);
|
|
14
|
+
const rootEnv = props.environment ?? Environment.create();
|
|
15
|
+
const routing = {
|
|
16
|
+
basePath: props.basePath,
|
|
17
|
+
routes: props.routes ?? { index: { path: "/" } },
|
|
18
|
+
defaultDimensions: rootEnv.getAllDimensions()
|
|
19
|
+
};
|
|
20
|
+
return /* @__PURE__ */ jsx(EnvironmentContext.Provider, { value: rootEnv, children: /* @__PURE__ */ jsx(RoutingContext.Provider, { value: routing, children: /* @__PURE__ */ jsx(RequestProvider, { children: /* @__PURE__ */ jsx(
|
|
21
|
+
ContemberClient,
|
|
22
|
+
{
|
|
23
|
+
apiBaseUrl: props.apiBaseUrl,
|
|
24
|
+
sessionToken: props.sessionToken,
|
|
25
|
+
loginToken: props.loginToken,
|
|
26
|
+
project: props.project,
|
|
27
|
+
stage: props.stage,
|
|
28
|
+
children: /* @__PURE__ */ jsx(EnvironmentExtensionProvider, { extension: projectEnvironmentExtension, state: props.project ?? null, children: /* @__PURE__ */ jsx(DataViewPageNameKeyProvider, { children: /* @__PURE__ */ jsx(IdentityProvider, { children: props.children }) }) })
|
|
29
|
+
}
|
|
30
|
+
) }) }) });
|
|
31
|
+
};
|
|
32
|
+
export {
|
|
33
|
+
ApplicationEntrypoint
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=ApplicationEntrypoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApplicationEntrypoint.js","sources":["../../../src/bootstrap/ApplicationEntrypoint.tsx"],"sourcesContent":["import { Environment, EnvironmentContext, EnvironmentExtensionProvider } from '@contember/react-binding'\nimport { ContemberClient, ContemberClientProps } from '@contember/react-client'\nimport { ReactNode } from 'react'\nimport { RequestProvider, RouteMap, RoutingContext, RoutingContextValue, SelectedDimension } from '@contember/react-routing'\nimport { DataViewPageNameKeyProvider } from './DataViewPageNameKeyProvider'\nimport { IdentityProvider, projectEnvironmentExtension } from '@contember/react-identity'\n\nexport interface ApplicationEntrypointProps extends ContemberClientProps {\n\tbasePath: string\n\tsessionToken?: string\n\troutes?: RouteMap\n\tchildren: ReactNode\n\tenvironment?: Environment\n}\n\nconst validateProps = (props: Partial<ApplicationEntrypointProps>) => {\n\tif (typeof props.apiBaseUrl !== 'string') {\n\t\tthrow new Error(`The ENV variables haven't been set. Check your \\`.env.development.local\\` file.`) // TODO: better message\n\t}\n}\n\n/**\n * @group Entrypoints\n */\nexport const ApplicationEntrypoint = (props: ApplicationEntrypointProps) => {\n\tvalidateProps(props)\n\n\tconst rootEnv = props.environment ?? Environment.create()\n\n\tconst routing: RoutingContextValue = {\n\t\tbasePath: props.basePath,\n\t\troutes: props.routes ?? { index: { path: '/' } },\n\t\tdefaultDimensions: rootEnv.getAllDimensions(),\n\t}\n\n\n\treturn (\n\t\t<EnvironmentContext.Provider value={rootEnv}>\n\t\t\t<RoutingContext.Provider value={routing}>\n\t\t\t\t<RequestProvider>\n\t\t\t\t\t<ContemberClient\n\t\t\t\t\t\tapiBaseUrl={props.apiBaseUrl}\n\t\t\t\t\t\tsessionToken={props.sessionToken}\n\t\t\t\t\t\tloginToken={props.loginToken}\n\t\t\t\t\t\tproject={props.project}\n\t\t\t\t\t\tstage={props.stage}\n\t\t\t\t\t>\n\t\t\t\t\t\t<EnvironmentExtensionProvider extension={projectEnvironmentExtension} state={props.project ?? null}>\n\t\t\t\t\t\t\t<DataViewPageNameKeyProvider>\n\t\t\t\t\t\t\t\t<IdentityProvider>\n\t\t\t\t\t\t\t\t\t{props.children}\n\t\t\t\t\t\t\t\t</IdentityProvider>\n\t\t\t\t\t\t\t</DataViewPageNameKeyProvider>\n\t\t\t\t\t\t</EnvironmentExtensionProvider>\n\t\t\t\t\t</ContemberClient>\n\t\t\t\t</RequestProvider>\n\t\t\t</RoutingContext.Provider>\n\t\t</EnvironmentContext.Provider>\n\t)\n}\n"],"names":[],"mappings":";;;;;;AAeA,MAAM,gBAAgB,CAAC,UAA+C;AACjE,MAAA,OAAO,MAAM,eAAe,UAAU;AACnC,UAAA,IAAI,MAAM,iFAAiF;AAAA,EAClG;AACD;AAKa,MAAA,wBAAwB,CAAC,UAAsC;AAC3E,gBAAc,KAAK;AAEnB,QAAM,UAAU,MAAM,eAAe,YAAY,OAAO;AAExD,QAAM,UAA+B;AAAA,IACpC,UAAU,MAAM;AAAA,IAChB,QAAQ,MAAM,UAAU,EAAE,OAAO,EAAE,MAAM,MAAM;AAAA,IAC/C,mBAAmB,QAAQ,iBAAiB;AAAA,EAAA;AAI7C,SACE,oBAAA,mBAAmB,UAAnB,EAA4B,OAAO,SACnC,UAAC,oBAAA,eAAe,UAAf,EAAwB,OAAO,SAC/B,8BAAC,iBACA,EAAA,UAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,YAAY,MAAM;AAAA,MAClB,cAAc,MAAM;AAAA,MACpB,YAAY,MAAM;AAAA,MAClB,SAAS,MAAM;AAAA,MACf,OAAO,MAAM;AAAA,MAEb,UAAC,oBAAA,8BAAA,EAA6B,WAAW,6BAA6B,OAAO,MAAM,WAAW,MAC7F,UAAA,oBAAC,+BACA,UAAC,oBAAA,kBAAA,EACC,UAAM,MAAA,SAAA,CACR,EACD,CAAA,GACD;AAAA,IAAA;AAAA,EAAA,GAEF,GACD,EACD,CAAA;AAEF;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
+
const reactRouting = require("@contember/react-routing");
|
|
5
|
+
const reactDataview = require("@contember/react-dataview");
|
|
6
|
+
const DataViewPageNameKeyProvider = ({ children }) => {
|
|
7
|
+
const pageName = reactRouting.useCurrentRequest()?.pageName;
|
|
8
|
+
return /* @__PURE__ */ jsxRuntime.jsx(reactDataview.DataViewKeyProvider, { value: pageName ?? "", children });
|
|
9
|
+
};
|
|
10
|
+
exports.DataViewPageNameKeyProvider = DataViewPageNameKeyProvider;
|
|
11
|
+
//# sourceMappingURL=DataViewPageNameKeyProvider.cjs.map
|