@revealui/core 0.10.2 → 0.11.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.
- package/README.md +4 -2
- package/dist/client/admin/components/DocumentForm.js +17 -6
- package/dist/client/richtext/RichTextEditor.d.ts +1 -1
- package/dist/client/richtext/RichTextEditor.d.ts.map +1 -1
- package/dist/client/richtext/RichTextEditor.js +15 -15
- package/dist/client/richtext/components/ImageNodeComponent.js +4 -4
- package/dist/collections/CollectionOperations.d.ts +5 -0
- package/dist/collections/CollectionOperations.d.ts.map +1 -1
- package/dist/collections/CollectionOperations.js +7 -0
- package/dist/collections/operations/create.d.ts.map +1 -1
- package/dist/collections/operations/create.js +20 -0
- package/dist/collections/operations/delete.d.ts.map +1 -1
- package/dist/collections/operations/delete.js +14 -0
- package/dist/collections/operations/drafts.d.ts +33 -0
- package/dist/collections/operations/drafts.d.ts.map +1 -0
- package/dist/collections/operations/drafts.js +43 -0
- package/dist/collections/operations/fieldValidation.d.ts +53 -0
- package/dist/collections/operations/fieldValidation.d.ts.map +1 -0
- package/dist/collections/operations/fieldValidation.js +89 -0
- package/dist/collections/operations/find.d.ts.map +1 -1
- package/dist/collections/operations/find.js +23 -5
- package/dist/collections/operations/findById.d.ts +1 -0
- package/dist/collections/operations/findById.d.ts.map +1 -1
- package/dist/collections/operations/findById.js +33 -21
- package/dist/collections/operations/snapshot.d.ts +30 -0
- package/dist/collections/operations/snapshot.d.ts.map +1 -0
- package/dist/collections/operations/snapshot.js +81 -0
- package/dist/collections/operations/update.d.ts.map +1 -1
- package/dist/collections/operations/update.js +21 -0
- package/dist/error-handling/error-boundary.d.ts.map +1 -1
- package/dist/error-handling/error-boundary.js +11 -7
- package/dist/error-handling/fallback-components.d.ts.map +1 -1
- package/dist/error-handling/fallback-components.js +68 -48
- package/dist/features.d.ts +0 -2
- package/dist/features.d.ts.map +1 -1
- package/dist/features.js +2 -5
- package/dist/generated/types/admin.d.ts +42 -35
- package/dist/generated/types/admin.d.ts.map +1 -1
- package/dist/instance/RevealUIInstance.d.ts.map +1 -1
- package/dist/instance/methods/findById.d.ts +2 -0
- package/dist/instance/methods/findById.d.ts.map +1 -1
- package/dist/license.d.ts +67 -1
- package/dist/license.d.ts.map +1 -1
- package/dist/license.js +184 -25
- package/dist/richtext/exports/client/rcc.d.ts.map +1 -1
- package/dist/richtext/exports/client/rcc.js +6 -1
- package/dist/richtext/exports/server/rsc.d.ts +15 -2
- package/dist/richtext/exports/server/rsc.d.ts.map +1 -1
- package/dist/richtext/exports/server/rsc.js +36 -6
- package/dist/storage/index.d.ts +4 -5
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +10 -13
- package/dist/storage/object-storage.d.ts +5 -5
- package/dist/storage/object-storage.js +5 -5
- package/dist/storage/types.d.ts +5 -12
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/types.js +4 -4
- package/dist/types/runtime.d.ts +51 -0
- package/dist/types/runtime.d.ts.map +1 -1
- package/package.json +22 -23
- package/dist/storage/vercel-blob-provider.d.ts +0 -28
- package/dist/storage/vercel-blob-provider.d.ts.map +0 -1
- package/dist/storage/vercel-blob-provider.js +0 -88
|
@@ -66,7 +66,7 @@ interface SerializeOptions {
|
|
|
66
66
|
renderBlock?: (node: SerializedBlockNode, index: number) => JSX.Element | null;
|
|
67
67
|
/** Custom link renderer */
|
|
68
68
|
renderLink?: (node: SerializedLinkNode, children: JSX.Element | null, index: number) => JSX.Element;
|
|
69
|
-
/** Custom image renderer */
|
|
69
|
+
/** Custom image renderer. `data.src` arrives already sanitized. */
|
|
70
70
|
renderImage?: (data: {
|
|
71
71
|
src?: string;
|
|
72
72
|
alt?: string;
|
|
@@ -74,6 +74,13 @@ interface SerializeOptions {
|
|
|
74
74
|
height?: number;
|
|
75
75
|
caption?: string;
|
|
76
76
|
}, index: number) => JSX.Element | null;
|
|
77
|
+
/** Custom upload-node renderer. `data.url` arrives already sanitized. */
|
|
78
|
+
renderUpload?: (data: {
|
|
79
|
+
url?: string;
|
|
80
|
+
alt?: string;
|
|
81
|
+
width?: number;
|
|
82
|
+
height?: number;
|
|
83
|
+
}, index: number) => JSX.Element | null;
|
|
77
84
|
}
|
|
78
85
|
/**
|
|
79
86
|
* Serialize a Lexical editor state to React elements
|
|
@@ -113,7 +120,13 @@ export interface RichTextContentProps {
|
|
|
113
120
|
height?: number;
|
|
114
121
|
caption?: string;
|
|
115
122
|
}, index: number) => JSX.Element | null;
|
|
123
|
+
renderUpload?: (data: {
|
|
124
|
+
url?: string;
|
|
125
|
+
alt?: string;
|
|
126
|
+
width?: number;
|
|
127
|
+
height?: number;
|
|
128
|
+
}, index: number) => JSX.Element | null;
|
|
116
129
|
}
|
|
117
|
-
export declare function RichTextContent({ data, className, renderBlock, renderLink, renderImage, }: RichTextContentProps): JSX.Element | null;
|
|
130
|
+
export declare function RichTextContent({ data, className, renderBlock, renderLink, renderImage, renderUpload, }: RichTextContentProps): JSX.Element | null;
|
|
118
131
|
export default RichTextContent;
|
|
119
132
|
//# sourceMappingURL=rsc.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rsc.d.ts","sourceRoot":"","sources":["../../../../src/richtext/exports/server/rsc.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAC5E,OAAO,EAAY,KAAK,GAAG,EAAE,MAAM,OAAO,CAAC;AAG3C,YAAY,EAAE,qBAAqB,EAAE,CAAC;AAKtC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"rsc.d.ts","sourceRoot":"","sources":["../../../../src/richtext/exports/server/rsc.tsx"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,11 @@ const IS_UNDERLINE = 8;
|
|
|
26
26
|
const IS_CODE = 16;
|
|
27
27
|
const IS_SUBSCRIPT = 32;
|
|
28
28
|
const IS_SUPERSCRIPT = 64;
|
|
29
|
+
// Heading `tag` values come from stored, author-controlled Lexical JSON and
|
|
30
|
+
// are rendered as JSX element names — allow-list them (a forged tag like
|
|
31
|
+
// "script" would otherwise render a live <script> element, whose text
|
|
32
|
+
// children React does not escape).
|
|
33
|
+
const HEADING_TAGS = new Set(['h1', 'h2', 'h3', 'h4', 'h5', 'h6']);
|
|
29
34
|
/**
|
|
30
35
|
* Serialize a text node with formatting
|
|
31
36
|
*/
|
|
@@ -87,9 +92,9 @@ function serializeNode(node, index, options) {
|
|
|
87
92
|
if (node.type === 'paragraph') {
|
|
88
93
|
return _jsx("p", { children: serializeChildren(n.children, options) }, index);
|
|
89
94
|
}
|
|
90
|
-
// Heading
|
|
95
|
+
// Heading — the stored tag is author-controlled; render only allow-listed h1-h6
|
|
91
96
|
if (node.type === 'heading') {
|
|
92
|
-
const Tag = (n.tag
|
|
97
|
+
const Tag = (n.tag && HEADING_TAGS.has(n.tag) ? n.tag : 'h1');
|
|
93
98
|
return _jsx(Tag, { children: serializeChildren(n.children, options) }, index);
|
|
94
99
|
}
|
|
95
100
|
// Quote
|
|
@@ -141,9 +146,9 @@ function serializeNode(node, index, options) {
|
|
|
141
146
|
const width = imageNode.fields?.width;
|
|
142
147
|
const height = imageNode.fields?.height;
|
|
143
148
|
const caption = imageNode.fields?.caption;
|
|
144
|
-
// Allow custom image renderer
|
|
149
|
+
// Allow custom image renderer — hand it the sanitized src, never the raw one
|
|
145
150
|
if (options?.renderImage) {
|
|
146
|
-
return options.renderImage(imageNode.fields || {}, index);
|
|
151
|
+
return options.renderImage({ ...(imageNode.fields || {}), src }, index);
|
|
147
152
|
}
|
|
148
153
|
// Default image rendering
|
|
149
154
|
return (_jsxs("figure", { style: { margin: '16px 0', textAlign: 'center' }, children: [_jsx("img", { src: src, alt: alt, width: width, height: height, style: {
|
|
@@ -153,10 +158,34 @@ function serializeNode(node, index, options) {
|
|
|
153
158
|
} }), caption && (_jsx("figcaption", { style: {
|
|
154
159
|
marginTop: '8px',
|
|
155
160
|
fontSize: '14px',
|
|
156
|
-
color: '#64748b',
|
|
161
|
+
color: 'var(--rvui-text-2, #64748b)',
|
|
157
162
|
fontStyle: 'italic',
|
|
158
163
|
}, children: caption }))] }, index));
|
|
159
164
|
}
|
|
165
|
+
// Upload (media-collection reference from the rich-text upload feature).
|
|
166
|
+
// The stored value.url is author-controlled; sanitize before any renderer
|
|
167
|
+
// sees it.
|
|
168
|
+
if (node.type === 'upload') {
|
|
169
|
+
const uploadNode = node;
|
|
170
|
+
const value = uploadNode.value;
|
|
171
|
+
if (!value || typeof value === 'string' || !value.url) {
|
|
172
|
+
return null;
|
|
173
|
+
}
|
|
174
|
+
const url = sanitizeUrl(value.url, 'image');
|
|
175
|
+
if (options?.renderUpload) {
|
|
176
|
+
return options.renderUpload({ url, alt: value.alt, width: value.width, height: value.height }, index);
|
|
177
|
+
}
|
|
178
|
+
return (_jsxs("figure", { style: { margin: '16px 0' }, children: [_jsx("img", { src: url, alt: value.alt || '', width: value.width, height: value.height, style: {
|
|
179
|
+
maxWidth: '100%',
|
|
180
|
+
height: 'auto',
|
|
181
|
+
display: 'block',
|
|
182
|
+
} }), value.alt && (_jsx("figcaption", { style: {
|
|
183
|
+
marginTop: '8px',
|
|
184
|
+
fontSize: '14px',
|
|
185
|
+
color: 'var(--rvui-text-2, #64748b)',
|
|
186
|
+
fontStyle: 'italic',
|
|
187
|
+
}, children: value.alt }))] }, index));
|
|
188
|
+
}
|
|
160
189
|
// Horizontal rule
|
|
161
190
|
if (node.type === 'horizontalrule') {
|
|
162
191
|
return _jsx("hr", {}, index);
|
|
@@ -287,7 +316,7 @@ export function RscEntryLexicalField({ data, className }) {
|
|
|
287
316
|
}
|
|
288
317
|
return _jsx("div", { className: className, children: content });
|
|
289
318
|
}
|
|
290
|
-
export function RichTextContent({ data, className, renderBlock, renderLink, renderImage, }) {
|
|
319
|
+
export function RichTextContent({ data, className, renderBlock, renderLink, renderImage, renderUpload, }) {
|
|
291
320
|
if (!data) {
|
|
292
321
|
return null;
|
|
293
322
|
}
|
|
@@ -295,6 +324,7 @@ export function RichTextContent({ data, className, renderBlock, renderLink, rend
|
|
|
295
324
|
renderBlock: renderBlock || undefined,
|
|
296
325
|
renderLink: renderLink || undefined,
|
|
297
326
|
renderImage: renderImage || undefined,
|
|
327
|
+
renderUpload: renderUpload || undefined,
|
|
298
328
|
});
|
|
299
329
|
if (!content) {
|
|
300
330
|
return null;
|
package/dist/storage/index.d.ts
CHANGED
|
@@ -3,17 +3,16 @@ export { createMockProvider } from './mock.js';
|
|
|
3
3
|
export type { ObjectStorageConfig } from './object-storage.js';
|
|
4
4
|
export { objectStorage } from './object-storage.js';
|
|
5
5
|
export { createR2Provider } from './r2.js';
|
|
6
|
-
export type { ListItem, ListOptions, ListResult, PutOptions, PutResult, R2Config, StorageConfig, StorageProvider,
|
|
7
|
-
export { createVercelBlobProvider } from './vercel-blob-provider.js';
|
|
6
|
+
export type { ListItem, ListOptions, ListResult, PutOptions, PutResult, R2Config, StorageConfig, StorageProvider, } from './types.js';
|
|
8
7
|
/**
|
|
9
8
|
* Construct a StorageProvider from a tagged config.
|
|
10
9
|
*
|
|
11
10
|
* Per `feedback_pluggable_provider_pattern`: explicit "no-X" opt-in — unknown
|
|
12
11
|
* tags throw with a clear message; no silent fallback.
|
|
13
12
|
*
|
|
14
|
-
* Supported tags: 'r2' (canonical)
|
|
15
|
-
*
|
|
16
|
-
*
|
|
13
|
+
* Supported tags: 'r2' (canonical) and 'mock' (tests). The provider-agnostic
|
|
14
|
+
* `objectStorage` Payload plugin (object-storage.ts) adapts either to apps/admin's
|
|
15
|
+
* upload path.
|
|
17
16
|
*/
|
|
18
17
|
export declare function createStorage(config: StorageConfig): StorageProvider;
|
|
19
18
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAK/D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,YAAY,EACV,QAAQ,EACR,WAAW,EACX,UAAU,EACV,UAAU,EACV,SAAS,EACT,QAAQ,EACR,aAAa,EACb,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,eAAe,CAcpE"}
|
package/dist/storage/index.js
CHANGED
|
@@ -3,44 +3,41 @@
|
|
|
3
3
|
//
|
|
4
4
|
// Phase 1 (#959): types.ts + index.ts type re-exports.
|
|
5
5
|
// Phase 2a (#959 follow-up): r2 + mock providers + createStorage factory.
|
|
6
|
-
// Phase 2b (
|
|
7
|
-
//
|
|
6
|
+
// Phase 2b (#959 follow-up): apps/server media-route cutover onto R2.
|
|
7
|
+
// #1644: legacy Vercel Blob StorageProvider removed once R2 was confirmed in
|
|
8
|
+
// every production environment — R2 is now the sole non-mock backend.
|
|
8
9
|
import { createMockProvider } from './mock.js';
|
|
9
10
|
import { createR2Provider } from './r2.js';
|
|
10
|
-
import { createVercelBlobProvider } from './vercel-blob-provider.js';
|
|
11
11
|
export { createMockProvider } from './mock.js';
|
|
12
12
|
// Provider-agnostic Payload-style upload plugin — adapts any StorageProvider
|
|
13
|
-
// (R2 canonical,
|
|
14
|
-
//
|
|
15
|
-
//
|
|
13
|
+
// (R2 canonical, mock) to the engine's collection upload adapter. Used by
|
|
14
|
+
// apps/admin/revealui.config.ts. GAP-208 Phase 4 replaced the provider-specific
|
|
15
|
+
// `vercelBlobStorage` plugin with this.
|
|
16
16
|
export { objectStorage } from './object-storage.js';
|
|
17
17
|
// Provider factories — exported so callers can construct a provider directly
|
|
18
18
|
// when they already know which one they want (skipping the discriminated-union
|
|
19
19
|
// factory below).
|
|
20
20
|
export { createR2Provider } from './r2.js';
|
|
21
|
-
export { createVercelBlobProvider } from './vercel-blob-provider.js';
|
|
22
21
|
/**
|
|
23
22
|
* Construct a StorageProvider from a tagged config.
|
|
24
23
|
*
|
|
25
24
|
* Per `feedback_pluggable_provider_pattern`: explicit "no-X" opt-in — unknown
|
|
26
25
|
* tags throw with a clear message; no silent fallback.
|
|
27
26
|
*
|
|
28
|
-
* Supported tags: 'r2' (canonical)
|
|
29
|
-
*
|
|
30
|
-
*
|
|
27
|
+
* Supported tags: 'r2' (canonical) and 'mock' (tests). The provider-agnostic
|
|
28
|
+
* `objectStorage` Payload plugin (object-storage.ts) adapts either to apps/admin's
|
|
29
|
+
* upload path.
|
|
31
30
|
*/
|
|
32
31
|
export function createStorage(config) {
|
|
33
32
|
switch (config.provider) {
|
|
34
33
|
case 'r2':
|
|
35
34
|
return createR2Provider(config.r2);
|
|
36
|
-
case 'vercel-blob':
|
|
37
|
-
return createVercelBlobProvider(config.vercelBlob);
|
|
38
35
|
case 'mock':
|
|
39
36
|
return createMockProvider();
|
|
40
37
|
default: {
|
|
41
38
|
const _exhaustive = config;
|
|
42
39
|
throw new Error(`createStorage: unknown provider tag. Got ${JSON.stringify(_exhaustive)}. ` +
|
|
43
|
-
"Valid tags: 'r2', '
|
|
40
|
+
"Valid tags: 'r2', 'mock'.");
|
|
44
41
|
}
|
|
45
42
|
}
|
|
46
43
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Object-storage upload plugin (provider-agnostic).
|
|
3
3
|
*
|
|
4
|
-
* Adapts any `StorageProvider` (Cloudflare R2 — canonical —
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
4
|
+
* Adapts any `StorageProvider` (Cloudflare R2 — canonical — mock, or a future
|
|
5
|
+
* backend) to the RevealUI engine's collection upload-adapter interface, so
|
|
6
|
+
* `apps/admin/revealui.config.ts` stores media through the configured
|
|
7
|
+
* object-storage backend. Replaces the provider-specific `vercelBlobStorage`
|
|
8
|
+
* Payload plugin retired in GAP-208 Phase 4.
|
|
9
9
|
*
|
|
10
10
|
* The backend is resolved through a lazy `resolveProvider` thunk — invoked
|
|
11
11
|
* (and memoized) on the first upload/delete, never at config-build time — so a
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Object-storage upload plugin (provider-agnostic).
|
|
3
3
|
*
|
|
4
|
-
* Adapts any `StorageProvider` (Cloudflare R2 — canonical —
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
4
|
+
* Adapts any `StorageProvider` (Cloudflare R2 — canonical — mock, or a future
|
|
5
|
+
* backend) to the RevealUI engine's collection upload-adapter interface, so
|
|
6
|
+
* `apps/admin/revealui.config.ts` stores media through the configured
|
|
7
|
+
* object-storage backend. Replaces the provider-specific `vercelBlobStorage`
|
|
8
|
+
* Payload plugin retired in GAP-208 Phase 4.
|
|
9
9
|
*
|
|
10
10
|
* The backend is resolved through a lazy `resolveProvider` thunk — invoked
|
|
11
11
|
* (and memoized) on the first upload/delete, never at config-build time — so a
|
package/dist/storage/types.d.ts
CHANGED
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
* apps/admin health probes, packages/core Payload-style plugin shims) depend
|
|
9
9
|
* only on this contract. Switching providers becomes a config change.
|
|
10
10
|
*
|
|
11
|
-
* GAP-208
|
|
12
|
-
* swap (2026-05-18).
|
|
13
|
-
*
|
|
14
|
-
*
|
|
11
|
+
* GAP-208 introduced this abstraction during the Vercel Blob → Cloudflare R2
|
|
12
|
+
* swap (2026-05-18). #1644 removed the Vercel Blob StorageProvider once R2 was
|
|
13
|
+
* confirmed in every production environment; Cloudflare R2 is now the sole
|
|
14
|
+
* non-mock backend.
|
|
15
15
|
*/
|
|
16
16
|
export interface StorageProvider {
|
|
17
17
|
/** Upload binary data. Returns a fully-qualified URL the value is reachable at. */
|
|
@@ -20,7 +20,7 @@ export interface StorageProvider {
|
|
|
20
20
|
del(keyOrUrl: string): Promise<void>;
|
|
21
21
|
/** List items, optionally filtered by key prefix. Used by health probes + admin browsing. */
|
|
22
22
|
list(opts?: ListOptions): Promise<ListResult>;
|
|
23
|
-
/** Provider tag (e.g. "r2", "
|
|
23
|
+
/** Provider tag (e.g. "r2", "mock") — exposed so consumers can adapt URL handling. */
|
|
24
24
|
readonly provider: string;
|
|
25
25
|
}
|
|
26
26
|
export interface PutOptions {
|
|
@@ -80,9 +80,6 @@ export interface ListItem {
|
|
|
80
80
|
export type StorageConfig = {
|
|
81
81
|
provider: 'r2';
|
|
82
82
|
r2: R2Config;
|
|
83
|
-
} | {
|
|
84
|
-
provider: 'vercel-blob';
|
|
85
|
-
vercelBlob: VercelBlobConfig;
|
|
86
83
|
} | {
|
|
87
84
|
provider: 'mock';
|
|
88
85
|
};
|
|
@@ -103,8 +100,4 @@ export interface R2Config {
|
|
|
103
100
|
*/
|
|
104
101
|
publicBaseUrl?: string;
|
|
105
102
|
}
|
|
106
|
-
export interface VercelBlobConfig {
|
|
107
|
-
/** vercel_blob_rw_* token from the Vercel Blob dashboard. */
|
|
108
|
-
token: string;
|
|
109
|
-
}
|
|
110
103
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,MAAM,WAAW,eAAe;IAC9B,mFAAmF;IACnF,GAAG,CACD,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,IAAI,GAAG,WAAW,GAAG,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,EAClE,IAAI,CAAC,EAAE,UAAU,GAChB,OAAO,CAAC,SAAS,CAAC,CAAC;IAEtB,8FAA8F;IAC9F,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErC,6FAA6F;IAC7F,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE9C,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,MAAM,WAAW,eAAe;IAC9B,mFAAmF;IACnF,GAAG,CACD,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,IAAI,GAAG,WAAW,GAAG,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,EAClE,IAAI,CAAC,EAAE,UAAU,GAChB,OAAO,CAAC,SAAS,CAAC,CAAC;IAEtB,8FAA8F;IAC9F,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErC,6FAA6F;IAC7F,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE9C,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAID,MAAM,WAAW,UAAU;IACzB,uGAAuG;IACvG,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAE9B,oFAAoF;IACpF,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,SAAS;IACxB,4FAA4F;IAC5F,GAAG,EAAE,MAAM,CAAC;IAEZ,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC;IAEZ,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IAEb,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAC;CAClB;AAID,MAAM,WAAW,WAAW;IAC1B,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAElB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,IAAI,CAAC;CAClB;AAID;;;;;;;;GAQG;AACH,MAAM,MAAM,aAAa,GAAG;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,QAAQ,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpF,MAAM,WAAW,QAAQ;IACvB,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAElB,qEAAqE;IACrE,WAAW,EAAE,MAAM,CAAC;IAEpB,gEAAgE;IAChE,eAAe,EAAE,MAAM,CAAC;IAExB,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB"}
|
package/dist/storage/types.js
CHANGED
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
* apps/admin health probes, packages/core Payload-style plugin shims) depend
|
|
9
9
|
* only on this contract. Switching providers becomes a config change.
|
|
10
10
|
*
|
|
11
|
-
* GAP-208
|
|
12
|
-
* swap (2026-05-18).
|
|
13
|
-
*
|
|
14
|
-
*
|
|
11
|
+
* GAP-208 introduced this abstraction during the Vercel Blob → Cloudflare R2
|
|
12
|
+
* swap (2026-05-18). #1644 removed the Vercel Blob StorageProvider once R2 was
|
|
13
|
+
* confirmed in every production environment; Cloudflare R2 is now the sole
|
|
14
|
+
* non-mock backend.
|
|
15
15
|
*/
|
|
16
16
|
export {};
|
package/dist/types/runtime.d.ts
CHANGED
|
@@ -230,6 +230,57 @@ export interface CollectionStorageAdapter {
|
|
|
230
230
|
id: string | number;
|
|
231
231
|
}) => Promise<RevealDocument | null | undefined>;
|
|
232
232
|
find?: (collection: RevealCollectionConfig, options: RevealFindOptions) => Promise<RevealPaginatedResult | undefined>;
|
|
233
|
+
/**
|
|
234
|
+
* Typed create. Return `undefined` to signal "not handled by this adapter" —
|
|
235
|
+
* the caller falls through to the dynamic-SQL path. Return the created
|
|
236
|
+
* document on success; throw for a handled-but-failed write. Mirrors the
|
|
237
|
+
* `undefined` = not-handled contract used by `findByID`/`find`.
|
|
238
|
+
*/
|
|
239
|
+
create?: (collection: RevealCollectionConfig, options: {
|
|
240
|
+
data: RevealDataObject;
|
|
241
|
+
req?: RevealRequest;
|
|
242
|
+
}) => Promise<RevealDocument | undefined>;
|
|
243
|
+
/**
|
|
244
|
+
* Typed update. `undefined` = not handled (fall through to dynamic SQL). A
|
|
245
|
+
* document = the updated row. Throw for handled-but-not-found or an
|
|
246
|
+
* optimistic-lock conflict (statusCode 409).
|
|
247
|
+
*/
|
|
248
|
+
update?: (collection: RevealCollectionConfig, options: {
|
|
249
|
+
id: string | number;
|
|
250
|
+
data: RevealDataObject;
|
|
251
|
+
req?: RevealRequest;
|
|
252
|
+
}) => Promise<RevealDocument | undefined>;
|
|
253
|
+
/**
|
|
254
|
+
* Typed delete. `undefined` = not handled (fall through to dynamic SQL). A
|
|
255
|
+
* document (at minimum `{ id }`) = the deleted row. Throw for
|
|
256
|
+
* handled-but-not-found.
|
|
257
|
+
*/
|
|
258
|
+
delete?: (collection: RevealCollectionConfig, options: {
|
|
259
|
+
id: string | number;
|
|
260
|
+
req?: RevealRequest;
|
|
261
|
+
}) => Promise<RevealDocument | undefined>;
|
|
262
|
+
/**
|
|
263
|
+
* Capture a point-in-time revision of a document (the `page_revisions`
|
|
264
|
+
* pattern: per-doc revision number, content snapshot, createdBy,
|
|
265
|
+
* changeDescription). `undefined` = not handled — snapshots require a typed
|
|
266
|
+
* revision store, so there is no dynamic-SQL fallback. The created revision =
|
|
267
|
+
* success. Throw for handled-but-not-found.
|
|
268
|
+
*/
|
|
269
|
+
snapshot?: (collection: RevealCollectionConfig, options: {
|
|
270
|
+
id: string | number;
|
|
271
|
+
req?: RevealRequest;
|
|
272
|
+
changeDescription?: string;
|
|
273
|
+
}) => Promise<RevealDocument | undefined>;
|
|
274
|
+
/**
|
|
275
|
+
* Restore a document to a stored revision, writing the revision's content back
|
|
276
|
+
* over the live document. `undefined` = not handled. The restored document =
|
|
277
|
+
* success. Throw for handled-but-not-found (document or revision).
|
|
278
|
+
*/
|
|
279
|
+
restore?: (collection: RevealCollectionConfig, options: {
|
|
280
|
+
id: string | number;
|
|
281
|
+
revisionId: string | number;
|
|
282
|
+
req?: RevealRequest;
|
|
283
|
+
}) => Promise<RevealDocument | undefined>;
|
|
233
284
|
}
|
|
234
285
|
export interface QueryableDatabaseAdapter {
|
|
235
286
|
query: (query: string, values?: unknown[]) => Promise<DatabaseResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/types/runtime.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/types/runtime.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,44 +1,43 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@revealui/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.1",
|
|
4
4
|
"description": "RevealUI's runtime engine — admin UI, REST API, auth, rich text, plugin system, and access control. The heart of the open-source platform.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"@electric-sql/pglite": "^0.5.
|
|
8
|
-
"@lexical/clipboard": "^0.
|
|
9
|
-
"@lexical/code": "^0.
|
|
10
|
-
"@lexical/html": "^0.
|
|
11
|
-
"@lexical/link": "^0.
|
|
12
|
-
"@lexical/list": "^0.
|
|
13
|
-
"@lexical/react": "^0.
|
|
14
|
-
"@lexical/rich-text": "^0.
|
|
15
|
-
"@lexical/selection": "^0.
|
|
16
|
-
"@lexical/table": "^0.
|
|
17
|
-
"@lexical/utils": "^0.
|
|
18
|
-
"@lexical/yjs": "^0.
|
|
19
|
-
"@vercel/blob": "^2.3.3",
|
|
7
|
+
"@electric-sql/pglite": "^0.5.4",
|
|
8
|
+
"@lexical/clipboard": "^0.46.0",
|
|
9
|
+
"@lexical/code": "^0.46.0",
|
|
10
|
+
"@lexical/html": "^0.46.0",
|
|
11
|
+
"@lexical/link": "^0.46.0",
|
|
12
|
+
"@lexical/list": "^0.46.0",
|
|
13
|
+
"@lexical/react": "^0.46.0",
|
|
14
|
+
"@lexical/rich-text": "^0.46.0",
|
|
15
|
+
"@lexical/selection": "^0.46.0",
|
|
16
|
+
"@lexical/table": "^0.46.0",
|
|
17
|
+
"@lexical/utils": "^0.46.0",
|
|
18
|
+
"@lexical/yjs": "^0.46.0",
|
|
20
19
|
"bcryptjs": "^3.0.3",
|
|
21
20
|
"dataloader": "^2.2.3",
|
|
22
21
|
"jose": "^5.10.0",
|
|
23
|
-
"lexical": "^0.
|
|
24
|
-
"pg": "^8.
|
|
22
|
+
"lexical": "^0.46.0",
|
|
23
|
+
"pg": "^8.22.0",
|
|
25
24
|
"yjs": "^13.6.31",
|
|
26
25
|
"zod": "^4.4.3",
|
|
27
|
-
"@revealui/cache": "0.2.
|
|
28
|
-
"@revealui/contracts": "0.
|
|
26
|
+
"@revealui/cache": "0.2.4",
|
|
27
|
+
"@revealui/contracts": "0.7.0",
|
|
29
28
|
"@revealui/resilience": "0.2.4",
|
|
30
|
-
"@revealui/security": "0.4.
|
|
31
|
-
"@revealui/utils": "0.3.
|
|
29
|
+
"@revealui/security": "0.4.3",
|
|
30
|
+
"@revealui/utils": "0.3.6"
|
|
32
31
|
},
|
|
33
32
|
"devDependencies": {
|
|
34
33
|
"@types/json-schema": "^7.0.15",
|
|
35
34
|
"@types/pg": "^8.20.0",
|
|
36
35
|
"@types/react": "^19.2.17",
|
|
37
36
|
"@types/react-dom": "^19.2.3",
|
|
38
|
-
"@vitest/coverage-v8": "^4.1.
|
|
39
|
-
"expect-type": "^1.
|
|
37
|
+
"@vitest/coverage-v8": "^4.1.10",
|
|
38
|
+
"expect-type": "^1.4.0",
|
|
40
39
|
"tsup": "^8.5.1",
|
|
41
|
-
"vitest": "^4.1.
|
|
40
|
+
"vitest": "^4.1.10",
|
|
42
41
|
"@revealui/dev": "0.1.0"
|
|
43
42
|
},
|
|
44
43
|
"engines": {
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Vercel Blob implementation of StorageProvider.
|
|
3
|
-
*
|
|
4
|
-
* Legacy backend retained during the GAP-208 Cloudflare R2 cutover so the
|
|
5
|
-
* media-upload path can fall back to Vercel Blob when R2 is not configured.
|
|
6
|
-
* Wraps @vercel/blob's put/del/list behind the provider-agnostic
|
|
7
|
-
* StorageProvider interface. Cloudflare R2 (r2.ts) is the canonical backend;
|
|
8
|
-
* this provider is removed once the Blob store is decommissioned.
|
|
9
|
-
*
|
|
10
|
-
* NOTE: distinct from vercel-blob.ts in this directory, which is the legacy
|
|
11
|
-
* Payload-style upload *plugin* still wired into apps/admin's
|
|
12
|
-
* revealui.config.ts. This file is the StorageProvider the createStorage
|
|
13
|
-
* factory returns for the 'vercel-blob' tag.
|
|
14
|
-
*
|
|
15
|
-
* Server-only. Do NOT import from client-side code or edge runtime.
|
|
16
|
-
*/
|
|
17
|
-
import type { ListOptions, ListResult, PutOptions, PutResult, StorageProvider, VercelBlobConfig } from './types.js';
|
|
18
|
-
declare class VercelBlobProvider implements StorageProvider {
|
|
19
|
-
readonly provider = "vercel-blob";
|
|
20
|
-
private readonly token;
|
|
21
|
-
constructor(config: VercelBlobConfig);
|
|
22
|
-
put(key: string, data: Blob | ArrayBuffer | Uint8Array | ReadableStream<Uint8Array>, opts?: PutOptions): Promise<PutResult>;
|
|
23
|
-
del(keyOrUrl: string): Promise<void>;
|
|
24
|
-
list(opts?: ListOptions): Promise<ListResult>;
|
|
25
|
-
}
|
|
26
|
-
export declare function createVercelBlobProvider(config: VercelBlobConfig): StorageProvider;
|
|
27
|
-
export type { VercelBlobProvider };
|
|
28
|
-
//# sourceMappingURL=vercel-blob-provider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vercel-blob-provider.d.ts","sourceRoot":"","sources":["../../src/storage/vercel-blob-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,KAAK,EAEV,WAAW,EACX,UAAU,EACV,UAAU,EACV,SAAS,EACT,eAAe,EACf,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAKpB,cAAM,kBAAmB,YAAW,eAAe;IACjD,QAAQ,CAAC,QAAQ,iBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAEnB,MAAM,EAAE,gBAAgB;IAW9B,GAAG,CACP,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,IAAI,GAAG,WAAW,GAAG,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,EAClE,IAAI,CAAC,EAAE,UAAU,GAChB,OAAO,CAAC,SAAS,CAAC;IAmCf,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOpC,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;CAqBpD;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,GAAG,eAAe,CAElF;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Vercel Blob implementation of StorageProvider.
|
|
3
|
-
*
|
|
4
|
-
* Legacy backend retained during the GAP-208 Cloudflare R2 cutover so the
|
|
5
|
-
* media-upload path can fall back to Vercel Blob when R2 is not configured.
|
|
6
|
-
* Wraps @vercel/blob's put/del/list behind the provider-agnostic
|
|
7
|
-
* StorageProvider interface. Cloudflare R2 (r2.ts) is the canonical backend;
|
|
8
|
-
* this provider is removed once the Blob store is decommissioned.
|
|
9
|
-
*
|
|
10
|
-
* NOTE: distinct from vercel-blob.ts in this directory, which is the legacy
|
|
11
|
-
* Payload-style upload *plugin* still wired into apps/admin's
|
|
12
|
-
* revealui.config.ts. This file is the StorageProvider the createStorage
|
|
13
|
-
* factory returns for the 'vercel-blob' tag.
|
|
14
|
-
*
|
|
15
|
-
* Server-only. Do NOT import from client-side code or edge runtime.
|
|
16
|
-
*/
|
|
17
|
-
import { del, list, put } from '@vercel/blob';
|
|
18
|
-
import { toUint8Array } from './_helpers.js';
|
|
19
|
-
const PROVIDER_TAG = 'vercel-blob';
|
|
20
|
-
const DEFAULT_LIST_LIMIT = 1000;
|
|
21
|
-
class VercelBlobProvider {
|
|
22
|
-
provider = PROVIDER_TAG;
|
|
23
|
-
token;
|
|
24
|
-
constructor(config) {
|
|
25
|
-
if (!config.token) {
|
|
26
|
-
throw new Error('Vercel Blob provider requires VercelBlobConfig.token (the ' +
|
|
27
|
-
'BLOB_READ_WRITE_TOKEN value). For new deployments prefer Cloudflare ' +
|
|
28
|
-
'R2 (provider: "r2").');
|
|
29
|
-
}
|
|
30
|
-
this.token = config.token;
|
|
31
|
-
}
|
|
32
|
-
async put(key, data, opts) {
|
|
33
|
-
if (opts?.access === 'private') {
|
|
34
|
-
throw new Error("Vercel Blob provider does not support access: 'private' — every blob " +
|
|
35
|
-
'is publicly readable. Use Cloudflare R2 for private-access patterns.');
|
|
36
|
-
}
|
|
37
|
-
// Normalize to bytes so the result carries an accurate size regardless of
|
|
38
|
-
// input shape (ReadableStream has no length until consumed). Re-wrap in a
|
|
39
|
-
// fresh Uint8Array so the Blob part is backed by a non-shared ArrayBuffer,
|
|
40
|
-
// satisfying the DOM BlobPart type under TS strict typed-array generics.
|
|
41
|
-
const body = await toUint8Array(data);
|
|
42
|
-
const result = await put(key, new Blob([new Uint8Array(body)]), {
|
|
43
|
-
access: 'public',
|
|
44
|
-
token: this.token,
|
|
45
|
-
contentType: opts?.contentType,
|
|
46
|
-
// Keys are caller-controlled (callers pre-randomize, e.g. media/<uuid>.ext);
|
|
47
|
-
// never append a second random suffix or the returned URL won't match `key`.
|
|
48
|
-
addRandomSuffix: false,
|
|
49
|
-
});
|
|
50
|
-
// Vercel Blob has no per-object user-metadata or Cache-Control-header API
|
|
51
|
-
// (only cacheControlMaxAge); opts.metadata / opts.cacheControl are ignored
|
|
52
|
-
// by this legacy provider. R2 honors both.
|
|
53
|
-
return {
|
|
54
|
-
key,
|
|
55
|
-
url: result.url,
|
|
56
|
-
size: body.byteLength,
|
|
57
|
-
provider: PROVIDER_TAG,
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
async del(keyOrUrl) {
|
|
61
|
-
// Vercel's del is idempotent (deleting an absent blob is a no-op), so this
|
|
62
|
-
// satisfies the best-effort contract. It requires the full blob URL, which
|
|
63
|
-
// is what media records persist.
|
|
64
|
-
await del(keyOrUrl, { token: this.token });
|
|
65
|
-
}
|
|
66
|
-
async list(opts) {
|
|
67
|
-
const response = await list({
|
|
68
|
-
token: this.token,
|
|
69
|
-
prefix: opts?.prefix,
|
|
70
|
-
limit: opts?.limit ?? DEFAULT_LIST_LIMIT,
|
|
71
|
-
cursor: opts?.cursor,
|
|
72
|
-
});
|
|
73
|
-
const items = response.blobs.map((blob) => ({
|
|
74
|
-
key: blob.pathname,
|
|
75
|
-
url: blob.url,
|
|
76
|
-
size: blob.size,
|
|
77
|
-
uploadedAt: blob.uploadedAt,
|
|
78
|
-
}));
|
|
79
|
-
return {
|
|
80
|
-
items,
|
|
81
|
-
cursor: response.cursor,
|
|
82
|
-
hasMore: response.hasMore,
|
|
83
|
-
};
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
export function createVercelBlobProvider(config) {
|
|
87
|
-
return new VercelBlobProvider(config);
|
|
88
|
-
}
|