@uniformdev/canvas 20.35.0 → 20.35.1-alpha.210

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/index.mjs CHANGED
@@ -1081,6 +1081,11 @@ var CANVAS_PERSONALIZE_SLOT = "pz";
1081
1081
  var CANVAS_TEST_SLOT = "test";
1082
1082
  var CANVAS_LOCALIZATION_SLOT = "localized";
1083
1083
  var CANVAS_SLOT_SECTION_SLOT = "$slotSectionItems";
1084
+ var CANVAS_SLOT_SECTION_NAME_PARAM = "name";
1085
+ var CANVAS_SLOT_SECTION_MIN_PARAM = "min";
1086
+ var CANVAS_SLOT_SECTION_MAX_PARAM = "max";
1087
+ var CANVAS_SLOT_SECTION_GROUP_TYPE_PARAM = "groupType";
1088
+ var CANVAS_SLOT_SECTION_SPECIFIC_PARAM = "specific";
1084
1089
  var CANVAS_DRAFT_STATE = 0;
1085
1090
  var CANVAS_PUBLISHED_STATE = 64;
1086
1091
  var CANVAS_EDITOR_STATE = 63;
@@ -1091,6 +1096,9 @@ var CANVAS_PERSONALIZATION_ALGORITHM_TYPE = "pzAlgorithm";
1091
1096
  var CANVAS_PERSONALIZATION_TAKE_PARAM = "count";
1092
1097
  var CANVAS_TEST_VARIANT_PARAM = "$tstVrnt";
1093
1098
  var CANVAS_ENRICHMENT_TAG_PARAM = "$enr";
1099
+ var CANVAS_INTERNAL_PARAM_PREFIX = "$internal_";
1100
+ var CANVAS_COMPONENT_DISPLAY_NAME_PARAM = `${CANVAS_INTERNAL_PARAM_PREFIX}displayName`;
1101
+ var CANVAS_HYPOTHESIS_PARAM = `${CANVAS_INTERNAL_PARAM_PREFIX}hypothesis`;
1094
1102
  var CANVAS_CONTEXTUAL_EDITING_PARAM = "$contextualEditing";
1095
1103
  var SECRET_QUERY_STRING_PARAM = "secret";
1096
1104
  var IN_CONTEXT_EDITOR_QUERY_STRING_PARAM = "is_incontext_editing_mode";
@@ -2513,10 +2521,55 @@ var EntityReleasesClient = class extends ApiClient6 {
2513
2521
  }
2514
2522
  };
2515
2523
 
2516
- // src/LocaleClient.ts
2524
+ // src/IntegrationPropertyEditorsClient.ts
2517
2525
  import { ApiClient as ApiClient7 } from "@uniformdev/context/api";
2526
+ var _baseUrl;
2527
+ var _IntegrationPropertyEditorsClient = class _IntegrationPropertyEditorsClient extends ApiClient7 {
2528
+ constructor(options) {
2529
+ super(options);
2530
+ this.teamId = options.teamId;
2531
+ }
2532
+ /**
2533
+ * Gets a list of property type and hook names for the current team, including public integrations' hooks.
2534
+ */
2535
+ get(options) {
2536
+ const fetchUri = this.createUrl(__privateGet(_IntegrationPropertyEditorsClient, _baseUrl), {
2537
+ ...options,
2538
+ teamId: this.teamId
2539
+ });
2540
+ return this.apiClient(fetchUri);
2541
+ }
2542
+ /**
2543
+ * Creates or updates a custom AI property editor on a Mesh app.
2544
+ */
2545
+ async deploy(body) {
2546
+ const fetchUri = this.createUrl(__privateGet(_IntegrationPropertyEditorsClient, _baseUrl));
2547
+ await this.apiClient(fetchUri, {
2548
+ method: "PUT",
2549
+ body: JSON.stringify({ ...body, teamId: this.teamId }),
2550
+ expectNoContent: true
2551
+ });
2552
+ }
2553
+ /**
2554
+ * Removes a custom AI property editor from a Mesh app.
2555
+ */
2556
+ async delete(body) {
2557
+ const fetchUri = this.createUrl(__privateGet(_IntegrationPropertyEditorsClient, _baseUrl));
2558
+ await this.apiClient(fetchUri, {
2559
+ method: "DELETE",
2560
+ body: JSON.stringify({ ...body, teamId: this.teamId }),
2561
+ expectNoContent: true
2562
+ });
2563
+ }
2564
+ };
2565
+ _baseUrl = new WeakMap();
2566
+ __privateAdd(_IntegrationPropertyEditorsClient, _baseUrl, "/api/v1/integration-property-editors");
2567
+ var IntegrationPropertyEditorsClient = _IntegrationPropertyEditorsClient;
2568
+
2569
+ // src/LocaleClient.ts
2570
+ import { ApiClient as ApiClient8 } from "@uniformdev/context/api";
2518
2571
  var localesUrl = "/api/v1/locales";
2519
- var LocaleClient = class extends ApiClient7 {
2572
+ var LocaleClient = class extends ApiClient8 {
2520
2573
  constructor(options) {
2521
2574
  super(options);
2522
2575
  }
@@ -2601,6 +2654,9 @@ var isUpdatePreviewSettingsMessage = (message) => {
2601
2654
  var isUpdateFeatureFlagsMessage = (message) => {
2602
2655
  return message.type === "update-feature-flags";
2603
2656
  };
2657
+ var isUpdateAiActionsMessage = (message) => {
2658
+ return message.type === "update-ai-actions";
2659
+ };
2604
2660
  var isUpdateContextualEditingStateInternalMessage = (message) => {
2605
2661
  return message.type === "update-contextual-editing-state-internal";
2606
2662
  };
@@ -2632,7 +2688,15 @@ var createCanvasChannel = ({
2632
2688
  let handlerCounter = 0;
2633
2689
  const handlers = {};
2634
2690
  const broadcastToItems = [...broadcastTo];
2691
+ const addBroadcastTarget = (window2) => {
2692
+ if (!broadcastToItems.includes(window2)) {
2693
+ broadcastToItems.push(window2);
2694
+ }
2695
+ };
2635
2696
  const postMessage = (message) => {
2697
+ if (message.type !== "report-rendered-compositions") {
2698
+ console.log("[temp-debug-channel-SEND]", message.type, message);
2699
+ }
2636
2700
  broadcastToItems.forEach((item) => item == null ? void 0 : item.postMessage(JSON.stringify(message), "*"));
2637
2701
  for (const handlerId in handlers) {
2638
2702
  const handler = handlers[handlerId];
@@ -2821,6 +2885,13 @@ var createCanvasChannel = ({
2821
2885
  };
2822
2886
  postMessage(message);
2823
2887
  };
2888
+ const updateAiActions = (options) => {
2889
+ const message = {
2890
+ ...options,
2891
+ type: "update-ai-actions"
2892
+ };
2893
+ postMessage(message);
2894
+ };
2824
2895
  const contextStorageUpdated = (options) => {
2825
2896
  const message = {
2826
2897
  ...options,
@@ -2843,6 +2914,9 @@ var createCanvasChannel = ({
2843
2914
  if (!message) {
2844
2915
  return;
2845
2916
  }
2917
+ if (message.type !== "report-rendered-compositions") {
2918
+ console.log("[temp-debug-channel] RECV:", message.type, message);
2919
+ }
2846
2920
  for (const handlerId in handlers) {
2847
2921
  const handler = handlers[handlerId];
2848
2922
  if (handler.types.includes(message.type)) {
@@ -2855,9 +2929,10 @@ var createCanvasChannel = ({
2855
2929
  listenTo.forEach((item) => item.removeEventListener("message", messageEventListener));
2856
2930
  };
2857
2931
  return {
2858
- broadcastTo,
2932
+ broadcastTo: broadcastToItems,
2859
2933
  ready,
2860
2934
  destroy,
2935
+ addBroadcastTarget,
2861
2936
  triggerComponentAction,
2862
2937
  selectComponent,
2863
2938
  updateComposition,
@@ -2870,6 +2945,7 @@ var createCanvasChannel = ({
2870
2945
  triggerCompositionAction,
2871
2946
  updatePreviewSettings,
2872
2947
  updateFeatureFlags,
2948
+ updateAiActions,
2873
2949
  updateContextualEditingStateInternal,
2874
2950
  selectParameter,
2875
2951
  openParameterEditor,
@@ -2885,10 +2961,10 @@ var createCanvasChannel = ({
2885
2961
  };
2886
2962
 
2887
2963
  // src/PreviewClient.ts
2888
- import { ApiClient as ApiClient8 } from "@uniformdev/context/api";
2964
+ import { ApiClient as ApiClient9 } from "@uniformdev/context/api";
2889
2965
  var previewUrlsUrl = "/api/v1/preview-urls";
2890
2966
  var previewViewportsUrl = "/api/v1/preview-viewports";
2891
- var PreviewClient = class extends ApiClient8 {
2967
+ var PreviewClient = class extends ApiClient9 {
2892
2968
  constructor(options) {
2893
2969
  super(options);
2894
2970
  }
@@ -2951,9 +3027,9 @@ var PreviewClient = class extends ApiClient8 {
2951
3027
  };
2952
3028
 
2953
3029
  // src/ProjectClient.ts
2954
- import { ApiClient as ApiClient9 } from "@uniformdev/context/api";
3030
+ import { ApiClient as ApiClient10 } from "@uniformdev/context/api";
2955
3031
  var _url2;
2956
- var _ProjectClient = class _ProjectClient extends ApiClient9 {
3032
+ var _ProjectClient = class _ProjectClient extends ApiClient10 {
2957
3033
  constructor(options) {
2958
3034
  super({ ...options, bypassCache: true });
2959
3035
  }
@@ -2985,9 +3061,9 @@ __privateAdd(_ProjectClient, _url2, "/api/v1/project");
2985
3061
  var ProjectClient = _ProjectClient;
2986
3062
 
2987
3063
  // src/PromptClient.ts
2988
- import { ApiClient as ApiClient10 } from "@uniformdev/context/api";
3064
+ import { ApiClient as ApiClient11 } from "@uniformdev/context/api";
2989
3065
  var PromptsUrl = "/api/v1/prompts";
2990
- var PromptClient = class extends ApiClient10 {
3066
+ var PromptClient = class extends ApiClient11 {
2991
3067
  constructor(options) {
2992
3068
  super(options);
2993
3069
  }
@@ -3018,9 +3094,9 @@ var PromptClient = class extends ApiClient10 {
3018
3094
  };
3019
3095
 
3020
3096
  // src/RelationshipClient.ts
3021
- import { ApiClient as ApiClient11 } from "@uniformdev/context/api";
3097
+ import { ApiClient as ApiClient12 } from "@uniformdev/context/api";
3022
3098
  var RELATIONSHIPS_URL = "/api/v1/relationships";
3023
- var RelationshipClient = class extends ApiClient11 {
3099
+ var RelationshipClient = class extends ApiClient12 {
3024
3100
  constructor(options) {
3025
3101
  super(options);
3026
3102
  this.get = async (options) => {
@@ -3032,9 +3108,9 @@ var RelationshipClient = class extends ApiClient11 {
3032
3108
  };
3033
3109
 
3034
3110
  // src/ReleaseClient.ts
3035
- import { ApiClient as ApiClient12 } from "@uniformdev/context/api";
3111
+ import { ApiClient as ApiClient13 } from "@uniformdev/context/api";
3036
3112
  var releasesUrl = "/api/v1/releases";
3037
- var ReleaseClient = class extends ApiClient12 {
3113
+ var ReleaseClient = class extends ApiClient13 {
3038
3114
  constructor(options) {
3039
3115
  super(options);
3040
3116
  }
@@ -3074,9 +3150,9 @@ var ReleaseClient = class extends ApiClient12 {
3074
3150
  };
3075
3151
 
3076
3152
  // src/ReleaseContentsClient.ts
3077
- import { ApiClient as ApiClient13 } from "@uniformdev/context/api";
3153
+ import { ApiClient as ApiClient14 } from "@uniformdev/context/api";
3078
3154
  var releaseContentsUrl2 = "/api/v1/release-contents";
3079
- var ReleaseContentsClient = class extends ApiClient13 {
3155
+ var ReleaseContentsClient = class extends ApiClient14 {
3080
3156
  constructor(options) {
3081
3157
  super(options);
3082
3158
  }
@@ -3098,9 +3174,9 @@ var ReleaseContentsClient = class extends ApiClient13 {
3098
3174
  };
3099
3175
 
3100
3176
  // src/RouteClient.ts
3101
- import { ApiClient as ApiClient14 } from "@uniformdev/context/api";
3177
+ import { ApiClient as ApiClient15 } from "@uniformdev/context/api";
3102
3178
  var ROUTE_URL = "/api/v1/route";
3103
- var RouteClient = class extends ApiClient14 {
3179
+ var RouteClient = class extends ApiClient15 {
3104
3180
  constructor(options) {
3105
3181
  var _a;
3106
3182
  if (!options.limitPolicy) {
@@ -3123,6 +3199,63 @@ var RouteClient = class extends ApiClient14 {
3123
3199
  // src/types/locales.ts
3124
3200
  var LOCALE_DYNAMIC_INPUT_NAME = "locale";
3125
3201
 
3202
+ // src/utils/assetConfig.ts
3203
+ var mergeAssetConfigWithDefaults = (config) => {
3204
+ var _a;
3205
+ return {
3206
+ ...config,
3207
+ // For backwards compatibility reasons undefined represents restriction to
3208
+ // image types
3209
+ allowedTypes: (_a = config.allowedTypes) != null ? _a : ["image"]
3210
+ };
3211
+ };
3212
+
3213
+ // src/utils/autoFixParameterGroups.ts
3214
+ function autoFixParameterGroups(properties) {
3215
+ var _a;
3216
+ const remainingGroups = (_a = properties.filter((param) => param.type === "group")) != null ? _a : [];
3217
+ if (remainingGroups.length === 0) {
3218
+ return false;
3219
+ }
3220
+ let result = false;
3221
+ while (remainingGroups.length > 0) {
3222
+ const group = remainingGroups.shift();
3223
+ const groupParamsConfig = group.typeConfig && typeof group.typeConfig === "object" && "childrenParams" in group.typeConfig && Array.isArray(group.typeConfig.childrenParams) ? group.typeConfig.childrenParams : [];
3224
+ const expectedParamsToFindFollowingGroup = new Set(groupParamsConfig);
3225
+ const groupStartIndex = properties.findIndex((param) => param.id === group.id);
3226
+ const groupItemsCount = expectedParamsToFindFollowingGroup.size;
3227
+ for (let i = groupStartIndex + 1; i <= groupStartIndex + groupItemsCount; i++) {
3228
+ const param = properties[i];
3229
+ if (!param) {
3230
+ continue;
3231
+ }
3232
+ if (expectedParamsToFindFollowingGroup.has(param.id)) {
3233
+ expectedParamsToFindFollowingGroup.delete(param.id);
3234
+ } else {
3235
+ break;
3236
+ }
3237
+ }
3238
+ if (expectedParamsToFindFollowingGroup.size > 0) {
3239
+ const paramsToMove = Array.from(expectedParamsToFindFollowingGroup);
3240
+ let leadingGroupIndex = groupStartIndex + groupItemsCount - expectedParamsToFindFollowingGroup.size;
3241
+ for (const paramId of paramsToMove) {
3242
+ const paramIndex = properties.findIndex((param) => param.id === paramId);
3243
+ if (paramIndex !== -1) {
3244
+ const [param] = properties.splice(paramIndex, 1);
3245
+ if (paramIndex > leadingGroupIndex) {
3246
+ leadingGroupIndex++;
3247
+ }
3248
+ properties.splice(leadingGroupIndex, 0, param);
3249
+ } else {
3250
+ groupParamsConfig.splice(groupParamsConfig.indexOf(paramId), 1);
3251
+ }
3252
+ }
3253
+ result = true;
3254
+ }
3255
+ }
3256
+ return result;
3257
+ }
3258
+
3126
3259
  // src/utils/createApiEnhancer.ts
3127
3260
  var createUniformApiEnhancer = ({ apiUrl }) => {
3128
3261
  return async (message) => {
@@ -3252,7 +3385,8 @@ function mapSlotToTestVariations(slot) {
3252
3385
  return {
3253
3386
  ...v,
3254
3387
  id,
3255
- testDistribution: contextTag == null ? void 0 : contextTag.testDistribution
3388
+ testDistribution: contextTag == null ? void 0 : contextTag.testDistribution,
3389
+ control: contextTag == null ? void 0 : contextTag.control
3256
3390
  };
3257
3391
  });
3258
3392
  }
@@ -3417,12 +3551,12 @@ function handleRichTextNodeBinding(object, options) {
3417
3551
  import { ApiClientError as ApiClientError2 } from "@uniformdev/context/api";
3418
3552
 
3419
3553
  // src/.version.ts
3420
- var version = "20.35.0";
3554
+ var version = "20.44.0";
3421
3555
 
3422
3556
  // src/WorkflowClient.ts
3423
- import { ApiClient as ApiClient15 } from "@uniformdev/context/api";
3557
+ import { ApiClient as ApiClient16 } from "@uniformdev/context/api";
3424
3558
  var workflowsUrl = "/api/v1/workflows";
3425
- var WorkflowClient = class extends ApiClient15 {
3559
+ var WorkflowClient = class extends ApiClient16 {
3426
3560
  constructor(options) {
3427
3561
  super(options);
3428
3562
  }
@@ -3468,11 +3602,14 @@ export {
3468
3602
  BatchEntry,
3469
3603
  BlockFormatError,
3470
3604
  CANVAS_BLOCK_PARAM_TYPE,
3605
+ CANVAS_COMPONENT_DISPLAY_NAME_PARAM,
3471
3606
  CANVAS_CONTEXTUAL_EDITING_PARAM,
3472
3607
  CANVAS_DRAFT_STATE,
3473
3608
  CANVAS_EDITOR_STATE,
3474
3609
  CANVAS_ENRICHMENT_TAG_PARAM,
3610
+ CANVAS_HYPOTHESIS_PARAM,
3475
3611
  CANVAS_INTENT_TAG_PARAM,
3612
+ CANVAS_INTERNAL_PARAM_PREFIX,
3476
3613
  CANVAS_LOCALE_TAG_PARAM,
3477
3614
  CANVAS_LOCALIZATION_SLOT,
3478
3615
  CANVAS_LOCALIZATION_TYPE,
@@ -3484,7 +3621,12 @@ export {
3484
3621
  CANVAS_PERSONALIZE_SLOT,
3485
3622
  CANVAS_PERSONALIZE_TYPE,
3486
3623
  CANVAS_PUBLISHED_STATE,
3624
+ CANVAS_SLOT_SECTION_GROUP_TYPE_PARAM,
3625
+ CANVAS_SLOT_SECTION_MAX_PARAM,
3626
+ CANVAS_SLOT_SECTION_MIN_PARAM,
3627
+ CANVAS_SLOT_SECTION_NAME_PARAM,
3487
3628
  CANVAS_SLOT_SECTION_SLOT,
3629
+ CANVAS_SLOT_SECTION_SPECIFIC_PARAM,
3488
3630
  CANVAS_SLOT_SECTION_TYPE,
3489
3631
  CANVAS_TEST_SLOT,
3490
3632
  CANVAS_TEST_TYPE,
@@ -3516,6 +3658,7 @@ export {
3516
3658
  IN_CONTEXT_EDITOR_PLAYGROUND_QUERY_STRING_PARAM,
3517
3659
  IN_CONTEXT_EDITOR_QUERY_STRING_PARAM,
3518
3660
  IS_RENDERED_BY_UNIFORM_ATTRIBUTE,
3661
+ IntegrationPropertyEditorsClient,
3519
3662
  LOCALE_DYNAMIC_INPUT_NAME,
3520
3663
  LocaleClient,
3521
3664
  PLACEHOLDER_ID,
@@ -3532,6 +3675,7 @@ export {
3532
3675
  UncachedContentClient,
3533
3676
  UniqueBatchEntries,
3534
3677
  WorkflowClient,
3678
+ autoFixParameterGroups,
3535
3679
  bindExpressionEscapeChars,
3536
3680
  bindExpressionPrefix,
3537
3681
  bindVariables,
@@ -3593,6 +3737,7 @@ export {
3593
3737
  isSuggestComponentMessage,
3594
3738
  isSystemComponentDefinition,
3595
3739
  isTriggerCompositionActionMessage,
3740
+ isUpdateAiActionsMessage,
3596
3741
  isUpdateComponentParameterMessage,
3597
3742
  isUpdateComponentReferencesMessage,
3598
3743
  isUpdateCompositionInternalMessage,
@@ -3603,6 +3748,7 @@ export {
3603
3748
  localize,
3604
3749
  mapSlotToPersonalizedVariations,
3605
3750
  mapSlotToTestVariations,
3751
+ mergeAssetConfigWithDefaults,
3606
3752
  nullLimitPolicy,
3607
3753
  parseComponentPlaceholderId,
3608
3754
  parseVariableExpression,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uniformdev/canvas",
3
- "version": "20.35.0",
3
+ "version": "20.35.1-alpha.210+4fa236da76",
4
4
  "description": "Common functionality and types for Uniform Canvas",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "main": "./dist/index.js",
@@ -25,7 +25,7 @@
25
25
  "dev:ts": "tsup --watch",
26
26
  "clean": "rimraf dist",
27
27
  "test": "run-s create-version test:run",
28
- "test:run": "jest --maxWorkers=1",
28
+ "test:run": "vitest run",
29
29
  "lint": "eslint \"src/**/*.{js,ts,tsx}\"",
30
30
  "format": "prettier --write \"src/**/*.{js,ts,tsx}\"",
31
31
  "update-openapi": "tsx ./scripts/update-openapi.cts",
@@ -34,17 +34,17 @@
34
34
  },
35
35
  "devDependencies": {
36
36
  "@types/retry": "0.12.5",
37
- "lexical": "0.25.0",
37
+ "lexical": "0.37.0",
38
38
  "p-limit": "3.1.0",
39
39
  "p-retry": "5.1.2",
40
40
  "p-throttle": "5.0.0",
41
41
  "svix": "1.71.0"
42
42
  },
43
43
  "dependencies": {
44
- "@uniformdev/assets": "20.35.0",
45
- "@uniformdev/context": "20.35.0",
46
- "@uniformdev/richtext": "20.35.0",
47
- "immer": "10.1.1"
44
+ "@uniformdev/assets": "20.35.1-alpha.210+4fa236da76",
45
+ "@uniformdev/context": "20.35.1-alpha.210+4fa236da76",
46
+ "@uniformdev/richtext": "20.35.1-alpha.210+4fa236da76",
47
+ "immer": "10.1.3"
48
48
  },
49
49
  "files": [
50
50
  "/dist"
@@ -52,5 +52,5 @@
52
52
  "publishConfig": {
53
53
  "access": "public"
54
54
  },
55
- "gitHead": "f228361828ef49a596ca3841e5b79768c64418cf"
55
+ "gitHead": "4fa236da76e057582eae6c2595a2fa763fda886a"
56
56
  }