tinacms 0.0.0-a30bc52-20251201062201 → 0.0.0-a3cc5b1-20251202013216
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 +91 -50
- 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 +4 -4
- /package/dist/admin/components/{Sidebar.d.ts → AdminNav.d.ts} +0 -0
package/dist/index.js
CHANGED
|
@@ -45879,7 +45879,7 @@ function MediaPicker({
|
|
|
45879
45879
|
"ul",
|
|
45880
45880
|
{
|
|
45881
45881
|
...rootProps,
|
|
45882
|
-
className: `h-full grow overflow-y-auto transition duration-150 ease-out bg-gradient-to-b from-gray-50/50 to-gray-50 ${list.items.length === 0 || viewMode === "list" && "w-full flex flex-1 flex-col justify-start -mb-px"} ${list.items.length > 0 && viewMode === "grid" && "w-full p-4 gap-4 grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 2xl:grid-cols-4 4xl:grid-cols-6 6xl:grid-cols-9 auto-rows-auto content-start justify-start"} ${isDragActive ? `border-2 border-blue-500 rounded-lg` : ``}`
|
|
45882
|
+
className: `h-full grow overflow-y-auto transition duration-150 ease-out bg-gradient-to-b from-gray-50/50 to-gray-50 ${list.items.length === 0 || viewMode === "list" && "w-full flex flex-1 flex-col justify-start -mb-px"} ${list.items.length > 0 && viewMode === "grid" && "w-full p-4 gap-4 grid grid-cols-1 @sm:grid-cols-2 @lg:grid-cols-3 @2xl:grid-cols-4 @4xl:grid-cols-6 @6xl:grid-cols-9 auto-rows-auto content-start justify-start"} ${isDragActive ? `border-2 border-blue-500 rounded-lg` : ``}`
|
|
45883
45883
|
},
|
|
45884
45884
|
/* @__PURE__ */ React__default.createElement("input", { ...getInputProps() }),
|
|
45885
45885
|
listState === "loaded" && list.items.length === 0 && /* @__PURE__ */ React__default.createElement(EmptyMediaList, null),
|
|
@@ -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.0";
|
|
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,
|
|
@@ -120507,8 +120554,7 @@ const Sidebar = ({ cms }) => {
|
|
|
120507
120554
|
const collectionsInfo = useGetCollections(cms);
|
|
120508
120555
|
const screens = cms.plugins.getType("screen").all();
|
|
120509
120556
|
const cloudConfigs = cms.plugins.getType("cloud-config").all();
|
|
120510
|
-
|
|
120511
|
-
const [menuIsOpen, setMenuIsOpen] = React__default.useState(isOnDashboard);
|
|
120557
|
+
location.pathname === "/";
|
|
120512
120558
|
const isLocalMode = (_b = (_a2 = cms.api) == null ? void 0 : _a2.tina) == null ? void 0 : _b.isLocalMode;
|
|
120513
120559
|
const activeScreens = screens.filter(
|
|
120514
120560
|
(screen) => {
|
|
@@ -120521,8 +120567,6 @@ const Sidebar = ({ cms }) => {
|
|
|
120521
120567
|
{
|
|
120522
120568
|
isLocalMode,
|
|
120523
120569
|
showHamburger: false,
|
|
120524
|
-
menuIsOpen,
|
|
120525
|
-
toggleMenu: () => setMenuIsOpen((menu) => !menu),
|
|
120526
120570
|
sidebarWidth: 360,
|
|
120527
120571
|
showCollections: true,
|
|
120528
120572
|
collectionsInfo,
|
|
@@ -120537,7 +120581,7 @@ const Sidebar = ({ cms }) => {
|
|
|
120537
120581
|
Icon: view.Icon ? view.Icon : ImFilesEmpty
|
|
120538
120582
|
}
|
|
120539
120583
|
),
|
|
120540
|
-
RenderNavCloud: ({ config }) => /* @__PURE__ */ React__default.createElement(
|
|
120584
|
+
RenderNavCloud: ({ config }) => /* @__PURE__ */ React__default.createElement(NavCloudLink, { config }),
|
|
120541
120585
|
RenderNavCollection: ({ collection }) => /* @__PURE__ */ React__default.createElement(
|
|
120542
120586
|
SidebarLink,
|
|
120543
120587
|
{
|
|
@@ -120574,20 +120618,6 @@ const SidebarLink = (props) => {
|
|
|
120574
120618
|
label
|
|
120575
120619
|
);
|
|
120576
120620
|
};
|
|
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
120621
|
const ErrorDialog = (props) => {
|
|
120592
120622
|
return /* @__PURE__ */ React__default.createElement(
|
|
120593
120623
|
"div",
|
|
@@ -120752,7 +120782,7 @@ const PageWrapper = ({
|
|
|
120752
120782
|
headerClassName,
|
|
120753
120783
|
children
|
|
120754
120784
|
}) => {
|
|
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
|
|
120785
|
+
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
120786
|
};
|
|
120757
120787
|
const PageHeader = ({
|
|
120758
120788
|
children
|
|
@@ -122172,20 +122202,27 @@ const RenderForm$1 = ({
|
|
|
122172
122202
|
].filter((x) => !!x),
|
|
122173
122203
|
onSubmit: async (values) => {
|
|
122174
122204
|
try {
|
|
122175
|
-
const folderName2 = folder.fullyQualifiedName ? folder.name : "";
|
|
122176
122205
|
await createDocument(
|
|
122177
122206
|
cms,
|
|
122178
122207
|
collection,
|
|
122179
122208
|
template,
|
|
122180
122209
|
mutationInfo,
|
|
122181
|
-
|
|
122210
|
+
folderName,
|
|
122182
122211
|
values
|
|
122183
122212
|
);
|
|
122184
122213
|
cms.alerts.success("Document created!");
|
|
122214
|
+
const { filename } = values;
|
|
122215
|
+
let editPath;
|
|
122216
|
+
if (filename.startsWith("/")) {
|
|
122217
|
+
const filenameWithoutSlash = filename.substring(1);
|
|
122218
|
+
editPath = `/collections/edit/${collection.name}/${filenameWithoutSlash}`;
|
|
122219
|
+
} else if (folder.fullyQualifiedName) {
|
|
122220
|
+
editPath = `/collections/edit/${collection.name}/~/${folderName}/${filename}`;
|
|
122221
|
+
} else {
|
|
122222
|
+
editPath = `/collections/edit/${collection.name}/${filename}`;
|
|
122223
|
+
}
|
|
122185
122224
|
setTimeout(() => {
|
|
122186
|
-
navigate(
|
|
122187
|
-
`/collections/${collection.name}${folder.fullyQualifiedName ? `/${folder.fullyQualifiedName}` : ""}`
|
|
122188
|
-
);
|
|
122225
|
+
navigate(editPath);
|
|
122189
122226
|
}, 10);
|
|
122190
122227
|
} catch (error2) {
|
|
122191
122228
|
console.error(error2);
|
|
@@ -122485,7 +122522,7 @@ const ScreenPage = () => {
|
|
|
122485
122522
|
const selectedScreen = screens.find(
|
|
122486
122523
|
({ name }) => slugify(name) === screenName
|
|
122487
122524
|
);
|
|
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
|
|
122525
|
+
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
122526
|
"div",
|
|
122490
122527
|
{
|
|
122491
122528
|
className: `xl:hidden pl-6 py-5 border-b border-gray-200 bg-white`
|
|
@@ -122712,7 +122749,7 @@ const DefaultWrapper = ({
|
|
|
122712
122749
|
cms,
|
|
122713
122750
|
children
|
|
122714
122751
|
}) => {
|
|
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)));
|
|
122752
|
+
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
122753
|
};
|
|
122717
122754
|
const PlainLayout = ({ children }) => {
|
|
122718
122755
|
return /* @__PURE__ */ React__default.createElement(
|
|
@@ -123001,6 +123038,9 @@ export {
|
|
|
123001
123038
|
ModalProvider,
|
|
123002
123039
|
NAMER,
|
|
123003
123040
|
Nav,
|
|
123041
|
+
NavCloudLink,
|
|
123042
|
+
NavMenuTrigger,
|
|
123043
|
+
NavProvider,
|
|
123004
123044
|
NumberField,
|
|
123005
123045
|
NumberFieldPlugin,
|
|
123006
123046
|
NumberInput,
|
|
@@ -123094,6 +123134,7 @@ export {
|
|
|
123094
123134
|
useFormPortal,
|
|
123095
123135
|
useLocalStorage,
|
|
123096
123136
|
useModalContainer,
|
|
123137
|
+
useNav,
|
|
123097
123138
|
useScreenPlugin,
|
|
123098
123139
|
useTinaAuthRedirect,
|
|
123099
123140
|
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
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "tinacms",
|
|
3
3
|
"type": "module",
|
|
4
4
|
"typings": "dist/index.d.ts",
|
|
5
|
-
"version": "0.0.0-
|
|
5
|
+
"version": "0.0.0-a3cc5b1-20251202013216",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"module": "./dist/index.js",
|
|
8
8
|
"exports": {
|
|
@@ -117,9 +117,9 @@
|
|
|
117
117
|
"webfontloader": "1.6.28",
|
|
118
118
|
"yup": "^1.6.1",
|
|
119
119
|
"zod": "^3.24.2",
|
|
120
|
-
"@tinacms/mdx": "
|
|
121
|
-
"@tinacms/schema-tools": "
|
|
122
|
-
"@tinacms/search": "
|
|
120
|
+
"@tinacms/mdx": "2.0.0",
|
|
121
|
+
"@tinacms/schema-tools": "2.0.0",
|
|
122
|
+
"@tinacms/search": "1.1.4"
|
|
123
123
|
},
|
|
124
124
|
"devDependencies": {
|
|
125
125
|
"@graphql-tools/utils": "^10.8.1",
|
|
File without changes
|