@burdenoff/microfe-technospam 2026.1102.2 → 2026.1102.3
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/technospam/TechnoSpamRoot.d.ts.map +1 -1
- package/dist/technospam/TechnoSpamRoot.js +187 -178
- package/dist/technospam/TechnoSpamRoot.js.map +1 -1
- package/dist/technospam/api/technospamApi.js +141 -141
- package/dist/technospam/api/technospamApi.js.map +1 -1
- package/dist/technospam/components/MediaCover.js +2 -2
- package/dist/technospam/components/MediaCover.js.map +1 -1
- package/dist/technospam/components/MobileSectionTabs.d.ts +9 -0
- package/dist/technospam/components/MobileSectionTabs.d.ts.map +1 -0
- package/dist/technospam/components/MobileSectionTabs.js +43 -0
- package/dist/technospam/components/MobileSectionTabs.js.map +1 -0
- package/dist/technospam/components/PageLayout.d.ts +7 -1
- package/dist/technospam/components/PageLayout.d.ts.map +1 -1
- package/dist/technospam/components/PageLayout.js +40 -28
- package/dist/technospam/components/PageLayout.js.map +1 -1
- package/dist/technospam/components/lesson/SaveCourseOffline.js +6 -6
- package/dist/technospam/hooks/usePhoneLayout.d.ts +18 -0
- package/dist/technospam/hooks/usePhoneLayout.d.ts.map +1 -0
- package/dist/technospam/hooks/usePhoneLayout.js +14 -0
- package/dist/technospam/hooks/usePhoneLayout.js.map +1 -0
- package/dist/technospam/pages/AdminAdminDashboardPagePage.js +1 -1
- package/dist/technospam/pages/AdminAdminDashboardPagePage.js.map +1 -1
- package/dist/technospam/pages/ApplicationsProblemsPagePage.d.ts.map +1 -1
- package/dist/technospam/pages/ApplicationsProblemsPagePage.js +89 -87
- package/dist/technospam/pages/ApplicationsProblemsPagePage.js.map +1 -1
- package/dist/technospam/pages/CoursesCourseDetailsPagePage.js +3 -3
- package/dist/technospam/pages/CoursesCourseDetailsPagePage.js.map +1 -1
- package/dist/technospam/pages/CoursesCoursesPagePage.d.ts.map +1 -1
- package/dist/technospam/pages/CoursesCoursesPagePage.js +117 -81
- package/dist/technospam/pages/CoursesCoursesPagePage.js.map +1 -1
- package/dist/technospam/pages/CoursesMyLearningPagePage.js +1 -1
- package/dist/technospam/pages/CoursesMyLearningPagePage.js.map +1 -1
- package/dist/technospam/pages/DashboardDashboardPagePage.d.ts.map +1 -1
- package/dist/technospam/pages/DashboardDashboardPagePage.js +21 -17
- package/dist/technospam/pages/DashboardDashboardPagePage.js.map +1 -1
- package/dist/technospam/pages/HackathonsHackathonDetailsPagePage.js +3 -3
- package/dist/technospam/pages/HackathonsHackathonDetailsPagePage.js.map +1 -1
- package/dist/technospam/pages/MentorshipMentorProfilePagePage.js +4 -4
- package/dist/technospam/pages/MentorshipMentorProfilePagePage.js.map +1 -1
- package/dist/technospam/pages/MentorshipMentorsPagePage.d.ts.map +1 -1
- package/dist/technospam/pages/MentorshipMentorsPagePage.js +6 -4
- package/dist/technospam/pages/MentorshipMentorsPagePage.js.map +1 -1
- package/dist/technospam/pages/MentorshipSessionsPagePage.js +1 -1
- package/dist/technospam/pages/MentorshipSessionsPagePage.js.map +1 -1
- package/dist/technospam/types/index.d.ts +7 -0
- package/dist/technospam/types/index.d.ts.map +1 -1
- package/dist/technospam/utils/mobileTabs.d.ts +45 -0
- package/dist/technospam/utils/mobileTabs.d.ts.map +1 -0
- package/dist/technospam/utils/mobileTabs.js +70 -0
- package/dist/technospam/utils/mobileTabs.js.map +1 -0
- package/dist/test/matchMedia.d.ts +6 -0
- package/dist/test/matchMedia.d.ts.map +1 -0
- package/package.json +3 -3
|
@@ -1,52 +1,64 @@
|
|
|
1
1
|
import { useTechnoSpamNavigate as e } from "../providers/TechnoSpamProvider.js";
|
|
2
2
|
import { useNativeControls as t } from "../hooks/useNativeControls.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
3
|
+
import { usePhoneLayout as n } from "../hooks/usePhoneLayout.js";
|
|
4
|
+
import { useTr as r } from "../hooks/useTr.js";
|
|
5
|
+
import { cn as i } from "../utils/cn.js";
|
|
6
|
+
import { MobileSectionTabs as a } from "./MobileSectionTabs.js";
|
|
7
|
+
import { useCallback as o, useContext as s } from "react";
|
|
8
|
+
import { ArrowLeft as c } from "lucide-react";
|
|
9
|
+
import { jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
10
|
+
import { getApolloContext as d } from "@apollo/client/react";
|
|
11
|
+
import { AuroraBackground as f, PullToRefresh as p } from "@burdenoff/fe-libs/ui";
|
|
8
12
|
//#region src/technospam/components/PageLayout.tsx
|
|
9
|
-
function
|
|
10
|
-
let
|
|
11
|
-
|
|
13
|
+
function m({ title: m, description: h, actions: g, children: _, backPath: v, hero: y = !1, mobileSection: b = !1 }) {
|
|
14
|
+
let x = e(), { impact: S } = t(), C = r(), { isPhone: w, nativeChrome: T } = n(), E = s(d()).client, D = o(async () => {
|
|
15
|
+
E && await E.refetchQueries({ include: "active" });
|
|
16
|
+
}, [E]);
|
|
17
|
+
return /* @__PURE__ */ u("div", {
|
|
12
18
|
className: "flex h-full flex-col bg-bg-surface",
|
|
13
|
-
children: [/* @__PURE__ */
|
|
14
|
-
className:
|
|
19
|
+
children: [/* @__PURE__ */ u("div", {
|
|
20
|
+
className: i("relative flex flex-col gap-3 overflow-hidden border-b border-border-seam px-4 py-4 sm:flex-row sm:items-start sm:justify-between sm:gap-4 sm:px-6 sm:py-5", y ? "bg-accent-primary/12" : "bg-bg-surface"),
|
|
15
21
|
children: [
|
|
16
|
-
|
|
17
|
-
/* @__PURE__ */
|
|
22
|
+
y ? /* @__PURE__ */ l(f, { intensity: "subtle" }) : null,
|
|
23
|
+
/* @__PURE__ */ u("div", {
|
|
18
24
|
className: "relative flex min-w-0 flex-col gap-1",
|
|
19
25
|
children: [
|
|
20
|
-
|
|
26
|
+
v ? /* @__PURE__ */ u("button", {
|
|
21
27
|
type: "button",
|
|
22
28
|
onClick: () => {
|
|
23
|
-
|
|
29
|
+
S("light"), x(v);
|
|
24
30
|
},
|
|
25
|
-
className: "flex w-fit items-center gap-1 text-sm text-text-secondary transition-colors hover:text-text-primary focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--color-focus-ring)]",
|
|
26
|
-
children: [/* @__PURE__ */
|
|
31
|
+
className: "-ml-1 flex min-h-11 w-fit items-center gap-1 px-1 text-sm sm:min-h-0 text-text-secondary transition-colors hover:text-text-primary focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--color-focus-ring)]",
|
|
32
|
+
children: [/* @__PURE__ */ l(c, { size: 15 }), C("technospam.common.back", "Back")]
|
|
27
33
|
}) : null,
|
|
28
|
-
/* @__PURE__ */
|
|
29
|
-
className: "truncate text-
|
|
30
|
-
children:
|
|
34
|
+
/* @__PURE__ */ l("h1", {
|
|
35
|
+
className: "truncate text-2xl font-semibold text-text-primary",
|
|
36
|
+
children: m
|
|
31
37
|
}),
|
|
32
|
-
|
|
33
|
-
className: "max-w-2xl text-sm text-text-secondary",
|
|
34
|
-
children:
|
|
38
|
+
h ? /* @__PURE__ */ l("p", {
|
|
39
|
+
className: "sr-only max-w-2xl text-sm text-text-secondary sm:not-sr-only",
|
|
40
|
+
children: h
|
|
35
41
|
}) : null
|
|
36
42
|
]
|
|
37
43
|
}),
|
|
38
|
-
|
|
44
|
+
g ? /* @__PURE__ */ l("div", {
|
|
39
45
|
className: "relative flex flex-wrap items-center gap-2",
|
|
40
|
-
children:
|
|
46
|
+
children: g
|
|
41
47
|
}) : null
|
|
42
48
|
]
|
|
43
|
-
}), /* @__PURE__ */
|
|
44
|
-
|
|
45
|
-
|
|
49
|
+
}), /* @__PURE__ */ u(p, {
|
|
50
|
+
onRefresh: D,
|
|
51
|
+
enabled: T,
|
|
52
|
+
label: C("technospam.common.refreshing", "Refreshing"),
|
|
53
|
+
className: "relative h-auto min-h-0 flex-1 overflow-y-auto p-4 pb-[calc(env(safe-area-inset-bottom)+1rem)] sm:p-6",
|
|
54
|
+
children: [b && w && !T ? /* @__PURE__ */ l("div", {
|
|
55
|
+
className: "mb-4",
|
|
56
|
+
children: /* @__PURE__ */ l(a, {})
|
|
57
|
+
}) : null, _]
|
|
46
58
|
})]
|
|
47
59
|
});
|
|
48
60
|
}
|
|
49
61
|
//#endregion
|
|
50
|
-
export {
|
|
62
|
+
export { m as PageLayout };
|
|
51
63
|
|
|
52
64
|
//# sourceMappingURL=PageLayout.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageLayout.js","names":[],"sources":["../../../src/technospam/components/PageLayout.tsx"],"sourcesContent":["import type
|
|
1
|
+
{"version":3,"file":"PageLayout.js","names":[],"sources":["../../../src/technospam/components/PageLayout.tsx"],"sourcesContent":["import { useCallback, useContext, type ReactNode } from 'react';\nimport { ArrowLeft } from 'lucide-react';\nimport { getApolloContext } from '@apollo/client/react';\nimport { AuroraBackground, PullToRefresh } from '@burdenoff/fe-libs/ui';\nimport { useTechnoSpamNavigate } from '../providers/TechnoSpamProvider';\nimport { useNativeControls } from '../hooks/useNativeControls';\nimport { usePhoneLayout } from '../hooks/usePhoneLayout';\nimport { useTr } from '../hooks/useTr';\nimport { cn } from '../utils/cn';\nimport { MobileSectionTabs } from './MobileSectionTabs';\n\ninterface PageLayoutProps {\n title: ReactNode;\n description?: ReactNode;\n actions?: ReactNode;\n children: ReactNode;\n backPath?: string;\n /** Render the page header with the living-glass aurora backdrop (module hero). */\n hero?: boolean;\n /**\n * One of the four learner-journey pages (Home, Courses, Practice, Mentors):\n * on a phone-width mobile browser it shows the in-page section switcher that\n * stands in for the installed app's bottom tab bar.\n */\n mobileSection?: boolean;\n}\n\n/**\n * Consistent page chrome for every TechnoSpam module page: a header band\n * (optionally with the aurora hero backdrop), an optional back affordance, an\n * actions slot, and a scrollable body. Mirrors the platform page pattern so\n * TechnoSpam feels native to the shell.\n */\nexport function PageLayout({\n title,\n description,\n actions,\n children,\n backPath,\n hero = false,\n mobileSection = false,\n}: PageLayoutProps) {\n const navigate = useTechnoSpamNavigate();\n const { impact } = useNativeControls();\n const tr = useTr();\n const { isPhone, nativeChrome } = usePhoneLayout();\n // Read the client from context rather than useApolloClient(), which throws\n // without a provider (isolated page tests and stories render without one).\n const client = useContext(getApolloContext()).client;\n\n // Pull-to-refresh re-runs every query the visible page is subscribed to.\n const refresh = useCallback(async () => {\n if (client) await client.refetchQueries({ include: 'active' });\n }, [client]);\n\n return (\n <div className=\"flex h-full flex-col bg-bg-surface\">\n <div\n className={cn(\n 'relative flex flex-col gap-3 overflow-hidden border-b border-border-seam px-4 py-4 sm:flex-row sm:items-start sm:justify-between sm:gap-4 sm:px-6 sm:py-5',\n hero ? 'bg-accent-primary/12' : 'bg-bg-surface'\n )}\n >\n {hero ? <AuroraBackground intensity=\"subtle\" /> : null}\n <div className=\"relative flex min-w-0 flex-col gap-1\">\n {backPath ? (\n <button\n type=\"button\"\n onClick={() => {\n void impact('light');\n navigate(backPath);\n }}\n className=\"-ml-1 flex min-h-11 w-fit items-center gap-1 px-1 text-sm sm:min-h-0 text-text-secondary transition-colors hover:text-text-primary focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--color-focus-ring)]\"\n >\n <ArrowLeft size={15} />\n {tr('technospam.common.back', 'Back')}\n </button>\n ) : null}\n <h1 className=\"truncate text-2xl font-semibold text-text-primary\">{title}</h1>\n {description ? (\n // Visually dropped on phones to keep the header compact, but still\n // announced to screen readers.\n <p className=\"sr-only max-w-2xl text-sm text-text-secondary sm:not-sr-only\">\n {description}\n </p>\n ) : null}\n </div>\n {actions ? (\n <div className=\"relative flex flex-wrap items-center gap-2\">{actions}</div>\n ) : null}\n </div>\n {/* The body owns scrolling. In the installed app it also carries the\n native pull-to-refresh gesture; elsewhere PullToRefresh is a plain\n scroller. The bottom padding clears the home indicator on phones\n (the shell already reserves the tab bar's own height). The scroll\n classes are repeated here because PullToRefresh's own copies live in\n fe-libs' dist, which a consumer's Tailwind scan may not cover; without\n them wide content (tab lists, tables) would scroll the whole page\n sideways instead of this body. */}\n <PullToRefresh\n onRefresh={refresh}\n enabled={nativeChrome}\n label={tr('technospam.common.refreshing', 'Refreshing')}\n className=\"relative h-auto min-h-0 flex-1 overflow-y-auto p-4 pb-[calc(env(safe-area-inset-bottom)+1rem)] sm:p-6\"\n >\n {mobileSection && isPhone && !nativeChrome ? (\n <div className=\"mb-4\">\n <MobileSectionTabs />\n </div>\n ) : null}\n {children}\n </PullToRefresh>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;AAiCA,SAAgB,EAAW,EACzB,UACA,gBACA,YACA,aACA,aACA,UAAO,IACP,mBAAgB,MACE;CAClB,IAAM,IAAW,GAAuB,EAClC,EAAE,cAAW,GAAmB,EAChC,IAAK,GAAO,EACZ,EAAE,YAAS,oBAAiB,GAAgB,EAG5C,IAAS,EAAW,GAAkB,CAAC,CAAC,QAGxC,IAAU,EAAY,YAAY;AACtC,EAAI,KAAQ,MAAM,EAAO,eAAe,EAAE,SAAS,UAAU,CAAC;IAC7D,CAAC,EAAO,CAAC;AAEZ,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf,CACE,kBAAC,OAAD;GACE,WAAW,EACT,6JACA,IAAO,yBAAyB,gBACjC;aAJH;IAMG,IAAO,kBAAC,GAAD,EAAkB,WAAU,UAAW,CAAA,GAAG;IAClD,kBAAC,OAAD;KAAK,WAAU;eAAf;MACG,IACC,kBAAC,UAAD;OACE,MAAK;OACL,eAAe;AAEb,QADK,EAAO,QAAQ,EACpB,EAAS,EAAS;;OAEpB,WAAU;iBANZ,CAQE,kBAAC,GAAD,EAAW,MAAM,IAAM,CAAA,EACtB,EAAG,0BAA0B,OAAO,CAC9B;WACP;MACJ,kBAAC,MAAD;OAAI,WAAU;iBAAqD;OAAW,CAAA;MAC7E,IAGC,kBAAC,KAAD;OAAG,WAAU;iBACV;OACC,CAAA,GACF;MACA;;IACL,IACC,kBAAC,OAAD;KAAK,WAAU;eAA8C;KAAc,CAAA,GACzE;IACA;MASN,kBAAC,GAAD;GACE,WAAW;GACX,SAAS;GACT,OAAO,EAAG,gCAAgC,aAAa;GACvD,WAAU;aAJZ,CAMG,KAAiB,KAAW,CAAC,IAC5B,kBAAC,OAAD;IAAK,WAAU;cACb,kBAAC,GAAD,EAAqB,CAAA;IACjB,CAAA,GACJ,MACH,EACa;KACZ"}
|
|
@@ -5,11 +5,11 @@ import { useOnlineStatus as a } from "../../hooks/useOfflineLessons.js";
|
|
|
5
5
|
import { useMemo as o, useState as s } from "react";
|
|
6
6
|
import { CloudDownload as c, CloudOff as l, Trash2 as u } from "lucide-react";
|
|
7
7
|
import { jsx as d, jsxs as f } from "react/jsx-runtime";
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
8
|
+
import { useApolloClient as p } from "@apollo/client/react";
|
|
9
|
+
import { Button as m } from "@burdenoff/fe-libs/ui";
|
|
10
10
|
//#region src/technospam/components/lesson/SaveCourseOffline.tsx
|
|
11
11
|
function h({ scope: h, courseId: g, lessons: _, enrollment: v }) {
|
|
12
|
-
let y =
|
|
12
|
+
let y = p(), b = a(), x = _.filter((e) => !e.isLocked), [S, C] = s(0), w = o(() => i(h, g), [
|
|
13
13
|
h,
|
|
14
14
|
g,
|
|
15
15
|
S
|
|
@@ -31,7 +31,7 @@ function h({ scope: h, courseId: g, lessons: _, enrollment: v }) {
|
|
|
31
31
|
children: [/* @__PURE__ */ f("span", {
|
|
32
32
|
className: "inline-flex items-center gap-1 rounded-full bg-accent-primary/6 px-2.5 py-1 text-xs font-medium text-accent-primary",
|
|
33
33
|
children: [/* @__PURE__ */ d(l, { size: 12 }), " Available offline"]
|
|
34
|
-
}), /* @__PURE__ */ d(
|
|
34
|
+
}), /* @__PURE__ */ d(m, {
|
|
35
35
|
size: "sm",
|
|
36
36
|
variant: "ghost",
|
|
37
37
|
onClick: () => {
|
|
@@ -40,7 +40,7 @@ function h({ scope: h, courseId: g, lessons: _, enrollment: v }) {
|
|
|
40
40
|
"aria-label": "Remove offline copy",
|
|
41
41
|
children: /* @__PURE__ */ d(u, { size: 14 })
|
|
42
42
|
})]
|
|
43
|
-
}) : /* @__PURE__ */ f(
|
|
43
|
+
}) : /* @__PURE__ */ f(m, {
|
|
44
44
|
size: "sm",
|
|
45
45
|
variant: "outline",
|
|
46
46
|
onClick: () => void k(),
|
|
@@ -52,7 +52,7 @@ function h({ scope: h, courseId: g, lessons: _, enrollment: v }) {
|
|
|
52
52
|
" Save for offline",
|
|
53
53
|
D > 0 ? ` (${D}/${x.length})` : ""
|
|
54
54
|
]
|
|
55
|
-
}) : /* @__PURE__ */ f(
|
|
55
|
+
}) : /* @__PURE__ */ f(m, {
|
|
56
56
|
size: "sm",
|
|
57
57
|
variant: "outline",
|
|
58
58
|
disabled: !0,
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** Below Tailwind's `sm` breakpoint (640px): the phone layouts apply. */
|
|
2
|
+
export declare const PHONE_MEDIA_QUERY = "(max-width: 639px)";
|
|
3
|
+
export interface PhoneLayout {
|
|
4
|
+
/** Viewport is phone-width (any platform). */
|
|
5
|
+
isPhone: boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Installed app (Capacitor / standalone PWA) on a phone: the shell renders
|
|
8
|
+
* its bottom tab bar and native top bar instead of the desktop chrome.
|
|
9
|
+
*/
|
|
10
|
+
nativeChrome: boolean;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* The single source for "which phone layout am I in" across TechnoSpam pages,
|
|
14
|
+
* so the in-page section switcher, pull-to-refresh and phone-only defaults all
|
|
15
|
+
* agree with the shell's own tab-bar rule.
|
|
16
|
+
*/
|
|
17
|
+
export declare function usePhoneLayout(): PhoneLayout;
|
|
18
|
+
//# sourceMappingURL=usePhoneLayout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePhoneLayout.d.ts","sourceRoot":"","sources":["../../../src/technospam/hooks/usePhoneLayout.ts"],"names":[],"mappings":"AAGA,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,uBAAuB,CAAC;AAEtD,MAAM,WAAW,WAAW;IAC1B,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,YAAY,EAAE,OAAO,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,WAAW,CAI5C"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { useMediaQuery as e } from "@burdenoff/fe-libs/shared/hooks";
|
|
2
|
+
import { useMobileTabBarVisible as t } from "@burdenoff/fe-libs/chrome/mobileTabBar/useMobileTabBarVisible";
|
|
3
|
+
//#region src/technospam/hooks/usePhoneLayout.ts
|
|
4
|
+
var n = "(max-width: 639px)";
|
|
5
|
+
function r() {
|
|
6
|
+
return {
|
|
7
|
+
isPhone: e(n),
|
|
8
|
+
nativeChrome: t()
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
//#endregion
|
|
12
|
+
export { r as usePhoneLayout };
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=usePhoneLayout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePhoneLayout.js","names":[],"sources":["../../../src/technospam/hooks/usePhoneLayout.ts"],"sourcesContent":["import { useMediaQuery } from '@burdenoff/fe-libs/shared/hooks';\nimport { useMobileTabBarVisible } from '@burdenoff/fe-libs/chrome/mobileTabBar/useMobileTabBarVisible';\n\n/** Below Tailwind's `sm` breakpoint (640px): the phone layouts apply. */\nexport const PHONE_MEDIA_QUERY = '(max-width: 639px)';\n\nexport interface PhoneLayout {\n /** Viewport is phone-width (any platform). */\n isPhone: boolean;\n /**\n * Installed app (Capacitor / standalone PWA) on a phone: the shell renders\n * its bottom tab bar and native top bar instead of the desktop chrome.\n */\n nativeChrome: boolean;\n}\n\n/**\n * The single source for \"which phone layout am I in\" across TechnoSpam pages,\n * so the in-page section switcher, pull-to-refresh and phone-only defaults all\n * agree with the shell's own tab-bar rule.\n */\nexport function usePhoneLayout(): PhoneLayout {\n const isPhone = useMediaQuery(PHONE_MEDIA_QUERY);\n const nativeChrome = useMobileTabBarVisible();\n return { isPhone, nativeChrome };\n}\n"],"mappings":";;;AAIA,IAAa,IAAoB;AAiBjC,SAAgB,IAA8B;AAG5C,QAAO;EAAE,SAFO,EAAc,EAAkB;EAE9B,cADG,GAAwB;EACb"}
|
|
@@ -71,7 +71,7 @@ function $({ label: e, required: t, className: n, children: r }) {
|
|
|
71
71
|
}
|
|
72
72
|
function Ve({ seed: e, icon: n }) {
|
|
73
73
|
return /* @__PURE__ */ q("span", {
|
|
74
|
-
className: t("flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-gradient-to-br text-
|
|
74
|
+
className: t("flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-gradient-to-br text-action-primary-text shadow-sm", r(e)),
|
|
75
75
|
children: /* @__PURE__ */ q(n, {
|
|
76
76
|
size: 18,
|
|
77
77
|
strokeWidth: 2
|