@bolttech/form-engine-core 0.0.1-beta.43 → 0.0.1-beta.45

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/index.esm.js CHANGED
@@ -1222,6 +1222,44 @@ const between = (value, validations) => {
1222
1222
  const num = Number(value);
1223
1223
  return !Number.isNaN(num) && !(+num >= validations.between.start && +num <= validations.between.end);
1224
1224
  };
1225
+ /**
1226
+ * Checks if a given value is less than a specified threshold.
1227
+ *
1228
+ * @param value - The value to be checked. This value will be converted to a number.
1229
+ * @param validations - An object containing validation methods, specifically the `lessThan` property which holds the threshold value.
1230
+ * @returns Returns `false` if the `lessThan` threshold is not provided or if the value is not a valid number. Otherwise, returns `true` if the value is greater than or equal to the `lessThan` threshold.
1231
+ *
1232
+ * @example
1233
+ * ```typescript
1234
+ * const validations = { lessThan: 10 };
1235
+ * console.log(lessThan(5, validations)); // true
1236
+ * console.log(lessThan(15, validations)); // false
1237
+ * ```
1238
+ */
1239
+ const lessThan = (value, validations) => {
1240
+ const number = Number(value);
1241
+ if (!validations.lessThan || Number.isNaN(number)) return false;
1242
+ return number >= validations.lessThan;
1243
+ };
1244
+ /**
1245
+ * Checks if a given value is greater than a specified threshold.
1246
+ *
1247
+ * @param value - The value to be checked. This value will be converted to a number.
1248
+ * @param validations - An object containing validation methods, specifically the `greaterThan` property which holds the threshold value.
1249
+ * @returns Returns `false` if the `greaterThan` threshold is not provided or if the value is not a valid number. Otherwise, returns `true` if the value is less than or equal to the `greaterThan` threshold.
1250
+ *
1251
+ * @example
1252
+ * ```typescript
1253
+ * const validations = { greaterThan: 10 };
1254
+ * console.log(greaterThan(15, validations)); // true
1255
+ * console.log(greaterThan(5, validations)); // false
1256
+ * ```
1257
+ */
1258
+ const greaterThan = (value, validations) => {
1259
+ const number = Number(value);
1260
+ if (!validations.greaterThan || Number.isNaN(number)) return false;
1261
+ return number <= validations.greaterThan;
1262
+ };
1225
1263
  /**
1226
1264
  * Validates if a value contains sequential numbers.
1227
1265
  *
@@ -2225,6 +2263,8 @@ var namedRule = ((value, methods, validations) => {
2225
2263
  const validations$1 = {
2226
2264
  max,
2227
2265
  min,
2266
+ lessThan,
2267
+ greaterThan,
2228
2268
  length,
2229
2269
  regex,
2230
2270
  url,
@@ -2327,6 +2367,8 @@ const multipleValidations = (value, methods) => {
2327
2367
  const validations = {
2328
2368
  max,
2329
2369
  min,
2370
+ lessThan,
2371
+ greaterThan,
2330
2372
  length,
2331
2373
  regex,
2332
2374
  url,
@@ -2873,6 +2915,17 @@ class FormField {
2873
2915
  }) {
2874
2916
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
2875
2917
  return __awaiter(this, void 0, void 0, function* () {
2918
+ const configRequest = config => __awaiter(this, void 0, void 0, function* () {
2919
+ try {
2920
+ const responseData = yield makeRequest(config.method, config.url, config.headers, config.body);
2921
+ const apiResponseData = JSON.parse(String(responseData));
2922
+ const response = config.resultPath ? get(apiResponseData, config.resultPath) : apiResponseData;
2923
+ // this.apiResponseData = { response };
2924
+ return response;
2925
+ } catch (e) {
2926
+ return !isNil(config === null || config === void 0 ? void 0 : config.fallbackValue) ? config.fallbackValue : 'error';
2927
+ }
2928
+ });
2876
2929
  if (!((_b = (_a = this.apiSchema) === null || _a === void 0 ? void 0 : _a.defaultConfig) === null || _b === void 0 ? void 0 : _b.events.includes(event)) && !(((_c = this.apiSchema) === null || _c === void 0 ? void 0 : _c.configs) && Object.keys((_d = this.apiSchema) === null || _d === void 0 ? void 0 : _d.configs).some(key => {
2877
2930
  var _a, _b;
2878
2931
  return (_b = (_a = this.apiSchema) === null || _a === void 0 ? void 0 : _a.configs) === null || _b === void 0 ? void 0 : _b[key].events.includes(event);
@@ -2883,19 +2936,10 @@ class FormField {
2883
2936
  };
2884
2937
  const config = (_e = this.apiSchema.defaultConfig) === null || _e === void 0 ? void 0 : _e.config;
2885
2938
  if (config && ((_g = (_f = this.apiSchema) === null || _f === void 0 ? void 0 : _f.defaultConfig) === null || _g === void 0 ? void 0 : _g.events.includes(event)) && this.checkApiRequestValidations(config)) {
2886
- try {
2887
- const responseData = yield makeRequest(config.method, config.url, config.headers, config.body);
2888
- const apiResponseData = JSON.parse(String(responseData));
2889
- const response = config.resultPath ? get(apiResponseData, config.resultPath) : apiResponseData;
2890
- // this.apiResponseData = { response };
2891
- responses.default = {
2892
- response
2893
- };
2894
- } catch (e) {
2895
- responses.default = {
2896
- response: !isNil(config === null || config === void 0 ? void 0 : config.fallbackValue) ? config.fallbackValue : 'error'
2897
- };
2898
- }
2939
+ const response = yield configRequest(config);
2940
+ responses.default = {
2941
+ response
2942
+ };
2899
2943
  }
2900
2944
  if (((_h = this.apiSchema) === null || _h === void 0 ? void 0 : _h.configs) && Object.keys((_j = this.apiSchema) === null || _j === void 0 ? void 0 : _j.configs).some(key => {
2901
2945
  var _a, _b;
@@ -2906,38 +2950,21 @@ class FormField {
2906
2950
  @TODO handle promises with error
2907
2951
  */
2908
2952
  const result = yield Promise.all(Object.keys(this.apiSchema.configs).map(configKey => __awaiter(this, void 0, void 0, function* () {
2909
- return new Promise(res => {
2910
- var _a, _b, _c, _d;
2911
- const config = (_b = (_a = this.apiSchema) === null || _a === void 0 ? void 0 : _a.configs) === null || _b === void 0 ? void 0 : _b[configKey].config;
2912
- if (config && ((_d = (_c = this.apiSchema) === null || _c === void 0 ? void 0 : _c.configs) === null || _d === void 0 ? void 0 : _d[configKey].events.includes(event)) && this.checkApiRequestValidations(config)) {
2913
- try {
2914
- makeRequest(config.method, config.url, config.headers, config.body).then(responseData => {
2915
- const apiResponseData = JSON.parse(String(responseData));
2916
- const response = get(apiResponseData, config.resultPath || '');
2917
- res({
2918
- name: configKey,
2919
- result: {
2920
- response
2921
- }
2922
- });
2923
- // responses.named![configKey] = { response };
2924
- });
2925
- } catch (e) {
2926
- res({
2927
- name: configKey,
2928
- result: {
2929
- response: !isNil(config.fallbackValue) ? config.fallbackValue : 'error'
2930
- }
2931
- });
2953
+ var _k, _l, _m, _o;
2954
+ const config = (_l = (_k = this.apiSchema) === null || _k === void 0 ? void 0 : _k.configs) === null || _l === void 0 ? void 0 : _l[configKey].config;
2955
+ if (config && ((_o = (_m = this.apiSchema) === null || _m === void 0 ? void 0 : _m.configs) === null || _o === void 0 ? void 0 : _o[configKey].events.includes(event)) && this.checkApiRequestValidations(config)) {
2956
+ const response = yield configRequest(config);
2957
+ return {
2958
+ name: configKey,
2959
+ result: {
2960
+ response
2932
2961
  }
2933
- }
2934
- });
2962
+ };
2963
+ }
2964
+ return null;
2935
2965
  })));
2936
- result.forEach(({
2937
- name,
2938
- result
2939
- }) => {
2940
- if (responses.named) responses.named[name] = result;
2966
+ result.forEach(payload => {
2967
+ if (payload && responses.named) responses.named[payload.name] = payload.result;
2941
2968
  });
2942
2969
  }
2943
2970
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bolttech/form-engine-core",
3
- "version": "0.0.1-beta.43",
3
+ "version": "0.0.1-beta.45",
4
4
  "module": "./index.esm.js",
5
5
  "type": "module",
6
6
  "main": "./index.esm.js",
@@ -311,6 +311,8 @@ type TDateValidation = {
311
311
  *
312
312
  * @property {number} [max] - Maximum value or length.
313
313
  * @property {number} [min] - Minimum value or length.
314
+ * @property {number} [lessThan] - Minimum value or length.
315
+ * @property {number} [greaterThan] - Minimum value or length.
314
316
  * @property {TLengthValidation} [length] - Length validation rule.
315
317
  * @property {boolean} [required] - Indicates if the field is required.
316
318
  * @property {unknown} [value] - Specific value to match.
@@ -344,6 +346,8 @@ type TDateValidation = {
344
346
  * const validationMethods: TValidationMethods = {
345
347
  * max: 100,
346
348
  * min: 1,
349
+ * lessThan: 1995,
350
+ * greaterThan: 82000,
347
351
  * length: { rule: 'greaterOrEqual', target: 8 },
348
352
  * required: true,
349
353
  * regex: '^[a-zA-Z0-9]+$',
@@ -394,6 +398,8 @@ type TDateValidation = {
394
398
  type TValidationMethods = {
395
399
  max?: number;
396
400
  min?: number;
401
+ lessThan?: number;
402
+ greaterThan?: number;
397
403
  length?: TLengthValidation;
398
404
  required?: boolean;
399
405
  value?: unknown;
@@ -80,6 +80,36 @@ export declare const min: (value: unknown, validations: TValidationMethods) => b
80
80
  * ```
81
81
  */
82
82
  export declare const between: (value: unknown, validations: TValidationMethods) => boolean;
83
+ /**
84
+ * Checks if a given value is less than a specified threshold.
85
+ *
86
+ * @param value - The value to be checked. This value will be converted to a number.
87
+ * @param validations - An object containing validation methods, specifically the `lessThan` property which holds the threshold value.
88
+ * @returns Returns `false` if the `lessThan` threshold is not provided or if the value is not a valid number. Otherwise, returns `true` if the value is greater than or equal to the `lessThan` threshold.
89
+ *
90
+ * @example
91
+ * ```typescript
92
+ * const validations = { lessThan: 10 };
93
+ * console.log(lessThan(5, validations)); // true
94
+ * console.log(lessThan(15, validations)); // false
95
+ * ```
96
+ */
97
+ export declare const lessThan: (value: unknown, validations: TValidationMethods) => boolean;
98
+ /**
99
+ * Checks if a given value is greater than a specified threshold.
100
+ *
101
+ * @param value - The value to be checked. This value will be converted to a number.
102
+ * @param validations - An object containing validation methods, specifically the `greaterThan` property which holds the threshold value.
103
+ * @returns Returns `false` if the `greaterThan` threshold is not provided or if the value is not a valid number. Otherwise, returns `true` if the value is less than or equal to the `greaterThan` threshold.
104
+ *
105
+ * @example
106
+ * ```typescript
107
+ * const validations = { greaterThan: 10 };
108
+ * console.log(greaterThan(15, validations)); // true
109
+ * console.log(greaterThan(5, validations)); // false
110
+ * ```
111
+ */
112
+ export declare const greaterThan: (value: unknown, validations: TValidationMethods) => boolean;
83
113
  /**
84
114
  * Validates if a value contains sequential numbers.
85
115
  *