@fluid-app/portal-sdk 0.1.13 → 0.1.15
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/AccountScreen-B08uxzt6.mjs +2 -0
- package/dist/AccountScreen-CQCwpKEC.mjs +741 -0
- package/dist/AccountScreen-CQCwpKEC.mjs.map +1 -0
- package/dist/AccountScreen-CbhrIAa4.cjs +780 -0
- package/dist/AccountScreen-CbhrIAa4.cjs.map +1 -0
- package/dist/{ContactsScreen-CB6l0Lf1.mjs → ContactsScreen-CHLFZX_N.mjs} +2 -2
- package/dist/{ContactsScreen-CB6l0Lf1.mjs.map → ContactsScreen-CHLFZX_N.mjs.map} +1 -1
- package/dist/{ContactsScreen-Dwn5onLu.cjs → ContactsScreen-CjnCemeI.cjs} +4 -4
- package/dist/{ContactsScreen-Dwn5onLu.cjs.map → ContactsScreen-CjnCemeI.cjs.map} +1 -1
- package/dist/{CoreScreenPlaceholder-Bw8YOPwv.cjs → CoreScreenPlaceholder-C9lBkcyc.cjs} +2 -2
- package/dist/{CoreScreenPlaceholder-Bw8YOPwv.cjs.map → CoreScreenPlaceholder-C9lBkcyc.cjs.map} +1 -1
- package/dist/{CoreScreenPlaceholder-D93ZYKt2.mjs → CoreScreenPlaceholder-DCJ1hFvJ.mjs} +1 -1
- package/dist/{CoreScreenPlaceholder-D93ZYKt2.mjs.map → CoreScreenPlaceholder-DCJ1hFvJ.mjs.map} +1 -1
- package/dist/{CustomersScreen-gQb6cWL5.cjs → CustomersScreen-CqwRJogV.cjs} +4 -4
- package/dist/{CustomersScreen-gQb6cWL5.cjs.map → CustomersScreen-CqwRJogV.cjs.map} +1 -1
- package/dist/{CustomersScreen-BEar6Leg.mjs → CustomersScreen-DBicCB3o.mjs} +2 -2
- package/dist/{CustomersScreen-BEar6Leg.mjs.map → CustomersScreen-DBicCB3o.mjs.map} +1 -1
- package/dist/{MessagingScreen-YyzXdr95.mjs → FluidProvider-BafZw8PJ.mjs} +6 -503
- package/dist/FluidProvider-BafZw8PJ.mjs.map +1 -0
- package/dist/{MessagingScreen-Ca22FObh.cjs → FluidProvider-C6SCZDjX.cjs} +3 -542
- package/dist/FluidProvider-C6SCZDjX.cjs.map +1 -0
- package/dist/MessagingScreen-Bd-1_J9q.cjs +369 -0
- package/dist/MessagingScreen-Bd-1_J9q.cjs.map +1 -0
- package/dist/MessagingScreen-D8W8V2TW.mjs +2 -0
- package/dist/MessagingScreen-DCS0mtbd.mjs +324 -0
- package/dist/MessagingScreen-DCS0mtbd.mjs.map +1 -0
- package/dist/{OrdersScreen-DB1v051q.mjs → OrdersScreen-B6JCMBY5.mjs} +2 -2
- package/dist/{OrdersScreen-DB1v051q.mjs.map → OrdersScreen-B6JCMBY5.mjs.map} +1 -1
- package/dist/{OrdersScreen-DbON-kBA.cjs → OrdersScreen-DBxpXgZ9.cjs} +4 -4
- package/dist/{OrdersScreen-DbON-kBA.cjs.map → OrdersScreen-DBxpXgZ9.cjs.map} +1 -1
- package/dist/{ProductsScreen-CMDGGvE2.cjs → ProductsScreen-BK8cz_MN.cjs} +4 -4
- package/dist/{ProductsScreen-CMDGGvE2.cjs.map → ProductsScreen-BK8cz_MN.cjs.map} +1 -1
- package/dist/{ProductsScreen-nVDsY6kf.mjs → ProductsScreen-DafsauTY.mjs} +2 -2
- package/dist/{ProductsScreen-nVDsY6kf.mjs.map → ProductsScreen-DafsauTY.mjs.map} +1 -1
- package/dist/index.cjs +73 -138
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +29 -22
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +29 -22
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +49 -116
- package/dist/index.mjs.map +1 -1
- package/package.json +19 -13
- package/dist/MessagingScreen-Ca22FObh.cjs.map +0 -1
- package/dist/MessagingScreen-YyzXdr95.mjs.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,30 +1,26 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
2
|
+
const require_FluidProvider = require("./FluidProvider-C6SCZDjX.cjs");
|
|
3
|
+
const require_MessagingScreen = require("./MessagingScreen-Bd-1_J9q.cjs");
|
|
4
|
+
const require_AccountScreen = require("./AccountScreen-CbhrIAa4.cjs");
|
|
5
|
+
const require_CoreScreenPlaceholder = require("./CoreScreenPlaceholder-C9lBkcyc.cjs");
|
|
6
|
+
const require_ContactsScreen = require("./ContactsScreen-CjnCemeI.cjs");
|
|
7
|
+
const require_OrdersScreen = require("./OrdersScreen-DBxpXgZ9.cjs");
|
|
8
|
+
const require_CustomersScreen = require("./CustomersScreen-CqwRJogV.cjs");
|
|
9
|
+
const require_ProductsScreen = require("./ProductsScreen-BK8cz_MN.cjs");
|
|
8
10
|
let react = require("react");
|
|
9
|
-
react =
|
|
11
|
+
react = require_FluidProvider.__toESM(react);
|
|
10
12
|
let _tanstack_react_query = require("@tanstack/react-query");
|
|
11
13
|
let _fluid_app_portal_core_theme = require("@fluid-app/portal-core/theme");
|
|
12
14
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
13
15
|
let _fluid_app_portal_widgets_contexts = require("@fluid-app/portal-widgets/contexts");
|
|
16
|
+
let lucide_react = require("lucide-react");
|
|
14
17
|
let _fluid_app_portal_core_shell_AppShellLayout = require("@fluid-app/portal-core/shell/AppShellLayout");
|
|
15
18
|
let _fluid_app_portal_core_shell_ThemeModeContext = require("@fluid-app/portal-core/shell/ThemeModeContext");
|
|
16
19
|
let _fluid_app_portal_core_navigation_system_navigation_items = require("@fluid-app/portal-core/navigation/system-navigation-items");
|
|
17
20
|
let _fluid_app_portal_core_shell_ScreenHeader = require("@fluid-app/portal-core/shell/ScreenHeader");
|
|
18
21
|
let _fluid_app_portal_core_shell_ScreenHeaderContext = require("@fluid-app/portal-core/shell/ScreenHeaderContext");
|
|
19
|
-
let _fortawesome_react_fontawesome = require("@fortawesome/react-fontawesome");
|
|
20
|
-
let _fortawesome_pro_regular_svg_icons_faEllipsis = require("@fortawesome/pro-regular-svg-icons/faEllipsis");
|
|
21
|
-
let _fortawesome_pro_regular_svg_icons_faXmark = require("@fortawesome/pro-regular-svg-icons/faXmark");
|
|
22
22
|
let _fluid_app_portal_core_components_RepIcon = require("@fluid-app/portal-core/components/RepIcon");
|
|
23
23
|
let _fluid_app_portal_core_shell_sidebar = require("@fluid-app/portal-core/shell/sidebar");
|
|
24
|
-
let _fortawesome_pro_regular_svg_icons_faBars = require("@fortawesome/pro-regular-svg-icons/faBars");
|
|
25
|
-
let _fortawesome_pro_regular_svg_icons_faSun = require("@fortawesome/pro-regular-svg-icons/faSun");
|
|
26
|
-
let _fortawesome_pro_regular_svg_icons_faMoon = require("@fortawesome/pro-regular-svg-icons/faMoon");
|
|
27
|
-
let _fortawesome_pro_regular_svg_icons_faTableCellsLarge = require("@fortawesome/pro-regular-svg-icons/faTableCellsLarge");
|
|
28
24
|
let _fluid_app_portal_core_data_sources_DataAwareWidget = require("@fluid-app/portal-core/data-sources/DataAwareWidget");
|
|
29
25
|
let _fluid_app_portal_widgets_widgets = require("@fluid-app/portal-widgets/widgets");
|
|
30
26
|
let _fluid_app_portal_core_types = require("@fluid-app/portal-core/types");
|
|
@@ -969,7 +965,7 @@ function useFluidApp(options) {
|
|
|
969
965
|
return (0, _tanstack_react_query.useQuery)({
|
|
970
966
|
queryKey: APP_DATA_QUERY_KEY,
|
|
971
967
|
queryFn: () => api.app.getRaw(),
|
|
972
|
-
select:
|
|
968
|
+
select: require_FluidProvider.transformManifestToRepAppData,
|
|
973
969
|
...appDataPersister && { persister: appDataPersister.persisterFn },
|
|
974
970
|
...options?.enabled !== void 0 && { enabled: options.enabled }
|
|
975
971
|
});
|
|
@@ -1053,7 +1049,7 @@ function useFluidPermissions() {
|
|
|
1053
1049
|
* ```
|
|
1054
1050
|
*/
|
|
1055
1051
|
function useFluidTheme() {
|
|
1056
|
-
const { currentTheme, setTheme, setThemeMode, mode } =
|
|
1052
|
+
const { currentTheme, setTheme, setThemeMode, mode } = require_FluidProvider.useThemeContext();
|
|
1057
1053
|
return {
|
|
1058
1054
|
currentTheme,
|
|
1059
1055
|
setTheme,
|
|
@@ -1122,47 +1118,6 @@ function useCurrentUser() {
|
|
|
1122
1118
|
});
|
|
1123
1119
|
}
|
|
1124
1120
|
//#endregion
|
|
1125
|
-
//#region src/hooks/use-fluid-auth.ts
|
|
1126
|
-
/**
|
|
1127
|
-
* useFluidAuth Hook
|
|
1128
|
-
*
|
|
1129
|
-
* Provides access to authentication state and utilities.
|
|
1130
|
-
* This is the primary hook for interacting with auth in components.
|
|
1131
|
-
*/
|
|
1132
|
-
/**
|
|
1133
|
-
* Hook to access authentication state and utilities.
|
|
1134
|
-
*
|
|
1135
|
-
* Must be used within a `FluidAuthProvider`.
|
|
1136
|
-
*
|
|
1137
|
-
* @returns Authentication context with user info, loading state, and utilities
|
|
1138
|
-
* @throws Error if used outside FluidAuthProvider
|
|
1139
|
-
*
|
|
1140
|
-
* @example
|
|
1141
|
-
* ```tsx
|
|
1142
|
-
* function UserProfile() {
|
|
1143
|
-
* const { isAuthenticated, isLoading, user, clearAuth } = useFluidAuth();
|
|
1144
|
-
*
|
|
1145
|
-
* if (isLoading) {
|
|
1146
|
-
* return <Spinner />;
|
|
1147
|
-
* }
|
|
1148
|
-
*
|
|
1149
|
-
* if (!isAuthenticated) {
|
|
1150
|
-
* return <p>Please log in</p>;
|
|
1151
|
-
* }
|
|
1152
|
-
*
|
|
1153
|
-
* return (
|
|
1154
|
-
* <div>
|
|
1155
|
-
* <p>Welcome, {user.full_name}!</p>
|
|
1156
|
-
* <button onClick={clearAuth}>Log out</button>
|
|
1157
|
-
* </div>
|
|
1158
|
-
* );
|
|
1159
|
-
* }
|
|
1160
|
-
* ```
|
|
1161
|
-
*/
|
|
1162
|
-
function useFluidAuth() {
|
|
1163
|
-
return require_MessagingScreen.useFluidAuthContext();
|
|
1164
|
-
}
|
|
1165
|
-
//#endregion
|
|
1166
1121
|
//#region src/hooks/demo-data/calendar-events.ts
|
|
1167
1122
|
const now$4 = /* @__PURE__ */ new Date();
|
|
1168
1123
|
function daysFromNow$1(days, hour, minute = 0) {
|
|
@@ -2085,7 +2040,7 @@ function AuthLoading() {
|
|
|
2085
2040
|
* ```
|
|
2086
2041
|
*/
|
|
2087
2042
|
function RequireAuth({ children, fallback = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AuthLoading, {}), errorComponent = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AuthError, {}) }) {
|
|
2088
|
-
const { isAuthenticated, isLoading, error } = useFluidAuth();
|
|
2043
|
+
const { isAuthenticated, isLoading, error } = require_AccountScreen.useFluidAuth();
|
|
2089
2044
|
if (isLoading) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: fallback });
|
|
2090
2045
|
if (!isAuthenticated || error) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: errorComponent });
|
|
2091
2046
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children });
|
|
@@ -2093,16 +2048,18 @@ function RequireAuth({ children, fallback = /* @__PURE__ */ (0, react_jsx_runtim
|
|
|
2093
2048
|
//#endregion
|
|
2094
2049
|
//#region src/screens/index.ts
|
|
2095
2050
|
const screenPropertySchemas = {
|
|
2096
|
-
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
|
|
2100
|
-
|
|
2051
|
+
AccountScreen: () => Promise.resolve().then(() => require("./AccountScreen-CbhrIAa4.cjs")).then((n) => n.AccountScreen_exports).then((m) => m.accountScreenPropertySchema),
|
|
2052
|
+
MessagingScreen: () => Promise.resolve().then(() => require("./MessagingScreen-Bd-1_J9q.cjs")).then((n) => n.MessagingScreen_exports).then((m) => m.messagingScreenPropertySchema),
|
|
2053
|
+
ContactsScreen: () => Promise.resolve().then(() => require("./ContactsScreen-CjnCemeI.cjs")).then((n) => n.ContactsScreen_exports).then((m) => m.contactsScreenPropertySchema),
|
|
2054
|
+
OrdersScreen: () => Promise.resolve().then(() => require("./OrdersScreen-DBxpXgZ9.cjs")).then((n) => n.OrdersScreen_exports).then((m) => m.ordersScreenPropertySchema),
|
|
2055
|
+
CustomersScreen: () => Promise.resolve().then(() => require("./CustomersScreen-CqwRJogV.cjs")).then((n) => n.CustomersScreen_exports).then((m) => m.customersScreenPropertySchema),
|
|
2056
|
+
ProductsScreen: () => Promise.resolve().then(() => require("./ProductsScreen-BK8cz_MN.cjs")).then((n) => n.ProductsScreen_exports).then((m) => m.productsScreenPropertySchema)
|
|
2101
2057
|
};
|
|
2102
2058
|
/**
|
|
2103
2059
|
* Core page template IDs
|
|
2104
2060
|
*/
|
|
2105
2061
|
const CORE_PAGE_IDS = {
|
|
2062
|
+
ACCOUNT: "core-account",
|
|
2106
2063
|
MESSAGING: "core-messaging",
|
|
2107
2064
|
CONTACTS: "core-contacts",
|
|
2108
2065
|
ORDERS: "core-orders",
|
|
@@ -2114,6 +2071,27 @@ const CORE_PAGE_IDS = {
|
|
|
2114
2071
|
* These are automatically registered when the SDK is imported.
|
|
2115
2072
|
*/
|
|
2116
2073
|
function registerCorePageTemplates() {
|
|
2074
|
+
PageTemplateRegistry.register({
|
|
2075
|
+
id: CORE_PAGE_IDS.ACCOUNT,
|
|
2076
|
+
slug: "account",
|
|
2077
|
+
name: "Account",
|
|
2078
|
+
description: "Account management with profile, orders, and subscriptions",
|
|
2079
|
+
category: PAGE_CATEGORIES.CORE,
|
|
2080
|
+
tags: [
|
|
2081
|
+
"account",
|
|
2082
|
+
"profile",
|
|
2083
|
+
"orders",
|
|
2084
|
+
"subscriptions"
|
|
2085
|
+
],
|
|
2086
|
+
version: "1.0.0",
|
|
2087
|
+
isCore: true,
|
|
2088
|
+
component_tree: [{
|
|
2089
|
+
type: "AccountScreen",
|
|
2090
|
+
id: "account-screen-root",
|
|
2091
|
+
props: {}
|
|
2092
|
+
}],
|
|
2093
|
+
defaultProps: {}
|
|
2094
|
+
});
|
|
2117
2095
|
PageTemplateRegistry.register({
|
|
2118
2096
|
id: CORE_PAGE_IDS.MESSAGING,
|
|
2119
2097
|
slug: "messaging",
|
|
@@ -2264,10 +2242,7 @@ function SdkBottomNav({ navItems, currentSlug, onNavigate, maxVisibleItems = 5 }
|
|
|
2264
2242
|
type: "button",
|
|
2265
2243
|
onClick: () => setMoreOpen(true),
|
|
2266
2244
|
className: `flex flex-1 flex-col items-center justify-center gap-0.5 py-2 text-[10px] font-medium transition-colors ${overflowItems.some((item) => isInSection(item, currentSlug)) ? "text-primary" : "text-muted-foreground"}`,
|
|
2267
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
2268
|
-
icon: _fortawesome_pro_regular_svg_icons_faEllipsis.faEllipsis,
|
|
2269
|
-
className: "size-5"
|
|
2270
|
-
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: "More" })]
|
|
2245
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.Ellipsis, { className: "size-5" }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { children: "More" })]
|
|
2271
2246
|
})]
|
|
2272
2247
|
}), moreOpen && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
2273
2248
|
className: "fixed inset-0 z-50 flex flex-col",
|
|
@@ -2287,10 +2262,7 @@ function SdkBottomNav({ navItems, currentSlug, onNavigate, maxVisibleItems = 5 }
|
|
|
2287
2262
|
onClick: () => setMoreOpen(false),
|
|
2288
2263
|
className: "text-muted-foreground hover:bg-sidebar-accent flex items-center justify-center rounded-full p-1",
|
|
2289
2264
|
"aria-label": "Close",
|
|
2290
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
2291
|
-
icon: _fortawesome_pro_regular_svg_icons_faXmark.faXmark,
|
|
2292
|
-
className: "size-5"
|
|
2293
|
-
})
|
|
2265
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.X, { className: "size-5" })
|
|
2294
2266
|
})]
|
|
2295
2267
|
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
2296
2268
|
className: "px-2 pb-4",
|
|
@@ -2465,10 +2437,7 @@ function QuickLinksDropdown({ onNavigate }) {
|
|
|
2465
2437
|
className: "text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground flex shrink-0 items-center justify-center rounded-md p-2",
|
|
2466
2438
|
"aria-label": "Quick links",
|
|
2467
2439
|
"aria-expanded": open,
|
|
2468
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
2469
|
-
icon: _fortawesome_pro_regular_svg_icons_faTableCellsLarge.faTableCellsLarge,
|
|
2470
|
-
className: "h-4 w-4"
|
|
2471
|
-
})
|
|
2440
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.LayoutGrid, { className: "h-4 w-4" })
|
|
2472
2441
|
}), open && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
2473
2442
|
ref: panelRef,
|
|
2474
2443
|
className: "border-border bg-background absolute top-full right-0 z-50 mt-1 w-[700px] max-w-[90vw] overflow-hidden rounded-lg border shadow-lg",
|
|
@@ -2476,10 +2445,7 @@ function QuickLinksDropdown({ onNavigate }) {
|
|
|
2476
2445
|
className: "flex flex-col",
|
|
2477
2446
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
2478
2447
|
className: "bg-background flex items-center gap-2 border-b p-4",
|
|
2479
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
2480
|
-
icon: _fortawesome_pro_regular_svg_icons_faTableCellsLarge.faTableCellsLarge,
|
|
2481
|
-
className: "text-muted-foreground h-5 w-5"
|
|
2482
|
-
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("h3", {
|
|
2448
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.LayoutGrid, { className: "text-muted-foreground h-5 w-5" }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("h3", {
|
|
2483
2449
|
className: "text-foreground text-sm font-semibold",
|
|
2484
2450
|
children: "Shortcuts"
|
|
2485
2451
|
})]
|
|
@@ -2517,7 +2483,7 @@ function SdkHeader({ tabs, mobileTabs, currentSlug, onNavigate, navSlugs }) {
|
|
|
2517
2483
|
const sidebar = (0, _fluid_app_portal_core_shell_sidebar.useSidebar)();
|
|
2518
2484
|
const themeMode = (0, _fluid_app_portal_core_shell_ThemeModeContext.useThemeMode)();
|
|
2519
2485
|
const baseSlug = matchSlugPrefix(currentSlug, navSlugs)?.matchedSlug ?? (0, _fluid_app_portal_core_navigation_system_navigation_items.normalizeSlug)(currentSlug);
|
|
2520
|
-
const
|
|
2486
|
+
const ThemeIcon = themeMode.mode === "dark" ? lucide_react.Moon : lucide_react.Sun;
|
|
2521
2487
|
const activeTabs = sidebar.isMobile && sidebar.useBottomNav && mobileTabs ? mobileTabs : tabs;
|
|
2522
2488
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("header", {
|
|
2523
2489
|
className: "bg-sidebar flex h-[52px] shrink-0 items-center gap-2 px-6",
|
|
@@ -2527,10 +2493,7 @@ function SdkHeader({ tabs, mobileTabs, currentSlug, onNavigate, navSlugs }) {
|
|
|
2527
2493
|
onClick: sidebar.toggleSidebar,
|
|
2528
2494
|
className: "text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground mr-2 flex shrink-0 items-center justify-center rounded-md p-2",
|
|
2529
2495
|
"aria-label": "Toggle sidebar",
|
|
2530
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
2531
|
-
icon: _fortawesome_pro_regular_svg_icons_faBars.faBars,
|
|
2532
|
-
className: "size-5"
|
|
2533
|
-
})
|
|
2496
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.Menu, { className: "size-5" })
|
|
2534
2497
|
}),
|
|
2535
2498
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("nav", {
|
|
2536
2499
|
className: "scrollbar-none flex flex-1 items-center gap-1 overflow-x-auto",
|
|
@@ -2551,10 +2514,7 @@ function SdkHeader({ tabs, mobileTabs, currentSlug, onNavigate, navSlugs }) {
|
|
|
2551
2514
|
onClick: themeMode.cycleMode,
|
|
2552
2515
|
className: "text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground ml-2 flex shrink-0 items-center justify-center rounded-md p-2",
|
|
2553
2516
|
"aria-label": `Switch theme (current: ${themeMode.mode})`,
|
|
2554
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
2555
|
-
icon: themeIcon,
|
|
2556
|
-
className: "size-3"
|
|
2557
|
-
})
|
|
2517
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ThemeIcon, { className: "size-3" })
|
|
2558
2518
|
})
|
|
2559
2519
|
]
|
|
2560
2520
|
});
|
|
@@ -2618,6 +2578,10 @@ const BuilderScreenView = (0, react.memo)(BuilderScreenViewImpl);
|
|
|
2618
2578
|
//#endregion
|
|
2619
2579
|
//#region src/shell/PageRouter.tsx
|
|
2620
2580
|
const SYSTEM_SLUG_SCREEN_MAP = {
|
|
2581
|
+
account: require_AccountScreen.AccountScreen,
|
|
2582
|
+
"account/profile": require_AccountScreen.AccountScreen,
|
|
2583
|
+
"account/orders": require_AccountScreen.AccountScreen,
|
|
2584
|
+
"account/subscriptions": require_AccountScreen.AccountScreen,
|
|
2621
2585
|
messages: require_MessagingScreen.MessagingScreen,
|
|
2622
2586
|
contacts: require_ContactsScreen.ContactsScreen,
|
|
2623
2587
|
shop: require_OrdersScreen.OrdersScreen,
|
|
@@ -2665,37 +2629,6 @@ function PageRouter({ currentSlug, currentNavItem, customPages, screens, baseSlu
|
|
|
2665
2629
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_CoreScreenPlaceholder.CoreScreenPlaceholder, { name: currentNavItem?.label ?? currentSlug });
|
|
2666
2630
|
}
|
|
2667
2631
|
//#endregion
|
|
2668
|
-
//#region src/shell/AppNavigationContext.tsx
|
|
2669
|
-
const AppNavigationContext = (0, react.createContext)(null);
|
|
2670
|
-
function AppNavigationProvider({ currentSlug, basePath, navigate, children }) {
|
|
2671
|
-
const buildHref = (0, react.useMemo)(() => {
|
|
2672
|
-
return (slug) => {
|
|
2673
|
-
if (basePath === "/") return `/${slug}`;
|
|
2674
|
-
return `${basePath}/${slug}`;
|
|
2675
|
-
};
|
|
2676
|
-
}, [basePath]);
|
|
2677
|
-
const value = (0, react.useMemo)(() => ({
|
|
2678
|
-
currentSlug,
|
|
2679
|
-
basePath,
|
|
2680
|
-
navigate,
|
|
2681
|
-
buildHref
|
|
2682
|
-
}), [
|
|
2683
|
-
currentSlug,
|
|
2684
|
-
basePath,
|
|
2685
|
-
navigate,
|
|
2686
|
-
buildHref
|
|
2687
|
-
]);
|
|
2688
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AppNavigationContext.Provider, {
|
|
2689
|
-
value,
|
|
2690
|
-
children
|
|
2691
|
-
});
|
|
2692
|
-
}
|
|
2693
|
-
function useAppNavigation() {
|
|
2694
|
-
const ctx = (0, react.useContext)(AppNavigationContext);
|
|
2695
|
-
if (!ctx) throw new Error("useAppNavigation must be used within an <AppShell> or <AppNavigationProvider>");
|
|
2696
|
-
return ctx;
|
|
2697
|
-
}
|
|
2698
|
-
//#endregion
|
|
2699
2632
|
//#region src/shell/AppShell.tsx
|
|
2700
2633
|
const THEME_STORAGE_KEY = "portal-theme-mode";
|
|
2701
2634
|
const DEFAULT_NAVIGATION = [
|
|
@@ -2858,7 +2791,7 @@ function AppShell({ appData: appDataProp, navigation: navigationProp, customPage
|
|
|
2858
2791
|
mode: themeMode,
|
|
2859
2792
|
onModeChange: handleThemeModeChange,
|
|
2860
2793
|
autoModeEnabled: false,
|
|
2861
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AppNavigationProvider, {
|
|
2794
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_AccountScreen.AppNavigationProvider, {
|
|
2862
2795
|
currentSlug: activeSlug,
|
|
2863
2796
|
basePath: normalizedBasePath,
|
|
2864
2797
|
navigate: handleNavigate,
|
|
@@ -2901,7 +2834,7 @@ function AppShell({ appData: appDataProp, navigation: navigationProp, customPage
|
|
|
2901
2834
|
* clicks for client-side navigation.
|
|
2902
2835
|
*/
|
|
2903
2836
|
const AppLink = (0, react.forwardRef)(function AppLink({ to, onClick, children, ...rest }, ref) {
|
|
2904
|
-
const { navigate, buildHref } = useAppNavigation();
|
|
2837
|
+
const { navigate, buildHref } = require_AccountScreen.useAppNavigation();
|
|
2905
2838
|
const handleClick = (e) => {
|
|
2906
2839
|
onClick?.(e);
|
|
2907
2840
|
if (e.defaultPrevented) return;
|
|
@@ -2928,15 +2861,16 @@ Object.defineProperty(exports, "AUTH_CONSTANTS", {
|
|
|
2928
2861
|
return _fluid_app_auth.AUTH_CONSTANTS;
|
|
2929
2862
|
}
|
|
2930
2863
|
});
|
|
2864
|
+
exports.AccountScreen = require_AccountScreen.AccountScreen;
|
|
2931
2865
|
Object.defineProperty(exports, "AlertWidget", {
|
|
2932
2866
|
enumerable: true,
|
|
2933
2867
|
get: function() {
|
|
2934
2868
|
return _fluid_app_portal_widgets_widgets.AlertWidget;
|
|
2935
2869
|
}
|
|
2936
2870
|
});
|
|
2937
|
-
exports.ApiError =
|
|
2871
|
+
exports.ApiError = require_FluidProvider.ApiError;
|
|
2938
2872
|
exports.AppLink = AppLink;
|
|
2939
|
-
exports.AppNavigationProvider = AppNavigationProvider;
|
|
2873
|
+
exports.AppNavigationProvider = require_AccountScreen.AppNavigationProvider;
|
|
2940
2874
|
exports.AppShell = AppShell;
|
|
2941
2875
|
exports.AuthError = AuthError;
|
|
2942
2876
|
exports.AuthLoading = AuthLoading;
|
|
@@ -3006,7 +2940,7 @@ Object.defineProperty(exports, "DEFAULT_RADII", {
|
|
|
3006
2940
|
return themes_exports.DEFAULT_RADII;
|
|
3007
2941
|
}
|
|
3008
2942
|
});
|
|
3009
|
-
exports.DEFAULT_SDK_WIDGET_REGISTRY =
|
|
2943
|
+
exports.DEFAULT_SDK_WIDGET_REGISTRY = require_FluidProvider.DEFAULT_SDK_WIDGET_REGISTRY;
|
|
3010
2944
|
Object.defineProperty(exports, "DEFAULT_SPACING", {
|
|
3011
2945
|
enumerable: true,
|
|
3012
2946
|
get: function() {
|
|
@@ -3043,9 +2977,9 @@ Object.defineProperty(exports, "FONT_SIZE_KEYS", {
|
|
|
3043
2977
|
return themes_exports.FONT_SIZE_KEYS;
|
|
3044
2978
|
}
|
|
3045
2979
|
});
|
|
3046
|
-
exports.FluidAuthProvider =
|
|
3047
|
-
exports.FluidProvider =
|
|
3048
|
-
exports.FluidThemeProvider =
|
|
2980
|
+
exports.FluidAuthProvider = require_FluidProvider.FluidAuthProvider;
|
|
2981
|
+
exports.FluidProvider = require_FluidProvider.FluidProvider;
|
|
2982
|
+
exports.FluidThemeProvider = require_FluidProvider.FluidThemeProvider;
|
|
3049
2983
|
Object.defineProperty(exports, "ImageWidget", {
|
|
3050
2984
|
enumerable: true,
|
|
3051
2985
|
get: function() {
|
|
@@ -3185,6 +3119,7 @@ Object.defineProperty(exports, "WIDGET_TYPE_NAMES", {
|
|
|
3185
3119
|
return _fluid_app_portal_core_types.WIDGET_TYPE_NAMES;
|
|
3186
3120
|
}
|
|
3187
3121
|
});
|
|
3122
|
+
exports.accountScreenPropertySchema = require_AccountScreen.accountScreenPropertySchema;
|
|
3188
3123
|
Object.defineProperty(exports, "alertWidgetPropertySchema", {
|
|
3189
3124
|
enumerable: true,
|
|
3190
3125
|
get: function() {
|
|
@@ -3265,7 +3200,7 @@ Object.defineProperty(exports, "createDefaultAuthRedirect", {
|
|
|
3265
3200
|
return _fluid_app_auth.createDefaultAuthRedirect;
|
|
3266
3201
|
}
|
|
3267
3202
|
});
|
|
3268
|
-
exports.createFluidClient =
|
|
3203
|
+
exports.createFluidClient = require_FluidProvider.createFluidClient;
|
|
3269
3204
|
exports.createFluidFileUploader = require_MessagingScreen.createFluidFileUploader;
|
|
3270
3205
|
Object.defineProperty(exports, "createScreen", {
|
|
3271
3206
|
enumerable: true,
|
|
@@ -3419,7 +3354,7 @@ Object.defineProperty(exports, "imageWidgetPropertySchema", {
|
|
|
3419
3354
|
}
|
|
3420
3355
|
});
|
|
3421
3356
|
exports.isActivitySlug = isActivitySlug;
|
|
3422
|
-
exports.isApiError =
|
|
3357
|
+
exports.isApiError = require_FluidProvider.isApiError;
|
|
3423
3358
|
exports.isContactStatus = isContactStatus;
|
|
3424
3359
|
exports.isErrorResult = isErrorResult;
|
|
3425
3360
|
exports.isIdle = isIdle;
|
|
@@ -3493,7 +3428,7 @@ Object.defineProperty(exports, "nestedWidgetPropertySchema", {
|
|
|
3493
3428
|
return _fluid_app_portal_widgets_widgets.nestedWidgetPropertySchema;
|
|
3494
3429
|
}
|
|
3495
3430
|
});
|
|
3496
|
-
exports.normalizeComponentTree =
|
|
3431
|
+
exports.normalizeComponentTree = require_FluidProvider.normalizeComponentTree;
|
|
3497
3432
|
exports.ordersScreenPropertySchema = require_OrdersScreen.ordersScreenPropertySchema;
|
|
3498
3433
|
Object.defineProperty(exports, "parseColor", {
|
|
3499
3434
|
enumerable: true,
|
|
@@ -3577,9 +3512,9 @@ Object.defineProperty(exports, "toDoWidgetPropertySchema", {
|
|
|
3577
3512
|
return _fluid_app_portal_widgets_widgets.toDoWidgetPropertySchema;
|
|
3578
3513
|
}
|
|
3579
3514
|
});
|
|
3580
|
-
exports.toNavigationItem =
|
|
3581
|
-
exports.toScreenDefinition =
|
|
3582
|
-
exports.transformManifestToRepAppData =
|
|
3515
|
+
exports.toNavigationItem = require_FluidProvider.toNavigationItem;
|
|
3516
|
+
exports.toScreenDefinition = require_FluidProvider.toScreenDefinition;
|
|
3517
|
+
exports.transformManifestToRepAppData = require_FluidProvider.transformManifestToRepAppData;
|
|
3583
3518
|
Object.defineProperty(exports, "transformThemes", {
|
|
3584
3519
|
enumerable: true,
|
|
3585
3520
|
get: function() {
|
|
@@ -3587,7 +3522,7 @@ Object.defineProperty(exports, "transformThemes", {
|
|
|
3587
3522
|
}
|
|
3588
3523
|
});
|
|
3589
3524
|
exports.useActivities = useActivities;
|
|
3590
|
-
exports.useAppNavigation = useAppNavigation;
|
|
3525
|
+
exports.useAppNavigation = require_AccountScreen.useAppNavigation;
|
|
3591
3526
|
exports.useCalendarEvents = useCalendarEvents;
|
|
3592
3527
|
exports.useCatchUps = useCatchUps;
|
|
3593
3528
|
exports.useContact = useContact;
|
|
@@ -3598,9 +3533,9 @@ exports.useCurrentRep = useCurrentRep;
|
|
|
3598
3533
|
exports.useCurrentUser = useCurrentUser;
|
|
3599
3534
|
exports.useFluidApi = require_MessagingScreen.useFluidApi;
|
|
3600
3535
|
exports.useFluidApp = useFluidApp;
|
|
3601
|
-
exports.useFluidAuth = useFluidAuth;
|
|
3602
|
-
exports.useFluidAuthContext =
|
|
3603
|
-
exports.useFluidContext =
|
|
3536
|
+
exports.useFluidAuth = require_AccountScreen.useFluidAuth;
|
|
3537
|
+
exports.useFluidAuthContext = require_FluidProvider.useFluidAuthContext;
|
|
3538
|
+
exports.useFluidContext = require_FluidProvider.useFluidContext;
|
|
3604
3539
|
exports.useFluidPermissions = useFluidPermissions;
|
|
3605
3540
|
exports.useFluidProfile = useFluidProfile;
|
|
3606
3541
|
exports.useFluidTheme = useFluidTheme;
|
|
@@ -3609,7 +3544,7 @@ exports.useMessagingConfig = require_MessagingScreen.useMessagingConfig;
|
|
|
3609
3544
|
exports.useMySite = useMySite;
|
|
3610
3545
|
exports.usePageTemplates = usePageTemplates;
|
|
3611
3546
|
exports.useResolvedPages = useResolvedPages;
|
|
3612
|
-
exports.useThemeContext =
|
|
3547
|
+
exports.useThemeContext = require_FluidProvider.useThemeContext;
|
|
3613
3548
|
Object.defineProperty(exports, "useThemeMode", {
|
|
3614
3549
|
enumerable: true,
|
|
3615
3550
|
get: function() {
|