vislite 1.3.0 → 1.4.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 (191) hide show
  1. package/AUTHORS.txt +6 -6
  2. package/CHANGELOG +12 -5
  3. package/LICENSE +20 -20
  4. package/README.md +284 -284
  5. package/lib/BarLayout/index.es.d.ts +3 -0
  6. package/lib/BarLayout/index.es.js +467 -0
  7. package/lib/BarLayout/index.es.min.d.ts +3 -0
  8. package/lib/BarLayout/index.es.min.js +10 -0
  9. package/lib/Buffer/index.es.js +1 -1
  10. package/lib/Buffer/index.es.min.js +1 -1
  11. package/lib/Canvas/index.es.js +2 -2
  12. package/lib/Canvas/index.es.min.js +1 -1
  13. package/lib/Cardinal/index.es.js +1 -1
  14. package/lib/Cardinal/index.es.min.js +1 -1
  15. package/lib/Eoap/index.es.js +1 -1
  16. package/lib/Eoap/index.es.min.js +1 -1
  17. package/lib/Hermite/index.es.js +1 -1
  18. package/lib/Hermite/index.es.min.js +1 -1
  19. package/lib/MapCoordinate/index.es.js +1 -1
  20. package/lib/MapCoordinate/index.es.min.js +1 -1
  21. package/lib/Matrix4/index.es.js +1 -1
  22. package/lib/Matrix4/index.es.min.js +1 -1
  23. package/lib/Mercator/index.es.js +1 -1
  24. package/lib/Mercator/index.es.min.js +1 -1
  25. package/lib/PieLayout/index.es.d.ts +3 -0
  26. package/lib/PieLayout/index.es.js +234 -0
  27. package/lib/PieLayout/index.es.min.d.ts +3 -0
  28. package/lib/PieLayout/index.es.min.js +9 -0
  29. package/lib/RawCanvas/index.es.js +2 -2
  30. package/lib/RawCanvas/index.es.min.js +1 -1
  31. package/lib/SVG/index.es.js +29 -6
  32. package/lib/SVG/index.es.min.js +2 -2
  33. package/lib/Shader/index.es.js +1 -1
  34. package/lib/Shader/index.es.min.js +1 -1
  35. package/lib/Texture/index.es.js +1 -1
  36. package/lib/Texture/index.es.min.js +1 -1
  37. package/lib/TreeLayout/index.es.js +109 -102
  38. package/lib/TreeLayout/index.es.min.js +6 -2
  39. package/lib/animation/index.es.js +114 -103
  40. package/lib/animation/index.es.min.js +6 -2
  41. package/lib/assemble/index.es.js +1 -1
  42. package/lib/assemble/index.es.min.js +1 -1
  43. package/lib/getLoopColors/index.es.js +1 -1
  44. package/lib/getLoopColors/index.es.min.js +1 -1
  45. package/lib/getWebGLContext/index.es.js +1 -1
  46. package/lib/getWebGLContext/index.es.min.js +1 -1
  47. package/lib/index.umd.js +510 -158
  48. package/lib/index.umd.min.js +12 -2
  49. package/lib/initOption/index.es.js +1 -1
  50. package/lib/initOption/index.es.min.js +1 -1
  51. package/lib/mergeOption/index.es.js +1 -1
  52. package/lib/mergeOption/index.es.min.js +1 -1
  53. package/lib/move/index.es.js +1 -1
  54. package/lib/move/index.es.min.js +1 -1
  55. package/lib/rotate/index.es.js +1 -1
  56. package/lib/rotate/index.es.min.js +1 -1
  57. package/lib/ruler/index.es.js +1 -1
  58. package/lib/ruler/index.es.min.js +1 -1
  59. package/lib/scale/index.es.js +1 -1
  60. package/lib/scale/index.es.min.js +1 -1
  61. package/lib/throttle/index.es.js +55 -50
  62. package/lib/throttle/index.es.min.js +5 -1
  63. package/minialipay/ui-canvas/drawImage.js +35 -35
  64. package/minialipay/ui-canvas/index.acss +4 -4
  65. package/minialipay/ui-canvas/index.axml +3 -3
  66. package/minialipay/ui-canvas/index.d.ts +1 -1
  67. package/minialipay/ui-canvas/index.js +100 -100
  68. package/minialipay/ui-canvas/index.json +6 -6
  69. package/miniprogram/ui-canvas/drawImage.js +35 -35
  70. package/miniprogram/ui-canvas/index.js +117 -117
  71. package/miniprogram/ui-canvas/index.json +4 -4
  72. package/miniprogram/ui-canvas/index.wxml +4 -4
  73. package/miniprogram/ui-canvas/index.wxss +5 -5
  74. package/package/BarLayout/index.ts +3 -0
  75. package/package/Buffer/index.ts +2 -2
  76. package/package/Canvas/index.ts +2 -2
  77. package/package/Cardinal/index.ts +2 -2
  78. package/package/Eoap/index.ts +2 -2
  79. package/package/Hermite/index.ts +2 -2
  80. package/package/MapCoordinate/index.ts +2 -2
  81. package/package/Matrix4/index.ts +2 -2
  82. package/package/Mercator/index.ts +2 -2
  83. package/package/PieLayout/index.ts +3 -0
  84. package/package/RawCanvas/index.ts +2 -2
  85. package/package/SVG/index.ts +2 -2
  86. package/package/Shader/index.ts +2 -2
  87. package/package/Texture/index.ts +2 -2
  88. package/package/TreeLayout/index.ts +2 -2
  89. package/package/animation/index.ts +5 -2
  90. package/package/assemble/index.ts +2 -2
  91. package/package/getLoopColors/index.ts +2 -2
  92. package/package/getWebGLContext/index.ts +40 -40
  93. package/package/index.ts +4 -0
  94. package/package/initOption/index.ts +2 -2
  95. package/package/mergeOption/index.ts +2 -2
  96. package/package/move/index.ts +2 -2
  97. package/package/rotate/index.ts +2 -2
  98. package/package/ruler/index.ts +2 -2
  99. package/package/scale/index.ts +2 -2
  100. package/package/throttle/index.ts +1 -1
  101. package/package.json +3 -3
  102. package/src/Canvas.ts +84 -84
  103. package/src/Eoap.ts +66 -66
  104. package/src/Matrix4/index.ts +84 -84
  105. package/src/Matrix4/move.ts +12 -12
  106. package/src/Matrix4/rotate.ts +15 -15
  107. package/src/Matrix4/scale.ts +11 -11
  108. package/src/Matrix4/transform.ts +64 -64
  109. package/src/Mercator.ts +27 -27
  110. package/src/SVG.ts +31 -0
  111. package/src/common/assemble.ts +22 -22
  112. package/src/common/canvas/arc.ts +51 -51
  113. package/src/common/canvas/config.ts +176 -176
  114. package/src/common/canvas/default.ts +64 -64
  115. package/src/common/canvas/gradient.ts +1 -1
  116. package/src/common/canvas/index.ts +188 -188
  117. package/src/common/canvas/painter.ts +443 -443
  118. package/src/common/canvas/texts.ts +18 -18
  119. package/src/common/map/getBoundary.ts +15 -15
  120. package/src/common/map/tool.ts +29 -29
  121. package/src/common/option.ts +29 -29
  122. package/src/common/setStyle.ts +5 -5
  123. package/src/common/svg/config.ts +213 -213
  124. package/src/common/svg/default.ts +2 -2
  125. package/src/common/svg/gradient.ts +2 -2
  126. package/src/common/svg/index.ts +1 -1
  127. package/src/common/svg/tool.ts +51 -51
  128. package/src/common/tree/index.ts +25 -25
  129. package/src/common/tree/toInnerTree.ts +61 -61
  130. package/src/common/tree/toPlainTree.ts +3 -0
  131. package/src/common/type.ts +26 -26
  132. package/src/common/webgl/buffer.ts +79 -79
  133. package/src/common/webgl/getWebGLContext.ts +45 -45
  134. package/src/common/webgl/shader.ts +75 -75
  135. package/src/common/webgl/texture.ts +1 -0
  136. package/src/coordinate/MapCoordinate.ts +80 -80
  137. package/src/getLoopColors.ts +42 -42
  138. package/src/interpolation/Cardinal.ts +110 -110
  139. package/src/interpolation/Hermite.ts +65 -65
  140. package/src/layout/BarLayout.ts +249 -0
  141. package/src/layout/PieLayout.ts +142 -0
  142. package/src/layout/TreeLayout.ts +4 -1
  143. package/src/move.ts +7 -7
  144. package/src/rotate.ts +7 -7
  145. package/src/ruler.ts +209 -209
  146. package/src/scale.ts +6 -6
  147. package/types/Bar.d.ts +92 -0
  148. package/types/BarConfig.d.ts +5 -0
  149. package/types/BarLayout.d.ts +49 -0
  150. package/types/BarOption.d.ts +32 -0
  151. package/types/Buffer.d.ts +23 -23
  152. package/types/Canvas.d.ts +352 -352
  153. package/types/CanvasConfig.d.ts +88 -88
  154. package/types/CanvasOption.d.ts +8 -8
  155. package/types/CanvasOpts.d.ts +9 -9
  156. package/types/Cardinal.d.ts +13 -13
  157. package/types/Gradient.d.ts +14 -14
  158. package/types/Hermite.d.ts +18 -18
  159. package/types/Map.d.ts +9 -9
  160. package/types/MapConfig.d.ts +27 -27
  161. package/types/MapCoordinate.d.ts +22 -22
  162. package/types/Matrix4.d.ts +47 -47
  163. package/types/Pie.d.ts +74 -0
  164. package/types/PieConfig.d.ts +27 -0
  165. package/types/PieLayout.d.ts +41 -0
  166. package/types/PieOption.d.ts +22 -0
  167. package/types/SVG.d.ts +4 -0
  168. package/types/SVGConfig.d.ts +71 -71
  169. package/types/Shader.d.ts +16 -16
  170. package/types/Texture.d.ts +16 -16
  171. package/types/Tree.d.ts +74 -74
  172. package/types/TreeConfig.d.ts +36 -36
  173. package/types/TreeLayout.d.ts +59 -59
  174. package/types/TreeOption.d.ts +48 -48
  175. package/types/animation.d.ts +7 -1
  176. package/types/assemble.d.ts +5 -5
  177. package/types/getLoopColors.d.ts +5 -5
  178. package/types/getWebGLContext.d.ts +7 -7
  179. package/types/index.d.ts +16 -0
  180. package/types/move.d.ts +5 -5
  181. package/types/option.d.ts +12 -12
  182. package/types/painterConfig.d.ts +4 -4
  183. package/types/rotate.d.ts +5 -5
  184. package/types/ruler.d.ts +10 -10
  185. package/types/scale.d.ts +5 -5
  186. package/types/throttle.d.ts +1 -1
  187. package/types/throttleOption.d.ts +1 -1
  188. package/types/ui-canvas.d.ts +4 -4
  189. package/types/uni-canvas.d.ts +3 -3
  190. package/uni-app/drawImage.js +19 -19
  191. package/uni-app/ui-canvas.vue +284 -284
@@ -0,0 +1,467 @@
1
+ /*!
2
+ * BarLayout of VISLite JavaScript Library v1.4.0
3
+ * git+https://github.com/oi-contrib/VISLite.git
4
+ */
5
+ function initOption(setOption, defaultOption) {
6
+ for (var key in setOption) {
7
+ defaultOption[key] = setOption[key];
8
+ }
9
+ return defaultOption;
10
+ }
11
+
12
+ function ruler (maxValue, minValue, num, option) {
13
+ if (maxValue < minValue) {
14
+ var temp = minValue;
15
+ minValue = maxValue;
16
+ maxValue = temp;
17
+ }
18
+ else if (maxValue == minValue) {
19
+ return [maxValue];
20
+ }
21
+ var times100 = (function (_value) {
22
+ var _times100_base = (_value < 100 && _value > -100) ? 10 : 0.1;
23
+ var _times100 = -1, _tiemsValue = _value;
24
+ while (_times100_base == 10 ?
25
+ (_tiemsValue >= -100 && _tiemsValue <= 100)
26
+ :
27
+ (_tiemsValue <= -100 || _tiemsValue >= 100)) {
28
+ _times100 += 1;
29
+ _tiemsValue *= _times100_base;
30
+ }
31
+ if (_times100_base == 10) {
32
+ return Math.pow(10, _times100);
33
+ }
34
+ else {
35
+ var temp = "0.";
36
+ for (var i = 1; i < _times100; i++) {
37
+ temp += "0";
38
+ }
39
+ return +(temp + "1");
40
+ }
41
+ })(maxValue - minValue);
42
+ var distance100_oral = Math.ceil((maxValue - minValue) * times100 / num);
43
+ var getResult = function (changValue) {
44
+ var distance100 = {
45
+ 3: 2,
46
+ 4: 5,
47
+ 6: 5,
48
+ 7: 5,
49
+ 8: 10,
50
+ 9: 10,
51
+ 11: 10,
52
+ 12: 10,
53
+ 13: 15,
54
+ 14: 15,
55
+ 16: 15,
56
+ 17: 15,
57
+ 18: 20,
58
+ 19: 20,
59
+ 21: 20,
60
+ 22: 20,
61
+ 23: 25,
62
+ 24: 25,
63
+ 26: 25,
64
+ 27: 25
65
+ }[distance100_oral + changValue] || (distance100_oral + changValue);
66
+ var distance = distance100 / times100;
67
+ var begin = Math.floor(minValue / distance) * distance;
68
+ var rulerArray = [];
69
+ rulerArray.push(begin);
70
+ for (var index = 1; rulerArray[rulerArray.length - 1] < maxValue; index++) {
71
+ rulerArray.push(begin + distance * index);
72
+ }
73
+ return rulerArray;
74
+ };
75
+ var rulerArray = getResult(0);
76
+ var balanceMax = function () {
77
+ var rulerArray_temp = [];
78
+ var changeDist = rulerArray[rulerArray.length - 1] - (option === null || option === void 0 ? void 0 : option.max);
79
+ for (var index = 0; index < rulerArray.length; index++) {
80
+ if (index + 1 < rulerArray.length && rulerArray[index + 1] - changeDist < minValue) ;
81
+ else {
82
+ rulerArray_temp.push(rulerArray[index] - changeDist);
83
+ }
84
+ }
85
+ return rulerArray_temp;
86
+ };
87
+ var balanceMin = function () {
88
+ var rulerArray_temp = [];
89
+ var changeDist = rulerArray[0] - (option === null || option === void 0 ? void 0 : option.min);
90
+ for (var index = 0; index < rulerArray.length; index++) {
91
+ rulerArray_temp[index] = rulerArray[index] - changeDist;
92
+ if (maxValue <= rulerArray_temp[index])
93
+ break;
94
+ }
95
+ return rulerArray_temp;
96
+ };
97
+ if (option) {
98
+ if ('max' in option && 'min' in option && option.max >= maxValue && option.min <= minValue) {
99
+ var isAnswer = function () {
100
+ if (rulerArray[0] >= option.min && rulerArray[rulerArray.length - 1] <= option.max)
101
+ return true;
102
+ var rulerArray_max = balanceMax();
103
+ if (rulerArray_max[0] >= option.min && rulerArray_max[rulerArray_max.length - 1] <= option.max) {
104
+ rulerArray = rulerArray_max;
105
+ return true;
106
+ }
107
+ var rulerArray_min = balanceMin();
108
+ if (rulerArray_min[0] >= option.min && rulerArray_min[rulerArray_max.length - 1] <= option.max) {
109
+ rulerArray = rulerArray_min;
110
+ return true;
111
+ }
112
+ };
113
+ if (isAnswer())
114
+ return rulerArray;
115
+ for (var changValue = 1; changValue < 100; changValue++) {
116
+ rulerArray = getResult(changValue);
117
+ if (isAnswer())
118
+ return rulerArray;
119
+ rulerArray = getResult(-changValue);
120
+ if (isAnswer())
121
+ return rulerArray;
122
+ }
123
+ }
124
+ if ('max' in option && option.max >= maxValue) {
125
+ if (option.max < rulerArray[rulerArray.length - 1]) {
126
+ rulerArray = balanceMax();
127
+ }
128
+ }
129
+ else if ('min' in option && option.min <= minValue) {
130
+ if (option.min > rulerArray[0]) {
131
+ rulerArray = balanceMin();
132
+ }
133
+ }
134
+ }
135
+ for (var index = 0; index < rulerArray.length; index++) {
136
+ var valStr = rulerArray[index] + "";
137
+ if (/\./.test(valStr)) {
138
+ if (/9{7,}$/.test(valStr)) {
139
+ valStr = valStr.replace(/9{7,}$/, '');
140
+ rulerArray[index] = +(valStr.substring(0, valStr.length - 1) + ((+valStr[valStr.length - 1]) + 1));
141
+ }
142
+ else if (/0{7,}\d$/.test(valStr)) {
143
+ rulerArray[index] = +(valStr.replace(/0{7,}\d$/, ''));
144
+ }
145
+ }
146
+ }
147
+ return rulerArray;
148
+ }
149
+
150
+ /*!
151
+ * animation of OIPage v1.3.0
152
+ * git+https://github.com/oi-contrib/OIPage.git
153
+ */
154
+
155
+ //当前正在运动的动画的tick函数堆栈
156
+ var $timers = [];
157
+ //唯一定时器的定时间隔
158
+ var $interval = 13;
159
+ //定时器ID
160
+ var $timerId;
161
+
162
+ /**
163
+ * 动画轮播
164
+ * @param {function} doback 轮询函数,有一个形参deep,0-1,表示执行进度
165
+ * @param {number} duration 动画时长,可选
166
+ * @param {function} callback 动画结束回调,可选,有一个形参deep,0-1,表示执行进度
167
+ *
168
+ * @returns {function} 返回一个函数,调用该函数,可以提前结束动画
169
+ */
170
+ function animation(doback, duration, callback) {
171
+ if (arguments.length < 2) duration = 400;
172
+ if (arguments.length < 3) callback = function () { };
173
+
174
+ var clock = {
175
+ //把tick函数推入堆栈
176
+ "timer": function (tick, duration, callback) {
177
+ if (!tick) {
178
+ throw new Error('Tick is required!');
179
+ }
180
+ var id = new Date().valueOf() + "_" + (Math.random() * 1000).toFixed(0);
181
+ $timers.push({
182
+ "id": id,
183
+ "createTime": new Date(),
184
+ "tick": tick,
185
+ "duration": duration,
186
+ "callback": callback
187
+ });
188
+ clock.start();
189
+ return id;
190
+ },
191
+
192
+ //开启唯一的定时器timerId
193
+ "start": function () {
194
+ if (!$timerId) {
195
+ $timerId = setInterval(clock.tick, $interval);
196
+ }
197
+ },
198
+
199
+ //被定时器调用,遍历timers堆栈
200
+ "tick": function () {
201
+ var createTime, flag, tick, callback, timer, duration, passTime, timers = $timers;
202
+
203
+ $timers = [];
204
+ $timers.length = 0;
205
+
206
+ for (flag = 0; flag < timers.length; flag++) {
207
+ //初始化数据
208
+ timer = timers[flag];
209
+ createTime = timer.createTime;
210
+ tick = timer.tick;
211
+ duration = timer.duration;
212
+ callback = timer.callback;
213
+
214
+ //执行
215
+ passTime = (+new Date().valueOf() - createTime.valueOf()) / duration;
216
+ passTime = passTime > 1 ? 1 : passTime;
217
+ tick(passTime);
218
+ if (passTime < 1 && timer.id) {
219
+ //动画没有结束再添加
220
+ $timers.push(timer);
221
+ } else {
222
+ callback(passTime);
223
+ }
224
+ }
225
+ if ($timers.length <= 0) {
226
+ clock.stop();
227
+ }
228
+ },
229
+
230
+ //停止定时器,重置timerId=null
231
+ "stop": function () {
232
+ if ($timerId) {
233
+ clearInterval($timerId);
234
+ $timerId = null;
235
+ }
236
+ }
237
+ };
238
+
239
+ var id = clock.timer(function (deep) {
240
+ //其中deep为0-1,表示改变的程度
241
+ doback(deep);
242
+ }, duration, callback);
243
+
244
+ return {
245
+ // 一个函数
246
+ // 用于在动画结束前结束动画
247
+ stop: function () {
248
+ var i;
249
+ for (i in $timers) {
250
+ if ($timers[i].id == id) {
251
+ $timers[i].id = void 0;
252
+ return;
253
+ }
254
+ }
255
+ }
256
+ };
257
+
258
+ }
259
+
260
+ var BarLayout = (function () {
261
+ function BarLayout(config) {
262
+ if (config === void 0) { config = {}; }
263
+ this.name = 'BarLayout';
264
+ this.__option = {
265
+ x: 50,
266
+ y: 350,
267
+ width: 400,
268
+ height: 300,
269
+ category: "xAxis",
270
+ duration: 200
271
+ };
272
+ this.__config = initOption(config, {});
273
+ }
274
+ BarLayout.prototype.setOption = function (option) {
275
+ initOption(option, this.__option);
276
+ return this;
277
+ };
278
+ BarLayout.prototype.use = function (initBar) {
279
+ var bar = {
280
+ coordinate: {
281
+ x: this.__option.x,
282
+ y: this.__option.y,
283
+ width: this.__option.width,
284
+ height: this.__option.height,
285
+ xAxis: {
286
+ type: this.__option.category === "xAxis" ? "category" : "value",
287
+ data: []
288
+ },
289
+ yAxis: {
290
+ type: this.__option.category === "xAxis" ? "value" : "category",
291
+ data: []
292
+ }
293
+ },
294
+ node: []
295
+ };
296
+ var maxValue = void 0, minValue = void 0;
297
+ if (initBar.data) {
298
+ for (var _i = 0, _a = initBar.data; _i < _a.length; _i++) {
299
+ var val = _a[_i];
300
+ if (maxValue === void 0 || val > maxValue)
301
+ maxValue = val;
302
+ if (minValue === void 0 || val < minValue)
303
+ minValue = val;
304
+ }
305
+ }
306
+ else if (initBar.value) {
307
+ for (var _b = 0, _c = initBar.value; _b < _c.length; _b++) {
308
+ var item = _c[_b];
309
+ for (var _d = 0, _e = item.data; _d < _e.length; _d++) {
310
+ var val = _e[_d];
311
+ if (maxValue === void 0 || val > maxValue)
312
+ maxValue = val;
313
+ if (minValue === void 0 || val < minValue)
314
+ minValue = val;
315
+ }
316
+ }
317
+ }
318
+ else {
319
+ throw new Error('No data leads to parsing errors');
320
+ }
321
+ var rulerArray = ruler(maxValue || 0, minValue || 0, 5);
322
+ var categoryLen;
323
+ var valueLen;
324
+ if (this.__option.category === "xAxis") {
325
+ bar.coordinate.xAxis.data = initBar.category;
326
+ bar.coordinate.yAxis.data = rulerArray;
327
+ categoryLen = this.__option.width;
328
+ valueLen = -1 * this.__option.height;
329
+ }
330
+ else {
331
+ bar.coordinate.xAxis.data = rulerArray;
332
+ bar.coordinate.yAxis.data = initBar.category;
333
+ categoryLen = this.__option.height;
334
+ valueLen = this.__option.width;
335
+ }
336
+ var category = [];
337
+ var categorySingle1Width = categoryLen / initBar.category.length;
338
+ var categorySingle2Width = categorySingle1Width * 0.9;
339
+ var categoryStart = categorySingle1Width * 0.05;
340
+ if (initBar.data) {
341
+ for (var i = 0; i < initBar.data.length; i++) {
342
+ category.push([
343
+ categoryStart + categorySingle1Width * i,
344
+ categorySingle2Width
345
+ ]);
346
+ }
347
+ }
348
+ else {
349
+ var categorySingle3Width = categorySingle2Width / initBar.value.length;
350
+ var categorySingle4Width = categorySingle3Width * 0.9;
351
+ var categoryStartBlance = categorySingle3Width * 0.05;
352
+ for (var i = 0; i < initBar.value[0].data.length; i++) {
353
+ category[i] = [];
354
+ for (var j = 0; j < initBar.value.length; j++) {
355
+ category[i].push([
356
+ categoryStart + categorySingle1Width * i + categorySingle3Width * j + categoryStartBlance,
357
+ categorySingle4Width
358
+ ]);
359
+ }
360
+ }
361
+ }
362
+ var singleValueLen = valueLen / (rulerArray[rulerArray.length - 1] - rulerArray[0]);
363
+ var getLenByValue = function (value) {
364
+ return singleValueLen * (value - rulerArray[0]);
365
+ };
366
+ if (this.__option.category === "xAxis") {
367
+ if (initBar.data) {
368
+ var nodeBar = [];
369
+ for (var i = 0; i < initBar.data.length; i++) {
370
+ nodeBar.push({
371
+ x: this.__option.x + category[i][0],
372
+ y: this.__option.y,
373
+ width: category[i][1],
374
+ height: getLenByValue(initBar.data[i]),
375
+ value: initBar.data[i]
376
+ });
377
+ }
378
+ bar.node.push({
379
+ bar: nodeBar
380
+ });
381
+ }
382
+ else {
383
+ for (var j = 0; j < initBar.value.length; j++) {
384
+ var nodeBar = [];
385
+ for (var i = 0; i < initBar.value[j].data.length; i++) {
386
+ nodeBar.push({
387
+ x: this.__option.x + category[i][j][0],
388
+ y: this.__option.y,
389
+ width: category[i][j][1],
390
+ height: getLenByValue(initBar.value[j].data[i]),
391
+ value: initBar.value[j].data[i]
392
+ });
393
+ }
394
+ bar.node.push({
395
+ name: initBar.value[j].name,
396
+ bar: nodeBar
397
+ });
398
+ }
399
+ }
400
+ }
401
+ else {
402
+ if (initBar.data) {
403
+ var nodeBar = [];
404
+ for (var i = 0; i < initBar.data.length; i++) {
405
+ nodeBar.push({
406
+ x: this.__option.x,
407
+ y: this.__option.y - this.__option.height + category[i][0],
408
+ width: getLenByValue(initBar.data[i]),
409
+ height: category[i][1],
410
+ value: initBar.data[i]
411
+ });
412
+ }
413
+ bar.node.push({
414
+ bar: nodeBar
415
+ });
416
+ }
417
+ else {
418
+ for (var j = 0; j < initBar.value.length; j++) {
419
+ var nodeBar = [];
420
+ for (var i = 0; i < initBar.value[j].data.length; i++) {
421
+ nodeBar.push({
422
+ x: this.__option.x,
423
+ y: this.__option.y - this.__option.height + category[i][j][0],
424
+ width: getLenByValue(initBar.value[j].data[i]),
425
+ height: category[i][j][1],
426
+ value: initBar.value[j].data[i]
427
+ });
428
+ }
429
+ bar.node.push({
430
+ name: initBar.value[j].name,
431
+ bar: nodeBar
432
+ });
433
+ }
434
+ }
435
+ }
436
+ return bar;
437
+ };
438
+ BarLayout.prototype.bind = function (initBar, renderBack) {
439
+ this.__rback = renderBack;
440
+ this.__oralBar = initBar;
441
+ this.__preBar = this.use(this.__oralBar);
442
+ this.__rback(this.__preBar);
443
+ return this;
444
+ };
445
+ BarLayout.prototype.unbind = function () {
446
+ this.__rback = function () { return null; };
447
+ this.__oralBar = null;
448
+ this.__preBar = null;
449
+ return this;
450
+ };
451
+ BarLayout.prototype.doUpdate = function () {
452
+ var _this = this;
453
+ var newBar = this.use(this.__oralBar);
454
+ var cacheBar = JSON.parse(JSON.stringify(newBar));
455
+ animation(function (deep) {
456
+ if (_this.__preBar) ;
457
+ _this.__rback(cacheBar);
458
+ }, this.__option.duration, function () {
459
+ _this.__preBar = newBar;
460
+ _this.__rback(_this.__preBar);
461
+ });
462
+ return this;
463
+ };
464
+ return BarLayout;
465
+ }());
466
+
467
+ export { BarLayout as default };
@@ -0,0 +1,3 @@
1
+ import { BarLayout } from "../../types/index"
2
+
3
+ export default BarLayout
@@ -0,0 +1,10 @@
1
+ /*!
2
+ * BarLayout of VISLite JavaScript Library v1.4.0
3
+ * git+https://github.com/oi-contrib/VISLite.git
4
+ */
5
+ function t(t,i){for(var a in t)i[a]=t[a];return i}
6
+ /*!
7
+ * animation of OIPage v1.3.0
8
+ * git+https://github.com/oi-contrib/OIPage.git
9
+ */
10
+ var i,a=[];var n=function(){function n(i){void 0===i&&(i={}),this.name="BarLayout",this.__option={x:50,y:350,width:400,height:300,category:"xAxis",duration:200},this.__config=t(i,{})}return n.prototype.setOption=function(i){return t(i,this.__option),this},n.prototype.use=function(t){var i={coordinate:{x:this.__option.x,y:this.__option.y,width:this.__option.width,height:this.__option.height,xAxis:{type:"xAxis"===this.__option.category?"category":"value",data:[]},yAxis:{type:"xAxis"===this.__option.category?"value":"category",data:[]}},node:[]},a=void 0,n=void 0;if(t.data)for(var r=0,e=t.data;r<e.length;r++){var o=e[r];(void 0===a||o>a)&&(a=o),(void 0===n||o<n)&&(n=o)}else{if(!t.value)throw new Error("No data leads to parsing errors");for(var h=0,u=t.value;h<u.length;h++)for(var s=0,l=u[h].data;s<l.length;s++){o=l[s];(void 0===a||o>a)&&(a=o),(void 0===n||o<n)&&(n=o)}}var _,d,f=function(t,i,a,n){if(t<i){var r=i;i=t,t=r}else if(t==i)return[t];var e=function(t){for(var i=t<100&&t>-100?10:.1,a=-1,n=t;10==i?n>=-100&&n<=100:n<=-100||n>=100;)a+=1,n*=i;if(10==i)return Math.pow(10,a);for(var r="0.",e=1;e<a;e++)r+="0";return+(r+"1")}(t-i),o=Math.ceil((t-i)*e/a),h=function(a){var n=({3:2,4:5,6:5,7:5,8:10,9:10,11:10,12:10,13:15,14:15,16:15,17:15,18:20,19:20,21:20,22:20,23:25,24:25,26:25,27:25}[o+a]||o+a)/e,r=Math.floor(i/n)*n,h=[];h.push(r);for(var u=1;h[h.length-1]<t;u++)h.push(r+n*u);return h},u=h(0),s=function(){for(var t=[],a=u[u.length-1]-(null==n?void 0:n.max),r=0;r<u.length;r++)r+1<u.length&&u[r+1]-a<i||t.push(u[r]-a);return t},l=function(){for(var i=[],a=u[0]-(null==n?void 0:n.min),r=0;r<u.length&&(i[r]=u[r]-a,!(t<=i[r]));r++);return i};if(n){if("max"in n&&"min"in n&&n.max>=t&&n.min<=i){var _=function(){if(u[0]>=n.min&&u[u.length-1]<=n.max)return!0;var t=s();if(t[0]>=n.min&&t[t.length-1]<=n.max)return u=t,!0;var i=l();return i[0]>=n.min&&i[t.length-1]<=n.max?(u=i,!0):void 0};if(_())return u;for(var d=1;d<100;d++){if(u=h(d),_())return u;if(u=h(-d),_())return u}}"max"in n&&n.max>=t?n.max<u[u.length-1]&&(u=s()):"min"in n&&n.min<=i&&n.min>u[0]&&(u=l())}for(var f=0;f<u.length;f++){var v=u[f]+"";/\./.test(v)&&(/9{7,}$/.test(v)?(v=v.replace(/9{7,}$/,""),u[f]=+(v.substring(0,v.length-1)+(+v[v.length-1]+1))):/0{7,}\d$/.test(v)&&(u[f]=+v.replace(/0{7,}\d$/,"")))}return u}(a||0,n||0,5);"xAxis"===this.__option.category?(i.coordinate.xAxis.data=t.category,i.coordinate.yAxis.data=f,_=this.__option.width,d=-1*this.__option.height):(i.coordinate.xAxis.data=f,i.coordinate.yAxis.data=t.category,_=this.__option.height,d=this.__option.width);var v=[],p=_/t.category.length,c=.9*p,g=.05*p;if(t.data)for(var x=0;x<t.data.length;x++)v.push([g+p*x,c]);else{var y=c/t.value.length,m=.9*y,w=.05*y;for(x=0;x<t.value[0].data.length;x++){v[x]=[];for(var b=0;b<t.value.length;b++)v[x].push([g+p*x+y*b+w,m])}}var k=d/(f[f.length-1]-f[0]),A=function(t){return k*(t-f[0])};if("xAxis"===this.__option.category)if(t.data){var B=[];for(x=0;x<t.data.length;x++)B.push({x:this.__option.x+v[x][0],y:this.__option.y,width:v[x][1],height:A(t.data[x]),value:t.data[x]});i.node.push({bar:B})}else for(b=0;b<t.value.length;b++){for(B=[],x=0;x<t.value[b].data.length;x++)B.push({x:this.__option.x+v[x][b][0],y:this.__option.y,width:v[x][b][1],height:A(t.value[b].data[x]),value:t.value[b].data[x]});i.node.push({name:t.value[b].name,bar:B})}else if(t.data){for(B=[],x=0;x<t.data.length;x++)B.push({x:this.__option.x,y:this.__option.y-this.__option.height+v[x][0],width:A(t.data[x]),height:v[x][1],value:t.data[x]});i.node.push({bar:B})}else for(b=0;b<t.value.length;b++){for(B=[],x=0;x<t.value[b].data.length;x++)B.push({x:this.__option.x,y:this.__option.y-this.__option.height+v[x][b][0],width:A(t.value[b].data[x]),height:v[x][b][1],value:t.value[b].data[x]});i.node.push({name:t.value[b].name,bar:B})}return i},n.prototype.bind=function(t,i){return this.__rback=i,this.__oralBar=t,this.__preBar=this.use(this.__oralBar),this.__rback(this.__preBar),this},n.prototype.unbind=function(){return this.__rback=function(){return null},this.__oralBar=null,this.__preBar=null,this},n.prototype.doUpdate=function(){var t=this,n=this.use(this.__oralBar),r=JSON.parse(JSON.stringify(n));return function(t,n,r){arguments.length<2&&(n=400),arguments.length<3&&(r=function(){});var e={timer:function(t,i,n){if(!t)throw new Error("Tick is required!");var r=(new Date).valueOf()+"_"+(1e3*Math.random()).toFixed(0);return a.push({id:r,createTime:new Date,tick:t,duration:i,callback:n}),e.start(),r},start:function(){i||(i=setInterval(e.tick,13))},tick:function(){var t,i,n,r,o,h,u,s=a;for((a=[]).length=0,i=0;i<s.length;i++)t=(o=s[i]).createTime,n=o.tick,h=o.duration,r=o.callback,n(u=(u=(+(new Date).valueOf()-t.valueOf())/h)>1?1:u),u<1&&o.id?a.push(o):r(u);a.length<=0&&e.stop()},stop:function(){i&&(clearInterval(i),i=null)}},o=e.timer((function(i){t(i)}),n,r)}((function(i){t.__preBar,t.__rback(r)}),this.__option.duration,(function(){t.__preBar=n,t.__rback(t.__preBar)})),this},n}();export{n as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Buffer of VISLite JavaScript Library v1.3.0
2
+ * Buffer of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var newBuffer = function (painter) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Buffer of VISLite JavaScript Library v1.3.0
2
+ * Buffer of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t=function(){function t(t,i){void 0===i&&(i=!1),this.__painter=t,this.__isElement=i,this.__buffer=function(t){return t.createBuffer()}(t),this.__type=i?t.ELEMENT_ARRAY_BUFFER:t.ARRAY_BUFFER}return t.prototype.use=function(){return this.__painter.bindBuffer(this.__type,this.__buffer),this},t.prototype.write=function(t){return function(t,i,e,_){var r=e?t.ELEMENT_ARRAY_BUFFER:t.ARRAY_BUFFER;t.bufferData(r,i,_)}(this.__painter,t,this.__isElement,this.__painter.STATIC_DRAW),this.__fsize=t.BYTES_PER_ELEMENT,this},t.prototype.divide=function(t,i,e,_){return void 0===_&&(_=0),function(t,i,e,_,r,n,s){t.vertexAttribPointer(i,e,_,s,r,n),t.enableVertexAttribArray(i)}(this.__painter,t,i,this.__painter.FLOAT,e*this.__fsize,_*this.__fsize,!1),this},t}();export{t as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Canvas of VISLite JavaScript Library v1.3.0
2
+ * Canvas of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  /******************************************************************************
@@ -635,7 +635,7 @@ var conicGradient = function (painter, cx, cy, startDeg, deg) {
635
635
  var gradient = painter.createConicGradient(startDeg, cx, cy);
636
636
  return enhanceGradient(gradient, deg ? function (stop) {
637
637
  return deg / (Math.PI * 2) * stop;
638
- } : undefined);
638
+ } : void 0);
639
639
  };
640
640
 
641
641
  var Canvas$1 = (function (_super) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Canvas of VISLite JavaScript Library v1.3.0
2
+ * Canvas of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t=function(i,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)Object.prototype.hasOwnProperty.call(i,e)&&(t[e]=i[e])},t(i,e)};function i(i,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=i}t(i,e),i.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var e=function(){return e=Object.assign||function(t){for(var i,e=1,n=arguments.length;e<n;e++)for(var r in i=arguments[e])Object.prototype.hasOwnProperty.call(i,r)&&(t[r]=i[r]);return t},e.apply(this,arguments)};"function"==typeof SuppressedError&&SuppressedError;var n=function(t,i,e,n,r){var o=Math.cos(e),s=Math.sin(e);return[+((n-t)*o-(r-i)*s+t).toFixed(7),+((n-t)*s+(r-i)*o+i).toFixed(7)]};var r=function(t,i,e,n,r){return t.beginPath(),t.translate(e,n),t.rotate(r),t.font=i.fontStyle+" "+i.fontWeight+" "+i.fontSize+"px "+i.fontFamily,t},o=function(t,i,e,r,o,s,_,a){if(o>s){var h=o;o=s,s=h}return _%=2*Math.PI,a>=1.999999*Math.PI||a<=1.999999*-Math.PI?a=2*Math.PI:a%=2*Math.PI,function(t,i,e,r,o,s,_){i<0&&(t+=i,i*=-1);var a,h=[];a=n(0,0,t,o,0),h[0]=a[0],h[1]=a[1],a=n(0,0,i,a[0],a[1]),h[2]=a[0],h[3]=a[1],a=n(0,0,t,s,0),h[4]=a[0],h[5]=a[1],a=n(0,0,i,a[0],a[1]),h[6]=a[0],h[7]=a[1],_(t,t+i,h[0]+e,h[1]+r,h[4]+e,h[5]+r,h[2]+e,h[3]+r,h[6]+e,h[7]+r,.5*(s-o))}(_,a,e,r,o,s,(function(n,_,a,h,l,p,u,c,f,g,y){y<0&&(y=-y),t.beginPath(),t.moveTo(a,h),t.arc(e,r,o,n,_,!1),"round"==i.arcEndCap?t.arc(.5*(u+f),.5*(c+g),y,_-Math.PI,_,!0):"-round"==i.arcEndCap?t.arc(.5*(u+f),.5*(c+g),y,_-Math.PI,_,!1):t.lineTo(f,g),t.arc(e,r,s,_,n,!0),"round"==i.arcStartCap?t.arc(.5*(a+l),.5*(h+p),y,n,n-Math.PI,!0):"-round"==i.arcStartCap?t.arc(.5*(a+l),.5*(h+p),y,n,n-Math.PI,!1):t.lineTo(a,h)})),"butt"==i.arcStartCap&&t.closePath(),t},s=function(t,i,e,n){return t.beginPath(),t.moveTo(i+n,e),t.arc(i,e,n,0,2*Math.PI),t},_=function(t,i,e,n,r,o){t.beginPath();var s=[];if(Array.isArray(i.rectRadius)&&i.rectRadius.length>0)for(var _=0;_<4;_++)s.push.apply(s,i.rectRadius);return s.length>=4?(t.arc(e+s[0],n+s[0],s[0],Math.PI,1.5*Math.PI),t.arc(e+r-s[1],n+s[1],s[1],1.5*Math.PI,0),t.arc(e+r-s[2],n+o-s[2],s[2],0,.5*Math.PI),t.arc(e+s[3],n+o-s[3],s[3],.5*Math.PI,Math.PI),t.closePath()):t.rect(e,n,r,o),t};function a(t,i,e,n,r){for(var o=0,s="",_=0;_<i.length;_++)t.measureText(s+i[_]).width>e||/\n$/.test(s)?(r(s,((o+=1)-.5)*n),s=i[_]):_==i.length-1?(o+=1,r(s+i[_],(o-.5)*n)):s+=i[_];return o*n}function h(t){var i={fontSize:16,fontFamily:"sans-serif",fontWeight:400,fontStyle:"normal",arcStartCap:"butt",arcEndCap:"butt",rectRadius:[]},n={fillStyle:"black",strokeStyle:"black",lineWidth:1,lineCap:"butt",lineJoin:"miter",lineDash:[],textAlign:"left",textBaseline:"middle",shadowBlur:0,shadowColor:"black"};return"special"==t?i:"init"==t?n:e(e({},i),n)}var l=function(){function t(t,i,e,n,r){void 0===i&&(i={}),void 0===n&&(n=!1),this.__region=null,this.__onlyRegion=!1,this.__onlyView=!1,this.__specialConfig=h("special"),this.__initConfig=h("init"),this.painter=t.getContext("2d",i),this.__region=e,this.__isPainter=n,this.painter.textBaseline="middle",this.painter.textAlign="left"}return t.prototype.useConfig=function(t,i){if(this.__region&&!this.__onlyView&&["fillStyle","strokeStyle","shadowBlur","shadowColor"].indexOf(t)<0&&this.__region.useConfig(t,i),this.__isPainter&&this.__onlyRegion)return this;if("lineDash"==t)this.painter.setLineDash&&this.painter.setLineDash(i);else if(t in this.__specialConfig)"fontSize"==t&&(i=Math.round(i)),this.__specialConfig[t]=i;else{if(!(t in this.__initConfig))throw new Error("Illegal configuration item of painter : "+t+" !");this.painter[t]=i}return this},t.prototype.fillText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&!this.__onlyView&&this.__region.fillText(t,i,e,n),this.__isPainter&&this.__onlyRegion||(this.painter.save(),r(this.painter,this.__specialConfig,i,e,n).fillText(t,0,0),this.painter.restore()),this},t.prototype.strokeText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&!this.__onlyView&&this.__region.strokeText(t,i,e,n),this.__isPainter&&this.__onlyRegion||(this.painter.save(),r(this.painter,this.__specialConfig,i,e,n).strokeText(t,0,0),this.painter.restore()),this},t.prototype.fullText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&!this.__onlyView&&this.__region.fullText(t,i,e,n),this.__isPainter&&this.__onlyRegion||(this.painter.save(),r(this.painter,this.__specialConfig,i,e,n),this.painter.fillText(t,0,0),this.painter.strokeText(t,0,0),this.painter.restore()),this},t.prototype.fillTexts=function(t,i,e,n,o,s){var _=this;void 0===o&&(o=1.2),void 0===s&&(s=0);var h=0;if(this.__region&&!this.__onlyView&&(h=this.__region.fillTexts(t,i,e,n,o)),this.__isPainter&&this.__onlyRegion)return h;this.painter.save(),r(this.painter,this.__specialConfig,i,e,s);var l=a(this.painter,t,n,this.__specialConfig.fontSize*o,(function(t,i){_.painter.fillText(t,0,i)}));return this.painter.restore(),l},t.prototype.strokeTexts=function(t,i,e,n,o,s){var _=this;void 0===o&&(o=1.2),void 0===s&&(s=0);var h=0;if(this.__region&&!this.__onlyView&&(h=this.__region.fillTexts(t,i,e,n,o)),this.__isPainter&&this.__onlyRegion)return h;this.painter.save(),r(this.painter,this.__specialConfig,i,e,s);var l=a(this.painter,t,n,this.__specialConfig.fontSize*o,(function(t,i){_.painter.strokeText(t,0,i)}));return this.painter.restore(),l},t.prototype.fullTexts=function(t,i,e,n,o,s){var _=this;void 0===o&&(o=1.2),void 0===s&&(s=0);var h=0;if(this.__region&&!this.__onlyView&&(h=this.__region.fillTexts(t,i,e,n,o)),this.__isPainter&&this.__onlyRegion)return h;this.painter.save(),r(this.painter,this.__specialConfig,i,e,s);var l=a(this.painter,t,n,this.__specialConfig.fontSize*o,(function(t,i){_.painter.fillText(t,0,i),_.painter.strokeText(t,0,i)}));return this.painter.restore(),l},t.prototype.beginPath=function(){return this.__region&&!this.__onlyView&&this.__region.beginPath(),this.__isPainter&&this.__onlyRegion||this.painter.beginPath(),this},t.prototype.closePath=function(){return this.__region&&!this.__onlyView&&this.__region.closePath(),this.__isPainter&&this.__onlyRegion||this.painter.closePath(),this},t.prototype.moveTo=function(t,i){return this.__region&&!this.__onlyView&&this.__region.moveTo(t,i),this.__isPainter&&this.__onlyRegion||this.painter.moveTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.lineTo=function(t,i){return this.__region&&!this.__onlyView&&this.__region.lineTo(t,i),this.__isPainter&&this.__onlyRegion||this.painter.lineTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.arc=function(t,i,e,n,r){return this.__region&&!this.__onlyView&&this.__region.arc(t,i,e,n,r),this.__isPainter&&this.__onlyRegion||this.painter.arc(t,i,e,n,n+r,r<0),this},t.prototype.fill=function(){return this.__region&&!this.__onlyView&&this.__region.fill(),this.__isPainter&&this.__onlyRegion||this.painter.fill(),this},t.prototype.stroke=function(){return this.__region&&!this.__onlyView&&this.__region.stroke(),this.__isPainter&&this.__onlyRegion||this.painter.stroke(),this},t.prototype.full=function(){return this.__region&&!this.__onlyView&&this.__region.full(),this.__isPainter&&this.__onlyRegion||(this.painter.fill(),this.painter.stroke()),this},t.prototype.save=function(){return this.__region&&!this.__onlyView&&this.__region.save(),this.__isPainter&&this.__onlyRegion||this.painter.save(),this},t.prototype.restore=function(){return this.__region&&!this.__onlyView&&this.__region.restore(),this.__isPainter&&this.__onlyRegion||this.painter.restore(),this},t.prototype.clip=function(){return this.__region&&!this.__onlyView&&this.__region.clip(),this.__isPainter&&this.__onlyRegion||this.painter.clip(),this},t.prototype.quadraticCurveTo=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.quadraticCurveTo(t,i,e,n),this.__isPainter&&this.__onlyRegion||this.painter.quadraticCurveTo(t,i,e,n),this},t.prototype.bezierCurveTo=function(t,i,e,n,r,o){return this.__region&&!this.__onlyView&&this.__region.bezierCurveTo(t,i,e,n,r,o),this.__isPainter&&this.__onlyRegion||this.painter.bezierCurveTo(t,i,e,n,r,o),this},t.prototype.clearRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.clearRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||this.painter.clearRect(t,i,e,n),this},t.prototype.clearCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.clearCircle(t,i,e),this.__isPainter&&this.__onlyRegion||(this.painter.beginPath(),this.painter.globalCompositeOperation="destination-out",this.painter.arc(t,i,e,0,2*Math.PI),this.painter.fill(),this.painter.globalCompositeOperation="source-over",this.painter.closePath()),this},t.prototype.fillArc=function(t,i,e,n,r,s){return this.__region&&!this.__onlyView&&this.__region.fillArc(t,i,e,n,r,s),this.__isPainter&&this.__onlyRegion||o(this.painter,this.__specialConfig,t,i,e,n,r,s).fill(),this},t.prototype.strokeArc=function(t,i,e,n,r,s){return this.__region&&!this.__onlyView&&this.__region.strokeArc(t,i,e,n,r,s),this.__isPainter&&this.__onlyRegion||o(this.painter,this.__specialConfig,t,i,e,n,r,s).stroke(),this},t.prototype.fullArc=function(t,i,e,n,r,s){return this.__region&&!this.__onlyView&&this.__region.fullArc(t,i,e,n,r,s),this.__isPainter&&this.__onlyRegion||(o(this.painter,this.__specialConfig,t,i,e,n,r,s),this.painter.fill(),this.painter.stroke()),this},t.prototype.fillCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.fillCircle(t,i,e),this.__isPainter&&this.__onlyRegion||s(this.painter,t,i,e).fill(),this},t.prototype.strokeCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.strokeCircle(t,i,e),this.__isPainter&&this.__onlyRegion||s(this.painter,t,i,e).stroke(),this},t.prototype.fullCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.fullCircle(t,i,e),this.__isPainter&&this.__onlyRegion||(s(this.painter,t,i,e),this.painter.fill(),this.painter.stroke()),this},t.prototype.fillRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.fillRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||_(this.painter,this.__specialConfig,t,i,e,n).fill(),this},t.prototype.strokeRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.strokeRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||_(this.painter,this.__specialConfig,t,i,e,n).stroke(),this},t.prototype.fullRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.fullRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||(_(this.painter,this.__specialConfig,t,i,e,n),this.painter.fill(),this.painter.stroke()),this},t.prototype.draw=function(){return Promise.resolve()},t.prototype.drawImage=function(t,i,e,n,r,o){var s=this;return void 0===o&&(o=!1),new Promise((function(_){if(s.__region&&!s.__onlyView&&s.__region.fillRect(i,e,n,r),s.__isPainter&&s.__onlyRegion)_({});else if("string"!=typeof t||o)s.painter.drawImage(t,i,e,n,r),_({});else{var a=new Image;a.onload=function(){s.painter.drawImage(a,i,e,n,r),_({})},a.src=t}}))},t.prototype.install=function(t){var i=this,e=function(e){if(e in n)throw new Error("VISLite Canvas:Method already exists and cannot be overwritten.");n[e]=function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];var o=t[e].apply(i,n);return null!=o?o:i}},n=this;for(var r in t)e(r);return this},t}();var p=function(t,i){var e={value:function(){return t},setColor:function(n,r){return t.addColorStop(i?i(n):n,r),e}};return e},u=function(t){function e(i,e,n,r){void 0===n&&(n={}),void 0===r&&(r=1);var o=t.call(this,i,n,e?new l(e,{willReadFrequently:!0}):void 0,!0,r)||this;return o.name="Canvas",o.__regionList={},o.__regionAssemble=function(t,i,e,n){for(var r=[],o=0;o<n;o++)r[o]=t;return function(){for(var o=0;o<n;o++){if(r[o]+e<i){r[o]=+(r[o]+e).toFixed(7);break}o<n-1&&(r[o]=t)}return r}}(0,255,10,3),o.__scaleSize=r,o.setRegion(""),o}return i(e,t),e.prototype.config=function(t){for(var i in t)this.useConfig(i,t[i]);return this},e.prototype.reset=function(){return this.config(h()),this},e.prototype.onlyRegion=function(t){return this.__onlyRegion=t,this},e.prototype.onlyView=function(t){return this.__onlyView=t,this},e.prototype.setRegion=function(t){if(this.__region)if(t){if(null==this.__regionList[t]){var i=this.__regionAssemble();this.__regionList[t]="rgb("+i[0]+","+i[1]+","+i[2]+")"}this.__region.useConfig("fillStyle",this.__regionList[t])&&this.__region.useConfig("strokeStyle",this.__regionList[t])}else this.__region.useConfig("fillStyle","#000000")&&this.__region.useConfig("strokeStyle","#000000");return this},e.prototype.getRegion=function(t,i){var e=this;return new Promise((function(n){var r=e.__region?e.__region.painter.getImageData(t-.5,i-.5,1,1):{data:[0,0,0,0]},o=r.data,s=function(){if(e.__region)for(var t in e.__regionList)if("rgb("+o[0]+","+o[1]+","+o[2]+")"==e.__regionList[t]){n(t);break}n("")};o?s():r.then((function(t){o=t,s()}))}))},e.prototype.textWidth=function(t){this.painter.save(),r(this.painter,this.__specialConfig,0,0,0);var i=this.painter.measureText(t+"").width;return this.painter.restore(),i},e.prototype.getContext=function(t){return void 0===t&&(t=!1),t?this.__region?this.__region.painter:null:this.painter},e.prototype.getInfo=function(){return{width:this.painter.canvas.width/this.__scaleSize,height:this.painter.canvas.height/this.__scaleSize}},e.prototype.createLinearGradient=function(t,i,e,n){return function(t,i,e,n,r){var o=t.createLinearGradient(i,e,n,r);return p(o)}(this.painter,t,i,e,n)},e.prototype.createRadialGradient=function(t,i,e){return function(t,i,e,n){var r=t.createRadialGradient(i,e,0,i,e,n);return p(r)}(this.painter,t,i,e)},e.prototype.createConicGradient=function(t,i,e,n){return function(t,i,e,n,r){var o=t.createConicGradient(n,i,e);return p(o,r?function(t){return r/(2*Math.PI)*t}:void 0)}(this.painter,t,i,e,n)},e.prototype.getColor=function(t,i){t*=this.__scaleSize,i*=this.__scaleSize;var e=this.painter.getImageData(t-.5,i-.5,1,1).data;return"rgba("+e[0]+","+e[1]+","+e[2]+","+e[3]+")"},e}(l);var c=function(t){function e(i,e,n,r){void 0===e&&(e={}),void 0===n&&(n=0),void 0===r&&(r=0);var o=this;if(!i)throw new Error("VISLite Canvas:The mount point requires an HTMLElement type but encountered null.");e=function(t,i){for(var e in t)i[e]=t[e];return i}(e,{region:!0,willReadFrequently:!1}),n=n||i.clientWidth,r=r||i.clientHeight;var s,_=null,a=i;a._vislite_canvas_?(s=a._vislite_canvas_[0],_=a._vislite_canvas_[1]):(s=document.createElement("canvas"),i.appendChild(s),e.region&&(_=document.createElement("canvas")),a._vislite_canvas_=[s,_],i.setAttribute("vislite","Canvas"));for(var h=[_,s],l=0;l<h.length;l++){var p=h[l];p&&(p.style.width=n+"px",p.setAttribute("width",l*n+n+""),p.style.height=r+"px",p.setAttribute("height",l*r+r+""))}return(o=t.call(this,s,_,{willReadFrequently:e.willReadFrequently},2)||this).__canvas=s,o.__el=i,o.painter.scale(2,2),o}return i(e,t),e.prototype.toDataURL=function(){var t=this;return new Promise((function(i){i(t.__canvas.toDataURL())}))},e.prototype.bind=function(t,i){var e=this;return this.__el.addEventListener(t,(function(t){e.getRegion(t.offsetX,t.offsetY).then((function(e){i(e,t.offsetX,t.offsetY)}))})),this},e}(u);export{c as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Cardinal of VISLite JavaScript Library v1.3.0
2
+ * Cardinal of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var Hermite = (function () {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Cardinal of VISLite JavaScript Library v1.3.0
2
+ * Cardinal of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t=function(){function t(t){void 0===t&&(t=.5),this.name="Hermite",this.__u=t}return t.prototype.setP=function(t,i,_,h,s,e){if(!(t<_))throw new Error("The point x-position should be increamented!");this.__a=t,this.__b=_;var n=this.__u*s,o=this.__u*e;return i/=_-t,h/=_-t,this.__MR=[2*i-2*h+n+o,3*h-3*i-2*n-o,n,i],this},t.prototype.use=function(t){if(this.__MR){var i=(t-this.__a)/(this.__b-this.__a),_=i*i;return(i*_*this.__MR[0]+_*this.__MR[1]+i*this.__MR[2]+this.__MR[3])*(this.__b-this.__a)}throw new Error("You shoud first set the position!")},t}(),i=function(){function i(t){void 0===t&&(t=0),this.name="Cardinal",this.__t=t}return i.prototype.setP=function(i){this.__HS={x:[],h:[]};var _,h,s=(i[1][1]-i[0][1])/(i[1][0]-i[0][0]);for(this.__HS.x[0]=i[0][0],_=1;_<i.length;_++){if(i[_][0]<=i[_-1][0])throw new Error("The point position should be increamented!");this.__HS.x[_]=i[_][0],h=_<i.length-1?i[_+1][1]>i[_][1]&&i[_-1][1]>i[_][1]||i[_+1][1]<i[_][1]&&i[_-1][1]<i[_][1]||i[_+1][1]==i[_][1]||i[_-1][1]==i[_][1]?0:(i[_+1][1]-i[_-1][1])/(i[_+1][0]-i[_-1][0]):(i[_][1]-i[_-1][1])/(i[_][0]-i[_-1][0]),this.__HS.h[_-1]=new t(.5*(1-this.__t)).setP(i[_-1][0],i[_-1][1],i[_][0],i[_][1],s,h),s=h}return this},i.prototype.use=function(t){if(this.__HS){for(this.__i=-1;this.__i+1<this.__HS.x.length&&(t>this.__HS.x[this.__i+1]||-1==this.__i&&t>=this.__HS.x[this.__i+1]);)this.__i+=1;return this.__i<0?this.__HS.h[0].use(this.__HS.x[0]):this.__i>=this.__HS.h.length?this.__HS.h[this.__HS.h.length-1].use(this.__HS.x[this.__HS.x.length-1]):this.__HS.h[this.__i].use(t)}throw new Error("You shoud first set the position!")},i}();export{i as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Eoap of VISLite JavaScript Library v1.3.0
2
+ * Eoap of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var rotateX = function (deg, x, y, z) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Eoap of VISLite JavaScript Library v1.3.0
2
+ * Eoap of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t=function(t,n,a,e){var r=Math.cos(t),h=Math.sin(t);return[n*r-a*h,n*h+a*r,e]},n=function(){function n(t,n){void 0===t&&(t=7),void 0===n&&(n=[107,36]),this.name="Eoap",this.__scale=t,this.__center=n}return n.prototype.use=function(n,a){var e,r,h,i,s,o,c=(e=(360-a)/180*Math.PI,r=100*this.__scale,h=0,i=0,s=Math.cos(e),o=Math.sin(e),[i*o+r*s,h,i*s-r*o]);return c=t(n/180*Math.PI,c[0],c[1],c[2]),c=t((90-this.__center[0])/180*Math.PI,c[0],c[1],c[2]),c=function(t,n,a,e){var r=Math.cos(t),h=Math.sin(t);return[n,a*r-e*h,a*h+e*r]}((90-this.__center[1])/180*Math.PI,c[0],c[1],c[2]),[-c[0],c[1],c[2]]},n}();export{n as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Hermite of VISLite JavaScript Library v1.3.0
2
+ * Hermite of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var Hermite = (function () {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Hermite of VISLite JavaScript Library v1.3.0
2
+ * Hermite of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t=function(){function t(t){void 0===t&&(t=.5),this.name="Hermite",this.__u=t}return t.prototype.setP=function(t,i,_,s,h,r){if(!(t<_))throw new Error("The point x-position should be increamented!");this.__a=t,this.__b=_;var o=this.__u*h,e=this.__u*r;return i/=_-t,s/=_-t,this.__MR=[2*i-2*s+o+e,3*s-3*i-2*o-e,o,i],this},t.prototype.use=function(t){if(this.__MR){var i=(t-this.__a)/(this.__b-this.__a),_=i*i;return(i*_*this.__MR[0]+_*this.__MR[1]+i*this.__MR[2]+this.__MR[3])*(this.__b-this.__a)}throw new Error("You shoud first set the position!")},t}();export{t as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * MapCoordinate of VISLite JavaScript Library v1.3.0
2
+ * MapCoordinate of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var toString = Object.prototype.toString;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * MapCoordinate of VISLite JavaScript Library v1.3.0
2
+ * MapCoordinate of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t=Object.prototype.toString;function n(n){if(null===n||"object"!=typeof n||"[object Object]"!=function(n){return null==n?void 0===n?"[object Undefined]":"[object Null]":t.call(n)}(n))return!1;if(null===Object.getPrototypeOf(n))return!0;for(var e=n;null!==Object.getPrototypeOf(e);)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(n)===e}function e(t){for(var n=null,e=null,o=null,r=null,i=function(t){for(var i=0;i<t.length;i++)for(var a=0;a<t[i].length;a++){var u=t[i][a][0],h=t[i][a][1];(null==n||n>u)&&(n=u),(null==e||e<u)&&(e=u),(null==o||o>h)&&(o=h),(null==r||r<h)&&(r=h)}},a=t.features,u=0;u<a.length;u++)if("Polygon"==a[u].geometry.type)i(a[u].geometry.coordinates);else if("MultiPolygon"==a[u].geometry.type)for(var h=0;h<a[u].geometry.coordinates.length;h++)i(a[u].geometry.coordinates[h]);return[n,e,o,r]}function o(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];for(var o=null,r=null,i=null,a=null,u=0,h=t;u<h.length;u++){var l=e(h[u]),f=l[0],c=l[1],s=l[2],_=l[3];(null==o||f<o)&&(o=f),(null==r||c>r)&&(r=c),(null==i||s<i)&&(i=s),(null==a||_>a)&&(a=_)}return[o,r,i,a]}var r=function(t,n){void 0===t&&(t=7),void 0===n&&(n=[107,36]),this.name="Mercator";var e=100*t*Math.PI/180,o=e*n[0],r=-1*e*n[1];this.use=function(t,n){return[.8*(e*t-o),-1*e*n-r,0]}},i=function(t,n,e,o){var r=Math.cos(t),i=Math.sin(t);return[n*r-e*i,n*i+e*r,o]},a=function(){function t(t,n){void 0===t&&(t=7),void 0===n&&(n=[107,36]),this.name="Eoap",this.__scale=t,this.__center=n}return t.prototype.use=function(t,n){var e,o,r,a,u,h,l=(e=(360-n)/180*Math.PI,o=100*this.__scale,r=0,a=0,u=Math.cos(e),h=Math.sin(e),[a*h+o*u,r,a*u-o*h]);return l=i(t/180*Math.PI,l[0],l[1],l[2]),l=i((90-this.__center[0])/180*Math.PI,l[0],l[1],l[2]),l=function(t,n,e,o){var r=Math.cos(t),i=Math.sin(t);return[n,e*r-o*i,e*i+o*r]}((90-this.__center[1])/180*Math.PI,l[0],l[1],l[2]),[-l[0],l[1],l[2]]},t}(),u=function(){function t(t){void 0===t&&(t={}),this.name="MapCoordinate",this.__config=function(t,n){for(var e in t)n[e]=t[e];return n}(t,{api:"Mercator",width:400,height:300,left:0,top:0})}return t.prototype.$$updateMap=function(){var t=this.__boundary,n=t[0],e=t[1],o=t[2],i=t[3];if("Eoap"==this.__config.api){var u=.836*this.__config.width/(e-n),h=.557*this.__config.height/(i-o);this.__map=new a(u<h?u:h,[.5*(n+e)*.9778,.5*(o+i)*1.025])}else{if("Mercator"!=this.__config.api)throw new Error("Unexpected API types:"+this.__config.api);u=.72*this.__config.width/(e-n),h=.575*this.__config.height/(i-o);this.__map=new r(u<h?u:h,[.5*(n+e),.5*(o+i)])}},t.prototype.setConfig=function(t){return function t(e,o){for(var r in o){var i=o[r];n(i)?(e[r]||(e[r]={}),t(e[r],o[r])):e[r]=i}}(this.__config,t),this.$$updateMap(),this},t.prototype.setGeos=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return this.__boundary=o.apply(void 0,t),this.$$updateMap(),this},t.prototype.use=function(t,n){if(this.__map){var e=this.__map.use(t,n);return[this.__config.left+.5*this.__config.width+e[0],this.__config.top+.5*this.__config.height+e[1]]}throw new Error("Geographic data not set")},t}();export{u as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Matrix4 of VISLite JavaScript Library v1.3.0
2
+ * Matrix4 of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function _move (d, a, b, c) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Matrix4 of VISLite JavaScript Library v1.3.0
2
+ * Matrix4 of VISLite JavaScript Library v1.4.0
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t=function(t,r){for(var i=[],o=0;o<4;o++)for(var n=0;n<r.length/4;n++)i[4*n+o]=t[o]*r[4*n]+t[o+4]*r[4*n+1]+t[o+8]*r[4*n+2]+t[o+12]*r[4*n+3];return i},r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],i=function(){function i(t){void 0===t&&(t=r),this.name="Matrix4",this.__matrix4=t}return i.prototype.setValue=function(t){return void 0===t&&(t=r),this.__matrix4=t,this},i.prototype.move=function(r,i,o,n){return void 0===n&&(n=0),this.__matrix4=t(function(t,r,i,o){void 0===o&&(o=0);var n=Math.sqrt(r*r+i*i+o*o);return[1,0,0,0,0,1,0,0,0,0,1,0,r*t/n,i*t/n,o*t/n,1]}(r,i,o,n),this.__matrix4),this},i.prototype.rotate=function(r,i,o,n,e,u,a){var s=function(t,r,i,o,n,e){if("number"==typeof t&&"number"==typeof r){if("number"!=typeof i?(i=0,o=t,n=r,e=1):"number"==typeof o&&"number"==typeof n&&"number"==typeof e||(o=t,n=r,e=i,t=0,r=0,i=0),t==o&&r==n&&i==e)throw new Error("It's not a legitimate ray!");var u=Math.sqrt((o-t)*(o-t)+(n-r)*(n-r)),a=0!=u?(n-r)/u:1,s=0!=u?(o-t)/u:0,h=(o-t)*s+(n-r)*a,_=e-i,f=Math.sqrt(h*h+_*_),m=0!=f?_/f:1,p=0!=f?h/f:0;return[[a,m*s,s*p,0,-s,a*m,a*p,0,0,-p,m,0,r*s-t*a,i*p-t*s*m-r*a*m,-t*s*p-r*a*p-i*m,1],[a,-s,0,0,m*s,m*a,-p,0,s*p,a*p,m,0,t,r,i,1]]}throw new Error("a1 and b1 is required!")}(i,o,n,e,u,a);return this.__matrix4=t(t(t(s[1],function(t){var r=Math.sin(t),i=Math.cos(t);return[i,r,0,0,-r,i,0,0,0,0,1,0,0,0,0,1]}(r)),s[0]),this.__matrix4),this},i.prototype.scale=function(r,i,o,n,e,u){return void 0===n&&(n=0),void 0===e&&(e=0),void 0===u&&(u=0),this.__matrix4=t(function(t,r,i,o,n,e){return void 0===o&&(o=0),void 0===n&&(n=0),void 0===e&&(e=0),[t,0,0,0,0,r,0,0,0,0,i,0,o-o*t,n-n*r,e-e*i,1]}(r,i,o,n,e,u),this.__matrix4),this},i.prototype.multiply=function(r,i){return void 0===i&&(i=!1),this.__matrix4=i?t(this.__matrix4,r):t(r,this.__matrix4),this},i.prototype.use=function(r,i,o,n){return void 0===o&&(o=0),void 0===n&&(n=1),t(this.__matrix4,[r,i,o,n])},i.prototype.value=function(){return this.__matrix4},i}();export{i as default};