@payload-onpage/core 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/autosave.d.ts +2 -2
- package/dist/autosave.d.ts.map +1 -1
- package/dist/autosave.js +2 -1
- package/dist/autosave.js.map +1 -1
- package/dist/constants.d.ts +14 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +14 -0
- package/dist/constants.js.map +1 -1
- package/dist/docref.d.ts +18 -3
- package/dist/docref.d.ts.map +1 -1
- package/dist/docref.js +13 -4
- package/dist/docref.js.map +1 -1
- package/dist/encode.d.ts +16 -4
- package/dist/encode.d.ts.map +1 -1
- package/dist/encode.js +42 -62
- package/dist/encode.js.map +1 -1
- package/dist/fields.d.ts +39 -8
- package/dist/fields.d.ts.map +1 -1
- package/dist/fields.js +111 -97
- package/dist/fields.js.map +1 -1
- package/dist/index.d.ts +16 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -12
- package/dist/index.js.map +1 -1
- package/dist/path.d.ts +9 -1
- package/dist/path.d.ts.map +1 -1
- package/dist/path.js +27 -8
- package/dist/path.js.map +1 -1
- package/dist/payload.d.ts +5 -3
- package/dist/payload.d.ts.map +1 -1
- package/dist/payload.js +34 -23
- package/dist/payload.js.map +1 -1
- package/dist/ports.d.ts +43 -28
- package/dist/ports.d.ts.map +1 -1
- package/dist/ports.js +11 -1
- package/dist/ports.js.map +1 -1
- package/dist/schema.d.ts +71 -26
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +1 -6
- package/dist/schema.js.map +1 -1
- package/dist/seal.d.ts +17 -0
- package/dist/seal.d.ts.map +1 -1
- package/dist/seal.js +13 -0
- package/dist/seal.js.map +1 -1
- package/dist/session.d.ts +34 -18
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +20 -13
- package/dist/session.js.map +1 -1
- package/dist/stega.d.ts +6 -2
- package/dist/stega.d.ts.map +1 -1
- package/dist/stega.js +18 -13
- package/dist/stega.js.map +1 -1
- package/dist/util.d.ts +9 -0
- package/dist/util.d.ts.map +1 -0
- package/dist/util.js +11 -0
- package/dist/util.js.map +1 -0
- package/package.json +1 -1
- package/src/autosave.ts +4 -3
- package/src/constants.ts +16 -0
- package/src/docref.ts +26 -6
- package/src/encode.ts +47 -55
- package/src/fields.ts +166 -98
- package/src/index.ts +125 -12
- package/src/path.ts +32 -10
- package/src/payload.ts +54 -26
- package/src/ports.ts +50 -22
- package/src/schema.ts +100 -17
- package/src/seal.ts +31 -0
- package/src/session.ts +67 -47
- package/src/stega.ts +25 -17
- package/src/util.ts +12 -0
package/dist/payload.js
CHANGED
|
@@ -17,16 +17,24 @@ export async function errorMessage(res) {
|
|
|
17
17
|
return res.statusText || `HTTP ${res.status}`;
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* The fetch and request init both adapters use: cookie auth by default, plus the
|
|
22
|
+
* caller's `init` (custom auth headers…) on every request. Headers are merged
|
|
23
|
+
* through `Headers`, so a `Headers` instance or tuple list works as well as an object.
|
|
24
|
+
*/
|
|
25
|
+
function client(opts) {
|
|
26
|
+
const f = opts.fetch ?? ((...a) => fetch(...a));
|
|
27
|
+
const init = (extra = {}) => {
|
|
28
|
+
const headers = new Headers(opts.init?.headers);
|
|
29
|
+
new Headers(extra.headers).forEach((v, k) => headers.set(k, v));
|
|
30
|
+
return { credentials: 'include', ...opts.init, ...extra, headers };
|
|
31
|
+
};
|
|
32
|
+
return { f, init };
|
|
33
|
+
}
|
|
20
34
|
export function payloadRest(opts = {}) {
|
|
21
35
|
const api = opts.apiBase ?? DEFAULTS.apiRoute;
|
|
22
36
|
const prefix = opts.prefix ?? DEFAULTS.routePrefix;
|
|
23
|
-
const f
|
|
24
|
-
const init = (extra = {}) => ({
|
|
25
|
-
credentials: 'include',
|
|
26
|
-
...opts.init,
|
|
27
|
-
...extra,
|
|
28
|
-
headers: { ...(opts.init?.headers ?? {}), ...(extra.headers ?? {}) },
|
|
29
|
-
});
|
|
37
|
+
const { f, init } = client(opts);
|
|
30
38
|
const docUrl = (ref) => ref.kind === 'global' ? `${api}/globals/${ref.slug}` : `${api}/${ref.slug}/${ref.id}`;
|
|
31
39
|
const write = async (ref, data, o, publish) => {
|
|
32
40
|
const query = qs({
|
|
@@ -74,7 +82,7 @@ export function payloadRest(opts = {}) {
|
|
|
74
82
|
p.set('locale', o.locale);
|
|
75
83
|
if (o.query)
|
|
76
84
|
p.set(`where[${titleField}][${titleField === 'id' ? 'equals' : 'like'}]`, o.query);
|
|
77
|
-
const res = await f(`${api}/${collection}?${p}`, init());
|
|
85
|
+
const res = await f(`${api}/${collection}?${p}`, init(o.signal ? { signal: o.signal } : {}));
|
|
78
86
|
if (!res.ok)
|
|
79
87
|
throw new Error(await errorMessage(res));
|
|
80
88
|
const body = (await res.json());
|
|
@@ -104,14 +112,21 @@ export function payloadRest(opts = {}) {
|
|
|
104
112
|
},
|
|
105
113
|
};
|
|
106
114
|
}
|
|
115
|
+
/** Smallest image size at least this wide is used for picker thumbnails. */
|
|
116
|
+
const THUMB_WIDTH = 240;
|
|
117
|
+
/**
|
|
118
|
+
* A thumbnail URL: Payload's `thumbnailURL` (the collection's adminThumbnail),
|
|
119
|
+
* else the smallest generated size that is still wide enough, whatever the
|
|
120
|
+
* sizes are named, else the original.
|
|
121
|
+
*/
|
|
107
122
|
function thumbOf(doc) {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
return doc.url
|
|
123
|
+
if (typeof doc.thumbnailURL === 'string' && doc.thumbnailURL)
|
|
124
|
+
return doc.thumbnailURL;
|
|
125
|
+
const sizes = Object.values((doc.sizes ?? {}))
|
|
126
|
+
.filter((s) => typeof s?.url === 'string' && !!s.url)
|
|
127
|
+
.sort((a, b) => (a.width ?? Infinity) - (b.width ?? Infinity));
|
|
128
|
+
const fit = sizes.find((s) => (s.width ?? 0) >= THUMB_WIDTH) ?? sizes.at(-1);
|
|
129
|
+
return fit?.url ?? (typeof doc.url === 'string' ? doc.url : undefined);
|
|
115
130
|
}
|
|
116
131
|
const toItem = (doc) => ({
|
|
117
132
|
id: doc.id,
|
|
@@ -123,9 +138,9 @@ const toItem = (doc) => ({
|
|
|
123
138
|
});
|
|
124
139
|
export function payloadUploads(opts = {}) {
|
|
125
140
|
const api = opts.apiBase ?? DEFAULTS.apiRoute;
|
|
126
|
-
const f
|
|
141
|
+
const { f, init } = client(opts);
|
|
127
142
|
return {
|
|
128
|
-
async search({ query, page = 1, relationTo }) {
|
|
143
|
+
async search({ query, page = 1, relationTo, signal }) {
|
|
129
144
|
const p = new URLSearchParams({
|
|
130
145
|
depth: '0',
|
|
131
146
|
limit: String(opts.pageSize ?? 30),
|
|
@@ -137,7 +152,7 @@ export function payloadUploads(opts = {}) {
|
|
|
137
152
|
p.set('where[and][1][or][0][filename][like]', query);
|
|
138
153
|
p.set('where[and][1][or][1][alt][like]', query);
|
|
139
154
|
}
|
|
140
|
-
const res = await f(`${api}/${relationTo}?${p}`, {
|
|
155
|
+
const res = await f(`${api}/${relationTo}?${p}`, init(signal ? { signal } : {}));
|
|
141
156
|
if (!res.ok)
|
|
142
157
|
throw new Error(await errorMessage(res));
|
|
143
158
|
const body = (await res.json());
|
|
@@ -148,11 +163,7 @@ export function payloadUploads(opts = {}) {
|
|
|
148
163
|
form.append('file', file);
|
|
149
164
|
// Document fields must go in `_payload`; loose multipart parts are ignored by Payload.
|
|
150
165
|
form.append('_payload', JSON.stringify({ alt: alt ?? file.name.replace(/\.[^.]+$/, '').replace(/[-_]+/g, ' ') }));
|
|
151
|
-
const res = await f(`${api}/${relationTo}`, {
|
|
152
|
-
method: 'POST',
|
|
153
|
-
credentials: 'include',
|
|
154
|
-
body: form,
|
|
155
|
-
});
|
|
166
|
+
const res = await f(`${api}/${relationTo}`, init({ method: 'POST', body: form }));
|
|
156
167
|
if (!res.ok)
|
|
157
168
|
throw new Error(await errorMessage(res));
|
|
158
169
|
return toItem((await res.json()).doc);
|
package/dist/payload.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload.js","sourceRoot":"","sources":["../src/payload.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAsBjD,MAAM,EAAE,GAAG,CAAC,MAA6D,EAAE,EAAE;IAC3E,MAAM,CAAC,GAAG,IAAI,eAAe,EAAE,CAAA;IAC/B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE;YAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IACjG,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAA;AACrB,CAAC,CAAA;AAQD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAa;IAC9C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAqB,CAAA;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAA;QAChD,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC5F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,CAAC,UAAU,IAAI,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAA;IAC/C,CAAC;AACH,CAAC;
|
|
1
|
+
{"version":3,"file":"payload.js","sourceRoot":"","sources":["../src/payload.ts"],"names":[],"mappings":"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"}
|
package/dist/ports.d.ts
CHANGED
|
@@ -11,46 +11,52 @@
|
|
|
11
11
|
* Field editors are registered in @payload-onpage/react.
|
|
12
12
|
*/
|
|
13
13
|
import type { DocRef } from './docref.ts';
|
|
14
|
-
import type { MarkerKind } from './stega.ts';
|
|
15
14
|
import type { DocumentSchema } from './schema.ts';
|
|
16
15
|
export type Doc = Record<string, unknown>;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
16
|
+
/** The outcome of a save: success carries the new version, failure its status. */
|
|
17
|
+
export type SaveResult = {
|
|
18
|
+
ok: true;
|
|
19
|
+
/** The document's new `updatedAt`. */
|
|
20
|
+
updatedAt?: string | undefined;
|
|
21
|
+
} | {
|
|
22
|
+
ok: false;
|
|
23
|
+
/** HTTP-like status: 409 means someone else saved first, 0 a network failure. */
|
|
24
|
+
status: number;
|
|
25
|
+
message?: string | undefined;
|
|
26
|
+
};
|
|
27
|
+
/** Options callers often fill from other optional values, so `undefined` is accepted. */
|
|
28
|
+
type Opt<T> = T | undefined;
|
|
25
29
|
export interface DataSource {
|
|
26
30
|
loadSchema(ref: DocRef, opts: {
|
|
27
|
-
locale?: string
|
|
31
|
+
locale?: Opt<string>;
|
|
28
32
|
}): Promise<DocumentSchema>;
|
|
29
33
|
loadDocument(ref: DocRef, opts: {
|
|
30
34
|
draft: boolean;
|
|
31
|
-
locale?: string
|
|
32
|
-
depth?: number
|
|
35
|
+
locale?: Opt<string>;
|
|
36
|
+
depth?: Opt<number>;
|
|
33
37
|
}): Promise<Doc>;
|
|
34
38
|
/** Save fields to the rolling draft. `updatedAt` enables stale-write detection. */
|
|
35
39
|
saveDraft(ref: DocRef, data: Doc, opts: {
|
|
36
|
-
locale?: string
|
|
37
|
-
updatedAt?: string
|
|
40
|
+
locale?: Opt<string>;
|
|
41
|
+
updatedAt?: Opt<string>;
|
|
38
42
|
}): Promise<SaveResult>;
|
|
39
43
|
/** Make the given values live. */
|
|
40
44
|
publish(ref: DocRef, data: Doc, opts: {
|
|
41
|
-
locale?: string
|
|
42
|
-
updatedAt?: string
|
|
45
|
+
locale?: Opt<string>;
|
|
46
|
+
updatedAt?: Opt<string>;
|
|
43
47
|
}): Promise<SaveResult>;
|
|
44
48
|
/** Find documents to link to (relationship fields), by their title field. Optional. */
|
|
45
49
|
search?(collection: string, opts: {
|
|
46
|
-
query?: string
|
|
47
|
-
titleField?: string
|
|
48
|
-
locale?: string
|
|
49
|
-
limit?: number
|
|
50
|
+
query?: Opt<string>;
|
|
51
|
+
titleField?: Opt<string>;
|
|
52
|
+
locale?: Opt<string>;
|
|
53
|
+
limit?: Opt<number>;
|
|
54
|
+
/** Aborted when the search is superseded (the user kept typing). */
|
|
55
|
+
signal?: Opt<AbortSignal>;
|
|
50
56
|
}): Promise<SearchHit[]>;
|
|
51
57
|
/** Create a read-only preview link for a document. Optional. */
|
|
52
58
|
createPreviewLink?(ref: DocRef, opts: {
|
|
53
|
-
locale?: string
|
|
59
|
+
locale?: Opt<string>;
|
|
54
60
|
}): Promise<PreviewLink>;
|
|
55
61
|
}
|
|
56
62
|
export interface PreviewLink {
|
|
@@ -75,16 +81,18 @@ export interface MediaItem {
|
|
|
75
81
|
}
|
|
76
82
|
export interface MediaLibrary {
|
|
77
83
|
search(opts: {
|
|
78
|
-
query?: string
|
|
79
|
-
page?: number
|
|
84
|
+
query?: Opt<string>;
|
|
85
|
+
page?: Opt<number>;
|
|
80
86
|
relationTo: string;
|
|
87
|
+
/** Aborted when the search is superseded. */
|
|
88
|
+
signal?: Opt<AbortSignal>;
|
|
81
89
|
}): Promise<{
|
|
82
90
|
items: MediaItem[];
|
|
83
91
|
hasMore: boolean;
|
|
84
92
|
}>;
|
|
85
93
|
upload?(file: File, opts: {
|
|
86
94
|
relationTo: string;
|
|
87
|
-
alt?: string
|
|
95
|
+
alt?: Opt<string>;
|
|
88
96
|
}): Promise<MediaItem>;
|
|
89
97
|
}
|
|
90
98
|
/**
|
|
@@ -92,15 +100,19 @@ export interface MediaLibrary {
|
|
|
92
100
|
* the kinds auto-mapping markers carry; `field` = resolve from the schema), a
|
|
93
101
|
* row of an array/blocks field (`item`), or the element holding a list (`list`).
|
|
94
102
|
*/
|
|
95
|
-
|
|
103
|
+
/** What a page element shows: a marker's kind, or an annotation's field / row item / list. */
|
|
104
|
+
export declare const TARGET_KINDS: readonly ["text", "textarea", "richtext", "media", "field", "item", "list"];
|
|
105
|
+
export type TargetKind = (typeof TARGET_KINDS)[number];
|
|
106
|
+
export declare const isTargetKind: (value: unknown) => value is TargetKind;
|
|
96
107
|
export interface Target {
|
|
97
108
|
el: Element;
|
|
98
109
|
ref: DocRef;
|
|
99
110
|
path: string;
|
|
100
111
|
kind: TargetKind;
|
|
101
|
-
label?: string
|
|
112
|
+
label?: Opt<string>;
|
|
102
113
|
/** Which locator produced it ("annotation" wins over inferred ones). */
|
|
103
|
-
|
|
114
|
+
/** Which locator found it. */
|
|
115
|
+
source: 'annotation' | 'stega' | (string & {});
|
|
104
116
|
}
|
|
105
117
|
export interface Locator {
|
|
106
118
|
name: string;
|
|
@@ -119,7 +131,9 @@ export interface Renderer {
|
|
|
119
131
|
/** Whether the page re-renders from session state immediately (no save round-trip needed to see edits). */
|
|
120
132
|
live: boolean;
|
|
121
133
|
}
|
|
122
|
-
export
|
|
134
|
+
export declare const ONPAGE_MODES: readonly ["edit", "view"];
|
|
135
|
+
export type OnPageMode = (typeof ONPAGE_MODES)[number];
|
|
136
|
+
export declare const isOnPageMode: (value: unknown) => value is OnPageMode;
|
|
123
137
|
/**
|
|
124
138
|
* Server side: turns a browser's edit/preview access on and off. Framework
|
|
125
139
|
* specific (`nextSession()` for Next.js).
|
|
@@ -148,4 +162,5 @@ export interface SessionAdapter {
|
|
|
148
162
|
disable(): Promise<void>;
|
|
149
163
|
getMode(): Promise<OnPageMode | null>;
|
|
150
164
|
}
|
|
165
|
+
export {};
|
|
151
166
|
//# sourceMappingURL=ports.d.ts.map
|
package/dist/ports.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":"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"}
|
package/dist/ports.js
CHANGED
|
@@ -1,2 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
import { MARKER_KINDS } from "./stega.js";
|
|
2
|
+
/**
|
|
3
|
+
* What a page element shows: a field (`text`/`textarea`/`richtext`/`media` are
|
|
4
|
+
* the kinds auto-mapping markers carry; `field` = resolve from the schema), a
|
|
5
|
+
* row of an array/blocks field (`item`), or the element holding a list (`list`).
|
|
6
|
+
*/
|
|
7
|
+
/** What a page element shows: a marker's kind, or an annotation's field / row item / list. */
|
|
8
|
+
export const TARGET_KINDS = [...MARKER_KINDS, 'field', 'item', 'list'];
|
|
9
|
+
export const isTargetKind = (value) => TARGET_KINDS.includes(value);
|
|
10
|
+
export const ONPAGE_MODES = ['edit', 'view'];
|
|
11
|
+
export const isOnPageMode = (value) => ONPAGE_MODES.includes(value);
|
|
2
12
|
//# sourceMappingURL=ports.js.map
|
package/dist/ports.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ports.js","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"ports.js","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AA0FzC;;;;GAIG;AACH,8FAA8F;AAC9F,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAG,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAU,CAAA;AAE/E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAc,EAAuB,EAAE,CACjE,YAAmC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AA8BtD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU,CAAA;AAErD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAc,EAAuB,EAAE,CACjE,YAAmC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA"}
|
package/dist/schema.d.ts
CHANGED
|
@@ -2,56 +2,100 @@
|
|
|
2
2
|
* A JSON-safe description of a document's editable fields, produced on the
|
|
3
3
|
* server by the plugin's schema endpoint (`@payload-onpage/plugin`) and consumed
|
|
4
4
|
* by the editor to build settings forms, new rows and save payloads.
|
|
5
|
+
*
|
|
6
|
+
* `SchemaField` is a union discriminated on `type`: each kind carries only its
|
|
7
|
+
* own properties, so `field.options` exists only after checking for a select,
|
|
8
|
+
* and a `switch (field.type)` can be checked for exhaustiveness.
|
|
5
9
|
*/
|
|
10
|
+
import type { DocRef } from './docref.ts';
|
|
6
11
|
export interface SchemaOption {
|
|
7
12
|
label: string;
|
|
8
13
|
value: string;
|
|
9
14
|
}
|
|
10
|
-
|
|
15
|
+
/** Singular and plural names ("Feature" / "Features"). */
|
|
16
|
+
export interface SchemaLabels {
|
|
17
|
+
singular: string;
|
|
18
|
+
plural: string;
|
|
19
|
+
}
|
|
20
|
+
/** What every field has. */
|
|
21
|
+
interface FieldBase {
|
|
11
22
|
name: string;
|
|
12
|
-
type: string;
|
|
13
23
|
label: string;
|
|
14
24
|
localized?: boolean;
|
|
15
25
|
required?: boolean;
|
|
16
|
-
hasMany?: boolean;
|
|
17
26
|
defaultValue?: unknown;
|
|
18
27
|
description?: string;
|
|
19
|
-
options?: SchemaOption[];
|
|
20
|
-
relationTo?: string | string[];
|
|
21
|
-
minRows?: number;
|
|
22
|
-
/** array: what one row and many rows are called (\"Feature\" / \"Features\"). */
|
|
23
|
-
labels?: {
|
|
24
|
-
singular: string;
|
|
25
|
-
plural: string;
|
|
26
|
-
};
|
|
27
|
-
maxRows?: number;
|
|
28
|
-
/** group / array / named tab */
|
|
29
|
-
fields?: SchemaField[];
|
|
30
|
-
/** blocks */
|
|
31
|
-
blocks?: SchemaBlock[];
|
|
32
28
|
/** Field-editor override: `admin.custom.onpage.editor` (e.g. "color"). */
|
|
33
29
|
editor?: string;
|
|
34
|
-
|
|
30
|
+
}
|
|
31
|
+
/** Fields whose value is a scalar or opaque JSON, edited as a whole. */
|
|
32
|
+
export type ScalarFieldType = 'text' | 'textarea' | 'email' | 'code' | 'json' | 'checkbox' | 'point' | 'richText';
|
|
33
|
+
export interface ScalarField extends FieldBase {
|
|
34
|
+
type: ScalarFieldType;
|
|
35
|
+
/** A list of values (text/textarea/email with `hasMany`): not edited inline. */
|
|
36
|
+
hasMany?: boolean;
|
|
37
|
+
}
|
|
38
|
+
export interface NumberField extends FieldBase {
|
|
39
|
+
type: 'number';
|
|
40
|
+
hasMany?: boolean;
|
|
35
41
|
min?: number;
|
|
36
42
|
max?: number;
|
|
43
|
+
}
|
|
44
|
+
export interface DateField extends FieldBase {
|
|
45
|
+
type: 'date';
|
|
46
|
+
/** Payload's `admin.date.pickerAppearance` ("dayOnly", "dayAndTime"…). */
|
|
37
47
|
pickerAppearance?: string;
|
|
38
48
|
}
|
|
49
|
+
export interface ChoiceField extends FieldBase {
|
|
50
|
+
type: 'select' | 'radio';
|
|
51
|
+
options: SchemaOption[];
|
|
52
|
+
hasMany?: boolean;
|
|
53
|
+
}
|
|
54
|
+
export interface RelationField extends FieldBase {
|
|
55
|
+
type: 'relationship' | 'upload';
|
|
56
|
+
relationTo: string | string[];
|
|
57
|
+
hasMany?: boolean;
|
|
58
|
+
}
|
|
59
|
+
export interface GroupField extends FieldBase {
|
|
60
|
+
type: 'group';
|
|
61
|
+
fields: SchemaField[];
|
|
62
|
+
}
|
|
63
|
+
interface RowsField extends FieldBase {
|
|
64
|
+
labels?: SchemaLabels;
|
|
65
|
+
minRows?: number;
|
|
66
|
+
maxRows?: number;
|
|
67
|
+
}
|
|
68
|
+
export interface ArrayField extends RowsField {
|
|
69
|
+
type: 'array';
|
|
70
|
+
fields: SchemaField[];
|
|
71
|
+
}
|
|
72
|
+
export interface BlocksField extends RowsField {
|
|
73
|
+
type: 'blocks';
|
|
74
|
+
blocks: SchemaBlock[];
|
|
75
|
+
}
|
|
76
|
+
export type SchemaField = ScalarField | NumberField | DateField | ChoiceField | RelationField | GroupField | ArrayField | BlocksField;
|
|
77
|
+
export type SchemaFieldType = SchemaField['type'];
|
|
78
|
+
/**
|
|
79
|
+
* The field kinds that can have one of the given types: `FieldOf<'select'>` is
|
|
80
|
+
* `ChoiceField`, `FieldOf<'text' | 'email'>` is `ScalarField`. (A plain
|
|
81
|
+
* `Extract` would give `never`, since a kind's `type` is itself a union.)
|
|
82
|
+
*/
|
|
83
|
+
export type FieldOf<T extends SchemaFieldType> = SchemaField extends infer F ? F extends {
|
|
84
|
+
type: infer U;
|
|
85
|
+
} ? [Extract<U, T>] extends [never] ? never : F : never : never;
|
|
86
|
+
/** An array or blocks field: one that holds a list of rows. */
|
|
87
|
+
export type ListField = ArrayField | BlocksField;
|
|
88
|
+
export declare const isListField: (field: SchemaField) => field is ListField;
|
|
39
89
|
export interface SchemaBlock {
|
|
40
90
|
slug: string;
|
|
41
|
-
labels:
|
|
42
|
-
singular: string;
|
|
43
|
-
plural: string;
|
|
44
|
-
};
|
|
91
|
+
labels: SchemaLabels;
|
|
45
92
|
fields: SchemaField[];
|
|
46
93
|
}
|
|
47
94
|
/** The editable shape of one collection or global, as served by the plugin. */
|
|
48
95
|
export interface DocumentSchema {
|
|
49
|
-
kind: '
|
|
96
|
+
kind: DocRef['kind'];
|
|
50
97
|
slug: string;
|
|
51
|
-
labels:
|
|
52
|
-
singular: string;
|
|
53
|
-
plural: string;
|
|
54
|
-
};
|
|
98
|
+
labels: SchemaLabels;
|
|
55
99
|
/** Top-level field names the editor may change. */
|
|
56
100
|
editable: string[];
|
|
57
101
|
fields: SchemaField[];
|
|
@@ -68,4 +112,5 @@ export interface DocumentSchema {
|
|
|
68
112
|
label: string;
|
|
69
113
|
}>;
|
|
70
114
|
}
|
|
115
|
+
export {};
|
|
71
116
|
//# sourceMappingURL=schema.d.ts.map
|
package/dist/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,0DAA0D;AAC1D,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,4BAA4B;AAC5B,UAAU,SAAS;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,wEAAwE;AACxE,MAAM,MAAM,eAAe,GACzB,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,UAAU,CAAA;AAErF,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,IAAI,EAAE,eAAe,CAAA;IACrB,gFAAgF;IAChF,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,IAAI,EAAE,QAAQ,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,IAAI,EAAE,MAAM,CAAA;IACZ,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAA;IACxB,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC9C,IAAI,EAAE,cAAc,GAAG,QAAQ,CAAA;IAC/B,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,IAAI,EAAE,OAAO,CAAA;IACb,MAAM,EAAE,WAAW,EAAE,CAAA;CACtB;AAED,UAAU,SAAU,SAAQ,SAAS;IACnC,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,IAAI,EAAE,OAAO,CAAA;IACb,MAAM,EAAE,WAAW,EAAE,CAAA;CACtB;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,IAAI,EAAE,QAAQ,CAAA;IACd,MAAM,EAAE,WAAW,EAAE,CAAA;CACtB;AAED,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,WAAW,GACX,SAAS,GACT,WAAW,GACX,aAAa,GACb,UAAU,GACV,UAAU,GACV,WAAW,CAAA;AAEf,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;AAEjD;;;;GAIG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,eAAe,IAAI,WAAW,SAAS,MAAM,CAAC,GACxE,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,CAAA;CAAE,GACzB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC7B,KAAK,GACL,CAAC,GACH,KAAK,GACP,KAAK,CAAA;AAET,+DAA+D;AAC/D,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,WAAW,CAAA;AAEhD,eAAO,MAAM,WAAW,GAAI,OAAO,WAAW,KAAG,KAAK,IAAI,SACP,CAAA;AAEnD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,YAAY,CAAA;IACpB,MAAM,EAAE,WAAW,EAAE,CAAA;CACtB;AAED,+EAA+E;AAC/E,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,YAAY,CAAA;IACpB,mDAAmD;IACnD,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,MAAM,EAAE,OAAO,CAAA;IACf,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,sEAAsE;IACtE,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAClE"}
|
package/dist/schema.js
CHANGED
|
@@ -1,7 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
* A JSON-safe description of a document's editable fields, produced on the
|
|
3
|
-
* server by the plugin's schema endpoint (`@payload-onpage/plugin`) and consumed
|
|
4
|
-
* by the editor to build settings forms, new rows and save payloads.
|
|
5
|
-
*/
|
|
6
|
-
export {};
|
|
1
|
+
export const isListField = (field) => field.type === 'array' || field.type === 'blocks';
|
|
7
2
|
//# sourceMappingURL=schema.js.map
|
package/dist/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAsHA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAkB,EAAsB,EAAE,CACpE,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAA"}
|
package/dist/seal.d.ts
CHANGED
|
@@ -9,4 +9,21 @@ export declare function seal(data: unknown, secret: string, purpose: string): Pr
|
|
|
9
9
|
export declare function unseal<T>(token: string | null | undefined, secret: string, purpose: string): Promise<T | null>;
|
|
10
10
|
/** SHA-256 hex digest (WebCrypto). */
|
|
11
11
|
export declare function sha256(input: string): Promise<string>;
|
|
12
|
+
/**
|
|
13
|
+
* The sealed `onpage_preview` cookie a share link sets: which page it opens,
|
|
14
|
+
* until when, and Next's draft secret to inject for that page only. Written by
|
|
15
|
+
* the plugin, read by the Next proxy.
|
|
16
|
+
*/
|
|
17
|
+
export interface PreviewGrant {
|
|
18
|
+
/** The page's pathname. */
|
|
19
|
+
path: string;
|
|
20
|
+
/** The document's ref key. */
|
|
21
|
+
ref: string;
|
|
22
|
+
/** Expiry, seconds since the epoch. */
|
|
23
|
+
exp: number;
|
|
24
|
+
/** Next's draft-mode secret. */
|
|
25
|
+
draft: string;
|
|
26
|
+
}
|
|
27
|
+
/** A well-formed grant that hasn't expired. Anything else, including a missing `exp`, is refused. */
|
|
28
|
+
export declare function isLivePreviewGrant(value: unknown, now?: number): value is PreviewGrant;
|
|
12
29
|
//# sourceMappingURL=seal.d.ts.map
|
package/dist/seal.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seal.d.ts","sourceRoot":"","sources":["../src/seal.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,YAAY;;;;CAIf,CAAA;AA2CV,4DAA4D;AAC5D,wBAAsB,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAc1F;AAED,gHAAgH;AAChH,wBAAsB,MAAM,CAAC,CAAC,EAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAcnB;AAED,sCAAsC;AACtC,wBAAsB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG3D"}
|
|
1
|
+
{"version":3,"file":"seal.d.ts","sourceRoot":"","sources":["../src/seal.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,YAAY;;;;CAIf,CAAA;AA2CV,4DAA4D;AAC5D,wBAAsB,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAc1F;AAED,gHAAgH;AAChH,wBAAsB,MAAM,CAAC,CAAC,EAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAcnB;AAED,sCAAsC;AACtC,wBAAsB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG3D;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAA;IACX,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAA;CACd;AAED,qGAAqG;AACrG,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,SAAa,GAAG,KAAK,IAAI,YAAY,CAY1F"}
|
package/dist/seal.js
CHANGED
|
@@ -81,4 +81,17 @@ export async function sha256(input) {
|
|
|
81
81
|
const d = new Uint8Array(await crypto.subtle.digest('SHA-256', enc.encode(input)));
|
|
82
82
|
return Array.from(d, (b) => b.toString(16).padStart(2, '0')).join('');
|
|
83
83
|
}
|
|
84
|
+
/** A well-formed grant that hasn't expired. Anything else, including a missing `exp`, is refused. */
|
|
85
|
+
export function isLivePreviewGrant(value, now = Date.now()) {
|
|
86
|
+
if (!value || typeof value !== 'object')
|
|
87
|
+
return false;
|
|
88
|
+
const g = value;
|
|
89
|
+
return (typeof g.path === 'string' &&
|
|
90
|
+
typeof g.ref === 'string' &&
|
|
91
|
+
typeof g.draft === 'string' &&
|
|
92
|
+
!!g.draft &&
|
|
93
|
+
typeof g.exp === 'number' &&
|
|
94
|
+
Number.isFinite(g.exp) &&
|
|
95
|
+
g.exp * 1000 > now);
|
|
96
|
+
}
|
|
84
97
|
//# sourceMappingURL=seal.js.map
|
package/dist/seal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seal.js","sourceRoot":"","sources":["../src/seal.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seal.js","sourceRoot":"","sources":["../src/seal.ts"],"names":[],"mappings":"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"}
|