@payloadcms/next 3.60.0-internal.8e20fed → 3.60.0-internal.c277fd4

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.
Files changed (32) hide show
  1. package/dist/elements/Nav/SettingsMenuButton/index.d.ts +7 -0
  2. package/dist/elements/Nav/SettingsMenuButton/index.d.ts.map +1 -0
  3. package/dist/elements/Nav/SettingsMenuButton/index.js +45 -0
  4. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -0
  5. package/dist/elements/Nav/SettingsMenuButton/index.scss +11 -0
  6. package/dist/elements/Nav/index.d.ts.map +1 -1
  7. package/dist/elements/Nav/index.js +25 -3
  8. package/dist/elements/Nav/index.js.map +1 -1
  9. package/dist/elements/Nav/index.scss +14 -4
  10. package/dist/exports/utilities.d.ts +2 -2
  11. package/dist/exports/views.d.ts +1 -0
  12. package/dist/exports/views.d.ts.map +1 -1
  13. package/dist/exports/views.js +1 -0
  14. package/dist/exports/views.js.map +1 -1
  15. package/dist/prod/styles.css +1 -1
  16. package/dist/views/Document/getCustomDocumentViewByKey.d.ts +3 -0
  17. package/dist/views/Document/getCustomDocumentViewByKey.d.ts.map +1 -0
  18. package/dist/views/Document/{getCustomViewByKey.js → getCustomDocumentViewByKey.js} +2 -2
  19. package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -0
  20. package/dist/views/Document/getDocumentView.js +15 -15
  21. package/dist/views/Document/getDocumentView.js.map +1 -1
  22. package/dist/views/Root/getCustomViewByKey.d.ts +10 -0
  23. package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -0
  24. package/dist/views/Root/getCustomViewByKey.js +16 -0
  25. package/dist/views/Root/getCustomViewByKey.js.map +1 -0
  26. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  27. package/dist/views/Root/getRouteData.js +28 -1
  28. package/dist/views/Root/getRouteData.js.map +1 -1
  29. package/package.json +7 -7
  30. package/dist/views/Document/getCustomViewByKey.d.ts +0 -3
  31. package/dist/views/Document/getCustomViewByKey.d.ts.map +0 -1
  32. package/dist/views/Document/getCustomViewByKey.js.map +0 -1
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import './index.scss';
3
+ export type SettingsMenuButtonProps = {
4
+ settingsMenu?: React.ReactNode[];
5
+ };
6
+ export declare const SettingsMenuButton: React.FC<SettingsMenuButtonProps>;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Nav/SettingsMenuButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,uBAAuB,GAAG;IACpC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAqBhE,CAAA"}
@@ -0,0 +1,45 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ import { GearIcon, Popup, useTranslation } from '@payloadcms/ui';
6
+ import React, { Fragment } from 'react';
7
+ const baseClass = 'settings-menu-button';
8
+ export const SettingsMenuButton = t0 => {
9
+ const $ = _c(3);
10
+ const {
11
+ settingsMenu
12
+ } = t0;
13
+ const {
14
+ t
15
+ } = useTranslation();
16
+ if (!settingsMenu || settingsMenu.length === 0) {
17
+ return null;
18
+ }
19
+ let t1;
20
+ if ($[0] !== settingsMenu || $[1] !== t) {
21
+ t1 = _jsx(Popup, {
22
+ button: _jsx(GearIcon, {
23
+ ariaLabel: t("general:menu")
24
+ }),
25
+ className: baseClass,
26
+ horizontalAlign: "left",
27
+ id: "settings-menu",
28
+ size: "small",
29
+ verticalAlign: "bottom",
30
+ children: settingsMenu.map(_temp)
31
+ });
32
+ $[0] = settingsMenu;
33
+ $[1] = t;
34
+ $[2] = t1;
35
+ } else {
36
+ t1 = $[2];
37
+ }
38
+ return t1;
39
+ };
40
+ function _temp(item, i) {
41
+ return _jsx(Fragment, {
42
+ children: item
43
+ }, `settings-menu-item-${i}`);
44
+ }
45
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["c","_c","GearIcon","Popup","useTranslation","React","Fragment","baseClass","SettingsMenuButton","t0","$","settingsMenu","t","length","t1","_jsx","button","ariaLabel","id","size","verticalAlign","children","map","_temp","item","i"],"sources":["../../../../src/elements/Nav/SettingsMenuButton/index.tsx"],"sourcesContent":["'use client'\nimport { GearIcon, Popup, useTranslation } from '@payloadcms/ui'\nimport React, { Fragment } from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'settings-menu-button'\n\nexport type SettingsMenuButtonProps = {\n settingsMenu?: React.ReactNode[]\n}\n\nexport const SettingsMenuButton: React.FC<SettingsMenuButtonProps> = ({ settingsMenu }) => {\n const { t } = useTranslation()\n\n if (!settingsMenu || settingsMenu.length === 0) {\n return null\n }\n\n return (\n <Popup\n button={<GearIcon ariaLabel={t('general:menu')} />}\n className={baseClass}\n horizontalAlign=\"left\"\n id=\"settings-menu\"\n size=\"small\"\n verticalAlign=\"bottom\"\n >\n {settingsMenu.map((item, i) => (\n <Fragment key={`settings-menu-item-${i}`}>{item}</Fragment>\n ))}\n </Popup>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,QAAQ,EAAEC,KAAK,EAAEC,cAAc,QAAQ;AAChD,OAAOC,KAAA,IAASC,QAAQ,QAAQ;AAIhC,MAAMC,SAAA,GAAY;AAMlB,OAAO,MAAMC,kBAAA,GAAwDC,EAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAAC;IAAAU;EAAA,IAAAF,EAAgB;EACpF;IAAAG;EAAA,IAAcR,cAAA;EAAA,IAEV,CAACO,YAAA,IAAgBA,YAAA,CAAAE,MAAA,MAAwB;IAAA;EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAJ,CAAA,QAAAC,YAAA,IAAAD,CAAA,QAAAE,CAAA;IAK3CE,EAAA,GAAAC,IAAA,CAAAZ,KAAA;MAAAa,MAAA,EACUD,IAAA,CAAAb,QAAA;QAAAe,SAAA,EAAqBL,CAAA,CAAE;MAAA,C;;uBAEf;MAAAM,EAAA,EACb;MAAAC,IAAA,EACE;MAAAC,aAAA,EACS;MAAAC,QAAA,EAEbV,YAAA,CAAAW,GAAA,CAAAC,KACyC;IAAA,C;;;;;;;SAT5CT,E;CAaJ;AArBqE,SAAAS,MAAAC,IAAA,EAAAC,CAAA;EAAA,OAiB7DV,IAAA,CAAAT,QAAA;IAAAe,QAAA,EAA2CG;EAAA,GAA5B,sBAAsBC,CAAA,EAAG;AAAA","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ @import '~@payloadcms/ui/scss';
2
+
3
+ @layer payload-default {
4
+ .settings-menu-button {
5
+ &.popup--h-align-left {
6
+ .popup__content {
7
+ left: calc(var(--nav-padding-inline-start) * -0.5);
8
+ }
9
+ }
10
+ }
11
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Nav/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAK1D,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,cAAc,CAAA;AAOrB,MAAM,MAAM,QAAQ,GAAG;IACrB,GAAG,CAAC,EAAE,cAAc,CAAA;CACrB,GAAG,WAAW,CAAA;AAEf,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,CAwHzC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Nav/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAK1D,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,cAAc,CAAA;AAOrB,MAAM,MAAM,QAAQ,GAAG;IACrB,GAAG,CAAC,EAAE,cAAc,CAAA;CACrB,GAAG,WAAW,CAAA;AAEf,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,CAmJzC,CAAA"}
@@ -5,6 +5,7 @@ import { EntityType, groupNavItems } from '@payloadcms/ui/shared';
5
5
  import React from 'react';
6
6
  import { NavHamburger } from './NavHamburger/index.js';
7
7
  import { NavWrapper } from './NavWrapper/index.js';
8
+ import { SettingsMenuButton } from './SettingsMenuButton/index.js';
8
9
  const baseClass = 'nav';
9
10
  import { getNavPrefs } from './getNavPrefs.js';
10
11
  import { DefaultNavClient } from './index.client.js';
@@ -30,7 +31,8 @@ export const DefaultNav = async props => {
30
31
  components: {
31
32
  afterNavLinks,
32
33
  beforeNavLinks,
33
- logout
34
+ logout,
35
+ settingsMenu
34
36
  }
35
37
  },
36
38
  collections,
@@ -66,6 +68,24 @@ export const DefaultNav = async props => {
66
68
  user
67
69
  }
68
70
  });
71
+ const renderedSettingsMenu = settingsMenu && Array.isArray(settingsMenu) ? settingsMenu.map((item, index) => RenderServerComponent({
72
+ clientProps: {
73
+ documentSubViewType,
74
+ viewType
75
+ },
76
+ Component: item,
77
+ importMap: payload.importMap,
78
+ key: `settings-menu-item-${index}`,
79
+ serverProps: {
80
+ i18n,
81
+ locale,
82
+ params,
83
+ payload,
84
+ permissions,
85
+ searchParams,
86
+ user
87
+ }
88
+ })) : [];
69
89
  return /*#__PURE__*/_jsxs(NavWrapper, {
70
90
  baseClass: baseClass,
71
91
  children: [/*#__PURE__*/_jsxs("nav", {
@@ -105,9 +125,11 @@ export const DefaultNav = async props => {
105
125
  searchParams,
106
126
  user
107
127
  }
108
- }), /*#__PURE__*/_jsx("div", {
128
+ }), /*#__PURE__*/_jsxs("div", {
109
129
  className: `${baseClass}__controls`,
110
- children: LogoutComponent
130
+ children: [/*#__PURE__*/_jsx(SettingsMenuButton, {
131
+ settingsMenu: renderedSettingsMenu
132
+ }), LogoutComponent]
111
133
  })]
112
134
  }), /*#__PURE__*/_jsx("div", {
113
135
  className: `${baseClass}__header`,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Logout","RenderServerComponent","EntityType","groupNavItems","React","NavHamburger","NavWrapper","baseClass","getNavPrefs","DefaultNavClient","DefaultNav","props","documentSubViewType","i18n","locale","params","payload","permissions","req","searchParams","user","viewType","visibleEntities","config","admin","components","afterNavLinks","beforeNavLinks","logout","collections","globals","groups","filter","slug","includes","map","collection","type","entity","global","navPreferences","LogoutComponent","clientProps","Component","Button","Fallback","importMap","serverProps","_jsxs","className","_jsx"],"sources":["../../../src/elements/Nav/index.tsx"],"sourcesContent":["import type { EntityToGroup } from '@payloadcms/ui/shared'\nimport type { PayloadRequest, ServerProps } from 'payload'\n\nimport { Logout } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { EntityType, groupNavItems } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nimport { NavHamburger } from './NavHamburger/index.js'\nimport { NavWrapper } from './NavWrapper/index.js'\nimport './index.scss'\n\nconst baseClass = 'nav'\n\nimport { getNavPrefs } from './getNavPrefs.js'\nimport { DefaultNavClient } from './index.client.js'\n\nexport type NavProps = {\n req?: PayloadRequest\n} & ServerProps\n\nexport const DefaultNav: React.FC<NavProps> = async (props) => {\n const {\n documentSubViewType,\n i18n,\n locale,\n params,\n payload,\n permissions,\n req,\n searchParams,\n user,\n viewType,\n visibleEntities,\n } = props\n\n if (!payload?.config) {\n return null\n }\n\n const {\n admin: {\n components: { afterNavLinks, beforeNavLinks, logout },\n },\n collections,\n globals,\n } = payload.config\n\n const groups = groupNavItems(\n [\n ...collections\n .filter(({ slug }) => visibleEntities.collections.includes(slug))\n .map(\n (collection) =>\n ({\n type: EntityType.collection,\n entity: collection,\n }) satisfies EntityToGroup,\n ),\n ...globals\n .filter(({ slug }) => visibleEntities.globals.includes(slug))\n .map(\n (global) =>\n ({\n type: EntityType.global,\n entity: global,\n }) satisfies EntityToGroup,\n ),\n ],\n permissions,\n i18n,\n )\n\n const navPreferences = await getNavPrefs(req)\n\n const LogoutComponent = RenderServerComponent({\n clientProps: {\n documentSubViewType,\n viewType,\n },\n Component: logout?.Button,\n Fallback: Logout,\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n },\n })\n\n return (\n <NavWrapper baseClass={baseClass}>\n <nav className={`${baseClass}__wrap`}>\n {RenderServerComponent({\n clientProps: {\n documentSubViewType,\n viewType,\n },\n Component: beforeNavLinks,\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n },\n })}\n <DefaultNavClient groups={groups} navPreferences={navPreferences} />\n {RenderServerComponent({\n clientProps: {\n documentSubViewType,\n viewType,\n },\n Component: afterNavLinks,\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n },\n })}\n <div className={`${baseClass}__controls`}>{LogoutComponent}</div>\n </nav>\n <div className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-content`}>\n <NavHamburger baseClass={baseClass} />\n </div>\n </div>\n </NavWrapper>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Logout","RenderServerComponent","EntityType","groupNavItems","React","NavHamburger","NavWrapper","SettingsMenuButton","baseClass","getNavPrefs","DefaultNavClient","DefaultNav","props","documentSubViewType","i18n","locale","params","payload","permissions","req","searchParams","user","viewType","visibleEntities","config","admin","components","afterNavLinks","beforeNavLinks","logout","settingsMenu","collections","globals","groups","filter","slug","includes","map","collection","type","entity","global","navPreferences","LogoutComponent","clientProps","Component","Button","Fallback","importMap","serverProps","renderedSettingsMenu","Array","isArray","item","index","key","_jsxs","className","_jsx"],"sources":["../../../src/elements/Nav/index.tsx"],"sourcesContent":["import type { EntityToGroup } from '@payloadcms/ui/shared'\nimport type { PayloadRequest, ServerProps } from 'payload'\n\nimport { Logout } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { EntityType, groupNavItems } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nimport { NavHamburger } from './NavHamburger/index.js'\nimport { NavWrapper } from './NavWrapper/index.js'\nimport { SettingsMenuButton } from './SettingsMenuButton/index.js'\nimport './index.scss'\n\nconst baseClass = 'nav'\n\nimport { getNavPrefs } from './getNavPrefs.js'\nimport { DefaultNavClient } from './index.client.js'\n\nexport type NavProps = {\n req?: PayloadRequest\n} & ServerProps\n\nexport const DefaultNav: React.FC<NavProps> = async (props) => {\n const {\n documentSubViewType,\n i18n,\n locale,\n params,\n payload,\n permissions,\n req,\n searchParams,\n user,\n viewType,\n visibleEntities,\n } = props\n\n if (!payload?.config) {\n return null\n }\n\n const {\n admin: {\n components: { afterNavLinks, beforeNavLinks, logout, settingsMenu },\n },\n collections,\n globals,\n } = payload.config\n\n const groups = groupNavItems(\n [\n ...collections\n .filter(({ slug }) => visibleEntities.collections.includes(slug))\n .map(\n (collection) =>\n ({\n type: EntityType.collection,\n entity: collection,\n }) satisfies EntityToGroup,\n ),\n ...globals\n .filter(({ slug }) => visibleEntities.globals.includes(slug))\n .map(\n (global) =>\n ({\n type: EntityType.global,\n entity: global,\n }) satisfies EntityToGroup,\n ),\n ],\n permissions,\n i18n,\n )\n\n const navPreferences = await getNavPrefs(req)\n\n const LogoutComponent = RenderServerComponent({\n clientProps: {\n documentSubViewType,\n viewType,\n },\n Component: logout?.Button,\n Fallback: Logout,\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n },\n })\n\n const renderedSettingsMenu =\n settingsMenu && Array.isArray(settingsMenu)\n ? settingsMenu.map((item, index) =>\n RenderServerComponent({\n clientProps: {\n documentSubViewType,\n viewType,\n },\n Component: item,\n importMap: payload.importMap,\n key: `settings-menu-item-${index}`,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n },\n }),\n )\n : []\n\n return (\n <NavWrapper baseClass={baseClass}>\n <nav className={`${baseClass}__wrap`}>\n {RenderServerComponent({\n clientProps: {\n documentSubViewType,\n viewType,\n },\n Component: beforeNavLinks,\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n },\n })}\n <DefaultNavClient groups={groups} navPreferences={navPreferences} />\n {RenderServerComponent({\n clientProps: {\n documentSubViewType,\n viewType,\n },\n Component: afterNavLinks,\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n },\n })}\n <div className={`${baseClass}__controls`}>\n <SettingsMenuButton settingsMenu={renderedSettingsMenu} />\n {LogoutComponent}\n </div>\n </nav>\n <div className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-content`}>\n <NavHamburger baseClass={baseClass} />\n </div>\n </div>\n </NavWrapper>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -11,6 +11,10 @@
11
11
  border-right: 1px solid var(--theme-elevation-100);
12
12
  opacity: 0;
13
13
  overflow: hidden;
14
+ --nav-padding-inline-start: var(--base);
15
+ --nav-padding-inline-end: var(--base);
16
+ --nav-padding-block-start: var(--app-header-height);
17
+ --nav-padding-block-end: calc(var(--base) * 2);
14
18
 
15
19
  [dir='rtl'] & {
16
20
  border-right: none;
@@ -51,7 +55,8 @@
51
55
  height: 100%;
52
56
  display: flex;
53
57
  flex-direction: column;
54
- padding: var(--app-header-height) base(1) base(2) base(1);
58
+ padding: var(--nav-padding-block-start) var(--nav-padding-inline-end)
59
+ var(--nav-padding-block-end) var(--nav-padding-inline-start);
55
60
  overflow-y: auto;
56
61
 
57
62
  // remove the scrollbar here to prevent layout shift as nav groups are toggled
@@ -73,10 +78,13 @@
73
78
  }
74
79
 
75
80
  &__controls {
81
+ display: flex;
82
+ flex-direction: column;
83
+ gap: base(0.75);
76
84
  margin-top: auto;
77
85
  margin-bottom: 0;
78
86
 
79
- > * {
87
+ > :first-child {
80
88
  margin-top: base(1);
81
89
  }
82
90
 
@@ -140,13 +148,15 @@
140
148
 
141
149
  @include mid-break {
142
150
  &__scroll {
143
- padding: var(--app-header-height) base(0.5) base(2);
151
+ --nav-padding-inline-start: calc(var(--base) * 0.5);
152
+ --nav-padding-inline-end: calc(var(--base) * 0.5);
144
153
  }
145
154
  }
146
155
 
147
156
  @include small-break {
148
157
  &__scroll {
149
- padding: var(--app-header-height) var(--gutter-h) base(2);
158
+ --nav-padding-inline-start: var(--gutter-h);
159
+ --nav-padding-inline-end: var(--gutter-h);
150
160
  }
151
161
 
152
162
  &__link {
@@ -51,11 +51,11 @@ export declare const addDataAndFileToRequest: (req: import("payload").PayloadReq
51
51
  * ```
52
52
  */
53
53
  export declare const sanitizeLocales: ({ fallbackLocale, locale, localization, }: {
54
- fallbackLocale: string;
54
+ fallbackLocale: string | string[];
55
55
  locale: string;
56
56
  localization: import("payload").SanitizedConfig["localization"];
57
57
  }) => {
58
- fallbackLocale?: string;
58
+ fallbackLocale?: string | string[];
59
59
  locale?: string;
60
60
  };
61
61
  /**
@@ -1,4 +1,5 @@
1
1
  export { AccountView } from '../views/Account/index.js';
2
+ export { CreateFirstUserView } from '../views/CreateFirstUser/index.js';
2
3
  export { type DashboardViewClientProps, type DashboardViewServerProps, type DashboardViewServerPropsOnly, DefaultDashboard, } from '../views/Dashboard/Default/index.js';
3
4
  export { DashboardView } from '../views/Dashboard/index.js';
4
5
  export { ListView, renderListView, type RenderListViewArgs } from '../views/List/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"views.d.ts","sourceRoot":"","sources":["../../src/exports/views.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,4BAA4B,EACjC,gBAAgB,GACjB,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAE3D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC1F,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEzD,OAAO,EAAE,KAAK,oBAAoB,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA"}
1
+ {"version":3,"file":"views.d.ts","sourceRoot":"","sources":["../../src/exports/views.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AACvE,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,4BAA4B,EACjC,gBAAgB,GACjB,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAE3D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC1F,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEzD,OAAO,EAAE,KAAK,oBAAoB,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export { AccountView } from '../views/Account/index.js';
2
+ export { CreateFirstUserView } from '../views/CreateFirstUser/index.js';
2
3
  export { DefaultDashboard } from '../views/Dashboard/Default/index.js';
3
4
  export { DashboardView } from '../views/Dashboard/index.js';
4
5
  export { ListView, renderListView } from '../views/List/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"views.js","names":["AccountView","DefaultDashboard","DashboardView","ListView","renderListView","LoginView","NotFoundPage","RootPage","generatePageMetadata"],"sources":["../../src/exports/views.ts"],"sourcesContent":["export { AccountView } from '../views/Account/index.js'\nexport {\n type DashboardViewClientProps,\n type DashboardViewServerProps,\n type DashboardViewServerPropsOnly,\n DefaultDashboard,\n} from '../views/Dashboard/Default/index.js'\nexport { DashboardView } from '../views/Dashboard/index.js'\n\nexport { ListView, renderListView, type RenderListViewArgs } from '../views/List/index.js'\nexport { LoginView } from '../views/Login/index.js'\nexport { NotFoundPage } from '../views/NotFound/index.js'\n\nexport { type GenerateViewMetadata, RootPage } from '../views/Root/index.js'\nexport { generatePageMetadata } from '../views/Root/metadata.js'\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ;AAC5B,SAIEC,gBAAgB,QACX;AACP,SAASC,aAAa,QAAQ;AAE9B,SAASC,QAAQ,EAAEC,cAAc,QAAiC;AAClE,SAASC,SAAS,QAAQ;AAC1B,SAASC,YAAY,QAAQ;AAE7B,SAAoCC,QAAQ,QAAQ;AACpD,SAASC,oBAAoB,QAAQ","ignoreList":[]}
1
+ {"version":3,"file":"views.js","names":["AccountView","CreateFirstUserView","DefaultDashboard","DashboardView","ListView","renderListView","LoginView","NotFoundPage","RootPage","generatePageMetadata"],"sources":["../../src/exports/views.ts"],"sourcesContent":["export { AccountView } from '../views/Account/index.js'\nexport { CreateFirstUserView } from '../views/CreateFirstUser/index.js'\nexport {\n type DashboardViewClientProps,\n type DashboardViewServerProps,\n type DashboardViewServerPropsOnly,\n DefaultDashboard,\n} from '../views/Dashboard/Default/index.js'\nexport { DashboardView } from '../views/Dashboard/index.js'\n\nexport { ListView, renderListView, type RenderListViewArgs } from '../views/List/index.js'\nexport { LoginView } from '../views/Login/index.js'\nexport { NotFoundPage } from '../views/NotFound/index.js'\n\nexport { type GenerateViewMetadata, RootPage } from '../views/Root/index.js'\nexport { generatePageMetadata } from '../views/Root/metadata.js'\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ;AAC5B,SAASC,mBAAmB,QAAQ;AACpC,SAIEC,gBAAgB,QACX;AACP,SAASC,aAAa,QAAQ;AAE9B,SAASC,QAAQ,EAAEC,cAAc,QAAiC;AAClE,SAASC,SAAS,QAAQ;AAC1B,SAASC,YAAY,QAAQ;AAE7B,SAAoCC,QAAQ,QAAQ;AACpD,SAASC,oBAAoB,QAAQ","ignoreList":[]}