@routevn/creator-model 1.3.4 → 1.3.5

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/model.js +55 -4
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@routevn/creator-model",
3
- "version": "1.3.4",
3
+ "version": "1.3.5",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "license": "MIT",
package/src/model.js CHANGED
@@ -211,6 +211,17 @@ const LAYOUT_TYPE_KEYS = [
211
211
  ];
212
212
  const LAYOUT_ELEMENT_TEXT_STYLE_ALIGN_KEYS = ["left", "center", "right"];
213
213
  const LAYOUT_TEXT_REVEAL_EFFECT_KEYS = ["typewriter", "softWipe", "none"];
214
+ const CONTROL_KEYBOARD_KEYS = [
215
+ "enter",
216
+ "space",
217
+ "esc",
218
+ "ctrl",
219
+ "left",
220
+ "right",
221
+ "up",
222
+ "down",
223
+ ];
224
+ const CONTROL_KEYBOARD_KEY_SET = new Set(CONTROL_KEYBOARD_KEYS);
214
225
  const LAYOUT_ELEMENT_BASE_TYPES = [
215
226
  "folder",
216
227
  "container",
@@ -1010,10 +1021,7 @@ const validateSpritesheetAnimationMap = ({
1010
1021
  );
1011
1022
  }
1012
1023
 
1013
- if (
1014
- animation.fps !== undefined &&
1015
- !isPositiveFiniteNumber(animation.fps)
1016
- ) {
1024
+ if (animation.fps !== undefined && !isPositiveFiniteNumber(animation.fps)) {
1017
1025
  return invalidFromErrorFactory(
1018
1026
  errorFactory,
1019
1027
  `${animationPath}.fps must be a positive finite number when provided`,
@@ -4512,6 +4520,13 @@ const validateKeyboardMap = ({ value, path, errorFactory }) => {
4512
4520
  );
4513
4521
  }
4514
4522
 
4523
+ if (!CONTROL_KEYBOARD_KEY_SET.has(key)) {
4524
+ return invalidFromErrorFactory(
4525
+ errorFactory,
4526
+ `${path}.${key} must be one of: ${CONTROL_KEYBOARD_KEYS.map((value) => `'${value}'`).join(", ")}`,
4527
+ );
4528
+ }
4529
+
4515
4530
  if (!isPlainObject(interaction)) {
4516
4531
  return invalidFromErrorFactory(
4517
4532
  errorFactory,
@@ -4697,6 +4712,7 @@ const validateControlItems = ({ items, path, errorFactory }) => {
4697
4712
  "preview",
4698
4713
  "elements",
4699
4714
  "keyboard",
4715
+ "keyup",
4700
4716
  ],
4701
4717
  path: itemPath,
4702
4718
  errorFactory,
@@ -4791,6 +4807,17 @@ const validateControlItems = ({ items, path, errorFactory }) => {
4791
4807
  return result;
4792
4808
  }
4793
4809
  }
4810
+
4811
+ {
4812
+ const result = validateKeyboardMap({
4813
+ value: item.keyup,
4814
+ path: `${itemPath}.keyup`,
4815
+ errorFactory,
4816
+ });
4817
+ if (result?.valid === false) {
4818
+ return result;
4819
+ }
4820
+ }
4794
4821
  }
4795
4822
  }
4796
4823
  };
@@ -10054,6 +10081,7 @@ const validateControlCreateData = ({ data, errorFactory }) => {
10054
10081
  "preview",
10055
10082
  "elements",
10056
10083
  "keyboard",
10084
+ "keyup",
10057
10085
  ],
10058
10086
  path: "payload.data",
10059
10087
  errorFactory,
@@ -10134,6 +10162,17 @@ const validateControlCreateData = ({ data, errorFactory }) => {
10134
10162
  return result;
10135
10163
  }
10136
10164
  }
10165
+
10166
+ {
10167
+ const result = validateKeyboardMap({
10168
+ value: data.keyup,
10169
+ path: "payload.data.keyup",
10170
+ errorFactory,
10171
+ });
10172
+ if (result?.valid === false) {
10173
+ return result;
10174
+ }
10175
+ }
10137
10176
  }
10138
10177
  };
10139
10178
 
@@ -10146,6 +10185,7 @@ const validateControlUpdateData = ({ data, errorFactory }) => {
10146
10185
  "description",
10147
10186
  "tagIds",
10148
10187
  "keyboard",
10188
+ "keyup",
10149
10189
  "thumbnailFileId",
10150
10190
  "preview",
10151
10191
  ],
@@ -10210,6 +10250,17 @@ const validateControlUpdateData = ({ data, errorFactory }) => {
10210
10250
  }
10211
10251
  }
10212
10252
 
10253
+ {
10254
+ const result = validateKeyboardMap({
10255
+ value: data.keyup,
10256
+ path: "payload.data.keyup",
10257
+ errorFactory,
10258
+ });
10259
+ if (result?.valid === false) {
10260
+ return result;
10261
+ }
10262
+ }
10263
+
10213
10264
  {
10214
10265
  const result = validateOptionalUniqueIdArray({
10215
10266
  value: data.tagIds,