@bluepic/embed 0.4.0-next.99 → 0.5.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/dist/bluepic-embed.iife.js +402 -178
- package/dist/bluepic-embed.umd.js +402 -178
- package/dist/components/AssetViewer/AssetViewer.vue.d.ts +71 -0
- package/dist/components/BxAudioPlayButton.vue.d.ts +24 -0
- package/dist/components/BxCard.vue.d.ts +35 -0
- package/dist/components/BxInput.vue.d.ts +7 -1
- package/dist/components/BxList.vue.d.ts +9 -0
- package/dist/components/BxListItem.vue.d.ts +13 -1
- package/dist/components/BxPopover.vue.d.ts +7 -0
- package/dist/components/BxPreviewLayer.vue.d.ts +18 -0
- package/dist/components/BxScrollbar.vue.d.ts +7 -0
- package/dist/components/BxSelect.vue.d.ts +16 -2
- package/dist/components/BxTable.vue.d.ts +109 -0
- package/dist/components/BxTabs.vue.d.ts +7 -0
- package/dist/components/BxWaveformThumb.vue.d.ts +27 -0
- package/dist/components/CollectionFieldPopup.vue.d.ts +4 -0
- package/dist/components/PopoverElement.vue.d.ts +10 -1
- package/dist/components/TemplateEditor/BatchCell.vue.d.ts +18 -0
- package/dist/components/TemplateEditor/BatchEditor.vue.d.ts +264 -0
- package/dist/components/TemplateEditor/BatchExportPopup.vue.d.ts +68 -0
- package/dist/components/TemplateEditor/BatchImportPopup.vue.d.ts +25 -0
- package/dist/components/TemplateEditor/BxLiveTemplate.vue.d.ts +8 -0
- package/dist/components/TemplateEditor/BxTemplateEditor.vue.d.ts +285 -16
- package/dist/components/TemplateEditor/FieldHintsLayer.vue.d.ts +86 -0
- package/dist/components/TemplateEditor/TemplateView.vue.d.ts +77 -2
- package/dist/components/User/UserInfo.vue.d.ts +12 -1
- package/dist/components/directives/usePopup.d.ts +5 -0
- package/dist/components/fields/Collection.vue.d.ts +3 -0
- package/dist/components/fields/Image.vue.d.ts +19 -5
- package/dist/components/fields/ImageEdit.vue.d.ts +6 -1
- package/dist/components/fields/Text.vue.d.ts +1 -1
- package/dist/embed/embed.d.ts +1024 -228
- package/dist/{index-CWm6zOv7.js → index-C99_zLhc.js} +9 -9
- package/dist/index-D8N6IfRw.cjs +1 -0
- package/dist/main.cjs +240 -162
- package/dist/main.d.ts +20 -0
- package/dist/main.mjs +79043 -68465
- package/dist/markdown-it-5-ieF6Bh.js +3790 -0
- package/dist/markdown-it-CLB5Jta6.cjs +16 -0
- package/dist/postal-mime-Df-WB8Vq.js +3337 -0
- package/dist/postal-mime-_7WF5UBe.cjs +28 -0
- package/dist/style.css +1 -1
- package/dist/theme/bridge.d.ts +14 -0
- package/dist/theme/color.d.ts +80 -0
- package/dist/theme/css.d.ts +8 -0
- package/dist/theme/index.d.ts +19 -0
- package/dist/theme/legacy.d.ts +3 -0
- package/dist/theme/resolve.d.ts +10 -0
- package/dist/theme/tokens.d.ts +129 -0
- package/dist/theme/types-contract.d.ts +13 -0
- package/dist/theme.cjs +1 -0
- package/dist/theme.mjs +1313 -0
- package/dist/util/assetAuth.d.ts +35 -0
- package/dist/util/audioPreview.d.ts +8 -0
- package/dist/util/batch/csv.d.ts +58 -0
- package/dist/util/batch/export.d.ts +92 -0
- package/dist/util/batch/fields.d.ts +22 -0
- package/dist/util/batch/parseCSV.d.ts +72 -0
- package/dist/util/batch/useBatchRows.d.ts +67 -0
- package/dist/util/cloneDeep.d.ts +5 -5
- package/dist/util/cloudflareImages.d.ts +8 -1
- package/dist/util/contextCapture.d.ts +19 -0
- package/dist/util/export.d.ts +65 -18
- package/dist/util/fieldHints/chipAction.d.ts +23 -0
- package/dist/util/fieldHints/fieldFocus.d.ts +81 -0
- package/dist/util/fieldHints/geometry.d.ts +52 -0
- package/dist/util/fieldHints/index.d.ts +20 -0
- package/dist/util/fieldHints/probe.d.ts +84 -0
- package/dist/util/fieldHints/resolve.d.ts +55 -0
- package/dist/util/fieldHints/textProbe.d.ts +71 -0
- package/dist/util/fieldHints/useCanvasTextEditing.d.ts +125 -0
- package/dist/util/fieldHints/useChipHighlight.d.ts +29 -0
- package/dist/util/fieldHints/useFieldHitboxes.d.ts +5601 -0
- package/dist/util/fieldHints/useHintReveal.d.ts +10 -0
- package/dist/util/fieldTree.d.ts +20 -0
- package/dist/util/fields.d.ts +1 -1
- package/dist/util/gallery.d.ts +78 -30
- package/dist/util/popoverArrow.d.ts +33 -0
- package/dist/util/popupHeaderTools.d.ts +26 -0
- package/dist/util/scrollPassthrough.d.ts +9 -0
- package/dist/util/useTheme.d.ts +36 -1
- package/dist/util/visualViewport.d.ts +47 -0
- package/dist/xlsx-BopDBbWb.js +24176 -0
- package/dist/xlsx-qn1xoUuv.cjs +105 -0
- package/package.json +18 -5
- package/dist/index-DFXQWOGQ.cjs +0 -1
- package/dist/util/backgroundRemoval.d.ts +0 -51
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import type { BluepicField } from '@bluepic/types';
|
|
2
|
+
import type { FieldHitbox } from '../../util/fieldHints';
|
|
3
|
+
import type { CanvasTextState, SelectionHandle } from '../../util/fieldHints/useCanvasTextEditing';
|
|
4
|
+
type __VLS_Props = {
|
|
5
|
+
hitboxes: FieldHitbox[];
|
|
6
|
+
/**
|
|
7
|
+
* zoompinch's slot function. Takes CANVAS-pixel coordinates — and since the
|
|
8
|
+
* live template is sized to `serial.width × serial.height` (exactly as
|
|
9
|
+
* bx-studio sizes its SerialWrapper), those are serial coordinates. The
|
|
10
|
+
* canvas dimensions are still threaded through below rather than assumed,
|
|
11
|
+
* because the `serialWidth`/`serialHeight` prop path can render without a
|
|
12
|
+
* serial at all.
|
|
13
|
+
*/
|
|
14
|
+
composePoint: (x: number, y: number) => [number, number];
|
|
15
|
+
canvasWidth: number;
|
|
16
|
+
canvasHeight: number;
|
|
17
|
+
serialWidth: number;
|
|
18
|
+
serialHeight: number;
|
|
19
|
+
/**
|
|
20
|
+
* Not read — a reactivity dependency. `composePoint` is a plain function
|
|
21
|
+
* closing over zoompinch's engine state, so nothing about calling it tells
|
|
22
|
+
* Vue to recompute when the user pans. Naming the live transform as a prop
|
|
23
|
+
* is what re-runs `placed` on every gesture frame.
|
|
24
|
+
*/
|
|
25
|
+
transform: unknown;
|
|
26
|
+
/** On multi-frame templates, only the focused frame's hints are shown. */
|
|
27
|
+
activeFrameIndex?: number;
|
|
28
|
+
/** Paint only. The hitboxes stay clickable either way — see the stylesheet. */
|
|
29
|
+
revealed: boolean;
|
|
30
|
+
/** Live caret + selection in SERIAL coordinates, or absent when not editing. */
|
|
31
|
+
textState?: CanvasTextState;
|
|
32
|
+
/** Element whose text is being edited — its hitbox becomes a selection surface. */
|
|
33
|
+
editingElementId?: string;
|
|
34
|
+
/** zoompinch's inverse projection, for turning a pointer position into serial coords. */
|
|
35
|
+
normalizeClientCoords: (clientX: number, clientY: number) => [number, number];
|
|
36
|
+
};
|
|
37
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
38
|
+
"activate-field": (args_0: BluepicField) => any;
|
|
39
|
+
"focus-field": (args_0: BluepicField) => any;
|
|
40
|
+
"hover-field": (args_0: BluepicField | undefined) => any;
|
|
41
|
+
"select-start": (args_0: {
|
|
42
|
+
x: number;
|
|
43
|
+
y: number;
|
|
44
|
+
}) => any;
|
|
45
|
+
"select-move": (args_0: {
|
|
46
|
+
x: number;
|
|
47
|
+
y: number;
|
|
48
|
+
}) => any;
|
|
49
|
+
"select-end": () => any;
|
|
50
|
+
"handle-grab": (args_0: {
|
|
51
|
+
handle: SelectionHandle;
|
|
52
|
+
point: {
|
|
53
|
+
x: number;
|
|
54
|
+
y: number;
|
|
55
|
+
};
|
|
56
|
+
}) => any;
|
|
57
|
+
"select-word": (args_0: {
|
|
58
|
+
x: number;
|
|
59
|
+
y: number;
|
|
60
|
+
}) => any;
|
|
61
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
62
|
+
"onActivate-field"?: ((args_0: BluepicField) => any) | undefined;
|
|
63
|
+
"onFocus-field"?: ((args_0: BluepicField) => any) | undefined;
|
|
64
|
+
"onHover-field"?: ((args_0: BluepicField | undefined) => any) | undefined;
|
|
65
|
+
"onSelect-start"?: ((args_0: {
|
|
66
|
+
x: number;
|
|
67
|
+
y: number;
|
|
68
|
+
}) => any) | undefined;
|
|
69
|
+
"onSelect-move"?: ((args_0: {
|
|
70
|
+
x: number;
|
|
71
|
+
y: number;
|
|
72
|
+
}) => any) | undefined;
|
|
73
|
+
"onSelect-end"?: (() => any) | undefined;
|
|
74
|
+
"onHandle-grab"?: ((args_0: {
|
|
75
|
+
handle: SelectionHandle;
|
|
76
|
+
point: {
|
|
77
|
+
x: number;
|
|
78
|
+
y: number;
|
|
79
|
+
};
|
|
80
|
+
}) => any) | undefined;
|
|
81
|
+
"onSelect-word"?: ((args_0: {
|
|
82
|
+
x: number;
|
|
83
|
+
y: number;
|
|
84
|
+
}) => any) | undefined;
|
|
85
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
86
|
+
export default _default;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Transform } from '@zoompinch/vue';
|
|
2
2
|
import { Ref } from 'vue';
|
|
3
|
-
import { Template } from '@bluepic/types';
|
|
3
|
+
import { BluepicField, Template } from '@bluepic/types';
|
|
4
|
+
import type { FieldHitbox } from '../../util/fieldHints';
|
|
5
|
+
import type { CanvasTextState, SelectionHandle } from '../../util/fieldHints/useCanvasTextEditing';
|
|
4
6
|
import type { AssetProxyConfig } from '../../util/assetProxy';
|
|
5
7
|
type __VLS_Props = {
|
|
6
8
|
bxCoreVersion?: string;
|
|
@@ -12,6 +14,8 @@ type __VLS_Props = {
|
|
|
12
14
|
serialWidth?: number;
|
|
13
15
|
serialHeight?: number;
|
|
14
16
|
preview?: string;
|
|
17
|
+
/** Passed straight through to BxLiveTemplate's skeleton — see its own doc. */
|
|
18
|
+
personalizedPreviewSrc?: string | null;
|
|
15
19
|
offset: {
|
|
16
20
|
top: number;
|
|
17
21
|
right: number;
|
|
@@ -27,6 +31,17 @@ type __VLS_Props = {
|
|
|
27
31
|
* reflects the currently rendered graphic.
|
|
28
32
|
*/
|
|
29
33
|
accessibilityDescription?: string;
|
|
34
|
+
/** Derived field-hint targets in serial coordinates. Empty = no overlay. */
|
|
35
|
+
fieldHitboxes?: FieldHitbox[];
|
|
36
|
+
/**
|
|
37
|
+
* Whether the hint overlay is PAINTED (hover on desktop, tap on mobile). The
|
|
38
|
+
* hitboxes stay clickable regardless — see `FieldHintsLayer`.
|
|
39
|
+
*/
|
|
40
|
+
hintsRevealed?: boolean;
|
|
41
|
+
/** Live caret + selection in serial coordinates while a hint-focused field is edited. */
|
|
42
|
+
textState?: CanvasTextState;
|
|
43
|
+
/** Element whose text is being edited. */
|
|
44
|
+
editingElementId?: string;
|
|
30
45
|
};
|
|
31
46
|
declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
32
47
|
currentlyFocusedFrame: import("vue").ComputedRef<{
|
|
@@ -47,6 +62,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
47
62
|
serialWidth?: number;
|
|
48
63
|
serialHeight?: number;
|
|
49
64
|
preview?: string;
|
|
65
|
+
personalizedPreviewSrc?: string | null;
|
|
50
66
|
data?: {
|
|
51
67
|
[k: string]: unknown;
|
|
52
68
|
};
|
|
@@ -73,6 +89,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
73
89
|
watermark: boolean;
|
|
74
90
|
resultType: "blob";
|
|
75
91
|
externalCanvas: HTMLCanvasElement | null;
|
|
92
|
+
svgLoadWaitDelay?: number;
|
|
76
93
|
}): Promise<Blob>;
|
|
77
94
|
(options: {
|
|
78
95
|
type: "image/png" | "image/jpeg" | "image/jpge" | "image/webp";
|
|
@@ -87,6 +104,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
87
104
|
watermark: boolean;
|
|
88
105
|
resultType: "canvas";
|
|
89
106
|
externalCanvas: HTMLCanvasElement | null;
|
|
107
|
+
svgLoadWaitDelay?: number;
|
|
90
108
|
}): Promise<HTMLCanvasElement>;
|
|
91
109
|
};
|
|
92
110
|
aspectRatio: import("vue").ComputedRef<number>;
|
|
@@ -118,6 +136,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
118
136
|
serialWidth?: number;
|
|
119
137
|
serialHeight?: number;
|
|
120
138
|
preview?: string;
|
|
139
|
+
personalizedPreviewSrc?: string | null;
|
|
121
140
|
data?: {
|
|
122
141
|
[k: string]: unknown;
|
|
123
142
|
};
|
|
@@ -144,6 +163,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
144
163
|
watermark: boolean;
|
|
145
164
|
resultType: "blob";
|
|
146
165
|
externalCanvas: HTMLCanvasElement | null;
|
|
166
|
+
svgLoadWaitDelay?: number;
|
|
147
167
|
}): Promise<Blob>;
|
|
148
168
|
(options: {
|
|
149
169
|
type: "image/png" | "image/jpeg" | "image/jpge" | "image/webp";
|
|
@@ -158,6 +178,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
158
178
|
watermark: boolean;
|
|
159
179
|
resultType: "canvas";
|
|
160
180
|
externalCanvas: HTMLCanvasElement | null;
|
|
181
|
+
svgLoadWaitDelay?: number;
|
|
161
182
|
}): Promise<HTMLCanvasElement>;
|
|
162
183
|
};
|
|
163
184
|
aspectRatio: import("vue").ComputedRef<number>;
|
|
@@ -174,6 +195,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
174
195
|
serialWidth?: number;
|
|
175
196
|
serialHeight?: number;
|
|
176
197
|
preview?: string;
|
|
198
|
+
personalizedPreviewSrc?: string | null;
|
|
177
199
|
data?: {
|
|
178
200
|
[k: string]: unknown;
|
|
179
201
|
};
|
|
@@ -200,6 +222,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
200
222
|
watermark: boolean;
|
|
201
223
|
resultType: "blob";
|
|
202
224
|
externalCanvas: HTMLCanvasElement | null;
|
|
225
|
+
svgLoadWaitDelay?: number;
|
|
203
226
|
}): Promise<Blob>;
|
|
204
227
|
(options: {
|
|
205
228
|
type: "image/png" | "image/jpeg" | "image/jpge" | "image/webp";
|
|
@@ -214,6 +237,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
214
237
|
watermark: boolean;
|
|
215
238
|
resultType: "canvas";
|
|
216
239
|
externalCanvas: HTMLCanvasElement | null;
|
|
240
|
+
svgLoadWaitDelay?: number;
|
|
217
241
|
}): Promise<HTMLCanvasElement>;
|
|
218
242
|
};
|
|
219
243
|
aspectRatio: import("vue").ComputedRef<number>;
|
|
@@ -245,6 +269,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
245
269
|
serialWidth?: number;
|
|
246
270
|
serialHeight?: number;
|
|
247
271
|
preview?: string;
|
|
272
|
+
personalizedPreviewSrc?: string | null;
|
|
248
273
|
data?: {
|
|
249
274
|
[k: string]: unknown;
|
|
250
275
|
};
|
|
@@ -271,6 +296,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
271
296
|
watermark: boolean;
|
|
272
297
|
resultType: "blob";
|
|
273
298
|
externalCanvas: HTMLCanvasElement | null;
|
|
299
|
+
svgLoadWaitDelay?: number;
|
|
274
300
|
}): Promise<Blob>;
|
|
275
301
|
(options: {
|
|
276
302
|
type: "image/png" | "image/jpeg" | "image/jpge" | "image/webp";
|
|
@@ -285,6 +311,7 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
285
311
|
watermark: boolean;
|
|
286
312
|
resultType: "canvas";
|
|
287
313
|
externalCanvas: HTMLCanvasElement | null;
|
|
314
|
+
svgLoadWaitDelay?: number;
|
|
288
315
|
}): Promise<HTMLCanvasElement>;
|
|
289
316
|
};
|
|
290
317
|
aspectRatio: import("vue").ComputedRef<number>;
|
|
@@ -678,5 +705,53 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
|
|
|
678
705
|
};
|
|
679
706
|
}) | undefined>;
|
|
680
707
|
isMultiFrame: import("vue").ComputedRef<boolean>;
|
|
681
|
-
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
708
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
709
|
+
"activate-field": (args_0: BluepicField) => any;
|
|
710
|
+
"focus-field": (args_0: BluepicField) => any;
|
|
711
|
+
"hover-field": (args_0: BluepicField | undefined) => any;
|
|
712
|
+
"select-start": (args_0: {
|
|
713
|
+
x: number;
|
|
714
|
+
y: number;
|
|
715
|
+
}) => any;
|
|
716
|
+
"select-move": (args_0: {
|
|
717
|
+
x: number;
|
|
718
|
+
y: number;
|
|
719
|
+
}) => any;
|
|
720
|
+
"select-end": () => any;
|
|
721
|
+
"handle-grab": (args_0: {
|
|
722
|
+
handle: SelectionHandle;
|
|
723
|
+
point: {
|
|
724
|
+
x: number;
|
|
725
|
+
y: number;
|
|
726
|
+
};
|
|
727
|
+
}) => any;
|
|
728
|
+
"select-word": (args_0: {
|
|
729
|
+
x: number;
|
|
730
|
+
y: number;
|
|
731
|
+
}) => any;
|
|
732
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
733
|
+
"onActivate-field"?: ((args_0: BluepicField) => any) | undefined;
|
|
734
|
+
"onFocus-field"?: ((args_0: BluepicField) => any) | undefined;
|
|
735
|
+
"onHover-field"?: ((args_0: BluepicField | undefined) => any) | undefined;
|
|
736
|
+
"onSelect-start"?: ((args_0: {
|
|
737
|
+
x: number;
|
|
738
|
+
y: number;
|
|
739
|
+
}) => any) | undefined;
|
|
740
|
+
"onSelect-move"?: ((args_0: {
|
|
741
|
+
x: number;
|
|
742
|
+
y: number;
|
|
743
|
+
}) => any) | undefined;
|
|
744
|
+
"onSelect-end"?: (() => any) | undefined;
|
|
745
|
+
"onHandle-grab"?: ((args_0: {
|
|
746
|
+
handle: SelectionHandle;
|
|
747
|
+
point: {
|
|
748
|
+
x: number;
|
|
749
|
+
y: number;
|
|
750
|
+
};
|
|
751
|
+
}) => any) | undefined;
|
|
752
|
+
"onSelect-word"?: ((args_0: {
|
|
753
|
+
x: number;
|
|
754
|
+
y: number;
|
|
755
|
+
}) => any) | undefined;
|
|
756
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
682
757
|
export default _default;
|
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
import { z } from '@hono/zod-openapi';
|
|
2
2
|
import { Studio } from '@bluepic/types';
|
|
3
3
|
import type { User } from '@auth0/auth0-vue';
|
|
4
|
+
import type { VNode } from 'vue';
|
|
4
5
|
type __VLS_Props = {
|
|
5
6
|
user: z.infer<typeof Studio.auth0UserViaManagementAPISchema> | User;
|
|
6
7
|
showSettings?: boolean;
|
|
7
8
|
};
|
|
8
|
-
|
|
9
|
+
type __VLS_Slots = {
|
|
10
|
+
/** Host content between the identity block and the Settings / Logout actions. */
|
|
11
|
+
default?: () => VNode[] | VNode;
|
|
12
|
+
};
|
|
13
|
+
declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
9
14
|
logout: () => any;
|
|
10
15
|
settings: () => any;
|
|
11
16
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
@@ -14,4 +19,10 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {
|
|
|
14
19
|
}>, {
|
|
15
20
|
showSettings: boolean;
|
|
16
21
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
|
+
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
17
23
|
export default _default;
|
|
24
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
25
|
+
new (): {
|
|
26
|
+
$slots: S;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
@@ -91,6 +91,11 @@ export type PopoverCreationOptions = {
|
|
|
91
91
|
capturedContext?: Record<string | symbol, any>;
|
|
92
92
|
content: () => VNode[] | VNode;
|
|
93
93
|
noPointerEvents?: boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Override scroll pass-through. Defaults to `!darkenBackground`: a popover
|
|
96
|
+
* without a scrim lets wheel/touch gestures beside it scroll the app.
|
|
97
|
+
*/
|
|
98
|
+
scrollPassthrough?: boolean;
|
|
94
99
|
closeOnClickOutside?: boolean;
|
|
95
100
|
transitionDuration?: number;
|
|
96
101
|
};
|
|
@@ -10,6 +10,9 @@ declare const _default: <T extends {
|
|
|
10
10
|
description?: string;
|
|
11
11
|
detailedDescription?: string;
|
|
12
12
|
bridge: FieldsBridge;
|
|
13
|
+
/** Authored per-entry defaults — this is the `defaultObject` key of the Collection field type. */
|
|
14
|
+
defaultObject?: T;
|
|
15
|
+
/** @deprecated old prop name for `defaultObject`; kept so existing direct consumers stay valid. */
|
|
13
16
|
defaultValue?: T;
|
|
14
17
|
mobile?: boolean;
|
|
15
18
|
min?: number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BluepicField, FieldsBridge, ImageLibrary, ImageMime } from '@bluepic/types';
|
|
1
|
+
import { BluepicField, FieldsBridge, ImageLibrary, ImageMime, Template } from '@bluepic/types';
|
|
2
2
|
type __VLS_Props = {
|
|
3
3
|
layout: 'compact' | 'normal';
|
|
4
4
|
allowUploadFromDevice: boolean;
|
|
@@ -8,7 +8,6 @@ type __VLS_Props = {
|
|
|
8
8
|
convertTo?: ImageMime;
|
|
9
9
|
quality: number;
|
|
10
10
|
imageLibraries: ImageLibrary[];
|
|
11
|
-
removeBackground: boolean;
|
|
12
11
|
uploadLabel?: string;
|
|
13
12
|
actionsLabel?: string;
|
|
14
13
|
maxSize?: number;
|
|
@@ -17,12 +16,27 @@ type __VLS_Props = {
|
|
|
17
16
|
field?: BluepicField;
|
|
18
17
|
};
|
|
19
18
|
type __VLS_PublicProps = __VLS_Props & {
|
|
20
|
-
|
|
19
|
+
/**
|
|
20
|
+
* The bound value.
|
|
21
|
+
*
|
|
22
|
+
* Typed as `ImageValue | string` because BOTH shapes occur in the wild: a
|
|
23
|
+
* template whose image element is bound straight to a src holds a plain string,
|
|
24
|
+
* while one where the element's image value carries settings of its own (crop,
|
|
25
|
+
* mirror flags, `removeBackground`) holds the whole object — `setPropertyValue`
|
|
26
|
+
* in bx-studio writes the object INTO the binding whenever the element's
|
|
27
|
+
* property expression is a simple binding key.
|
|
28
|
+
*
|
|
29
|
+
* Reading is via `imageSource`; writing MUST go through `handleImageSelection`,
|
|
30
|
+
* which preserves the object. Assigning a bare string here would silently drop
|
|
31
|
+
* every other key on the value — that is exactly how background removal was
|
|
32
|
+
* lost on the first upload.
|
|
33
|
+
*/
|
|
34
|
+
'modelValue': Template.ImageValue | string;
|
|
21
35
|
};
|
|
22
36
|
declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
23
|
-
"update:modelValue": (value: string) => any;
|
|
37
|
+
"update:modelValue": (value: string | Template.ImageValue) => any;
|
|
24
38
|
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
25
|
-
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
39
|
+
"onUpdate:modelValue"?: ((value: string | Template.ImageValue) => any) | undefined;
|
|
26
40
|
}>, {
|
|
27
41
|
maxSize: number;
|
|
28
42
|
uploadLabel: string;
|
|
@@ -7,13 +7,17 @@ type __VLS_Props = {
|
|
|
7
7
|
convertTo?: ImageMime;
|
|
8
8
|
quality: number;
|
|
9
9
|
imageLibraries: ImageLibrary[];
|
|
10
|
-
removeBackground: boolean;
|
|
11
10
|
uploadLabel?: string;
|
|
12
11
|
editLabel?: string;
|
|
13
12
|
actionsLabel?: string;
|
|
14
13
|
maxSize?: number;
|
|
15
14
|
bridge: FieldsBridge;
|
|
16
15
|
mobile?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Table-cell layout (batch editor): a small thumbnail with icon-only
|
|
18
|
+
* actions in a row, instead of the card layout with labelled buttons.
|
|
19
|
+
*/
|
|
20
|
+
compact?: boolean;
|
|
17
21
|
field?: BluepicField;
|
|
18
22
|
allowCropImage: boolean;
|
|
19
23
|
aspectRatio: number;
|
|
@@ -45,6 +49,7 @@ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {},
|
|
|
45
49
|
uploadLabel: string;
|
|
46
50
|
actionsLabel: string;
|
|
47
51
|
mobile: boolean;
|
|
52
|
+
compact: boolean;
|
|
48
53
|
resetCropOnChange: boolean;
|
|
49
54
|
allowPadding: boolean;
|
|
50
55
|
autoCrop: boolean;
|