@gridsheet/react-core 0.12.3 → 0.12.4-rc.0

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 (190) hide show
  1. package/dist/components/Cell.js +197 -181
  2. package/dist/components/Cell.js.map +1 -1
  3. package/dist/components/ContextMenu.js +211 -194
  4. package/dist/components/ContextMenu.js.map +1 -1
  5. package/dist/components/Editor.js +280 -263
  6. package/dist/components/Editor.js.map +1 -1
  7. package/dist/components/Emitter.js +41 -24
  8. package/dist/components/Emitter.js.map +1 -1
  9. package/dist/components/GridSheet.js +142 -105
  10. package/dist/components/GridSheet.js.map +1 -1
  11. package/dist/components/HeaderLeftCell.js +76 -60
  12. package/dist/components/HeaderLeftCell.js.map +1 -1
  13. package/dist/components/HeaderTopCell.js +77 -61
  14. package/dist/components/HeaderTopCell.js.map +1 -1
  15. package/dist/components/Resizer.js +91 -75
  16. package/dist/components/Resizer.js.map +1 -1
  17. package/dist/components/SearchBox.js +66 -49
  18. package/dist/components/SearchBox.js.map +1 -1
  19. package/dist/components/StoreInitializer.js +83 -66
  20. package/dist/components/StoreInitializer.js.map +1 -1
  21. package/dist/components/Tabular.js +98 -80
  22. package/dist/components/Tabular.js.map +1 -1
  23. package/dist/constants.js +33 -19
  24. package/dist/constants.js.map +1 -1
  25. package/dist/formula/evaluator.js +500 -474
  26. package/dist/formula/evaluator.js.map +1 -1
  27. package/dist/formula/functions/__base.js +27 -13
  28. package/dist/formula/functions/__base.js.map +1 -1
  29. package/dist/formula/functions/__utils.js +113 -95
  30. package/dist/formula/functions/__utils.js.map +1 -1
  31. package/dist/formula/functions/abs.js +31 -17
  32. package/dist/formula/functions/abs.js.map +1 -1
  33. package/dist/formula/functions/abs.spec.js +35 -23
  34. package/dist/formula/functions/abs.spec.js.map +1 -1
  35. package/dist/formula/functions/acos.js +38 -24
  36. package/dist/formula/functions/acos.js.map +1 -1
  37. package/dist/formula/functions/add.js +57 -43
  38. package/dist/formula/functions/add.js.map +1 -1
  39. package/dist/formula/functions/and.js +38 -24
  40. package/dist/formula/functions/and.js.map +1 -1
  41. package/dist/formula/functions/asin.js +38 -24
  42. package/dist/formula/functions/asin.js.map +1 -1
  43. package/dist/formula/functions/atan.js +36 -22
  44. package/dist/formula/functions/atan.js.map +1 -1
  45. package/dist/formula/functions/atan2.js +42 -28
  46. package/dist/formula/functions/atan2.js.map +1 -1
  47. package/dist/formula/functions/average.js +50 -36
  48. package/dist/formula/functions/average.js.map +1 -1
  49. package/dist/formula/functions/col.js +38 -24
  50. package/dist/formula/functions/col.js.map +1 -1
  51. package/dist/formula/functions/concat.js +37 -23
  52. package/dist/formula/functions/concat.js.map +1 -1
  53. package/dist/formula/functions/concatenate.js +35 -21
  54. package/dist/formula/functions/concatenate.js.map +1 -1
  55. package/dist/formula/functions/cos.js +36 -22
  56. package/dist/formula/functions/cos.js.map +1 -1
  57. package/dist/formula/functions/count.js +45 -31
  58. package/dist/formula/functions/count.js.map +1 -1
  59. package/dist/formula/functions/counta.js +45 -31
  60. package/dist/formula/functions/counta.js.map +1 -1
  61. package/dist/formula/functions/countif.js +40 -26
  62. package/dist/formula/functions/countif.js.map +1 -1
  63. package/dist/formula/functions/divide.js +42 -28
  64. package/dist/formula/functions/divide.js.map +1 -1
  65. package/dist/formula/functions/eq.js +35 -21
  66. package/dist/formula/functions/eq.js.map +1 -1
  67. package/dist/formula/functions/exp.js +38 -24
  68. package/dist/formula/functions/exp.js.map +1 -1
  69. package/dist/formula/functions/gt.js +37 -23
  70. package/dist/formula/functions/gt.js.map +1 -1
  71. package/dist/formula/functions/gte.js +37 -23
  72. package/dist/formula/functions/gte.js.map +1 -1
  73. package/dist/formula/functions/hlookup.js +77 -63
  74. package/dist/formula/functions/hlookup.js.map +1 -1
  75. package/dist/formula/functions/if.js +46 -32
  76. package/dist/formula/functions/if.js.map +1 -1
  77. package/dist/formula/functions/iferror.js +48 -34
  78. package/dist/formula/functions/iferror.js.map +1 -1
  79. package/dist/formula/functions/iferror.spec.js +63 -51
  80. package/dist/formula/functions/iferror.spec.js.map +1 -1
  81. package/dist/formula/functions/len.js +36 -22
  82. package/dist/formula/functions/len.js.map +1 -1
  83. package/dist/formula/functions/lenb.js +36 -22
  84. package/dist/formula/functions/lenb.js.map +1 -1
  85. package/dist/formula/functions/ln.js +38 -24
  86. package/dist/formula/functions/ln.js.map +1 -1
  87. package/dist/formula/functions/log.js +43 -29
  88. package/dist/formula/functions/log.js.map +1 -1
  89. package/dist/formula/functions/log10.js +38 -24
  90. package/dist/formula/functions/log10.js.map +1 -1
  91. package/dist/formula/functions/lt.js +37 -23
  92. package/dist/formula/functions/lt.js.map +1 -1
  93. package/dist/formula/functions/lte.js +37 -23
  94. package/dist/formula/functions/lte.js.map +1 -1
  95. package/dist/formula/functions/max.js +52 -38
  96. package/dist/formula/functions/max.js.map +1 -1
  97. package/dist/formula/functions/min.js +52 -38
  98. package/dist/formula/functions/min.js.map +1 -1
  99. package/dist/formula/functions/minus.js +57 -43
  100. package/dist/formula/functions/minus.js.map +1 -1
  101. package/dist/formula/functions/mod.js +40 -26
  102. package/dist/formula/functions/mod.js.map +1 -1
  103. package/dist/formula/functions/mod.spec.js +58 -46
  104. package/dist/formula/functions/mod.spec.js.map +1 -1
  105. package/dist/formula/functions/multiply.js +37 -23
  106. package/dist/formula/functions/multiply.js.map +1 -1
  107. package/dist/formula/functions/ne.js +35 -21
  108. package/dist/formula/functions/ne.js.map +1 -1
  109. package/dist/formula/functions/not.js +40 -26
  110. package/dist/formula/functions/not.js.map +1 -1
  111. package/dist/formula/functions/now.js +31 -17
  112. package/dist/formula/functions/now.js.map +1 -1
  113. package/dist/formula/functions/or.js +38 -24
  114. package/dist/formula/functions/or.js.map +1 -1
  115. package/dist/formula/functions/pi.js +29 -15
  116. package/dist/formula/functions/pi.js.map +1 -1
  117. package/dist/formula/functions/power.js +34 -20
  118. package/dist/formula/functions/power.js.map +1 -1
  119. package/dist/formula/functions/product.js +47 -33
  120. package/dist/formula/functions/product.js.map +1 -1
  121. package/dist/formula/functions/radians.js +36 -22
  122. package/dist/formula/functions/radians.js.map +1 -1
  123. package/dist/formula/functions/rand.js +29 -15
  124. package/dist/formula/functions/rand.js.map +1 -1
  125. package/dist/formula/functions/round.js +44 -30
  126. package/dist/formula/functions/round.js.map +1 -1
  127. package/dist/formula/functions/rounddown.js +44 -30
  128. package/dist/formula/functions/rounddown.js.map +1 -1
  129. package/dist/formula/functions/roundup.js +44 -30
  130. package/dist/formula/functions/roundup.js.map +1 -1
  131. package/dist/formula/functions/row.js +38 -24
  132. package/dist/formula/functions/row.js.map +1 -1
  133. package/dist/formula/functions/sin.js +36 -22
  134. package/dist/formula/functions/sin.js.map +1 -1
  135. package/dist/formula/functions/sqrt.js +38 -24
  136. package/dist/formula/functions/sqrt.js.map +1 -1
  137. package/dist/formula/functions/sum.js +52 -38
  138. package/dist/formula/functions/sum.js.map +1 -1
  139. package/dist/formula/functions/sum.spec.js +45 -33
  140. package/dist/formula/functions/sum.spec.js.map +1 -1
  141. package/dist/formula/functions/sumif.js +66 -52
  142. package/dist/formula/functions/sumif.js.map +1 -1
  143. package/dist/formula/functions/tan.js +36 -22
  144. package/dist/formula/functions/tan.js.map +1 -1
  145. package/dist/formula/functions/uminus.js +33 -19
  146. package/dist/formula/functions/uminus.js.map +1 -1
  147. package/dist/formula/functions/vlookup.js +77 -63
  148. package/dist/formula/functions/vlookup.js.map +1 -1
  149. package/dist/formula/mapping.js +126 -113
  150. package/dist/formula/mapping.js.map +1 -1
  151. package/dist/formula/solver.js +71 -56
  152. package/dist/formula/solver.js.map +1 -1
  153. package/dist/index.js +41 -10
  154. package/dist/index.js.map +1 -1
  155. package/dist/lib/autofill.js +344 -330
  156. package/dist/lib/autofill.js.map +1 -1
  157. package/dist/lib/clipboard.js +55 -41
  158. package/dist/lib/clipboard.js.map +1 -1
  159. package/dist/lib/converters.js +140 -119
  160. package/dist/lib/converters.js.map +1 -1
  161. package/dist/lib/structs.js +266 -228
  162. package/dist/lib/structs.js.map +1 -1
  163. package/dist/lib/table.js +915 -900
  164. package/dist/lib/table.js.map +1 -1
  165. package/dist/lib/time.js +69 -55
  166. package/dist/lib/time.js.map +1 -1
  167. package/dist/lib/virtualization.js +121 -104
  168. package/dist/lib/virtualization.js.map +1 -1
  169. package/dist/parsers/core.js +119 -105
  170. package/dist/parsers/core.js.map +1 -1
  171. package/dist/renderers/checkbox.js +24 -8
  172. package/dist/renderers/checkbox.js.map +1 -1
  173. package/dist/renderers/core.js +139 -125
  174. package/dist/renderers/core.js.map +1 -1
  175. package/dist/renderers/thousand_separator.js +25 -12
  176. package/dist/renderers/thousand_separator.js.map +1 -1
  177. package/dist/store/actions.js +495 -480
  178. package/dist/store/actions.js.map +1 -1
  179. package/dist/store/helpers.js +88 -72
  180. package/dist/store/helpers.js.map +1 -1
  181. package/dist/store/index.js +38 -2
  182. package/dist/store/index.js.map +1 -1
  183. package/dist/styles/embedder.js +27 -13
  184. package/dist/styles/embedder.js.map +1 -1
  185. package/dist/styles/minified.js +16 -3
  186. package/dist/styles/minified.js.map +1 -1
  187. package/dist/types.js +12 -1
  188. package/dist/utils.js +19 -5
  189. package/dist/utils.js.map +1 -1
  190. package/package.json +1 -1
@@ -1,123 +1,137 @@
1
- import { parseFromTimeZone } from "date-fns-timezone";
2
- import { TimeDelta } from "../lib/time";
3
- const BOOLS = { true: true, false: false };
4
- export class Parser {
5
- constructor(props) {
6
- this.functions = [
7
- this.number,
8
- this.timedelta,
9
- this.date,
10
- this.bool,
11
- ];
12
- this.applyMixins(props === null || props === void 0 ? void 0 : props.mixins);
13
- if (props == null) {
14
- return;
15
- }
16
- const { condition, complement } = props;
17
- this.condition = condition;
18
- this.complement = complement;
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
19
5
  }
20
- applyMixins(mixins) {
21
- if (mixins == null) {
22
- return;
23
- }
24
- for (const mixin of mixins) {
25
- for (const key in mixin) {
26
- // @ts-ignore
27
- this[key] = mixin[key];
28
- }
29
- }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "date-fns-timezone", "../lib/time"], factory);
30
8
  }
31
- call(value, cell) {
32
- try {
33
- const parsed = this.parse(value, cell);
34
- return this.callback(parsed, cell);
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.defaultParser = exports.Parser = void 0;
13
+ const date_fns_timezone_1 = require("date-fns-timezone");
14
+ const time_1 = require("../lib/time");
15
+ const BOOLS = { true: true, false: false };
16
+ class Parser {
17
+ constructor(props) {
18
+ this.functions = [
19
+ this.number,
20
+ this.timedelta,
21
+ this.date,
22
+ this.bool,
23
+ ];
24
+ this.applyMixins(props === null || props === void 0 ? void 0 : props.mixins);
25
+ if (props == null) {
26
+ return;
27
+ }
28
+ const { condition, complement } = props;
29
+ this.condition = condition;
30
+ this.complement = complement;
35
31
  }
36
- catch (e) {
37
- return this.callback(e, cell);
32
+ applyMixins(mixins) {
33
+ if (mixins == null) {
34
+ return;
35
+ }
36
+ for (const mixin of mixins) {
37
+ for (const key in mixin) {
38
+ // @ts-ignore
39
+ this[key] = mixin[key];
40
+ }
41
+ }
38
42
  }
39
- }
40
- callback(parsed, cell) {
41
- return Object.assign(Object.assign({}, cell), { value: parsed });
42
- }
43
- parse(value, cell) {
44
- if (this.condition && !this.condition(value)) {
45
- const result = this.complement ? this.complement(value) : value;
46
- return result;
43
+ call(value, cell) {
44
+ try {
45
+ const parsed = this.parse(value, cell);
46
+ return this.callback(parsed, cell);
47
+ }
48
+ catch (e) {
49
+ return this.callback(e, cell);
50
+ }
47
51
  }
48
- if (value[0] === "'") {
49
- return value;
52
+ callback(parsed, cell) {
53
+ return Object.assign(Object.assign({}, cell), { value: parsed });
50
54
  }
51
- for (let i = 0; i < this.functions.length; i++) {
52
- const result = this.functions[i](value, cell);
53
- if (result != null) {
55
+ parse(value, cell) {
56
+ if (this.condition && !this.condition(value)) {
57
+ const result = this.complement ? this.complement(value) : value;
54
58
  return result;
55
59
  }
56
- }
57
- if (value === "") {
58
- return null;
59
- }
60
- return value;
61
- }
62
- bool(value, cell) {
63
- return BOOLS[value.toLowerCase()];
64
- }
65
- number(value, cell) {
66
- const m = value.match(/^-?[\d.]+$/);
67
- if (m != null &&
68
- value.match(/\.$/) == null &&
69
- (value.match(/\./g) || []).length <= 1) {
70
- return parseFloat(value);
71
- }
72
- }
73
- timedelta(value, cell) {
74
- if (value.length < 4 || isNaN(value[value.length - 1])) {
75
- return;
76
- }
77
- {
78
- const match = value.match(/^([+-]?)(\d+):(\d{2})$/);
79
- if (match) {
80
- const [, _sign, hours, minutes] = match;
81
- const sign = _sign === "-" ? -1 : 1;
82
- return TimeDelta.create(sign * Number(hours), sign * Number(minutes));
60
+ if (value[0] === "'") {
61
+ return value;
83
62
  }
84
- }
85
- {
86
- const match = value.match(/^([+-]?)(\d+):(\d{2}):(\d{2})$/);
87
- if (match) {
88
- const [, _sign, hours, minutes, seconds] = match;
89
- const sign = _sign === "-" ? -1 : 1;
90
- return TimeDelta.create(sign * Number(hours), sign * Number(minutes), sign * Number(seconds));
63
+ for (let i = 0; i < this.functions.length; i++) {
64
+ const result = this.functions[i](value, cell);
65
+ if (result != null) {
66
+ return result;
67
+ }
91
68
  }
92
- }
93
- {
94
- const match = value.match(/^([+-]?)(\d+):(\d{2}):(\d{2})\.(\d+)$/);
95
- if (match) {
96
- const [, _sign, hours, minutes, seconds, msecs] = match;
97
- const sign = _sign === "-" ? -1 : 1;
98
- return TimeDelta.create(sign * Number(hours), sign * Number(minutes), sign * Number(seconds), sign * Number(msecs));
69
+ if (value === "") {
70
+ return null;
99
71
  }
72
+ return value;
100
73
  }
101
- }
102
- date(value, cell) {
103
- const first = value[0];
104
- if (first == null || first.match(/[JFMASOND0-9]/) == null) {
105
- return;
74
+ bool(value, cell) {
75
+ return BOOLS[value.toLowerCase()];
106
76
  }
107
- if (value[value.length - 1].match(/[0-9Z]/) == null) {
108
- return;
77
+ number(value, cell) {
78
+ const m = value.match(/^-?[\d.]+$/);
79
+ if (m != null &&
80
+ value.match(/\.$/) == null &&
81
+ (value.match(/\./g) || []).length <= 1) {
82
+ return parseFloat(value);
83
+ }
109
84
  }
110
- let timeZone = "UTC";
111
- try {
112
- timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
85
+ timedelta(value, cell) {
86
+ if (value.length < 4 || isNaN(value[value.length - 1])) {
87
+ return;
88
+ }
89
+ {
90
+ const match = value.match(/^([+-]?)(\d+):(\d{2})$/);
91
+ if (match) {
92
+ const [, _sign, hours, minutes] = match;
93
+ const sign = _sign === "-" ? -1 : 1;
94
+ return time_1.TimeDelta.create(sign * Number(hours), sign * Number(minutes));
95
+ }
96
+ }
97
+ {
98
+ const match = value.match(/^([+-]?)(\d+):(\d{2}):(\d{2})$/);
99
+ if (match) {
100
+ const [, _sign, hours, minutes, seconds] = match;
101
+ const sign = _sign === "-" ? -1 : 1;
102
+ return time_1.TimeDelta.create(sign * Number(hours), sign * Number(minutes), sign * Number(seconds));
103
+ }
104
+ }
105
+ {
106
+ const match = value.match(/^([+-]?)(\d+):(\d{2}):(\d{2})\.(\d+)$/);
107
+ if (match) {
108
+ const [, _sign, hours, minutes, seconds, msecs] = match;
109
+ const sign = _sign === "-" ? -1 : 1;
110
+ return time_1.TimeDelta.create(sign * Number(hours), sign * Number(minutes), sign * Number(seconds), sign * Number(msecs));
111
+ }
112
+ }
113
113
  }
114
- catch (e) { }
115
- const d = parseFromTimeZone(value, { timeZone });
116
- if (d.toString() === "Invalid Date") {
117
- return;
114
+ date(value, cell) {
115
+ const first = value[0];
116
+ if (first == null || first.match(/[JFMASOND0-9]/) == null) {
117
+ return;
118
+ }
119
+ if (value[value.length - 1].match(/[0-9Z]/) == null) {
120
+ return;
121
+ }
122
+ let timeZone = "UTC";
123
+ try {
124
+ timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
125
+ }
126
+ catch (e) { }
127
+ const d = (0, date_fns_timezone_1.parseFromTimeZone)(value, { timeZone });
128
+ if (d.toString() === "Invalid Date") {
129
+ return;
130
+ }
131
+ return d;
118
132
  }
119
- return d;
120
133
  }
121
- }
122
- export const defaultParser = new Parser();
134
+ exports.Parser = Parser;
135
+ exports.defaultParser = new Parser();
136
+ });
123
137
  //# sourceMappingURL=core.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/parsers/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/parsers/core.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,26 @@
1
- import React from "react";
2
- export const CheckboxRendererMixin = {
3
- bool(value, writer) {
4
- return (React.createElement("input", { type: "checkbox", checked: value, onChange: (e) => {
5
- writer && writer(e.currentTarget.checked.toString());
6
- e.currentTarget.blur();
7
- } }));
8
- }
1
+ var __importDefault = (this && this.__importDefault) || function (mod) {
2
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
3
  };
4
+ (function (factory) {
5
+ if (typeof module === "object" && typeof module.exports === "object") {
6
+ var v = factory(require, exports);
7
+ if (v !== undefined) module.exports = v;
8
+ }
9
+ else if (typeof define === "function" && define.amd) {
10
+ define(["require", "exports", "react"], factory);
11
+ }
12
+ })(function (require, exports) {
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.CheckboxRendererMixin = void 0;
16
+ const react_1 = __importDefault(require("react"));
17
+ exports.CheckboxRendererMixin = {
18
+ bool(value, writer) {
19
+ return (react_1.default.createElement("input", { type: "checkbox", checked: value, onChange: (e) => {
20
+ writer && writer(e.currentTarget.checked.toString());
21
+ e.currentTarget.blur();
22
+ } }));
23
+ }
24
+ };
25
+ });
10
26
  //# sourceMappingURL=checkbox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../src/renderers/checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,CAAC,KAAc,EAAE,MAAmB;QACtC,OAAO,CACL,+BACE,IAAI,EAAC,UAAU,EACf,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;gBACd,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACrD,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;YACzB,CAAC,GACD,CACH,CAAC;IACJ,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../src/renderers/checkbox.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;IAAA,kDAA0B;IAGb,QAAA,qBAAqB,GAAG;QACnC,IAAI,CAAC,KAAc,EAAE,MAAmB;YACtC,OAAO,CACL,yCACE,IAAI,EAAC,UAAU,EACf,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACrD,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;gBACzB,CAAC,GACD,CACH,CAAC;QACJ,CAAC;KACF,CAAA"}
@@ -1,143 +1,157 @@
1
- import { Table } from "../lib/table";
2
- import { solveFormula } from "../formula/solver";
3
- import { FormulaError } from "../formula/evaluator";
4
- import { p2a } from "../lib/converters";
5
- import { TimeDelta } from "../lib/time";
6
- import { format as formatDate } from "date-fns";
7
- export class Renderer {
8
- constructor(props) {
9
- this.datetimeFormat = "yyyy-MM-dd HH:mm:ss";
10
- this.dateFormat = "yyyy-MM-dd";
11
- this.timeDeltaFormat = "HH:mm";
12
- this.applyMixins(props === null || props === void 0 ? void 0 : props.mixins);
13
- if (props == null) {
14
- return;
15
- }
16
- const { condition, complement } = props;
17
- this.condition = condition;
18
- this.complement = complement;
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports", "../lib/table", "../formula/solver", "../formula/evaluator", "../lib/converters", "../lib/time", "date-fns"], factory);
19
8
  }
20
- applyMixins(mixins) {
21
- if (mixins == null) {
22
- return;
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.defaultRenderer = exports.Renderer = void 0;
13
+ const table_1 = require("../lib/table");
14
+ const solver_1 = require("../formula/solver");
15
+ const evaluator_1 = require("../formula/evaluator");
16
+ const converters_1 = require("../lib/converters");
17
+ const time_1 = require("../lib/time");
18
+ const date_fns_1 = require("date-fns");
19
+ class Renderer {
20
+ constructor(props) {
21
+ this.datetimeFormat = "yyyy-MM-dd HH:mm:ss";
22
+ this.dateFormat = "yyyy-MM-dd";
23
+ this.timeDeltaFormat = "HH:mm";
24
+ this.applyMixins(props === null || props === void 0 ? void 0 : props.mixins);
25
+ if (props == null) {
26
+ return;
27
+ }
28
+ const { condition, complement } = props;
29
+ this.condition = condition;
30
+ this.complement = complement;
23
31
  }
24
- for (const mixin of mixins) {
25
- for (const key in mixin) {
26
- // @ts-ignore
27
- this[key] = mixin[key];
32
+ applyMixins(mixins) {
33
+ if (mixins == null) {
34
+ return;
35
+ }
36
+ for (const mixin of mixins) {
37
+ for (const key in mixin) {
38
+ // @ts-ignore
39
+ this[key] = mixin[key];
40
+ }
28
41
  }
29
42
  }
30
- }
31
- call(table, point, writer) {
32
- var _a;
33
- const address = p2a(point);
34
- const cache = table.getSolvedCache(address);
35
- const value = cache || ((_a = table.getByPoint(point)) === null || _a === void 0 ? void 0 : _a.value);
36
- const { y, x } = point;
37
- return this.render(value, table.trim({ top: y, left: x, bottom: y, right: x }), writer);
38
- }
39
- render(value, table, writer) {
40
- var _a;
41
- if (this.condition && !this.condition(value)) {
42
- return this.complement ? this.complement(value) : this.stringify(value);
43
+ call(table, point, writer) {
44
+ var _a;
45
+ const address = (0, converters_1.p2a)(point);
46
+ const cache = table.getSolvedCache(address);
47
+ const value = cache || ((_a = table.getByPoint(point)) === null || _a === void 0 ? void 0 : _a.value);
48
+ const { y, x } = point;
49
+ return this.render(value, table.trim({ top: y, left: x, bottom: y, right: x }), writer);
43
50
  }
44
- switch (typeof value) {
45
- case "object":
46
- if (value instanceof Date) {
47
- return this.date(value, writer);
48
- }
49
- if (value instanceof TimeDelta) {
50
- return this.timedelta(value, writer);
51
- }
52
- if (value == null) {
53
- return this.null(value, writer);
54
- }
55
- if (value instanceof Table) {
56
- return this.render((_a = value.getByPoint({ y: value.top, x: value.left })) === null || _a === void 0 ? void 0 : _a.value, table, writer);
51
+ render(value, table, writer) {
52
+ var _a;
53
+ if (this.condition && !this.condition(value)) {
54
+ return this.complement ? this.complement(value) : this.stringify(value);
55
+ }
56
+ switch (typeof value) {
57
+ case "object":
58
+ if (value instanceof Date) {
59
+ return this.date(value, writer);
60
+ }
61
+ if (value instanceof time_1.TimeDelta) {
62
+ return this.timedelta(value, writer);
63
+ }
64
+ if (value == null) {
65
+ return this.null(value, writer);
66
+ }
67
+ if (value instanceof table_1.Table) {
68
+ return this.render((_a = value.getByPoint({ y: value.top, x: value.left })) === null || _a === void 0 ? void 0 : _a.value, table, writer);
69
+ }
70
+ if (Array.isArray(value)) {
71
+ return this.array(value, writer);
72
+ }
73
+ if (value instanceof evaluator_1.FormulaError) {
74
+ throw value;
75
+ }
76
+ return this.object(value, writer);
77
+ case "string":
78
+ return this.string(value, table, writer);
79
+ case "number":
80
+ return this.number(value, writer);
81
+ case "boolean":
82
+ return this.bool(value, writer);
83
+ case "undefined":
84
+ return this.undefined(value, writer);
85
+ case "function":
86
+ return value();
87
+ }
88
+ return "";
89
+ }
90
+ stringify(cell) {
91
+ const { value } = cell;
92
+ if (value instanceof Date) {
93
+ return this.date(value);
94
+ }
95
+ if (value instanceof time_1.TimeDelta) {
96
+ return this.timedelta(value);
97
+ }
98
+ if (value == null) {
99
+ return "";
100
+ }
101
+ return value.toString();
102
+ }
103
+ string(value, table, writer) {
104
+ if (value[0] === "'") {
105
+ return value.substring(1);
106
+ }
107
+ if (value[0] === "=") {
108
+ const result = (0, solver_1.solveFormula)({ value, table, raise: true });
109
+ if (result == null) {
110
+ // @ts-ignore
111
+ return this[String(result)](result);
57
112
  }
58
- if (Array.isArray(value)) {
59
- return this.array(value, writer);
113
+ if (result.constructor.name === "Boolean") {
114
+ return String(result).toUpperCase();
60
115
  }
61
- if (value instanceof FormulaError) {
62
- throw value;
116
+ if (result.constructor.name === "Date") {
117
+ return this.date(result);
63
118
  }
64
- return this.object(value, writer);
65
- case "string":
66
- return this.string(value, table, writer);
67
- case "number":
68
- return this.number(value, writer);
69
- case "boolean":
70
- return this.bool(value, writer);
71
- case "undefined":
72
- return this.undefined(value, writer);
73
- case "function":
74
- return value();
119
+ return this.render(result, table, writer);
120
+ }
121
+ return value;
75
122
  }
76
- return "";
77
- }
78
- stringify(cell) {
79
- const { value } = cell;
80
- if (value instanceof Date) {
81
- return this.date(value);
123
+ bool(value, writer) {
124
+ return value ? "TRUE" : "FALSE";
82
125
  }
83
- if (value instanceof TimeDelta) {
84
- return this.timedelta(value);
126
+ number(value, writer) {
127
+ if (isNaN(value)) {
128
+ return "NaN";
129
+ }
130
+ return value;
85
131
  }
86
- if (value == null) {
87
- return "";
132
+ date(value, writer) {
133
+ if (value.getHours() + value.getMinutes() + value.getSeconds() === 0) {
134
+ return (0, date_fns_1.format)(value, this.dateFormat);
135
+ }
136
+ return (0, date_fns_1.format)(value, this.datetimeFormat);
88
137
  }
89
- return value.toString();
90
- }
91
- string(value, table, writer) {
92
- if (value[0] === "'") {
93
- return value.substring(1);
138
+ timedelta(value, writer) {
139
+ return value.stringify(this.timeDeltaFormat);
94
140
  }
95
- if (value[0] === "=") {
96
- const result = solveFormula({ value, table, raise: true });
97
- if (result == null) {
98
- // @ts-ignore
99
- return this[String(result)](result);
100
- }
101
- if (result.constructor.name === "Boolean") {
102
- return String(result).toUpperCase();
103
- }
104
- if (result.constructor.name === "Date") {
105
- return this.date(result);
106
- }
107
- return this.render(result, table, writer);
141
+ array(value, writer) {
142
+ return value.map((v) => this.stringify({ value: v })).join(",");
108
143
  }
109
- return value;
110
- }
111
- bool(value, writer) {
112
- return value ? "TRUE" : "FALSE";
113
- }
114
- number(value, writer) {
115
- if (isNaN(value)) {
116
- return "NaN";
144
+ object(value, writer) {
145
+ return JSON.stringify(value);
117
146
  }
118
- return value;
119
- }
120
- date(value, writer) {
121
- if (value.getHours() + value.getMinutes() + value.getSeconds() === 0) {
122
- return formatDate(value, this.dateFormat);
147
+ null(value, writer) {
148
+ return "";
149
+ }
150
+ undefined(value, writer) {
151
+ return "";
123
152
  }
124
- return formatDate(value, this.datetimeFormat);
125
- }
126
- timedelta(value, writer) {
127
- return value.stringify(this.timeDeltaFormat);
128
- }
129
- array(value, writer) {
130
- return value.map((v) => this.stringify({ value: v })).join(",");
131
- }
132
- object(value, writer) {
133
- return JSON.stringify(value);
134
- }
135
- null(value, writer) {
136
- return "";
137
- }
138
- undefined(value, writer) {
139
- return "";
140
153
  }
141
- }
142
- export const defaultRenderer = new Renderer();
154
+ exports.Renderer = Renderer;
155
+ exports.defaultRenderer = new Renderer();
156
+ });
143
157
  //# sourceMappingURL=core.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/renderers/core.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAY,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,UAAU,CAAC;AAyBhD,MAAM,OAAO,QAAQ;IAOnB,YAAY,KAAa;QANlB,mBAAc,GAAW,qBAAqB,CAAC;QAC/C,eAAU,GAAW,YAAY,CAAC;QAClC,oBAAe,GAAW,OAAO,CAAC;QAKvC,IAAI,CAAC,WAAW,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC,CAAC;QAChC,IAAI,KAAK,IAAI,IAAI,EAAE;YACjB,OAAO;SACR;QACD,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEO,WAAW,CAAC,MAA4B;QAC9C,IAAI,MAAM,IAAI,IAAI,EAAE;YAClB,OAAO;SACR;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;gBACvB,aAAa;gBACb,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;aACxB;SACF;IACH,CAAC;IAEM,IAAI,CAAC,KAAY,EAAE,KAAgB,EAAE,MAAmB;;QAC7D,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,KAAK,KAAI,MAAA,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,0CAAE,KAAK,CAAA,CAAC;QACtD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC;QACvB,OAAO,IAAI,CAAC,MAAM,CAChB,KAAK,EACL,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EACpD,MAAM,CACP,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,KAAU,EAAE,KAAY,EAAE,MAAmB;;QACzD,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;YAC5C,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SACzE;QAED,QAAQ,OAAO,KAAK,EAAE;YACpB,KAAK,QAAQ;gBACX,IAAI,KAAK,YAAY,IAAI,EAAE;oBACzB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;iBACjC;gBACD,IAAI,KAAK,YAAY,SAAS,EAAE;oBAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;iBACtC;gBACD,IAAI,KAAK,IAAI,IAAI,EAAE;oBACjB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;iBACjC;gBACD,IAAI,KAAK,YAAY,KAAK,EAAE;oBAC1B,OAAO,IAAI,CAAC,MAAM,CAChB,MAAA,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,0CAAE,KAAK,EACxD,KAAK,EACL,MAAM,CACP,CAAC;iBACH;gBACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACxB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;iBAClC;gBACD,IAAI,KAAK,YAAY,YAAY,EAAE;oBACjC,MAAM,KAAK,CAAC;iBACb;gBACD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACpC,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAC3C,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACpC,KAAK,SAAS;gBACZ,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAClC,KAAK,WAAW;gBACd,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACvC,KAAK,UAAU;gBACb,OAAO,KAAK,EAAY,CAAC;SAC5B;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,SAAS,CAAC,IAAc;QACtB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,IAAI,KAAK,YAAY,IAAI,EAAE;YACzB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACzB;QACD,IAAI,KAAK,YAAY,SAAS,EAAE;YAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;SAC9B;QACD,IAAI,KAAK,IAAI,IAAI,EAAE;YACjB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,KAAa,EAAE,KAAY,EAAE,MAAmB;QACrD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YACpB,OAAO,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC3B;QACD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YACpB,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3D,IAAI,MAAM,IAAI,IAAI,EAAE;gBAClB,aAAa;gBACb,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;aACrC;YACD,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,SAAS,EAAE;gBACzC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;aACrC;YACD,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE;gBACtC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC1B;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;SAC3C;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,KAAc,EAAE,MAAmB;QACtC,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,KAAa,EAAE,MAAmB;QACvC,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,KAAW,EAAE,MAAmB;QACnC,IAAI,KAAK,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,UAAU,EAAE,GAAG,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE;YACpE,OAAO,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SAC3C;QACD,OAAO,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAChD,CAAC;IAED,SAAS,CAAC,KAAgB,EAAE,MAAmB;QAC7C,OAAO,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,KAAY,EAAE,MAAmB;QACrC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,CAAC,KAAU,EAAE,MAAmB;QACpC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,CAAC,KAAW,EAAE,MAAmB;QACnC,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,SAAS,CAAC,KAAgB,EAAE,MAAmB;QAC7C,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAGD,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/renderers/core.ts"],"names":[],"mappings":"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"}