@payloadcms/ui 3.59.0-internal.fae0e05 → 3.59.0-internal.ff6711a

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 (70) hide show
  1. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  2. package/dist/elements/CodeEditor/CodeEditor.js +2 -2
  3. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  4. package/dist/elements/Collapsible/index.d.ts +15 -2
  5. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  6. package/dist/elements/Collapsible/index.js +59 -60
  7. package/dist/elements/Collapsible/index.js.map +1 -1
  8. package/dist/elements/Collapsible/index.scss +6 -2
  9. package/dist/elements/DocumentLocked/index.js +1 -1
  10. package/dist/elements/DocumentLocked/index.js.map +1 -1
  11. package/dist/elements/GroupByBuilder/index.js +1 -1
  12. package/dist/elements/GroupByBuilder/index.js.map +1 -1
  13. package/dist/elements/LivePreview/Toggler/index.d.ts.map +1 -1
  14. package/dist/elements/LivePreview/Toggler/index.js +5 -1
  15. package/dist/elements/LivePreview/Toggler/index.js.map +1 -1
  16. package/dist/elements/Nav/context.d.ts +6 -0
  17. package/dist/elements/Nav/context.d.ts.map +1 -1
  18. package/dist/elements/Nav/context.js +6 -0
  19. package/dist/elements/Nav/context.js.map +1 -1
  20. package/dist/elements/PageControls/index.d.ts +9 -0
  21. package/dist/elements/PageControls/index.d.ts.map +1 -1
  22. package/dist/elements/PageControls/index.js +101 -45
  23. package/dist/elements/PageControls/index.js.map +1 -1
  24. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  25. package/dist/elements/RelationshipTable/index.js +3 -2
  26. package/dist/elements/RelationshipTable/index.js.map +1 -1
  27. package/dist/elements/StickyToolbar/index.d.ts +3 -0
  28. package/dist/elements/StickyToolbar/index.d.ts.map +1 -1
  29. package/dist/elements/StickyToolbar/index.js +3 -0
  30. package/dist/elements/StickyToolbar/index.js.map +1 -1
  31. package/dist/elements/Table/index.scss +1 -0
  32. package/dist/exports/client/{CodeEditor-B56LZ4XC.js → CodeEditor-2AHTKKBE.js} +2 -2
  33. package/dist/exports/client/{chunk-IOKOROQ2.js → chunk-6UH4KUYK.js} +4 -4
  34. package/dist/exports/client/chunk-6UH4KUYK.js.map +7 -0
  35. package/dist/exports/client/index.d.ts +6 -1
  36. package/dist/exports/client/index.d.ts.map +1 -1
  37. package/dist/exports/client/index.js +12 -12
  38. package/dist/exports/client/index.js.map +4 -4
  39. package/dist/fields/Code/index.d.ts.map +1 -1
  40. package/dist/fields/Code/index.js +3 -1
  41. package/dist/fields/Code/index.js.map +1 -1
  42. package/dist/fields/Upload/RelationshipContent/index.js +1 -1
  43. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  44. package/dist/hooks/useControllableState.d.ts +2 -0
  45. package/dist/hooks/useControllableState.d.ts.map +1 -1
  46. package/dist/hooks/useControllableState.js +44 -11
  47. package/dist/hooks/useControllableState.js.map +1 -1
  48. package/dist/providers/LivePreview/context.d.ts +2 -2
  49. package/dist/providers/LivePreview/context.d.ts.map +1 -1
  50. package/dist/providers/LivePreview/context.js.map +1 -1
  51. package/dist/providers/LivePreview/index.d.ts.map +1 -1
  52. package/dist/providers/LivePreview/index.js +10 -2
  53. package/dist/providers/LivePreview/index.js.map +1 -1
  54. package/dist/styles.css +1 -1
  55. package/dist/utilities/dateLocales.d.ts +1 -0
  56. package/dist/utilities/dateLocales.d.ts.map +1 -1
  57. package/dist/utilities/dateLocales.js +2 -0
  58. package/dist/utilities/dateLocales.js.map +1 -1
  59. package/dist/utilities/getColumns.js +1 -1
  60. package/dist/utilities/getColumns.js.map +1 -1
  61. package/dist/utilities/handleLivePreview.d.ts +3 -3
  62. package/dist/utilities/handleLivePreview.d.ts.map +1 -1
  63. package/dist/utilities/handleLivePreview.js.map +1 -1
  64. package/dist/views/Edit/index.d.ts +1 -1
  65. package/dist/views/Edit/index.d.ts.map +1 -1
  66. package/dist/views/Edit/index.js +17 -9
  67. package/dist/views/Edit/index.js.map +1 -1
  68. package/package.json +5 -5
  69. package/dist/exports/client/chunk-IOKOROQ2.js.map +0 -7
  70. /package/dist/exports/client/{CodeEditor-B56LZ4XC.js.map → CodeEditor-2AHTKKBE.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":["useWindowInfo","usePathname","React","useEffect","useRef","usePreferences","NavContext","createContext","hydrated","navOpen","navRef","setNavOpen","shouldAnimate","useNav","use","getNavPreference","getPreference","navPrefs","preferredState","open","NavProvider","children","initialIsOpen","breakpoints","l","largeBreak","m","midBreak","s","smallBreak","pathname","useState","setShouldAnimate","setHydrated","setNavFromPreferences","current","style","overscrollBehavior","timeout","setTimeout","clearTimeout","_jsx","value"],"sources":["../../../src/elements/Nav/context.tsx"],"sourcesContent":["'use client'\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport { usePathname } from 'next/navigation.js'\nimport React, { useEffect, useRef } from 'react'\n\nimport { usePreferences } from '../../providers/Preferences/index.js'\n\ntype NavContextType = {\n hydrated: boolean\n navOpen: boolean\n navRef: React.RefObject<HTMLDivElement | null>\n setNavOpen: (value: boolean) => void\n shouldAnimate: boolean\n}\n\nexport const NavContext = React.createContext<NavContextType>({\n hydrated: false,\n navOpen: true,\n navRef: null,\n setNavOpen: () => {},\n shouldAnimate: false,\n})\n\nexport const useNav = () => React.use(NavContext)\n\nconst getNavPreference = async (getPreference): Promise<boolean> => {\n const navPrefs = await getPreference('nav')\n const preferredState = navPrefs?.open\n if (typeof preferredState === 'boolean') {\n return preferredState\n } else {\n return true\n }\n}\n\nexport const NavProvider: React.FC<{\n children: React.ReactNode\n initialIsOpen?: boolean\n}> = ({ children, initialIsOpen }) => {\n const {\n breakpoints: { l: largeBreak, m: midBreak, s: smallBreak },\n } = useWindowInfo()\n\n const pathname = usePathname()\n\n const { getPreference } = usePreferences()\n const navRef = useRef(null)\n\n // initialize the nav to be closed\n // this is because getting the preference is async\n // so instead of closing it after the preference is loaded\n // we will open it after the preference is loaded\n const [navOpen, setNavOpen] = React.useState(initialIsOpen)\n\n const [shouldAnimate, setShouldAnimate] = React.useState(false)\n const [hydrated, setHydrated] = React.useState(false)\n\n // on load check the user's preference and set \"initial\" state\n useEffect(() => {\n if (largeBreak === false) {\n const setNavFromPreferences = async () => {\n const preferredState = await getNavPreference(getPreference)\n setNavOpen(preferredState)\n }\n\n void setNavFromPreferences()\n }\n }, [largeBreak, getPreference, setNavOpen])\n\n // on smaller screens where the nav is a modal\n // close the nav when the user navigates away\n useEffect(() => {\n if (smallBreak === true) {\n setNavOpen(false)\n }\n }, [pathname])\n\n // on open and close, lock the body scroll\n // do not do this on desktop, the sidebar is not a modal\n useEffect(() => {\n if (navRef.current) {\n if (navOpen && midBreak) {\n navRef.current.style.overscrollBehavior = 'contain'\n } else {\n navRef.current.style.overscrollBehavior = 'auto'\n }\n }\n }, [navOpen, midBreak])\n\n // on smaller screens where the nav is a modal\n // close the nav when the user resizes down to mobile\n // the sidebar is a modal on mobile\n useEffect(() => {\n if (largeBreak === true || midBreak === true || smallBreak === true) {\n setNavOpen(false)\n }\n setHydrated(true)\n\n const timeout = setTimeout(() => {\n setShouldAnimate(true)\n }, 100)\n return () => {\n clearTimeout(timeout)\n }\n }, [largeBreak, midBreak, smallBreak])\n\n // when the component unmounts, clear all body scroll locks\n useEffect(() => {\n return () => {\n if (navRef.current) {\n navRef.current.style.overscrollBehavior = 'auto'\n }\n }\n }, [])\n\n return (\n <NavContext value={{ hydrated, navOpen, navRef, setNavOpen, shouldAnimate }}>\n {children}\n </NavContext>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"context.js","names":["useWindowInfo","usePathname","React","useEffect","useRef","usePreferences","NavContext","createContext","hydrated","navOpen","navRef","setNavOpen","shouldAnimate","useNav","use","getNavPreference","getPreference","navPrefs","preferredState","open","NavProvider","children","initialIsOpen","breakpoints","l","largeBreak","m","midBreak","s","smallBreak","pathname","useState","setShouldAnimate","setHydrated","setNavFromPreferences","current","style","overscrollBehavior","timeout","setTimeout","clearTimeout","_jsx","value"],"sources":["../../../src/elements/Nav/context.tsx"],"sourcesContent":["'use client'\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport { usePathname } from 'next/navigation.js'\nimport React, { useEffect, useRef } from 'react'\n\nimport { usePreferences } from '../../providers/Preferences/index.js'\n\ntype NavContextType = {\n hydrated: boolean\n navOpen: boolean\n navRef: React.RefObject<HTMLDivElement | null>\n setNavOpen: (value: boolean) => void\n shouldAnimate: boolean\n}\n\n/**\n * @internal\n */\nexport const NavContext = React.createContext<NavContextType>({\n hydrated: false,\n navOpen: true,\n navRef: null,\n setNavOpen: () => {},\n shouldAnimate: false,\n})\n\nexport const useNav = () => React.use(NavContext)\n\nconst getNavPreference = async (getPreference): Promise<boolean> => {\n const navPrefs = await getPreference('nav')\n const preferredState = navPrefs?.open\n if (typeof preferredState === 'boolean') {\n return preferredState\n } else {\n return true\n }\n}\n\n/**\n * @internal\n */\nexport const NavProvider: React.FC<{\n children: React.ReactNode\n initialIsOpen?: boolean\n}> = ({ children, initialIsOpen }) => {\n const {\n breakpoints: { l: largeBreak, m: midBreak, s: smallBreak },\n } = useWindowInfo()\n\n const pathname = usePathname()\n\n const { getPreference } = usePreferences()\n const navRef = useRef(null)\n\n // initialize the nav to be closed\n // this is because getting the preference is async\n // so instead of closing it after the preference is loaded\n // we will open it after the preference is loaded\n const [navOpen, setNavOpen] = React.useState(initialIsOpen)\n\n const [shouldAnimate, setShouldAnimate] = React.useState(false)\n const [hydrated, setHydrated] = React.useState(false)\n\n // on load check the user's preference and set \"initial\" state\n useEffect(() => {\n if (largeBreak === false) {\n const setNavFromPreferences = async () => {\n const preferredState = await getNavPreference(getPreference)\n setNavOpen(preferredState)\n }\n\n void setNavFromPreferences()\n }\n }, [largeBreak, getPreference, setNavOpen])\n\n // on smaller screens where the nav is a modal\n // close the nav when the user navigates away\n useEffect(() => {\n if (smallBreak === true) {\n setNavOpen(false)\n }\n }, [pathname])\n\n // on open and close, lock the body scroll\n // do not do this on desktop, the sidebar is not a modal\n useEffect(() => {\n if (navRef.current) {\n if (navOpen && midBreak) {\n navRef.current.style.overscrollBehavior = 'contain'\n } else {\n navRef.current.style.overscrollBehavior = 'auto'\n }\n }\n }, [navOpen, midBreak])\n\n // on smaller screens where the nav is a modal\n // close the nav when the user resizes down to mobile\n // the sidebar is a modal on mobile\n useEffect(() => {\n if (largeBreak === true || midBreak === true || smallBreak === true) {\n setNavOpen(false)\n }\n setHydrated(true)\n\n const timeout = setTimeout(() => {\n setShouldAnimate(true)\n }, 100)\n return () => {\n clearTimeout(timeout)\n }\n }, [largeBreak, midBreak, smallBreak])\n\n // when the component unmounts, clear all body scroll locks\n useEffect(() => {\n return () => {\n if (navRef.current) {\n navRef.current.style.overscrollBehavior = 'auto'\n }\n }\n }, [])\n\n return (\n <NavContext value={{ hydrated, navOpen, navRef, setNavOpen, shouldAnimate }}>\n {children}\n </NavContext>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,9 @@ import type { ClientCollectionConfig, PaginatedDocs } from 'payload';
2
2
  import React from 'react';
3
3
  import type { IListQueryContext } from '../../providers/ListQuery/types.js';
4
4
  import './index.scss';
5
+ /**
6
+ * @internal
7
+ */
5
8
  export declare const PageControlsComponent: React.FC<{
6
9
  AfterPageControls?: React.ReactNode;
7
10
  collectionConfig: ClientCollectionConfig;
@@ -10,6 +13,12 @@ export declare const PageControlsComponent: React.FC<{
10
13
  handlePerPageChange?: IListQueryContext['handlePerPageChange'];
11
14
  limit?: number;
12
15
  }>;
16
+ /**
17
+ * These page controls are controlled by the global ListQuery state.
18
+ * To override thi behavior, build your own wrapper around PageControlsComponent.
19
+ *
20
+ * @internal
21
+ */
13
22
  export declare const PageControls: React.FC<{
14
23
  AfterPageControls?: React.ReactNode;
15
24
  collectionConfig: ClientCollectionConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PageControls/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGpE,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AAM3E,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC3C,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACnC,gBAAgB,EAAE,sBAAsB,CAAA;IACxC,IAAI,EAAE,aAAa,CAAA;IACnB,gBAAgB,CAAC,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;IACxD,mBAAmB,CAAC,EAAE,iBAAiB,CAAC,qBAAqB,CAAC,CAAA;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CA2CA,CAAA;AAMD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAClC,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACnC,gBAAgB,EAAE,sBAAsB,CAAA;CACzC,CAmBA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PageControls/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGpE,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AAM3E,OAAO,cAAc,CAAA;AAIrB;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC3C,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACnC,gBAAgB,EAAE,sBAAsB,CAAA;IACxC,IAAI,EAAE,aAAa,CAAA;IACnB,gBAAgB,CAAC,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;IACxD,mBAAmB,CAAC,EAAE,iBAAiB,CAAC,qBAAqB,CAAC,CAAA;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CA2CA,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAClC,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACnC,gBAAgB,EAAE,sBAAsB,CAAA;CACzC,CAmBA,CAAA"}
@@ -1,3 +1,6 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
1
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
5
  import { isNumber } from 'payload/shared';
3
6
  import React, { Fragment } from 'react';
@@ -7,50 +10,81 @@ import { useListQuery } from '../../providers/ListQuery/context.js';
7
10
  import { useTranslation } from '../../providers/Translation/index.js';
8
11
  import './index.scss';
9
12
  const baseClass = 'page-controls';
10
- export const PageControlsComponent = ({
11
- AfterPageControls,
12
- collectionConfig,
13
- data,
14
- handlePageChange,
15
- handlePerPageChange,
16
- limit
17
- }) => {
13
+ /**
14
+ * @internal
15
+ */
16
+ export const PageControlsComponent = t0 => {
17
+ const $ = _c(16);
18
+ const {
19
+ AfterPageControls,
20
+ collectionConfig,
21
+ data,
22
+ handlePageChange,
23
+ handlePerPageChange,
24
+ limit
25
+ } = t0;
18
26
  const {
19
27
  i18n
20
28
  } = useTranslation();
21
- return /*#__PURE__*/_jsxs("div", {
22
- className: baseClass,
23
- children: [/*#__PURE__*/_jsx(Pagination, {
24
- hasNextPage: data.hasNextPage,
25
- hasPrevPage: data.hasPrevPage,
26
- limit: data.limit,
27
- nextPage: data.nextPage,
28
- numberOfNeighbors: 1,
29
- onChange: handlePageChange,
30
- page: data.page,
31
- prevPage: data.prevPage,
32
- totalPages: data.totalPages
33
- }), data.totalDocs > 0 && /*#__PURE__*/_jsxs(Fragment, {
34
- children: [/*#__PURE__*/_jsxs("div", {
35
- className: `${baseClass}__page-info`,
36
- children: [data.page * data.limit - (data.limit - 1), "-", data.totalPages > 1 && data.totalPages !== data.page ? data.limit * data.page : data.totalDocs, ' ', i18n.t('general:of'), " ", data.totalDocs]
37
- }), /*#__PURE__*/_jsx(PerPage, {
38
- handleChange: handlePerPageChange,
39
- limit: limit,
40
- limits: collectionConfig?.admin?.pagination?.limits,
41
- resetPage: data.totalDocs <= data.pagingCounter
42
- }), AfterPageControls]
43
- })]
44
- });
29
+ let t1;
30
+ if ($[0] !== AfterPageControls || $[1] !== collectionConfig?.admin?.pagination?.limits || $[2] !== data.hasNextPage || $[3] !== data.hasPrevPage || $[4] !== data.limit || $[5] !== data.nextPage || $[6] !== data.page || $[7] !== data.pagingCounter || $[8] !== data.prevPage || $[9] !== data.totalDocs || $[10] !== data.totalPages || $[11] !== handlePageChange || $[12] !== handlePerPageChange || $[13] !== i18n || $[14] !== limit) {
31
+ t1 = _jsxs("div", {
32
+ className: baseClass,
33
+ children: [_jsx(Pagination, {
34
+ hasNextPage: data.hasNextPage,
35
+ hasPrevPage: data.hasPrevPage,
36
+ limit: data.limit,
37
+ nextPage: data.nextPage,
38
+ numberOfNeighbors: 1,
39
+ onChange: handlePageChange,
40
+ page: data.page,
41
+ prevPage: data.prevPage,
42
+ totalPages: data.totalPages
43
+ }), data.totalDocs > 0 && _jsxs(Fragment, {
44
+ children: [_jsxs("div", {
45
+ className: `${baseClass}__page-info`,
46
+ children: [data.page * data.limit - (data.limit - 1), "-", data.totalPages > 1 && data.totalPages !== data.page ? data.limit * data.page : data.totalDocs, " ", i18n.t("general:of"), " ", data.totalDocs]
47
+ }), _jsx(PerPage, {
48
+ handleChange: handlePerPageChange,
49
+ limit,
50
+ limits: collectionConfig?.admin?.pagination?.limits,
51
+ resetPage: data.totalDocs <= data.pagingCounter
52
+ }), AfterPageControls]
53
+ })]
54
+ });
55
+ $[0] = AfterPageControls;
56
+ $[1] = collectionConfig?.admin?.pagination?.limits;
57
+ $[2] = data.hasNextPage;
58
+ $[3] = data.hasPrevPage;
59
+ $[4] = data.limit;
60
+ $[5] = data.nextPage;
61
+ $[6] = data.page;
62
+ $[7] = data.pagingCounter;
63
+ $[8] = data.prevPage;
64
+ $[9] = data.totalDocs;
65
+ $[10] = data.totalPages;
66
+ $[11] = handlePageChange;
67
+ $[12] = handlePerPageChange;
68
+ $[13] = i18n;
69
+ $[14] = limit;
70
+ $[15] = t1;
71
+ } else {
72
+ t1 = $[15];
73
+ }
74
+ return t1;
45
75
  };
46
- /*
76
+ /**
47
77
  * These page controls are controlled by the global ListQuery state.
48
78
  * To override thi behavior, build your own wrapper around PageControlsComponent.
79
+ *
80
+ * @internal
49
81
  */
50
- export const PageControls = ({
51
- AfterPageControls,
52
- collectionConfig
53
- }) => {
82
+ export const PageControls = t0 => {
83
+ const $ = _c(10);
84
+ const {
85
+ AfterPageControls,
86
+ collectionConfig
87
+ } = t0;
54
88
  const {
55
89
  data,
56
90
  defaultLimit: initialLimit,
@@ -58,13 +92,35 @@ export const PageControls = ({
58
92
  handlePerPageChange,
59
93
  query
60
94
  } = useListQuery();
61
- return /*#__PURE__*/_jsx(PageControlsComponent, {
62
- AfterPageControls: AfterPageControls,
63
- collectionConfig: collectionConfig,
64
- data: data,
65
- handlePageChange: handlePageChange,
66
- handlePerPageChange: handlePerPageChange,
67
- limit: isNumber(query.limit) ? query.limit : initialLimit
68
- });
95
+ let t1;
96
+ if ($[0] !== initialLimit || $[1] !== query.limit) {
97
+ t1 = isNumber(query.limit) ? query.limit : initialLimit;
98
+ $[0] = initialLimit;
99
+ $[1] = query.limit;
100
+ $[2] = t1;
101
+ } else {
102
+ t1 = $[2];
103
+ }
104
+ let t2;
105
+ if ($[3] !== AfterPageControls || $[4] !== collectionConfig || $[5] !== data || $[6] !== handlePageChange || $[7] !== handlePerPageChange || $[8] !== t1) {
106
+ t2 = _jsx(PageControlsComponent, {
107
+ AfterPageControls,
108
+ collectionConfig,
109
+ data,
110
+ handlePageChange,
111
+ handlePerPageChange,
112
+ limit: t1
113
+ });
114
+ $[3] = AfterPageControls;
115
+ $[4] = collectionConfig;
116
+ $[5] = data;
117
+ $[6] = handlePageChange;
118
+ $[7] = handlePerPageChange;
119
+ $[8] = t1;
120
+ $[9] = t2;
121
+ } else {
122
+ t2 = $[9];
123
+ }
124
+ return t2;
69
125
  };
70
126
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["isNumber","React","Fragment","Pagination","PerPage","useListQuery","useTranslation","baseClass","PageControlsComponent","AfterPageControls","collectionConfig","data","handlePageChange","handlePerPageChange","limit","i18n","_jsxs","className","_jsx","hasNextPage","hasPrevPage","nextPage","numberOfNeighbors","onChange","page","prevPage","totalPages","totalDocs","t","handleChange","limits","admin","pagination","resetPage","pagingCounter","PageControls","defaultLimit","initialLimit","query"],"sources":["../../../src/elements/PageControls/index.tsx"],"sourcesContent":["import type { ClientCollectionConfig, PaginatedDocs } from 'payload'\n\nimport { isNumber } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport type { IListQueryContext } from '../../providers/ListQuery/types.js'\n\nimport { Pagination } from '../../elements/Pagination/index.js'\nimport { PerPage } from '../../elements/PerPage/index.js'\nimport { useListQuery } from '../../providers/ListQuery/context.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'page-controls'\n\nexport const PageControlsComponent: React.FC<{\n AfterPageControls?: React.ReactNode\n collectionConfig: ClientCollectionConfig\n data: PaginatedDocs\n handlePageChange?: IListQueryContext['handlePageChange']\n handlePerPageChange?: IListQueryContext['handlePerPageChange']\n limit?: number\n}> = ({\n AfterPageControls,\n collectionConfig,\n data,\n handlePageChange,\n handlePerPageChange,\n limit,\n}) => {\n const { i18n } = useTranslation()\n\n return (\n <div className={baseClass}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={handlePageChange}\n page={data.page}\n prevPage={data.prevPage}\n totalPages={data.totalPages}\n />\n {data.totalDocs > 0 && (\n <Fragment>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n </div>\n <PerPage\n handleChange={handlePerPageChange}\n limit={limit}\n limits={collectionConfig?.admin?.pagination?.limits}\n resetPage={data.totalDocs <= data.pagingCounter}\n />\n {AfterPageControls}\n </Fragment>\n )}\n </div>\n )\n}\n\n/*\n * These page controls are controlled by the global ListQuery state.\n * To override thi behavior, build your own wrapper around PageControlsComponent.\n */\nexport const PageControls: React.FC<{\n AfterPageControls?: React.ReactNode\n collectionConfig: ClientCollectionConfig\n}> = ({ AfterPageControls, collectionConfig }) => {\n const {\n data,\n defaultLimit: initialLimit,\n handlePageChange,\n handlePerPageChange,\n query,\n } = useListQuery()\n\n return (\n <PageControlsComponent\n AfterPageControls={AfterPageControls}\n collectionConfig={collectionConfig}\n data={data}\n handlePageChange={handlePageChange}\n handlePerPageChange={handlePerPageChange}\n limit={isNumber(query.limit) ? query.limit : initialLimit}\n />\n )\n}\n"],"mappings":";AAEA,SAASA,QAAQ,QAAQ;AACzB,OAAOC,KAAA,IAASC,QAAQ,QAAQ;AAIhC,SAASC,UAAU,QAAQ;AAC3B,SAASC,OAAO,QAAQ;AACxB,SAASC,YAAY,QAAQ;AAC7B,SAASC,cAAc,QAAQ;AAC/B,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,qBAAA,GAORA,CAAC;EACJC,iBAAiB;EACjBC,gBAAgB;EAChBC,IAAI;EACJC,gBAAgB;EAChBC,mBAAmB;EACnBC;AAAK,CACN;EACC,MAAM;IAAEC;EAAI,CAAE,GAAGT,cAAA;EAEjB,oBACEU,KAAA,CAAC;IAAIC,SAAA,EAAWV,SAAA;4BACdW,IAAA,CAACf,UAAA;MACCgB,WAAA,EAAaR,IAAA,CAAKQ,WAAW;MAC7BC,WAAA,EAAaT,IAAA,CAAKS,WAAW;MAC7BN,KAAA,EAAOH,IAAA,CAAKG,KAAK;MACjBO,QAAA,EAAUV,IAAA,CAAKU,QAAQ;MACvBC,iBAAA,EAAmB;MACnBC,QAAA,EAAUX,gBAAA;MACVY,IAAA,EAAMb,IAAA,CAAKa,IAAI;MACfC,QAAA,EAAUd,IAAA,CAAKc,QAAQ;MACvBC,UAAA,EAAYf,IAAA,CAAKe;QAElBf,IAAA,CAAKgB,SAAS,GAAG,kBAChBX,KAAA,CAACd,QAAA;8BACCc,KAAA,CAAC;QAAIC,SAAA,EAAW,GAAGV,SAAA,aAAsB;mBACtCI,IAAA,CAAKa,IAAI,GAAGb,IAAA,CAAKG,KAAK,IAAIH,IAAA,CAAKG,KAAK,GAAG,IAAG,KAC1CH,IAAA,CAAKe,UAAU,GAAG,KAAKf,IAAA,CAAKe,UAAU,KAAKf,IAAA,CAAKa,IAAI,GACjDb,IAAA,CAAKG,KAAK,GAAGH,IAAA,CAAKa,IAAI,GACtBb,IAAA,CAAKgB,SAAS,EAAE,KACnBZ,IAAA,CAAKa,CAAC,CAAC,eAAc,KAAEjB,IAAA,CAAKgB,SAAS;uBAExCT,IAAA,CAACd,OAAA;QACCyB,YAAA,EAAchB,mBAAA;QACdC,KAAA,EAAOA,KAAA;QACPgB,MAAA,EAAQpB,gBAAA,EAAkBqB,KAAA,EAAOC,UAAA,EAAYF,MAAA;QAC7CG,SAAA,EAAWtB,IAAA,CAAKgB,SAAS,IAAIhB,IAAA,CAAKuB;UAEnCzB,iBAAA;;;AAKX;AAEA;;;;AAIA,OAAO,MAAM0B,YAAA,GAGRA,CAAC;EAAE1B,iBAAiB;EAAEC;AAAgB,CAAE;EAC3C,MAAM;IACJC,IAAI;IACJyB,YAAA,EAAcC,YAAY;IAC1BzB,gBAAgB;IAChBC,mBAAmB;IACnByB;EAAK,CACN,GAAGjC,YAAA;EAEJ,oBACEa,IAAA,CAACV,qBAAA;IACCC,iBAAA,EAAmBA,iBAAA;IACnBC,gBAAA,EAAkBA,gBAAA;IAClBC,IAAA,EAAMA,IAAA;IACNC,gBAAA,EAAkBA,gBAAA;IAClBC,mBAAA,EAAqBA,mBAAA;IACrBC,KAAA,EAAOd,QAAA,CAASsC,KAAA,CAAMxB,KAAK,IAAIwB,KAAA,CAAMxB,KAAK,GAAGuB;;AAGnD","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","isNumber","React","Fragment","Pagination","PerPage","useListQuery","useTranslation","baseClass","PageControlsComponent","t0","$","AfterPageControls","collectionConfig","data","handlePageChange","handlePerPageChange","limit","i18n","t1","admin","pagination","limits","hasNextPage","hasPrevPage","nextPage","page","pagingCounter","prevPage","totalDocs","totalPages","_jsxs","className","children","_jsx","numberOfNeighbors","onChange","t","handleChange","resetPage","PageControls","defaultLimit","initialLimit","query","t2"],"sources":["../../../src/elements/PageControls/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, PaginatedDocs } from 'payload'\n\nimport { isNumber } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport type { IListQueryContext } from '../../providers/ListQuery/types.js'\n\nimport { Pagination } from '../../elements/Pagination/index.js'\nimport { PerPage } from '../../elements/PerPage/index.js'\nimport { useListQuery } from '../../providers/ListQuery/context.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'page-controls'\n\n/**\n * @internal\n */\nexport const PageControlsComponent: React.FC<{\n AfterPageControls?: React.ReactNode\n collectionConfig: ClientCollectionConfig\n data: PaginatedDocs\n handlePageChange?: IListQueryContext['handlePageChange']\n handlePerPageChange?: IListQueryContext['handlePerPageChange']\n limit?: number\n}> = ({\n AfterPageControls,\n collectionConfig,\n data,\n handlePageChange,\n handlePerPageChange,\n limit,\n}) => {\n const { i18n } = useTranslation()\n\n return (\n <div className={baseClass}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={handlePageChange}\n page={data.page}\n prevPage={data.prevPage}\n totalPages={data.totalPages}\n />\n {data.totalDocs > 0 && (\n <Fragment>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n </div>\n <PerPage\n handleChange={handlePerPageChange}\n limit={limit}\n limits={collectionConfig?.admin?.pagination?.limits}\n resetPage={data.totalDocs <= data.pagingCounter}\n />\n {AfterPageControls}\n </Fragment>\n )}\n </div>\n )\n}\n\n/**\n * These page controls are controlled by the global ListQuery state.\n * To override thi behavior, build your own wrapper around PageControlsComponent.\n *\n * @internal\n */\nexport const PageControls: React.FC<{\n AfterPageControls?: React.ReactNode\n collectionConfig: ClientCollectionConfig\n}> = ({ AfterPageControls, collectionConfig }) => {\n const {\n data,\n defaultLimit: initialLimit,\n handlePageChange,\n handlePerPageChange,\n query,\n } = useListQuery()\n\n return (\n <PageControlsComponent\n AfterPageControls={AfterPageControls}\n collectionConfig={collectionConfig}\n data={data}\n handlePageChange={handlePageChange}\n handlePerPageChange={handlePerPageChange}\n limit={isNumber(query.limit) ? query.limit : initialLimit}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/RelationshipTable/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,eAAe,EAEpB,KAAK,aAAa,EAClB,KAAK,KAAK,EACX,MAAM,SAAS,CAAA;AAEhB,OAAO,KAA6D,MAAM,OAAO,CAAA;AAEjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAkBrE,OAAO,cAAc,CAAA;AAIrB,KAAK,+BAA+B,GAAG;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAA;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAA;IACpC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC,CAAA;IAC/D,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE;QAChB,cAAc,EAAE,cAAc,CAAA;QAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;QACnB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CACvC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;AAEhD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,+BAA+B,CAiVvE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/RelationshipTable/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,eAAe,EAEpB,KAAK,aAAa,EAClB,KAAK,KAAK,EACX,MAAM,SAAS,CAAA;AAEhB,OAAO,KAA6D,MAAM,OAAO,CAAA;AAEjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAkBrE,OAAO,cAAc,CAAA;AAIrB,KAAK,+BAA+B,GAAG;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAA;IAC/B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAA;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,aAAa,CAAA;IACpC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC,CAAA;IAC/D,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE;QAChB,cAAc,EAAE,cAAc,CAAA;QAC9B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;QACnB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CACvC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;AAEhD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,+BAA+B,CAuVvE,CAAA"}
@@ -99,6 +99,7 @@ export const RelationshipTable = props => {
99
99
  accessor,
100
100
  active: true
101
101
  })) : undefined;
102
+ const renderRowTypes = typeof field.admin.disableRowTypes === 'boolean' ? !field.admin.disableRowTypes : Array.isArray(relationTo);
102
103
  const {
103
104
  data: newData,
104
105
  state: newColumnState,
@@ -111,14 +112,14 @@ export const RelationshipTable = props => {
111
112
  orderableFieldName: !field.orderable || Array.isArray(field.collection) ? undefined : `_${field.collection}_${field.name}_order`,
112
113
  parent,
113
114
  query: newQuery,
114
- renderRowTypes: true,
115
+ renderRowTypes,
115
116
  tableAppearance: 'condensed'
116
117
  });
117
118
  setData(newData);
118
119
  setTable(NewTable);
119
120
  setColumnState(newColumnState);
120
121
  setIsLoadingTable(false);
121
- }, [field.defaultLimit, field.defaultSort, field.admin.defaultColumns, field.collection, field.name, field.orderable, collectionConfig?.admin?.pagination?.defaultLimit, collectionConfig?.defaultSort, query, filterOptions, getTableState, relationTo, parent]);
122
+ }, [field.defaultLimit, field.defaultSort, field.admin.defaultColumns, field.admin.disableRowTypes, field.collection, field.name, field.orderable, collectionConfig?.admin?.pagination?.defaultLimit, collectionConfig?.defaultSort, query, filterOptions, getTableState, relationTo, parent]);
122
123
  const handleTableRender = useEffectEvent((query, disableTable) => {
123
124
  if (!disableTable && (!Table || query)) {
124
125
  void renderTable();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getTranslation","hoistQueryParamsToAnd","transformColumnsToPreferences","React","Fragment","useCallback","useEffect","useRef","useState","Pill","useEffectEvent","ChevronIcon","useAuth","useConfig","ListQueryProvider","useServerFunctions","TableColumnsProvider","useTranslation","AnimateHeight","ColumnSelector","useDocumentDrawer","RelationshipProvider","AddNewButton","DrawerLink","RelationshipTablePagination","baseClass","RelationshipTable","props","AfterInput","allowCreate","BeforeInput","disableTable","field","fieldPath","filterOptions","initialData","initialDataFromProps","initialDrawerData","Label","parent","relationTo","Table","setTable","config","getEntityConfig","i18n","t","query","setQuery","openColumnSelector","setOpenColumnSelector","collectionConfig","collectionSlug","isPolymorphic","Array","isArray","selectedCollection","setSelectedCollection","undefined","permissions","openDrawerWhenRelationChanges","currentDrawerID","setCurrentDrawerID","DocumentDrawer","closeDrawer","isDrawerOpen","openDrawer","id","isLoadingTable","setIsLoadingTable","data","setData","docs","reduce","acc","doc","columnState","setColumnState","getTableState","renderTable","newQuery","limit","defaultLimit","admin","pagination","sort","defaultSort","where","defaultColumns","map","accessor","active","newData","state","newColumnState","NewTable","columns","enableRowSelections","orderableFieldName","orderable","collection","name","renderRowTypes","tableAppearance","handleTableRender","onDrawerSave","operation","foundDocIndex","findIndex","d","withNewOrUpdatedData","newDocs","onDrawerDelete","args","filter","onDrawerOpen","current","canCreate","collections","create","memoizedListQuery","useMemo","_jsxs","className","_jsx","buttonStyle","icon","label","onClick","direction","pillStyle","size","length","labels","plural","singular","modifySearchParams","onQueryChange","replaceAll","LinkedCellOverride","height","slug","onDelete","onSave"],"sources":["../../../src/elements/RelationshipTable/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n type CollectionSlug,\n type Column,\n type JoinFieldClient,\n type ListQuery,\n type PaginatedDocs,\n type Where,\n} from 'payload'\nimport { hoistQueryParamsToAnd, transformColumnsToPreferences } from 'payload/shared'\nimport React, { Fragment, useCallback, useEffect, useRef, useState } from 'react'\n\nimport type { DocumentDrawerProps } from '../DocumentDrawer/types.js'\n\nimport { Pill } from '../../elements/Pill/index.js'\nimport { useEffectEvent } from '../../hooks/useEffectEvent.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { ListQueryProvider } from '../../providers/ListQuery/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { TableColumnsProvider } from '../../providers/TableColumns/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { AnimateHeight } from '../AnimateHeight/index.js'\nimport { ColumnSelector } from '../ColumnSelector/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport { RelationshipProvider } from '../Table/RelationshipProvider/index.js'\nimport { AddNewButton } from './AddNewButton.js'\nimport { DrawerLink } from './cells/DrawerLink/index.js'\nimport { RelationshipTablePagination } from './Pagination.js'\nimport './index.scss'\n\nconst baseClass = 'relationship-table'\n\ntype RelationshipTableComponentProps = {\n readonly AfterInput?: React.ReactNode\n readonly allowCreate?: boolean\n readonly BeforeInput?: React.ReactNode\n readonly disableTable?: boolean\n readonly field: JoinFieldClient\n readonly fieldPath?: string\n readonly filterOptions?: Where\n readonly initialData?: PaginatedDocs\n readonly initialDrawerData?: DocumentDrawerProps['initialData']\n readonly Label?: React.ReactNode\n readonly parent?: {\n collectionSlug: CollectionSlug\n id: number | string\n joinPath: string\n }\n readonly relationTo: string | string[]\n}\n\nexport type OnDrawerOpen = (id?: string) => void\n\nexport const RelationshipTable: React.FC<RelationshipTableComponentProps> = (props) => {\n const {\n AfterInput,\n allowCreate = true,\n BeforeInput,\n disableTable = false,\n field,\n fieldPath,\n filterOptions,\n initialData: initialDataFromProps,\n initialDrawerData,\n Label,\n parent,\n relationTo,\n } = props\n const [Table, setTable] = useState<React.ReactNode>(null)\n const { config, getEntityConfig } = useConfig()\n const { i18n, t } = useTranslation()\n\n const [query, setQuery] = useState<ListQuery>()\n const [openColumnSelector, setOpenColumnSelector] = useState(false)\n\n const [collectionConfig] = useState(() => getEntityConfig({ collectionSlug: relationTo }))\n\n const isPolymorphic = Array.isArray(relationTo)\n\n const [selectedCollection, setSelectedCollection] = useState(\n isPolymorphic ? undefined : relationTo,\n )\n\n const { permissions } = useAuth()\n\n const openDrawerWhenRelationChanges = useRef(false)\n\n const [currentDrawerID, setCurrentDrawerID] = useState<string | undefined>(undefined)\n\n const [DocumentDrawer, , { closeDrawer, isDrawerOpen, openDrawer }] = useDocumentDrawer({\n id: currentDrawerID,\n collectionSlug: selectedCollection,\n })\n\n const [isLoadingTable, setIsLoadingTable] = useState(!disableTable)\n\n const [data, setData] = useState<PaginatedDocs>(() =>\n initialDataFromProps\n ? {\n ...initialDataFromProps,\n docs: Array.isArray(initialDataFromProps.docs)\n ? initialDataFromProps.docs.reduce((acc, doc) => {\n if (typeof doc === 'string' || typeof doc === 'number') {\n return [\n ...acc,\n {\n id: doc,\n },\n ]\n }\n\n return [...acc, doc]\n }, [])\n : [],\n }\n : undefined,\n )\n\n const [columnState, setColumnState] = useState<Column[]>()\n\n const { getTableState } = useServerFunctions()\n\n const renderTable = useCallback(\n async (data?: PaginatedDocs) => {\n const newQuery: ListQuery = {\n limit: field?.defaultLimit || collectionConfig?.admin?.pagination?.defaultLimit,\n sort: field.defaultSort || collectionConfig?.defaultSort,\n ...(query || {}),\n where: { ...(query?.where || {}) },\n }\n\n if (filterOptions) {\n newQuery.where = hoistQueryParamsToAnd(newQuery.where, filterOptions)\n }\n\n // map columns from string[] to CollectionPreferences['columns']\n const defaultColumns = field.admin.defaultColumns\n ? field.admin.defaultColumns.map((accessor) => ({\n accessor,\n active: true,\n }))\n : undefined\n\n const {\n data: newData,\n state: newColumnState,\n Table: NewTable,\n } = await getTableState({\n collectionSlug: relationTo,\n columns: transformColumnsToPreferences(query?.columns) || defaultColumns,\n data,\n enableRowSelections: false,\n orderableFieldName:\n !field.orderable || Array.isArray(field.collection)\n ? undefined\n : `_${field.collection}_${field.name}_order`,\n parent,\n query: newQuery,\n renderRowTypes: true,\n tableAppearance: 'condensed',\n })\n\n setData(newData)\n setTable(NewTable)\n setColumnState(newColumnState)\n setIsLoadingTable(false)\n },\n [\n field.defaultLimit,\n field.defaultSort,\n field.admin.defaultColumns,\n field.collection,\n field.name,\n field.orderable,\n collectionConfig?.admin?.pagination?.defaultLimit,\n collectionConfig?.defaultSort,\n query,\n filterOptions,\n getTableState,\n relationTo,\n parent,\n ],\n )\n\n const handleTableRender = useEffectEvent((query: ListQuery, disableTable: boolean) => {\n if (!disableTable && (!Table || query)) {\n void renderTable()\n }\n })\n\n useEffect(() => {\n handleTableRender(query, disableTable)\n }, [query, disableTable])\n\n const onDrawerSave = useCallback<DocumentDrawerProps['onSave']>(\n ({ doc, operation }) => {\n if (operation === 'create') {\n closeDrawer()\n }\n\n const foundDocIndex = data?.docs?.findIndex((d) => d.id === doc.id)\n const withNewOrUpdatedData: PaginatedDocs = { docs: [] } as PaginatedDocs\n\n if (foundDocIndex !== -1) {\n const newDocs = [...data.docs]\n newDocs[foundDocIndex] = doc\n withNewOrUpdatedData.docs = newDocs\n } else {\n withNewOrUpdatedData.docs = [doc, ...data.docs]\n }\n\n void renderTable(withNewOrUpdatedData)\n },\n [data?.docs, renderTable, closeDrawer],\n )\n\n const onDrawerDelete = useCallback<DocumentDrawerProps['onDelete']>(\n (args) => {\n const newDocs = data.docs.filter((doc) => doc.id !== args.id)\n\n void renderTable({\n ...data,\n docs: newDocs,\n })\n\n setCurrentDrawerID(undefined)\n },\n [data, renderTable],\n )\n\n const onDrawerOpen = useCallback<OnDrawerOpen>((id) => {\n openDrawerWhenRelationChanges.current = true\n\n if (id) {\n setCurrentDrawerID(id)\n } else {\n setCurrentDrawerID(undefined)\n }\n }, [])\n\n useEffect(() => {\n if (openDrawerWhenRelationChanges.current) {\n openDrawerWhenRelationChanges.current = false\n openDrawer()\n }\n }, [openDrawer])\n\n useEffect(() => {\n if (!isDrawerOpen) {\n setCurrentDrawerID(undefined)\n }\n }, [isDrawerOpen])\n\n const canCreate =\n allowCreate !== false &&\n permissions?.collections?.[isPolymorphic ? relationTo[0] : relationTo]?.create\n\n useEffect(() => {\n if (isPolymorphic && selectedCollection) {\n openDrawer()\n }\n }, [selectedCollection, openDrawer, isPolymorphic])\n\n useEffect(() => {\n if (isPolymorphic && !isDrawerOpen && selectedCollection) {\n setSelectedCollection(undefined)\n }\n // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isDrawerOpen])\n\n const memoizedListQuery = React.useMemo(\n () => ({\n columns: transformColumnsToPreferences(columnState)?.map(({ accessor }) => accessor),\n limit: field.defaultLimit ?? collectionConfig?.admin?.pagination?.defaultLimit,\n sort: field.defaultSort ?? collectionConfig?.defaultSort,\n }),\n [columnState, field, collectionConfig],\n )\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__header`}>\n {Label}\n <div className={`${baseClass}__actions`}>\n <AddNewButton\n allowCreate={allowCreate !== false}\n baseClass={baseClass}\n buttonStyle=\"none\"\n className={`${baseClass}__add-new${isPolymorphic ? '-polymorphic' : ' doc-drawer__toggler'}`}\n collections={config.collections}\n i18n={i18n}\n icon={isPolymorphic ? 'plus' : undefined}\n label={i18n.t('fields:addNew')}\n onClick={isPolymorphic ? setSelectedCollection : openDrawer}\n permissions={permissions}\n relationTo={relationTo}\n />\n <Pill\n aria-controls={`${baseClass}-columns`}\n aria-expanded={openColumnSelector}\n className={`${baseClass}__toggle-columns ${\n openColumnSelector ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<ChevronIcon direction={openColumnSelector ? 'up' : 'down'} />}\n onClick={() => setOpenColumnSelector(!openColumnSelector)}\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:columns')}\n </Pill>\n </div>\n </div>\n {BeforeInput}\n {isLoadingTable ? (\n <p>{t('general:loading')}</p>\n ) : (\n <Fragment>\n {data?.docs && data.docs.length === 0 && (\n <div className={`${baseClass}__no-results`}>\n <p>\n {i18n.t('general:noResults', {\n label: isPolymorphic\n ? i18n.t('general:documents')\n : getTranslation(collectionConfig?.labels?.plural, i18n),\n })}\n </p>\n <AddNewButton\n allowCreate={canCreate}\n baseClass={baseClass}\n collections={config.collections}\n i18n={i18n}\n label={i18n.t('general:createNewLabel', {\n label: isPolymorphic\n ? i18n.t('general:document')\n : getTranslation(collectionConfig?.labels?.singular, i18n),\n })}\n onClick={isPolymorphic ? setSelectedCollection : openDrawer}\n permissions={permissions}\n relationTo={relationTo}\n />\n </div>\n )}\n {data?.docs && data.docs.length > 0 && (\n <RelationshipProvider>\n <ListQueryProvider\n data={data}\n modifySearchParams={false}\n onQueryChange={setQuery}\n orderableFieldName={\n !field.orderable || Array.isArray(field.collection)\n ? undefined\n : `_${field.collection}_${fieldPath.replaceAll('.', '_')}_order`\n }\n query={memoizedListQuery}\n >\n <TableColumnsProvider\n collectionSlug={isPolymorphic ? relationTo[0] : relationTo}\n columnState={columnState}\n LinkedCellOverride={\n <DrawerLink currentDrawerID={currentDrawerID} onDrawerOpen={onDrawerOpen} />\n }\n >\n <AnimateHeight\n className={`${baseClass}__columns`}\n height={openColumnSelector ? 'auto' : 0}\n id={`${baseClass}-columns`}\n >\n <div className={`${baseClass}__columns-inner`}>\n {collectionConfig && (\n <ColumnSelector collectionSlug={collectionConfig.slug} />\n )}\n </div>\n </AnimateHeight>\n {Table}\n <RelationshipTablePagination />\n </TableColumnsProvider>\n </ListQueryProvider>\n </RelationshipProvider>\n )}\n </Fragment>\n )}\n {AfterInput}\n <DocumentDrawer\n initialData={initialDrawerData}\n onDelete={onDrawerDelete}\n onSave={onDrawerSave}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;;AACA,SAASA,cAAc,QAAQ;AAS/B,SAASC,qBAAqB,EAAEC,6BAA6B,QAAQ;AACrE,OAAOC,KAAA,IAASC,QAAQ,EAAEC,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ;AAI1E,SAASC,IAAI,QAAQ;AACrB,SAASC,cAAc,QAAQ;AAC/B,SAASC,WAAW,QAAQ;AAC5B,SAASC,OAAO,QAAQ;AACxB,SAASC,SAAS,QAAQ;AAC1B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,oBAAoB,QAAQ;AACrC,SAASC,cAAc,QAAQ;AAC/B,SAASC,aAAa,QAAQ;AAC9B,SAASC,cAAc,QAAQ;AAC/B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,oBAAoB,QAAQ;AACrC,SAASC,YAAY,QAAQ;AAC7B,SAASC,UAAU,QAAQ;AAC3B,SAASC,2BAA2B,QAAQ;AAC5C,OAAO;AAEP,MAAMC,SAAA,GAAY;AAuBlB,OAAO,MAAMC,iBAAA,GAAgEC,KAAA;EAC3E,MAAM;IACJC,UAAU;IACVC,WAAA,GAAc,IAAI;IAClBC,WAAW;IACXC,YAAA,GAAe,KAAK;IACpBC,KAAK;IACLC,SAAS;IACTC,aAAa;IACbC,WAAA,EAAaC,oBAAoB;IACjCC,iBAAiB;IACjBC,KAAK;IACLC,MAAM;IACNC;EAAU,CACX,GAAGb,KAAA;EACJ,MAAM,CAACc,KAAA,EAAOC,QAAA,CAAS,GAAGlC,QAAA,CAA0B;EACpD,MAAM;IAAEmC,MAAM;IAAEC;EAAe,CAAE,GAAG/B,SAAA;EACpC,MAAM;IAAEgC,IAAI;IAAEC;EAAC,CAAE,GAAG7B,cAAA;EAEpB,MAAM,CAAC8B,KAAA,EAAOC,QAAA,CAAS,GAAGxC,QAAA;EAC1B,MAAM,CAACyC,kBAAA,EAAoBC,qBAAA,CAAsB,GAAG1C,QAAA,CAAS;EAE7D,MAAM,CAAC2C,gBAAA,CAAiB,GAAG3C,QAAA,CAAS,MAAMoC,eAAA,CAAgB;IAAEQ,cAAA,EAAgBZ;EAAW;EAEvF,MAAMa,aAAA,GAAgBC,KAAA,CAAMC,OAAO,CAACf,UAAA;EAEpC,MAAM,CAACgB,kBAAA,EAAoBC,qBAAA,CAAsB,GAAGjD,QAAA,CAClD6C,aAAA,GAAgBK,SAAA,GAAYlB,UAAA;EAG9B,MAAM;IAAEmB;EAAW,CAAE,GAAG/C,OAAA;EAExB,MAAMgD,6BAAA,GAAgCrD,MAAA,CAAO;EAE7C,MAAM,CAACsD,eAAA,EAAiBC,kBAAA,CAAmB,GAAGtD,QAAA,CAA6BkD,SAAA;EAE3E,MAAM,CAACK,cAAA,GAAkB;IAAEC,WAAW;IAAEC,YAAY;IAAEC;EAAU,CAAE,CAAC,GAAG9C,iBAAA,CAAkB;IACtF+C,EAAA,EAAIN,eAAA;IACJT,cAAA,EAAgBI;EAClB;EAEA,MAAM,CAACY,cAAA,EAAgBC,iBAAA,CAAkB,GAAG7D,QAAA,CAAS,CAACuB,YAAA;EAEtD,MAAM,CAACuC,IAAA,EAAMC,OAAA,CAAQ,GAAG/D,QAAA,CAAwB,MAC9C4B,oBAAA,GACI;IACE,GAAGA,oBAAoB;IACvBoC,IAAA,EAAMlB,KAAA,CAAMC,OAAO,CAACnB,oBAAA,CAAqBoC,IAAI,IACzCpC,oBAAA,CAAqBoC,IAAI,CAACC,MAAM,CAAC,CAACC,GAAA,EAAKC,GAAA;MACrC,IAAI,OAAOA,GAAA,KAAQ,YAAY,OAAOA,GAAA,KAAQ,UAAU;QACtD,OAAO,C,GACFD,GAAA,EACH;UACEP,EAAA,EAAIQ;QACN,EACD;MACH;MAEA,OAAO,C,GAAID,GAAA,EAAKC,GAAA,CAAI;IACtB,GAAG,EAAE,IACL;EACN,IACAjB,SAAA;EAGN,MAAM,CAACkB,WAAA,EAAaC,cAAA,CAAe,GAAGrE,QAAA;EAEtC,MAAM;IAAEsE;EAAa,CAAE,GAAG/D,kBAAA;EAE1B,MAAMgE,WAAA,GAAc1E,WAAA,CAClB,MAAOiE,IAAA;IACL,MAAMU,QAAA,GAAsB;MAC1BC,KAAA,EAAOjD,KAAA,EAAOkD,YAAA,IAAgB/B,gBAAA,EAAkBgC,KAAA,EAAOC,UAAA,EAAYF,YAAA;MACnEG,IAAA,EAAMrD,KAAA,CAAMsD,WAAW,IAAInC,gBAAA,EAAkBmC,WAAA;MAC7C,IAAIvC,KAAA,IAAS,CAAC,CAAC;MACfwC,KAAA,EAAO;QAAE,IAAIxC,KAAA,EAAOwC,KAAA,IAAS,CAAC,CAAC;MAAE;IACnC;IAEA,IAAIrD,aAAA,EAAe;MACjB8C,QAAA,CAASO,KAAK,GAAGtF,qBAAA,CAAsB+E,QAAA,CAASO,KAAK,EAAErD,aAAA;IACzD;IAEA;IACA,MAAMsD,cAAA,GAAiBxD,KAAA,CAAMmD,KAAK,CAACK,cAAc,GAC7CxD,KAAA,CAAMmD,KAAK,CAACK,cAAc,CAACC,GAAG,CAAEC,QAAA,KAAc;MAC5CA,QAAA;MACAC,MAAA,EAAQ;IACV,MACAjC,SAAA;IAEJ,MAAM;MACJY,IAAA,EAAMsB,OAAO;MACbC,KAAA,EAAOC,cAAc;MACrBrD,KAAA,EAAOsD;IAAQ,CAChB,GAAG,MAAMjB,aAAA,CAAc;MACtB1B,cAAA,EAAgBZ,UAAA;MAChBwD,OAAA,EAAS9F,6BAAA,CAA8B6C,KAAA,EAAOiD,OAAA,KAAYR,cAAA;MAC1DlB,IAAA;MACA2B,mBAAA,EAAqB;MACrBC,kBAAA,EACE,CAAClE,KAAA,CAAMmE,SAAS,IAAI7C,KAAA,CAAMC,OAAO,CAACvB,KAAA,CAAMoE,UAAU,IAC9C1C,SAAA,GACA,IAAI1B,KAAA,CAAMoE,UAAU,IAAIpE,KAAA,CAAMqE,IAAI,QAAQ;MAChD9D,MAAA;MACAQ,KAAA,EAAOiC,QAAA;MACPsB,cAAA,EAAgB;MAChBC,eAAA,EAAiB;IACnB;IAEAhC,OAAA,CAAQqB,OAAA;IACRlD,QAAA,CAASqD,QAAA;IACTlB,cAAA,CAAeiB,cAAA;IACfzB,iBAAA,CAAkB;EACpB,GACA,CACErC,KAAA,CAAMkD,YAAY,EAClBlD,KAAA,CAAMsD,WAAW,EACjBtD,KAAA,CAAMmD,KAAK,CAACK,cAAc,EAC1BxD,KAAA,CAAMoE,UAAU,EAChBpE,KAAA,CAAMqE,IAAI,EACVrE,KAAA,CAAMmE,SAAS,EACfhD,gBAAA,EAAkBgC,KAAA,EAAOC,UAAA,EAAYF,YAAA,EACrC/B,gBAAA,EAAkBmC,WAAA,EAClBvC,KAAA,EACAb,aAAA,EACA4C,aAAA,EACAtC,UAAA,EACAD,MAAA,CACD;EAGH,MAAMiE,iBAAA,GAAoB9F,cAAA,CAAe,CAACqC,KAAA,EAAkBhB,YAAA;IAC1D,IAAI,CAACA,YAAA,KAAiB,CAACU,KAAA,IAASM,KAAI,GAAI;MACtC,KAAKgC,WAAA;IACP;EACF;EAEAzE,SAAA,CAAU;IACRkG,iBAAA,CAAkBzD,KAAA,EAAOhB,YAAA;EAC3B,GAAG,CAACgB,KAAA,EAAOhB,YAAA,CAAa;EAExB,MAAM0E,YAAA,GAAepG,WAAA,CACnB,CAAC;IAAEsE,GAAG;IAAE+B;EAAS,CAAE;IACjB,IAAIA,SAAA,KAAc,UAAU;MAC1B1C,WAAA;IACF;IAEA,MAAM2C,aAAA,GAAgBrC,IAAA,EAAME,IAAA,EAAMoC,SAAA,CAAWC,CAAA,IAAMA,CAAA,CAAE1C,EAAE,KAAKQ,GAAA,CAAIR,EAAE;IAClE,MAAM2C,oBAAA,GAAsC;MAAEtC,IAAA,EAAM;IAAG;IAEvD,IAAImC,aAAA,KAAkB,CAAC,GAAG;MACxB,MAAMI,OAAA,GAAU,C,GAAIzC,IAAA,CAAKE,IAAI,CAAC;MAC9BuC,OAAO,CAACJ,aAAA,CAAc,GAAGhC,GAAA;MACzBmC,oBAAA,CAAqBtC,IAAI,GAAGuC,OAAA;IAC9B,OAAO;MACLD,oBAAA,CAAqBtC,IAAI,GAAG,CAACG,GAAA,E,GAAQL,IAAA,CAAKE,IAAI,CAAC;IACjD;IAEA,KAAKO,WAAA,CAAY+B,oBAAA;EACnB,GACA,CAACxC,IAAA,EAAME,IAAA,EAAMO,WAAA,EAAaf,WAAA,CAAY;EAGxC,MAAMgD,cAAA,GAAiB3G,WAAA,CACpB4G,IAAA;IACC,MAAMF,OAAA,GAAUzC,IAAA,CAAKE,IAAI,CAAC0C,MAAM,CAAEvC,GAAA,IAAQA,GAAA,CAAIR,EAAE,KAAK8C,IAAA,CAAK9C,EAAE;IAE5D,KAAKY,WAAA,CAAY;MACf,GAAGT,IAAI;MACPE,IAAA,EAAMuC;IACR;IAEAjD,kBAAA,CAAmBJ,SAAA;EACrB,GACA,CAACY,IAAA,EAAMS,WAAA,CAAY;EAGrB,MAAMoC,YAAA,GAAe9G,WAAA,CAA2B8D,EAAA;IAC9CP,6BAAA,CAA8BwD,OAAO,GAAG;IAExC,IAAIjD,EAAA,EAAI;MACNL,kBAAA,CAAmBK,EAAA;IACrB,OAAO;MACLL,kBAAA,CAAmBJ,SAAA;IACrB;EACF,GAAG,EAAE;EAELpD,SAAA,CAAU;IACR,IAAIsD,6BAAA,CAA8BwD,OAAO,EAAE;MACzCxD,6BAAA,CAA8BwD,OAAO,GAAG;MACxClD,UAAA;IACF;EACF,GAAG,CAACA,UAAA,CAAW;EAEf5D,SAAA,CAAU;IACR,IAAI,CAAC2D,YAAA,EAAc;MACjBH,kBAAA,CAAmBJ,SAAA;IACrB;EACF,GAAG,CAACO,YAAA,CAAa;EAEjB,MAAMoD,SAAA,GACJxF,WAAA,KAAgB,SAChB8B,WAAA,EAAa2D,WAAA,GAAcjE,aAAA,GAAgBb,UAAU,CAAC,EAAE,GAAGA,UAAA,CAAW,EAAE+E,MAAA;EAE1EjH,SAAA,CAAU;IACR,IAAI+C,aAAA,IAAiBG,kBAAA,EAAoB;MACvCU,UAAA;IACF;EACF,GAAG,CAACV,kBAAA,EAAoBU,UAAA,EAAYb,aAAA,CAAc;EAElD/C,SAAA,CAAU;IACR,IAAI+C,aAAA,IAAiB,CAACY,YAAA,IAAgBT,kBAAA,EAAoB;MACxDC,qBAAA,CAAsBC,SAAA;IACxB;IACA;IACA;EACF,GAAG,CAACO,YAAA,CAAa;EAEjB,MAAMuD,iBAAA,GAAoBrH,KAAA,CAAMsH,OAAO,CACrC,OAAO;IACLzB,OAAA,EAAS9F,6BAAA,CAA8B0E,WAAA,GAAca,GAAA,CAAI,CAAC;MAAEC;IAAQ,CAAE,KAAKA,QAAA;IAC3ET,KAAA,EAAOjD,KAAA,CAAMkD,YAAY,IAAI/B,gBAAA,EAAkBgC,KAAA,EAAOC,UAAA,EAAYF,YAAA;IAClEG,IAAA,EAAMrD,KAAA,CAAMsD,WAAW,IAAInC,gBAAA,EAAkBmC;EAC/C,IACA,CAACV,WAAA,EAAa5C,KAAA,EAAOmB,gBAAA,CAAiB;EAGxC,oBACEuE,KAAA,CAAC;IAAIC,SAAA,EAAWlG,SAAA;4BACdiG,KAAA,CAAC;MAAIC,SAAA,EAAW,GAAGlG,SAAA,UAAmB;iBACnCa,KAAA,E,aACDoF,KAAA,CAAC;QAAIC,SAAA,EAAW,GAAGlG,SAAA,WAAoB;gCACrCmG,IAAA,CAACtG,YAAA;UACCO,WAAA,EAAaA,WAAA,KAAgB;UAC7BJ,SAAA,EAAWA,SAAA;UACXoG,WAAA,EAAY;UACZF,SAAA,EAAW,GAAGlG,SAAA,YAAqB4B,aAAA,GAAgB,iBAAiB,wBAAwB;UAC5FiE,WAAA,EAAa3E,MAAA,CAAO2E,WAAW;UAC/BzE,IAAA,EAAMA,IAAA;UACNiF,IAAA,EAAMzE,aAAA,GAAgB,SAASK,SAAA;UAC/BqE,KAAA,EAAOlF,IAAA,CAAKC,CAAC,CAAC;UACdkF,OAAA,EAAS3E,aAAA,GAAgBI,qBAAA,GAAwBS,UAAA;UACjDP,WAAA,EAAaA,WAAA;UACbnB,UAAA,EAAYA;yBAEdoF,IAAA,CAACnH,IAAA;UACC,iBAAe,GAAGgB,SAAA,UAAmB;UACrC,iBAAewB,kBAAA;UACf0E,SAAA,EAAW,GAAGlG,SAAA,oBACZwB,kBAAA,GAAqB,GAAGxB,SAAA,kBAA2B,GAAG,IACtD;UACFqG,IAAA,eAAMF,IAAA,CAACjH,WAAA;YAAYsH,SAAA,EAAWhF,kBAAA,GAAqB,OAAO;;UAC1D+E,OAAA,EAASA,CAAA,KAAM9E,qBAAA,CAAsB,CAACD,kBAAA;UACtCiF,SAAA,EAAU;UACVC,IAAA,EAAK;oBAEJrF,CAAA,CAAE;;;QAIRhB,WAAA,EACAsC,cAAA,gBACCwD,IAAA,CAAC;gBAAG9E,CAAA,CAAE;sBAEN4E,KAAA,CAACtH,QAAA;iBACEkE,IAAA,EAAME,IAAA,IAAQF,IAAA,CAAKE,IAAI,CAAC4D,MAAM,KAAK,kBAClCV,KAAA,CAAC;QAAIC,SAAA,EAAW,GAAGlG,SAAA,cAAuB;gCACxCmG,IAAA,CAAC;oBACE/E,IAAA,CAAKC,CAAC,CAAC,qBAAqB;YAC3BiF,KAAA,EAAO1E,aAAA,GACHR,IAAA,CAAKC,CAAC,CAAC,uBACP9C,cAAA,CAAemD,gBAAA,EAAkBkF,MAAA,EAAQC,MAAA,EAAQzF,IAAA;UACvD;yBAEF+E,IAAA,CAACtG,YAAA;UACCO,WAAA,EAAawF,SAAA;UACb5F,SAAA,EAAWA,SAAA;UACX6F,WAAA,EAAa3E,MAAA,CAAO2E,WAAW;UAC/BzE,IAAA,EAAMA,IAAA;UACNkF,KAAA,EAAOlF,IAAA,CAAKC,CAAC,CAAC,0BAA0B;YACtCiF,KAAA,EAAO1E,aAAA,GACHR,IAAA,CAAKC,CAAC,CAAC,sBACP9C,cAAA,CAAemD,gBAAA,EAAkBkF,MAAA,EAAQE,QAAA,EAAU1F,IAAA;UACzD;UACAmF,OAAA,EAAS3E,aAAA,GAAgBI,qBAAA,GAAwBS,UAAA;UACjDP,WAAA,EAAaA,WAAA;UACbnB,UAAA,EAAYA;;UAIjB8B,IAAA,EAAME,IAAA,IAAQF,IAAA,CAAKE,IAAI,CAAC4D,MAAM,GAAG,kBAChCR,IAAA,CAACvG,oBAAA;kBACC,aAAAuG,IAAA,CAAC9G,iBAAA;UACCwD,IAAA,EAAMA,IAAA;UACNkE,kBAAA,EAAoB;UACpBC,aAAA,EAAezF,QAAA;UACfkD,kBAAA,EACE,CAAClE,KAAA,CAAMmE,SAAS,IAAI7C,KAAA,CAAMC,OAAO,CAACvB,KAAA,CAAMoE,UAAU,IAC9C1C,SAAA,GACA,IAAI1B,KAAA,CAAMoE,UAAU,IAAInE,SAAA,CAAUyG,UAAU,CAAC,KAAK,YAAY;UAEpE3F,KAAA,EAAOyE,iBAAA;oBAEP,aAAAE,KAAA,CAAC1G,oBAAA;YACCoC,cAAA,EAAgBC,aAAA,GAAgBb,UAAU,CAAC,EAAE,GAAGA,UAAA;YAChDoC,WAAA,EAAaA,WAAA;YACb+D,kBAAA,eACEf,IAAA,CAACrG,UAAA;cAAWsC,eAAA,EAAiBA,eAAA;cAAiBsD,YAAA,EAAcA;;oCAG9DS,IAAA,CAAC1G,aAAA;cACCyG,SAAA,EAAW,GAAGlG,SAAA,WAAoB;cAClCmH,MAAA,EAAQ3F,kBAAA,GAAqB,SAAS;cACtCkB,EAAA,EAAI,GAAG1C,SAAA,UAAmB;wBAE1B,aAAAmG,IAAA,CAAC;gBAAID,SAAA,EAAW,GAAGlG,SAAA,iBAA0B;0BAC1C0B,gBAAA,iBACCyE,IAAA,CAACzG,cAAA;kBAAeiC,cAAA,EAAgBD,gBAAA,CAAiB0F;;;gBAItDpG,KAAA,E,aACDmF,IAAA,CAACpG,2BAAA;;;;QAOZI,UAAA,E,aACDgG,IAAA,CAAC7D,cAAA;MACC5B,WAAA,EAAaE,iBAAA;MACbyG,QAAA,EAAU9B,cAAA;MACV+B,MAAA,EAAQtC;;;AAIhB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getTranslation","hoistQueryParamsToAnd","transformColumnsToPreferences","React","Fragment","useCallback","useEffect","useRef","useState","Pill","useEffectEvent","ChevronIcon","useAuth","useConfig","ListQueryProvider","useServerFunctions","TableColumnsProvider","useTranslation","AnimateHeight","ColumnSelector","useDocumentDrawer","RelationshipProvider","AddNewButton","DrawerLink","RelationshipTablePagination","baseClass","RelationshipTable","props","AfterInput","allowCreate","BeforeInput","disableTable","field","fieldPath","filterOptions","initialData","initialDataFromProps","initialDrawerData","Label","parent","relationTo","Table","setTable","config","getEntityConfig","i18n","t","query","setQuery","openColumnSelector","setOpenColumnSelector","collectionConfig","collectionSlug","isPolymorphic","Array","isArray","selectedCollection","setSelectedCollection","undefined","permissions","openDrawerWhenRelationChanges","currentDrawerID","setCurrentDrawerID","DocumentDrawer","closeDrawer","isDrawerOpen","openDrawer","id","isLoadingTable","setIsLoadingTable","data","setData","docs","reduce","acc","doc","columnState","setColumnState","getTableState","renderTable","newQuery","limit","defaultLimit","admin","pagination","sort","defaultSort","where","defaultColumns","map","accessor","active","renderRowTypes","disableRowTypes","newData","state","newColumnState","NewTable","columns","enableRowSelections","orderableFieldName","orderable","collection","name","tableAppearance","handleTableRender","onDrawerSave","operation","foundDocIndex","findIndex","d","withNewOrUpdatedData","newDocs","onDrawerDelete","args","filter","onDrawerOpen","current","canCreate","collections","create","memoizedListQuery","useMemo","_jsxs","className","_jsx","buttonStyle","icon","label","onClick","direction","pillStyle","size","length","labels","plural","singular","modifySearchParams","onQueryChange","replaceAll","LinkedCellOverride","height","slug","onDelete","onSave"],"sources":["../../../src/elements/RelationshipTable/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n type CollectionSlug,\n type Column,\n type JoinFieldClient,\n type ListQuery,\n type PaginatedDocs,\n type Where,\n} from 'payload'\nimport { hoistQueryParamsToAnd, transformColumnsToPreferences } from 'payload/shared'\nimport React, { Fragment, useCallback, useEffect, useRef, useState } from 'react'\n\nimport type { DocumentDrawerProps } from '../DocumentDrawer/types.js'\n\nimport { Pill } from '../../elements/Pill/index.js'\nimport { useEffectEvent } from '../../hooks/useEffectEvent.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { ListQueryProvider } from '../../providers/ListQuery/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { TableColumnsProvider } from '../../providers/TableColumns/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { AnimateHeight } from '../AnimateHeight/index.js'\nimport { ColumnSelector } from '../ColumnSelector/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport { RelationshipProvider } from '../Table/RelationshipProvider/index.js'\nimport { AddNewButton } from './AddNewButton.js'\nimport { DrawerLink } from './cells/DrawerLink/index.js'\nimport { RelationshipTablePagination } from './Pagination.js'\nimport './index.scss'\n\nconst baseClass = 'relationship-table'\n\ntype RelationshipTableComponentProps = {\n readonly AfterInput?: React.ReactNode\n readonly allowCreate?: boolean\n readonly BeforeInput?: React.ReactNode\n readonly disableTable?: boolean\n readonly field: JoinFieldClient\n readonly fieldPath?: string\n readonly filterOptions?: Where\n readonly initialData?: PaginatedDocs\n readonly initialDrawerData?: DocumentDrawerProps['initialData']\n readonly Label?: React.ReactNode\n readonly parent?: {\n collectionSlug: CollectionSlug\n id: number | string\n joinPath: string\n }\n readonly relationTo: string | string[]\n}\n\nexport type OnDrawerOpen = (id?: string) => void\n\nexport const RelationshipTable: React.FC<RelationshipTableComponentProps> = (props) => {\n const {\n AfterInput,\n allowCreate = true,\n BeforeInput,\n disableTable = false,\n field,\n fieldPath,\n filterOptions,\n initialData: initialDataFromProps,\n initialDrawerData,\n Label,\n parent,\n relationTo,\n } = props\n const [Table, setTable] = useState<React.ReactNode>(null)\n const { config, getEntityConfig } = useConfig()\n const { i18n, t } = useTranslation()\n\n const [query, setQuery] = useState<ListQuery>()\n const [openColumnSelector, setOpenColumnSelector] = useState(false)\n\n const [collectionConfig] = useState(() => getEntityConfig({ collectionSlug: relationTo }))\n\n const isPolymorphic = Array.isArray(relationTo)\n\n const [selectedCollection, setSelectedCollection] = useState(\n isPolymorphic ? undefined : relationTo,\n )\n\n const { permissions } = useAuth()\n\n const openDrawerWhenRelationChanges = useRef(false)\n\n const [currentDrawerID, setCurrentDrawerID] = useState<string | undefined>(undefined)\n\n const [DocumentDrawer, , { closeDrawer, isDrawerOpen, openDrawer }] = useDocumentDrawer({\n id: currentDrawerID,\n collectionSlug: selectedCollection,\n })\n\n const [isLoadingTable, setIsLoadingTable] = useState(!disableTable)\n\n const [data, setData] = useState<PaginatedDocs>(() =>\n initialDataFromProps\n ? {\n ...initialDataFromProps,\n docs: Array.isArray(initialDataFromProps.docs)\n ? initialDataFromProps.docs.reduce((acc, doc) => {\n if (typeof doc === 'string' || typeof doc === 'number') {\n return [\n ...acc,\n {\n id: doc,\n },\n ]\n }\n\n return [...acc, doc]\n }, [])\n : [],\n }\n : undefined,\n )\n\n const [columnState, setColumnState] = useState<Column[]>()\n\n const { getTableState } = useServerFunctions()\n\n const renderTable = useCallback(\n async (data?: PaginatedDocs) => {\n const newQuery: ListQuery = {\n limit: field?.defaultLimit || collectionConfig?.admin?.pagination?.defaultLimit,\n sort: field.defaultSort || collectionConfig?.defaultSort,\n ...(query || {}),\n where: { ...(query?.where || {}) },\n }\n\n if (filterOptions) {\n newQuery.where = hoistQueryParamsToAnd(newQuery.where, filterOptions)\n }\n\n // map columns from string[] to CollectionPreferences['columns']\n const defaultColumns = field.admin.defaultColumns\n ? field.admin.defaultColumns.map((accessor) => ({\n accessor,\n active: true,\n }))\n : undefined\n\n const renderRowTypes =\n typeof field.admin.disableRowTypes === 'boolean'\n ? !field.admin.disableRowTypes\n : Array.isArray(relationTo)\n\n const {\n data: newData,\n state: newColumnState,\n Table: NewTable,\n } = await getTableState({\n collectionSlug: relationTo,\n columns: transformColumnsToPreferences(query?.columns) || defaultColumns,\n data,\n enableRowSelections: false,\n orderableFieldName:\n !field.orderable || Array.isArray(field.collection)\n ? undefined\n : `_${field.collection}_${field.name}_order`,\n parent,\n query: newQuery,\n renderRowTypes,\n tableAppearance: 'condensed',\n })\n\n setData(newData)\n setTable(NewTable)\n setColumnState(newColumnState)\n setIsLoadingTable(false)\n },\n [\n field.defaultLimit,\n field.defaultSort,\n field.admin.defaultColumns,\n field.admin.disableRowTypes,\n field.collection,\n field.name,\n field.orderable,\n collectionConfig?.admin?.pagination?.defaultLimit,\n collectionConfig?.defaultSort,\n query,\n filterOptions,\n getTableState,\n relationTo,\n parent,\n ],\n )\n\n const handleTableRender = useEffectEvent((query: ListQuery, disableTable: boolean) => {\n if (!disableTable && (!Table || query)) {\n void renderTable()\n }\n })\n\n useEffect(() => {\n handleTableRender(query, disableTable)\n }, [query, disableTable])\n\n const onDrawerSave = useCallback<DocumentDrawerProps['onSave']>(\n ({ doc, operation }) => {\n if (operation === 'create') {\n closeDrawer()\n }\n\n const foundDocIndex = data?.docs?.findIndex((d) => d.id === doc.id)\n const withNewOrUpdatedData: PaginatedDocs = { docs: [] } as PaginatedDocs\n\n if (foundDocIndex !== -1) {\n const newDocs = [...data.docs]\n newDocs[foundDocIndex] = doc\n withNewOrUpdatedData.docs = newDocs\n } else {\n withNewOrUpdatedData.docs = [doc, ...data.docs]\n }\n\n void renderTable(withNewOrUpdatedData)\n },\n [data?.docs, renderTable, closeDrawer],\n )\n\n const onDrawerDelete = useCallback<DocumentDrawerProps['onDelete']>(\n (args) => {\n const newDocs = data.docs.filter((doc) => doc.id !== args.id)\n\n void renderTable({\n ...data,\n docs: newDocs,\n })\n\n setCurrentDrawerID(undefined)\n },\n [data, renderTable],\n )\n\n const onDrawerOpen = useCallback<OnDrawerOpen>((id) => {\n openDrawerWhenRelationChanges.current = true\n\n if (id) {\n setCurrentDrawerID(id)\n } else {\n setCurrentDrawerID(undefined)\n }\n }, [])\n\n useEffect(() => {\n if (openDrawerWhenRelationChanges.current) {\n openDrawerWhenRelationChanges.current = false\n openDrawer()\n }\n }, [openDrawer])\n\n useEffect(() => {\n if (!isDrawerOpen) {\n setCurrentDrawerID(undefined)\n }\n }, [isDrawerOpen])\n\n const canCreate =\n allowCreate !== false &&\n permissions?.collections?.[isPolymorphic ? relationTo[0] : relationTo]?.create\n\n useEffect(() => {\n if (isPolymorphic && selectedCollection) {\n openDrawer()\n }\n }, [selectedCollection, openDrawer, isPolymorphic])\n\n useEffect(() => {\n if (isPolymorphic && !isDrawerOpen && selectedCollection) {\n setSelectedCollection(undefined)\n }\n // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isDrawerOpen])\n\n const memoizedListQuery = React.useMemo(\n () => ({\n columns: transformColumnsToPreferences(columnState)?.map(({ accessor }) => accessor),\n limit: field.defaultLimit ?? collectionConfig?.admin?.pagination?.defaultLimit,\n sort: field.defaultSort ?? collectionConfig?.defaultSort,\n }),\n [columnState, field, collectionConfig],\n )\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__header`}>\n {Label}\n <div className={`${baseClass}__actions`}>\n <AddNewButton\n allowCreate={allowCreate !== false}\n baseClass={baseClass}\n buttonStyle=\"none\"\n className={`${baseClass}__add-new${isPolymorphic ? '-polymorphic' : ' doc-drawer__toggler'}`}\n collections={config.collections}\n i18n={i18n}\n icon={isPolymorphic ? 'plus' : undefined}\n label={i18n.t('fields:addNew')}\n onClick={isPolymorphic ? setSelectedCollection : openDrawer}\n permissions={permissions}\n relationTo={relationTo}\n />\n <Pill\n aria-controls={`${baseClass}-columns`}\n aria-expanded={openColumnSelector}\n className={`${baseClass}__toggle-columns ${\n openColumnSelector ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<ChevronIcon direction={openColumnSelector ? 'up' : 'down'} />}\n onClick={() => setOpenColumnSelector(!openColumnSelector)}\n pillStyle=\"light\"\n size=\"small\"\n >\n {t('general:columns')}\n </Pill>\n </div>\n </div>\n {BeforeInput}\n {isLoadingTable ? (\n <p>{t('general:loading')}</p>\n ) : (\n <Fragment>\n {data?.docs && data.docs.length === 0 && (\n <div className={`${baseClass}__no-results`}>\n <p>\n {i18n.t('general:noResults', {\n label: isPolymorphic\n ? i18n.t('general:documents')\n : getTranslation(collectionConfig?.labels?.plural, i18n),\n })}\n </p>\n <AddNewButton\n allowCreate={canCreate}\n baseClass={baseClass}\n collections={config.collections}\n i18n={i18n}\n label={i18n.t('general:createNewLabel', {\n label: isPolymorphic\n ? i18n.t('general:document')\n : getTranslation(collectionConfig?.labels?.singular, i18n),\n })}\n onClick={isPolymorphic ? setSelectedCollection : openDrawer}\n permissions={permissions}\n relationTo={relationTo}\n />\n </div>\n )}\n {data?.docs && data.docs.length > 0 && (\n <RelationshipProvider>\n <ListQueryProvider\n data={data}\n modifySearchParams={false}\n onQueryChange={setQuery}\n orderableFieldName={\n !field.orderable || Array.isArray(field.collection)\n ? undefined\n : `_${field.collection}_${fieldPath.replaceAll('.', '_')}_order`\n }\n query={memoizedListQuery}\n >\n <TableColumnsProvider\n collectionSlug={isPolymorphic ? relationTo[0] : relationTo}\n columnState={columnState}\n LinkedCellOverride={\n <DrawerLink currentDrawerID={currentDrawerID} onDrawerOpen={onDrawerOpen} />\n }\n >\n <AnimateHeight\n className={`${baseClass}__columns`}\n height={openColumnSelector ? 'auto' : 0}\n id={`${baseClass}-columns`}\n >\n <div className={`${baseClass}__columns-inner`}>\n {collectionConfig && (\n <ColumnSelector collectionSlug={collectionConfig.slug} />\n )}\n </div>\n </AnimateHeight>\n {Table}\n <RelationshipTablePagination />\n </TableColumnsProvider>\n </ListQueryProvider>\n </RelationshipProvider>\n )}\n </Fragment>\n )}\n {AfterInput}\n <DocumentDrawer\n initialData={initialDrawerData}\n onDelete={onDrawerDelete}\n onSave={onDrawerSave}\n />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,8 @@
1
1
  import React from 'react';
2
2
  import './index.scss';
3
+ /**
4
+ * @internal
5
+ */
3
6
  export declare const StickyToolbar: React.FC<{
4
7
  children: React.ReactNode;
5
8
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/StickyToolbar/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IACnC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CAAiE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/StickyToolbar/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAIrB;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IACnC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CAAiE,CAAA"}
@@ -2,6 +2,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import React from 'react';
3
3
  import './index.scss';
4
4
  const baseClass = 'sticky-toolbar';
5
+ /**
6
+ * @internal
7
+ */
5
8
  export const StickyToolbar = ({
6
9
  children
7
10
  }) => /*#__PURE__*/_jsx("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","baseClass","StickyToolbar","children","_jsx","className"],"sources":["../../../src/elements/StickyToolbar/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'sticky-toolbar'\n\nexport const StickyToolbar: React.FC<{\n children: React.ReactNode\n}> = ({ children }) => <div className={baseClass}>{children}</div>\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,aAAA,GAERA,CAAC;EAAEC;AAAQ,CAAE,kBAAKC,IAAA,CAAC;EAAIC,SAAA,EAAWJ,SAAA;YAAYE","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","baseClass","StickyToolbar","children","_jsx","className"],"sources":["../../../src/elements/StickyToolbar/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'sticky-toolbar'\n\n/**\n * @internal\n */\nexport const StickyToolbar: React.FC<{\n children: React.ReactNode\n}> = ({ children }) => <div className={baseClass}>{children}</div>\n"],"mappings":";AAAA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB;;;AAGA,OAAO,MAAMC,aAAA,GAERA,CAAC;EAAEC;AAAQ,CAAE,kBAAKC,IAAA,CAAC;EAAIC,SAAA,EAAWJ,SAAA;YAAYE","ignoreList":[]}
@@ -5,6 +5,7 @@
5
5
  margin-bottom: $baseline;
6
6
  overflow: auto;
7
7
  max-width: 100%;
8
+ isolation: isolate;
8
9
 
9
10
  table {
10
11
  min-width: 100%;
@@ -10,5 +10,5 @@ function require(m) {
10
10
  }
11
11
  // Workaround end
12
12
 
13
- import{k as a}from"./chunk-IOKOROQ2.js";import"./chunk-5LKBKI4T.js";export{a as default};
14
- //# sourceMappingURL=CodeEditor-B56LZ4XC.js.map
13
+ import{k as a}from"./chunk-6UH4KUYK.js";import"./chunk-5LKBKI4T.js";export{a as default};
14
+ //# sourceMappingURL=CodeEditor-2AHTKKBE.js.map
@@ -20,8 +20,8 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
20
20
  monaco.config({ paths: { vs: '...' } })
21
21
 
22
22
  For more please check the link https://github.com/suren-atoyan/monaco-loader#config
23
- `},je=we(jt)(Me),Mt={config:wt},Se=Mt;var St=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return function(o){return r.reduceRight(function(i,a){return a(i)},o)}},xe=St;function Ee(t,e){return Object.keys(e).forEach(function(r){e[r]instanceof Object&&t[r]&&Object.assign(e[r],Ee(t[r],e[r]))}),oe(oe({},t),e)}var Ce=Ee;var xt={type:"cancelation",msg:"operation is manually canceled"};function Et(t){var e=!1,r=new Promise(function(n,o){t.then(function(i){return e?o(xt):n(i)}),t.catch(o)});return r.cancel=function(){return e=!0},r}var Y=Et;var Ct=be.create({config:ye,isInitialized:!1,resolve:null,reject:null,monaco:null}),Pe=ge(Ct,2),B=Pe[0],J=Pe[1];function Pt(t){var e=Se.config(t),r=e.monaco,n=pe(e,["monaco"]);J(function(o){return{config:Ce(o.config,n),monaco:r}})}function Tt(){var t=B(function(e){var r=e.monaco,n=e.isInitialized,o=e.resolve;return{monaco:r,isInitialized:n,resolve:o}});if(!t.isInitialized){if(J({isInitialized:!0}),t.monaco)return t.resolve(t.monaco),Y(ie);if(window.monaco&&window.monaco.editor)return Te(window.monaco),t.resolve(window.monaco),Y(ie);xe(At,It)(Dt)}return Y(ie)}function At(t){return document.body.appendChild(t)}function Rt(t){var e=document.createElement("script");return t&&(e.src=t),e}function It(t){var e=B(function(n){var o=n.config,i=n.reject;return{config:o,reject:i}}),r=Rt("".concat(e.config.paths.vs,"/loader.js"));return r.onload=function(){return t()},r.onerror=e.reject,r}function Dt(){var t=B(function(r){var n=r.config,o=r.resolve,i=r.reject;return{config:n,resolve:o,reject:i}}),e=window.require;e.config(t.config),e(["vs/editor/editor.main"],function(r){Te(r),t.resolve(r)},function(r){t.reject(r)})}function Te(t){B().monaco||J({monaco:t})}function Lt(){return B(function(t){var e=t.monaco;return e})}var ie=new Promise(function(t,e){return J({resolve:t,reject:e})}),_t={config:Pt,init:Tt,__getMonacoInstance:Lt},k=_t;import{memo as kt}from"react";import Wt,{useState as Ae,useRef as W,useCallback as Re,useEffect as Ie}from"react";import{memo as $t}from"react";import ae from"react";import Ht from"react";import{useEffect as Kt}from"react";import{useEffect as Jt,useRef as Qt}from"react";import{useState as vn}from"react";import{memo as nr}from"react";import or,{useState as De,useEffect as Q,useRef as R,useCallback as ir}from"react";import{useEffect as ar,useRef as cr}from"react";var Nt={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},ce=Nt,Vt={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}},zt=Vt;function Bt({children:t}){return Ht.createElement("div",{style:zt.container},t)}var Ft=Bt,Ut=Ft;function qt({width:t,height:e,isEditorReady:r,loading:n,_ref:o,className:i,wrapperProps:a}){return ae.createElement("section",{style:{...ce.wrapper,width:t,height:e},...a},!r&&ae.createElement(Ut,null,n),ae.createElement("div",{ref:o,style:{...ce.fullWidth,...!r&&ce.hide},className:i}))}var Gt=qt,Le=$t(Gt);function Yt(t){Kt(t,[])}var _e=Yt;function Xt(t,e,r=!0){let n=Qt(!0);Jt(n.current||!r?()=>{n.current=!1}:t,e)}var S=Xt;function F(){}function $(t,e,r,n){return Zt(t,n)||er(t,e,r,n)}function Zt(t,e){return t.editor.getModel(ke(t,e))}function er(t,e,r,n){return t.editor.createModel(e,r,n?ke(t,n):void 0)}function ke(t,e){return t.Uri.parse(e)}function tr({original:t,modified:e,language:r,originalLanguage:n,modifiedLanguage:o,originalModelPath:i,modifiedModelPath:a,keepCurrentOriginalModel:c=!1,keepCurrentModifiedModel:u=!1,theme:s="light",loading:d="Loading...",options:f={},height:x="100%",width:w="100%",className:M,wrapperProps:C={},beforeMount:p=F,onMount:E=F}){let[y,L]=Ae(!1),[A,g]=Ae(!0),h=W(null),v=W(null),P=W(null),b=W(E),l=W(p),T=W(!1);_e(()=>{let m=k.init();return m.then(O=>(v.current=O)&&g(!1)).catch(O=>O?.type!=="cancelation"&&console.error("Monaco initialization: error:",O)),()=>h.current?H():m.cancel()}),S(()=>{if(h.current&&v.current){let m=h.current.getOriginalEditor(),O=$(v.current,t||"",n||r||"text",i||"");O!==m.getModel()&&m.setModel(O)}},[i],y),S(()=>{if(h.current&&v.current){let m=h.current.getModifiedEditor(),O=$(v.current,e||"",o||r||"text",a||"");O!==m.getModel()&&m.setModel(O)}},[a],y),S(()=>{let m=h.current.getModifiedEditor();m.getOption(v.current.editor.EditorOption.readOnly)?m.setValue(e||""):e!==m.getValue()&&(m.executeEdits("",[{range:m.getModel().getFullModelRange(),text:e||"",forceMoveMarkers:!0}]),m.pushUndoStop())},[e],y),S(()=>{h.current?.getModel()?.original.setValue(t||"")},[t],y),S(()=>{let{original:m,modified:O}=h.current.getModel();v.current.editor.setModelLanguage(m,n||r||"text"),v.current.editor.setModelLanguage(O,o||r||"text")},[r,n,o],y),S(()=>{v.current?.editor.setTheme(s)},[s],y),S(()=>{h.current?.updateOptions(f)},[f],y);let _=Re(()=>{if(!v.current)return;l.current(v.current);let m=$(v.current,t||"",n||r||"text",i||""),O=$(v.current,e||"",o||r||"text",a||"");h.current?.setModel({original:m,modified:O})},[r,e,o,t,n,i,a]),q=Re(()=>{!T.current&&P.current&&(h.current=v.current.editor.createDiffEditor(P.current,{automaticLayout:!0,...f}),_(),v.current?.editor.setTheme(s),L(!0),T.current=!0)},[f,s,_]);Ie(()=>{y&&b.current(h.current,v.current)},[y]),Ie(()=>{!A&&!y&&q()},[A,y,q]);function H(){let m=h.current?.getModel();c||m?.original?.dispose(),u||m?.modified?.dispose(),h.current?.dispose()}return Wt.createElement(Le,{width:w,height:x,isEditorReady:y,loading:d,_ref:P,className:M,wrapperProps:C})}var rr=tr,gn=kt(rr);function ur(t){let e=cr();return ar(()=>{e.current=t},[t]),e.current}var sr=ur,X=new Map;function lr({defaultValue:t,defaultLanguage:e,defaultPath:r,value:n,language:o,path:i,theme:a="light",line:c,loading:u="Loading...",options:s={},overrideServices:d={},saveViewState:f=!0,keepCurrentModel:x=!1,width:w="100%",height:M="100%",className:C,wrapperProps:p={},beforeMount:E=F,onMount:y=F,onChange:L,onValidate:A=F}){let[g,h]=De(!1),[v,P]=De(!0),b=R(null),l=R(null),T=R(null),_=R(y),q=R(E),H=R(),m=R(n),O=sr(i),le=R(!1),te=R(!1);_e(()=>{let j=k.init();return j.then(I=>(b.current=I)&&P(!1)).catch(I=>I?.type!=="cancelation"&&console.error("Monaco initialization: error:",I)),()=>l.current?Ye():j.cancel()}),S(()=>{let j=$(b.current,t||n||"",e||o||"",i||r||"");j!==l.current?.getModel()&&(f&&X.set(O,l.current?.saveViewState()),l.current?.setModel(j),f&&l.current?.restoreViewState(X.get(i)))},[i],g),S(()=>{l.current?.updateOptions(s)},[s],g),S(()=>{!l.current||n===void 0||(l.current.getOption(b.current.editor.EditorOption.readOnly)?l.current.setValue(n):n!==l.current.getValue()&&(te.current=!0,l.current.executeEdits("",[{range:l.current.getModel().getFullModelRange(),text:n,forceMoveMarkers:!0}]),l.current.pushUndoStop(),te.current=!1))},[n],g),S(()=>{let j=l.current?.getModel();j&&o&&b.current?.editor.setModelLanguage(j,o)},[o],g),S(()=>{c!==void 0&&l.current?.revealLine(c)},[c],g),S(()=>{b.current?.editor.setTheme(a)},[a],g);let fe=ir(()=>{if(!(!T.current||!b.current)&&!le.current){q.current(b.current);let j=i||r,I=$(b.current,n||t||"",e||o||"",j||"");l.current=b.current?.editor.create(T.current,{model:I,automaticLayout:!0,...s},d),f&&l.current.restoreViewState(X.get(j)),b.current.editor.setTheme(a),c!==void 0&&l.current.revealLine(c),h(!0),le.current=!0}},[t,e,r,n,o,i,s,d,f,a,c]);Q(()=>{g&&_.current(l.current,b.current)},[g]),Q(()=>{!v&&!g&&fe()},[v,g,fe]),m.current=n,Q(()=>{g&&L&&(H.current?.dispose(),H.current=l.current?.onDidChangeModelContent(j=>{te.current||L(l.current.getValue(),j)}))},[g,L]),Q(()=>{if(g){let j=b.current.editor.onDidChangeMarkers(I=>{let re=l.current.getModel()?.uri;if(re&&I.find(ne=>ne.path===re.path)){let ne=b.current.editor.getModelMarkers({resource:re});A?.(ne)}});return()=>{j?.dispose()}}return()=>{}},[g,A]);function Ye(){H.current?.dispose(),x?f&&X.set(i,l.current.saveViewState()):l.current.getModel()?.dispose(),l.current.dispose()}return or.createElement(Le,{width:w,height:M,isEditorReady:g,loading:u,_ref:T,className:C,wrapperProps:p})}var fr=lr,dr=nr(fr),Z=dr;import Ke,{useState as Rr}from"react";import{c as wr}from"react/compiler-runtime";import{jsx as Or}from"react/jsx-runtime";import{createContext as jr,use as Mr,useEffect as Sr,useState as Ve}from"react";import{c as mr}from"react/compiler-runtime";import{jsx as $e}from"react/jsx-runtime";import{createContext as pr,use as gr,useCallback as hr,useEffect as Ne,useMemo as We,useRef as vr,useState as br}from"react";var He=pr(void 0),yr=({children:t,config:e})=>{let[r,n]=br(e),o=vr(!0);Ne(()=>{if(o.current){o.current=!1;return}n(e)},[e,n]);let{collectionsBySlug:i,globalsBySlug:a}=We(()=>{let s={},d={};for(let f of r.collections)s[f.slug]=f;for(let f of r.globals)d[f.slug]=f;return{collectionsBySlug:s,globalsBySlug:d}},[r]),c=hr(s=>"collectionSlug"in s?i[s.collectionSlug]??null:"globalSlug"in s?a[s.globalSlug]??null:null,[i,a]),u=We(()=>({config:r,getEntityConfig:c,setConfig:n}),[r,c,n]);return $e(He,{value:u,children:t})},ue=()=>gr(He),Pn=t=>{let e=mr(7),{children:r,config:n}=t,{config:o,setConfig:i}=ue(),a,c;if(e[0]!==n||e[1]!==i?(a=()=>{i(n)},c=[n,i],e[0]=n,e[1]=i,e[2]=a,e[3]=c):(a=e[2],c=e[3]),Ne(a,c),o!==n&&o.unauthenticated!==n.unauthenticated){let u;return e[4]!==r||e[5]!==n?(u=$e(yr,{config:n,children:r}),e[4]=r,e[5]=n,e[6]=u):u=e[6],u}return r};var xr={autoMode:!0,setTheme:()=>null,theme:"light"},Be=jr(xr);function ze(t,e,r){let n=new Date;n.setTime(n.getTime()+r*24*60*60*1e3);let o="expires="+n.toUTCString();document.cookie=t+"="+e+";"+o+";path=/"}var Er=t=>{let e,r=window.document.cookie.split("; ").find(n=>n.startsWith(`${t}=`))?.split("=")[1];return r==="light"||r==="dark"?e=r:e=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",document.documentElement.setAttribute("data-theme",e),{theme:e,themeFromCookies:r}},Cr="light",kn=t=>{let e=wr(11),{children:r,theme:n}=t,{config:o}=ue(),i=o.admin.theme,a=`${o.cookiePrefix||"payload"}-theme`,[c,u]=Ve(n||Cr),[s,d]=Ve(),f,x;e[0]!==a||e[1]!==i?(f=()=>{if(i!=="all")return;let{theme:p,themeFromCookies:E}=Er(a);u(p),d(!E)},x=[i,a],e[0]=a,e[1]=i,e[2]=f,e[3]=x):(f=e[2],x=e[3]),Sr(f,x);let w;e[4]!==a?(w=p=>{if(p==="light"||p==="dark")u(p),d(!1),ze(a,p,365),document.documentElement.setAttribute("data-theme",p);else if(p==="auto"){ze(a,p,-1);let E=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";document.documentElement.setAttribute("data-theme",E),d(!0),u(E)}},e[4]=a,e[5]=w):w=e[5];let M=w,C;return e[6]!==s||e[7]!==r||e[8]!==M||e[9]!==c?(C=Or(Be,{value:{autoMode:s,setTheme:M,theme:c},children:r}),e[6]=s,e[7]=r,e[8]=M,e[9]=c,e[10]=C):C=e[10],C},Fe=()=>Mr(Be);import{c as Tr}from"react/compiler-runtime";import{jsx as U}from"react/jsx-runtime";import"react";import{c as Pr}from"react/compiler-runtime";import*as N from"react";var Ue=(t,e)=>{let r=Pr(9),n=e===void 0?!1:e,[o,i]=N.useState(!1),a=N.useRef(void 0),c;r[0]!==t?(c=()=>(i(!1),clearTimeout(a.current),a.current=setTimeout(()=>{i(!0)},t),()=>{clearTimeout(a.current)}),r[0]=t,r[1]=c):c=r[1];let u=c,s,d;r[2]!==u||r[3]!==n?(s=()=>{n&&u()},d=[u,n],r[2]=u,r[3]=n,r[4]=s,r[5]=d):(s=r[4],d=r[5]),N.useEffect(s,d);let f;return r[6]!==o||r[7]!==u?(f=[o,u],r[6]=o,r[7]=u,r[8]=f):f=r[8],f};var se=({animationDelay:t="0ms",className:e,disableInlineStyles:r=!1,height:n="60px",width:o="100%"})=>U("div",{className:["shimmer-effect",e].filter(Boolean).join(" "),style:{height:!r&&(typeof n=="number"?`${n}px`:n),width:!r&&(typeof o=="number"?`${o}px`:o)},children:U("div",{className:"shimmer-effect__shine",style:{animationDelay:t}})}),Fn=t=>{let e=Tr(9),{className:r,count:n,height:o,renderDelay:i,shimmerDelay:a,shimmerItemClassName:c,width:u}=t,s=i===void 0?500:i,d=a===void 0?25:a,f=typeof d=="number"?`${d}ms`:d,[x]=Ue(s,!0);if(!x)return null;let w;e[0]!==n?(w=[...Array(n)],e[0]=n,e[1]=w):w=e[1];let M;return e[2]!==r||e[3]!==o||e[4]!==f||e[5]!==c||e[6]!==w||e[7]!==u?(M=U("div",{className:r,children:w.map((C,p)=>U("div",{className:c,children:U(se,{animationDelay:`calc(${p} * ${f})`,height:o,width:u})},p))}),e[2]=r,e[3]=o,e[4]=f,e[5]=c,e[6]=w,e[7]=u,e[8]=M):M=e[8],M};var ee={insertSpaces:!1,tabSize:4,trimAutoWhitespace:!1},qe={hideCursorInOverviewRuler:!0,minimap:{enabled:!1},overviewRulerBorder:!1,readOnly:!1,scrollbar:{alwaysConsumeMouseWheel:!1},scrollBeyondLastLine:!1,wordWrap:"on"};var Ir="default"in Z?Z.default:Z,Dr="code-editor",Lr=t=>{let e=Ar(10),{className:r,maxHeight:n,minHeight:o,options:i,readOnly:a,recalculatedHeightAt:c,value:u,...s}=t,d=o??56,f=Ke.useRef(c),{insertSpaces:x,tabSize:w,trimAutoWhitespace:M,...C}=i||{},p=i?.padding?(i.padding.top||0)+(i.padding?.bottom||0):0,[E,y]=Rr(d),{theme:L}=Fe(),A=s?.defaultLanguage?`language--${s.defaultLanguage}`:"",g=a&&"read-only",h;e[0]!==r||e[1]!==A||e[2]!==g?(h=[Dr,r,A,g].filter(Boolean),e[0]=r,e[1]=A,e[2]=g,e[3]=h):h=e[3];let v=h.join(" "),P,b;return e[4]!==d||e[5]!==p||e[6]!==c||e[7]!==u?(P=()=>{c&&c>f.current&&(y(Math.max(d,u.split(`
24
- `).length*18+2+p)),f.current=c)},b=[u,d,p,c],e[4]=d,e[5]=p,e[6]=c,e[7]=u,e[8]=P,e[9]=b):(P=e[8],b=e[9]),Ke.useEffect(P,b),Ge(Ir,{className:v,loading:Ge(se,{height:E}),options:{...qe,...C,readOnly:!!a,detectIndentation:!1,insertSpaces:void 0,tabSize:void 0,trimAutoWhitespace:void 0},theme:L==="dark"?"vs-dark":"vs",value:u,...s,height:n?Math.min(E,n):E,onChange:(l,T)=>{s.onChange?.(l,T),y(Math.max(d,l.split(`
25
- `).length*18+2+p))},onMount:(l,T)=>{s.onMount?.(l,T);let _=l.getModel();_&&_.updateOptions({insertSpaces:x??ee.insertSpaces,tabSize:w??ee.tabSize,trimAutoWhitespace:M??ee.trimAutoWhitespace}),y(Math.max(d,l.getValue().split(`
23
+ `},je=we(jt)(Me),Mt={config:wt},Se=Mt;var St=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return function(o){return r.reduceRight(function(i,a){return a(i)},o)}},xe=St;function Ee(t,e){return Object.keys(e).forEach(function(r){e[r]instanceof Object&&t[r]&&Object.assign(e[r],Ee(t[r],e[r]))}),oe(oe({},t),e)}var Ce=Ee;var xt={type:"cancelation",msg:"operation is manually canceled"};function Et(t){var e=!1,r=new Promise(function(n,o){t.then(function(i){return e?o(xt):n(i)}),t.catch(o)});return r.cancel=function(){return e=!0},r}var Y=Et;var Ct=be.create({config:ye,isInitialized:!1,resolve:null,reject:null,monaco:null}),Pe=ge(Ct,2),B=Pe[0],J=Pe[1];function Pt(t){var e=Se.config(t),r=e.monaco,n=pe(e,["monaco"]);J(function(o){return{config:Ce(o.config,n),monaco:r}})}function Tt(){var t=B(function(e){var r=e.monaco,n=e.isInitialized,o=e.resolve;return{monaco:r,isInitialized:n,resolve:o}});if(!t.isInitialized){if(J({isInitialized:!0}),t.monaco)return t.resolve(t.monaco),Y(ie);if(window.monaco&&window.monaco.editor)return Te(window.monaco),t.resolve(window.monaco),Y(ie);xe(At,It)(Dt)}return Y(ie)}function At(t){return document.body.appendChild(t)}function Rt(t){var e=document.createElement("script");return t&&(e.src=t),e}function It(t){var e=B(function(n){var o=n.config,i=n.reject;return{config:o,reject:i}}),r=Rt("".concat(e.config.paths.vs,"/loader.js"));return r.onload=function(){return t()},r.onerror=e.reject,r}function Dt(){var t=B(function(r){var n=r.config,o=r.resolve,i=r.reject;return{config:n,resolve:o,reject:i}}),e=window.require;e.config(t.config),e(["vs/editor/editor.main"],function(r){Te(r),t.resolve(r)},function(r){t.reject(r)})}function Te(t){B().monaco||J({monaco:t})}function Lt(){return B(function(t){var e=t.monaco;return e})}var ie=new Promise(function(t,e){return J({resolve:t,reject:e})}),_t={config:Pt,init:Tt,__getMonacoInstance:Lt},k=_t;import{memo as kt}from"react";import Wt,{useState as Ae,useRef as W,useCallback as Re,useEffect as Ie}from"react";import{memo as $t}from"react";import ae from"react";import Ht from"react";import{useEffect as Kt}from"react";import{useEffect as Jt,useRef as Qt}from"react";import{useState as vn}from"react";import{memo as nr}from"react";import or,{useState as De,useEffect as Q,useRef as R,useCallback as ir}from"react";import{useEffect as ar,useRef as cr}from"react";var Nt={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},ce=Nt,Vt={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}},zt=Vt;function Bt({children:t}){return Ht.createElement("div",{style:zt.container},t)}var Ft=Bt,Ut=Ft;function qt({width:t,height:e,isEditorReady:r,loading:n,_ref:o,className:i,wrapperProps:a}){return ae.createElement("section",{style:{...ce.wrapper,width:t,height:e},...a},!r&&ae.createElement(Ut,null,n),ae.createElement("div",{ref:o,style:{...ce.fullWidth,...!r&&ce.hide},className:i}))}var Gt=qt,Le=$t(Gt);function Yt(t){Kt(t,[])}var _e=Yt;function Xt(t,e,r=!0){let n=Qt(!0);Jt(n.current||!r?()=>{n.current=!1}:t,e)}var S=Xt;function F(){}function $(t,e,r,n){return Zt(t,n)||er(t,e,r,n)}function Zt(t,e){return t.editor.getModel(ke(t,e))}function er(t,e,r,n){return t.editor.createModel(e,r,n?ke(t,n):void 0)}function ke(t,e){return t.Uri.parse(e)}function tr({original:t,modified:e,language:r,originalLanguage:n,modifiedLanguage:o,originalModelPath:i,modifiedModelPath:a,keepCurrentOriginalModel:c=!1,keepCurrentModifiedModel:u=!1,theme:s="light",loading:d="Loading...",options:f={},height:x="100%",width:w="100%",className:M,wrapperProps:C={},beforeMount:p=F,onMount:E=F}){let[y,L]=Ae(!1),[A,g]=Ae(!0),h=W(null),v=W(null),P=W(null),b=W(E),l=W(p),T=W(!1);_e(()=>{let m=k.init();return m.then(O=>(v.current=O)&&g(!1)).catch(O=>O?.type!=="cancelation"&&console.error("Monaco initialization: error:",O)),()=>h.current?H():m.cancel()}),S(()=>{if(h.current&&v.current){let m=h.current.getOriginalEditor(),O=$(v.current,t||"",n||r||"text",i||"");O!==m.getModel()&&m.setModel(O)}},[i],y),S(()=>{if(h.current&&v.current){let m=h.current.getModifiedEditor(),O=$(v.current,e||"",o||r||"text",a||"");O!==m.getModel()&&m.setModel(O)}},[a],y),S(()=>{let m=h.current.getModifiedEditor();m.getOption(v.current.editor.EditorOption.readOnly)?m.setValue(e||""):e!==m.getValue()&&(m.executeEdits("",[{range:m.getModel().getFullModelRange(),text:e||"",forceMoveMarkers:!0}]),m.pushUndoStop())},[e],y),S(()=>{h.current?.getModel()?.original.setValue(t||"")},[t],y),S(()=>{let{original:m,modified:O}=h.current.getModel();v.current.editor.setModelLanguage(m,n||r||"text"),v.current.editor.setModelLanguage(O,o||r||"text")},[r,n,o],y),S(()=>{v.current?.editor.setTheme(s)},[s],y),S(()=>{h.current?.updateOptions(f)},[f],y);let _=Re(()=>{if(!v.current)return;l.current(v.current);let m=$(v.current,t||"",n||r||"text",i||""),O=$(v.current,e||"",o||r||"text",a||"");h.current?.setModel({original:m,modified:O})},[r,e,o,t,n,i,a]),q=Re(()=>{!T.current&&P.current&&(h.current=v.current.editor.createDiffEditor(P.current,{automaticLayout:!0,...f}),_(),v.current?.editor.setTheme(s),L(!0),T.current=!0)},[f,s,_]);Ie(()=>{y&&b.current(h.current,v.current)},[y]),Ie(()=>{!A&&!y&&q()},[A,y,q]);function H(){let m=h.current?.getModel();c||m?.original?.dispose(),u||m?.modified?.dispose(),h.current?.dispose()}return Wt.createElement(Le,{width:w,height:x,isEditorReady:y,loading:d,_ref:P,className:M,wrapperProps:C})}var rr=tr,gn=kt(rr);function ur(t){let e=cr();return ar(()=>{e.current=t},[t]),e.current}var sr=ur,X=new Map;function lr({defaultValue:t,defaultLanguage:e,defaultPath:r,value:n,language:o,path:i,theme:a="light",line:c,loading:u="Loading...",options:s={},overrideServices:d={},saveViewState:f=!0,keepCurrentModel:x=!1,width:w="100%",height:M="100%",className:C,wrapperProps:p={},beforeMount:E=F,onMount:y=F,onChange:L,onValidate:A=F}){let[g,h]=De(!1),[v,P]=De(!0),b=R(null),l=R(null),T=R(null),_=R(y),q=R(E),H=R(),m=R(n),O=sr(i),le=R(!1),te=R(!1);_e(()=>{let j=k.init();return j.then(I=>(b.current=I)&&P(!1)).catch(I=>I?.type!=="cancelation"&&console.error("Monaco initialization: error:",I)),()=>l.current?Ye():j.cancel()}),S(()=>{let j=$(b.current,t||n||"",e||o||"",i||r||"");j!==l.current?.getModel()&&(f&&X.set(O,l.current?.saveViewState()),l.current?.setModel(j),f&&l.current?.restoreViewState(X.get(i)))},[i],g),S(()=>{l.current?.updateOptions(s)},[s],g),S(()=>{!l.current||n===void 0||(l.current.getOption(b.current.editor.EditorOption.readOnly)?l.current.setValue(n):n!==l.current.getValue()&&(te.current=!0,l.current.executeEdits("",[{range:l.current.getModel().getFullModelRange(),text:n,forceMoveMarkers:!0}]),l.current.pushUndoStop(),te.current=!1))},[n],g),S(()=>{let j=l.current?.getModel();j&&o&&b.current?.editor.setModelLanguage(j,o)},[o],g),S(()=>{c!==void 0&&l.current?.revealLine(c)},[c],g),S(()=>{b.current?.editor.setTheme(a)},[a],g);let fe=ir(()=>{if(!(!T.current||!b.current)&&!le.current){q.current(b.current);let j=i||r,I=$(b.current,n||t||"",e||o||"",j||"");l.current=b.current?.editor.create(T.current,{model:I,automaticLayout:!0,...s},d),f&&l.current.restoreViewState(X.get(j)),b.current.editor.setTheme(a),c!==void 0&&l.current.revealLine(c),h(!0),le.current=!0}},[t,e,r,n,o,i,s,d,f,a,c]);Q(()=>{g&&_.current(l.current,b.current)},[g]),Q(()=>{!v&&!g&&fe()},[v,g,fe]),m.current=n,Q(()=>{g&&L&&(H.current?.dispose(),H.current=l.current?.onDidChangeModelContent(j=>{te.current||L(l.current.getValue(),j)}))},[g,L]),Q(()=>{if(g){let j=b.current.editor.onDidChangeMarkers(I=>{let re=l.current.getModel()?.uri;if(re&&I.find(ne=>ne.path===re.path)){let ne=b.current.editor.getModelMarkers({resource:re});A?.(ne)}});return()=>{j?.dispose()}}return()=>{}},[g,A]);function Ye(){H.current?.dispose(),x?f&&X.set(i,l.current.saveViewState()):l.current.getModel()?.dispose(),l.current.dispose()}return or.createElement(Le,{width:w,height:M,isEditorReady:g,loading:u,_ref:T,className:C,wrapperProps:p})}var fr=lr,dr=nr(fr),Z=dr;import Ke,{useState as Rr}from"react";import{c as wr}from"react/compiler-runtime";import{jsx as Or}from"react/jsx-runtime";import{createContext as jr,use as Mr,useEffect as Sr,useState as Ve}from"react";import{c as mr}from"react/compiler-runtime";import{jsx as $e}from"react/jsx-runtime";import{createContext as pr,use as gr,useCallback as hr,useEffect as Ne,useMemo as We,useRef as vr,useState as br}from"react";var He=pr(void 0),yr=({children:t,config:e})=>{let[r,n]=br(e),o=vr(!0);Ne(()=>{if(o.current){o.current=!1;return}n(e)},[e,n]);let{collectionsBySlug:i,globalsBySlug:a}=We(()=>{let s={},d={};for(let f of r.collections)s[f.slug]=f;for(let f of r.globals)d[f.slug]=f;return{collectionsBySlug:s,globalsBySlug:d}},[r]),c=hr(s=>"collectionSlug"in s?i[s.collectionSlug]??null:"globalSlug"in s?a[s.globalSlug]??null:null,[i,a]),u=We(()=>({config:r,getEntityConfig:c,setConfig:n}),[r,c,n]);return $e(He,{value:u,children:t})},ue=()=>gr(He),Pn=t=>{let e=mr(7),{children:r,config:n}=t,{config:o,setConfig:i}=ue(),a,c;if(e[0]!==n||e[1]!==i?(a=()=>{i(n)},c=[n,i],e[0]=n,e[1]=i,e[2]=a,e[3]=c):(a=e[2],c=e[3]),Ne(a,c),o!==n&&o.unauthenticated!==n.unauthenticated){let u;return e[4]!==r||e[5]!==n?(u=$e(yr,{config:n,children:r}),e[4]=r,e[5]=n,e[6]=u):u=e[6],u}return r};var xr={autoMode:!0,setTheme:()=>null,theme:"light"},Be=jr(xr);function ze(t,e,r){let n=new Date;n.setTime(n.getTime()+r*24*60*60*1e3);let o="expires="+n.toUTCString();document.cookie=t+"="+e+";"+o+";path=/"}var Er=t=>{let e,r=window.document.cookie.split("; ").find(n=>n.startsWith(`${t}=`))?.split("=")[1];return r==="light"||r==="dark"?e=r:e=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",document.documentElement.setAttribute("data-theme",e),{theme:e,themeFromCookies:r}},Cr="light",kn=t=>{let e=wr(11),{children:r,theme:n}=t,{config:o}=ue(),i=o.admin.theme,a=`${o.cookiePrefix||"payload"}-theme`,[c,u]=Ve(n||Cr),[s,d]=Ve(),f,x;e[0]!==a||e[1]!==i?(f=()=>{if(i!=="all")return;let{theme:p,themeFromCookies:E}=Er(a);u(p),d(!E)},x=[i,a],e[0]=a,e[1]=i,e[2]=f,e[3]=x):(f=e[2],x=e[3]),Sr(f,x);let w;e[4]!==a?(w=p=>{if(p==="light"||p==="dark")u(p),d(!1),ze(a,p,365),document.documentElement.setAttribute("data-theme",p);else if(p==="auto"){ze(a,p,-1);let E=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";document.documentElement.setAttribute("data-theme",E),d(!0),u(E)}},e[4]=a,e[5]=w):w=e[5];let M=w,C;return e[6]!==s||e[7]!==r||e[8]!==M||e[9]!==c?(C=Or(Be,{value:{autoMode:s,setTheme:M,theme:c},children:r}),e[6]=s,e[7]=r,e[8]=M,e[9]=c,e[10]=C):C=e[10],C},Fe=()=>Mr(Be);import{c as Tr}from"react/compiler-runtime";import{jsx as U}from"react/jsx-runtime";import"react";import{c as Pr}from"react/compiler-runtime";import*as N from"react";var Ue=(t,e)=>{let r=Pr(9),n=e===void 0?!1:e,[o,i]=N.useState(!1),a=N.useRef(void 0),c;r[0]!==t?(c=()=>(i(!1),clearTimeout(a.current),a.current=setTimeout(()=>{i(!0)},t),()=>{clearTimeout(a.current)}),r[0]=t,r[1]=c):c=r[1];let u=c,s,d;r[2]!==u||r[3]!==n?(s=()=>{n&&u()},d=[u,n],r[2]=u,r[3]=n,r[4]=s,r[5]=d):(s=r[4],d=r[5]),N.useEffect(s,d);let f;return r[6]!==o||r[7]!==u?(f=[o,u],r[6]=o,r[7]=u,r[8]=f):f=r[8],f};var se=({animationDelay:t="0ms",className:e,disableInlineStyles:r=!1,height:n="60px",width:o="100%"})=>U("div",{className:["shimmer-effect",e].filter(Boolean).join(" "),style:{height:!r&&(typeof n=="number"?`${n}px`:n),width:!r&&(typeof o=="number"?`${o}px`:o)},children:U("div",{className:"shimmer-effect__shine",style:{animationDelay:t}})}),Fn=t=>{let e=Tr(9),{className:r,count:n,height:o,renderDelay:i,shimmerDelay:a,shimmerItemClassName:c,width:u}=t,s=i===void 0?500:i,d=a===void 0?25:a,f=typeof d=="number"?`${d}ms`:d,[x]=Ue(s,!0);if(!x)return null;let w;e[0]!==n?(w=[...Array(n)],e[0]=n,e[1]=w):w=e[1];let M;return e[2]!==r||e[3]!==o||e[4]!==f||e[5]!==c||e[6]!==w||e[7]!==u?(M=U("div",{className:r,children:w.map((C,p)=>U("div",{className:c,children:U(se,{animationDelay:`calc(${p} * ${f})`,height:o,width:u})},p))}),e[2]=r,e[3]=o,e[4]=f,e[5]=c,e[6]=w,e[7]=u,e[8]=M):M=e[8],M};var ee={insertSpaces:!1,tabSize:4,trimAutoWhitespace:!1},qe={hideCursorInOverviewRuler:!0,minimap:{enabled:!1},overviewRulerBorder:!1,readOnly:!1,scrollbar:{alwaysConsumeMouseWheel:!1},scrollBeyondLastLine:!1,wordWrap:"on"};var Ir="default"in Z?Z.default:Z,Dr="code-editor",Lr=t=>{let e=Ar(10),{className:r,maxHeight:n,minHeight:o,options:i,readOnly:a,recalculatedHeightAt:c,value:u,...s}=t,d=o??56,f=Ke.useRef(c),{insertSpaces:x,tabSize:w,trimAutoWhitespace:M,...C}=i||{},p=i?.padding?(i.padding.top||0)+(i.padding?.bottom||0):0,[E,y]=Rr(d),{theme:L}=Fe(),A=s?.defaultLanguage?`language--${s.defaultLanguage}`:"",g=a&&"read-only",h;e[0]!==r||e[1]!==A||e[2]!==g?(h=[Dr,r,A,g].filter(Boolean),e[0]=r,e[1]=A,e[2]=g,e[3]=h):h=e[3];let v=h.join(" "),P,b;return e[4]!==d||e[5]!==p||e[6]!==c||e[7]!==u?(P=()=>{c&&c>f.current&&(y(u?Math.max(d,u.split(`
24
+ `).length*18+2+p):d),f.current=c)},b=[u,d,p,c],e[4]=d,e[5]=p,e[6]=c,e[7]=u,e[8]=P,e[9]=b):(P=e[8],b=e[9]),Ke.useEffect(P,b),Ge(Ir,{className:v,loading:Ge(se,{height:E}),options:{...qe,...C,readOnly:!!a,detectIndentation:!1,insertSpaces:void 0,tabSize:void 0,trimAutoWhitespace:void 0},theme:L==="dark"?"vs-dark":"vs",value:u,...s,height:n?Math.min(E,n):E,onChange:(l,T)=>{s.onChange?.(l,T),y(l?Math.max(d,l.split(`
25
+ `).length*18+2+p):d)},onMount:(l,T)=>{s.onMount?.(l,T);let _=l.getModel();_&&_.updateOptions({insertSpaces:x??ee.insertSpaces,tabSize:w??ee.tabSize,trimAutoWhitespace:M??ee.trimAutoWhitespace}),y(Math.max(d,l.getValue().split(`
26
26
  `).length*18+2+p))}})},eo=Lr;export{yr as a,ue as b,Pn as c,Ue as d,se as e,Fn as f,Cr as g,kn as h,Fe as i,ee as j,eo as k};
27
- //# sourceMappingURL=chunk-IOKOROQ2.js.map
27
+ //# sourceMappingURL=chunk-6UH4KUYK.js.map