@builder.io/sdk-solid 3.0.5 → 3.0.6

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.
@@ -1616,7 +1616,7 @@ function Block(props) {
1616
1616
  });
1617
1617
  }
1618
1618
  var block_default = Block;
1619
- var _tmpl$2 = /* @__PURE__ */ template(`<style>.dynamic-3c4beb0c {
1619
+ var _tmpl$2 = /* @__PURE__ */ template(`<style>.dynamic-3d7ff108 {
1620
1620
  display: flex;
1621
1621
  flex-direction: column;
1622
1622
  align-items: stretch;
@@ -1629,8 +1629,9 @@ function BlocksWrapper(props) {
1629
1629
  if (!props.path) {
1630
1630
  return void 0;
1631
1631
  }
1632
+ const thisPrefix = "this.";
1632
1633
  const pathPrefix = "component.options.";
1633
- return props.path.startsWith(pathPrefix) ? props.path : `${pathPrefix}${props.path || ""}`;
1634
+ return props.path.startsWith(thisPrefix) ? props.path.replace(thisPrefix, "") : props.path.startsWith(pathPrefix) ? props.path : `${pathPrefix}${props.path || ""}`;
1634
1635
  });
1635
1636
  function onClick() {
1636
1637
  if (isEditing() && !props.blocks?.length) {
@@ -1659,7 +1660,7 @@ function BlocksWrapper(props) {
1659
1660
  });
1660
1661
  return [createComponent(Dynamic, mergeProps({
1661
1662
  get ["class"]() {
1662
- return className() + " dynamic-3c4beb0c";
1663
+ return className() + " dynamic-3d7ff108";
1663
1664
  },
1664
1665
  ref(r$) {
1665
1666
  const _ref$ = blocksWrapperRef;
@@ -2353,8 +2354,58 @@ var handleABTesting = async ({
2353
2354
  };
2354
2355
  };
2355
2356
 
2357
+ // src/helpers/user-attributes.ts
2358
+ var USER_ATTRIBUTES_COOKIE_NAME = "builder.userAttributes";
2359
+ function createUserAttributesService() {
2360
+ let canTrack = true;
2361
+ const subscribers = /* @__PURE__ */ new Set();
2362
+ return {
2363
+ setUserAttributes(newAttrs) {
2364
+ if (!isBrowser()) {
2365
+ return;
2366
+ }
2367
+ const userAttributes = {
2368
+ ...this.getUserAttributes(),
2369
+ ...newAttrs
2370
+ };
2371
+ setCookie({
2372
+ name: USER_ATTRIBUTES_COOKIE_NAME,
2373
+ value: JSON.stringify(userAttributes),
2374
+ canTrack
2375
+ });
2376
+ subscribers.forEach((callback) => callback(userAttributes));
2377
+ },
2378
+ getUserAttributes() {
2379
+ if (!isBrowser()) {
2380
+ return {};
2381
+ }
2382
+ return JSON.parse(getCookieSync({
2383
+ name: USER_ATTRIBUTES_COOKIE_NAME,
2384
+ canTrack
2385
+ }) || "{}");
2386
+ },
2387
+ subscribeOnUserAttributesChange(callback) {
2388
+ subscribers.add(callback);
2389
+ return () => {
2390
+ subscribers.delete(callback);
2391
+ };
2392
+ },
2393
+ setCanTrack(value) {
2394
+ canTrack = value;
2395
+ }
2396
+ };
2397
+ }
2398
+ var userAttributesService = createUserAttributesService();
2399
+ var setClientUserAttributes = (attributes) => {
2400
+ userAttributesService.setUserAttributes(attributes);
2401
+ };
2402
+
2356
2403
  // src/helpers/canTrack.ts
2357
- var getDefaultCanTrack = (canTrack) => checkIsDefined(canTrack) ? canTrack : true;
2404
+ var getDefaultCanTrack = (canTrack) => {
2405
+ const result = checkIsDefined(canTrack) ? canTrack : true;
2406
+ userAttributesService.setCanTrack(result);
2407
+ return result;
2408
+ };
2358
2409
 
2359
2410
  // src/blocks/accordion/component-info.ts
2360
2411
  var defaultTitle = {
@@ -3085,8 +3136,408 @@ var componentInfo5 = {
3085
3136
  }
3086
3137
  };
3087
3138
 
3088
- // src/blocks/section/component-info.ts
3139
+ // src/blocks/personalization-container/component-info.ts
3089
3140
  var componentInfo6 = {
3141
+ name: "PersonalizationContainer",
3142
+ shouldReceiveBuilderProps: {
3143
+ builderBlock: true,
3144
+ builderContext: true
3145
+ },
3146
+ noWrap: true,
3147
+ image: "https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F37229ed30d8c41dfb10b8cca1992053a",
3148
+ canHaveChildren: true,
3149
+ inputs: [{
3150
+ name: "variants",
3151
+ defaultValue: [],
3152
+ behavior: "personalizationVariantList",
3153
+ type: "list",
3154
+ subFields: [{
3155
+ name: "name",
3156
+ type: "text"
3157
+ }, {
3158
+ name: "query",
3159
+ friendlyName: "Targeting rules",
3160
+ type: "BuilderQuery",
3161
+ defaultValue: []
3162
+ }, {
3163
+ name: "startDate",
3164
+ type: "date"
3165
+ }, {
3166
+ name: "endDate",
3167
+ type: "date"
3168
+ }, {
3169
+ name: "blocks",
3170
+ type: "uiBlocks",
3171
+ hideFromUI: true,
3172
+ defaultValue: []
3173
+ }]
3174
+ }]
3175
+ };
3176
+ var _tmpl$8 = /* @__PURE__ */ template(`<script>`);
3177
+ function InlinedScript(props) {
3178
+ return (() => {
3179
+ const _el$ = _tmpl$8();
3180
+ effect((_p$) => {
3181
+ const _v$ = props.scriptStr, _v$2 = props.id, _v$3 = props.nonce || "";
3182
+ _v$ !== _p$._v$ && (_el$.innerHTML = _p$._v$ = _v$);
3183
+ _v$2 !== _p$._v$2 && setAttribute(_el$, "data-id", _p$._v$2 = _v$2);
3184
+ _v$3 !== _p$._v$3 && setAttribute(_el$, "nonce", _p$._v$3 = _v$3);
3185
+ return _p$;
3186
+ }, {
3187
+ _v$: void 0,
3188
+ _v$2: void 0,
3189
+ _v$3: void 0
3190
+ });
3191
+ return _el$;
3192
+ })();
3193
+ }
3194
+ var inlined_script_default = InlinedScript;
3195
+
3196
+ // src/functions/is-previewing.ts
3197
+ function isPreviewing(_search) {
3198
+ const search = _search || (isBrowser() ? window.location.search : void 0);
3199
+ if (!search) {
3200
+ return false;
3201
+ }
3202
+ const normalizedSearch = getSearchString(search);
3203
+ return Boolean(normalizedSearch.indexOf("builder.preview=") !== -1);
3204
+ }
3205
+
3206
+ // src/blocks/personalization-container/helpers/inlined-fns.ts
3207
+ function filterWithCustomTargeting(userAttributes, query, startDate, endDate) {
3208
+ function isString(val) {
3209
+ return typeof val === "string";
3210
+ }
3211
+ function isNumber(val) {
3212
+ return typeof val === "number";
3213
+ }
3214
+ function objectMatchesQuery(userattr, query2) {
3215
+ const result = (() => {
3216
+ const property = query2.property;
3217
+ const operator = query2.operator;
3218
+ let testValue = query2.value;
3219
+ if (query2 && query2.property === "urlPath" && query2.value && typeof query2.value === "string" && query2.value !== "/" && query2.value.endsWith("/")) {
3220
+ testValue = query2.value.slice(0, -1);
3221
+ }
3222
+ if (!(property && operator)) {
3223
+ return true;
3224
+ }
3225
+ if (Array.isArray(testValue)) {
3226
+ if (operator === "isNot") {
3227
+ return testValue.every((val) => objectMatchesQuery(userattr, {
3228
+ property,
3229
+ operator,
3230
+ value: val
3231
+ }));
3232
+ }
3233
+ return !!testValue.find((val) => objectMatchesQuery(userattr, {
3234
+ property,
3235
+ operator,
3236
+ value: val
3237
+ }));
3238
+ }
3239
+ const value = userattr[property];
3240
+ if (Array.isArray(value)) {
3241
+ return value.includes(testValue);
3242
+ }
3243
+ switch (operator) {
3244
+ case "is":
3245
+ return value === testValue;
3246
+ case "isNot":
3247
+ return value !== testValue;
3248
+ case "contains":
3249
+ return (isString(value) || Array.isArray(value)) && value.includes(String(testValue));
3250
+ case "startsWith":
3251
+ return isString(value) && value.startsWith(String(testValue));
3252
+ case "endsWith":
3253
+ return isString(value) && value.endsWith(String(testValue));
3254
+ case "greaterThan":
3255
+ return isNumber(value) && isNumber(testValue) && value > testValue;
3256
+ case "lessThan":
3257
+ return isNumber(value) && isNumber(testValue) && value < testValue;
3258
+ case "greaterThanOrEqualTo":
3259
+ return isNumber(value) && isNumber(testValue) && value >= testValue;
3260
+ case "lessThanOrEqualTo":
3261
+ return isNumber(value) && isNumber(testValue) && value <= testValue;
3262
+ default:
3263
+ return false;
3264
+ }
3265
+ })();
3266
+ return result;
3267
+ }
3268
+ const item = {
3269
+ query,
3270
+ startDate,
3271
+ endDate
3272
+ };
3273
+ const now = userAttributes.date && new Date(userAttributes.date) || /* @__PURE__ */ new Date();
3274
+ if (item.startDate && new Date(item.startDate) > now) {
3275
+ return false;
3276
+ } else if (item.endDate && new Date(item.endDate) < now) {
3277
+ return false;
3278
+ }
3279
+ if (!item.query || !item.query.length) {
3280
+ return true;
3281
+ }
3282
+ return item.query.every((filter) => {
3283
+ return objectMatchesQuery(userAttributes, filter);
3284
+ });
3285
+ }
3286
+ var PERSONALIZATION_SCRIPT = `function getPersonalizedVariant(variants, blockId, locale) {
3287
+ if (!navigator.cookieEnabled) {
3288
+ return;
3289
+ }
3290
+ function getCookie(name) {
3291
+ const nameEQ = name + '=';
3292
+ const ca = document.cookie.split(';');
3293
+ for (let i = 0; i < ca.length; i++) {
3294
+ let c = ca[i];
3295
+ while (c.charAt(0) == ' ') c = c.substring(1, c.length);
3296
+ if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
3297
+ }
3298
+ return null;
3299
+ }
3300
+ function removeVariants() {
3301
+ variants?.forEach(function (_, index) {
3302
+ document.querySelector('template[data-variant-id="' + blockId + '-' + index + '"]')?.remove();
3303
+ });
3304
+ document.querySelector('script[data-id="variants-script-' + blockId + '"]')?.remove();
3305
+ document.querySelector('style[data-id="variants-styles-' + blockId + '"]')?.remove();
3306
+ }
3307
+ const attributes = JSON.parse(getCookie('builder.userAttributes') || '{}');
3308
+ if (locale) {
3309
+ attributes.locale = locale;
3310
+ }
3311
+ const winningVariantIndex = variants?.findIndex(function (variant) {
3312
+ return filterWithCustomTargeting(attributes, variant.query, variant.startDate, variant.endDate);
3313
+ });
3314
+ const isDebug = location.href.includes('builder.debug=true');
3315
+ if (isDebug) {
3316
+ console.debug('PersonalizationContainer', {
3317
+ attributes,
3318
+ variants,
3319
+ winningVariantIndex
3320
+ });
3321
+ }
3322
+ if (winningVariantIndex !== -1) {
3323
+ const winningVariant = document.querySelector('template[data-variant-id="' + blockId + '-' + winningVariantIndex + '"]');
3324
+ if (winningVariant) {
3325
+ const parentNode = winningVariant.parentNode;
3326
+ if (parentNode) {
3327
+ const newParent = parentNode.cloneNode(false);
3328
+ newParent.appendChild(winningVariant.content.firstChild);
3329
+ newParent.appendChild(winningVariant.content.lastChild);
3330
+ parentNode.parentNode?.replaceChild(newParent, parentNode);
3331
+ }
3332
+ if (isDebug) {
3333
+ console.debug('PersonalizationContainer', 'Winning variant Replaced:', winningVariant);
3334
+ }
3335
+ }
3336
+ } else if (variants && variants.length > 0) {
3337
+ removeVariants();
3338
+ }
3339
+ }`;
3340
+ var FILTER_WITH_CUSTOM_TARGETING_SCRIPT = "function filterWithCustomTargeting(userAttributes, query, startDate, endDate) {\n function isString(val) {\n return typeof val === 'string';\n }\n function isNumber(val) {\n return typeof val === 'number';\n }\n function objectMatchesQuery(userattr, query) {\n const result = (() => {\n const property = query.property;\n const operator = query.operator;\n let testValue = query.value;\n if (query && query.property === 'urlPath' && query.value && typeof query.value === 'string' && query.value !== '/' && query.value.endsWith('/')) {\n testValue = query.value.slice(0, -1);\n }\n if (!(property && operator)) {\n return true;\n }\n if (Array.isArray(testValue)) {\n if (operator === 'isNot') {\n return testValue.every(val => objectMatchesQuery(userattr, {\n property,\n operator,\n value: val\n }));\n }\n return !!testValue.find(val => objectMatchesQuery(userattr, {\n property,\n operator,\n value: val\n }));\n }\n const value = userattr[property];\n if (Array.isArray(value)) {\n return value.includes(testValue);\n }\n switch (operator) {\n case 'is':\n return value === testValue;\n case 'isNot':\n return value !== testValue;\n case 'contains':\n return (isString(value) || Array.isArray(value)) && value.includes(String(testValue));\n case 'startsWith':\n return isString(value) && value.startsWith(String(testValue));\n case 'endsWith':\n return isString(value) && value.endsWith(String(testValue));\n case 'greaterThan':\n return isNumber(value) && isNumber(testValue) && value > testValue;\n case 'lessThan':\n return isNumber(value) && isNumber(testValue) && value < testValue;\n case 'greaterThanOrEqualTo':\n return isNumber(value) && isNumber(testValue) && value >= testValue;\n case 'lessThanOrEqualTo':\n return isNumber(value) && isNumber(testValue) && value <= testValue;\n default:\n return false;\n }\n })();\n return result;\n }\n const item = {\n query,\n startDate,\n endDate\n };\n const now = userAttributes.date && new Date(userAttributes.date) || new Date();\n if (item.startDate && new Date(item.startDate) > now) {\n return false;\n } else if (item.endDate && new Date(item.endDate) < now) {\n return false;\n }\n if (!item.query || !item.query.length) {\n return true;\n }\n return item.query.every(filter => {\n return objectMatchesQuery(userAttributes, filter);\n });\n}";
3341
+
3342
+ // src/blocks/personalization-container/helpers.ts
3343
+ function checkShouldRenderVariants(variants, canTrack) {
3344
+ const hasVariants = variants && variants.length > 0;
3345
+ if (TARGET === "reactNative")
3346
+ return false;
3347
+ if (!hasVariants)
3348
+ return false;
3349
+ if (!canTrack)
3350
+ return false;
3351
+ if (TARGET === "vue" || TARGET === "svelte")
3352
+ return true;
3353
+ if (isBrowser())
3354
+ return false;
3355
+ return true;
3356
+ }
3357
+ function getBlocksToRender({
3358
+ variants,
3359
+ previewingIndex,
3360
+ isHydrated,
3361
+ filteredVariants,
3362
+ fallbackBlocks
3363
+ }) {
3364
+ const fallback = {
3365
+ blocks: fallbackBlocks ?? [],
3366
+ path: "this.children"
3367
+ };
3368
+ if (isHydrated && isEditing()) {
3369
+ if (typeof previewingIndex === "number" && previewingIndex < (variants?.length ?? 0)) {
3370
+ const variant = variants[previewingIndex];
3371
+ return {
3372
+ blocks: variant.blocks,
3373
+ path: `component.options.variants.${previewingIndex}.blocks`
3374
+ };
3375
+ }
3376
+ return fallback;
3377
+ }
3378
+ if (isBrowser()) {
3379
+ const winningVariant = filteredVariants?.[0];
3380
+ if (winningVariant) {
3381
+ return {
3382
+ blocks: winningVariant.blocks,
3383
+ path: `component.options.variants.${variants?.indexOf(winningVariant)}.blocks`
3384
+ };
3385
+ }
3386
+ }
3387
+ return fallback;
3388
+ }
3389
+ var getPersonalizationScript = (variants, blockId, locale) => {
3390
+ return `
3391
+ (function() {
3392
+ ${FILTER_WITH_CUSTOM_TARGETING_SCRIPT}
3393
+ ${PERSONALIZATION_SCRIPT}
3394
+ getPersonalizedVariant(${JSON.stringify(variants)}, "${blockId}"${locale ? `, "${locale}"` : ""})
3395
+ })();
3396
+ `;
3397
+ };
3398
+
3399
+ // src/blocks/personalization-container/personalization-container.tsx
3400
+ var _tmpl$9 = /* @__PURE__ */ template(`<div>`);
3401
+ var _tmpl$25 = /* @__PURE__ */ template(`<template>`);
3402
+ function PersonalizationContainer(props) {
3403
+ const [userAttributes, setUserAttributes] = createSignal(userAttributesService.getUserAttributes());
3404
+ const [scriptStr, setScriptStr] = createSignal(getPersonalizationScript(props.variants, props.builderBlock?.id || "none", props.builderContext?.rootState?.locale));
3405
+ const [unsubscribers, setUnsubscribers] = createSignal([]);
3406
+ const [shouldRenderVariants, setShouldRenderVariants] = createSignal(checkShouldRenderVariants(props.variants, getDefaultCanTrack(props.builderContext?.canTrack)));
3407
+ const [isHydrated, setIsHydrated] = createSignal(false);
3408
+ const filteredVariants = createMemo(() => {
3409
+ return (props.variants || []).filter((variant) => {
3410
+ return filterWithCustomTargeting({
3411
+ ...props.builderContext?.rootState?.locale ? {
3412
+ locale: props.builderContext?.rootState?.locale
3413
+ } : {},
3414
+ ...userAttributes()
3415
+ }, variant.query, variant.startDate, variant.endDate);
3416
+ });
3417
+ });
3418
+ const blocksToRender = createMemo(() => {
3419
+ return getBlocksToRender({
3420
+ variants: props.variants,
3421
+ fallbackBlocks: props.builderBlock?.children,
3422
+ isHydrated: isHydrated(),
3423
+ filteredVariants: filteredVariants(),
3424
+ previewingIndex: props.previewingIndex
3425
+ });
3426
+ });
3427
+ const hideVariantsStyleString = createMemo(() => {
3428
+ return (props.variants || []).map((_, index) => `[data-variant-id="${props.builderBlock?.id}-${index}"] { display: none; } `).join("");
3429
+ });
3430
+ let rootRef;
3431
+ onMount(() => {
3432
+ setIsHydrated(true);
3433
+ const unsub = userAttributesService.subscribeOnUserAttributesChange((attrs) => {
3434
+ setUserAttributes(attrs);
3435
+ });
3436
+ if (!(isEditing() || isPreviewing())) {
3437
+ const variant = filteredVariants()[0];
3438
+ if (rootRef) {
3439
+ rootRef.dispatchEvent(new CustomEvent("builder.variantLoaded", {
3440
+ detail: {
3441
+ variant: variant || "default",
3442
+ content: props.builderContext?.content
3443
+ },
3444
+ bubbles: true
3445
+ }));
3446
+ const observer = new IntersectionObserver((entries) => {
3447
+ entries.forEach((entry) => {
3448
+ if (entry.isIntersecting && rootRef) {
3449
+ rootRef.dispatchEvent(new CustomEvent("builder.variantDisplayed", {
3450
+ detail: {
3451
+ variant: variant || "default",
3452
+ content: props.builderContext?.content
3453
+ },
3454
+ bubbles: true
3455
+ }));
3456
+ }
3457
+ });
3458
+ });
3459
+ observer.observe(rootRef);
3460
+ }
3461
+ }
3462
+ unsubscribers().push(unsub);
3463
+ });
3464
+ return (() => {
3465
+ const _el$ = _tmpl$9();
3466
+ const _ref$ = rootRef;
3467
+ typeof _ref$ === "function" ? use(_ref$, _el$) : rootRef = _el$;
3468
+ spread(_el$, mergeProps({
3469
+ get ["class"]() {
3470
+ return `builder-personalization-container ${props.attributes?.className || ""}`;
3471
+ }
3472
+ }, () => props.attributes), false, true);
3473
+ insert(_el$, createComponent(Show, {
3474
+ get when() {
3475
+ return shouldRenderVariants();
3476
+ },
3477
+ get children() {
3478
+ return [createComponent(For, {
3479
+ get each() {
3480
+ return props.variants;
3481
+ },
3482
+ children: (variant, _index) => {
3483
+ const index = _index();
3484
+ return (() => {
3485
+ const _el$2 = _tmpl$25();
3486
+ setAttribute(_el$2, "key", index);
3487
+ insert(_el$2, createComponent(blocks_default, {
3488
+ get blocks() {
3489
+ return variant.blocks;
3490
+ },
3491
+ get parent() {
3492
+ return props.builderBlock?.id;
3493
+ },
3494
+ path: `component.options.variants.${index}.blocks`
3495
+ }));
3496
+ effect(() => setAttribute(_el$2, "data-variant-id", `${props.builderBlock?.id}-${index}`));
3497
+ return _el$2;
3498
+ })();
3499
+ }
3500
+ }), createComponent(inlined_styles_default, {
3501
+ get nonce() {
3502
+ return props.builderContext?.nonce || "";
3503
+ },
3504
+ get styles() {
3505
+ return hideVariantsStyleString();
3506
+ },
3507
+ get id() {
3508
+ return `variants-styles-${props.builderBlock?.id}`;
3509
+ }
3510
+ }), createComponent(inlined_script_default, {
3511
+ get nonce() {
3512
+ return props.builderContext?.nonce || "";
3513
+ },
3514
+ get scriptStr() {
3515
+ return scriptStr();
3516
+ },
3517
+ get id() {
3518
+ return `variants-script-${props.builderBlock?.id}`;
3519
+ }
3520
+ })];
3521
+ }
3522
+ }), null);
3523
+ insert(_el$, createComponent(blocks_default, {
3524
+ get blocks() {
3525
+ return blocksToRender().blocks;
3526
+ },
3527
+ get parent() {
3528
+ return props.builderBlock?.id;
3529
+ },
3530
+ get path() {
3531
+ return blocksToRender().path;
3532
+ }
3533
+ }), null);
3534
+ return _el$;
3535
+ })();
3536
+ }
3537
+ var personalization_container_default = PersonalizationContainer;
3538
+
3539
+ // src/blocks/section/component-info.ts
3540
+ var componentInfo7 = {
3090
3541
  name: "Core:Section",
3091
3542
  static: true,
3092
3543
  image: "https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F682efef23ace49afac61748dd305c70a",
@@ -3128,7 +3579,7 @@ var componentInfo6 = {
3128
3579
  };
3129
3580
 
3130
3581
  // src/blocks/slot/component-info.ts
3131
- var componentInfo7 = {
3582
+ var componentInfo8 = {
3132
3583
  name: "Slot",
3133
3584
  isRSC: true,
3134
3585
  description: "Allow child blocks to be inserted into this content when used as a Symbol",
@@ -3146,10 +3597,10 @@ var componentInfo7 = {
3146
3597
  builderComponents: true
3147
3598
  }
3148
3599
  };
3149
- var _tmpl$8 = /* @__PURE__ */ template(`<div>`);
3600
+ var _tmpl$10 = /* @__PURE__ */ template(`<div>`);
3150
3601
  function Slot(props) {
3151
3602
  return (() => {
3152
- const _el$ = _tmpl$8();
3603
+ const _el$ = _tmpl$10();
3153
3604
  _el$.style.setProperty("pointer-events", "auto");
3154
3605
  spread(_el$, mergeProps(() => !props.builderContext.context?.symbolId && {
3155
3606
  "builder-slot": props.name
@@ -3177,7 +3628,7 @@ function Slot(props) {
3177
3628
  var slot_default = Slot;
3178
3629
 
3179
3630
  // src/blocks/symbol/component-info.ts
3180
- var componentInfo8 = {
3631
+ var componentInfo9 = {
3181
3632
  name: "Symbol",
3182
3633
  noWrap: true,
3183
3634
  static: true,
@@ -3259,7 +3710,7 @@ var defaultElement = {
3259
3710
  }
3260
3711
  }
3261
3712
  };
3262
- var componentInfo9 = {
3713
+ var componentInfo10 = {
3263
3714
  name: "Builder: Tabs",
3264
3715
  inputs: [{
3265
3716
  name: "tabs",
@@ -3363,8 +3814,8 @@ var componentInfo9 = {
3363
3814
  builderLinkComponent: true
3364
3815
  }
3365
3816
  };
3366
- var _tmpl$9 = /* @__PURE__ */ template(`<div>`);
3367
- var _tmpl$25 = /* @__PURE__ */ template(`<div><div class=builder-tabs-wrap>`);
3817
+ var _tmpl$11 = /* @__PURE__ */ template(`<div>`);
3818
+ var _tmpl$26 = /* @__PURE__ */ template(`<div><div class=builder-tabs-wrap>`);
3368
3819
  var _tmpl$33 = /* @__PURE__ */ template(`<span>`);
3369
3820
  function Tabs(props) {
3370
3821
  const [activeTab, setActiveTab] = createSignal(props.defaultActiveTab ? props.defaultActiveTab - 1 : 0);
@@ -3379,7 +3830,7 @@ function Tabs(props) {
3379
3830
  }
3380
3831
  }
3381
3832
  return (() => {
3382
- const _el$ = _tmpl$25(), _el$2 = _el$.firstChild;
3833
+ const _el$ = _tmpl$26(), _el$2 = _el$.firstChild;
3383
3834
  _el$2.style.setProperty("display", "flex");
3384
3835
  _el$2.style.setProperty("flex-direction", "row");
3385
3836
  _el$2.style.setProperty("overflow", "auto");
@@ -3431,7 +3882,7 @@ function Tabs(props) {
3431
3882
  return activeTabContent(activeTab());
3432
3883
  },
3433
3884
  get children() {
3434
- const _el$3 = _tmpl$9();
3885
+ const _el$3 = _tmpl$11();
3435
3886
  insert(_el$3, createComponent(blocks_default, {
3436
3887
  get parent() {
3437
3888
  return props.builderBlock.id;
@@ -3463,7 +3914,7 @@ var tabs_default = Tabs;
3463
3914
  delegateEvents(["click"]);
3464
3915
 
3465
3916
  // src/blocks/text/component-info.ts
3466
- var componentInfo10 = {
3917
+ var componentInfo11 = {
3467
3918
  shouldReceiveBuilderProps: {
3468
3919
  builderBlock: TARGET === "reactNative" ? true : false,
3469
3920
  builderContext: true
@@ -3486,10 +3937,10 @@ var componentInfo10 = {
3486
3937
  textAlign: "center"
3487
3938
  }
3488
3939
  };
3489
- var _tmpl$10 = /* @__PURE__ */ template(`<div class=builder-text>`);
3940
+ var _tmpl$12 = /* @__PURE__ */ template(`<div class=builder-text>`);
3490
3941
  function Text(props) {
3491
3942
  return (() => {
3492
- const _el$ = _tmpl$10();
3943
+ const _el$ = _tmpl$12();
3493
3944
  _el$.style.setProperty("outline", "none");
3494
3945
  effect(() => _el$.innerHTML = props.text?.toString() || "");
3495
3946
  return _el$;
@@ -3498,7 +3949,7 @@ function Text(props) {
3498
3949
  var text_default = Text;
3499
3950
 
3500
3951
  // src/blocks/custom-code/component-info.ts
3501
- var componentInfo11 = {
3952
+ var componentInfo12 = {
3502
3953
  name: "Custom Code",
3503
3954
  static: true,
3504
3955
  requiredPermissions: ["editCode"],
@@ -3521,7 +3972,7 @@ var componentInfo11 = {
3521
3972
  advanced: true
3522
3973
  }]
3523
3974
  };
3524
- var _tmpl$11 = /* @__PURE__ */ template(`<div>`);
3975
+ var _tmpl$13 = /* @__PURE__ */ template(`<div>`);
3525
3976
  function CustomCode(props) {
3526
3977
  const [scriptsInserted, setScriptsInserted] = createSignal([]);
3527
3978
  const [scriptsRun, setScriptsRun] = createSignal([]);
@@ -3556,7 +4007,7 @@ function CustomCode(props) {
3556
4007
  }
3557
4008
  });
3558
4009
  return (() => {
3559
- const _el$ = _tmpl$11();
4010
+ const _el$ = _tmpl$13();
3560
4011
  const _ref$ = elementRef;
3561
4012
  typeof _ref$ === "function" ? use(_ref$, _el$) : elementRef = _el$;
3562
4013
  effect((_p$) => {
@@ -3574,7 +4025,7 @@ function CustomCode(props) {
3574
4025
  var custom_code_default = CustomCode;
3575
4026
 
3576
4027
  // src/blocks/embed/component-info.ts
3577
- var componentInfo12 = {
4028
+ var componentInfo13 = {
3578
4029
  name: "Embed",
3579
4030
  static: true,
3580
4031
  inputs: [{
@@ -3596,7 +4047,7 @@ var SCRIPT_MIME_TYPES = ["text/javascript", "application/javascript", "applicati
3596
4047
  var isJsScript = (script) => SCRIPT_MIME_TYPES.includes(script.type);
3597
4048
 
3598
4049
  // src/blocks/embed/embed.tsx
3599
- var _tmpl$12 = /* @__PURE__ */ template(`<div class=builder-embed>`);
4050
+ var _tmpl$14 = /* @__PURE__ */ template(`<div class=builder-embed>`);
3600
4051
  function Embed(props) {
3601
4052
  const [scriptsInserted, setScriptsInserted] = createSignal([]);
3602
4053
  const [scriptsRun, setScriptsRun] = createSignal([]);
@@ -3634,7 +4085,7 @@ function Embed(props) {
3634
4085
  }
3635
4086
  createEffect(on(() => [onUpdateFn_0_elem(), onUpdateFn_0_ranInitFn__()], onUpdateFn_0));
3636
4087
  return (() => {
3637
- const _el$ = _tmpl$12();
4088
+ const _el$ = _tmpl$14();
3638
4089
  const _ref$ = elem;
3639
4090
  typeof _ref$ === "function" ? use(_ref$, _el$) : elem = _el$;
3640
4091
  effect(() => _el$.innerHTML = props.content);
@@ -3644,7 +4095,7 @@ function Embed(props) {
3644
4095
  var embed_default = Embed;
3645
4096
 
3646
4097
  // src/blocks/form/form/component-info.ts
3647
- var componentInfo13 = {
4098
+ var componentInfo14 = {
3648
4099
  name: "Form:Form",
3649
4100
  // editableTags: ['builder-form-error']
3650
4101
  defaults: {
@@ -3900,8 +4351,8 @@ function logFetch(url) {
3900
4351
  }
3901
4352
 
3902
4353
  // src/blocks/form/form/form.tsx
3903
- var _tmpl$13 = /* @__PURE__ */ template(`<pre class="builder-form-error-text pre-04a43b72">`);
3904
- var _tmpl$26 = /* @__PURE__ */ template(`<form>`);
4354
+ var _tmpl$15 = /* @__PURE__ */ template(`<pre class="builder-form-error-text pre-04a43b72">`);
4355
+ var _tmpl$27 = /* @__PURE__ */ template(`<form>`);
3905
4356
  var _tmpl$34 = /* @__PURE__ */ template(`<style>.pre-04a43b72 {
3906
4357
  padding: 10px;
3907
4358
  color: red;
@@ -4094,7 +4545,7 @@ function FormComponent(props) {
4094
4545
  }
4095
4546
  let formRef;
4096
4547
  return [(() => {
4097
- const _el$ = _tmpl$26();
4548
+ const _el$ = _tmpl$27();
4098
4549
  _el$.addEventListener("submit", (event) => onSubmit(event));
4099
4550
  const _ref$ = formRef;
4100
4551
  typeof _ref$ === "function" ? use(_ref$, _el$) : formRef = _el$;
@@ -4150,7 +4601,7 @@ function FormComponent(props) {
4150
4601
  return memo(() => submissionState() === "error")() && responseData();
4151
4602
  },
4152
4603
  get children() {
4153
- const _el$2 = _tmpl$13();
4604
+ const _el$2 = _tmpl$15();
4154
4605
  insert(_el$2, () => JSON.stringify(responseData(), null, 2));
4155
4606
  return _el$2;
4156
4607
  }
@@ -4177,7 +4628,7 @@ function FormComponent(props) {
4177
4628
  var form_default = FormComponent;
4178
4629
 
4179
4630
  // src/blocks/form/input/component-info.ts
4180
- var componentInfo14 = {
4631
+ var componentInfo15 = {
4181
4632
  name: "Form:Input",
4182
4633
  image: "https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Fad6f37889d9e40bbbbc72cdb5875d6ca",
4183
4634
  inputs: [
@@ -4229,10 +4680,10 @@ var componentInfo14 = {
4229
4680
  borderColor: "#ccc"
4230
4681
  }
4231
4682
  };
4232
- var _tmpl$14 = /* @__PURE__ */ template(`<input>`);
4683
+ var _tmpl$16 = /* @__PURE__ */ template(`<input>`);
4233
4684
  function FormInputComponent(props) {
4234
4685
  return (() => {
4235
- const _el$ = _tmpl$14();
4686
+ const _el$ = _tmpl$16();
4236
4687
  spread(_el$, mergeProps({}, () => props.attributes, {
4237
4688
  get key() {
4238
4689
  return isEditing() && props.defaultValue ? props.defaultValue : "default-key";
@@ -4262,7 +4713,7 @@ function FormInputComponent(props) {
4262
4713
  var input_default = FormInputComponent;
4263
4714
 
4264
4715
  // src/blocks/form/select/component-info.ts
4265
- var componentInfo15 = {
4716
+ var componentInfo16 = {
4266
4717
  name: "Form:Select",
4267
4718
  image: "https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F83acca093fb24aaf94dee136e9a4b045",
4268
4719
  defaultStyles: {
@@ -4305,11 +4756,11 @@ var componentInfo15 = {
4305
4756
  static: true,
4306
4757
  noWrap: true
4307
4758
  };
4308
- var _tmpl$15 = /* @__PURE__ */ template(`<select>`);
4309
- var _tmpl$27 = /* @__PURE__ */ template(`<option>`);
4759
+ var _tmpl$17 = /* @__PURE__ */ template(`<select>`);
4760
+ var _tmpl$28 = /* @__PURE__ */ template(`<option>`);
4310
4761
  function SelectComponent(props) {
4311
4762
  return (() => {
4312
- const _el$ = _tmpl$15();
4763
+ const _el$ = _tmpl$17();
4313
4764
  spread(_el$, mergeProps({}, () => props.attributes, {
4314
4765
  get value() {
4315
4766
  return props.value;
@@ -4334,7 +4785,7 @@ function SelectComponent(props) {
4334
4785
  children: (option, _index) => {
4335
4786
  const index = _index();
4336
4787
  return (() => {
4337
- const _el$2 = _tmpl$27();
4788
+ const _el$2 = _tmpl$28();
4338
4789
  insert(_el$2, () => option.name || option.value);
4339
4790
  effect(() => setAttribute(_el$2, "key", `${option.name}-${index}`));
4340
4791
  effect(() => _el$2.value = option.value);
@@ -4348,7 +4799,7 @@ function SelectComponent(props) {
4348
4799
  var select_default = SelectComponent;
4349
4800
 
4350
4801
  // src/blocks/form/submit-button/component-info.ts
4351
- var componentInfo16 = {
4802
+ var componentInfo17 = {
4352
4803
  name: "Form:SubmitButton",
4353
4804
  image: "https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Fdf2820ffed1f4349a94c40b3221f5b98",
4354
4805
  defaultStyles: {
@@ -4374,10 +4825,10 @@ var componentInfo16 = {
4374
4825
  // TODO: defaultChildren
4375
4826
  // canHaveChildren: true,
4376
4827
  };
4377
- var _tmpl$16 = /* @__PURE__ */ template(`<button type=submit>`);
4828
+ var _tmpl$18 = /* @__PURE__ */ template(`<button type=submit>`);
4378
4829
  function SubmitButton(props) {
4379
4830
  return (() => {
4380
- const _el$ = _tmpl$16();
4831
+ const _el$ = _tmpl$18();
4381
4832
  spread(_el$, mergeProps({}, () => props.attributes), false, true);
4382
4833
  insert(_el$, () => props.text);
4383
4834
  return _el$;
@@ -4386,7 +4837,7 @@ function SubmitButton(props) {
4386
4837
  var submit_button_default = SubmitButton;
4387
4838
 
4388
4839
  // src/blocks/form/textarea/component-info.ts
4389
- var componentInfo17 = {
4840
+ var componentInfo18 = {
4390
4841
  name: "Form:TextArea",
4391
4842
  image: "https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Ff74a2f3de58c4c3e939204e5b6b8f6c3",
4392
4843
  inputs: [{
@@ -4423,10 +4874,10 @@ var componentInfo17 = {
4423
4874
  static: true,
4424
4875
  noWrap: true
4425
4876
  };
4426
- var _tmpl$17 = /* @__PURE__ */ template(`<textarea>`);
4877
+ var _tmpl$19 = /* @__PURE__ */ template(`<textarea>`);
4427
4878
  function Textarea(props) {
4428
4879
  return (() => {
4429
- const _el$ = _tmpl$17();
4880
+ const _el$ = _tmpl$19();
4430
4881
  spread(_el$, mergeProps({}, () => props.attributes, {
4431
4882
  get placeholder() {
4432
4883
  return props.placeholder;
@@ -4450,7 +4901,7 @@ function Textarea(props) {
4450
4901
  var textarea_default = Textarea;
4451
4902
 
4452
4903
  // src/blocks/img/component-info.ts
4453
- var componentInfo18 = {
4904
+ var componentInfo19 = {
4454
4905
  // friendlyName?
4455
4906
  name: "Raw:Img",
4456
4907
  hideFromInsertMenu: true,
@@ -4465,10 +4916,10 @@ var componentInfo18 = {
4465
4916
  noWrap: true,
4466
4917
  static: true
4467
4918
  };
4468
- var _tmpl$18 = /* @__PURE__ */ template(`<img>`);
4919
+ var _tmpl$20 = /* @__PURE__ */ template(`<img>`);
4469
4920
  function ImgComponent(props) {
4470
4921
  return (() => {
4471
- const _el$ = _tmpl$18();
4922
+ const _el$ = _tmpl$20();
4472
4923
  spread(_el$, mergeProps({
4473
4924
  get style() {
4474
4925
  return {
@@ -4492,7 +4943,7 @@ function ImgComponent(props) {
4492
4943
  var img_default = ImgComponent;
4493
4944
 
4494
4945
  // src/blocks/video/component-info.ts
4495
- var componentInfo19 = {
4946
+ var componentInfo20 = {
4496
4947
  name: "Video",
4497
4948
  canHaveChildren: true,
4498
4949
  defaultStyles: {
@@ -4577,8 +5028,8 @@ var componentInfo19 = {
4577
5028
  builderBlock: true
4578
5029
  }
4579
5030
  };
4580
- var _tmpl$19 = /* @__PURE__ */ template(`<source type=video/mp4>`);
4581
- var _tmpl$28 = /* @__PURE__ */ template(`<div>`);
5031
+ var _tmpl$21 = /* @__PURE__ */ template(`<source type=video/mp4>`);
5032
+ var _tmpl$29 = /* @__PURE__ */ template(`<div>`);
4582
5033
  var _tmpl$35 = /* @__PURE__ */ template(`<div><video class=builder-video>`);
4583
5034
  function Video(props) {
4584
5035
  const videoProps = createMemo(() => {
@@ -4639,7 +5090,7 @@ function Video(props) {
4639
5090
  return !props.lazyLoad;
4640
5091
  },
4641
5092
  get children() {
4642
- const _el$3 = _tmpl$19();
5093
+ const _el$3 = _tmpl$21();
4643
5094
  effect(() => setAttribute(_el$3, "src", props.video));
4644
5095
  return _el$3;
4645
5096
  }
@@ -4649,7 +5100,7 @@ function Video(props) {
4649
5100
  return props.aspectRatio && !(props.fitContent && props.builderBlock?.children?.length);
4650
5101
  },
4651
5102
  get children() {
4652
- const _el$4 = _tmpl$28();
5103
+ const _el$4 = _tmpl$29();
4653
5104
  _el$4.style.setProperty("width", "100%");
4654
5105
  _el$4.style.setProperty("pointer-events", "none");
4655
5106
  _el$4.style.setProperty("font-size", "0px");
@@ -4662,7 +5113,7 @@ function Video(props) {
4662
5113
  return props.builderBlock?.children?.length && props.fitContent;
4663
5114
  },
4664
5115
  get children() {
4665
- const _el$5 = _tmpl$28();
5116
+ const _el$5 = _tmpl$29();
4666
5117
  _el$5.style.setProperty("display", "flex");
4667
5118
  _el$5.style.setProperty("flex-direction", "column");
4668
5119
  _el$5.style.setProperty("align-items", "stretch");
@@ -4675,7 +5126,7 @@ function Video(props) {
4675
5126
  return props.builderBlock?.children?.length && !props.fitContent;
4676
5127
  },
4677
5128
  get children() {
4678
- const _el$6 = _tmpl$28();
5129
+ const _el$6 = _tmpl$29();
4679
5130
  _el$6.style.setProperty("pointer-events", "none");
4680
5131
  _el$6.style.setProperty("display", "flex");
4681
5132
  _el$6.style.setProperty("flex-direction", "column");
@@ -4697,31 +5148,31 @@ var video_default = Video;
4697
5148
  // src/constants/extra-components.ts
4698
5149
  var getExtraComponents = () => [{
4699
5150
  component: custom_code_default,
4700
- ...componentInfo11
5151
+ ...componentInfo12
4701
5152
  }, {
4702
5153
  component: embed_default,
4703
- ...componentInfo12
5154
+ ...componentInfo13
4704
5155
  }, ...TARGET === "rsc" ? [] : [{
4705
5156
  component: form_default,
4706
- ...componentInfo13
5157
+ ...componentInfo14
4707
5158
  }, {
4708
5159
  component: input_default,
4709
- ...componentInfo14
5160
+ ...componentInfo15
4710
5161
  }, {
4711
5162
  component: submit_button_default,
4712
- ...componentInfo16
5163
+ ...componentInfo17
4713
5164
  }, {
4714
5165
  component: select_default,
4715
- ...componentInfo15
5166
+ ...componentInfo16
4716
5167
  }, {
4717
5168
  component: textarea_default,
4718
- ...componentInfo17
5169
+ ...componentInfo18
4719
5170
  }], {
4720
5171
  component: img_default,
4721
- ...componentInfo18
5172
+ ...componentInfo19
4722
5173
  }, {
4723
5174
  component: video_default,
4724
- ...componentInfo19
5175
+ ...componentInfo20
4725
5176
  }];
4726
5177
 
4727
5178
  // src/constants/builder-registered-components.ts
@@ -4739,19 +5190,22 @@ var getDefaultRegisteredComponents = () => [{
4739
5190
  ...componentInfo5
4740
5191
  }, {
4741
5192
  component: section_default,
4742
- ...componentInfo6
5193
+ ...componentInfo7
4743
5194
  }, {
4744
5195
  component: slot_default,
4745
- ...componentInfo7
5196
+ ...componentInfo8
4746
5197
  }, {
4747
5198
  component: symbol_default,
4748
- ...componentInfo8
5199
+ ...componentInfo9
4749
5200
  }, {
4750
5201
  component: text_default,
4751
- ...componentInfo10
4752
- }, ...TARGET === "rsc" ? [] : [{
5202
+ ...componentInfo11
5203
+ }, ...TARGET === "react" ? [{
5204
+ component: personalization_container_default,
5205
+ ...componentInfo6
5206
+ }] : [], ...TARGET === "rsc" ? [] : [{
4753
5207
  component: tabs_default,
4754
- ...componentInfo9
5208
+ ...componentInfo10
4755
5209
  }, {
4756
5210
  component: accordion_default,
4757
5211
  ...componentInfo
@@ -4789,7 +5243,7 @@ var getVariants = (content) => Object.values(content?.variations || {}).map((var
4789
5243
  testVariationId: variant.id,
4790
5244
  id: content?.id
4791
5245
  }));
4792
- var checkShouldRenderVariants = ({
5246
+ var checkShouldRenderVariants2 = ({
4793
5247
  canTrack,
4794
5248
  content
4795
5249
  }) => {
@@ -4822,25 +5276,6 @@ var getUpdateVariantVisibilityScript = ({
4822
5276
  }) => `window.${UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME}(
4823
5277
  "${variationId}", "${contentId}", ${isHydrationTarget}
4824
5278
  )`;
4825
- var _tmpl$20 = /* @__PURE__ */ template(`<script>`);
4826
- function InlinedScript(props) {
4827
- return (() => {
4828
- const _el$ = _tmpl$20();
4829
- effect((_p$) => {
4830
- const _v$ = props.scriptStr, _v$2 = props.id, _v$3 = props.nonce || "";
4831
- _v$ !== _p$._v$ && (_el$.innerHTML = _p$._v$ = _v$);
4832
- _v$2 !== _p$._v$2 && setAttribute(_el$, "data-id", _p$._v$2 = _v$2);
4833
- _v$3 !== _p$._v$3 && setAttribute(_el$, "nonce", _p$._v$3 = _v$3);
4834
- return _p$;
4835
- }, {
4836
- _v$: void 0,
4837
- _v$2: void 0,
4838
- _v$3: void 0
4839
- });
4840
- return _el$;
4841
- })();
4842
- }
4843
- var inlined_script_default = InlinedScript;
4844
5279
 
4845
5280
  // src/helpers/preview-lru-cache/get.ts
4846
5281
  function getPreviewContent(_searchParams) {
@@ -4848,7 +5283,7 @@ function getPreviewContent(_searchParams) {
4848
5283
  }
4849
5284
 
4850
5285
  // src/constants/sdk-version.ts
4851
- var SDK_VERSION = "3.0.5";
5286
+ var SDK_VERSION = "3.0.6";
4852
5287
 
4853
5288
  // src/helpers/sdk-headers.ts
4854
5289
  var getSdkHeaders = () => ({
@@ -5145,16 +5580,6 @@ async function fetchEntries(options) {
5145
5580
  return _processContentResult(options, content);
5146
5581
  }
5147
5582
 
5148
- // src/functions/is-previewing.ts
5149
- function isPreviewing(_search) {
5150
- const search = _search || (isBrowser() ? window.location.search : void 0);
5151
- if (!search) {
5152
- return false;
5153
- }
5154
- const normalizedSearch = getSearchString(search);
5155
- return Boolean(normalizedSearch.indexOf("builder.preview=") !== -1);
5156
- }
5157
-
5158
5583
  // src/helpers/uuid.ts
5159
5584
  function uuidv4() {
5160
5585
  return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(c) {
@@ -5481,7 +5906,8 @@ var setupBrowserForEditing = (options = {}) => {
5481
5906
  // Supports builder-model="..." attribute which is needed to
5482
5907
  // scope our '+ add block' button styling
5483
5908
  supportsAddBlockScoping: true,
5484
- supportsCustomBreakpoints: true
5909
+ supportsCustomBreakpoints: true,
5910
+ blockLevelPersonalization: true
5485
5911
  }
5486
5912
  }, "*");
5487
5913
  window.parent?.postMessage({
@@ -6218,7 +6644,7 @@ var content_default = ContentComponent;
6218
6644
 
6219
6645
  // src/components/content-variants/content-variants.tsx
6220
6646
  function ContentVariants(props) {
6221
- const [shouldRenderVariants, setShouldRenderVariants] = createSignal(checkShouldRenderVariants({
6647
+ const [shouldRenderVariants, setShouldRenderVariants] = createSignal(checkShouldRenderVariants2({
6222
6648
  canTrack: getDefaultCanTrack(props.canTrack),
6223
6649
  content: props.content
6224
6650
  }));
@@ -6444,7 +6870,7 @@ var fetchSymbolContent = async ({
6444
6870
  };
6445
6871
 
6446
6872
  // src/blocks/symbol/symbol.tsx
6447
- var _tmpl$21 = /* @__PURE__ */ template(`<div>`);
6873
+ var _tmpl$30 = /* @__PURE__ */ template(`<div>`);
6448
6874
  function Symbol(props) {
6449
6875
  const [contentToUse, setContentToUse] = createSignal(props.symbol?.content);
6450
6876
  const blocksWrapper = createMemo(() => {
@@ -6476,7 +6902,7 @@ function Symbol(props) {
6476
6902
  }
6477
6903
  createEffect(on(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
6478
6904
  return (() => {
6479
- const _el$ = _tmpl$21();
6905
+ const _el$ = _tmpl$30();
6480
6906
  spread(_el$, mergeProps({
6481
6907
  get ["class"]() {
6482
6908
  return className();
@@ -6568,4 +6994,4 @@ var fetchBuilderProps = async (_args) => {
6568
6994
  };
6569
6995
  };
6570
6996
 
6571
- export { blocks_default as Blocks, builder_context_default as BuilderContext, button_default as Button, columns_default as Columns, content_variants_default as Content, fragment_default as Fragment, image_default as Image, section_default as Section, symbol_default as Symbol, text_default as Text, video_default as Video, _processContentResult, createRegisterComponentMessage, fetchBuilderProps, fetchEntries, fetchOneEntry, getBuilderSearchParams, isEditing, isPreviewing, register, setEditorSettings, subscribeToEditor, track };
6997
+ export { blocks_default as Blocks, builder_context_default as BuilderContext, button_default as Button, columns_default as Columns, content_variants_default as Content, fragment_default as Fragment, image_default as Image, section_default as Section, symbol_default as Symbol, text_default as Text, video_default as Video, _processContentResult, createRegisterComponentMessage, fetchBuilderProps, fetchEntries, fetchOneEntry, getBuilderSearchParams, isEditing, isPreviewing, register, setClientUserAttributes, setEditorSettings, subscribeToEditor, track };