@payloadcms/next 3.44.0 → 3.45.0-canary.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  2. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +0 -23
  3. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  4. package/dist/prod/styles.css +1 -1
  5. package/dist/views/Document/getDocumentView.d.ts.map +1 -1
  6. package/dist/views/Document/getDocumentView.js +0 -19
  7. package/dist/views/Document/getDocumentView.js.map +1 -1
  8. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  9. package/dist/views/Document/getMetaBySegment.js +0 -9
  10. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  11. package/dist/views/Document/index.d.ts.map +1 -1
  12. package/dist/views/Document/index.js +46 -21
  13. package/dist/views/Document/index.js.map +1 -1
  14. package/dist/views/Root/getDocumentViewInfo.d.ts.map +1 -1
  15. package/dist/views/Root/getDocumentViewInfo.js +0 -5
  16. package/dist/views/Root/getDocumentViewInfo.js.map +1 -1
  17. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  18. package/dist/views/Root/getRouteData.js +0 -2
  19. package/dist/views/Root/getRouteData.js.map +1 -1
  20. package/dist/views/Root/metadata.d.ts.map +1 -1
  21. package/dist/views/Root/metadata.js +0 -2
  22. package/dist/views/Root/metadata.js.map +1 -1
  23. package/package.json +7 -7
  24. package/dist/views/LivePreview/Context/collisionDetection.d.ts +0 -3
  25. package/dist/views/LivePreview/Context/collisionDetection.d.ts.map +0 -1
  26. package/dist/views/LivePreview/Context/collisionDetection.js +0 -29
  27. package/dist/views/LivePreview/Context/collisionDetection.js.map +0 -1
  28. package/dist/views/LivePreview/Context/context.d.ts +0 -51
  29. package/dist/views/LivePreview/Context/context.d.ts.map +0 -1
  30. package/dist/views/LivePreview/Context/context.js +0 -41
  31. package/dist/views/LivePreview/Context/context.js.map +0 -1
  32. package/dist/views/LivePreview/Context/index.d.ts +0 -19
  33. package/dist/views/LivePreview/Context/index.d.ts.map +0 -1
  34. package/dist/views/LivePreview/Context/index.js +0 -154
  35. package/dist/views/LivePreview/Context/index.js.map +0 -1
  36. package/dist/views/LivePreview/Context/sizeReducer.d.ts +0 -20
  37. package/dist/views/LivePreview/Context/sizeReducer.d.ts.map +0 -1
  38. package/dist/views/LivePreview/Context/sizeReducer.js +0 -30
  39. package/dist/views/LivePreview/Context/sizeReducer.js.map +0 -1
  40. package/dist/views/LivePreview/Device/index.d.ts +0 -5
  41. package/dist/views/LivePreview/Device/index.d.ts.map +0 -1
  42. package/dist/views/LivePreview/Device/index.js +0 -94
  43. package/dist/views/LivePreview/Device/index.js.map +0 -1
  44. package/dist/views/LivePreview/DeviceContainer/index.d.ts +0 -5
  45. package/dist/views/LivePreview/DeviceContainer/index.d.ts.map +0 -1
  46. package/dist/views/LivePreview/DeviceContainer/index.js +0 -55
  47. package/dist/views/LivePreview/DeviceContainer/index.js.map +0 -1
  48. package/dist/views/LivePreview/IFrame/index.d.ts +0 -10
  49. package/dist/views/LivePreview/IFrame/index.d.ts.map +0 -1
  50. package/dist/views/LivePreview/IFrame/index.js +0 -29
  51. package/dist/views/LivePreview/IFrame/index.js.map +0 -1
  52. package/dist/views/LivePreview/IFrame/index.scss +0 -9
  53. package/dist/views/LivePreview/Preview/index.d.ts +0 -5
  54. package/dist/views/LivePreview/Preview/index.d.ts.map +0 -1
  55. package/dist/views/LivePreview/Preview/index.js +0 -167
  56. package/dist/views/LivePreview/Preview/index.js.map +0 -1
  57. package/dist/views/LivePreview/Preview/index.scss +0 -43
  58. package/dist/views/LivePreview/Toolbar/Controls/index.d.ts +0 -5
  59. package/dist/views/LivePreview/Toolbar/Controls/index.d.ts.map +0 -1
  60. package/dist/views/LivePreview/Toolbar/Controls/index.js +0 -151
  61. package/dist/views/LivePreview/Toolbar/Controls/index.js.map +0 -1
  62. package/dist/views/LivePreview/Toolbar/Controls/index.scss +0 -61
  63. package/dist/views/LivePreview/Toolbar/SizeInput/index.d.ts +0 -6
  64. package/dist/views/LivePreview/Toolbar/SizeInput/index.d.ts.map +0 -1
  65. package/dist/views/LivePreview/Toolbar/SizeInput/index.js +0 -100
  66. package/dist/views/LivePreview/Toolbar/SizeInput/index.js.map +0 -1
  67. package/dist/views/LivePreview/Toolbar/SizeInput/index.scss +0 -12
  68. package/dist/views/LivePreview/Toolbar/index.d.ts +0 -7
  69. package/dist/views/LivePreview/Toolbar/index.d.ts.map +0 -1
  70. package/dist/views/LivePreview/Toolbar/index.js +0 -96
  71. package/dist/views/LivePreview/Toolbar/index.js.map +0 -1
  72. package/dist/views/LivePreview/Toolbar/index.scss +0 -43
  73. package/dist/views/LivePreview/ToolbarArea/index.d.ts +0 -6
  74. package/dist/views/LivePreview/ToolbarArea/index.d.ts.map +0 -1
  75. package/dist/views/LivePreview/ToolbarArea/index.js +0 -40
  76. package/dist/views/LivePreview/ToolbarArea/index.js.map +0 -1
  77. package/dist/views/LivePreview/ToolbarArea/index.scss +0 -6
  78. package/dist/views/LivePreview/index.client.d.ts +0 -9
  79. package/dist/views/LivePreview/index.client.d.ts.map +0 -1
  80. package/dist/views/LivePreview/index.client.js +0 -472
  81. package/dist/views/LivePreview/index.client.js.map +0 -1
  82. package/dist/views/LivePreview/index.d.ts +0 -5
  83. package/dist/views/LivePreview/index.d.ts.map +0 -1
  84. package/dist/views/LivePreview/index.js +0 -76
  85. package/dist/views/LivePreview/index.js.map +0 -1
  86. package/dist/views/LivePreview/index.scss +0 -68
  87. package/dist/views/LivePreview/metadata.d.ts +0 -3
  88. package/dist/views/LivePreview/metadata.d.ts.map +0 -1
  89. package/dist/views/LivePreview/metadata.js +0 -16
  90. package/dist/views/LivePreview/metadata.js.map +0 -1
  91. package/dist/views/LivePreview/usePopupWindow.d.ts +0 -20
  92. package/dist/views/LivePreview/usePopupWindow.d.ts.map +0 -1
  93. package/dist/views/LivePreview/usePopupWindow.js +0 -144
  94. package/dist/views/LivePreview/usePopupWindow.js.map +0 -1
@@ -1,68 +0,0 @@
1
- @import '~@payloadcms/ui/scss';
2
-
3
- @layer payload-default {
4
- .live-preview {
5
- width: 100%;
6
- display: flex;
7
- --gradient: linear-gradient(to left, rgba(0, 0, 0, 0.04) 0%, transparent 100%);
8
-
9
- [dir='rtl'] & {
10
- flex-direction: row-reverse;
11
- }
12
-
13
- &--popup-open {
14
- .live-preview {
15
- &__edit {
16
- padding-right: var(--gutter-h);
17
- }
18
- }
19
- }
20
-
21
- &__main {
22
- width: 40%;
23
- display: flex;
24
- flex-direction: column;
25
- min-height: 100%;
26
- position: relative;
27
-
28
- &--popup-open {
29
- width: 100%;
30
- }
31
-
32
- &::after {
33
- content: ' ';
34
- position: absolute;
35
- top: 0;
36
- right: 0;
37
- width: calc(var(--base) * 2);
38
- height: 100%;
39
- background: var(--gradient);
40
- pointer-events: none;
41
- z-index: -1;
42
- }
43
- }
44
-
45
- @include mid-break {
46
- flex-direction: column;
47
-
48
- &__main {
49
- min-height: initial;
50
- width: 100%;
51
-
52
- &::after {
53
- display: none;
54
- }
55
- }
56
-
57
- &__form {
58
- display: block;
59
- }
60
- }
61
- }
62
-
63
- html[data-theme='dark'] {
64
- .live-preview {
65
- --gradient: linear-gradient(to left, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
66
- }
67
- }
68
- }
@@ -1,3 +0,0 @@
1
- import type { GenerateEditViewMetadata } from '../Document/getMetaBySegment.js';
2
- export declare const generateLivePreviewViewMetadata: GenerateEditViewMetadata;
3
- //# sourceMappingURL=metadata.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../src/views/LivePreview/metadata.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAA;AAI/E,eAAO,MAAM,+BAA+B,EAAE,wBAc1C,CAAA"}
@@ -1,16 +0,0 @@
1
- import { generateEditViewMetadata } from '../Edit/metadata.js';
2
- export const generateLivePreviewViewMetadata = async ({
3
- collectionConfig,
4
- config,
5
- globalConfig,
6
- i18n,
7
- isEditing
8
- }) => generateEditViewMetadata({
9
- collectionConfig,
10
- config,
11
- globalConfig,
12
- i18n,
13
- isEditing,
14
- view: 'livePreview'
15
- });
16
- //# sourceMappingURL=metadata.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metadata.js","names":["generateEditViewMetadata","generateLivePreviewViewMetadata","collectionConfig","config","globalConfig","i18n","isEditing","view"],"sources":["../../../src/views/LivePreview/metadata.ts"],"sourcesContent":["import type { Metadata } from 'next'\n\nimport type { GenerateEditViewMetadata } from '../Document/getMetaBySegment.js'\n\nimport { generateEditViewMetadata } from '../Edit/metadata.js'\n\nexport const generateLivePreviewViewMetadata: GenerateEditViewMetadata = async ({\n collectionConfig,\n config,\n globalConfig,\n i18n,\n isEditing,\n}): Promise<Metadata> =>\n generateEditViewMetadata({\n collectionConfig,\n config,\n globalConfig,\n i18n,\n isEditing,\n view: 'livePreview',\n })\n"],"mappings":"AAIA,SAASA,wBAAwB,QAAQ;AAEzC,OAAO,MAAMC,+BAAA,GAA4D,MAAAA,CAAO;EAC9EC,gBAAgB;EAChBC,MAAM;EACNC,YAAY;EACZC,IAAI;EACJC;AAAS,CACV,KACCN,wBAAA,CAAyB;EACvBE,gBAAA;EACAC,MAAA;EACAC,YAAA;EACAC,IAAA;EACAC,SAAA;EACAC,IAAA,EAAM;AACR","ignoreList":[]}
@@ -1,20 +0,0 @@
1
- import type React from 'react';
2
- export interface PopupMessage {
3
- searchParams: {
4
- [key: string]: string | undefined;
5
- code: string;
6
- installation_id: string;
7
- state: string;
8
- };
9
- type: string;
10
- }
11
- export declare const usePopupWindow: (props: {
12
- eventType?: string;
13
- onMessage?: (searchParams: PopupMessage["searchParams"]) => Promise<void>;
14
- url: string;
15
- }) => {
16
- isPopupOpen: boolean;
17
- openPopupWindow: () => void;
18
- popupRef?: React.RefObject<null | Window>;
19
- };
20
- //# sourceMappingURL=usePopupWindow.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePopupWindow.d.ts","sourceRoot":"","sources":["../../../src/views/LivePreview/usePopupWindow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE;QACZ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;QACjC,IAAI,EAAE,MAAM,CAAA;QACZ,eAAe,EAAE,MAAM,CAAA;QACvB,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;IACD,IAAI,EAAE,MAAM,CAAA;CACb;AAED,eAAO,MAAM,cAAc,UAAW;IACpC,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,SAAS,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzE,GAAG,EAAE,MAAM,CAAA;CACZ,KAAG;IACF,WAAW,EAAE,OAAO,CAAA;IACpB,eAAe,EAAE,MAAM,IAAI,CAAA;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,GAAG,MAAM,CAAC,CAAA;CAmH1C,CAAA"}
@@ -1,144 +0,0 @@
1
- 'use client';
2
-
3
- import { c as _c } from "react/compiler-runtime";
4
- import { useConfig } from '@payloadcms/ui';
5
- import { useCallback, useEffect, useRef, useState } from 'react';
6
- export const usePopupWindow = props => {
7
- const $ = _c(15);
8
- const {
9
- eventType,
10
- onMessage,
11
- url
12
- } = props;
13
- const isReceivingMessage = useRef(false);
14
- const [isOpen, setIsOpen] = useState(false);
15
- const {
16
- config: t0
17
- } = useConfig();
18
- const {
19
- serverURL
20
- } = t0;
21
- const popupRef = useRef(null);
22
- let t1;
23
- let t2;
24
- if ($[0] !== eventType || $[1] !== isOpen || $[2] !== onMessage || $[3] !== serverURL || $[4] !== url) {
25
- t1 = () => {
26
- const receiveMessage = async event => {
27
- if (event.origin !== window.location.origin || event.origin !== url || event.origin !== serverURL) {
28
- return;
29
- }
30
- if (typeof onMessage === "function" && event.data?.type === eventType && !isReceivingMessage.current) {
31
- isReceivingMessage.current = true;
32
- await onMessage(event.data?.searchParams);
33
- isReceivingMessage.current = false;
34
- }
35
- };
36
- if (isOpen && popupRef.current) {
37
- window.addEventListener("message", receiveMessage, false);
38
- }
39
- return () => {
40
- window.removeEventListener("message", receiveMessage);
41
- };
42
- };
43
- t2 = [onMessage, eventType, url, serverURL, isOpen];
44
- $[0] = eventType;
45
- $[1] = isOpen;
46
- $[2] = onMessage;
47
- $[3] = serverURL;
48
- $[4] = url;
49
- $[5] = t1;
50
- $[6] = t2;
51
- } else {
52
- t1 = $[5];
53
- t2 = $[6];
54
- }
55
- useEffect(t1, t2);
56
- let t3;
57
- if ($[7] !== url) {
58
- t3 = e => {
59
- if (e) {
60
- e.preventDefault();
61
- }
62
- const features = {
63
- height: 700,
64
- left: "auto",
65
- menubar: "no",
66
- popup: "yes",
67
- toolbar: "no",
68
- top: "auto",
69
- width: 800
70
- };
71
- const popupOptions = Object.entries(features).reduce((str, t4) => {
72
- const [key, value] = t4;
73
- let strCopy = str;
74
- if (value === "auto") {
75
- if (key === "top") {
76
- const v = Math.round(window.innerHeight / 2 - features.height / 2);
77
- strCopy = strCopy + `top=${v},`;
78
- } else {
79
- if (key === "left") {
80
- const v_0 = Math.round(window.innerWidth / 2 - features.width / 2);
81
- strCopy = strCopy + `left=${v_0},`;
82
- }
83
- }
84
- return strCopy;
85
- }
86
- strCopy = strCopy + `${key}=${value},`;
87
- return strCopy;
88
- }, "").slice(0, -1);
89
- const newWindow = window.open(url, "_blank", popupOptions);
90
- popupRef.current = newWindow;
91
- setIsOpen(true);
92
- };
93
- $[7] = url;
94
- $[8] = t3;
95
- } else {
96
- t3 = $[8];
97
- }
98
- const openPopupWindow = t3;
99
- let t4;
100
- let t5;
101
- if ($[9] !== isOpen) {
102
- t4 = () => {
103
- let timer;
104
- if (isOpen) {
105
- timer = setInterval(function () {
106
- if (popupRef.current.closed) {
107
- clearInterval(timer);
108
- setIsOpen(false);
109
- }
110
- }, 1000);
111
- } else {
112
- clearInterval(timer);
113
- }
114
- return () => {
115
- if (timer) {
116
- clearInterval(timer);
117
- }
118
- };
119
- };
120
- t5 = [isOpen, popupRef];
121
- $[9] = isOpen;
122
- $[10] = t4;
123
- $[11] = t5;
124
- } else {
125
- t4 = $[10];
126
- t5 = $[11];
127
- }
128
- useEffect(t4, t5);
129
- let t6;
130
- if ($[12] !== isOpen || $[13] !== openPopupWindow) {
131
- t6 = {
132
- isPopupOpen: isOpen,
133
- openPopupWindow,
134
- popupRef
135
- };
136
- $[12] = isOpen;
137
- $[13] = openPopupWindow;
138
- $[14] = t6;
139
- } else {
140
- t6 = $[14];
141
- }
142
- return t6;
143
- };
144
- //# sourceMappingURL=usePopupWindow.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"usePopupWindow.js","names":["c","_c","useConfig","useCallback","useEffect","useRef","useState","usePopupWindow","props","$","eventType","onMessage","url","isReceivingMessage","isOpen","setIsOpen","config","t0","serverURL","popupRef","t1","t2","receiveMessage","event","origin","window","location","data","type","current","searchParams","addEventListener","removeEventListener","t3","e","preventDefault","features","height","left","menubar","popup","toolbar","top","width","popupOptions","Object","entries","reduce","str","t4","key","value","strCopy","v","Math","round","innerHeight","v_0","innerWidth","slice","newWindow","open","openPopupWindow","t5","timer","closed","clearInterval","t6","isPopupOpen"],"sources":["../../../src/views/LivePreview/usePopupWindow.ts"],"sourcesContent":["'use client'\nimport type React from 'react'\n\nimport { useConfig } from '@payloadcms/ui'\nimport { useCallback, useEffect, useRef, useState } from 'react'\n\nexport interface PopupMessage {\n searchParams: {\n [key: string]: string | undefined\n code: string\n installation_id: string\n state: string\n }\n type: string\n}\n\nexport const usePopupWindow = (props: {\n eventType?: string\n\n onMessage?: (searchParams: PopupMessage['searchParams']) => Promise<void>\n url: string\n}): {\n isPopupOpen: boolean\n openPopupWindow: () => void\n popupRef?: React.RefObject<null | Window>\n} => {\n const { eventType, onMessage, url } = props\n const isReceivingMessage = useRef(false)\n const [isOpen, setIsOpen] = useState(false)\n const {\n config: { serverURL },\n } = useConfig()\n const popupRef = useRef<null | Window>(null)\n\n // Optionally broadcast messages back out to the parent component\n useEffect(() => {\n const receiveMessage = async (event: MessageEvent): Promise<void> => {\n if (\n event.origin !== window.location.origin ||\n event.origin !== url ||\n event.origin !== serverURL\n ) {\n // console.warn(`Message received by ${event.origin}; IGNORED.`) // eslint-disable-line no-console\n return\n }\n\n if (\n typeof onMessage === 'function' &&\n event.data?.type === eventType &&\n !isReceivingMessage.current\n ) {\n isReceivingMessage.current = true\n await onMessage(event.data?.searchParams)\n isReceivingMessage.current = false\n }\n }\n\n if (isOpen && popupRef.current) {\n window.addEventListener('message', receiveMessage, false)\n }\n\n return () => {\n window.removeEventListener('message', receiveMessage)\n }\n }, [onMessage, eventType, url, serverURL, isOpen])\n\n // Customize the size, position, and style of the popup window\n const openPopupWindow = useCallback(\n (e?: MouseEvent) => {\n if (e) {\n e.preventDefault()\n }\n\n const features = {\n height: 700,\n left: 'auto',\n menubar: 'no',\n popup: 'yes',\n toolbar: 'no',\n top: 'auto',\n width: 800,\n }\n\n const popupOptions = Object.entries(features)\n .reduce((str, [key, value]) => {\n let strCopy = str\n if (value === 'auto') {\n if (key === 'top') {\n const v = Math.round(window.innerHeight / 2 - features.height / 2)\n strCopy += `top=${v},`\n } else if (key === 'left') {\n const v = Math.round(window.innerWidth / 2 - features.width / 2)\n strCopy += `left=${v},`\n }\n return strCopy\n }\n\n strCopy += `${key}=${value},`\n return strCopy\n }, '')\n .slice(0, -1) // remove last ',' (comma)\n\n const newWindow = window.open(url, '_blank', popupOptions)\n\n popupRef.current = newWindow\n\n setIsOpen(true)\n },\n [url],\n )\n\n // this is the most stable and widely supported way to check if a popup window is no longer open\n // we poll its ref every x ms and use the popup window's `closed` property\n useEffect(() => {\n let timer: NodeJS.Timeout\n\n if (isOpen) {\n timer = setInterval(function () {\n if (popupRef.current.closed) {\n clearInterval(timer)\n setIsOpen(false)\n }\n }, 1000)\n } else {\n clearInterval(timer)\n }\n\n return () => {\n if (timer) {\n clearInterval(timer)\n }\n }\n }, [isOpen, popupRef])\n\n return {\n isPopupOpen: isOpen,\n openPopupWindow,\n popupRef,\n }\n}\n"],"mappings":"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","ignoreList":[]}