@cloudpss/expression 0.6.23 → 0.6.24

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.
@@ -1 +1 @@
1
- {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../src/migrator/call.ts"],"names":[],"mappings":"AAAA,OAAO,EAMH,KAAK,YAAY,EACjB,KAAK,QAAQ,EAChB,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAqVxC,aAAa;AACb,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAsKhG"}
1
+ {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../src/migrator/call.ts"],"names":[],"mappings":"AAAA,OAAO,EAMH,KAAK,YAAY,EACjB,KAAK,QAAQ,EAChB,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AA0WxC,aAAa;AACb,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAsKhG"}
@@ -30,7 +30,14 @@ const EXACT_UNARY_FUNCTION = new Map([
30
30
  ['service', 'extern'],
31
31
  ]);
32
32
  /** 只接受一个参数,返回数字的函数 */
33
- const ENTRYWISE_UNARY_MATH_FUNCTION = new Set(['abs', 'ceil', 'floor', 'round', 'sign', 'factorial']);
33
+ const ENTRYWISE_UNARY_MATH_FUNCTION = new Set(['abs', 'sign', 'factorial']);
34
+ /** 舍入函数 */
35
+ const ROUNDING_FUNCTION = {
36
+ round: 'round',
37
+ ceil: 'ceil',
38
+ floor: 'floor',
39
+ fix: 'trunc',
40
+ };
34
41
  /** 兜底 */
35
42
  function call(state, node, done) {
36
43
  const { fn, args } = node;
@@ -72,6 +79,21 @@ function migrateFunctionCall(state, node, fnName, args, options) {
72
79
  code: `${g('matrix')}.entrywise(${arg.code}, nil, ${g(fnName)})`,
73
80
  };
74
81
  }
82
+ else if (fnName in ROUNDING_FUNCTION && (args.length === 1 || args.length === 2)) {
83
+ const arg = migrateAtomic(state, args[0]);
84
+ const n = args.length === 2 ? migrateAtomic(state, args[1]) : undefined;
85
+ const fn = ROUNDING_FUNCTION[fnName];
86
+ if (arg.type === 'number' || arg.type === 'boolean' || arg.type === 'string') {
87
+ return {
88
+ type: 'number',
89
+ code: `${g(fn)}(${arg.code}${n ? `, ${n.code}` : ''})`,
90
+ };
91
+ }
92
+ return {
93
+ type: arg.type,
94
+ code: `${g('matrix')}.entrywise(${arg.code}, ${n ? n.code : 'nil'}, ${g(fn)})`,
95
+ };
96
+ }
75
97
  else if (fnName === 'max' || fnName === 'min') {
76
98
  if (args.length === 1) {
77
99
  const arg = migrateAtomic(state, args[0]);
@@ -1 +1 @@
1
- {"version":3,"file":"call.js","sourceRoot":"","sources":["../../src/migrator/call.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,cAAc,EACd,WAAW,EACX,cAAc,EACd,YAAY,GAGf,MAAM,QAAQ,CAAC;AAGhB,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAyB;IACzD,mBAAmB;IACnB,CAAC,KAAK,EAAE,QAAQ,CAAC;IACjB,CAAC,KAAK,EAAE,QAAQ,CAAC;IACjB,CAAC,KAAK,EAAE,QAAQ,CAAC;IACjB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,KAAK,EAAE,QAAQ,CAAC;IACjB,CAAC,OAAO,EAAE,QAAQ,CAAC;IAEnB,yBAAyB;IACzB,CAAC,MAAM,EAAE,OAAO,CAAC;IACjB,CAAC,QAAQ,EAAE,OAAO,CAAC;IACnB,CAAC,SAAS,EAAE,OAAO,CAAC;IAEpB,gBAAgB;IAChB,CAAC,SAAS,EAAE,QAAQ,CAAC;CACxB,CAAC,CAAC;AAEH,sBAAsB;AACtB,MAAM,6BAA6B,GAAG,IAAI,GAAG,CAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;AAE9G,SAAS;AACT,SAAS,IAAI,CAAC,KAAY,EAAE,IAA4B,EAAE,IAAmD;IACzG,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAC1B,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IACzD,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrB,OAAO;QACH,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;KAClE,CAAC;AACN,CAAC;AAED,WAAW;AACX,SAAS,mBAAmB,CACxB,KAAY,EACZ,IAA4B,EAC5B,MAAc,EACd,IAAyB,EACzB,OAAgB;IAEhB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACvD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,MAAM,CAAC,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAE1D,IAAI,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxD,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC3C,OAAO;YACH,IAAI,EAAE,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAE;YACvC,IAAI,EAAE,GAAG,MAAM,IAAI,GAAG,CAAC,IAAI,GAAG;SACjC,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI;SAC3B,CAAC;IACN,CAAC;SAAM,IAAI,6BAA6B,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC3C,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3E,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG;aACpC,CAAC;QACN,CAAC;QACD,OAAO;YACH,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,GAAG,CAAC,IAAI,UAAU,CAAC,CAAC,MAAM,CAAC,GAAG;SACnE,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QAC9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;YAC3C,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG;aACpC,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;gBAC5F,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,EAAE,CAAC,CAAC;YACvC,CAAC;YACD,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;aACjE,CAAC;QACN,CAAC;IACL,CAAC;SAAM,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAC5C,MAAM,CAAC,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QACzC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnB,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,GAAG;SACrC,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,GAAG,CAAC,CAAC,cAAc,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;SACvE,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC3C,OAAO;YACH,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,IAAI,GAAG;SAC3C,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC3C,OAAO;YACH,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,GAAG,CAAC,IAAI,GAAG;SAC7C,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC3C,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC3B,CAAC;SAAM,IAAI,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC3C,OAAO;YACH,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,GAAG,CAAC,IAAI,GAAG;SAChD,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QACvE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnE,OAAO;YACH,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG;SACxC,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC1E,OAAO;YACH,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;SAChG,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC;YAAE,OAAO,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC5E,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3B,OAAO;gBACH,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI;aAC3E,CAAC;QACN,CAAC;IACL,CAAC;SAAM,IAAI,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;IACrC,CAAC;SAAM,IAAI,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO;YACH,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;SAClE,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACvB,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;aAC9F,CAAC;QACN,CAAC;QACD,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;SAChE,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QACrD,OAAO;YACH,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,MAAM,EAAE;SACrC,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;SAClE,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,OAAO;YACH,IAAI,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;SACpE,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,CAAC,GAAG,MAAM,CAAE,IAAI,CAAC,CAAC,CAAmC,CAAC,KAAK,CAAC,CAAC;QACnE,QAAQ,CAAC,EAAE,CAAC;YACR,KAAK,QAAQ,CAAC;YACd,KAAK,QAAQ,CAAC;YACd,KAAK,SAAS;gBACV,OAAO;oBACH,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,GAAG,KAAK,QAAQ,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,MAAM,EAAE;iBAClF,CAAC;YACN,KAAK,MAAM,CAAC;YACZ,KAAK,WAAW;gBACZ,OAAO;oBACH,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,GAAG,KAAK,QAAQ,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,aAAa,MAAM,EAAE;iBACjF,CAAC;YACN,KAAK,OAAO,CAAC;YACb,KAAK,OAAO;gBACR,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBACnC,OAAO;oBACH,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,GAAG,KAAK,QAAQ,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,eAAe,MAAM,EAAE;iBACnF,CAAC;YACN,KAAK,QAAQ,CAAC;YACd,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACZ,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;gBAC5C,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBACxC,OAAO;wBACH,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,UAAU,MAAM,EAAE;qBAC/C,CAAC;gBACN,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBACnC,OAAO;oBACH,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,GAAG,KAAK,QAAQ,IAAI,CAAC,IAAI,gBAAgB,MAAM,EAAE;iBAC1D,CAAC;YACN,CAAC;YACD,KAAK,UAAU,CAAC;YAChB,KAAK,UAAU,CAAC,CAAC,CAAC;gBACd,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACrE,OAAO;wBACH,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,GAAG,KAAK,4BAA4B,MAAM,EAAE;qBACrD,CAAC;gBACN,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBACnC,OAAO;oBACH,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,GAAG,KAAK,QAAQ,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,kBAAkB,MAAM,EAAE;iBACtF,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACvC,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;SACvD,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,OAAO,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;IACrC,CAAC;SAAM,IAAI,MAAM,KAAK,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjD,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,OAAO,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;IACrC,CAAC;SAAM,IACH,MAAM,KAAK,OAAO;QAClB,IAAI,CAAC,MAAM,KAAK,CAAC;QACjB,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EACjD,CAAC;QACC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU;YACpB,CAAC,CAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAA6C,CAAC;QAC7D,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EACA,GAAG;gBACH,QAAQ,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,GAAW,EAAE,EAAE;oBAC3D,IAAI,QAAQ,KAAK,GAAG;wBAAE,OAAO,KAAK,CAAC;oBACnC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;wBACrC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;4BACxD,OAAO,KAAK,GAAG,CAAC,CAAC;wBACrB,CAAC;6BAAM,CAAC;4BACJ,OAAO,IAAI,CAAC;wBAChB,CAAC;oBACL,CAAC,CAAC,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,EAAG,CAAC,CAAC;oBACpC,IAAI,KAAK,IAAI,IAAI;wBAAE,OAAO,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAA,IAAI,CAAC,CAAC;oBACnE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;wBACf,OAAO,KAAK,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC;oBACpD,CAAC;oBACD,OAAO,KAAK,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBACzF,CAAC,CAAC;gBACF,GAAG;SACV,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC7C,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,IAAI,GAAG;SAC3C,CAAC;IACN,CAAC;SAAM,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QAC/C,MAAM,SAAS,GAAG,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACvD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;aACvF,CAAC;QACN,CAAC;QACD,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC3C,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACd,IAAI,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7B,OAAO;oBACH,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG;iBACvC,CAAC;YACN,CAAC;YACD,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvE,OAAO;oBACH,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG;iBACvC,CAAC;YACN,CAAC;QACL,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YACpC,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,SAAS,CAAC,KAAK;aAC1D,CAAC;QACN,CAAC;QACD,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG;SACvC,CAAC;IACN,CAAC;IAED,OAAO,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE;QAClC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9E,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;gBACvF,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,EAAE,CAAC,CAAC;YACvC,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,GAAG,CAAC,WAAW,MAAM,EAAE,CAAC,CAAC;QACnC,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED,aAAa;AACb,MAAM,UAAU,WAAW,CAAC,KAAY,EAAE,IAA4B,EAAE,OAAgB;IACpF,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAE1B,MAAM,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;IAC9B,IAAI,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,OAAO,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED,IACI,cAAc,CAAC,EAAE,CAAC;QAClB,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;QAChC,cAAc,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACtC,OAAO,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,QAAQ,EACjD,CAAC;QACC,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACpD,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC9D,OAAO;gBACH,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,IAAI,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;aAC3D,CAAC;QACN,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC1D,IAAI,MAAM,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,CAAC,IAAI;aAC/C,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpD,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC3B,OAAO;oBACH,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,IAAI,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,OAAO,OAAO,CAAC,IAAI,GAAG;iBACpE,CAAC;YACN,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO;oBACH,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;iBACpF,CAAC;YACN,CAAC;YACD,KAAK,CAAC,MAAM,CACR,8HAA8H,CACjI,CAAC;YACF,OAAO;gBACH,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,gBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;aAC9E,CAAC;QACN,CAAC;aAAM,IAAI,CAAC,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxE,OAAO;gBACH,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;aAChF,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChD,OAAO;gBACH,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,KAAK;aAClF,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,YAAY;aAC1F,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnD,OAAO;gBACH,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,cAAc;aAC1F,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnD,OAAO;gBACH,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,SAAS,CAAC,IAAI;aAC7C,CAAC;QACN,CAAC;aAAM,IAAI,CAAC,MAAM,KAAK,YAAY,IAAI,MAAM,KAAK,SAAS,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACvB,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;YACnD,CAAC;YACD,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;aAC3H,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjD,OAAO;gBACH,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG;aACjF,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClD,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI;aAClG,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC3B,OAAO;oBACH,IAAI,EAAE,OAAO;oBACb,IAAI,EACA,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI;wBACnB,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBACxE,IAAI;iBACX,CAAC;YACN,CAAC;YACD,KAAK,CAAC,MAAM,CACR,uCAAuC,CAAC,CAAC,SAAS,CAAC,0DAA0D,CAAC,CAAC,MAAM,CAAC,yBAAyB,CAClJ,CAAC;YACF,OAAO;gBACH,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,cAAc,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;aACjG,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAClD,MAAM,MAAM,GACR,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,KAAK,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;YACrG,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,MAAM,IAAI;aACxD,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC/C,IAAI,GAAG,GAAG,GAAG,CAAC;YACd,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACV,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1B,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACvD,CAAC;qBAAM,CAAC;oBACJ,GAAG,GAAG,KAAK,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;gBACrD,CAAC;YACL,CAAC;YACD,IAAI,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzB,IAAI,GAAG,GAAG,EAAE,CAAC;gBACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC9C,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC;oBACjC,IAAI,CAAC,GAAG,CAAC;wBAAE,GAAG,IAAI,GAAG,CAAC;oBACtB,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;wBACvB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;wBACxD,GAAG,IAAI,KAAK,CAAC;oBACjB,CAAC;yBAAM,CAAC;wBACJ,GAAG,IAAI,KAAK,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC;oBACnD,CAAC;gBACL,CAAC;gBACD,OAAO;oBACH,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG;iBACxB,CAAC;YACN,CAAC;YACD,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK;aACpD,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,aAAa,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,cAAc,CAAC,IAAI;aAClD,CAAC;QACN,CAAC;aAAM,IAAI,MAAM,KAAK,aAAa,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,cAAc,CAAC,IAAI;aAClD,CAAC;QACN,CAAC;QAED,KAAK,CAAC,GAAG,CAAC,WAAW,MAAM,EAAE,CAAC,CAAC;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC9D,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,IAAI,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IACxE,CAAC;IAED,OAAO,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE;QAC1B,KAAK,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"call.js","sourceRoot":"","sources":["../../src/migrator/call.ts"],"names":[],"mappings":"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"}
@@ -102,7 +102,7 @@ export function len(state, obj) {
102
102
  type: 'number',
103
103
  code: `len(${obj.code})`,
104
104
  };
105
- state.helper(`fn @@length(x) { if type(x) == 'string' { len(chars(x)) } else if type(x) == 'array' { len(x) } else { x.length } }`);
105
+ state.helper(`fn @@length(x) { if type(x) == 'string' { len(chars(x)) } else if type(x) == 'array' { len(x) } else { x.length ?? 0 } }`);
106
106
  return {
107
107
  type: 'number',
108
108
  code: `@@length(${obj.code})`,
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/migrator/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/migrator/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudpss/expression",
3
- "version": "0.6.23",
3
+ "version": "0.6.24",
4
4
  "author": "CloudPSS",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -12,7 +12,7 @@
12
12
  "./*": "./dist/*.js"
13
13
  },
14
14
  "dependencies": {
15
- "@mirascript/mirascript": "^0.1.56",
15
+ "@mirascript/mirascript": "^0.1.57",
16
16
  "klona": "^2.0.6",
17
17
  "lru-cache": "^11.2.7",
18
18
  "mathjs": "^15.1.1",
@@ -44,7 +44,14 @@ const EXACT_UNARY_FUNCTION = new Map<string, Result['type']>([
44
44
  ]);
45
45
 
46
46
  /** 只接受一个参数,返回数字的函数 */
47
- const ENTRYWISE_UNARY_MATH_FUNCTION = new Set<string>(['abs', 'ceil', 'floor', 'round', 'sign', 'factorial']);
47
+ const ENTRYWISE_UNARY_MATH_FUNCTION = new Set<string>(['abs', 'sign', 'factorial']);
48
+ /** 舍入函数 */
49
+ const ROUNDING_FUNCTION = {
50
+ round: 'round',
51
+ ceil: 'ceil',
52
+ floor: 'floor',
53
+ fix: 'trunc',
54
+ };
48
55
 
49
56
  /** 兜底 */
50
57
  function call(state: State, node: FunctionNode<MathNode>, done: (fn: Result, args: readonly Result[]) => void): Result {
@@ -92,6 +99,20 @@ function migrateFunctionCall(
92
99
  type: arg.type,
93
100
  code: `${g('matrix')}.entrywise(${arg.code}, nil, ${g(fnName)})`,
94
101
  };
102
+ } else if (fnName in ROUNDING_FUNCTION && (args.length === 1 || args.length === 2)) {
103
+ const arg = migrateAtomic(state, args[0]!);
104
+ const n = args.length === 2 ? migrateAtomic(state, args[1]!) : undefined;
105
+ const fn = ROUNDING_FUNCTION[fnName as keyof typeof ROUNDING_FUNCTION];
106
+ if (arg.type === 'number' || arg.type === 'boolean' || arg.type === 'string') {
107
+ return {
108
+ type: 'number',
109
+ code: `${g(fn)}(${arg.code}${n ? `, ${n.code}` : ''})`,
110
+ };
111
+ }
112
+ return {
113
+ type: arg.type,
114
+ code: `${g('matrix')}.entrywise(${arg.code}, ${n ? n.code : 'nil'}, ${g(fn)})`,
115
+ };
95
116
  } else if (fnName === 'max' || fnName === 'min') {
96
117
  if (args.length === 1) {
97
118
  const arg = migrateAtomic(state, args[0]!);
@@ -105,7 +105,7 @@ export function len(state: State, obj: Result): Result {
105
105
  code: `len(${obj.code})`,
106
106
  };
107
107
  state.helper(
108
- `fn @@length(x) { if type(x) == 'string' { len(chars(x)) } else if type(x) == 'array' { len(x) } else { x.length } }`,
108
+ `fn @@length(x) { if type(x) == 'string' { len(chars(x)) } else if type(x) == 'array' { len(x) } else { x.length ?? 0 } }`,
109
109
  );
110
110
  return {
111
111
  type: 'number',
package/tests/migrate.ts CHANGED
@@ -112,7 +112,7 @@ describe('migrate', () => {
112
112
  dedent`
113
113
  return @@length(u);
114
114
  // # 帮助函数
115
- fn @@length(x) { if type(x) == 'string' { len(chars(x)) } else if type(x) == 'array' { len(x) } else { x.length } }
115
+ fn @@length(x) { if type(x) == 'string' { len(chars(x)) } else if type(x) == 'array' { len(x) } else { x.length ?? 0 } }
116
116
  // # 转换日志
117
117
  // - W: 符号 'u' 未定义
118
118
  // # 原始 math.js 表达式
@@ -529,6 +529,10 @@ describe('migrate', () => {
529
529
  [`factorial([1,2,3])`, `matrix.entrywise([1, 2, 3], nil, factorial)`, [1, 2, 6]],
530
530
  [`s.toLowerCase()`, `s::to_lowercase()`, 'abc'],
531
531
  [`"xyz".toUpperCase()`, `'xyz'::to_uppercase()`, 'XYZ'],
532
+ [`fix([1.5, 2.6, -1.7])`, `matrix.entrywise([1.5, 2.6, -1.7], nil, trunc)`, [1, 2, -1]],
533
+ [`round([1.54, 2.63, -1.71], 1)`, `matrix.entrywise([1.54, 2.63, -1.71], 1, round)`, [1.5, 2.6, -1.7]],
534
+ [`ceil(1.32, 1)`, `ceil(1.32, 1)`, 1.4],
535
+ [`max([1,2,3])`, `max([1, 2, 3])`, 3],
532
536
  ])('should migrate expression: %s', (f, t, r) => {
533
537
  const migrated = migrateMathJs(f as ExpressionSource, false, s);
534
538
  expect(migrated).toBe(t);