amis-formula 3.5.1 → 3.5.3

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/esm/doc.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
@@ -987,6 +987,23 @@ var doc = [
987
987
  },
988
988
  namespace: "文本函数"
989
989
  },
990
+ {
991
+ name: "UUID",
992
+ description: "生成UUID字符串",
993
+ example: "UUID(8)",
994
+ params: [
995
+ {
996
+ type: "number",
997
+ name: "length",
998
+ description: "生成的UUID字符串长度,默认为32位"
999
+ }
1000
+ ],
1001
+ returns: {
1002
+ type: "string",
1003
+ description: "生成的UUID字符串"
1004
+ },
1005
+ namespace: "文本函数"
1006
+ },
990
1007
  {
991
1008
  name: "DATE",
992
1009
  description: "创建日期对象,可以通过特定格式的字符串,或者数值。\n\n需要注意的是,其中月份的数值是从0开始的,\n即如果是12月份,你应该传入数值11。",
package/esm/doc.md CHANGED
@@ -591,6 +591,16 @@
591
591
 
592
592
  返回:a.json`。
593
593
 
594
+ ### UUID
595
+
596
+ 用法:`UUID(8)`
597
+
598
+ * `length:number` 生成的UUID字符串长度,默认为32位
599
+
600
+ 返回:`string` 生成的UUID字符串
601
+
602
+ 生成UUID字符串
603
+
594
604
  ## 日期函数
595
605
 
596
606
  ### DATE
package/esm/error.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/esm/evalutor.d.ts CHANGED
@@ -786,6 +786,17 @@ export declare class Evaluator {
786
786
  * @returns {string} 文件名
787
787
  */
788
788
  fnBASENAME(text: string): string | undefined;
789
+ /**
790
+ * 生成UUID字符串
791
+ *
792
+ * @param {number} length - 生成的UUID字符串长度,默认为32位
793
+ * @example UUID()
794
+ * @example UUID(8)
795
+ * @namespace 文本函数
796
+ *
797
+ * @returns {string} 生成的UUID字符串
798
+ */
799
+ fnUUID(length?: number): string;
789
800
  /**
790
801
  * 创建日期对象,可以通过特定格式的字符串,或者数值。
791
802
  *
@@ -1327,3 +1338,5 @@ export declare function createObject(superProps?: {
1327
1338
  }, props?: {
1328
1339
  [propName: string]: any;
1329
1340
  }, properties?: any): object;
1341
+ export declare function createStr(): string;
1342
+ export declare function uuidv4(): string;
package/esm/evalutor.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
@@ -1423,6 +1423,21 @@ var Evaluator = /** @class */ (function () {
1423
1423
  text = this.normalizeText(text);
1424
1424
  return text.split(/[\\/]/).pop();
1425
1425
  };
1426
+ /**
1427
+ * 生成UUID字符串
1428
+ *
1429
+ * @param {number} length - 生成的UUID字符串长度,默认为32位
1430
+ * @example UUID()
1431
+ * @example UUID(8)
1432
+ * @namespace 文本函数
1433
+ *
1434
+ * @returns {string} 生成的UUID字符串
1435
+ */
1436
+ Evaluator.prototype.fnUUID = function (length) {
1437
+ if (length === void 0) { length = 36; }
1438
+ var len = Math.min(Math.max(length, 0), 36);
1439
+ return uuidv4().slice(0, len);
1440
+ };
1426
1441
  // 日期函数
1427
1442
  /**
1428
1443
  * 创建日期对象,可以通过特定格式的字符串,或者数值。
@@ -2256,5 +2271,21 @@ function createObject(superProps, props, properties) {
2256
2271
  props && Object.keys(props).forEach(function (key) { return (obj[key] = props[key]); });
2257
2272
  return obj;
2258
2273
  }
2274
+ function createStr() {
2275
+ return ('00000000000000000' + (Math.random() * 0xffffffffffffffff).toString(16)).slice(-16);
2276
+ }
2277
+ function uuidv4() {
2278
+ var a = createStr();
2279
+ var b = createStr();
2280
+ return (a.slice(0, 8) +
2281
+ '-' +
2282
+ a.slice(8, 12) +
2283
+ '-4' +
2284
+ a.slice(13) +
2285
+ '-a' +
2286
+ b.slice(1, 4) +
2287
+ '-' +
2288
+ b.slice(4));
2289
+ }
2259
2290
 
2260
- export { Evaluator, createObject, getCookie, normalizeArgs, parseJson, stripNumber };
2291
+ export { Evaluator, createObject, createStr, getCookie, normalizeArgs, parseJson, stripNumber, uuidv4 };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/esm/filter.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/esm/function.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/esm/lexer.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/esm/parser.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/lib/doc.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
@@ -991,6 +991,23 @@ var doc = [
991
991
  },
992
992
  namespace: "文本函数"
993
993
  },
994
+ {
995
+ name: "UUID",
996
+ description: "生成UUID字符串",
997
+ example: "UUID(8)",
998
+ params: [
999
+ {
1000
+ type: "number",
1001
+ name: "length",
1002
+ description: "生成的UUID字符串长度,默认为32位"
1003
+ }
1004
+ ],
1005
+ returns: {
1006
+ type: "string",
1007
+ description: "生成的UUID字符串"
1008
+ },
1009
+ namespace: "文本函数"
1010
+ },
994
1011
  {
995
1012
  name: "DATE",
996
1013
  description: "创建日期对象,可以通过特定格式的字符串,或者数值。\n\n需要注意的是,其中月份的数值是从0开始的,\n即如果是12月份,你应该传入数值11。",
package/lib/doc.md CHANGED
@@ -591,6 +591,16 @@
591
591
 
592
592
  返回:a.json`。
593
593
 
594
+ ### UUID
595
+
596
+ 用法:`UUID(8)`
597
+
598
+ * `length:number` 生成的UUID字符串长度,默认为32位
599
+
600
+ 返回:`string` 生成的UUID字符串
601
+
602
+ 生成UUID字符串
603
+
594
604
  ## 日期函数
595
605
 
596
606
  ### DATE
package/lib/error.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/lib/evalutor.d.ts CHANGED
@@ -786,6 +786,17 @@ export declare class Evaluator {
786
786
  * @returns {string} 文件名
787
787
  */
788
788
  fnBASENAME(text: string): string | undefined;
789
+ /**
790
+ * 生成UUID字符串
791
+ *
792
+ * @param {number} length - 生成的UUID字符串长度,默认为32位
793
+ * @example UUID()
794
+ * @example UUID(8)
795
+ * @namespace 文本函数
796
+ *
797
+ * @returns {string} 生成的UUID字符串
798
+ */
799
+ fnUUID(length?: number): string;
789
800
  /**
790
801
  * 创建日期对象,可以通过特定格式的字符串,或者数值。
791
802
  *
@@ -1327,3 +1338,5 @@ export declare function createObject(superProps?: {
1327
1338
  }, props?: {
1328
1339
  [propName: string]: any;
1329
1340
  }, properties?: any): object;
1341
+ export declare function createStr(): string;
1342
+ export declare function uuidv4(): string;
package/lib/evalutor.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
@@ -1442,6 +1442,21 @@ var Evaluator = /** @class */ (function () {
1442
1442
  text = this.normalizeText(text);
1443
1443
  return text.split(/[\\/]/).pop();
1444
1444
  };
1445
+ /**
1446
+ * 生成UUID字符串
1447
+ *
1448
+ * @param {number} length - 生成的UUID字符串长度,默认为32位
1449
+ * @example UUID()
1450
+ * @example UUID(8)
1451
+ * @namespace 文本函数
1452
+ *
1453
+ * @returns {string} 生成的UUID字符串
1454
+ */
1455
+ Evaluator.prototype.fnUUID = function (length) {
1456
+ if (length === void 0) { length = 36; }
1457
+ var len = Math.min(Math.max(length, 0), 36);
1458
+ return uuidv4().slice(0, len);
1459
+ };
1445
1460
  // 日期函数
1446
1461
  /**
1447
1462
  * 创建日期对象,可以通过特定格式的字符串,或者数值。
@@ -2275,10 +2290,28 @@ function createObject(superProps, props, properties) {
2275
2290
  props && Object.keys(props).forEach(function (key) { return (obj[key] = props[key]); });
2276
2291
  return obj;
2277
2292
  }
2293
+ function createStr() {
2294
+ return ('00000000000000000' + (Math.random() * 0xffffffffffffffff).toString(16)).slice(-16);
2295
+ }
2296
+ function uuidv4() {
2297
+ var a = createStr();
2298
+ var b = createStr();
2299
+ return (a.slice(0, 8) +
2300
+ '-' +
2301
+ a.slice(8, 12) +
2302
+ '-4' +
2303
+ a.slice(13) +
2304
+ '-a' +
2305
+ b.slice(1, 4) +
2306
+ '-' +
2307
+ b.slice(4));
2308
+ }
2278
2309
 
2279
2310
  exports.Evaluator = Evaluator;
2280
2311
  exports.createObject = createObject;
2312
+ exports.createStr = createStr;
2281
2313
  exports.getCookie = getCookie;
2282
2314
  exports.normalizeArgs = normalizeArgs;
2283
2315
  exports.parseJson = parseJson;
2284
2316
  exports.stripNumber = stripNumber;
2317
+ exports.uuidv4 = uuidv4;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/lib/filter.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/lib/function.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/lib/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/lib/lexer.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/lib/parser.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-formula v3.5.1
2
+ * amis-formula v3.5.3
3
3
  * Copyright 2021-2023 fex
4
4
  */
5
5
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "amis-formula",
3
- "version": "3.5.1",
3
+ "version": "3.5.3",
4
4
  "description": "负责 amis 里面的表达式实现,内置公式,编辑器等",
5
5
  "main": "lib/index.js",
6
6
  "module": "esm/index.js",
@@ -118,5 +118,5 @@
118
118
  "printBasicPrototype": false
119
119
  }
120
120
  },
121
- "gitHead": "8e80dd0dc4e5e792973c7c5c451e8fb345c8d536"
121
+ "gitHead": "b48f8f9a99c85f26512626a57d09559703b4e121"
122
122
  }