@drawnagency/primitives 0.1.71 → 0.1.73
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/{chunk-RTYJZAKR.js → chunk-7T2WQSWF.js} +12 -12
- package/dist/chunk-IFHRHV7S.js +117 -0
- package/dist/{chunk-2BHPWO7M.js → chunk-N6AE6NBB.js} +158 -32
- package/dist/{chunk-WXVKX6PY.js → chunk-NKVZGPR6.js} +41 -95
- package/dist/{chunk-3DCG4DNU.js → chunk-PZJL2S3Z.js} +8 -4
- package/dist/chunk-RBTSUR5V.js +37 -0
- package/dist/{chunk-6UDYJQL6.js → chunk-S55OZ7F2.js} +9 -1
- package/dist/{chunk-NR7UB6DZ.js → chunk-SFKYUKVN.js} +1 -1
- package/dist/{chunk-YMVYTYGQ.js → chunk-SWIHUIFT.js} +28 -16
- package/dist/{chunk-KWBM27UR.js → chunk-T7MP7ANP.js} +13 -64
- package/dist/{chunk-MU3CDERQ.js → chunk-XTRTK26E.js} +276 -96
- package/dist/{chunk-GKV77AA6.js → chunk-ZRWGV5O6.js} +3 -3
- package/dist/chunk-ZSPCE6MZ.js +70 -0
- package/dist/components/editor/SettingsForm.d.ts.map +1 -1
- package/dist/components/editor/index.js +6 -3
- package/dist/components/primitives/ResolvedMedia.d.ts.map +1 -1
- package/dist/components/primitives/index.js +7 -7
- package/dist/components/sections/Media/MediaBlock.d.ts.map +1 -1
- package/dist/components/sections/Video/VideoBlock.d.ts +31 -0
- package/dist/components/sections/Video/VideoBlock.d.ts.map +1 -0
- package/dist/components/sections/Video/index.d.ts +28 -0
- package/dist/components/sections/Video/index.d.ts.map +1 -0
- package/dist/components/sections/all-sections.d.ts +25 -0
- package/dist/components/sections/all-sections.d.ts.map +1 -1
- package/dist/components/sections/brand-guide.js +7 -7
- package/dist/components/sections/core-sections.d.ts +25 -0
- package/dist/components/sections/core-sections.d.ts.map +1 -1
- package/dist/components/sections/register-schemas.js +13 -12
- package/dist/components/sections/register.js +13 -12
- package/dist/components/shared/Tabs.d.ts +1 -1
- package/dist/components/shared/VideoSourceField.d.ts +8 -0
- package/dist/components/shared/VideoSourceField.d.ts.map +1 -0
- package/dist/components/shell/EditorShell.d.ts.map +1 -1
- package/dist/components/shell/MediaLibraryModal.d.ts +4 -1
- package/dist/components/shell/MediaLibraryModal.d.ts.map +1 -1
- package/dist/hooks/useEditorPublish.d.ts +4 -1
- package/dist/hooks/useEditorPublish.d.ts.map +1 -1
- package/dist/hooks/useMediaPipeline.d.ts +9 -1
- package/dist/hooks/useMediaPipeline.d.ts.map +1 -1
- package/dist/index.js +28 -24
- package/dist/lib/index.js +10 -10
- package/dist/lib/registry.d.ts +6 -0
- package/dist/lib/registry.d.ts.map +1 -1
- package/dist/lib/save-chunks.d.ts +28 -0
- package/dist/lib/save-chunks.d.ts.map +1 -0
- package/dist/lib/video-url.d.ts +7 -0
- package/dist/lib/video-url.d.ts.map +1 -0
- package/dist/lib/video-url.js +9 -0
- package/dist/media/index.js +6 -2
- package/dist/media/resolve.d.ts +14 -0
- package/dist/media/resolve.d.ts.map +1 -1
- package/dist/media/videoPoster.d.ts +1 -0
- package/dist/media/videoPoster.d.ts.map +1 -1
- package/dist/schemas/index.js +4 -4
- package/dist/schemas/link.d.ts.map +1 -1
- package/dist/schemas/link.js +1 -1
- package/dist/schemas/media.d.ts +13 -0
- package/dist/schemas/media.d.ts.map +1 -1
- package/dist/schemas/shared.d.ts.map +1 -1
- package/dist/schemas/site-config.d.ts +1 -0
- package/dist/schemas/site-config.d.ts.map +1 -1
- package/dist/storage/index.d.ts +1 -1
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/types.d.ts +26 -0
- package/dist/storage/types.d.ts.map +1 -1
- package/package.json +5 -1
- package/src/components/editor/SettingsForm.tsx +11 -0
- package/src/components/primitives/ResolvedMedia.tsx +10 -5
- package/src/components/sections/Media/MediaBlock.tsx +2 -1
- package/src/components/sections/Video/VideoBlock.tsx +149 -0
- package/src/components/sections/Video/index.tsx +111 -0
- package/src/components/sections/core-sections.ts +2 -0
- package/src/components/shared/Tabs.tsx +2 -2
- package/src/components/shared/VideoSourceField.tsx +144 -0
- package/src/components/shell/EditorShell.tsx +16 -2
- package/src/components/shell/MediaLibraryModal.tsx +47 -1
- package/src/hooks/useEditorPublish.ts +137 -50
- package/src/hooks/useMediaPipeline.ts +188 -25
- package/src/lib/registry.ts +7 -0
- package/src/lib/save-chunks.ts +53 -0
- package/src/lib/video-url.ts +39 -0
- package/src/media/resolve.ts +18 -0
- package/src/media/videoPoster.ts +2 -2
- package/src/schemas/link.ts +15 -4
- package/src/schemas/media.ts +12 -0
- package/src/schemas/shared.ts +23 -14
- package/src/storage/index.ts +1 -1
- package/src/storage/types.ts +23 -0
- package/dist/chunk-4E66N6UV.js +0 -10
- package/dist/chunk-I5737FJY.js +0 -62
package/dist/index.js
CHANGED
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
verifySessionToken
|
|
14
14
|
} from "./chunk-EM5DFHDZ.js";
|
|
15
15
|
import {
|
|
16
|
+
BAKED_MEDIA_KEYS,
|
|
16
17
|
EXT_TO_MIME,
|
|
17
18
|
MIME_TO_EXT,
|
|
18
19
|
ProcessingQueue,
|
|
@@ -23,17 +24,18 @@ import {
|
|
|
23
24
|
getMediaProvider,
|
|
24
25
|
hashFileBuffer,
|
|
25
26
|
mimeToExt,
|
|
27
|
+
rebindImageRef,
|
|
26
28
|
resolveManifestReferences,
|
|
27
29
|
resolveMedia,
|
|
28
30
|
sanitizeMediaName,
|
|
29
31
|
setMediaProvider
|
|
30
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-S55OZ7F2.js";
|
|
31
33
|
import {
|
|
32
34
|
AudienceColorSchema,
|
|
33
35
|
AudienceNameSchema,
|
|
34
36
|
MediaGridOptionsSchema,
|
|
35
37
|
slugifyAudienceName
|
|
36
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-SFKYUKVN.js";
|
|
37
39
|
import {
|
|
38
40
|
AudienceSchema,
|
|
39
41
|
RoleSchema,
|
|
@@ -45,7 +47,7 @@ import {
|
|
|
45
47
|
LinkTargetSchema,
|
|
46
48
|
LinkValueSchema,
|
|
47
49
|
isSafeHref
|
|
48
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-PZJL2S3Z.js";
|
|
49
51
|
import {
|
|
50
52
|
buildGoogleFontsUrl,
|
|
51
53
|
deriveContrast,
|
|
@@ -55,13 +57,19 @@ import {
|
|
|
55
57
|
loadStaticSiteContent,
|
|
56
58
|
mergeSiteContent,
|
|
57
59
|
safeRedirect
|
|
58
|
-
} from "./chunk-
|
|
60
|
+
} from "./chunk-ZRWGV5O6.js";
|
|
59
61
|
import {
|
|
60
62
|
isSameOriginRequest,
|
|
61
63
|
requireSessionSecret,
|
|
62
64
|
safeNextPath
|
|
63
65
|
} from "./chunk-S2L3BPLS.js";
|
|
64
66
|
import "./chunk-75P6HWPN.js";
|
|
67
|
+
import {
|
|
68
|
+
ensureSanitizer,
|
|
69
|
+
generateNavLinks,
|
|
70
|
+
sanitizeHtml,
|
|
71
|
+
toSectionId
|
|
72
|
+
} from "./chunk-53DKVAB6.js";
|
|
65
73
|
import {
|
|
66
74
|
curatedIcons,
|
|
67
75
|
getIcon
|
|
@@ -73,21 +81,26 @@ import {
|
|
|
73
81
|
navChangeEvent
|
|
74
82
|
} from "./chunk-677NTHAZ.js";
|
|
75
83
|
import {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
sanitizeHtml,
|
|
79
|
-
toSectionId
|
|
80
|
-
} from "./chunk-53DKVAB6.js";
|
|
84
|
+
cn
|
|
85
|
+
} from "./chunk-7EOSDFS3.js";
|
|
81
86
|
import {
|
|
82
87
|
audiencePasses
|
|
83
88
|
} from "./chunk-4YEOTFVU.js";
|
|
84
|
-
import {
|
|
85
|
-
cn
|
|
86
|
-
} from "./chunk-7EOSDFS3.js";
|
|
87
89
|
import {
|
|
88
90
|
getSectionContentSchema,
|
|
89
91
|
getSectionSchema
|
|
90
92
|
} from "./chunk-TZQPOR5A.js";
|
|
93
|
+
import {
|
|
94
|
+
clearRegistry,
|
|
95
|
+
createRegistry,
|
|
96
|
+
defineSection,
|
|
97
|
+
getAllSchemas,
|
|
98
|
+
getAllSections,
|
|
99
|
+
getSchema,
|
|
100
|
+
getSection,
|
|
101
|
+
registerSchema,
|
|
102
|
+
registerSection
|
|
103
|
+
} from "./chunk-VKAGMEKE.js";
|
|
91
104
|
import {
|
|
92
105
|
ChatbotConfigSchema,
|
|
93
106
|
ChatbotTaskSchema,
|
|
@@ -107,18 +120,7 @@ import {
|
|
|
107
120
|
TextLineSchema,
|
|
108
121
|
VariantSchema,
|
|
109
122
|
normalizeSiteIndex
|
|
110
|
-
} from "./chunk-
|
|
111
|
-
import {
|
|
112
|
-
clearRegistry,
|
|
113
|
-
createRegistry,
|
|
114
|
-
defineSection,
|
|
115
|
-
getAllSchemas,
|
|
116
|
-
getAllSections,
|
|
117
|
-
getSchema,
|
|
118
|
-
getSection,
|
|
119
|
-
registerSchema,
|
|
120
|
-
registerSection
|
|
121
|
-
} from "./chunk-VKAGMEKE.js";
|
|
123
|
+
} from "./chunk-SWIHUIFT.js";
|
|
122
124
|
import "./chunk-NSCT3AMV.js";
|
|
123
125
|
import {
|
|
124
126
|
env
|
|
@@ -140,6 +142,7 @@ export {
|
|
|
140
142
|
AudienceColorSchema,
|
|
141
143
|
AudienceNameSchema,
|
|
142
144
|
AudienceSchema,
|
|
145
|
+
BAKED_MEDIA_KEYS,
|
|
143
146
|
ChatbotConfigSchema,
|
|
144
147
|
ChatbotTaskSchema,
|
|
145
148
|
DEFAULT_LINK,
|
|
@@ -210,6 +213,7 @@ export {
|
|
|
210
213
|
mimeToExt,
|
|
211
214
|
navChangeEvent,
|
|
212
215
|
normalizeSiteIndex,
|
|
216
|
+
rebindImageRef,
|
|
213
217
|
registerSchema,
|
|
214
218
|
registerSection,
|
|
215
219
|
requireSessionSecret,
|
package/dist/lib/index.js
CHANGED
|
@@ -7,9 +7,15 @@ import {
|
|
|
7
7
|
loadStaticSiteContent,
|
|
8
8
|
mergeSiteContent,
|
|
9
9
|
safeRedirect
|
|
10
|
-
} from "../chunk-
|
|
10
|
+
} from "../chunk-ZRWGV5O6.js";
|
|
11
11
|
import "../chunk-S2L3BPLS.js";
|
|
12
12
|
import "../chunk-75P6HWPN.js";
|
|
13
|
+
import {
|
|
14
|
+
ensureSanitizer,
|
|
15
|
+
generateNavLinks,
|
|
16
|
+
sanitizeHtml,
|
|
17
|
+
toSectionId
|
|
18
|
+
} from "../chunk-53DKVAB6.js";
|
|
13
19
|
import {
|
|
14
20
|
curatedIcons,
|
|
15
21
|
getIcon
|
|
@@ -21,19 +27,12 @@ import {
|
|
|
21
27
|
navChangeEvent
|
|
22
28
|
} from "../chunk-677NTHAZ.js";
|
|
23
29
|
import {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
sanitizeHtml,
|
|
27
|
-
toSectionId
|
|
28
|
-
} from "../chunk-53DKVAB6.js";
|
|
30
|
+
cn
|
|
31
|
+
} from "../chunk-7EOSDFS3.js";
|
|
29
32
|
import {
|
|
30
33
|
audiencePasses
|
|
31
34
|
} from "../chunk-4YEOTFVU.js";
|
|
32
|
-
import {
|
|
33
|
-
cn
|
|
34
|
-
} from "../chunk-7EOSDFS3.js";
|
|
35
35
|
import "../chunk-TZQPOR5A.js";
|
|
36
|
-
import "../chunk-YMVYTYGQ.js";
|
|
37
36
|
import {
|
|
38
37
|
clearRegistry,
|
|
39
38
|
createRegistry,
|
|
@@ -45,6 +44,7 @@ import {
|
|
|
45
44
|
registerSchema,
|
|
46
45
|
registerSection
|
|
47
46
|
} from "../chunk-VKAGMEKE.js";
|
|
47
|
+
import "../chunk-SWIHUIFT.js";
|
|
48
48
|
import "../chunk-NSCT3AMV.js";
|
|
49
49
|
import {
|
|
50
50
|
env
|
package/dist/lib/registry.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { ComponentType, ReactNode } from "react";
|
|
|
3
3
|
import type { Audience } from "../schemas/auth";
|
|
4
4
|
import type { LinkValue } from "../schemas/link";
|
|
5
5
|
import type { SectionContent } from "../schemas/sections";
|
|
6
|
+
import type { VideoSource } from "../components/sections/Video/VideoBlock";
|
|
6
7
|
export type SettingsFieldDef = {
|
|
7
8
|
type: "text";
|
|
8
9
|
label: string;
|
|
@@ -49,6 +50,11 @@ export type SettingsFieldDef = {
|
|
|
49
50
|
label: string;
|
|
50
51
|
default: LinkValue;
|
|
51
52
|
target?: "content" | "options";
|
|
53
|
+
} | {
|
|
54
|
+
type: "video-source";
|
|
55
|
+
label: string;
|
|
56
|
+
default: VideoSource;
|
|
57
|
+
target?: "content" | "options";
|
|
52
58
|
};
|
|
53
59
|
export type SettingsSchema = Record<string, SettingsFieldDef>;
|
|
54
60
|
export type Thumbnail = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/lib/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACtC,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/lib/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { MediaItem } from "../media/types";
|
|
2
|
+
export interface MediaUploadPayload {
|
|
3
|
+
item: MediaItem;
|
|
4
|
+
blobs: {
|
|
5
|
+
path: string;
|
|
6
|
+
base64: string;
|
|
7
|
+
}[];
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Serialized-payload budget per /api/save request. Netlify rejects function
|
|
11
|
+
* request bodies over ~6MB at the platform level (before the app runs); 4MB
|
|
12
|
+
* leaves headroom for the JSON envelope plus sections/index/config riding the
|
|
13
|
+
* final chunk.
|
|
14
|
+
*/
|
|
15
|
+
export declare const SAVE_CHUNK_BUDGET_BYTES: number;
|
|
16
|
+
/** Approximate serialized size of one upload: base64 dominates; the fixed
|
|
17
|
+
* allowances cover JSON keys, quoting, and the item's manifest metadata. */
|
|
18
|
+
export declare function uploadSizeBytes(upload: MediaUploadPayload): number;
|
|
19
|
+
export interface PackedUploads {
|
|
20
|
+
chunks: MediaUploadPayload[][];
|
|
21
|
+
oversized: MediaUploadPayload[];
|
|
22
|
+
}
|
|
23
|
+
/** Greedy in-order packing of uploads into budget-sized chunks. An item whose
|
|
24
|
+
* blobs alone exceed the budget can never be sent — it lands in `oversized`
|
|
25
|
+
* for the caller to reject with a per-file error. Items are never split
|
|
26
|
+
* across chunks (the manifest may only reference fully-committed items). */
|
|
27
|
+
export declare function packUploads(uploads: MediaUploadPayload[], budget?: number): PackedUploads;
|
|
28
|
+
//# sourceMappingURL=save-chunks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"save-chunks.d.ts","sourceRoot":"","sources":["../../src/lib/save-chunks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC3C;AAED;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,QAAkB,CAAC;AAEvD;6EAC6E;AAC7E,wBAAgB,eAAe,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAElE;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,kBAAkB,EAAE,EAAE,CAAC;IAC/B,SAAS,EAAE,kBAAkB,EAAE,CAAC;CACjC;AAED;;;6EAG6E;AAC7E,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,MAAM,SAA0B,GAAG,aAAa,CAsB1G"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"video-url.d.ts","sourceRoot":"","sources":["../../src/lib/video-url.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAAE,QAAQ,EAAE,SAAS,GAAG,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;AAI3E,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CA4BhE;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,CAIlD"}
|
package/dist/media/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import {
|
|
2
|
+
BAKED_MEDIA_KEYS,
|
|
2
3
|
EXT_TO_MIME,
|
|
3
4
|
MIME_TO_EXT,
|
|
4
5
|
ProcessingQueue,
|
|
@@ -9,20 +10,22 @@ import {
|
|
|
9
10
|
getMediaProvider,
|
|
10
11
|
hashFileBuffer,
|
|
11
12
|
mimeToExt,
|
|
13
|
+
rebindImageRef,
|
|
12
14
|
resolveManifestReferences,
|
|
13
15
|
resolveMedia,
|
|
14
16
|
sanitizeMediaName,
|
|
15
17
|
setMediaProvider
|
|
16
|
-
} from "../chunk-
|
|
18
|
+
} from "../chunk-S55OZ7F2.js";
|
|
17
19
|
import "../chunk-4YEOTFVU.js";
|
|
18
20
|
import {
|
|
19
21
|
ImageManifestSchema,
|
|
20
22
|
MediaConfigSchema,
|
|
21
23
|
MediaItemSchema,
|
|
22
24
|
VariantSchema
|
|
23
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-SWIHUIFT.js";
|
|
24
26
|
import "../chunk-JSBRDJBE.js";
|
|
25
27
|
export {
|
|
28
|
+
BAKED_MEDIA_KEYS,
|
|
26
29
|
EXT_TO_MIME,
|
|
27
30
|
ImageManifestSchema,
|
|
28
31
|
MIME_TO_EXT,
|
|
@@ -37,6 +40,7 @@ export {
|
|
|
37
40
|
getMediaProvider,
|
|
38
41
|
hashFileBuffer,
|
|
39
42
|
mimeToExt,
|
|
43
|
+
rebindImageRef,
|
|
40
44
|
resolveManifestReferences,
|
|
41
45
|
resolveMedia,
|
|
42
46
|
sanitizeMediaName,
|
package/dist/media/resolve.d.ts
CHANGED
|
@@ -12,4 +12,18 @@ export declare function resolveMedia(item: {
|
|
|
12
12
|
* without needing to know about the manifest themselves.
|
|
13
13
|
*/
|
|
14
14
|
export declare function resolveManifestReferences(content: unknown, manifest: MediaManifest, sizes: number[], provider: MediaProvider): unknown;
|
|
15
|
+
/**
|
|
16
|
+
* Keys stamped onto media refs by resolveManifestReferences above — derived
|
|
17
|
+
* from the referenced media item, never authored by the editor. Must stay in
|
|
18
|
+
* sync with the `patch` object built in resolveManifestReferences.
|
|
19
|
+
*/
|
|
20
|
+
export declare const BAKED_MEDIA_KEYS: readonly ["src", "srcset", "alt", "width", "height", "poster"];
|
|
21
|
+
/**
|
|
22
|
+
* Re-point a media ref at a different library item. Drops every baked field so
|
|
23
|
+
* stale values resolved for the PREVIOUS image can't shadow the new one in the
|
|
24
|
+
* editor (ResolvedMedia prefers an explicit src prop over live resolution).
|
|
25
|
+
*/
|
|
26
|
+
export declare function rebindImageRef<T extends {
|
|
27
|
+
imageId?: string;
|
|
28
|
+
}>(ref: T, imageId: string): T;
|
|
15
29
|
//# sourceMappingURL=resolve.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/media/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,YAAY,CAC1B,IAAI,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,EACxC,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,aAAa,GACtB,aAAa,GAAG,IAAI,CAKtB;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,aAAa,GACtB,OAAO,CA0CT"}
|
|
1
|
+
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/media/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,YAAY,CAC1B,IAAI,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,EACxC,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,aAAa,GACtB,aAAa,GAAG,IAAI,CAKtB;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,aAAa,GACtB,OAAO,CA0CT;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,gEAAiE,CAAC;AAE/F;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC,CAIzF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"videoPoster.d.ts","sourceRoot":"","sources":["../../src/media/videoPoster.ts"],"names":[],"mappings":"AAAA,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,UAAU,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"videoPoster.d.ts","sourceRoot":"","sources":["../../src/media/videoPoster.ts"],"names":[],"mappings":"AAAA,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,UAAU,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAsEhF"}
|
package/dist/schemas/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
AudienceNameSchema,
|
|
4
4
|
MediaGridOptionsSchema,
|
|
5
5
|
slugifyAudienceName
|
|
6
|
-
} from "../chunk-
|
|
6
|
+
} from "../chunk-SFKYUKVN.js";
|
|
7
7
|
import {
|
|
8
8
|
AudienceSchema,
|
|
9
9
|
RoleSchema,
|
|
@@ -15,11 +15,12 @@ import {
|
|
|
15
15
|
LinkTargetSchema,
|
|
16
16
|
LinkValueSchema,
|
|
17
17
|
isSafeHref
|
|
18
|
-
} from "../chunk-
|
|
18
|
+
} from "../chunk-PZJL2S3Z.js";
|
|
19
19
|
import {
|
|
20
20
|
getSectionContentSchema,
|
|
21
21
|
getSectionSchema
|
|
22
22
|
} from "../chunk-TZQPOR5A.js";
|
|
23
|
+
import "../chunk-VKAGMEKE.js";
|
|
23
24
|
import {
|
|
24
25
|
ChatbotConfigSchema,
|
|
25
26
|
ChatbotTaskSchema,
|
|
@@ -39,8 +40,7 @@ import {
|
|
|
39
40
|
TextLineSchema,
|
|
40
41
|
VariantSchema,
|
|
41
42
|
normalizeSiteIndex
|
|
42
|
-
} from "../chunk-
|
|
43
|
-
import "../chunk-VKAGMEKE.js";
|
|
43
|
+
} from "../chunk-SWIHUIFT.js";
|
|
44
44
|
import "../chunk-NSCT3AMV.js";
|
|
45
45
|
import "../chunk-JSBRDJBE.js";
|
|
46
46
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/schemas/link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,gBAAgB;;;EAA8B,CAAC;AAE5D;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAUhD;AAED,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/schemas/link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,gBAAgB;;;EAA8B,CAAC;AAE5D;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAUhD;AAED,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;2BAmB1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,YAAY,EAAE,SAA2D,CAAC"}
|
package/dist/schemas/link.js
CHANGED
package/dist/schemas/media.d.ts
CHANGED
|
@@ -25,6 +25,12 @@ export declare const MediaItemSchema: z.ZodObject<{
|
|
|
25
25
|
size: z.ZodNumber;
|
|
26
26
|
}, z.core.$strip>>;
|
|
27
27
|
alt: z.ZodDefault<z.ZodString>;
|
|
28
|
+
storage: z.ZodDefault<z.ZodEnum<{
|
|
29
|
+
github: "github";
|
|
30
|
+
assets: "assets";
|
|
31
|
+
}>>;
|
|
32
|
+
url: z.ZodOptional<z.ZodString>;
|
|
33
|
+
duration: z.ZodOptional<z.ZodNumber>;
|
|
28
34
|
}, z.core.$strip>;
|
|
29
35
|
export type MediaItem = z.infer<typeof MediaItemSchema>;
|
|
30
36
|
export declare const ImageManifestSchema: z.ZodObject<{
|
|
@@ -48,6 +54,12 @@ export declare const ImageManifestSchema: z.ZodObject<{
|
|
|
48
54
|
size: z.ZodNumber;
|
|
49
55
|
}, z.core.$strip>>;
|
|
50
56
|
alt: z.ZodDefault<z.ZodString>;
|
|
57
|
+
storage: z.ZodDefault<z.ZodEnum<{
|
|
58
|
+
github: "github";
|
|
59
|
+
assets: "assets";
|
|
60
|
+
}>>;
|
|
61
|
+
url: z.ZodOptional<z.ZodString>;
|
|
62
|
+
duration: z.ZodOptional<z.ZodNumber>;
|
|
51
63
|
}, z.core.$strip>>;
|
|
52
64
|
}, z.core.$strip>;
|
|
53
65
|
export type MediaManifest = z.infer<typeof ImageManifestSchema>;
|
|
@@ -55,6 +67,7 @@ export declare const MediaConfigSchema: z.ZodObject<{
|
|
|
55
67
|
sizes: z.ZodDefault<z.ZodArray<z.ZodNumber>>;
|
|
56
68
|
maxFileSize: z.ZodDefault<z.ZodNumber>;
|
|
57
69
|
quality: z.ZodDefault<z.ZodNumber>;
|
|
70
|
+
maxAssetSize: z.ZodDefault<z.ZodNumber>;
|
|
58
71
|
}, z.core.$strip>;
|
|
59
72
|
export type MediaConfig = z.infer<typeof MediaConfigSchema>;
|
|
60
73
|
//# sourceMappingURL=media.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../src/schemas/media.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,aAAa;;;;iBAIxB,CAAC;AAEH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../src/schemas/media.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,aAAa;;;;iBAIxB,CAAC;AAEH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqB1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAE9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,iBAAiB;;;;;iBAO5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/schemas/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwBxB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;2BAKzB,CAAC;AAEH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/schemas/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAwBxB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;2BAKzB,CAAC;AAEH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AA6CtD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAE/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;iEACiE;AACjE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;2BAAqD,CAAC;AAE7F,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAG9E,eAAO,MAAM,cAAc,aAEiC,CAAC;AAO7D,eAAO,MAAM,cAAc,aAG6C,CAAC"}
|
|
@@ -190,6 +190,7 @@ export declare const SiteConfigSchema: z.ZodObject<{
|
|
|
190
190
|
sizes: z.ZodDefault<z.ZodArray<z.ZodNumber>>;
|
|
191
191
|
maxFileSize: z.ZodDefault<z.ZodNumber>;
|
|
192
192
|
quality: z.ZodDefault<z.ZodNumber>;
|
|
193
|
+
maxAssetSize: z.ZodDefault<z.ZodNumber>;
|
|
193
194
|
}, z.core.$strip>>;
|
|
194
195
|
chatbot: z.ZodDefault<z.ZodObject<{
|
|
195
196
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"site-config.d.ts","sourceRoot":"","sources":["../../src/schemas/site-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,iBAAiB;;;;;;;;;iBAI5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAO5D,eAAO,MAAM,cAAc,0DAA2D,CAAC;AAEvF,eAAO,MAAM,gBAAgB;;;EAA+B,CAAC;AAE7D,eAAO,MAAM,UAAU;;;;;;;;;;;;iBASrB,CAAC;AAEH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AA0C9C,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6CtB,CAAC;AAEL,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAyE,CAAC;AAElG,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAE7D,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,CAE1D;AAMD,eAAO,MAAM,iBAAiB;;;;;iBAM5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,mBAAmB;;;;;;;;;;;iBAwB5B,CAAC;AACL,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"site-config.d.ts","sourceRoot":"","sources":["../../src/schemas/site-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,iBAAiB;;;;;;;;;iBAI5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAO5D,eAAO,MAAM,cAAc,0DAA2D,CAAC;AAEvF,eAAO,MAAM,gBAAgB;;;EAA+B,CAAC;AAE7D,eAAO,MAAM,UAAU;;;;;;;;;;;;iBASrB,CAAC;AAEH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AA0C9C,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6CtB,CAAC;AAEL,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAyE,CAAC;AAElG,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAE7D,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,CAE1D;AAMD,eAAO,MAAM,iBAAiB;;;;;iBAM5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,mBAAmB;;;;;;;;;;;iBAwB5B,CAAC;AACL,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyB3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
|
package/dist/storage/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC"}
|
package/dist/storage/types.d.ts
CHANGED
|
@@ -30,4 +30,30 @@ export type FileWrite = {
|
|
|
30
30
|
content: string | Uint8Array | null;
|
|
31
31
|
encoding?: "utf-8" | "base64";
|
|
32
32
|
};
|
|
33
|
+
/**
|
|
34
|
+
* Optional large-asset store (Supabase Storage bucket). Holds video originals
|
|
35
|
+
* too big for the git path; deliberately generic so future large kinds (zips)
|
|
36
|
+
* can slot in. All paths are SITE-RELATIVE ("media/{hash}/original.mp4") —
|
|
37
|
+
* implementations prepend the tenant prefix ("sites/{siteId}/") themselves so
|
|
38
|
+
* a caller can never address another tenant's objects.
|
|
39
|
+
*/
|
|
40
|
+
export interface AssetStore {
|
|
41
|
+
/** Mint a signed direct-upload URL for the browser (PUT). */
|
|
42
|
+
createUploadUrl(path: string, opts: {
|
|
43
|
+
contentType: string;
|
|
44
|
+
}): Promise<{
|
|
45
|
+
uploadUrl: string;
|
|
46
|
+
path: string;
|
|
47
|
+
publicUrl: string;
|
|
48
|
+
}>;
|
|
49
|
+
/** Deterministic public CDN URL for an object (no network call). */
|
|
50
|
+
getPublicUrl(path: string): string;
|
|
51
|
+
delete(paths: string[]): Promise<void>;
|
|
52
|
+
/** Recursive listing under a site-relative prefix. */
|
|
53
|
+
list(prefix: string): Promise<{
|
|
54
|
+
path: string;
|
|
55
|
+
size: number;
|
|
56
|
+
updatedAt: string;
|
|
57
|
+
}[]>;
|
|
58
|
+
}
|
|
33
59
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;aACjB,cAAc,EAAE,MAAM,GAAG,IAAI;gBAA7B,cAAc,EAAE,MAAM,GAAG,IAAI;CAI1D;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,CACR,KAAK,EAAE,SAAS,EAAE,EAClB,OAAO,EAAE,MAAM,EAIf,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GACxC,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEhC,QAAQ,CACN,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAC5B,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IAE9B,YAAY,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAE7C,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9B,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CAC/E;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;CAC/B,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;aACjB,cAAc,EAAE,MAAM,GAAG,IAAI;gBAA7B,cAAc,EAAE,MAAM,GAAG,IAAI;CAI1D;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,CACR,KAAK,EAAE,SAAS,EAAE,EAClB,OAAO,EAAE,MAAM,EAIf,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GACxC,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEhC,QAAQ,CACN,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAC5B,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IAE9B,YAAY,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAE7C,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9B,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CAC/E;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;CAC/B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,6DAA6D;IAC7D,eAAe,CACb,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,GAC5B,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEnE,oEAAoE;IACpE,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAEnC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvC,sDAAsD;IACtD,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAC;CACpF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@drawnagency/primitives",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.73",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./package.json": "./package.json",
|
|
@@ -36,6 +36,10 @@
|
|
|
36
36
|
"types": "./dist/lib/env.d.ts",
|
|
37
37
|
"default": "./dist/lib/env.js"
|
|
38
38
|
},
|
|
39
|
+
"./lib/video-url": {
|
|
40
|
+
"types": "./dist/lib/video-url.d.ts",
|
|
41
|
+
"default": "./dist/lib/video-url.js"
|
|
42
|
+
},
|
|
39
43
|
"./lib/platform-broker": {
|
|
40
44
|
"types": "./dist/lib/platform-broker.d.ts",
|
|
41
45
|
"default": "./dist/lib/platform-broker.js"
|
|
@@ -5,8 +5,10 @@ import { Select } from "../shared/Select";
|
|
|
5
5
|
import { Checkbox } from "../shared/Checkbox";
|
|
6
6
|
import { FormLabel } from "../shared/FormLabel";
|
|
7
7
|
import { LinkField } from "../shared/LinkField";
|
|
8
|
+
import { VideoSourceField } from "../shared/VideoSourceField";
|
|
8
9
|
import { Tabs } from "../shared/Tabs";
|
|
9
10
|
import type { LinkValue } from "../../schemas/link";
|
|
11
|
+
import type { VideoSource } from "../sections/Video/VideoBlock";
|
|
10
12
|
import { cn } from "../../lib/cn";
|
|
11
13
|
|
|
12
14
|
export interface SettingsFormResult {
|
|
@@ -163,6 +165,15 @@ function renderField(
|
|
|
163
165
|
/>
|
|
164
166
|
);
|
|
165
167
|
|
|
168
|
+
case "video-source":
|
|
169
|
+
return (
|
|
170
|
+
<VideoSourceField
|
|
171
|
+
key={key}
|
|
172
|
+
value={value as VideoSource | undefined}
|
|
173
|
+
onChange={(v) => handleFieldChange(key, v)}
|
|
174
|
+
/>
|
|
175
|
+
);
|
|
176
|
+
|
|
166
177
|
default:
|
|
167
178
|
return null;
|
|
168
179
|
}
|
|
@@ -27,13 +27,18 @@ export function ResolvedMedia({
|
|
|
27
27
|
invertFrom,
|
|
28
28
|
}: ResolvedMediaProps) {
|
|
29
29
|
const resolved = useResolvedMedia(imageId);
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
// A successful live resolution is always fresher than baked props (the ref
|
|
31
|
+
// may have been re-pointed since the server baked them) — prefer it, and use
|
|
32
|
+
// the baked values only where resolution is unavailable (zero-JS viewer,
|
|
33
|
+
// deleted/unknown id).
|
|
34
|
+
const hasResolved = !!resolved.src;
|
|
35
|
+
const src = hasResolved ? resolved.src : propSrc;
|
|
36
|
+
const srcset = hasResolved ? resolved.srcset : propSrcset;
|
|
32
37
|
const poster = resolved.poster;
|
|
33
|
-
const alt =
|
|
38
|
+
const alt = hasResolved ? resolved.alt : (propAlt ?? "");
|
|
34
39
|
const kind = resolved.kind;
|
|
35
|
-
const width =
|
|
36
|
-
const height =
|
|
40
|
+
const width = hasResolved ? resolved.width : propWidth;
|
|
41
|
+
const height = hasResolved ? resolved.height : propHeight;
|
|
37
42
|
|
|
38
43
|
// `loaded` fades the placeholder out via onLoad in the hydrated editor. In the
|
|
39
44
|
// zero-JS viewer this stays false (no JS), so the placeholder remains painted
|
|
@@ -5,6 +5,7 @@ import { ResolvedMedia } from "../../primitives/ResolvedMedia";
|
|
|
5
5
|
import { ImageDropZone } from "../../primitives/ImageDropZone";
|
|
6
6
|
import { EditablePlainText } from "../../primitives/EditablePlainText";
|
|
7
7
|
import { useMediaLibrary } from "../../shell/MediaLibraryContext";
|
|
8
|
+
import { rebindImageRef } from "../../../media/resolve";
|
|
8
9
|
|
|
9
10
|
export interface MediaBlockProps {
|
|
10
11
|
refValue: SingleMediaReference;
|
|
@@ -25,7 +26,7 @@ export function MediaBlock({ refValue, options, link, isEditMode, onRefChange }:
|
|
|
25
26
|
? Array.isArray(refValue.caption) ? refValue.caption.join("\n") : refValue.caption
|
|
26
27
|
: "";
|
|
27
28
|
|
|
28
|
-
const replace = onRefChange ? (imageId: string) => onRefChange(
|
|
29
|
+
const replace = onRefChange ? (imageId: string) => onRefChange(rebindImageRef(refValue, imageId)) : undefined;
|
|
29
30
|
|
|
30
31
|
// The zero-JS viewer has no MediaLibraryContext, so useResolvedMedia() can't
|
|
31
32
|
// resolve the URL. The SSR pass (resolveManifestReferences) bakes src/srcset/alt
|