@juo/blocks 1.7.1 → 1.8.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/{ExtensionRoot-CY2JksJh.js → ExtensionRoot-BmfKKpcU.js} +1 -1
- package/dist/{bridge-DAUIcGuq.js → bridge-BOcO9toS.js} +48 -25
- package/dist/core.js +81 -13
- package/dist/editor/bridge.d.ts.map +1 -1
- package/dist/editor/components.d.ts +21 -5
- package/dist/editor/components.d.ts.map +1 -1
- package/dist/editor/messages.d.ts +35 -3
- package/dist/editor/messages.d.ts.map +1 -1
- package/dist/editor.js +424 -81
- package/dist/{juo-workflow-Dqr1lB1k.js → juo-workflow-B3OHYsp-.js} +1 -1
- package/dist/preact.js +1 -1
- package/dist/react.js +1 -1
- package/dist/services/subscription/adapter.d.ts +21 -3
- package/dist/services/subscription/adapter.d.ts.map +1 -1
- package/dist/services/subscription/discountErrors.d.ts +27 -0
- package/dist/services/subscription/discountErrors.d.ts.map +1 -0
- package/dist/services/subscription/index.d.ts +2 -1
- package/dist/services/subscription/index.d.ts.map +1 -1
- package/dist/services/subscription/subscriptionService.d.ts.map +1 -1
- package/dist/services/subscription/subscriptionService.test.d.ts +2 -0
- package/dist/services/subscription/subscriptionService.test.d.ts.map +1 -0
- package/dist/services/subscription/types.d.ts +11 -3
- package/dist/services/subscription/types.d.ts.map +1 -1
- package/dist/vue.js +1 -1
- package/dist/web-components-editor.js +3 -3
- package/dist/web-components-runtime.js +2 -2
- package/package.json +1 -1
|
@@ -5,7 +5,7 @@ import { signal, effect, createBlockInstance } from "@juo/blocks";
|
|
|
5
5
|
import { reportBlockWarning, reportBlockError } from "./observability.js";
|
|
6
6
|
import { d, v as subscribeContext, E, y as withWrapper, x as n, e as backfillInstanceDefaults, p as isStubDefinition, q as onRegisterBlock } from "./block-C8lPBCF8.js";
|
|
7
7
|
import { T as ThemeStateContext } from "./theme-state-LZS5T-Xb.js";
|
|
8
|
-
import "./juo-workflow-
|
|
8
|
+
import "./juo-workflow-B3OHYsp-.js";
|
|
9
9
|
class Block extends HTMLElement {
|
|
10
10
|
constructor() {
|
|
11
11
|
super();
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
function isEditorMessage(message) {
|
|
2
|
-
return message.type === "PROVIDE_THEME_STATE" || message.type === "PROVIDE_TRANSLATION_OVERRIDES" || message.type === "SELECT_BLOCK" || message.type === "UPDATE_BLOCK_PROPS" || message.type === "ADD_BLOCK" || message.type === "REMOVE_BLOCK" || message.type === "MOVE_BLOCK" || message.type === "SET_BLOCK_PRESET" || message.type === "SET_LOCALE" || message.type === "SET_GLOBAL_STYLES" || message.type === "PROVIDE_GLOBAL_STYLES" || message.type === "SCROLL_SYNC" || message.type === "REQUEST_CONTENT_HEIGHT";
|
|
2
|
+
return message.type === "PROVIDE_THEME_STATE" || message.type === "PROVIDE_TRANSLATION_OVERRIDES" || message.type === "SELECT_BLOCK" || message.type === "UPDATE_BLOCK_PROPS" || message.type === "ADD_BLOCK" || message.type === "REMOVE_BLOCK" || message.type === "MOVE_BLOCK" || message.type === "SET_BLOCK_PRESET" || message.type === "SET_LOCALE" || message.type === "SET_GLOBAL_STYLES" || message.type === "PROVIDE_GLOBAL_STYLES" || message.type === "SCROLL_SYNC" || message.type === "REQUEST_CONTENT_HEIGHT" || message.type === "ADD_BLOCK_MENU_CLOSED";
|
|
3
3
|
}
|
|
4
4
|
function isIframeMessage(message) {
|
|
5
|
-
return message.type === "SELECT_BLOCK" || message.type === "IFRAME_READY" || message.type === "REGISTER_BLOCKS" || message.type === "REGISTER_ROUTES" || message.type === "REMOVE_BLOCK" || message.type === "UPDATE_BLOCK_PROPS" || message.type === "REQUEST_THEME_STATE" || message.type === "UPSERT_THEME_STATE" || message.type === "REQUEST_TRANSLATION_OVERRIDES" || message.type === "UPDATE_BLOCK_TRANSLATION" || message.type === "REGISTER_BLOCK_TRANSLATION_KEYS" || message.type === "FOCUS_INLINE_TEXT" || message.type === "REQUEST_GLOBAL_STYLES" || message.type === "PROVIDE_INITIAL_GLOBAL_STYLES" || message.type === "REPORT_CONTENT_HEIGHT" || message.type === "SCROLL_SYNC";
|
|
5
|
+
return message.type === "SELECT_BLOCK" || message.type === "IFRAME_READY" || message.type === "REGISTER_BLOCKS" || message.type === "REGISTER_ROUTES" || message.type === "REMOVE_BLOCK" || message.type === "UPDATE_BLOCK_PROPS" || message.type === "REQUEST_THEME_STATE" || message.type === "UPSERT_THEME_STATE" || message.type === "REQUEST_TRANSLATION_OVERRIDES" || message.type === "UPDATE_BLOCK_TRANSLATION" || message.type === "REGISTER_BLOCK_TRANSLATION_KEYS" || message.type === "FOCUS_INLINE_TEXT" || message.type === "REQUEST_GLOBAL_STYLES" || message.type === "PROVIDE_INITIAL_GLOBAL_STYLES" || message.type === "REPORT_CONTENT_HEIGHT" || message.type === "SCROLL_SYNC" || message.type === "OPEN_ADD_BLOCK_MENU";
|
|
6
6
|
}
|
|
7
7
|
function createProvideThemeStateMessage(payload) {
|
|
8
8
|
return {
|
|
@@ -182,6 +182,20 @@ function createReportContentHeightMessage(payload) {
|
|
|
182
182
|
timestamp: Date.now()
|
|
183
183
|
};
|
|
184
184
|
}
|
|
185
|
+
function createOpenAddBlockMenuMessage(payload) {
|
|
186
|
+
return {
|
|
187
|
+
type: "OPEN_ADD_BLOCK_MENU",
|
|
188
|
+
payload,
|
|
189
|
+
timestamp: Date.now()
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
function createAddBlockMenuClosedMessage(payload) {
|
|
193
|
+
return {
|
|
194
|
+
type: "ADD_BLOCK_MENU_CLOSED",
|
|
195
|
+
payload,
|
|
196
|
+
timestamp: Date.now()
|
|
197
|
+
};
|
|
198
|
+
}
|
|
185
199
|
let bridgeInstance = null;
|
|
186
200
|
function getEditorBridge() {
|
|
187
201
|
return bridgeInstance;
|
|
@@ -243,13 +257,20 @@ function createEditorBridge() {
|
|
|
243
257
|
}
|
|
244
258
|
return false;
|
|
245
259
|
});
|
|
260
|
+
const isAddBlockButton = path.some((node) => {
|
|
261
|
+
if (!(node instanceof HTMLElement)) return false;
|
|
262
|
+
return node.classList.contains("block-wrapper__add-btn") || node.classList.contains("block-wrapper__add-btn-inner") || node.classList.contains("block-wrapper__add-btn-surface") || node.classList.contains("block-wrapper__add-btn-plus") || node.classList.contains("block-wrapper__add-btn-text");
|
|
263
|
+
});
|
|
264
|
+
if (isAddBlockButton) {
|
|
265
|
+
return;
|
|
266
|
+
}
|
|
246
267
|
const isEditorUI = path.some((node) => {
|
|
247
268
|
if (!(node instanceof HTMLElement)) return false;
|
|
248
269
|
let current = node;
|
|
249
270
|
const root = node.getRootNode();
|
|
250
271
|
while (current && current !== root) {
|
|
251
272
|
const classList = current.classList;
|
|
252
|
-
if (classList.contains("block-wrapper__name") || classList.contains("block-wrapper__actions") || classList.contains("block-wrapper__icon") || classList.contains("block-wrapper__remove-icon") || current.hasAttribute("data-block-editor")) {
|
|
273
|
+
if (classList.contains("block-wrapper__name") || classList.contains("block-wrapper__actions") || classList.contains("block-wrapper__icon") || classList.contains("block-wrapper__remove-icon") || classList.contains("block-wrapper__add-btn") || current.hasAttribute("data-block-editor")) {
|
|
253
274
|
return true;
|
|
254
275
|
}
|
|
255
276
|
current = current.parentElement;
|
|
@@ -501,31 +522,33 @@ function createEditorBridge() {
|
|
|
501
522
|
return bridgeInstance;
|
|
502
523
|
}
|
|
503
524
|
export {
|
|
504
|
-
|
|
525
|
+
getEditorBridge as A,
|
|
526
|
+
isEditorMessage as B,
|
|
527
|
+
isIframeMessage as C,
|
|
505
528
|
createEditorBridge as a,
|
|
506
529
|
createFocusInlineTextMessage as b,
|
|
507
530
|
createRegisterBlockTranslationKeysMessage as c,
|
|
508
531
|
createUpdateBlockTranslationMessage as d,
|
|
509
532
|
createSelectBlockMessage as e,
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
533
|
+
createOpenAddBlockMenuMessage as f,
|
|
534
|
+
createRemoveBlockMessage as g,
|
|
535
|
+
createRegisterBlocksMessage as h,
|
|
536
|
+
createRegisterRoutesMessage as i,
|
|
537
|
+
createAddBlockMenuClosedMessage as j,
|
|
538
|
+
createAddBlockMessage as k,
|
|
539
|
+
createMoveBlockMessage as l,
|
|
540
|
+
createProvideGlobalStylesMessage as m,
|
|
541
|
+
createProvideInitialGlobalStylesMessage as n,
|
|
542
|
+
createProvideThemeStateMessage as o,
|
|
543
|
+
createProvideTranslationOverridesMessage as p,
|
|
544
|
+
createReportContentHeightMessage as q,
|
|
545
|
+
createRequestGlobalStylesMessage as r,
|
|
546
|
+
createRequestThemeStateMessage as s,
|
|
547
|
+
createRequestTranslationOverridesMessage as t,
|
|
548
|
+
createScrollSyncMessage as u,
|
|
549
|
+
createSetBlockPresetMessage as v,
|
|
550
|
+
createSetGlobalStylesMessage as w,
|
|
551
|
+
createSetLocaleMessage as x,
|
|
552
|
+
createUpdateBlockPropsMessage as y,
|
|
553
|
+
createUpsertThemeStateMessage as z
|
|
531
554
|
};
|
package/dist/core.js
CHANGED
|
@@ -4,7 +4,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
4
4
|
import { c as createContext, d, w, r as registerBlock, E, u } from "./block-C8lPBCF8.js";
|
|
5
5
|
import { B, C, a, S, b, e, f, g, h, i, j, k, l, m, n, o, p, q, s, t, v, x, y } from "./block-C8lPBCF8.js";
|
|
6
6
|
import { D, T, c, i as i2 } from "./theme-state-LZS5T-Xb.js";
|
|
7
|
-
import { T as T2, W, c as c2, a as a2, b as b2, g as g2, h as h2 } from "./juo-workflow-
|
|
7
|
+
import { T as T2, W, c as c2, a as a2, b as b2, g as g2, h as h2 } from "./juo-workflow-B3OHYsp-.js";
|
|
8
8
|
import { reportBlockWarning, reportBlockError } from "./observability.js";
|
|
9
9
|
function createState() {
|
|
10
10
|
const discountCode = d(null);
|
|
@@ -758,7 +758,7 @@ function createMockRouterService() {
|
|
|
758
758
|
}
|
|
759
759
|
}).routerService;
|
|
760
760
|
}
|
|
761
|
-
function createMockSubscriptionAdapter() {
|
|
761
|
+
function createMockSubscriptionAdapter(options = {}) {
|
|
762
762
|
const mockSubscriptions = [
|
|
763
763
|
{
|
|
764
764
|
id: "sub_1",
|
|
@@ -815,19 +815,19 @@ function createMockSubscriptionAdapter() {
|
|
|
815
815
|
const subscription = mockSubscriptions.find((sub) => sub.id === id) || null;
|
|
816
816
|
return { _tag: "Success", data: subscription };
|
|
817
817
|
},
|
|
818
|
-
async search(
|
|
818
|
+
async search(options2 = {}) {
|
|
819
819
|
await new Promise((resolve) => setTimeout(resolve, 300));
|
|
820
820
|
const pageSize = 1;
|
|
821
821
|
const allItems = mockSubscriptions;
|
|
822
822
|
let startIndex = 0;
|
|
823
823
|
let endIndex = pageSize;
|
|
824
|
-
if (
|
|
825
|
-
if ("after" in
|
|
826
|
-
const cursorIndex = parseInt(
|
|
824
|
+
if (options2.pagination) {
|
|
825
|
+
if ("after" in options2.pagination) {
|
|
826
|
+
const cursorIndex = parseInt(options2.pagination.after, 10);
|
|
827
827
|
startIndex = cursorIndex + 1;
|
|
828
828
|
endIndex = startIndex + pageSize;
|
|
829
|
-
} else if ("before" in
|
|
830
|
-
const cursorIndex = parseInt(
|
|
829
|
+
} else if ("before" in options2.pagination) {
|
|
830
|
+
const cursorIndex = parseInt(options2.pagination.before, 10);
|
|
831
831
|
endIndex = cursorIndex;
|
|
832
832
|
startIndex = Math.max(0, endIndex - pageSize);
|
|
833
833
|
}
|
|
@@ -858,11 +858,25 @@ function createMockSubscriptionAdapter() {
|
|
|
858
858
|
},
|
|
859
859
|
async addDiscount() {
|
|
860
860
|
await new Promise((resolve) => setTimeout(resolve, 300));
|
|
861
|
-
|
|
861
|
+
const behavior = options.addDiscountBehavior ?? { kind: "success" };
|
|
862
|
+
if (behavior.kind === "success") {
|
|
863
|
+
return { _tag: "Success", data: void 0 };
|
|
864
|
+
}
|
|
865
|
+
if (behavior.kind === "rejected") {
|
|
866
|
+
return {
|
|
867
|
+
_tag: "Failure",
|
|
868
|
+
error: { kind: "REJECTED", reason: behavior.reason }
|
|
869
|
+
};
|
|
870
|
+
}
|
|
871
|
+
return { _tag: "Failure", error: { kind: behavior.error } };
|
|
862
872
|
},
|
|
863
873
|
async removeDiscount() {
|
|
864
874
|
await new Promise((resolve) => setTimeout(resolve, 300));
|
|
865
|
-
|
|
875
|
+
const behavior = options.removeDiscountBehavior ?? { kind: "success" };
|
|
876
|
+
if (behavior.kind === "success") {
|
|
877
|
+
return { _tag: "Success", data: void 0 };
|
|
878
|
+
}
|
|
879
|
+
return { _tag: "Failure", error: { kind: behavior.error } };
|
|
866
880
|
},
|
|
867
881
|
async reschedule(params) {
|
|
868
882
|
await new Promise((resolve) => setTimeout(resolve, 300));
|
|
@@ -1032,14 +1046,55 @@ function getCurrentSubscriptionId() {
|
|
|
1032
1046
|
}
|
|
1033
1047
|
function createSubscriptionService(adapter) {
|
|
1034
1048
|
const current = d(null);
|
|
1049
|
+
const discountsChangedAtSignal = d(0);
|
|
1050
|
+
async function refreshAfterDiscountChange(subscriptionId) {
|
|
1051
|
+
const result = await adapter.getById(subscriptionId);
|
|
1052
|
+
if (result._tag === "Success" && result.data != null) {
|
|
1053
|
+
current.value = result.data;
|
|
1054
|
+
}
|
|
1055
|
+
discountsChangedAtSignal.value = discountsChangedAtSignal.value + 1;
|
|
1056
|
+
}
|
|
1057
|
+
function subscriptionIdFromCurrent() {
|
|
1058
|
+
var _a;
|
|
1059
|
+
return ((_a = current.value) == null ? void 0 : _a.id) ?? null;
|
|
1060
|
+
}
|
|
1035
1061
|
const service = {
|
|
1036
1062
|
search: adapter.search,
|
|
1037
1063
|
getById: adapter.getById,
|
|
1038
1064
|
getCurrentSubscriptionId,
|
|
1039
1065
|
addItem: (subscriptionId, item) => adapter.addItem({ subscriptionId, item }),
|
|
1040
1066
|
removeItem: (subscriptionId, itemId) => adapter.removeItem({ subscriptionId, itemId }),
|
|
1041
|
-
addDiscount: (
|
|
1042
|
-
|
|
1067
|
+
addDiscount: async (code, subscriptionId) => {
|
|
1068
|
+
const id = subscriptionId ?? subscriptionIdFromCurrent();
|
|
1069
|
+
if (id == null) {
|
|
1070
|
+
return {
|
|
1071
|
+
_tag: "Failure",
|
|
1072
|
+
error: { kind: "SUBSCRIPTION_NOT_FOUND" }
|
|
1073
|
+
};
|
|
1074
|
+
}
|
|
1075
|
+
const result = await adapter.addDiscount({ subscriptionId: id, code });
|
|
1076
|
+
if (result._tag === "Success") {
|
|
1077
|
+
await refreshAfterDiscountChange(id);
|
|
1078
|
+
}
|
|
1079
|
+
return result;
|
|
1080
|
+
},
|
|
1081
|
+
removeDiscount: async (discountId, subscriptionId) => {
|
|
1082
|
+
const id = subscriptionId ?? subscriptionIdFromCurrent();
|
|
1083
|
+
if (id == null) {
|
|
1084
|
+
return {
|
|
1085
|
+
_tag: "Failure",
|
|
1086
|
+
error: { kind: "SUBSCRIPTION_NOT_FOUND" }
|
|
1087
|
+
};
|
|
1088
|
+
}
|
|
1089
|
+
const result = await adapter.removeDiscount({
|
|
1090
|
+
subscriptionId: id,
|
|
1091
|
+
discountId
|
|
1092
|
+
});
|
|
1093
|
+
if (result._tag === "Success") {
|
|
1094
|
+
await refreshAfterDiscountChange(id);
|
|
1095
|
+
}
|
|
1096
|
+
return result;
|
|
1097
|
+
},
|
|
1043
1098
|
reschedule: (subscriptionId, newDate) => adapter.reschedule({ subscriptionId, newDate }),
|
|
1044
1099
|
resume: (subscriptionId) => adapter.resume({ subscriptionId }),
|
|
1045
1100
|
pause: (subscriptionId) => adapter.pause({ subscriptionId }),
|
|
@@ -1047,10 +1102,22 @@ function createSubscriptionService(adapter) {
|
|
|
1047
1102
|
cancel: (subscriptionId, reason) => adapter.cancel({ subscriptionId, reason }),
|
|
1048
1103
|
getAvailablePlans: (subscriptionId) => adapter.getAvailablePlans({ subscriptionId }),
|
|
1049
1104
|
getDefaultSubscriptionId: () => adapter.getDefaultSubscriptionId(),
|
|
1050
|
-
current
|
|
1105
|
+
current,
|
|
1106
|
+
discountsChangedAt: discountsChangedAtSignal
|
|
1051
1107
|
};
|
|
1052
1108
|
return service;
|
|
1053
1109
|
}
|
|
1110
|
+
const DISCOUNT_REJECTION_REASONS = [
|
|
1111
|
+
"INVALID_CODE",
|
|
1112
|
+
"INACTIVE",
|
|
1113
|
+
"NOT_APPLICABLE_TO_CUSTOMER",
|
|
1114
|
+
"ALREADY_ADDED",
|
|
1115
|
+
"ALREADY_USED",
|
|
1116
|
+
"NOT_APPLICABLE_TO_PRODUCTS",
|
|
1117
|
+
"NOT_APPLICABLE_TO_SUBSCRIPTION",
|
|
1118
|
+
"INVALID_COMBINATION",
|
|
1119
|
+
"QUANTITY_REQUIREMENT_NOT_MET"
|
|
1120
|
+
];
|
|
1054
1121
|
const MOCK_FLOWS = {
|
|
1055
1122
|
cancellation: [
|
|
1056
1123
|
{
|
|
@@ -1309,6 +1376,7 @@ export {
|
|
|
1309
1376
|
a as ContextRequestEvent,
|
|
1310
1377
|
CustomerServiceContext,
|
|
1311
1378
|
D as DEFAULT_GLOBAL_STYLES,
|
|
1379
|
+
DISCOUNT_REJECTION_REASONS,
|
|
1312
1380
|
LoginServiceContext,
|
|
1313
1381
|
ProductServiceContext,
|
|
1314
1382
|
RouterServiceContext,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/editor/bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EAGd,MAAM,YAAY,CAAC;AAWpB,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,UAAU,CAAC;AAEtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,MAAM,WAAW,UAAU,CACzB,MAAM,GAAG,OAAO,EAChB,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAElC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,QAAQ,CAAC;CACnB;AAED,MAAM,MAAM,kBAAkB,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,QAAQ,CAAC,SAAS;IAC1E,KAAK,EAAE,MAAM,CAAC,CAAC;CAChB,GACG,CAAC,GACD,KAAK,CAAC;AAEV,MAAM,MAAM,oBAAoB,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,QAAQ,CAAC,SAAS;IAC5E,OAAO,EAAE,MAAM,CAAC,CAAC;CAClB,GACG,CAAC,GACD,KAAK,CAAC;AAEV,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,WAAW,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC9C,SAAS,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,KAAK;QACxD,WAAW,EAAE,MAAM,IAAI,CAAC;KACzB,CAAC;IACF,mBAAmB,CAAC,QAAQ,GAAG,OAAO,EACpC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CACR,MAAM,EAAE,UAAU,CAChB,kBAAkB,CAAC,QAAQ,CAAC,EAC5B,oBAAoB,CAAC,QAAQ,CAAC,CAC/B,GAAG,IAAI,KACL,IAAI,GACR;QAAE,WAAW,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC;IAC/B,iBAAiB,EAAE,CACjB,OAAO,EAAE,YAAY,EACrB,EAAE,EAAE,MAAM,KACP,OAAO,CAAC;QAAE,MAAM,EAAE,KAAK,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IACzC,gBAAgB,EAAE,CAChB,OAAO,EAAE,YAAY,EACrB,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,KAAK,EAAE,KACZ,IAAI,CAAC;IACV,2BAA2B,EAAE,CAC3B,MAAM,EAAE,MAAM,KACX,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACpC,mBAAmB,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;IACjD;;;OAGG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAID;;;GAGG;AACH,wBAAgB,eAAe,IAAI,YAAY,GAAG,IAAI,CAErD;AAED,wBAAgB,kBAAkB,IAAI,YAAY,
|
|
1
|
+
{"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/editor/bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EAGd,MAAM,YAAY,CAAC;AAWpB,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,UAAU,CAAC;AAEtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,MAAM,WAAW,UAAU,CACzB,MAAM,GAAG,OAAO,EAChB,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAElC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,QAAQ,CAAC;CACnB;AAED,MAAM,MAAM,kBAAkB,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,QAAQ,CAAC,SAAS;IAC1E,KAAK,EAAE,MAAM,CAAC,CAAC;CAChB,GACG,CAAC,GACD,KAAK,CAAC;AAEV,MAAM,MAAM,oBAAoB,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,QAAQ,CAAC,SAAS;IAC5E,OAAO,EAAE,MAAM,CAAC,CAAC;CAClB,GACG,CAAC,GACD,KAAK,CAAC;AAEV,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,WAAW,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC9C,SAAS,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,KAAK;QACxD,WAAW,EAAE,MAAM,IAAI,CAAC;KACzB,CAAC;IACF,mBAAmB,CAAC,QAAQ,GAAG,OAAO,EACpC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CACR,MAAM,EAAE,UAAU,CAChB,kBAAkB,CAAC,QAAQ,CAAC,EAC5B,oBAAoB,CAAC,QAAQ,CAAC,CAC/B,GAAG,IAAI,KACL,IAAI,GACR;QAAE,WAAW,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC;IAC/B,iBAAiB,EAAE,CACjB,OAAO,EAAE,YAAY,EACrB,EAAE,EAAE,MAAM,KACP,OAAO,CAAC;QAAE,MAAM,EAAE,KAAK,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IACzC,gBAAgB,EAAE,CAChB,OAAO,EAAE,YAAY,EACrB,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,KAAK,EAAE,KACZ,IAAI,CAAC;IACV,2BAA2B,EAAE,CAC3B,MAAM,EAAE,MAAM,KACX,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACpC,mBAAmB,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;IACjD;;;OAGG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAID;;;GAGG;AACH,wBAAgB,eAAe,IAAI,YAAY,GAAG,IAAI,CAErD;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAmejD"}
|
|
@@ -6,18 +6,34 @@ export declare class BlockWrapper extends HTMLElement {
|
|
|
6
6
|
private menuElement;
|
|
7
7
|
private isMenuOpen;
|
|
8
8
|
private closeMenuOnOutsideClick;
|
|
9
|
-
private
|
|
9
|
+
private addButtons;
|
|
10
|
+
private addRail;
|
|
10
11
|
static get observedAttributes(): string[];
|
|
11
12
|
constructor();
|
|
12
13
|
private setupStyles;
|
|
13
14
|
private setupTemplate;
|
|
15
|
+
private createAddButton;
|
|
16
|
+
private handleAddBlock;
|
|
17
|
+
private clearAddButtonMenuState;
|
|
14
18
|
connectedCallback(): void;
|
|
15
19
|
/**
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
* blocks
|
|
20
|
+
* Resolve the slotted block's first painted descendant — the
|
|
21
|
+
* card-like surface we paint the hover outline on. We can't use
|
|
22
|
+
* ::slotted() (CE blocks' own :host rules win the cascade) and we
|
|
23
|
+
* can't put outline on .block-wrapper directly (it has no radius and
|
|
24
|
+
* adopting one is more code than this), so we apply outline as an
|
|
25
|
+
* inline style on the visible element. Skips:
|
|
26
|
+
* - <style> nodes (Vue's defineCustomElement injects styles into
|
|
27
|
+
* the CE shadow root next to the rendered tree).
|
|
28
|
+
* - display:contents wrappers (Vue's <ContextProvider> sits between
|
|
29
|
+
* the slotted div and the actual UiCard for createVueRenderer).
|
|
30
|
+
* Crosses one shadow-root boundary for createVueCeRenderer blocks
|
|
31
|
+
* whose slotted element is itself a CE host.
|
|
19
32
|
*/
|
|
20
|
-
private
|
|
33
|
+
private static resolveOutlineTarget;
|
|
34
|
+
private hoverOutlineTarget;
|
|
35
|
+
private handleHoverEnter;
|
|
36
|
+
private handleHoverLeave;
|
|
21
37
|
disconnectedCallback(): void;
|
|
22
38
|
private toggleMenu;
|
|
23
39
|
private openMenu;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../src/editor/components.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../src/editor/components.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAmgB9C,qBAAa,YAAa,SAAQ,WAAW;IAC3C,OAAO,CAAC,KAAK,CAA8B;IAC3C,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,uBAAuB,CAA0C;IACzE,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,OAAO,CAA4B;IAE3C,MAAM,KAAK,kBAAkB,aAE5B;;IASD,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,aAAa;IA8GrB,OAAO,CAAC,eAAe;IAsCvB,OAAO,CAAC,cAAc;IAgCtB,OAAO,CAAC,uBAAuB;IAO/B,iBAAiB;IAuCjB;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAuBnC,OAAO,CAAC,kBAAkB,CAA4B;IAEtD,OAAO,CAAC,gBAAgB,CAUtB;IAEF,OAAO,CAAC,gBAAgB,CAKtB;IAEF,oBAAoB;IAUpB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,SAAS;IAWjB,QAAQ,CAAC,KAAK,EAAE,aAAa;IAQ7B,OAAO,CAAC,iBAAiB;IAazB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,iBAAiB;CAmD1B;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,0BAA0B,EAAE,YAAY,CAAC;KAC1C;CACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Block, BlockPresets } from '../block';
|
|
2
2
|
import { GlobalStyles, ThemeSurface, TranslationOverride } from '../theme-state';
|
|
3
|
-
export type MessageType = "PROVIDE_THEME_STATE" | "SELECT_BLOCK" | "UPDATE_BLOCK_PROPS" | "ADD_BLOCK" | "REMOVE_BLOCK" | "MOVE_BLOCK" | "IFRAME_READY" | "REGISTER_BLOCKS" | "REGISTER_ROUTES" | "SET_BLOCK_PRESET" | "SET_LOCALE" | "REQUEST_THEME_STATE" | "UPSERT_THEME_STATE" | "REQUEST_TRANSLATION_OVERRIDES" | "PROVIDE_TRANSLATION_OVERRIDES" | "UPDATE_BLOCK_TRANSLATION" | "REGISTER_BLOCK_TRANSLATION_KEYS" | "FOCUS_INLINE_TEXT" | "SET_GLOBAL_STYLES" | "REQUEST_GLOBAL_STYLES" | "PROVIDE_GLOBAL_STYLES" | "PROVIDE_INITIAL_GLOBAL_STYLES" | "SCROLL_SYNC" | "REPORT_CONTENT_HEIGHT" | "REQUEST_CONTENT_HEIGHT";
|
|
3
|
+
export type MessageType = "PROVIDE_THEME_STATE" | "SELECT_BLOCK" | "UPDATE_BLOCK_PROPS" | "ADD_BLOCK" | "REMOVE_BLOCK" | "MOVE_BLOCK" | "IFRAME_READY" | "REGISTER_BLOCKS" | "REGISTER_ROUTES" | "SET_BLOCK_PRESET" | "SET_LOCALE" | "REQUEST_THEME_STATE" | "UPSERT_THEME_STATE" | "REQUEST_TRANSLATION_OVERRIDES" | "PROVIDE_TRANSLATION_OVERRIDES" | "UPDATE_BLOCK_TRANSLATION" | "REGISTER_BLOCK_TRANSLATION_KEYS" | "FOCUS_INLINE_TEXT" | "SET_GLOBAL_STYLES" | "REQUEST_GLOBAL_STYLES" | "PROVIDE_GLOBAL_STYLES" | "PROVIDE_INITIAL_GLOBAL_STYLES" | "SCROLL_SYNC" | "REPORT_CONTENT_HEIGHT" | "REQUEST_CONTENT_HEIGHT" | "OPEN_ADD_BLOCK_MENU" | "ADD_BLOCK_MENU_CLOSED";
|
|
4
4
|
export interface BaseMessage {
|
|
5
5
|
type: MessageType;
|
|
6
6
|
timestamp: number;
|
|
@@ -194,8 +194,8 @@ export interface ProvideInitialGlobalStylesMessage extends BaseMessage {
|
|
|
194
194
|
styles: GlobalStyles;
|
|
195
195
|
};
|
|
196
196
|
}
|
|
197
|
-
export type EditorMessage = ProvideThemeStateMessage | ProvideTranslationOverridesMessage | SelectBlockMessage | UpdateBlockPropsMessage | AddBlockMessage | RemoveBlockMessage | MoveBlockMessage | SetBlockPresetMessage | SetLocaleMessage | SetGlobalStylesMessage | ProvideGlobalStylesMessage | ScrollSyncMessage | RequestContentHeightMessage;
|
|
198
|
-
export type IframeMessage = SelectBlockMessage | IframeReadyMessage | RegisterBlocksMessage | RegisterRoutesMessage | RemoveBlockMessage | UpdateBlockPropsMessage | RequestThemeStateMessage | UpsertThemeStateMessage | RequestTranslationOverridesMessage | UpdateBlockTranslationMessage | RegisterBlockTranslationKeysMessage | FocusInlineTextMessage | RequestGlobalStylesMessage | ProvideInitialGlobalStylesMessage | ReportContentHeightMessage | ScrollSyncMessage;
|
|
197
|
+
export type EditorMessage = ProvideThemeStateMessage | ProvideTranslationOverridesMessage | SelectBlockMessage | UpdateBlockPropsMessage | AddBlockMessage | RemoveBlockMessage | MoveBlockMessage | SetBlockPresetMessage | SetLocaleMessage | SetGlobalStylesMessage | ProvideGlobalStylesMessage | ScrollSyncMessage | RequestContentHeightMessage | AddBlockMenuClosedMessage;
|
|
198
|
+
export type IframeMessage = SelectBlockMessage | IframeReadyMessage | RegisterBlocksMessage | RegisterRoutesMessage | RemoveBlockMessage | UpdateBlockPropsMessage | RequestThemeStateMessage | UpsertThemeStateMessage | RequestTranslationOverridesMessage | UpdateBlockTranslationMessage | RegisterBlockTranslationKeysMessage | FocusInlineTextMessage | RequestGlobalStylesMessage | ProvideInitialGlobalStylesMessage | ReportContentHeightMessage | ScrollSyncMessage | OpenAddBlockMenuMessage;
|
|
199
199
|
export type AnyMessage = EditorMessage | IframeMessage;
|
|
200
200
|
export declare function isEditorMessage(message: AnyMessage): message is EditorMessage;
|
|
201
201
|
export declare function isIframeMessage(message: AnyMessage): message is IframeMessage;
|
|
@@ -234,8 +234,40 @@ export interface RequestContentHeightMessage extends BaseMessage {
|
|
|
234
234
|
type: "REQUEST_CONTENT_HEIGHT";
|
|
235
235
|
payload: Record<string, never>;
|
|
236
236
|
}
|
|
237
|
+
export interface OpenAddBlockMenuMessage extends BaseMessage {
|
|
238
|
+
type: "OPEN_ADD_BLOCK_MENU";
|
|
239
|
+
payload: {
|
|
240
|
+
targetBlockId: string;
|
|
241
|
+
position: "before" | "after";
|
|
242
|
+
/**
|
|
243
|
+
* Anchor point in iframe-local viewport coordinates (the iframe's own
|
|
244
|
+
* `getBoundingClientRect()` reference frame). The parent translates this
|
|
245
|
+
* into parent-window coordinates by adding the iframe element's own
|
|
246
|
+
* bounding rect offset.
|
|
247
|
+
*/
|
|
248
|
+
anchor: {
|
|
249
|
+
x: number;
|
|
250
|
+
y: number;
|
|
251
|
+
};
|
|
252
|
+
};
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Sent from the editor (parent) back to the iframe when the floating
|
|
256
|
+
* AddMenu opened by OPEN_ADD_BLOCK_MENU is dismissed. The originating
|
|
257
|
+
* BlockWrapper uses this to reset its add-button visual state (it kept
|
|
258
|
+
* the "Add block" pill visible while the menu was open).
|
|
259
|
+
*/
|
|
260
|
+
export interface AddBlockMenuClosedMessage extends BaseMessage {
|
|
261
|
+
type: "ADD_BLOCK_MENU_CLOSED";
|
|
262
|
+
payload: {
|
|
263
|
+
targetBlockId: string;
|
|
264
|
+
position: "before" | "after";
|
|
265
|
+
};
|
|
266
|
+
}
|
|
237
267
|
export declare function createProvideGlobalStylesMessage(payload: ProvideGlobalStylesMessage["payload"]): ProvideGlobalStylesMessage;
|
|
238
268
|
export declare function createProvideInitialGlobalStylesMessage(payload: ProvideInitialGlobalStylesMessage["payload"]): ProvideInitialGlobalStylesMessage;
|
|
239
269
|
export declare function createScrollSyncMessage(payload: ScrollSyncMessage["payload"]): ScrollSyncMessage;
|
|
240
270
|
export declare function createReportContentHeightMessage(payload: ReportContentHeightMessage["payload"]): ReportContentHeightMessage;
|
|
271
|
+
export declare function createOpenAddBlockMenuMessage(payload: OpenAddBlockMenuMessage["payload"]): OpenAddBlockMenuMessage;
|
|
272
|
+
export declare function createAddBlockMenuClosedMessage(payload: AddBlockMenuClosedMessage["payload"]): AddBlockMenuClosedMessage;
|
|
241
273
|
//# sourceMappingURL=messages.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/editor/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AAExB,MAAM,MAAM,WAAW,GACnB,qBAAqB,GACrB,cAAc,GACd,oBAAoB,GACpB,WAAW,GACX,cAAc,GACd,YAAY,GACZ,cAAc,GACd,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,YAAY,GACZ,qBAAqB,GACrB,oBAAoB,GACpB,+BAA+B,GAC/B,+BAA+B,GAC/B,0BAA0B,GAC1B,iCAAiC,GACjC,mBAAmB,GACnB,mBAAmB,GACnB,uBAAuB,GACvB,uBAAuB,GACvB,+BAA+B,GAC/B,aAAa,GACb,uBAAuB,GACvB,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/editor/messages.ts"],"names":[],"mappings":"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"}
|