@plasmicapp/react-web 0.2.430 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/all.d.ts +727 -480
- package/dist/index.cjs.js +48 -42
- package/dist/index.cjs.js.map +1 -1
- package/dist/react-web.esm.js +49 -43
- package/dist/react-web.esm.js.map +1 -1
- package/dist/render/ssr.d.ts +1 -5
- package/dist/states/helpers.d.ts +0 -2
- package/dist/states/types.d.ts +0 -1
- package/package.json +9 -20
- package/skinny/dist/index.js +46 -40
- package/skinny/dist/index.js.map +1 -1
- package/skinny/dist/plume/checkbox/index.js +1 -1
- package/skinny/dist/plume/menu/index.js +1 -1
- package/skinny/dist/plume/menu-button/index.js +1 -1
- package/skinny/dist/plume/select/index.js +1 -1
- package/skinny/dist/plume/switch/index.js +1 -1
- package/skinny/dist/render/ssr.d.ts +1 -5
- package/skinny/dist/{ssr-6d9f9c44.js → ssr-e496f477.js} +4 -4
- package/skinny/dist/ssr-e496f477.js.map +1 -0
- package/skinny/dist/states/helpers.d.ts +0 -2
- package/skinny/dist/states/types.d.ts +0 -1
- package/dist/nextjs-app-router/index.d.ts +0 -1
- package/dist/nextjs-app-router/react-server/index.d.ts +0 -15
- package/lib/nextjs-app-router/index.cjs.js +0 -11
- package/lib/nextjs-app-router/index.cjs.js.map +0 -1
- package/lib/nextjs-app-router/index.d.ts +0 -1
- package/lib/nextjs-app-router/index.js +0 -2
- package/lib/nextjs-app-router/index.js.map +0 -1
- package/lib/nextjs-app-router/react-server/index.cjs.js +0 -143
- package/lib/nextjs-app-router/react-server/index.cjs.js.map +0 -1
- package/lib/nextjs-app-router/react-server/index.d.ts +0 -15
- package/lib/nextjs-app-router/react-server/index.js +0 -130
- package/lib/nextjs-app-router/react-server/index.js.map +0 -1
- package/skinny/dist/nextjs-app-router/index.d.ts +0 -1
- package/skinny/dist/nextjs-app-router/react-server/index.d.ts +0 -15
- package/skinny/dist/ssr-6d9f9c44.js.map +0 -1
|
@@ -4,7 +4,7 @@ import { VisuallyHidden } from '@react-aria/visually-hidden';
|
|
|
4
4
|
import { useToggleState } from '@react-stately/toggle';
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
import { m as mergeProps } from '../../react-utils-2892a561.js';
|
|
7
|
-
import { c as useEnsureSSRProvider } from '../../ssr-
|
|
7
|
+
import { c as useEnsureSSRProvider } from '../../ssr-e496f477.js';
|
|
8
8
|
import { m as mergeVariantToggles } from '../../plume-utils-bc11b672.js';
|
|
9
9
|
import { g as getStyleProps } from '../../props-utils-9d995f69.js';
|
|
10
10
|
import 'classnames';
|
|
@@ -3,7 +3,7 @@ import { useMenu as useMenu$1, useMenuSection, useMenuItem as useMenuItem$1 } fr
|
|
|
3
3
|
import { useTreeState } from '@react-stately/tree';
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import { m as mergeProps } from '../../react-utils-2892a561.js';
|
|
6
|
-
import { c as useEnsureSSRProvider } from '../../ssr-
|
|
6
|
+
import { c as useEnsureSSRProvider } from '../../ssr-e496f477.js';
|
|
7
7
|
import { r as renderCollectionNode, u as useDerivedItemsFromChildren, a as renderAsCollectionChild } from '../../collection-utils-690045f9.js';
|
|
8
8
|
import { n as noOutline, m as mergeVariantToggles } from '../../plume-utils-bc11b672.js';
|
|
9
9
|
import { g as getStyleProps } from '../../props-utils-9d995f69.js';
|
|
@@ -7,7 +7,7 @@ import { usePress } from '@react-aria/interactions';
|
|
|
7
7
|
import { useMenuTrigger as useMenuTrigger$1 } from '@react-aria/menu';
|
|
8
8
|
import { g as getPlumeType, m as mergeVariantToggles } from '../../plume-utils-bc11b672.js';
|
|
9
9
|
import { useFocusable } from '@react-aria/focus';
|
|
10
|
-
import { c as useEnsureSSRProvider } from '../../ssr-
|
|
10
|
+
import { c as useEnsureSSRProvider } from '../../ssr-e496f477.js';
|
|
11
11
|
import { g as getStyleProps } from '../../props-utils-9d995f69.js';
|
|
12
12
|
import 'classnames';
|
|
13
13
|
import '@plasmicapp/data-sources-context';
|
|
@@ -6,7 +6,7 @@ import { useSelect as useSelect$1, HiddenSelect } from '@react-aria/select';
|
|
|
6
6
|
import { useSelectState } from '@react-stately/select';
|
|
7
7
|
import * as React from 'react';
|
|
8
8
|
import { m as mergeProps, d as mergeRefs } from '../../react-utils-2892a561.js';
|
|
9
|
-
import { c as useEnsureSSRProvider } from '../../ssr-
|
|
9
|
+
import { c as useEnsureSSRProvider } from '../../ssr-e496f477.js';
|
|
10
10
|
import { g as getChildProp, r as renderCollectionNode, b as useDerivedItems, a as renderAsCollectionChild } from '../../collection-utils-690045f9.js';
|
|
11
11
|
import { m as mergeVariantToggles, n as noOutline } from '../../plume-utils-bc11b672.js';
|
|
12
12
|
import { g as getStyleProps } from '../../props-utils-9d995f69.js';
|
|
@@ -4,7 +4,7 @@ import { VisuallyHidden } from '@react-aria/visually-hidden';
|
|
|
4
4
|
import { useToggleState } from '@react-stately/toggle';
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
import { m as mergeProps } from '../../react-utils-2892a561.js';
|
|
7
|
-
import { c as useEnsureSSRProvider } from '../../ssr-
|
|
7
|
+
import { c as useEnsureSSRProvider } from '../../ssr-e496f477.js';
|
|
8
8
|
import { m as mergeVariantToggles } from '../../plume-utils-bc11b672.js';
|
|
9
9
|
import { g as getStyleProps } from '../../props-utils-9d995f69.js';
|
|
10
10
|
import 'classnames';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PlasmicDataSourceContextValue } from "@plasmicapp/data-sources-context";
|
|
2
|
-
import { PlasmicI18NContextValue
|
|
2
|
+
import { PlasmicI18NContextValue } from "@plasmicapp/host";
|
|
3
3
|
import { useIsSSR as useAriaIsSSR } from "@react-aria/ssr";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
export { PlasmicDataSourceContextProvider, useCurrentUser, } from "@plasmicapp/data-sources-context";
|
|
@@ -10,10 +10,6 @@ export interface PlasmicRootProviderProps extends PlasmicDataSourceContextValue
|
|
|
10
10
|
platform?: "nextjs" | "gatsby";
|
|
11
11
|
children?: React.ReactNode;
|
|
12
12
|
i18n?: PlasmicI18NContextValue;
|
|
13
|
-
/**
|
|
14
|
-
* @deprecated use i18n.translator instead
|
|
15
|
-
*/
|
|
16
|
-
translator?: PlasmicTranslator;
|
|
17
13
|
Head?: React.ComponentType<any>;
|
|
18
14
|
Link?: React.ComponentType<any>;
|
|
19
15
|
disableLoadingBoundary?: boolean;
|
|
@@ -157,7 +157,7 @@ function isIterable(val) {
|
|
|
157
157
|
|
|
158
158
|
var PlasmicRootContext = React.createContext(undefined);
|
|
159
159
|
function PlasmicRootProvider(props) {
|
|
160
|
-
var _a
|
|
160
|
+
var _a;
|
|
161
161
|
var platform = props.platform, children = props.children, userAuthToken = props.userAuthToken, isUserLoading = props.isUserLoading, authRedirectUri = props.authRedirectUri, user = props.user, disableLoadingBoundary = props.disableLoadingBoundary, suspenseFallback = props.suspenseFallback;
|
|
162
162
|
var context = React.useMemo(function () { return ({
|
|
163
163
|
platform: platform,
|
|
@@ -174,9 +174,9 @@ function PlasmicRootProvider(props) {
|
|
|
174
174
|
React.createElement(PlasmicRootContext.Provider, { value: context },
|
|
175
175
|
React.createElement(MaybeWrap, { cond: reactMajorVersion < 18, wrapper: function (children_) { return React.createElement(SSRProvider, null, children_); } },
|
|
176
176
|
React.createElement(PlasmicDataSourceContextProvider, { value: dataSourceContextValue },
|
|
177
|
-
React.createElement(PlasmicTranslatorContext.Provider, { value:
|
|
177
|
+
React.createElement(PlasmicTranslatorContext.Provider, { value: props.i18n },
|
|
178
178
|
React.createElement(PlasmicHeadContext.Provider, { value: props.Head },
|
|
179
|
-
React.createElement(SafePlasmicLinkProvider, { Link: (
|
|
179
|
+
React.createElement(SafePlasmicLinkProvider, { Link: (_a = props.Link) !== null && _a !== void 0 ? _a : PlasmicLinkInternal }, children))))))));
|
|
180
180
|
}
|
|
181
181
|
/**
|
|
182
182
|
* A PlasmicLinkProvider that anticipates PlasmicLinkProvider may not exist yet from
|
|
@@ -211,4 +211,4 @@ function MaybeWrap(props) {
|
|
|
211
211
|
}
|
|
212
212
|
|
|
213
213
|
export { PlasmicLink as P, Trans as T, PlasmicRootProvider as a, usePlasmicTranslator as b, useEnsureSSRProvider as c, genTranslatableString as g, useIsSSR as u };
|
|
214
|
-
//# sourceMappingURL=ssr-
|
|
214
|
+
//# sourceMappingURL=ssr-e496f477.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ssr-e496f477.js","sources":["../../src/render/PlasmicLink.tsx","../../src/render/translation.tsx","../../src/render/ssr.tsx"],"sourcesContent":["import { usePlasmicLinkMaybe } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { omit, pick } from \"../common\";\n\n// These props are used internally by PlasmicLink to determine how to render the link\nconst INTERNAL_PROPS = [\"component\", \"platform\", \"legacyBehavior\"] as const;\n\nexport const PlasmicLink = React.forwardRef(function PlasmicLink(\n props: any,\n ref: React.Ref<any>\n) {\n // The usePlasmicLinkMaybe function may be undefined, if host is not up-to-date\n const Link = usePlasmicLinkMaybe?.() ?? PlasmicLinkInternal;\n if (Link === PlasmicLink || Link === PlasmicLinkInternal) {\n // Just in case, break the cycle\n return <PlasmicLinkInternal {...props} ref={ref} />;\n } else {\n // Don't pass internal props (component/platform/legacyBehavior) to non-PlasmicLinkInternal\n // eslint-disable-next-line react/forbid-elements\n return <Link {...omit(props, ...INTERNAL_PROPS)} ref={ref} />;\n }\n});\n\nexport const PlasmicLinkInternal = React.forwardRef(\n function PlasmicLinkInternal(props: any, ref: React.Ref<any>) {\n // props.href is required for nextjs; if no props.href,\n // then we just render the default anchor element\n if (props.platform === \"nextjs\" && props.href) {\n const nextjsProps = [\n \"href\",\n \"replace\",\n \"scroll\",\n \"shallow\",\n \"passHref\",\n \"prefetch\",\n \"locale\",\n ];\n\n // If this is a fragment identifier link, then we set\n // scroll={false} so that smooth scrolling works\n const isFragment = props.href?.startsWith(\"#\");\n\n // Default to legacy behavior (nested <a> tag) unless legacyBehavior\n // is explicitly set to false. Older codegen may not set this prop at\n // all, so we treat undefined as legacy for backwards compatibility.\n // https://github.com/plasmicapp/plasmic-internal/pull/2203#issuecomment-3877931788\n if (props.legacyBehavior !== false) {\n return React.createElement(\n props.component,\n {\n scroll: !isFragment,\n legacyBehavior: true,\n ...pick(props, ...nextjsProps),\n },\n <a {...omit(props, ...INTERNAL_PROPS, ...nextjsProps)} ref={ref} />\n );\n }\n\n // pass props directly to Link (no nested <a>)\n return React.createElement(props.component, {\n scroll: !isFragment,\n ...omit(props, ...INTERNAL_PROPS),\n ref,\n });\n }\n\n if (props.platform === \"gatsby\" && isInternalHref(props.href)) {\n return React.createElement(props.component, {\n ...omit(props, ...INTERNAL_PROPS, \"href\"),\n ...{ to: props.href, ref },\n });\n }\n\n if (props.platform === \"tanstack\" && isInternalHref(props.href)) {\n return React.createElement(props.component, {\n ...omit(props, ...INTERNAL_PROPS, \"href\"),\n ...{ to: props.href, ref },\n });\n }\n\n return <a {...omit(props, ...INTERNAL_PROPS)} ref={ref} />;\n }\n);\n\nfunction isInternalHref(href: string): boolean {\n return /^\\/(?!\\/)/.test(href);\n}\n","import {\n PlasmicTranslatorContext as HostPlasmicTranslatorContext,\n PlasmicI18NContextValue,\n PlasmicTranslator,\n usePlasmicTranslator as useHostPlasmicTranslator,\n} from \"@plasmicapp/host\";\nimport React from \"react\";\n\n// Make the refactor to host backwards compatible for loader\nexport const PlasmicTranslatorContext =\n HostPlasmicTranslatorContext ??\n React.createContext<PlasmicI18NContextValue | PlasmicTranslator | undefined>(\n undefined\n );\n\nexport const usePlasmicTranslator =\n useHostPlasmicTranslator ??\n (() => {\n const _t = React.useContext(PlasmicTranslatorContext);\n const translator = _t\n ? typeof _t === \"function\"\n ? _t\n : _t.translator\n : undefined;\n return translator;\n });\n\nexport interface TransProps {\n transKey?: string;\n children?: React.ReactNode;\n}\n\nexport function genTranslatableString(\n elt: React.ReactNode,\n opts?: {\n tagPrefix?: string;\n }\n) {\n const components: {\n [key: string]: React.ReactElement;\n } = {};\n let componentsCount = 0;\n\n const getText = (node: React.ReactNode): string => {\n if (!node) {\n return \"\";\n }\n if (\n typeof node === \"number\" ||\n typeof node === \"boolean\" ||\n typeof node === \"string\"\n ) {\n return node.toString();\n }\n if (typeof node !== \"object\") {\n return \"\";\n }\n if (Array.isArray(node) || isIterable(node)) {\n return Array.from(node)\n .map((child) => getText(child))\n .filter((child) => !!child)\n .join(\"\");\n }\n const nodeChildren: React.ReactNode =\n (hasKey(node, \"props\") &&\n hasKey(node.props, \"children\") &&\n (node.props.children as React.ReactNode | undefined)) ||\n (hasKey(node, \"children\") && node.children) ||\n [];\n const contents = `${React.Children.toArray(nodeChildren)\n .map((child) => getText(child))\n .filter((child) => !!child)\n .join(\"\")}`;\n if (React.isValidElement(node) && node.type === React.Fragment) {\n return contents;\n }\n const prefix = opts?.tagPrefix ?? \"\";\n const componentId = `${prefix}${componentsCount + 1}`;\n componentsCount++;\n components[componentId] = React.isValidElement(node)\n ? React.cloneElement(node as any, {\n key: componentId,\n children: undefined,\n })\n : (node as never);\n return `<${componentId}>${contents}</${componentId}>`;\n };\n\n const str = getText(elt);\n return {\n str,\n components,\n componentsCount,\n };\n}\n\nexport function Trans({ transKey, children }: TransProps) {\n const _t = React.useContext(PlasmicTranslatorContext);\n const translator = _t\n ? typeof _t === \"function\"\n ? _t\n : _t.translator\n : undefined;\n if (!translator) {\n warnNoTranslationFunctionAtMostOnce();\n return children;\n }\n\n const { str, components, componentsCount } = genTranslatableString(children, {\n tagPrefix: typeof _t === \"object\" ? _t.tagPrefix : undefined,\n });\n return translator(\n transKey ?? str,\n componentsCount > 0 ? { components } : undefined\n );\n}\n\nlet hasWarned = false;\nfunction warnNoTranslationFunctionAtMostOnce() {\n if (!hasWarned) {\n console.warn(\n \"Using Plasmic Translation but no translation function has been provided\"\n );\n hasWarned = true;\n }\n}\n\nfunction hasKey<K extends string>(v: any, key: K): v is Record<K, any> {\n return typeof v === \"object\" && v !== null && key in v;\n}\n\nfunction isIterable(val: any): val is Iterable<any> {\n return val != null && typeof val[Symbol.iterator] === \"function\";\n}\n","import {\n PlasmicDataSourceContextProvider,\n PlasmicDataSourceContextValue,\n} from \"@plasmicapp/data-sources-context\";\nimport {\n DataProvider,\n PlasmicI18NContextValue,\n PlasmicLinkProvider,\n} from \"@plasmicapp/host\";\nimport { SSRProvider, useIsSSR as useAriaIsSSR } from \"@react-aria/ssr\";\nimport * as React from \"react\";\nimport { PlasmicHeadContext } from \"./PlasmicHead\";\nimport { PlasmicLinkInternal } from \"./PlasmicLink\";\nimport { PlasmicTranslatorContext } from \"./translation\";\nexport {\n PlasmicDataSourceContextProvider,\n useCurrentUser,\n} from \"@plasmicapp/data-sources-context\";\n// import { PlasmicLink } from \"./PlasmicLink\";\n\nexport interface PlasmicRootContextValue {\n platform?: \"nextjs\" | \"gatsby\";\n}\n\nconst PlasmicRootContext = React.createContext<\n PlasmicRootContextValue | undefined\n>(undefined);\n\nexport interface PlasmicRootProviderProps\n extends PlasmicDataSourceContextValue {\n platform?: \"nextjs\" | \"gatsby\";\n children?: React.ReactNode;\n i18n?: PlasmicI18NContextValue;\n Head?: React.ComponentType<any>;\n Link?: React.ComponentType<any>;\n disableLoadingBoundary?: boolean;\n suspenseFallback?: React.ReactNode;\n}\n\nexport function PlasmicRootProvider(props: PlasmicRootProviderProps) {\n const {\n platform,\n children,\n userAuthToken,\n isUserLoading,\n authRedirectUri,\n user,\n disableLoadingBoundary,\n suspenseFallback,\n } = props;\n const context = React.useMemo(\n () => ({\n platform,\n }),\n [platform]\n );\n const dataSourceContextValue = React.useMemo(\n () => ({\n userAuthToken,\n user,\n isUserLoading,\n authRedirectUri,\n }),\n [userAuthToken, isUserLoading, user, authRedirectUri]\n );\n const reactMajorVersion = +React.version.split(\".\")[0];\n\n return (\n <MaybeWrap\n cond={!disableLoadingBoundary && reactMajorVersion >= 18}\n wrapper={(children_) => (\n <DataProvider\n name=\"plasmicInternalEnableLoadingBoundary\"\n hidden\n data={true}\n >\n <React.Suspense fallback={suspenseFallback ?? \"Loading...\"}>\n {children_}\n </React.Suspense>\n </DataProvider>\n )}\n >\n <PlasmicRootContext.Provider value={context}>\n <MaybeWrap\n cond={reactMajorVersion < 18}\n wrapper={(children_) => <SSRProvider>{children_}</SSRProvider>}\n >\n <PlasmicDataSourceContextProvider value={dataSourceContextValue}>\n <PlasmicTranslatorContext.Provider value={props.i18n}>\n <PlasmicHeadContext.Provider value={props.Head}>\n <SafePlasmicLinkProvider\n Link={props.Link ?? PlasmicLinkInternal}\n >\n {children}\n </SafePlasmicLinkProvider>\n </PlasmicHeadContext.Provider>\n </PlasmicTranslatorContext.Provider>\n </PlasmicDataSourceContextProvider>\n </MaybeWrap>\n </PlasmicRootContext.Provider>\n </MaybeWrap>\n );\n}\n\n/**\n * A PlasmicLinkProvider that anticipates PlasmicLinkProvider may not exist yet from\n * @plasmicapp/host if the user is using an older version\n */\nfunction SafePlasmicLinkProvider(\n props: React.ComponentProps<typeof PlasmicLinkProvider>\n) {\n if (PlasmicLinkProvider) {\n return <PlasmicLinkProvider {...props} />;\n } else {\n return <>{props.children}</>;\n }\n}\n\nexport const useIsSSR = useAriaIsSSR;\n\nexport function useHasPlasmicRoot() {\n return !!React.useContext(PlasmicRootContext);\n}\n\nlet hasWarnedSSR = false;\n/**\n * Warns the user if PlasmicRootProvider is not used\n */\nexport function useEnsureSSRProvider() {\n const hasRoot = useHasPlasmicRoot();\n if (hasRoot || hasWarnedSSR || process.env.NODE_ENV !== \"development\") {\n return;\n }\n\n hasWarnedSSR = true;\n console.warn(\n `Plasmic: To ensure your components work correctly with server-side rendering, please use PlasmicRootProvider at the root of your application. See https://docs.plasmic.app/learn/ssr`\n );\n}\n\nfunction MaybeWrap(props: {\n children: React.ReactElement;\n cond: boolean;\n wrapper: (children: React.ReactElement) => React.ReactElement;\n}) {\n return props.cond ? props.wrapper(props.children) : props.children;\n}\n"],"names":["React","HostPlasmicTranslatorContext","useHostPlasmicTranslator","useAriaIsSSR"],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { ComponentHelpers } from "@plasmicapp/host";
|
|
2
|
-
import { useLayoutEffect } from "react";
|
|
3
2
|
import { StateSpecNode } from "./graph";
|
|
4
3
|
import { $State, InitFunc, ObjectPath, StateCell } from "./types";
|
|
5
4
|
export declare function initializeCodeComponentStates($state: $State, states: {
|
|
@@ -14,7 +13,6 @@ export declare function initializePlasmicStates($state: $State, states: {
|
|
|
14
13
|
export declare function generateStateOnChangeProp($state: $State, path: ObjectPath): (val: any) => void;
|
|
15
14
|
export declare function generateStateOnChangePropForCodeComponents($state: $State, stateName: string, plasmicStatePath: ObjectPath, componentHelpers: ComponentHelpers<any>): (val: any) => void;
|
|
16
15
|
export declare function generateStateValueProp($state: $State, path: ObjectPath): any;
|
|
17
|
-
export declare const useIsomorphicLayoutEffect: typeof useLayoutEffect;
|
|
18
16
|
export declare function isPlasmicStateProxy(obj: any): boolean;
|
|
19
17
|
export declare function is$StateProxy(obj: any): number | boolean | undefined;
|
|
20
18
|
export declare function getStateCells($state: $State, root: StateSpecNode<any>): StateCell<any>[];
|
|
@@ -12,7 +12,6 @@ export type NoUndefinedField<T> = {
|
|
|
12
12
|
[P in keyof T]-?: T[P];
|
|
13
13
|
};
|
|
14
14
|
export type InitFunc<T> = (env: NoUndefinedField<InitFuncEnv>) => T;
|
|
15
|
-
export type DeprecatedInitFunc<T> = ($props: Record<string, any>, $state: $State, $ctx: Record<string, any>) => T;
|
|
16
15
|
export type ObjectPath = (string | number)[];
|
|
17
16
|
export interface $StateSpec<T> {
|
|
18
17
|
path: string;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { ExtractPlasmicQueryData as __EXPERMIENTAL__ExtractPlasmicQueryData } from "@plasmicapp/nextjs-app-router";
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { fetchExtractedHeadMetadata, fetchExtractedQueryData, withPlasmicMetadata } from "@plasmicapp/nextjs-app-router/react-server";
|
|
2
|
-
import React from "react";
|
|
3
|
-
export { fetchExtractedQueryData as __EXPERMIENTAL__fetchExtractedQueryData, fetchExtractedHeadMetadata as __EXPERMIENTAL__fetchExtractedHeadMetadata, withPlasmicMetadata as __EXPERMIENTAL__withPlasmicMetadata, };
|
|
4
|
-
/**
|
|
5
|
-
* Helper function to extract Plasmic data.
|
|
6
|
-
*
|
|
7
|
-
* Given React element for your page and current pathname + search
|
|
8
|
-
* params, returns:
|
|
9
|
-
* - The extracted query data, if `plasmicSsr` search param is set
|
|
10
|
-
* - A copy of the page element wraped within PlasmicQueryDataProvider to provide the extracted query data, otherwise
|
|
11
|
-
*/
|
|
12
|
-
export declare function __EXPERMIENTAL__withExtractPlasmicQueryData(pageRootElt: React.ReactElement, { pathname, searchParams, }: {
|
|
13
|
-
pathname: string;
|
|
14
|
-
searchParams: Record<string, string | string[]> | undefined;
|
|
15
|
-
}): Promise<React.JSX.Element>;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var nextjsAppRouter = require('@plasmicapp/nextjs-app-router');
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
Object.defineProperty(exports, '__EXPERMIENTAL__ExtractPlasmicQueryData', {
|
|
8
|
-
enumerable: true,
|
|
9
|
-
get: function () { return nextjsAppRouter.ExtractPlasmicQueryData; }
|
|
10
|
-
});
|
|
11
|
-
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { ExtractPlasmicQueryData as __EXPERMIENTAL__ExtractPlasmicQueryData } from "@plasmicapp/nextjs-app-router";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var nextjsAppRouter = require('@plasmicapp/nextjs-app-router');
|
|
4
|
-
var reactServer = require('@plasmicapp/nextjs-app-router/react-server');
|
|
5
|
-
var query = require('@plasmicapp/query');
|
|
6
|
-
var React = require('react');
|
|
7
|
-
|
|
8
|
-
/******************************************************************************
|
|
9
|
-
Copyright (c) Microsoft Corporation.
|
|
10
|
-
|
|
11
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
12
|
-
purpose with or without fee is hereby granted.
|
|
13
|
-
|
|
14
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
15
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
16
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
17
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
18
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
19
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
20
|
-
PERFORMANCE OF THIS SOFTWARE.
|
|
21
|
-
***************************************************************************** */
|
|
22
|
-
/* global Reflect, Promise, SuppressedError, Symbol, Iterator */
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
function __awaiter(thisArg, _arguments, P, generator) {
|
|
26
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
function __generator(thisArg, body) {
|
|
36
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
37
|
-
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
38
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
39
|
-
function step(op) {
|
|
40
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
41
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
42
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
43
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
44
|
-
switch (op[0]) {
|
|
45
|
-
case 0: case 1: t = op; break;
|
|
46
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
47
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
48
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
49
|
-
default:
|
|
50
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
51
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
52
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
53
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
54
|
-
if (t[2]) _.ops.pop();
|
|
55
|
-
_.trys.pop(); continue;
|
|
56
|
-
}
|
|
57
|
-
op = body.call(thisArg, _);
|
|
58
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
59
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
function __read(o, n) {
|
|
64
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
65
|
-
if (!m) return o;
|
|
66
|
-
var i = m.call(o), r, ar = [], e;
|
|
67
|
-
try {
|
|
68
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
69
|
-
}
|
|
70
|
-
catch (error) { e = { error: error }; }
|
|
71
|
-
finally {
|
|
72
|
-
try {
|
|
73
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
74
|
-
}
|
|
75
|
-
finally { if (e) throw e.error; }
|
|
76
|
-
}
|
|
77
|
-
return ar;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
81
|
-
var e = new Error(message);
|
|
82
|
-
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* Helper function to extract Plasmic data.
|
|
87
|
-
*
|
|
88
|
-
* Given React element for your page and current pathname + search
|
|
89
|
-
* params, returns:
|
|
90
|
-
* - The extracted query data, if `plasmicSsr` search param is set
|
|
91
|
-
* - A copy of the page element wraped within PlasmicQueryDataProvider to provide the extracted query data, otherwise
|
|
92
|
-
*/
|
|
93
|
-
function __EXPERMIENTAL__withExtractPlasmicQueryData(pageRootElt, _a) {
|
|
94
|
-
var _b, _c, _d;
|
|
95
|
-
var pathname = _a.pathname, searchParams = _a.searchParams;
|
|
96
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
97
|
-
var isPlasmicSsr, prepassHost, newSearchParams, prefetchedQueryData;
|
|
98
|
-
return __generator(this, function (_e) {
|
|
99
|
-
switch (_e.label) {
|
|
100
|
-
case 0:
|
|
101
|
-
isPlasmicSsr = !!(searchParams === null || searchParams === void 0 ? void 0 : searchParams["plasmicSsr"]) && (searchParams === null || searchParams === void 0 ? void 0 : searchParams["plasmicSsr"]) !== "false";
|
|
102
|
-
// If `plasmicSsr` search param is set, just wrap the page inside
|
|
103
|
-
// <ExtractPlasmicQueryData>
|
|
104
|
-
if (isPlasmicSsr) {
|
|
105
|
-
return [2 /*return*/, React.createElement(nextjsAppRouter.ExtractPlasmicQueryData, null, pageRootElt)];
|
|
106
|
-
}
|
|
107
|
-
prepassHost = (_c = (_b = process.env.PLASMIC_PREPASS_HOST) !== null && _b !== void 0 ? _b : (process.env.VERCEL_URL && "https://".concat(process.env.VERCEL_URL))) !== null && _c !== void 0 ? _c : "http://localhost:".concat((_d = process.env.PORT) !== null && _d !== void 0 ? _d : 3000);
|
|
108
|
-
newSearchParams = new URLSearchParams(Object.entries(searchParams !== null && searchParams !== void 0 ? searchParams : {}).flatMap(function (_a) {
|
|
109
|
-
var _b = __read(_a, 2), key = _b[0], values = _b[1];
|
|
110
|
-
return Array.isArray(values) ? values.map(function (v) { return [key, v]; }) : [[key, values]];
|
|
111
|
-
}));
|
|
112
|
-
// Set `plasmicSsr` search param to indicate you are using this endpoint
|
|
113
|
-
// to extract query data.
|
|
114
|
-
newSearchParams.set("plasmicSsr", "true");
|
|
115
|
-
if (process.env.VERCEL_AUTOMATION_BYPASS_SECRET) {
|
|
116
|
-
// If protection bypass is enabled, use it to ensure fetching from
|
|
117
|
-
// the SSR endpoint will not return the authentication page HTML
|
|
118
|
-
newSearchParams.set("x-vercel-protection-bypass", process.env.VERCEL_AUTOMATION_BYPASS_SECRET);
|
|
119
|
-
}
|
|
120
|
-
return [4 /*yield*/, reactServer.fetchExtractedQueryData("".concat(prepassHost).concat(pathname, "?").concat(newSearchParams.toString()))];
|
|
121
|
-
case 1:
|
|
122
|
-
prefetchedQueryData = _e.sent();
|
|
123
|
-
// Provide the query data to your page
|
|
124
|
-
return [2 /*return*/, (React.createElement(query.PlasmicQueryDataProvider, { prefetchedCache: prefetchedQueryData }, pageRootElt))];
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
Object.defineProperty(exports, '__EXPERMIENTAL__fetchExtractedHeadMetadata', {
|
|
131
|
-
enumerable: true,
|
|
132
|
-
get: function () { return reactServer.fetchExtractedHeadMetadata; }
|
|
133
|
-
});
|
|
134
|
-
Object.defineProperty(exports, '__EXPERMIENTAL__fetchExtractedQueryData', {
|
|
135
|
-
enumerable: true,
|
|
136
|
-
get: function () { return reactServer.fetchExtractedQueryData; }
|
|
137
|
-
});
|
|
138
|
-
Object.defineProperty(exports, '__EXPERMIENTAL__withPlasmicMetadata', {
|
|
139
|
-
enumerable: true,
|
|
140
|
-
get: function () { return reactServer.withPlasmicMetadata; }
|
|
141
|
-
});
|
|
142
|
-
exports.__EXPERMIENTAL__withExtractPlasmicQueryData = __EXPERMIENTAL__withExtractPlasmicQueryData;
|
|
143
|
-
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../../src/nextjs-app-router/react-server/index.tsx"],"sourcesContent":["import { ExtractPlasmicQueryData } from \"@plasmicapp/nextjs-app-router\";\nimport {\n fetchExtractedHeadMetadata,\n fetchExtractedQueryData,\n withPlasmicMetadata,\n} from \"@plasmicapp/nextjs-app-router/react-server\";\nimport { PlasmicQueryDataProvider } from \"@plasmicapp/query\";\nimport React from \"react\";\n\nexport {\n fetchExtractedQueryData as __EXPERMIENTAL__fetchExtractedQueryData,\n fetchExtractedHeadMetadata as __EXPERMIENTAL__fetchExtractedHeadMetadata,\n withPlasmicMetadata as __EXPERMIENTAL__withPlasmicMetadata,\n};\n\n/**\n * Helper function to extract Plasmic data.\n *\n * Given React element for your page and current pathname + search\n * params, returns:\n * - The extracted query data, if `plasmicSsr` search param is set\n * - A copy of the page element wraped within PlasmicQueryDataProvider to provide the extracted query data, otherwise\n */\nexport async function __EXPERMIENTAL__withExtractPlasmicQueryData(\n pageRootElt: React.ReactElement,\n {\n pathname,\n searchParams,\n }: {\n pathname: string;\n searchParams: Record<string, string | string[]> | undefined;\n }\n) {\n const isPlasmicSsr =\n !!searchParams?.[\"plasmicSsr\"] && searchParams?.[\"plasmicSsr\"] !== \"false\";\n\n // If `plasmicSsr` search param is set, just wrap the page inside\n // <ExtractPlasmicQueryData>\n if (isPlasmicSsr) {\n return <ExtractPlasmicQueryData>{pageRootElt}</ExtractPlasmicQueryData>;\n }\n\n // Otherwise, fetch the same endpoint, but setting `plasmicSsr` to extract the\n // query data.\n const prepassHost =\n process.env.PLASMIC_PREPASS_HOST ??\n (process.env.VERCEL_URL && `https://${process.env.VERCEL_URL}`) ??\n `http://localhost:${process.env.PORT ?? 3000}`;\n\n // Build a copy of the search params\n const newSearchParams = new URLSearchParams(\n Object.entries(searchParams ?? {}).flatMap(([key, values]) =>\n Array.isArray(values) ? values.map((v) => [key, v]) : [[key, values]]\n )\n );\n\n // Set `plasmicSsr` search param to indicate you are using this endpoint\n // to extract query data.\n newSearchParams.set(\"plasmicSsr\", \"true\");\n\n if (process.env.VERCEL_AUTOMATION_BYPASS_SECRET) {\n // If protection bypass is enabled, use it to ensure fetching from\n // the SSR endpoint will not return the authentication page HTML\n newSearchParams.set(\n \"x-vercel-protection-bypass\",\n process.env.VERCEL_AUTOMATION_BYPASS_SECRET\n );\n }\n\n // Fetch the data from the endpoint using the new search params\n const prefetchedQueryData = await fetchExtractedQueryData(\n `${prepassHost}${pathname}?${newSearchParams.toString()}`\n );\n\n // Provide the query data to your page\n return (\n <PlasmicQueryDataProvider prefetchedCache={prefetchedQueryData}>\n {pageRootElt}\n </PlasmicQueryDataProvider>\n );\n}\n"],"names":["ExtractPlasmicQueryData","fetchExtractedQueryData","PlasmicQueryDataProvider"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA;;;;;;;AAOG;AACmB,SAAA,2CAA2C,CAC/D,WAA+B,EAC/B,EAMC,EAAA;;QALC,QAAQ,GAAA,EAAA,CAAA,QAAA,EACR,YAAY,GAAA,EAAA,CAAA,YAAA,CAAA;;;;;;oBAMR,YAAY,GAChB,CAAC,EAAC,YAAY,aAAZ,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZ,YAAY,CAAG,YAAY,CAAC,CAAA,IAAI,CAAA,YAAY,KAAA,IAAA,IAAZ,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZ,YAAY,CAAG,YAAY,CAAC,MAAK,OAAO,CAAC;;;AAI7E,oBAAA,IAAI,YAAY,EAAE;AAChB,wBAAA,OAAA,CAAA,CAAA,aAAO,KAAC,CAAA,aAAA,CAAAA,uCAAuB,EAAE,IAAA,EAAA,WAAW,CAA2B,CAAC,CAAA;AACzE,qBAAA;AAIK,oBAAA,WAAW,GACf,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,IAC/B,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,UAAA,CAAA,MAAA,CAAW,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,mCAC/D,mBAAoB,CAAA,MAAA,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,GAAG,CAAC,IAAI,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,IAAI,CAAE,CAAC;oBAG3C,eAAe,GAAG,IAAI,eAAe,CACzC,MAAM,CAAC,OAAO,CAAC,YAAY,KAAA,IAAA,IAAZ,YAAY,KAAZ,KAAA,CAAA,GAAA,YAAY,GAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAC,EAAa,EAAA;AAAb,wBAAA,IAAA,EAAA,GAAA,aAAa,EAAZ,GAAG,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,MAAM,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA;AACtD,wBAAA,OAAA,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,UAAC,CAAC,EAAK,EAAA,OAAA,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA,EAAA,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAA;qBAAA,CACtE,CACF,CAAC;;;AAIF,oBAAA,eAAe,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAE1C,oBAAA,IAAI,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE;;;wBAG/C,eAAe,CAAC,GAAG,CACjB,4BAA4B,EAC5B,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAC5C,CAAC;AACH,qBAAA;AAG2B,oBAAA,OAAA,CAAA,CAAA,YAAMC,mCAAuB,CACvD,EAAG,CAAA,MAAA,CAAA,WAAW,CAAG,CAAA,MAAA,CAAA,QAAQ,EAAI,GAAA,CAAA,CAAA,MAAA,CAAA,eAAe,CAAC,QAAQ,EAAE,CAAE,CAC1D,CAAA,CAAA;;AAFK,oBAAA,mBAAmB,GAAG,EAE3B,CAAA,IAAA,EAAA,CAAA;;oBAGD,OAAO,CAAA,CAAA,cACL,KAAC,CAAA,aAAA,CAAAC,8BAAwB,EAAC,EAAA,eAAe,EAAE,mBAAmB,EAC3D,EAAA,WAAW,CACa,EAC3B,CAAA;;;;AACH;;;;;;;;;;;;;;;;"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { fetchExtractedHeadMetadata, fetchExtractedQueryData, withPlasmicMetadata } from "@plasmicapp/nextjs-app-router/react-server";
|
|
2
|
-
import React from "react";
|
|
3
|
-
export { fetchExtractedQueryData as __EXPERMIENTAL__fetchExtractedQueryData, fetchExtractedHeadMetadata as __EXPERMIENTAL__fetchExtractedHeadMetadata, withPlasmicMetadata as __EXPERMIENTAL__withPlasmicMetadata, };
|
|
4
|
-
/**
|
|
5
|
-
* Helper function to extract Plasmic data.
|
|
6
|
-
*
|
|
7
|
-
* Given React element for your page and current pathname + search
|
|
8
|
-
* params, returns:
|
|
9
|
-
* - The extracted query data, if `plasmicSsr` search param is set
|
|
10
|
-
* - A copy of the page element wraped within PlasmicQueryDataProvider to provide the extracted query data, otherwise
|
|
11
|
-
*/
|
|
12
|
-
export declare function __EXPERMIENTAL__withExtractPlasmicQueryData(pageRootElt: React.ReactElement, { pathname, searchParams, }: {
|
|
13
|
-
pathname: string;
|
|
14
|
-
searchParams: Record<string, string | string[]> | undefined;
|
|
15
|
-
}): Promise<React.JSX.Element>;
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import { ExtractPlasmicQueryData } from '@plasmicapp/nextjs-app-router';
|
|
2
|
-
import { fetchExtractedQueryData } from '@plasmicapp/nextjs-app-router/react-server';
|
|
3
|
-
export { fetchExtractedHeadMetadata as __EXPERMIENTAL__fetchExtractedHeadMetadata, fetchExtractedQueryData as __EXPERMIENTAL__fetchExtractedQueryData, withPlasmicMetadata as __EXPERMIENTAL__withPlasmicMetadata } from '@plasmicapp/nextjs-app-router/react-server';
|
|
4
|
-
import { PlasmicQueryDataProvider } from '@plasmicapp/query';
|
|
5
|
-
import React from 'react';
|
|
6
|
-
|
|
7
|
-
/******************************************************************************
|
|
8
|
-
Copyright (c) Microsoft Corporation.
|
|
9
|
-
|
|
10
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
11
|
-
purpose with or without fee is hereby granted.
|
|
12
|
-
|
|
13
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
14
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
15
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
16
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
17
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
18
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
19
|
-
PERFORMANCE OF THIS SOFTWARE.
|
|
20
|
-
***************************************************************************** */
|
|
21
|
-
/* global Reflect, Promise, SuppressedError, Symbol, Iterator */
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
function __awaiter(thisArg, _arguments, P, generator) {
|
|
25
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
26
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
27
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
28
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
29
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
30
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
function __generator(thisArg, body) {
|
|
35
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
36
|
-
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
37
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
38
|
-
function step(op) {
|
|
39
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
40
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
41
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
42
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
43
|
-
switch (op[0]) {
|
|
44
|
-
case 0: case 1: t = op; break;
|
|
45
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
46
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
47
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
48
|
-
default:
|
|
49
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
50
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
51
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
52
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
53
|
-
if (t[2]) _.ops.pop();
|
|
54
|
-
_.trys.pop(); continue;
|
|
55
|
-
}
|
|
56
|
-
op = body.call(thisArg, _);
|
|
57
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
58
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
function __read(o, n) {
|
|
63
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
64
|
-
if (!m) return o;
|
|
65
|
-
var i = m.call(o), r, ar = [], e;
|
|
66
|
-
try {
|
|
67
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
68
|
-
}
|
|
69
|
-
catch (error) { e = { error: error }; }
|
|
70
|
-
finally {
|
|
71
|
-
try {
|
|
72
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
73
|
-
}
|
|
74
|
-
finally { if (e) throw e.error; }
|
|
75
|
-
}
|
|
76
|
-
return ar;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
80
|
-
var e = new Error(message);
|
|
81
|
-
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
/**
|
|
85
|
-
* Helper function to extract Plasmic data.
|
|
86
|
-
*
|
|
87
|
-
* Given React element for your page and current pathname + search
|
|
88
|
-
* params, returns:
|
|
89
|
-
* - The extracted query data, if `plasmicSsr` search param is set
|
|
90
|
-
* - A copy of the page element wraped within PlasmicQueryDataProvider to provide the extracted query data, otherwise
|
|
91
|
-
*/
|
|
92
|
-
function __EXPERMIENTAL__withExtractPlasmicQueryData(pageRootElt, _a) {
|
|
93
|
-
var _b, _c, _d;
|
|
94
|
-
var pathname = _a.pathname, searchParams = _a.searchParams;
|
|
95
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
96
|
-
var isPlasmicSsr, prepassHost, newSearchParams, prefetchedQueryData;
|
|
97
|
-
return __generator(this, function (_e) {
|
|
98
|
-
switch (_e.label) {
|
|
99
|
-
case 0:
|
|
100
|
-
isPlasmicSsr = !!(searchParams === null || searchParams === void 0 ? void 0 : searchParams["plasmicSsr"]) && (searchParams === null || searchParams === void 0 ? void 0 : searchParams["plasmicSsr"]) !== "false";
|
|
101
|
-
// If `plasmicSsr` search param is set, just wrap the page inside
|
|
102
|
-
// <ExtractPlasmicQueryData>
|
|
103
|
-
if (isPlasmicSsr) {
|
|
104
|
-
return [2 /*return*/, React.createElement(ExtractPlasmicQueryData, null, pageRootElt)];
|
|
105
|
-
}
|
|
106
|
-
prepassHost = (_c = (_b = process.env.PLASMIC_PREPASS_HOST) !== null && _b !== void 0 ? _b : (process.env.VERCEL_URL && "https://".concat(process.env.VERCEL_URL))) !== null && _c !== void 0 ? _c : "http://localhost:".concat((_d = process.env.PORT) !== null && _d !== void 0 ? _d : 3000);
|
|
107
|
-
newSearchParams = new URLSearchParams(Object.entries(searchParams !== null && searchParams !== void 0 ? searchParams : {}).flatMap(function (_a) {
|
|
108
|
-
var _b = __read(_a, 2), key = _b[0], values = _b[1];
|
|
109
|
-
return Array.isArray(values) ? values.map(function (v) { return [key, v]; }) : [[key, values]];
|
|
110
|
-
}));
|
|
111
|
-
// Set `plasmicSsr` search param to indicate you are using this endpoint
|
|
112
|
-
// to extract query data.
|
|
113
|
-
newSearchParams.set("plasmicSsr", "true");
|
|
114
|
-
if (process.env.VERCEL_AUTOMATION_BYPASS_SECRET) {
|
|
115
|
-
// If protection bypass is enabled, use it to ensure fetching from
|
|
116
|
-
// the SSR endpoint will not return the authentication page HTML
|
|
117
|
-
newSearchParams.set("x-vercel-protection-bypass", process.env.VERCEL_AUTOMATION_BYPASS_SECRET);
|
|
118
|
-
}
|
|
119
|
-
return [4 /*yield*/, fetchExtractedQueryData("".concat(prepassHost).concat(pathname, "?").concat(newSearchParams.toString()))];
|
|
120
|
-
case 1:
|
|
121
|
-
prefetchedQueryData = _e.sent();
|
|
122
|
-
// Provide the query data to your page
|
|
123
|
-
return [2 /*return*/, (React.createElement(PlasmicQueryDataProvider, { prefetchedCache: prefetchedQueryData }, pageRootElt))];
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
export { __EXPERMIENTAL__withExtractPlasmicQueryData };
|
|
130
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/nextjs-app-router/react-server/index.tsx"],"sourcesContent":["import { ExtractPlasmicQueryData } from \"@plasmicapp/nextjs-app-router\";\nimport {\n fetchExtractedHeadMetadata,\n fetchExtractedQueryData,\n withPlasmicMetadata,\n} from \"@plasmicapp/nextjs-app-router/react-server\";\nimport { PlasmicQueryDataProvider } from \"@plasmicapp/query\";\nimport React from \"react\";\n\nexport {\n fetchExtractedQueryData as __EXPERMIENTAL__fetchExtractedQueryData,\n fetchExtractedHeadMetadata as __EXPERMIENTAL__fetchExtractedHeadMetadata,\n withPlasmicMetadata as __EXPERMIENTAL__withPlasmicMetadata,\n};\n\n/**\n * Helper function to extract Plasmic data.\n *\n * Given React element for your page and current pathname + search\n * params, returns:\n * - The extracted query data, if `plasmicSsr` search param is set\n * - A copy of the page element wraped within PlasmicQueryDataProvider to provide the extracted query data, otherwise\n */\nexport async function __EXPERMIENTAL__withExtractPlasmicQueryData(\n pageRootElt: React.ReactElement,\n {\n pathname,\n searchParams,\n }: {\n pathname: string;\n searchParams: Record<string, string | string[]> | undefined;\n }\n) {\n const isPlasmicSsr =\n !!searchParams?.[\"plasmicSsr\"] && searchParams?.[\"plasmicSsr\"] !== \"false\";\n\n // If `plasmicSsr` search param is set, just wrap the page inside\n // <ExtractPlasmicQueryData>\n if (isPlasmicSsr) {\n return <ExtractPlasmicQueryData>{pageRootElt}</ExtractPlasmicQueryData>;\n }\n\n // Otherwise, fetch the same endpoint, but setting `plasmicSsr` to extract the\n // query data.\n const prepassHost =\n process.env.PLASMIC_PREPASS_HOST ??\n (process.env.VERCEL_URL && `https://${process.env.VERCEL_URL}`) ??\n `http://localhost:${process.env.PORT ?? 3000}`;\n\n // Build a copy of the search params\n const newSearchParams = new URLSearchParams(\n Object.entries(searchParams ?? {}).flatMap(([key, values]) =>\n Array.isArray(values) ? values.map((v) => [key, v]) : [[key, values]]\n )\n );\n\n // Set `plasmicSsr` search param to indicate you are using this endpoint\n // to extract query data.\n newSearchParams.set(\"plasmicSsr\", \"true\");\n\n if (process.env.VERCEL_AUTOMATION_BYPASS_SECRET) {\n // If protection bypass is enabled, use it to ensure fetching from\n // the SSR endpoint will not return the authentication page HTML\n newSearchParams.set(\n \"x-vercel-protection-bypass\",\n process.env.VERCEL_AUTOMATION_BYPASS_SECRET\n );\n }\n\n // Fetch the data from the endpoint using the new search params\n const prefetchedQueryData = await fetchExtractedQueryData(\n `${prepassHost}${pathname}?${newSearchParams.toString()}`\n );\n\n // Provide the query data to your page\n return (\n <PlasmicQueryDataProvider prefetchedCache={prefetchedQueryData}>\n {pageRootElt}\n </PlasmicQueryDataProvider>\n );\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA;;;;;;;AAOG;AACmB,SAAA,2CAA2C,CAC/D,WAA+B,EAC/B,EAMC,EAAA;;QALC,QAAQ,GAAA,EAAA,CAAA,QAAA,EACR,YAAY,GAAA,EAAA,CAAA,YAAA,CAAA;;;;;;oBAMR,YAAY,GAChB,CAAC,EAAC,YAAY,aAAZ,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZ,YAAY,CAAG,YAAY,CAAC,CAAA,IAAI,CAAA,YAAY,KAAA,IAAA,IAAZ,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZ,YAAY,CAAG,YAAY,CAAC,MAAK,OAAO,CAAC;;;AAI7E,oBAAA,IAAI,YAAY,EAAE;AAChB,wBAAA,OAAA,CAAA,CAAA,aAAO,KAAC,CAAA,aAAA,CAAA,uBAAuB,EAAE,IAAA,EAAA,WAAW,CAA2B,CAAC,CAAA;AACzE,qBAAA;AAIK,oBAAA,WAAW,GACf,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,IAC/B,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,UAAA,CAAA,MAAA,CAAW,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,mCAC/D,mBAAoB,CAAA,MAAA,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,GAAG,CAAC,IAAI,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,IAAI,CAAE,CAAC;oBAG3C,eAAe,GAAG,IAAI,eAAe,CACzC,MAAM,CAAC,OAAO,CAAC,YAAY,KAAA,IAAA,IAAZ,YAAY,KAAZ,KAAA,CAAA,GAAA,YAAY,GAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAC,EAAa,EAAA;AAAb,wBAAA,IAAA,EAAA,GAAA,aAAa,EAAZ,GAAG,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,MAAM,GAAA,EAAA,CAAA,CAAA,CAAA,CAAA;AACtD,wBAAA,OAAA,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,UAAC,CAAC,EAAK,EAAA,OAAA,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA,EAAA,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAA;qBAAA,CACtE,CACF,CAAC;;;AAIF,oBAAA,eAAe,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAE1C,oBAAA,IAAI,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE;;;wBAG/C,eAAe,CAAC,GAAG,CACjB,4BAA4B,EAC5B,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAC5C,CAAC;AACH,qBAAA;AAG2B,oBAAA,OAAA,CAAA,CAAA,YAAM,uBAAuB,CACvD,EAAG,CAAA,MAAA,CAAA,WAAW,CAAG,CAAA,MAAA,CAAA,QAAQ,EAAI,GAAA,CAAA,CAAA,MAAA,CAAA,eAAe,CAAC,QAAQ,EAAE,CAAE,CAC1D,CAAA,CAAA;;AAFK,oBAAA,mBAAmB,GAAG,EAE3B,CAAA,IAAA,EAAA,CAAA;;oBAGD,OAAO,CAAA,CAAA,cACL,KAAC,CAAA,aAAA,CAAA,wBAAwB,EAAC,EAAA,eAAe,EAAE,mBAAmB,EAC3D,EAAA,WAAW,CACa,EAC3B,CAAA;;;;AACH;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { ExtractPlasmicQueryData as __EXPERMIENTAL__ExtractPlasmicQueryData } from "@plasmicapp/nextjs-app-router";
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { fetchExtractedHeadMetadata, fetchExtractedQueryData, withPlasmicMetadata } from "@plasmicapp/nextjs-app-router/react-server";
|
|
2
|
-
import React from "react";
|
|
3
|
-
export { fetchExtractedQueryData as __EXPERMIENTAL__fetchExtractedQueryData, fetchExtractedHeadMetadata as __EXPERMIENTAL__fetchExtractedHeadMetadata, withPlasmicMetadata as __EXPERMIENTAL__withPlasmicMetadata, };
|
|
4
|
-
/**
|
|
5
|
-
* Helper function to extract Plasmic data.
|
|
6
|
-
*
|
|
7
|
-
* Given React element for your page and current pathname + search
|
|
8
|
-
* params, returns:
|
|
9
|
-
* - The extracted query data, if `plasmicSsr` search param is set
|
|
10
|
-
* - A copy of the page element wraped within PlasmicQueryDataProvider to provide the extracted query data, otherwise
|
|
11
|
-
*/
|
|
12
|
-
export declare function __EXPERMIENTAL__withExtractPlasmicQueryData(pageRootElt: React.ReactElement, { pathname, searchParams, }: {
|
|
13
|
-
pathname: string;
|
|
14
|
-
searchParams: Record<string, string | string[]> | undefined;
|
|
15
|
-
}): Promise<React.JSX.Element>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ssr-6d9f9c44.js","sources":["../../src/render/PlasmicLink.tsx","../../src/render/translation.tsx","../../src/render/ssr.tsx"],"sourcesContent":["import { usePlasmicLinkMaybe } from \"@plasmicapp/host\";\nimport React from \"react\";\nimport { omit, pick } from \"../common\";\n\n// These props are used internally by PlasmicLink to determine how to render the link\nconst INTERNAL_PROPS = [\"component\", \"platform\", \"legacyBehavior\"] as const;\n\nexport const PlasmicLink = React.forwardRef(function PlasmicLink(\n props: any,\n ref: React.Ref<any>\n) {\n // The usePlasmicLinkMaybe function may be undefined, if host is not up-to-date\n const Link = usePlasmicLinkMaybe?.() ?? PlasmicLinkInternal;\n if (Link === PlasmicLink || Link === PlasmicLinkInternal) {\n // Just in case, break the cycle\n return <PlasmicLinkInternal {...props} ref={ref} />;\n } else {\n // Don't pass internal props (component/platform/legacyBehavior) to non-PlasmicLinkInternal\n // eslint-disable-next-line react/forbid-elements\n return <Link {...omit(props, ...INTERNAL_PROPS)} ref={ref} />;\n }\n});\n\nexport const PlasmicLinkInternal = React.forwardRef(\n function PlasmicLinkInternal(props: any, ref: React.Ref<any>) {\n // props.href is required for nextjs; if no props.href,\n // then we just render the default anchor element\n if (props.platform === \"nextjs\" && props.href) {\n const nextjsProps = [\n \"href\",\n \"replace\",\n \"scroll\",\n \"shallow\",\n \"passHref\",\n \"prefetch\",\n \"locale\",\n ];\n\n // If this is a fragment identifier link, then we set\n // scroll={false} so that smooth scrolling works\n const isFragment = props.href?.startsWith(\"#\");\n\n // Default to legacy behavior (nested <a> tag) unless legacyBehavior\n // is explicitly set to false. Older codegen may not set this prop at\n // all, so we treat undefined as legacy for backwards compatibility.\n // https://github.com/plasmicapp/plasmic-internal/pull/2203#issuecomment-3877931788\n if (props.legacyBehavior !== false) {\n return React.createElement(\n props.component,\n {\n scroll: !isFragment,\n legacyBehavior: true,\n ...pick(props, ...nextjsProps),\n },\n <a {...omit(props, ...INTERNAL_PROPS, ...nextjsProps)} ref={ref} />\n );\n }\n\n // pass props directly to Link (no nested <a>)\n return React.createElement(props.component, {\n scroll: !isFragment,\n ...omit(props, ...INTERNAL_PROPS),\n ref,\n });\n }\n\n if (props.platform === \"gatsby\" && isInternalHref(props.href)) {\n return React.createElement(props.component, {\n ...omit(props, ...INTERNAL_PROPS, \"href\"),\n ...{ to: props.href, ref },\n });\n }\n\n if (props.platform === \"tanstack\" && isInternalHref(props.href)) {\n return React.createElement(props.component, {\n ...omit(props, ...INTERNAL_PROPS, \"href\"),\n ...{ to: props.href, ref },\n });\n }\n\n return <a {...omit(props, ...INTERNAL_PROPS)} ref={ref} />;\n }\n);\n\nfunction isInternalHref(href: string): boolean {\n return /^\\/(?!\\/)/.test(href);\n}\n","import {\n PlasmicTranslatorContext as HostPlasmicTranslatorContext,\n PlasmicI18NContextValue,\n PlasmicTranslator,\n usePlasmicTranslator as useHostPlasmicTranslator,\n} from \"@plasmicapp/host\";\nimport React from \"react\";\n\n// Make the refactor to host backwards compatible for loader\nexport const PlasmicTranslatorContext =\n HostPlasmicTranslatorContext ??\n React.createContext<PlasmicI18NContextValue | PlasmicTranslator | undefined>(\n undefined\n );\n\nexport const usePlasmicTranslator =\n useHostPlasmicTranslator ??\n (() => {\n const _t = React.useContext(PlasmicTranslatorContext);\n const translator = _t\n ? typeof _t === \"function\"\n ? _t\n : _t.translator\n : undefined;\n return translator;\n });\n\nexport interface TransProps {\n transKey?: string;\n children?: React.ReactNode;\n}\n\nexport function genTranslatableString(\n elt: React.ReactNode,\n opts?: {\n tagPrefix?: string;\n }\n) {\n const components: {\n [key: string]: React.ReactElement;\n } = {};\n let componentsCount = 0;\n\n const getText = (node: React.ReactNode): string => {\n if (!node) {\n return \"\";\n }\n if (\n typeof node === \"number\" ||\n typeof node === \"boolean\" ||\n typeof node === \"string\"\n ) {\n return node.toString();\n }\n if (typeof node !== \"object\") {\n return \"\";\n }\n if (Array.isArray(node) || isIterable(node)) {\n return Array.from(node)\n .map((child) => getText(child))\n .filter((child) => !!child)\n .join(\"\");\n }\n const nodeChildren: React.ReactNode =\n (hasKey(node, \"props\") &&\n hasKey(node.props, \"children\") &&\n (node.props.children as React.ReactNode | undefined)) ||\n (hasKey(node, \"children\") && node.children) ||\n [];\n const contents = `${React.Children.toArray(nodeChildren)\n .map((child) => getText(child))\n .filter((child) => !!child)\n .join(\"\")}`;\n if (React.isValidElement(node) && node.type === React.Fragment) {\n return contents;\n }\n const prefix = opts?.tagPrefix ?? \"\";\n const componentId = `${prefix}${componentsCount + 1}`;\n componentsCount++;\n components[componentId] = React.isValidElement(node)\n ? React.cloneElement(node as any, {\n key: componentId,\n children: undefined,\n })\n : (node as never);\n return `<${componentId}>${contents}</${componentId}>`;\n };\n\n const str = getText(elt);\n return {\n str,\n components,\n componentsCount,\n };\n}\n\nexport function Trans({ transKey, children }: TransProps) {\n const _t = React.useContext(PlasmicTranslatorContext);\n const translator = _t\n ? typeof _t === \"function\"\n ? _t\n : _t.translator\n : undefined;\n if (!translator) {\n warnNoTranslationFunctionAtMostOnce();\n return children;\n }\n\n const { str, components, componentsCount } = genTranslatableString(children, {\n tagPrefix: typeof _t === \"object\" ? _t.tagPrefix : undefined,\n });\n return translator(\n transKey ?? str,\n componentsCount > 0 ? { components } : undefined\n );\n}\n\nlet hasWarned = false;\nfunction warnNoTranslationFunctionAtMostOnce() {\n if (!hasWarned) {\n console.warn(\n \"Using Plasmic Translation but no translation function has been provided\"\n );\n hasWarned = true;\n }\n}\n\nfunction hasKey<K extends string>(v: any, key: K): v is Record<K, any> {\n return typeof v === \"object\" && v !== null && key in v;\n}\n\nfunction isIterable(val: any): val is Iterable<any> {\n return val != null && typeof val[Symbol.iterator] === \"function\";\n}\n","import {\n PlasmicDataSourceContextProvider,\n PlasmicDataSourceContextValue,\n} from \"@plasmicapp/data-sources-context\";\nimport {\n DataProvider,\n PlasmicI18NContextValue,\n PlasmicLinkProvider,\n PlasmicTranslator,\n} from \"@plasmicapp/host\";\nimport { SSRProvider, useIsSSR as useAriaIsSSR } from \"@react-aria/ssr\";\nimport * as React from \"react\";\nimport { PlasmicHeadContext } from \"./PlasmicHead\";\nimport { PlasmicLinkInternal } from \"./PlasmicLink\";\nimport { PlasmicTranslatorContext } from \"./translation\";\nexport {\n PlasmicDataSourceContextProvider,\n useCurrentUser,\n} from \"@plasmicapp/data-sources-context\";\n// import { PlasmicLink } from \"./PlasmicLink\";\n\nexport interface PlasmicRootContextValue {\n platform?: \"nextjs\" | \"gatsby\";\n}\n\nconst PlasmicRootContext = React.createContext<\n PlasmicRootContextValue | undefined\n>(undefined);\n\nexport interface PlasmicRootProviderProps\n extends PlasmicDataSourceContextValue {\n platform?: \"nextjs\" | \"gatsby\";\n children?: React.ReactNode;\n i18n?: PlasmicI18NContextValue;\n /**\n * @deprecated use i18n.translator instead\n */\n translator?: PlasmicTranslator;\n Head?: React.ComponentType<any>;\n Link?: React.ComponentType<any>;\n disableLoadingBoundary?: boolean;\n suspenseFallback?: React.ReactNode;\n}\n\nexport function PlasmicRootProvider(props: PlasmicRootProviderProps) {\n const {\n platform,\n children,\n userAuthToken,\n isUserLoading,\n authRedirectUri,\n user,\n disableLoadingBoundary,\n suspenseFallback,\n } = props;\n const context = React.useMemo(\n () => ({\n platform,\n }),\n [platform]\n );\n const dataSourceContextValue = React.useMemo(\n () => ({\n userAuthToken,\n user,\n isUserLoading,\n authRedirectUri,\n }),\n [userAuthToken, isUserLoading, user, authRedirectUri]\n );\n const reactMajorVersion = +React.version.split(\".\")[0];\n\n return (\n <MaybeWrap\n cond={!disableLoadingBoundary && reactMajorVersion >= 18}\n wrapper={(children_) => (\n <DataProvider\n name=\"plasmicInternalEnableLoadingBoundary\"\n hidden\n data={true}\n >\n <React.Suspense fallback={suspenseFallback ?? \"Loading...\"}>\n {children_}\n </React.Suspense>\n </DataProvider>\n )}\n >\n <PlasmicRootContext.Provider value={context}>\n <MaybeWrap\n cond={reactMajorVersion < 18}\n wrapper={(children_) => <SSRProvider>{children_}</SSRProvider>}\n >\n <PlasmicDataSourceContextProvider value={dataSourceContextValue}>\n <PlasmicTranslatorContext.Provider\n value={props.i18n ?? props.translator}\n >\n <PlasmicHeadContext.Provider value={props.Head}>\n <SafePlasmicLinkProvider\n Link={props.Link ?? PlasmicLinkInternal}\n >\n {children}\n </SafePlasmicLinkProvider>\n </PlasmicHeadContext.Provider>\n </PlasmicTranslatorContext.Provider>\n </PlasmicDataSourceContextProvider>\n </MaybeWrap>\n </PlasmicRootContext.Provider>\n </MaybeWrap>\n );\n}\n\n/**\n * A PlasmicLinkProvider that anticipates PlasmicLinkProvider may not exist yet from\n * @plasmicapp/host if the user is using an older version\n */\nfunction SafePlasmicLinkProvider(\n props: React.ComponentProps<typeof PlasmicLinkProvider>\n) {\n if (PlasmicLinkProvider) {\n return <PlasmicLinkProvider {...props} />;\n } else {\n return <>{props.children}</>;\n }\n}\n\nexport const useIsSSR = useAriaIsSSR;\n\nexport function useHasPlasmicRoot() {\n return !!React.useContext(PlasmicRootContext);\n}\n\nlet hasWarnedSSR = false;\n/**\n * Warns the user if PlasmicRootProvider is not used\n */\nexport function useEnsureSSRProvider() {\n const hasRoot = useHasPlasmicRoot();\n if (hasRoot || hasWarnedSSR || process.env.NODE_ENV !== \"development\") {\n return;\n }\n\n hasWarnedSSR = true;\n console.warn(\n `Plasmic: To ensure your components work correctly with server-side rendering, please use PlasmicRootProvider at the root of your application. See https://docs.plasmic.app/learn/ssr`\n );\n}\n\nfunction MaybeWrap(props: {\n children: React.ReactElement;\n cond: boolean;\n wrapper: (children: React.ReactElement) => React.ReactElement;\n}) {\n return props.cond ? props.wrapper(props.children) : props.children;\n}\n"],"names":["React","HostPlasmicTranslatorContext","useHostPlasmicTranslator","useAriaIsSSR"],"mappings":"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"}
|