@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.
@@ -1607,7 +1607,7 @@ function Block(props) {
1607
1607
  });
1608
1608
  }
1609
1609
  var block_default = Block;
1610
- var _tmpl$2 = /* @__PURE__ */ template(`<style>.dynamic-3c4beb0c {
1610
+ var _tmpl$2 = /* @__PURE__ */ template(`<style>.dynamic-3d7ff108 {
1611
1611
  display: flex;
1612
1612
  flex-direction: column;
1613
1613
  align-items: stretch;
@@ -1620,8 +1620,9 @@ function BlocksWrapper(props) {
1620
1620
  if (!props.path) {
1621
1621
  return void 0;
1622
1622
  }
1623
+ const thisPrefix = "this.";
1623
1624
  const pathPrefix = "component.options.";
1624
- return props.path.startsWith(pathPrefix) ? props.path : `${pathPrefix}${props.path || ""}`;
1625
+ return props.path.startsWith(thisPrefix) ? props.path.replace(thisPrefix, "") : props.path.startsWith(pathPrefix) ? props.path : `${pathPrefix}${props.path || ""}`;
1625
1626
  });
1626
1627
  function onClick() {
1627
1628
  if (isEditing() && !props.blocks?.length) {
@@ -1650,7 +1651,7 @@ function BlocksWrapper(props) {
1650
1651
  });
1651
1652
  return [createComponent(Dynamic, mergeProps({
1652
1653
  get ["class"]() {
1653
- return className() + " dynamic-3c4beb0c";
1654
+ return className() + " dynamic-3d7ff108";
1654
1655
  },
1655
1656
  ref(r$) {
1656
1657
  const _ref$ = blocksWrapperRef;
@@ -2343,8 +2344,58 @@ var handleABTesting = async ({
2343
2344
  };
2344
2345
  };
2345
2346
 
2347
+ // src/helpers/user-attributes.ts
2348
+ var USER_ATTRIBUTES_COOKIE_NAME = "builder.userAttributes";
2349
+ function createUserAttributesService() {
2350
+ let canTrack = true;
2351
+ const subscribers = /* @__PURE__ */ new Set();
2352
+ return {
2353
+ setUserAttributes(newAttrs) {
2354
+ if (!isBrowser()) {
2355
+ return;
2356
+ }
2357
+ const userAttributes = {
2358
+ ...this.getUserAttributes(),
2359
+ ...newAttrs
2360
+ };
2361
+ setCookie({
2362
+ name: USER_ATTRIBUTES_COOKIE_NAME,
2363
+ value: JSON.stringify(userAttributes),
2364
+ canTrack
2365
+ });
2366
+ subscribers.forEach((callback) => callback(userAttributes));
2367
+ },
2368
+ getUserAttributes() {
2369
+ if (!isBrowser()) {
2370
+ return {};
2371
+ }
2372
+ return JSON.parse(getCookieSync({
2373
+ name: USER_ATTRIBUTES_COOKIE_NAME,
2374
+ canTrack
2375
+ }) || "{}");
2376
+ },
2377
+ subscribeOnUserAttributesChange(callback) {
2378
+ subscribers.add(callback);
2379
+ return () => {
2380
+ subscribers.delete(callback);
2381
+ };
2382
+ },
2383
+ setCanTrack(value) {
2384
+ canTrack = value;
2385
+ }
2386
+ };
2387
+ }
2388
+ var userAttributesService = createUserAttributesService();
2389
+ var setClientUserAttributes = (attributes) => {
2390
+ userAttributesService.setUserAttributes(attributes);
2391
+ };
2392
+
2346
2393
  // src/helpers/canTrack.ts
2347
- var getDefaultCanTrack = (canTrack) => checkIsDefined(canTrack) ? canTrack : true;
2394
+ var getDefaultCanTrack = (canTrack) => {
2395
+ const result = checkIsDefined(canTrack) ? canTrack : true;
2396
+ userAttributesService.setCanTrack(result);
2397
+ return result;
2398
+ };
2348
2399
 
2349
2400
  // src/blocks/accordion/component-info.ts
2350
2401
  var defaultTitle = {
@@ -3074,8 +3125,408 @@ var componentInfo5 = {
3074
3125
  }
3075
3126
  };
3076
3127
 
3077
- // src/blocks/section/component-info.ts
3128
+ // src/blocks/personalization-container/component-info.ts
3078
3129
  var componentInfo6 = {
3130
+ name: "PersonalizationContainer",
3131
+ shouldReceiveBuilderProps: {
3132
+ builderBlock: true,
3133
+ builderContext: true
3134
+ },
3135
+ noWrap: true,
3136
+ image: "https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F37229ed30d8c41dfb10b8cca1992053a",
3137
+ canHaveChildren: true,
3138
+ inputs: [{
3139
+ name: "variants",
3140
+ defaultValue: [],
3141
+ behavior: "personalizationVariantList",
3142
+ type: "list",
3143
+ subFields: [{
3144
+ name: "name",
3145
+ type: "text"
3146
+ }, {
3147
+ name: "query",
3148
+ friendlyName: "Targeting rules",
3149
+ type: "BuilderQuery",
3150
+ defaultValue: []
3151
+ }, {
3152
+ name: "startDate",
3153
+ type: "date"
3154
+ }, {
3155
+ name: "endDate",
3156
+ type: "date"
3157
+ }, {
3158
+ name: "blocks",
3159
+ type: "uiBlocks",
3160
+ hideFromUI: true,
3161
+ defaultValue: []
3162
+ }]
3163
+ }]
3164
+ };
3165
+ var _tmpl$8 = /* @__PURE__ */ template(`<script>`);
3166
+ function InlinedScript(props) {
3167
+ return (() => {
3168
+ const _el$ = _tmpl$8();
3169
+ effect((_p$) => {
3170
+ const _v$ = props.scriptStr, _v$2 = props.id, _v$3 = props.nonce || "";
3171
+ _v$ !== _p$._v$ && (_el$.innerHTML = _p$._v$ = _v$);
3172
+ _v$2 !== _p$._v$2 && setAttribute(_el$, "data-id", _p$._v$2 = _v$2);
3173
+ _v$3 !== _p$._v$3 && setAttribute(_el$, "nonce", _p$._v$3 = _v$3);
3174
+ return _p$;
3175
+ }, {
3176
+ _v$: void 0,
3177
+ _v$2: void 0,
3178
+ _v$3: void 0
3179
+ });
3180
+ return _el$;
3181
+ })();
3182
+ }
3183
+ var inlined_script_default = InlinedScript;
3184
+
3185
+ // src/functions/is-previewing.ts
3186
+ function isPreviewing(_search) {
3187
+ const search = _search || (isBrowser() ? window.location.search : void 0);
3188
+ if (!search) {
3189
+ return false;
3190
+ }
3191
+ const normalizedSearch = getSearchString(search);
3192
+ return Boolean(normalizedSearch.indexOf("builder.preview=") !== -1);
3193
+ }
3194
+
3195
+ // src/blocks/personalization-container/helpers/inlined-fns.ts
3196
+ function filterWithCustomTargeting(userAttributes, query, startDate, endDate) {
3197
+ function isString(val) {
3198
+ return typeof val === "string";
3199
+ }
3200
+ function isNumber(val) {
3201
+ return typeof val === "number";
3202
+ }
3203
+ function objectMatchesQuery(userattr, query2) {
3204
+ const result = (() => {
3205
+ const property = query2.property;
3206
+ const operator = query2.operator;
3207
+ let testValue = query2.value;
3208
+ if (query2 && query2.property === "urlPath" && query2.value && typeof query2.value === "string" && query2.value !== "/" && query2.value.endsWith("/")) {
3209
+ testValue = query2.value.slice(0, -1);
3210
+ }
3211
+ if (!(property && operator)) {
3212
+ return true;
3213
+ }
3214
+ if (Array.isArray(testValue)) {
3215
+ if (operator === "isNot") {
3216
+ return testValue.every((val) => objectMatchesQuery(userattr, {
3217
+ property,
3218
+ operator,
3219
+ value: val
3220
+ }));
3221
+ }
3222
+ return !!testValue.find((val) => objectMatchesQuery(userattr, {
3223
+ property,
3224
+ operator,
3225
+ value: val
3226
+ }));
3227
+ }
3228
+ const value = userattr[property];
3229
+ if (Array.isArray(value)) {
3230
+ return value.includes(testValue);
3231
+ }
3232
+ switch (operator) {
3233
+ case "is":
3234
+ return value === testValue;
3235
+ case "isNot":
3236
+ return value !== testValue;
3237
+ case "contains":
3238
+ return (isString(value) || Array.isArray(value)) && value.includes(String(testValue));
3239
+ case "startsWith":
3240
+ return isString(value) && value.startsWith(String(testValue));
3241
+ case "endsWith":
3242
+ return isString(value) && value.endsWith(String(testValue));
3243
+ case "greaterThan":
3244
+ return isNumber(value) && isNumber(testValue) && value > testValue;
3245
+ case "lessThan":
3246
+ return isNumber(value) && isNumber(testValue) && value < testValue;
3247
+ case "greaterThanOrEqualTo":
3248
+ return isNumber(value) && isNumber(testValue) && value >= testValue;
3249
+ case "lessThanOrEqualTo":
3250
+ return isNumber(value) && isNumber(testValue) && value <= testValue;
3251
+ default:
3252
+ return false;
3253
+ }
3254
+ })();
3255
+ return result;
3256
+ }
3257
+ const item = {
3258
+ query,
3259
+ startDate,
3260
+ endDate
3261
+ };
3262
+ const now = userAttributes.date && new Date(userAttributes.date) || /* @__PURE__ */ new Date();
3263
+ if (item.startDate && new Date(item.startDate) > now) {
3264
+ return false;
3265
+ } else if (item.endDate && new Date(item.endDate) < now) {
3266
+ return false;
3267
+ }
3268
+ if (!item.query || !item.query.length) {
3269
+ return true;
3270
+ }
3271
+ return item.query.every((filter) => {
3272
+ return objectMatchesQuery(userAttributes, filter);
3273
+ });
3274
+ }
3275
+ var PERSONALIZATION_SCRIPT = `function getPersonalizedVariant(variants, blockId, locale) {
3276
+ if (!navigator.cookieEnabled) {
3277
+ return;
3278
+ }
3279
+ function getCookie(name) {
3280
+ const nameEQ = name + '=';
3281
+ const ca = document.cookie.split(';');
3282
+ for (let i = 0; i < ca.length; i++) {
3283
+ let c = ca[i];
3284
+ while (c.charAt(0) == ' ') c = c.substring(1, c.length);
3285
+ if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
3286
+ }
3287
+ return null;
3288
+ }
3289
+ function removeVariants() {
3290
+ variants?.forEach(function (_, index) {
3291
+ document.querySelector('template[data-variant-id="' + blockId + '-' + index + '"]')?.remove();
3292
+ });
3293
+ document.querySelector('script[data-id="variants-script-' + blockId + '"]')?.remove();
3294
+ document.querySelector('style[data-id="variants-styles-' + blockId + '"]')?.remove();
3295
+ }
3296
+ const attributes = JSON.parse(getCookie('builder.userAttributes') || '{}');
3297
+ if (locale) {
3298
+ attributes.locale = locale;
3299
+ }
3300
+ const winningVariantIndex = variants?.findIndex(function (variant) {
3301
+ return filterWithCustomTargeting(attributes, variant.query, variant.startDate, variant.endDate);
3302
+ });
3303
+ const isDebug = location.href.includes('builder.debug=true');
3304
+ if (isDebug) {
3305
+ console.debug('PersonalizationContainer', {
3306
+ attributes,
3307
+ variants,
3308
+ winningVariantIndex
3309
+ });
3310
+ }
3311
+ if (winningVariantIndex !== -1) {
3312
+ const winningVariant = document.querySelector('template[data-variant-id="' + blockId + '-' + winningVariantIndex + '"]');
3313
+ if (winningVariant) {
3314
+ const parentNode = winningVariant.parentNode;
3315
+ if (parentNode) {
3316
+ const newParent = parentNode.cloneNode(false);
3317
+ newParent.appendChild(winningVariant.content.firstChild);
3318
+ newParent.appendChild(winningVariant.content.lastChild);
3319
+ parentNode.parentNode?.replaceChild(newParent, parentNode);
3320
+ }
3321
+ if (isDebug) {
3322
+ console.debug('PersonalizationContainer', 'Winning variant Replaced:', winningVariant);
3323
+ }
3324
+ }
3325
+ } else if (variants && variants.length > 0) {
3326
+ removeVariants();
3327
+ }
3328
+ }`;
3329
+ 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}";
3330
+
3331
+ // src/blocks/personalization-container/helpers.ts
3332
+ function checkShouldRenderVariants(variants, canTrack) {
3333
+ const hasVariants = variants && variants.length > 0;
3334
+ if (TARGET === "reactNative")
3335
+ return false;
3336
+ if (!hasVariants)
3337
+ return false;
3338
+ if (!canTrack)
3339
+ return false;
3340
+ if (TARGET === "vue" || TARGET === "svelte")
3341
+ return true;
3342
+ if (isBrowser())
3343
+ return false;
3344
+ return true;
3345
+ }
3346
+ function getBlocksToRender({
3347
+ variants,
3348
+ previewingIndex,
3349
+ isHydrated,
3350
+ filteredVariants,
3351
+ fallbackBlocks
3352
+ }) {
3353
+ const fallback = {
3354
+ blocks: fallbackBlocks ?? [],
3355
+ path: "this.children"
3356
+ };
3357
+ if (isHydrated && isEditing()) {
3358
+ if (typeof previewingIndex === "number" && previewingIndex < (variants?.length ?? 0)) {
3359
+ const variant = variants[previewingIndex];
3360
+ return {
3361
+ blocks: variant.blocks,
3362
+ path: `component.options.variants.${previewingIndex}.blocks`
3363
+ };
3364
+ }
3365
+ return fallback;
3366
+ }
3367
+ if (isBrowser()) {
3368
+ const winningVariant = filteredVariants?.[0];
3369
+ if (winningVariant) {
3370
+ return {
3371
+ blocks: winningVariant.blocks,
3372
+ path: `component.options.variants.${variants?.indexOf(winningVariant)}.blocks`
3373
+ };
3374
+ }
3375
+ }
3376
+ return fallback;
3377
+ }
3378
+ var getPersonalizationScript = (variants, blockId, locale) => {
3379
+ return `
3380
+ (function() {
3381
+ ${FILTER_WITH_CUSTOM_TARGETING_SCRIPT}
3382
+ ${PERSONALIZATION_SCRIPT}
3383
+ getPersonalizedVariant(${JSON.stringify(variants)}, "${blockId}"${locale ? `, "${locale}"` : ""})
3384
+ })();
3385
+ `;
3386
+ };
3387
+
3388
+ // src/blocks/personalization-container/personalization-container.tsx
3389
+ var _tmpl$9 = /* @__PURE__ */ template(`<div>`);
3390
+ var _tmpl$25 = /* @__PURE__ */ template(`<template>`);
3391
+ function PersonalizationContainer(props) {
3392
+ const [userAttributes, setUserAttributes] = createSignal(userAttributesService.getUserAttributes());
3393
+ const [scriptStr, setScriptStr] = createSignal(getPersonalizationScript(props.variants, props.builderBlock?.id || "none", props.builderContext?.rootState?.locale));
3394
+ const [unsubscribers, setUnsubscribers] = createSignal([]);
3395
+ const [shouldRenderVariants, setShouldRenderVariants] = createSignal(checkShouldRenderVariants(props.variants, getDefaultCanTrack(props.builderContext?.canTrack)));
3396
+ const [isHydrated, setIsHydrated] = createSignal(false);
3397
+ const filteredVariants = createMemo(() => {
3398
+ return (props.variants || []).filter((variant) => {
3399
+ return filterWithCustomTargeting({
3400
+ ...props.builderContext?.rootState?.locale ? {
3401
+ locale: props.builderContext?.rootState?.locale
3402
+ } : {},
3403
+ ...userAttributes()
3404
+ }, variant.query, variant.startDate, variant.endDate);
3405
+ });
3406
+ });
3407
+ const blocksToRender = createMemo(() => {
3408
+ return getBlocksToRender({
3409
+ variants: props.variants,
3410
+ fallbackBlocks: props.builderBlock?.children,
3411
+ isHydrated: isHydrated(),
3412
+ filteredVariants: filteredVariants(),
3413
+ previewingIndex: props.previewingIndex
3414
+ });
3415
+ });
3416
+ const hideVariantsStyleString = createMemo(() => {
3417
+ return (props.variants || []).map((_, index) => `[data-variant-id="${props.builderBlock?.id}-${index}"] { display: none; } `).join("");
3418
+ });
3419
+ let rootRef;
3420
+ onMount(() => {
3421
+ setIsHydrated(true);
3422
+ const unsub = userAttributesService.subscribeOnUserAttributesChange((attrs) => {
3423
+ setUserAttributes(attrs);
3424
+ });
3425
+ if (!(isEditing() || isPreviewing())) {
3426
+ const variant = filteredVariants()[0];
3427
+ if (rootRef) {
3428
+ rootRef.dispatchEvent(new CustomEvent("builder.variantLoaded", {
3429
+ detail: {
3430
+ variant: variant || "default",
3431
+ content: props.builderContext?.content
3432
+ },
3433
+ bubbles: true
3434
+ }));
3435
+ const observer = new IntersectionObserver((entries) => {
3436
+ entries.forEach((entry) => {
3437
+ if (entry.isIntersecting && rootRef) {
3438
+ rootRef.dispatchEvent(new CustomEvent("builder.variantDisplayed", {
3439
+ detail: {
3440
+ variant: variant || "default",
3441
+ content: props.builderContext?.content
3442
+ },
3443
+ bubbles: true
3444
+ }));
3445
+ }
3446
+ });
3447
+ });
3448
+ observer.observe(rootRef);
3449
+ }
3450
+ }
3451
+ unsubscribers().push(unsub);
3452
+ });
3453
+ return (() => {
3454
+ const _el$ = _tmpl$9();
3455
+ const _ref$ = rootRef;
3456
+ typeof _ref$ === "function" ? use(_ref$, _el$) : rootRef = _el$;
3457
+ spread(_el$, mergeProps({
3458
+ get ["class"]() {
3459
+ return `builder-personalization-container ${props.attributes?.className || ""}`;
3460
+ }
3461
+ }, () => props.attributes), false, true);
3462
+ insert(_el$, createComponent(Show, {
3463
+ get when() {
3464
+ return shouldRenderVariants();
3465
+ },
3466
+ get children() {
3467
+ return [createComponent(For, {
3468
+ get each() {
3469
+ return props.variants;
3470
+ },
3471
+ children: (variant, _index) => {
3472
+ const index = _index();
3473
+ return (() => {
3474
+ const _el$2 = _tmpl$25();
3475
+ setAttribute(_el$2, "key", index);
3476
+ insert(_el$2, createComponent(blocks_default, {
3477
+ get blocks() {
3478
+ return variant.blocks;
3479
+ },
3480
+ get parent() {
3481
+ return props.builderBlock?.id;
3482
+ },
3483
+ path: `component.options.variants.${index}.blocks`
3484
+ }));
3485
+ effect(() => setAttribute(_el$2, "data-variant-id", `${props.builderBlock?.id}-${index}`));
3486
+ return _el$2;
3487
+ })();
3488
+ }
3489
+ }), createComponent(inlined_styles_default, {
3490
+ get nonce() {
3491
+ return props.builderContext?.nonce || "";
3492
+ },
3493
+ get styles() {
3494
+ return hideVariantsStyleString();
3495
+ },
3496
+ get id() {
3497
+ return `variants-styles-${props.builderBlock?.id}`;
3498
+ }
3499
+ }), createComponent(inlined_script_default, {
3500
+ get nonce() {
3501
+ return props.builderContext?.nonce || "";
3502
+ },
3503
+ get scriptStr() {
3504
+ return scriptStr();
3505
+ },
3506
+ get id() {
3507
+ return `variants-script-${props.builderBlock?.id}`;
3508
+ }
3509
+ })];
3510
+ }
3511
+ }), null);
3512
+ insert(_el$, createComponent(blocks_default, {
3513
+ get blocks() {
3514
+ return blocksToRender().blocks;
3515
+ },
3516
+ get parent() {
3517
+ return props.builderBlock?.id;
3518
+ },
3519
+ get path() {
3520
+ return blocksToRender().path;
3521
+ }
3522
+ }), null);
3523
+ return _el$;
3524
+ })();
3525
+ }
3526
+ var personalization_container_default = PersonalizationContainer;
3527
+
3528
+ // src/blocks/section/component-info.ts
3529
+ var componentInfo7 = {
3079
3530
  name: "Core:Section",
3080
3531
  static: true,
3081
3532
  image: "https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F682efef23ace49afac61748dd305c70a",
@@ -3117,7 +3568,7 @@ var componentInfo6 = {
3117
3568
  };
3118
3569
 
3119
3570
  // src/blocks/slot/component-info.ts
3120
- var componentInfo7 = {
3571
+ var componentInfo8 = {
3121
3572
  name: "Slot",
3122
3573
  isRSC: true,
3123
3574
  description: "Allow child blocks to be inserted into this content when used as a Symbol",
@@ -3135,10 +3586,10 @@ var componentInfo7 = {
3135
3586
  builderComponents: true
3136
3587
  }
3137
3588
  };
3138
- var _tmpl$8 = /* @__PURE__ */ template(`<div>`);
3589
+ var _tmpl$10 = /* @__PURE__ */ template(`<div>`);
3139
3590
  function Slot(props) {
3140
3591
  return (() => {
3141
- const _el$ = _tmpl$8();
3592
+ const _el$ = _tmpl$10();
3142
3593
  _el$.style.setProperty("pointer-events", "auto");
3143
3594
  spread(_el$, mergeProps(() => !props.builderContext.context?.symbolId && {
3144
3595
  "builder-slot": props.name
@@ -3166,7 +3617,7 @@ function Slot(props) {
3166
3617
  var slot_default = Slot;
3167
3618
 
3168
3619
  // src/blocks/symbol/component-info.ts
3169
- var componentInfo8 = {
3620
+ var componentInfo9 = {
3170
3621
  name: "Symbol",
3171
3622
  noWrap: true,
3172
3623
  static: true,
@@ -3248,7 +3699,7 @@ var defaultElement = {
3248
3699
  }
3249
3700
  }
3250
3701
  };
3251
- var componentInfo9 = {
3702
+ var componentInfo10 = {
3252
3703
  name: "Builder: Tabs",
3253
3704
  inputs: [{
3254
3705
  name: "tabs",
@@ -3352,8 +3803,8 @@ var componentInfo9 = {
3352
3803
  builderLinkComponent: true
3353
3804
  }
3354
3805
  };
3355
- var _tmpl$9 = /* @__PURE__ */ template(`<div>`);
3356
- var _tmpl$25 = /* @__PURE__ */ template(`<div><div class=builder-tabs-wrap>`);
3806
+ var _tmpl$11 = /* @__PURE__ */ template(`<div>`);
3807
+ var _tmpl$26 = /* @__PURE__ */ template(`<div><div class=builder-tabs-wrap>`);
3357
3808
  var _tmpl$33 = /* @__PURE__ */ template(`<span>`);
3358
3809
  function Tabs(props) {
3359
3810
  const [activeTab, setActiveTab] = createSignal(props.defaultActiveTab ? props.defaultActiveTab - 1 : 0);
@@ -3368,7 +3819,7 @@ function Tabs(props) {
3368
3819
  }
3369
3820
  }
3370
3821
  return (() => {
3371
- const _el$ = _tmpl$25(), _el$2 = _el$.firstChild;
3822
+ const _el$ = _tmpl$26(), _el$2 = _el$.firstChild;
3372
3823
  _el$2.style.setProperty("display", "flex");
3373
3824
  _el$2.style.setProperty("flex-direction", "row");
3374
3825
  _el$2.style.setProperty("overflow", "auto");
@@ -3420,7 +3871,7 @@ function Tabs(props) {
3420
3871
  return activeTabContent(activeTab());
3421
3872
  },
3422
3873
  get children() {
3423
- const _el$3 = _tmpl$9();
3874
+ const _el$3 = _tmpl$11();
3424
3875
  insert(_el$3, createComponent(blocks_default, {
3425
3876
  get parent() {
3426
3877
  return props.builderBlock.id;
@@ -3452,7 +3903,7 @@ var tabs_default = Tabs;
3452
3903
  delegateEvents(["click"]);
3453
3904
 
3454
3905
  // src/blocks/text/component-info.ts
3455
- var componentInfo10 = {
3906
+ var componentInfo11 = {
3456
3907
  shouldReceiveBuilderProps: {
3457
3908
  builderBlock: TARGET === "reactNative" ? true : false,
3458
3909
  builderContext: true
@@ -3475,10 +3926,10 @@ var componentInfo10 = {
3475
3926
  textAlign: "center"
3476
3927
  }
3477
3928
  };
3478
- var _tmpl$10 = /* @__PURE__ */ template(`<div class=builder-text>`);
3929
+ var _tmpl$12 = /* @__PURE__ */ template(`<div class=builder-text>`);
3479
3930
  function Text(props) {
3480
3931
  return (() => {
3481
- const _el$ = _tmpl$10();
3932
+ const _el$ = _tmpl$12();
3482
3933
  _el$.style.setProperty("outline", "none");
3483
3934
  effect(() => _el$.innerHTML = props.text?.toString() || "");
3484
3935
  return _el$;
@@ -3487,7 +3938,7 @@ function Text(props) {
3487
3938
  var text_default = Text;
3488
3939
 
3489
3940
  // src/blocks/custom-code/component-info.ts
3490
- var componentInfo11 = {
3941
+ var componentInfo12 = {
3491
3942
  name: "Custom Code",
3492
3943
  static: true,
3493
3944
  requiredPermissions: ["editCode"],
@@ -3510,7 +3961,7 @@ var componentInfo11 = {
3510
3961
  advanced: true
3511
3962
  }]
3512
3963
  };
3513
- var _tmpl$11 = /* @__PURE__ */ template(`<div>`);
3964
+ var _tmpl$13 = /* @__PURE__ */ template(`<div>`);
3514
3965
  function CustomCode(props) {
3515
3966
  const [scriptsInserted, setScriptsInserted] = createSignal([]);
3516
3967
  const [scriptsRun, setScriptsRun] = createSignal([]);
@@ -3544,7 +3995,7 @@ function CustomCode(props) {
3544
3995
  }
3545
3996
  });
3546
3997
  return (() => {
3547
- const _el$ = _tmpl$11();
3998
+ const _el$ = _tmpl$13();
3548
3999
  const _ref$ = elementRef;
3549
4000
  typeof _ref$ === "function" ? use(_ref$, _el$) : elementRef = _el$;
3550
4001
  effect((_p$) => {
@@ -3562,7 +4013,7 @@ function CustomCode(props) {
3562
4013
  var custom_code_default = CustomCode;
3563
4014
 
3564
4015
  // src/blocks/embed/component-info.ts
3565
- var componentInfo12 = {
4016
+ var componentInfo13 = {
3566
4017
  name: "Embed",
3567
4018
  static: true,
3568
4019
  inputs: [{
@@ -3584,7 +4035,7 @@ var SCRIPT_MIME_TYPES = ["text/javascript", "application/javascript", "applicati
3584
4035
  var isJsScript = (script) => SCRIPT_MIME_TYPES.includes(script.type);
3585
4036
 
3586
4037
  // src/blocks/embed/embed.tsx
3587
- var _tmpl$12 = /* @__PURE__ */ template(`<div class=builder-embed>`);
4038
+ var _tmpl$14 = /* @__PURE__ */ template(`<div class=builder-embed>`);
3588
4039
  function Embed(props) {
3589
4040
  const [scriptsInserted, setScriptsInserted] = createSignal([]);
3590
4041
  const [scriptsRun, setScriptsRun] = createSignal([]);
@@ -3621,7 +4072,7 @@ function Embed(props) {
3621
4072
  }
3622
4073
  createEffect(on(() => [onUpdateFn_0_elem(), onUpdateFn_0_ranInitFn__()], onUpdateFn_0));
3623
4074
  return (() => {
3624
- const _el$ = _tmpl$12();
4075
+ const _el$ = _tmpl$14();
3625
4076
  const _ref$ = elem;
3626
4077
  typeof _ref$ === "function" ? use(_ref$, _el$) : elem = _el$;
3627
4078
  effect(() => _el$.innerHTML = props.content);
@@ -3631,7 +4082,7 @@ function Embed(props) {
3631
4082
  var embed_default = Embed;
3632
4083
 
3633
4084
  // src/blocks/form/form/component-info.ts
3634
- var componentInfo13 = {
4085
+ var componentInfo14 = {
3635
4086
  name: "Form:Form",
3636
4087
  // editableTags: ['builder-form-error']
3637
4088
  defaults: {
@@ -3887,8 +4338,8 @@ function logFetch(url) {
3887
4338
  }
3888
4339
 
3889
4340
  // src/blocks/form/form/form.tsx
3890
- var _tmpl$13 = /* @__PURE__ */ template(`<pre class="builder-form-error-text pre-04a43b72">`);
3891
- var _tmpl$26 = /* @__PURE__ */ template(`<form>`);
4341
+ var _tmpl$15 = /* @__PURE__ */ template(`<pre class="builder-form-error-text pre-04a43b72">`);
4342
+ var _tmpl$27 = /* @__PURE__ */ template(`<form>`);
3892
4343
  var _tmpl$34 = /* @__PURE__ */ template(`<style>.pre-04a43b72 {
3893
4344
  padding: 10px;
3894
4345
  color: red;
@@ -4081,7 +4532,7 @@ function FormComponent(props) {
4081
4532
  }
4082
4533
  let formRef;
4083
4534
  return [(() => {
4084
- const _el$ = _tmpl$26();
4535
+ const _el$ = _tmpl$27();
4085
4536
  _el$.addEventListener("submit", (event) => onSubmit(event));
4086
4537
  const _ref$ = formRef;
4087
4538
  typeof _ref$ === "function" ? use(_ref$, _el$) : formRef = _el$;
@@ -4137,7 +4588,7 @@ function FormComponent(props) {
4137
4588
  return memo(() => submissionState() === "error")() && responseData();
4138
4589
  },
4139
4590
  get children() {
4140
- const _el$2 = _tmpl$13();
4591
+ const _el$2 = _tmpl$15();
4141
4592
  insert(_el$2, () => JSON.stringify(responseData(), null, 2));
4142
4593
  return _el$2;
4143
4594
  }
@@ -4164,7 +4615,7 @@ function FormComponent(props) {
4164
4615
  var form_default = FormComponent;
4165
4616
 
4166
4617
  // src/blocks/form/input/component-info.ts
4167
- var componentInfo14 = {
4618
+ var componentInfo15 = {
4168
4619
  name: "Form:Input",
4169
4620
  image: "https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Fad6f37889d9e40bbbbc72cdb5875d6ca",
4170
4621
  inputs: [
@@ -4216,10 +4667,10 @@ var componentInfo14 = {
4216
4667
  borderColor: "#ccc"
4217
4668
  }
4218
4669
  };
4219
- var _tmpl$14 = /* @__PURE__ */ template(`<input>`);
4670
+ var _tmpl$16 = /* @__PURE__ */ template(`<input>`);
4220
4671
  function FormInputComponent(props) {
4221
4672
  return (() => {
4222
- const _el$ = _tmpl$14();
4673
+ const _el$ = _tmpl$16();
4223
4674
  spread(_el$, mergeProps({}, () => props.attributes, {
4224
4675
  get key() {
4225
4676
  return isEditing() && props.defaultValue ? props.defaultValue : "default-key";
@@ -4249,7 +4700,7 @@ function FormInputComponent(props) {
4249
4700
  var input_default = FormInputComponent;
4250
4701
 
4251
4702
  // src/blocks/form/select/component-info.ts
4252
- var componentInfo15 = {
4703
+ var componentInfo16 = {
4253
4704
  name: "Form:Select",
4254
4705
  image: "https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F83acca093fb24aaf94dee136e9a4b045",
4255
4706
  defaultStyles: {
@@ -4292,11 +4743,11 @@ var componentInfo15 = {
4292
4743
  static: true,
4293
4744
  noWrap: true
4294
4745
  };
4295
- var _tmpl$15 = /* @__PURE__ */ template(`<select>`);
4296
- var _tmpl$27 = /* @__PURE__ */ template(`<option>`);
4746
+ var _tmpl$17 = /* @__PURE__ */ template(`<select>`);
4747
+ var _tmpl$28 = /* @__PURE__ */ template(`<option>`);
4297
4748
  function SelectComponent(props) {
4298
4749
  return (() => {
4299
- const _el$ = _tmpl$15();
4750
+ const _el$ = _tmpl$17();
4300
4751
  spread(_el$, mergeProps({}, () => props.attributes, {
4301
4752
  get value() {
4302
4753
  return props.value;
@@ -4321,7 +4772,7 @@ function SelectComponent(props) {
4321
4772
  children: (option, _index) => {
4322
4773
  const index = _index();
4323
4774
  return (() => {
4324
- const _el$2 = _tmpl$27();
4775
+ const _el$2 = _tmpl$28();
4325
4776
  insert(_el$2, () => option.name || option.value);
4326
4777
  effect(() => setAttribute(_el$2, "key", `${option.name}-${index}`));
4327
4778
  effect(() => _el$2.value = option.value);
@@ -4335,7 +4786,7 @@ function SelectComponent(props) {
4335
4786
  var select_default = SelectComponent;
4336
4787
 
4337
4788
  // src/blocks/form/submit-button/component-info.ts
4338
- var componentInfo16 = {
4789
+ var componentInfo17 = {
4339
4790
  name: "Form:SubmitButton",
4340
4791
  image: "https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Fdf2820ffed1f4349a94c40b3221f5b98",
4341
4792
  defaultStyles: {
@@ -4361,10 +4812,10 @@ var componentInfo16 = {
4361
4812
  // TODO: defaultChildren
4362
4813
  // canHaveChildren: true,
4363
4814
  };
4364
- var _tmpl$16 = /* @__PURE__ */ template(`<button type=submit>`);
4815
+ var _tmpl$18 = /* @__PURE__ */ template(`<button type=submit>`);
4365
4816
  function SubmitButton(props) {
4366
4817
  return (() => {
4367
- const _el$ = _tmpl$16();
4818
+ const _el$ = _tmpl$18();
4368
4819
  spread(_el$, mergeProps({}, () => props.attributes), false, true);
4369
4820
  insert(_el$, () => props.text);
4370
4821
  return _el$;
@@ -4373,7 +4824,7 @@ function SubmitButton(props) {
4373
4824
  var submit_button_default = SubmitButton;
4374
4825
 
4375
4826
  // src/blocks/form/textarea/component-info.ts
4376
- var componentInfo17 = {
4827
+ var componentInfo18 = {
4377
4828
  name: "Form:TextArea",
4378
4829
  image: "https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Ff74a2f3de58c4c3e939204e5b6b8f6c3",
4379
4830
  inputs: [{
@@ -4410,10 +4861,10 @@ var componentInfo17 = {
4410
4861
  static: true,
4411
4862
  noWrap: true
4412
4863
  };
4413
- var _tmpl$17 = /* @__PURE__ */ template(`<textarea>`);
4864
+ var _tmpl$19 = /* @__PURE__ */ template(`<textarea>`);
4414
4865
  function Textarea(props) {
4415
4866
  return (() => {
4416
- const _el$ = _tmpl$17();
4867
+ const _el$ = _tmpl$19();
4417
4868
  spread(_el$, mergeProps({}, () => props.attributes, {
4418
4869
  get placeholder() {
4419
4870
  return props.placeholder;
@@ -4437,7 +4888,7 @@ function Textarea(props) {
4437
4888
  var textarea_default = Textarea;
4438
4889
 
4439
4890
  // src/blocks/img/component-info.ts
4440
- var componentInfo18 = {
4891
+ var componentInfo19 = {
4441
4892
  // friendlyName?
4442
4893
  name: "Raw:Img",
4443
4894
  hideFromInsertMenu: true,
@@ -4452,10 +4903,10 @@ var componentInfo18 = {
4452
4903
  noWrap: true,
4453
4904
  static: true
4454
4905
  };
4455
- var _tmpl$18 = /* @__PURE__ */ template(`<img>`);
4906
+ var _tmpl$20 = /* @__PURE__ */ template(`<img>`);
4456
4907
  function ImgComponent(props) {
4457
4908
  return (() => {
4458
- const _el$ = _tmpl$18();
4909
+ const _el$ = _tmpl$20();
4459
4910
  spread(_el$, mergeProps({
4460
4911
  get style() {
4461
4912
  return {
@@ -4479,7 +4930,7 @@ function ImgComponent(props) {
4479
4930
  var img_default = ImgComponent;
4480
4931
 
4481
4932
  // src/blocks/video/component-info.ts
4482
- var componentInfo19 = {
4933
+ var componentInfo20 = {
4483
4934
  name: "Video",
4484
4935
  canHaveChildren: true,
4485
4936
  defaultStyles: {
@@ -4564,8 +5015,8 @@ var componentInfo19 = {
4564
5015
  builderBlock: true
4565
5016
  }
4566
5017
  };
4567
- var _tmpl$19 = /* @__PURE__ */ template(`<source type=video/mp4>`);
4568
- var _tmpl$28 = /* @__PURE__ */ template(`<div>`);
5018
+ var _tmpl$21 = /* @__PURE__ */ template(`<source type=video/mp4>`);
5019
+ var _tmpl$29 = /* @__PURE__ */ template(`<div>`);
4569
5020
  var _tmpl$35 = /* @__PURE__ */ template(`<div><video class=builder-video>`);
4570
5021
  function Video(props) {
4571
5022
  const videoProps = createMemo(() => {
@@ -4626,7 +5077,7 @@ function Video(props) {
4626
5077
  return !props.lazyLoad;
4627
5078
  },
4628
5079
  get children() {
4629
- const _el$3 = _tmpl$19();
5080
+ const _el$3 = _tmpl$21();
4630
5081
  effect(() => setAttribute(_el$3, "src", props.video));
4631
5082
  return _el$3;
4632
5083
  }
@@ -4636,7 +5087,7 @@ function Video(props) {
4636
5087
  return props.aspectRatio && !(props.fitContent && props.builderBlock?.children?.length);
4637
5088
  },
4638
5089
  get children() {
4639
- const _el$4 = _tmpl$28();
5090
+ const _el$4 = _tmpl$29();
4640
5091
  _el$4.style.setProperty("width", "100%");
4641
5092
  _el$4.style.setProperty("pointer-events", "none");
4642
5093
  _el$4.style.setProperty("font-size", "0px");
@@ -4649,7 +5100,7 @@ function Video(props) {
4649
5100
  return props.builderBlock?.children?.length && props.fitContent;
4650
5101
  },
4651
5102
  get children() {
4652
- const _el$5 = _tmpl$28();
5103
+ const _el$5 = _tmpl$29();
4653
5104
  _el$5.style.setProperty("display", "flex");
4654
5105
  _el$5.style.setProperty("flex-direction", "column");
4655
5106
  _el$5.style.setProperty("align-items", "stretch");
@@ -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$6 = _tmpl$28();
5116
+ const _el$6 = _tmpl$29();
4666
5117
  _el$6.style.setProperty("pointer-events", "none");
4667
5118
  _el$6.style.setProperty("display", "flex");
4668
5119
  _el$6.style.setProperty("flex-direction", "column");
@@ -4684,31 +5135,31 @@ var video_default = Video;
4684
5135
  // src/constants/extra-components.ts
4685
5136
  var getExtraComponents = () => [{
4686
5137
  component: custom_code_default,
4687
- ...componentInfo11
5138
+ ...componentInfo12
4688
5139
  }, {
4689
5140
  component: embed_default,
4690
- ...componentInfo12
5141
+ ...componentInfo13
4691
5142
  }, ...TARGET === "rsc" ? [] : [{
4692
5143
  component: form_default,
4693
- ...componentInfo13
5144
+ ...componentInfo14
4694
5145
  }, {
4695
5146
  component: input_default,
4696
- ...componentInfo14
5147
+ ...componentInfo15
4697
5148
  }, {
4698
5149
  component: submit_button_default,
4699
- ...componentInfo16
5150
+ ...componentInfo17
4700
5151
  }, {
4701
5152
  component: select_default,
4702
- ...componentInfo15
5153
+ ...componentInfo16
4703
5154
  }, {
4704
5155
  component: textarea_default,
4705
- ...componentInfo17
5156
+ ...componentInfo18
4706
5157
  }], {
4707
5158
  component: img_default,
4708
- ...componentInfo18
5159
+ ...componentInfo19
4709
5160
  }, {
4710
5161
  component: video_default,
4711
- ...componentInfo19
5162
+ ...componentInfo20
4712
5163
  }];
4713
5164
 
4714
5165
  // src/constants/builder-registered-components.ts
@@ -4726,19 +5177,22 @@ var getDefaultRegisteredComponents = () => [{
4726
5177
  ...componentInfo5
4727
5178
  }, {
4728
5179
  component: section_default,
4729
- ...componentInfo6
5180
+ ...componentInfo7
4730
5181
  }, {
4731
5182
  component: slot_default,
4732
- ...componentInfo7
5183
+ ...componentInfo8
4733
5184
  }, {
4734
5185
  component: symbol_default,
4735
- ...componentInfo8
5186
+ ...componentInfo9
4736
5187
  }, {
4737
5188
  component: text_default,
4738
- ...componentInfo10
4739
- }, ...TARGET === "rsc" ? [] : [{
5189
+ ...componentInfo11
5190
+ }, ...TARGET === "react" ? [{
5191
+ component: personalization_container_default,
5192
+ ...componentInfo6
5193
+ }] : [], ...TARGET === "rsc" ? [] : [{
4740
5194
  component: tabs_default,
4741
- ...componentInfo9
5195
+ ...componentInfo10
4742
5196
  }, {
4743
5197
  component: accordion_default,
4744
5198
  ...componentInfo
@@ -4776,7 +5230,7 @@ var getVariants = (content) => Object.values(content?.variations || {}).map((var
4776
5230
  testVariationId: variant.id,
4777
5231
  id: content?.id
4778
5232
  }));
4779
- var checkShouldRenderVariants = ({
5233
+ var checkShouldRenderVariants2 = ({
4780
5234
  canTrack,
4781
5235
  content
4782
5236
  }) => {
@@ -4809,25 +5263,6 @@ var getUpdateVariantVisibilityScript = ({
4809
5263
  }) => `window.${UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME}(
4810
5264
  "${variationId}", "${contentId}", ${isHydrationTarget}
4811
5265
  )`;
4812
- var _tmpl$20 = /* @__PURE__ */ template(`<script>`);
4813
- function InlinedScript(props) {
4814
- return (() => {
4815
- const _el$ = _tmpl$20();
4816
- effect((_p$) => {
4817
- const _v$ = props.scriptStr, _v$2 = props.id, _v$3 = props.nonce || "";
4818
- _v$ !== _p$._v$ && (_el$.innerHTML = _p$._v$ = _v$);
4819
- _v$2 !== _p$._v$2 && setAttribute(_el$, "data-id", _p$._v$2 = _v$2);
4820
- _v$3 !== _p$._v$3 && setAttribute(_el$, "nonce", _p$._v$3 = _v$3);
4821
- return _p$;
4822
- }, {
4823
- _v$: void 0,
4824
- _v$2: void 0,
4825
- _v$3: void 0
4826
- });
4827
- return _el$;
4828
- })();
4829
- }
4830
- var inlined_script_default = InlinedScript;
4831
5266
 
4832
5267
  // src/helpers/preview-lru-cache/get.ts
4833
5268
  function getPreviewContent(_searchParams) {
@@ -4835,7 +5270,7 @@ function getPreviewContent(_searchParams) {
4835
5270
  }
4836
5271
 
4837
5272
  // src/constants/sdk-version.ts
4838
- var SDK_VERSION = "3.0.5";
5273
+ var SDK_VERSION = "3.0.6";
4839
5274
 
4840
5275
  // src/helpers/sdk-headers.ts
4841
5276
  var getSdkHeaders = () => ({
@@ -5130,16 +5565,6 @@ async function fetchEntries(options) {
5130
5565
  return _processContentResult(options, content);
5131
5566
  }
5132
5567
 
5133
- // src/functions/is-previewing.ts
5134
- function isPreviewing(_search) {
5135
- const search = _search || (isBrowser() ? window.location.search : void 0);
5136
- if (!search) {
5137
- return false;
5138
- }
5139
- const normalizedSearch = getSearchString(search);
5140
- return Boolean(normalizedSearch.indexOf("builder.preview=") !== -1);
5141
- }
5142
-
5143
5568
  // src/helpers/uuid.ts
5144
5569
  function uuidv4() {
5145
5570
  return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(c) {
@@ -5462,7 +5887,8 @@ var setupBrowserForEditing = (options = {}) => {
5462
5887
  // Supports builder-model="..." attribute which is needed to
5463
5888
  // scope our '+ add block' button styling
5464
5889
  supportsAddBlockScoping: true,
5465
- supportsCustomBreakpoints: true
5890
+ supportsCustomBreakpoints: true,
5891
+ blockLevelPersonalization: true
5466
5892
  }
5467
5893
  }, "*");
5468
5894
  window.parent?.postMessage({
@@ -6198,7 +6624,7 @@ var content_default = ContentComponent;
6198
6624
 
6199
6625
  // src/components/content-variants/content-variants.tsx
6200
6626
  function ContentVariants(props) {
6201
- const [shouldRenderVariants, setShouldRenderVariants] = createSignal(checkShouldRenderVariants({
6627
+ const [shouldRenderVariants, setShouldRenderVariants] = createSignal(checkShouldRenderVariants2({
6202
6628
  canTrack: getDefaultCanTrack(props.canTrack),
6203
6629
  content: props.content
6204
6630
  }));
@@ -6424,7 +6850,7 @@ var fetchSymbolContent = async ({
6424
6850
  };
6425
6851
 
6426
6852
  // src/blocks/symbol/symbol.tsx
6427
- var _tmpl$21 = /* @__PURE__ */ template(`<div>`);
6853
+ var _tmpl$30 = /* @__PURE__ */ template(`<div>`);
6428
6854
  function Symbol(props) {
6429
6855
  const [contentToUse, setContentToUse] = createSignal(props.symbol?.content);
6430
6856
  const blocksWrapper = createMemo(() => {
@@ -6456,7 +6882,7 @@ function Symbol(props) {
6456
6882
  }
6457
6883
  createEffect(on(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
6458
6884
  return (() => {
6459
- const _el$ = _tmpl$21();
6885
+ const _el$ = _tmpl$30();
6460
6886
  spread(_el$, mergeProps({
6461
6887
  get ["class"]() {
6462
6888
  return className();
@@ -6548,4 +6974,4 @@ var fetchBuilderProps = async (_args) => {
6548
6974
  };
6549
6975
  };
6550
6976
 
6551
- 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 };
6977
+ 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 };