tinacms 3.0.0 → 3.0.1
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/index.js +99 -61
- package/dist/toolkit/index.d.ts +1 -1
- package/dist/toolkit/react-sidebar/components/NavMenuTrigger.d.ts +11 -0
- package/dist/toolkit/react-sidebar/components/nav-components.d.ts +11 -0
- package/dist/toolkit/react-sidebar/components/nav-context.d.ts +15 -0
- package/dist/toolkit/react-sidebar/components/nav.d.ts +3 -3
- package/dist/toolkit/react-sidebar/index.d.ts +3 -0
- package/package.json +1 -1
- /package/dist/admin/components/{Sidebar.d.ts → AdminNav.d.ts} +0 -0
package/dist/index.js
CHANGED
|
@@ -45485,7 +45485,7 @@ function GridMediaItem({ item, active, onClick }) {
|
|
|
45485
45485
|
src: thumbnail,
|
|
45486
45486
|
alt: item.filename
|
|
45487
45487
|
}
|
|
45488
|
-
)) : /* @__PURE__ */ React__default.createElement("div", { className: "p-4 w-full flex flex-col gap-4 items-center justify-center" }, /* @__PURE__ */ React__default.createElement(FileIcon, { className: "w-[
|
|
45488
|
+
)) : /* @__PURE__ */ React__default.createElement("div", { className: "p-4 w-full flex flex-col gap-4 items-center justify-center" }, /* @__PURE__ */ React__default.createElement(FileIcon, { className: "w-[40%] h-auto fill-gray-300", size: 40 })))
|
|
45489
45489
|
));
|
|
45490
45490
|
}
|
|
45491
45491
|
const DeleteModal$1 = ({
|
|
@@ -46296,12 +46296,12 @@ const Callout = ({
|
|
|
46296
46296
|
className = "",
|
|
46297
46297
|
...props
|
|
46298
46298
|
}) => {
|
|
46299
|
-
const commonAlertStyles = "text-sm px-4 py-3 rounded-md border";
|
|
46299
|
+
const commonAlertStyles = "text-sm px-4 py-3 rounded-md border-2 font bg-white text-gray-700 font-medium";
|
|
46300
46300
|
const styles = {
|
|
46301
|
-
warning: `
|
|
46302
|
-
info: `
|
|
46303
|
-
success: `
|
|
46304
|
-
error: `
|
|
46301
|
+
warning: `border-amber-700/20`,
|
|
46302
|
+
info: `border-blue-600/20`,
|
|
46303
|
+
success: `border-green-600/20`,
|
|
46304
|
+
error: `border-red-600/20`
|
|
46305
46305
|
};
|
|
46306
46306
|
const icon = {
|
|
46307
46307
|
warning: /* @__PURE__ */ React.createElement(MdWarning, { className: "w-5 h-auto inline-block mr-1 opacity-70 text-amber-600" }),
|
|
@@ -46390,7 +46390,31 @@ function FiInfo(props) {
|
|
|
46390
46390
|
function VscNewFile(props) {
|
|
46391
46391
|
return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 16 16", "fill": "currentColor" }, "child": [{ "tag": "path", "attr": { "fillRule": "evenodd", "clipRule": "evenodd", "d": "M9.5 1.1l3.4 3.5.1.4v2h-1V6H8V2H3v11h4v1H2.5l-.5-.5v-12l.5-.5h6.7l.3.1zM9 2v3h2.9L9 2zm4 14h-1v-3H9v-1h3V9h1v3h3v1h-3v3z" }, "child": [] }] })(props);
|
|
46392
46392
|
}
|
|
46393
|
-
const
|
|
46393
|
+
const NavContext = createContext(void 0);
|
|
46394
|
+
const useNav = () => {
|
|
46395
|
+
const context = useContext(NavContext);
|
|
46396
|
+
if (!context) {
|
|
46397
|
+
throw new Error("useNav must be used within a NavProvider");
|
|
46398
|
+
}
|
|
46399
|
+
return context;
|
|
46400
|
+
};
|
|
46401
|
+
const NavProvider = ({
|
|
46402
|
+
children,
|
|
46403
|
+
defaultOpen = false
|
|
46404
|
+
}) => {
|
|
46405
|
+
const [menuIsOpen, setMenuIsOpen] = useState(defaultOpen);
|
|
46406
|
+
const toggleMenu = () => setMenuIsOpen((prev) => !prev);
|
|
46407
|
+
const openMenu = () => setMenuIsOpen(true);
|
|
46408
|
+
const closeMenu = () => setMenuIsOpen(false);
|
|
46409
|
+
const value = {
|
|
46410
|
+
menuIsOpen,
|
|
46411
|
+
toggleMenu,
|
|
46412
|
+
openMenu,
|
|
46413
|
+
closeMenu
|
|
46414
|
+
};
|
|
46415
|
+
return /* @__PURE__ */ React__default.createElement(NavContext.Provider, { value }, children);
|
|
46416
|
+
};
|
|
46417
|
+
const version$1 = "3.0.1";
|
|
46394
46418
|
const VersionInfo = () => {
|
|
46395
46419
|
var _a2, _b, _c, _d, _e, _f;
|
|
46396
46420
|
const cms = useCMS();
|
|
@@ -46575,8 +46599,8 @@ const SyncStatusButton = ({
|
|
|
46575
46599
|
const Nav = ({
|
|
46576
46600
|
isLocalMode,
|
|
46577
46601
|
showHamburger = true,
|
|
46578
|
-
menuIsOpen,
|
|
46579
|
-
toggleMenu,
|
|
46602
|
+
menuIsOpen: menuIsOpenProp,
|
|
46603
|
+
toggleMenu: toggleMenuProp,
|
|
46580
46604
|
className = "",
|
|
46581
46605
|
children,
|
|
46582
46606
|
showCollections,
|
|
@@ -46593,6 +46617,10 @@ const Nav = ({
|
|
|
46593
46617
|
}) => {
|
|
46594
46618
|
const cms = useCMS$1();
|
|
46595
46619
|
const [eventsOpen, setEventsOpen] = React.useState(false);
|
|
46620
|
+
const navContext = React.useContext(NavContext);
|
|
46621
|
+
const menuIsOpen = menuIsOpenProp ?? (navContext == null ? void 0 : navContext.menuIsOpen) ?? false;
|
|
46622
|
+
const toggleMenu = toggleMenuProp ?? (navContext == null ? void 0 : navContext.toggleMenu) ?? (() => {
|
|
46623
|
+
});
|
|
46596
46624
|
const { contentCollections, authCollection } = collectionsInfo.collections.reduce(
|
|
46597
46625
|
(acc, collection) => {
|
|
46598
46626
|
if (collection.isAuthCollection) {
|
|
@@ -46615,7 +46643,7 @@ const Nav = ({
|
|
|
46615
46643
|
},
|
|
46616
46644
|
{ Site: [] }
|
|
46617
46645
|
);
|
|
46618
|
-
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { className: "flex items-baseline" }, /* @__PURE__ */ React.createElement(
|
|
46646
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, showHamburger && /* @__PURE__ */ React.createElement("div", { className: "flex items-baseline" }, /* @__PURE__ */ React.createElement(
|
|
46619
46647
|
"button",
|
|
46620
46648
|
{
|
|
46621
46649
|
className: cn(
|
|
@@ -46637,7 +46665,7 @@ const Nav = ({
|
|
|
46637
46665
|
style: { maxWidth: `${sidebarWidth}px` },
|
|
46638
46666
|
...props
|
|
46639
46667
|
},
|
|
46640
|
-
/* @__PURE__ */ React.createElement("div", { className: "flex w-full px-4 py-3 justify-between items-center gap-2 border-b border-gray-200" }, /* @__PURE__ */ React.createElement(
|
|
46668
|
+
/* @__PURE__ */ React.createElement("div", { className: "flex w-full px-4 py-3 justify-between items-center gap-2 border-b border-gray-200" }, /* @__PURE__ */ React.createElement("span", { className: "text-left inline-flex items-center text-xl tracking-wide text-gray-800/80 flex-1 gap-1" }, /* @__PURE__ */ React.createElement(TinaExtendedIcon, { className: "h-8 w-auto fill-orange-500" })), /* @__PURE__ */ React.createElement(
|
|
46641
46669
|
"button",
|
|
46642
46670
|
{
|
|
46643
46671
|
className: cn(
|
|
@@ -46647,8 +46675,8 @@ const Nav = ({
|
|
|
46647
46675
|
toggleMenu();
|
|
46648
46676
|
}
|
|
46649
46677
|
},
|
|
46650
|
-
/* @__PURE__ */ React.createElement(
|
|
46651
|
-
)
|
|
46678
|
+
/* @__PURE__ */ React.createElement(BiX, { className: "h-8 w-auto text-gray-600" })
|
|
46679
|
+
)),
|
|
46652
46680
|
children,
|
|
46653
46681
|
/* @__PURE__ */ React.createElement("div", { className: "flex flex-col px-6 flex-1 overflow-auto" }, showCollections && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("h4", { className: "flex space-x-1 justify-items-start uppercase font-sans font-bold text-sm mb-3 mt-8 text-gray-700" }, /* @__PURE__ */ React.createElement("span", null, "Collections"), isLocalMode && /* @__PURE__ */ React.createElement("span", { className: "flex items-center" }, /* @__PURE__ */ React.createElement(
|
|
46654
46682
|
"a",
|
|
@@ -46758,6 +46786,20 @@ const Logout = ({
|
|
|
46758
46786
|
};
|
|
46759
46787
|
return /* @__PURE__ */ React.createElement("button", { onClick: handleLogout, ...buttonProps }, /* @__PURE__ */ React.createElement(BiExit, { className: "w-6 h-auto mr-2" }), " Log Out");
|
|
46760
46788
|
};
|
|
46789
|
+
const NavCloudLink = ({ config }) => {
|
|
46790
|
+
if (config.text) {
|
|
46791
|
+
return /* @__PURE__ */ React__default.createElement("span", { className: "text-base tracking-wide text-gray-500 flex items-center opacity-90" }, config.text, " ", /* @__PURE__ */ React__default.createElement(
|
|
46792
|
+
"a",
|
|
46793
|
+
{
|
|
46794
|
+
target: "_blank",
|
|
46795
|
+
className: "ml-1 text-blue-600 hover:opacity-60",
|
|
46796
|
+
href: config.link.href
|
|
46797
|
+
},
|
|
46798
|
+
config.link.text
|
|
46799
|
+
));
|
|
46800
|
+
}
|
|
46801
|
+
return /* @__PURE__ */ React__default.createElement("span", { className: "text-base tracking-wide text-gray-500 hover:text-blue-600 flex items-center opacity-90 hover:opacity-100" }, /* @__PURE__ */ React__default.createElement(config.Icon, { className: "mr-2 h-6 opacity-80 w-auto" }), /* @__PURE__ */ React__default.createElement("a", { target: "_blank", href: config.link.href }, config.link.text));
|
|
46802
|
+
};
|
|
46761
46803
|
const ResizeHandle = () => {
|
|
46762
46804
|
const {
|
|
46763
46805
|
resizingSidebar,
|
|
@@ -47422,7 +47464,7 @@ const Sidebar$1 = ({
|
|
|
47422
47464
|
}
|
|
47423
47465
|
}
|
|
47424
47466
|
),
|
|
47425
|
-
RenderNavCloud: ({ config }) => /* @__PURE__ */ React.createElement(
|
|
47467
|
+
RenderNavCloud: ({ config }) => /* @__PURE__ */ React.createElement(NavCloudLink, { config }),
|
|
47426
47468
|
RenderNavCollection: ({ collection }) => /* @__PURE__ */ React.createElement(
|
|
47427
47469
|
SidebarCollectionLink,
|
|
47428
47470
|
{
|
|
@@ -47530,20 +47572,6 @@ const SidebarSiteLink = ({
|
|
|
47530
47572
|
view.name
|
|
47531
47573
|
);
|
|
47532
47574
|
};
|
|
47533
|
-
const SidebarCloudLink$1 = ({ config }) => {
|
|
47534
|
-
if (config.text) {
|
|
47535
|
-
return /* @__PURE__ */ React.createElement("span", { className: "text-base tracking-wide text-gray-500 flex items-center opacity-90" }, config.text, " ", /* @__PURE__ */ React.createElement(
|
|
47536
|
-
"a",
|
|
47537
|
-
{
|
|
47538
|
-
target: "_blank",
|
|
47539
|
-
className: "ml-1 text-blue-600 hover:opacity-60",
|
|
47540
|
-
href: config.link.href
|
|
47541
|
-
},
|
|
47542
|
-
config.link.text
|
|
47543
|
-
));
|
|
47544
|
-
}
|
|
47545
|
-
return /* @__PURE__ */ React.createElement("span", { className: "text-base tracking-wide text-gray-500 hover:text-blue-600 flex items-center opacity-90 hover:opacity-100" }, /* @__PURE__ */ React.createElement(config.Icon, { className: "mr-2 h-6 opacity-80 w-auto" }), /* @__PURE__ */ React.createElement("a", { target: "_blank", href: config.link.href }, config.link.text));
|
|
47546
|
-
};
|
|
47547
47575
|
const SidebarCollectionLink = ({
|
|
47548
47576
|
Icon = ImFilesEmpty,
|
|
47549
47577
|
collection,
|
|
@@ -47609,6 +47637,25 @@ const SidebarBody = ({ children }) => {
|
|
|
47609
47637
|
children
|
|
47610
47638
|
);
|
|
47611
47639
|
};
|
|
47640
|
+
const NavMenuTrigger = ({
|
|
47641
|
+
className = "",
|
|
47642
|
+
label = "Toggle navigation menu"
|
|
47643
|
+
}) => {
|
|
47644
|
+
const { toggleMenu, menuIsOpen } = useNav();
|
|
47645
|
+
if (menuIsOpen) {
|
|
47646
|
+
return null;
|
|
47647
|
+
}
|
|
47648
|
+
return /* @__PURE__ */ React__default.createElement(
|
|
47649
|
+
"button",
|
|
47650
|
+
{
|
|
47651
|
+
className: `pointer-events-auto p-2 hover:bg-gray-100 transition-colors duration-150 ease-in-out rounded ${className}`,
|
|
47652
|
+
onClick: toggleMenu,
|
|
47653
|
+
"aria-label": label,
|
|
47654
|
+
title: label
|
|
47655
|
+
},
|
|
47656
|
+
/* @__PURE__ */ React__default.createElement(BiMenu, { className: "h-8 w-auto text-gray-600" })
|
|
47657
|
+
);
|
|
47658
|
+
};
|
|
47612
47659
|
const DEFAULT_FIELDS = [
|
|
47613
47660
|
TextFieldPlugin,
|
|
47614
47661
|
TextareaFieldPlugin,
|
|
@@ -48038,7 +48085,7 @@ function Alerts2({ alerts }) {
|
|
|
48038
48085
|
return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement("div", { className: "fixed top-0 left-0 p-6 flex flex-col items-center z-[999999]" }, alerts.all.filter((alert) => {
|
|
48039
48086
|
return alert.level !== "error";
|
|
48040
48087
|
}).map((alert) => {
|
|
48041
|
-
return /* @__PURE__ */ React__default.createElement(Alert, { key: alert.id, level: alert.level }, alert.level === "info" && /* @__PURE__ */ React__default.createElement(MdInfo, { className: "w-5 h-auto
|
|
48088
|
+
return /* @__PURE__ */ React__default.createElement(Alert, { key: alert.id, level: alert.level }, alert.level === "info" && /* @__PURE__ */ React__default.createElement(MdInfo, { className: "w-5 h-auto text-blue-500" }), alert.level === "success" && /* @__PURE__ */ React__default.createElement(MdCheckCircle, { className: "w-5 h-auto text-green-500" }), alert.level === "warn" && /* @__PURE__ */ React__default.createElement(MdWarning, { className: "w-5 h-auto text-yellow-500" }), /* @__PURE__ */ React__default.createElement("p", { className: "m-0 flex-1 max-w-[680px] text-left" }, parseUrlsInText(alert.message.toString())), /* @__PURE__ */ React__default.createElement(
|
|
48042
48089
|
CloseAlert,
|
|
48043
48090
|
{
|
|
48044
48091
|
onClick: () => {
|
|
@@ -48079,21 +48126,21 @@ const Alert = ({
|
|
|
48079
48126
|
...props
|
|
48080
48127
|
}) => {
|
|
48081
48128
|
const colorClasses = {
|
|
48082
|
-
info: "bg-white
|
|
48083
|
-
success: "bg-white
|
|
48084
|
-
warn: "bg-white
|
|
48085
|
-
error: "bg-white
|
|
48129
|
+
info: "bg-white",
|
|
48130
|
+
success: "bg-white",
|
|
48131
|
+
warn: "bg-white",
|
|
48132
|
+
error: "bg-white"
|
|
48086
48133
|
};
|
|
48087
48134
|
const borderClasses = {
|
|
48088
|
-
info: "border-blue-
|
|
48089
|
-
success: "border-green-
|
|
48090
|
-
warn: "border-
|
|
48091
|
-
error: "border-red-
|
|
48135
|
+
info: "border-blue-500",
|
|
48136
|
+
success: "border-green-500",
|
|
48137
|
+
warn: "border-amber-500",
|
|
48138
|
+
error: "border-red-500"
|
|
48092
48139
|
};
|
|
48093
48140
|
return /* @__PURE__ */ React__default.createElement(
|
|
48094
48141
|
"div",
|
|
48095
48142
|
{
|
|
48096
|
-
className: `rounded shadow-lg font-
|
|
48143
|
+
className: `rounded-md shadow-lg font-medium cursor-pointer pointer-events-all text-sm transition-all duration-100 ease-out mb-4 max-w-full text-gray-700 ${colorClasses[level]}`,
|
|
48097
48144
|
style: {
|
|
48098
48145
|
animationName: "fly-in-up, fade-in",
|
|
48099
48146
|
animationTimingFunction: "ease-out",
|
|
@@ -48105,7 +48152,7 @@ const Alert = ({
|
|
|
48105
48152
|
/* @__PURE__ */ React__default.createElement(
|
|
48106
48153
|
"div",
|
|
48107
48154
|
{
|
|
48108
|
-
className: `flex items-center gap-
|
|
48155
|
+
className: `flex items-center gap-2 w-[350px] rounded-md border px-4 py-3 ${borderClasses[level]}`,
|
|
48109
48156
|
...props
|
|
48110
48157
|
}
|
|
48111
48158
|
)
|
|
@@ -63987,6 +64034,10 @@ const CreateBranchModal = ({
|
|
|
63987
64034
|
cms.alerts.success(
|
|
63988
64035
|
`Branch created successfully - Pull Request at ${result.pullRequestUrl}`
|
|
63989
64036
|
);
|
|
64037
|
+
if (crudType === "create") {
|
|
64038
|
+
const folderPath = relativePath2.includes("/") ? relativePath2.substring(0, relativePath2.lastIndexOf("/")) : "";
|
|
64039
|
+
window.location.hash = `#/collections/${collection.name}${folderPath ? `/${folderPath}` : ""}`;
|
|
64040
|
+
}
|
|
63990
64041
|
close2();
|
|
63991
64042
|
} catch (e3) {
|
|
63992
64043
|
console.error(e3);
|
|
@@ -120507,8 +120558,7 @@ const Sidebar = ({ cms }) => {
|
|
|
120507
120558
|
const collectionsInfo = useGetCollections(cms);
|
|
120508
120559
|
const screens = cms.plugins.getType("screen").all();
|
|
120509
120560
|
const cloudConfigs = cms.plugins.getType("cloud-config").all();
|
|
120510
|
-
|
|
120511
|
-
const [menuIsOpen, setMenuIsOpen] = React__default.useState(isOnDashboard);
|
|
120561
|
+
location.pathname === "/";
|
|
120512
120562
|
const isLocalMode = (_b = (_a2 = cms.api) == null ? void 0 : _a2.tina) == null ? void 0 : _b.isLocalMode;
|
|
120513
120563
|
const activeScreens = screens.filter(
|
|
120514
120564
|
(screen) => {
|
|
@@ -120521,8 +120571,6 @@ const Sidebar = ({ cms }) => {
|
|
|
120521
120571
|
{
|
|
120522
120572
|
isLocalMode,
|
|
120523
120573
|
showHamburger: false,
|
|
120524
|
-
menuIsOpen,
|
|
120525
|
-
toggleMenu: () => setMenuIsOpen((menu) => !menu),
|
|
120526
120574
|
sidebarWidth: 360,
|
|
120527
120575
|
showCollections: true,
|
|
120528
120576
|
collectionsInfo,
|
|
@@ -120537,7 +120585,7 @@ const Sidebar = ({ cms }) => {
|
|
|
120537
120585
|
Icon: view.Icon ? view.Icon : ImFilesEmpty
|
|
120538
120586
|
}
|
|
120539
120587
|
),
|
|
120540
|
-
RenderNavCloud: ({ config }) => /* @__PURE__ */ React__default.createElement(
|
|
120588
|
+
RenderNavCloud: ({ config }) => /* @__PURE__ */ React__default.createElement(NavCloudLink, { config }),
|
|
120541
120589
|
RenderNavCollection: ({ collection }) => /* @__PURE__ */ React__default.createElement(
|
|
120542
120590
|
SidebarLink,
|
|
120543
120591
|
{
|
|
@@ -120574,20 +120622,6 @@ const SidebarLink = (props) => {
|
|
|
120574
120622
|
label
|
|
120575
120623
|
);
|
|
120576
120624
|
};
|
|
120577
|
-
const SidebarCloudLink = ({ config }) => {
|
|
120578
|
-
if (config.text) {
|
|
120579
|
-
return /* @__PURE__ */ React__default.createElement("span", { className: "text-base tracking-wide text-gray-500 flex items-center opacity-90" }, config.text, " ", /* @__PURE__ */ React__default.createElement(
|
|
120580
|
-
"a",
|
|
120581
|
-
{
|
|
120582
|
-
target: "_blank",
|
|
120583
|
-
className: "ml-1 text-blue-600 hover:opacity-60",
|
|
120584
|
-
href: config.link.href
|
|
120585
|
-
},
|
|
120586
|
-
config.link.text
|
|
120587
|
-
));
|
|
120588
|
-
}
|
|
120589
|
-
return /* @__PURE__ */ React__default.createElement("span", { className: "text-base tracking-wide text-gray-500 hover:text-blue-600 flex items-center opacity-90 hover:opacity-100" }, /* @__PURE__ */ React__default.createElement(config.Icon, { className: "mr-2 h-6 opacity-80 w-auto" }), /* @__PURE__ */ React__default.createElement("a", { target: "_blank", href: config.link.href }, config.link.text));
|
|
120590
|
-
};
|
|
120591
120625
|
const ErrorDialog = (props) => {
|
|
120592
120626
|
return /* @__PURE__ */ React__default.createElement(
|
|
120593
120627
|
"div",
|
|
@@ -120752,7 +120786,7 @@ const PageWrapper = ({
|
|
|
120752
120786
|
headerClassName,
|
|
120753
120787
|
children
|
|
120754
120788
|
}) => {
|
|
120755
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: "relative left-0 w-full h-full bg-gradient-to-b from-gray-50/50 to-gray-50 overflow-y-auto transition-opacity duration-300 ease-out flex flex-col opacity-100" }, /* @__PURE__ */ React__default.createElement("div", { className: `py-2
|
|
120789
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: "relative left-0 w-full h-full bg-gradient-to-b from-gray-50/50 to-gray-50 overflow-y-auto transition-opacity duration-300 ease-out flex flex-col opacity-100" }, /* @__PURE__ */ React__default.createElement("div", { className: `py-2 w-full ${headerClassName}` }, /* @__PURE__ */ React__default.createElement(BillingWarning, null), /* @__PURE__ */ React__default.createElement("div", { className: "flex items-center gap-4" }, /* @__PURE__ */ React__default.createElement(NavMenuTrigger, { className: "ml-2" }), /* @__PURE__ */ React__default.createElement(TinaIcon, { className: "self-center h-10 min-w-10 w-auto text-orange-500" }), /* @__PURE__ */ React__default.createElement(LocalWarning, null), /* @__PURE__ */ React__default.createElement(BranchButton, null), /* @__PURE__ */ React__default.createElement(BranchPreviewButton, null))), children);
|
|
120756
120790
|
};
|
|
120757
120791
|
const PageHeader = ({
|
|
120758
120792
|
children
|
|
@@ -122485,7 +122519,7 @@ const ScreenPage = () => {
|
|
|
122485
122519
|
const selectedScreen = screens.find(
|
|
122486
122520
|
({ name }) => slugify(name) === screenName
|
|
122487
122521
|
);
|
|
122488
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: "relative w-full h-full flex flex-col items-stretch justify-between" }, /* @__PURE__ */ React__default.createElement("div", { className: "py-2
|
|
122522
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: "relative w-full h-full flex flex-col items-stretch justify-between" }, /* @__PURE__ */ React__default.createElement("div", { className: "py-2 w-full" }, /* @__PURE__ */ React__default.createElement(BillingWarning, null), /* @__PURE__ */ React__default.createElement("div", { className: "flex items-center gap-4" }, /* @__PURE__ */ React__default.createElement(NavMenuTrigger, { className: "ml-2" }), /* @__PURE__ */ React__default.createElement(TinaIcon, { className: "self-center h-10 min-w-10 w-auto text-orange-500" }), /* @__PURE__ */ React__default.createElement(LocalWarning, null))), /* @__PURE__ */ React__default.createElement(
|
|
122489
122523
|
"div",
|
|
122490
122524
|
{
|
|
122491
122525
|
className: `xl:hidden pl-6 py-5 border-b border-gray-200 bg-white`
|
|
@@ -122712,7 +122746,7 @@ const DefaultWrapper = ({
|
|
|
122712
122746
|
cms,
|
|
122713
122747
|
children
|
|
122714
122748
|
}) => {
|
|
122715
|
-
return /* @__PURE__ */ React__default.createElement(Layout, null, /* @__PURE__ */ React__default.createElement("div", { className: "flex items-stretch h-dvh overflow-hidden" }, /* @__PURE__ */ React__default.createElement(Sidebar, { cms }), /* @__PURE__ */ React__default.createElement("div", { className: "w-full relative" }, children)));
|
|
122749
|
+
return /* @__PURE__ */ React__default.createElement(Layout, null, /* @__PURE__ */ React__default.createElement(NavProvider, { defaultOpen: false }, /* @__PURE__ */ React__default.createElement("div", { className: "flex items-stretch h-dvh overflow-hidden" }, /* @__PURE__ */ React__default.createElement(Sidebar, { cms }), /* @__PURE__ */ React__default.createElement("div", { className: "w-full relative" }, children))));
|
|
122716
122750
|
};
|
|
122717
122751
|
const PlainLayout = ({ children }) => {
|
|
122718
122752
|
return /* @__PURE__ */ React__default.createElement(
|
|
@@ -123001,6 +123035,9 @@ export {
|
|
|
123001
123035
|
ModalProvider,
|
|
123002
123036
|
NAMER,
|
|
123003
123037
|
Nav,
|
|
123038
|
+
NavCloudLink,
|
|
123039
|
+
NavMenuTrigger,
|
|
123040
|
+
NavProvider,
|
|
123004
123041
|
NumberField,
|
|
123005
123042
|
NumberFieldPlugin,
|
|
123006
123043
|
NumberInput,
|
|
@@ -123094,6 +123131,7 @@ export {
|
|
|
123094
123131
|
useFormPortal,
|
|
123095
123132
|
useLocalStorage,
|
|
123096
123133
|
useModalContainer,
|
|
123134
|
+
useNav,
|
|
123097
123135
|
useScreenPlugin,
|
|
123098
123136
|
useTinaAuthRedirect,
|
|
123099
123137
|
wrapFieldWithError,
|
package/dist/toolkit/index.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ export type { TinaState } from './tina-state';
|
|
|
19
19
|
export * from './forms';
|
|
20
20
|
export * from './icons';
|
|
21
21
|
export * from './react-dismissible';
|
|
22
|
-
export { Nav, LocalWarning, BillingWarning, SyncStatusButton, } from './react-sidebar';
|
|
22
|
+
export { Nav, NavCloudLink, NavProvider, NavMenuTrigger, useNav, LocalWarning, BillingWarning, SyncStatusButton, } from './react-sidebar';
|
|
23
23
|
export { useCMS } from './react-core';
|
|
24
24
|
/**
|
|
25
25
|
* Custom `tinacms` things
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface NavMenuTriggerProps {
|
|
3
|
+
className?: string;
|
|
4
|
+
label?: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* A button component that triggers the navigation menu
|
|
8
|
+
* Can be used anywhere within the NavProvider hierarchy
|
|
9
|
+
*/
|
|
10
|
+
export declare const NavMenuTrigger: React.FC<NavMenuTriggerProps>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { CloudConfigPlugin } from '../../react-cloud-config';
|
|
3
|
+
interface NavCloudLinkProps {
|
|
4
|
+
config: CloudConfigPlugin;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Shared component for rendering cloud configuration links
|
|
8
|
+
* Used across both admin and sidebar navigation
|
|
9
|
+
*/
|
|
10
|
+
export declare const NavCloudLink: React.FC<NavCloudLinkProps>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
export interface NavContextValue {
|
|
3
|
+
menuIsOpen: boolean;
|
|
4
|
+
toggleMenu: () => void;
|
|
5
|
+
openMenu: () => void;
|
|
6
|
+
closeMenu: () => void;
|
|
7
|
+
}
|
|
8
|
+
export declare const NavContext: React.Context<NavContextValue>;
|
|
9
|
+
export declare const useNav: () => NavContextValue;
|
|
10
|
+
interface NavProviderProps {
|
|
11
|
+
children: ReactNode;
|
|
12
|
+
defaultOpen?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare const NavProvider: React.FC<NavProviderProps>;
|
|
15
|
+
export {};
|
|
@@ -9,8 +9,8 @@ interface NavCollection {
|
|
|
9
9
|
interface NavProps {
|
|
10
10
|
isLocalMode: boolean;
|
|
11
11
|
showHamburger?: boolean;
|
|
12
|
-
menuIsOpen
|
|
13
|
-
toggleMenu
|
|
12
|
+
menuIsOpen?: boolean;
|
|
13
|
+
toggleMenu?: () => void;
|
|
14
14
|
children?: any;
|
|
15
15
|
className?: string;
|
|
16
16
|
userName?: string;
|
|
@@ -41,5 +41,5 @@ interface NavProps {
|
|
|
41
41
|
};
|
|
42
42
|
}>;
|
|
43
43
|
}
|
|
44
|
-
export declare const Nav: ({ isLocalMode, showHamburger, menuIsOpen, toggleMenu, className, children, showCollections, collectionsInfo, screens, cloudConfigs, contentCreators, sidebarWidth, RenderNavSite, RenderNavCloud, RenderNavCollection, AuthRenderNavCollection, ...props }: NavProps) => React.JSX.Element;
|
|
44
|
+
export declare const Nav: ({ isLocalMode, showHamburger, menuIsOpen: menuIsOpenProp, toggleMenu: toggleMenuProp, className, children, showCollections, collectionsInfo, screens, cloudConfigs, contentCreators, sidebarWidth, RenderNavSite, RenderNavCloud, RenderNavCollection, AuthRenderNavCollection, ...props }: NavProps) => React.JSX.Element;
|
|
45
45
|
export {};
|
|
@@ -3,3 +3,6 @@ export { SidebarProvider } from './components/sidebar';
|
|
|
3
3
|
export { Nav } from './components/nav';
|
|
4
4
|
export { LocalWarning, BillingWarning } from './components/local-warning';
|
|
5
5
|
export { SyncStatusButton } from './components/sync-status';
|
|
6
|
+
export { NavCloudLink } from './components/nav-components';
|
|
7
|
+
export { NavProvider, useNav } from './components/nav-context';
|
|
8
|
+
export { NavMenuTrigger } from './components/NavMenuTrigger';
|
package/package.json
CHANGED
|
File without changes
|