q2-tecton-elements 1.18.0 → 1.19.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.
- package/dist/cjs/click-elsewhere.cjs.entry.js +1 -1
- package/dist/cjs/{icons-e2bc9ee9.js → icons-afbdf88a.js} +1 -1
- package/dist/cjs/{index-eccd5617.js → index-3518c78c.js} +1 -1
- package/dist/cjs/{index-0128397d.js → index-734296a7.js} +476 -271
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/q2-avatar.cjs.entry.js +9 -6
- package/dist/cjs/q2-badge_2.cjs.entry.js +46 -7
- package/dist/cjs/q2-btn_2.cjs.entry.js +30 -5
- package/dist/cjs/q2-calendar.cjs.entry.js +89 -62
- package/dist/cjs/q2-card.cjs.entry.js +17 -6
- package/dist/cjs/q2-carousel-pane.cjs.entry.js +7 -3
- package/dist/cjs/q2-carousel.cjs.entry.js +196 -285
- package/dist/cjs/q2-chart-donut.cjs.entry.js +583 -504
- package/dist/cjs/q2-checkbox-group.cjs.entry.js +9 -7
- package/dist/cjs/q2-checkbox.cjs.entry.js +17 -4
- package/dist/cjs/q2-dropdown-item.cjs.entry.js +9 -3
- package/dist/cjs/q2-dropdown.cjs.entry.js +16 -5
- package/dist/cjs/q2-editable-field.cjs.entry.js +16 -6
- package/dist/cjs/q2-icon.cjs.entry.js +6 -4
- package/dist/cjs/q2-loading-element.cjs.entry.js +6 -2
- package/dist/cjs/q2-loc.cjs.entry.js +5 -3
- package/dist/cjs/q2-message.cjs.entry.js +4 -3
- package/dist/cjs/q2-month-picker.cjs.entry.js +9 -7
- package/dist/cjs/q2-optgroup.cjs.entry.js +6 -5
- package/dist/cjs/q2-option-list_2.cjs.entry.js +21 -7
- package/dist/cjs/q2-option.cjs.entry.js +12 -2
- package/dist/cjs/q2-pagination.cjs.entry.js +11 -3
- package/dist/cjs/q2-pill.cjs.entry.js +25 -7
- package/dist/cjs/q2-radio-group.cjs.entry.js +13 -6
- package/dist/cjs/q2-radio.cjs.entry.js +13 -8
- package/dist/cjs/q2-section.cjs.entry.js +9 -4
- package/dist/cjs/q2-select.cjs.entry.js +26 -17
- package/dist/cjs/q2-stepper-pane.cjs.entry.js +8 -3
- package/dist/cjs/q2-stepper-vertical.cjs.entry.js +5 -4
- package/dist/cjs/q2-stepper.cjs.entry.js +9 -7
- package/dist/cjs/q2-tab-container.cjs.entry.js +14 -9
- package/dist/cjs/q2-tab-pane.cjs.entry.js +10 -2
- package/dist/cjs/q2-tag.cjs.entry.js +20 -7
- package/dist/cjs/q2-tecton-elements.cjs.js +3 -3
- package/dist/cjs/q2-textarea.cjs.entry.js +20 -4
- package/dist/cjs/q2-tooltip.cjs.entry.js +9 -3
- package/dist/cjs/{shapes-c1a60d46.js → shapes-aad2b98f.js} +1 -1
- package/dist/cjs/tecton-tab-pane.cjs.entry.js +17 -2
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/click-elsewhere/index.js +18 -17
- package/dist/collection/components/q2-avatar/index.js +100 -92
- package/dist/collection/components/q2-avatar/styles.css +1 -1
- package/dist/collection/components/q2-badge/index.js +119 -111
- package/dist/collection/components/q2-badge/styles.css +1 -1
- package/dist/collection/components/q2-btn/index.js +349 -322
- package/dist/collection/components/q2-btn/styles.css +7 -7
- package/dist/collection/components/q2-calendar/index.js +565 -551
- package/dist/collection/components/q2-calendar/q2-month-picker.css +1 -1
- package/dist/collection/components/q2-calendar/q2-month-picker.js +112 -116
- package/dist/collection/components/q2-calendar/styles.css +1 -1
- package/dist/collection/components/q2-card/index.js +262 -244
- package/dist/collection/components/q2-card/styles.css +9 -2
- package/dist/collection/components/q2-carousel/index.js +249 -253
- package/dist/collection/components/q2-carousel/styles.css +1 -1
- package/dist/collection/components/q2-carousel-pane/index.js +108 -96
- package/dist/collection/components/q2-carousel-pane/styles.css +5 -4
- package/dist/collection/components/q2-chart-donut/index.js +350 -334
- package/dist/collection/components/q2-chart-donut/styles.css +3 -3
- package/dist/collection/components/q2-checkbox/index.js +296 -287
- package/dist/collection/components/q2-checkbox/styles.css +2 -2
- package/dist/collection/components/q2-checkbox-group/index.js +156 -152
- package/dist/collection/components/q2-checkbox-group/styles.css +1 -1
- package/dist/collection/components/q2-dropdown/index.js +255 -240
- package/dist/collection/components/q2-dropdown/styles.css +1 -1
- package/dist/collection/components/q2-dropdown-item/index.js +134 -123
- package/dist/collection/components/q2-dropdown-item/styles.css +12 -10
- package/dist/collection/components/q2-editable-field/index.js +300 -293
- package/dist/collection/components/q2-editable-field/styles.css +1 -1
- package/dist/collection/components/q2-icon/icons.js +358 -2158
- package/dist/collection/components/q2-icon/index.js +59 -49
- package/dist/collection/components/q2-icon/styles.css +1 -1
- package/dist/collection/components/q2-input/index.js +729 -705
- package/dist/collection/components/q2-input/styles.css +2 -2
- package/dist/collection/components/q2-loading/index.js +143 -132
- package/dist/collection/components/q2-loading/skeleton/q2-loading-element/index.js +85 -74
- package/dist/collection/components/q2-loading/skeleton/shapes.js +23 -36
- package/dist/collection/components/q2-loading/styles.css +1 -1
- package/dist/collection/components/q2-loc/index.js +49 -39
- package/dist/collection/components/q2-loc/styles.css +1 -1
- package/dist/collection/components/q2-message/index.js +101 -92
- package/dist/collection/components/q2-message/styles.css +1 -1
- package/dist/collection/components/q2-optgroup/index.js +64 -56
- package/dist/collection/components/q2-optgroup/styles.css +1 -1
- package/dist/collection/components/q2-option/index.js +244 -229
- package/dist/collection/components/q2-option/styles.css +5 -1
- package/dist/collection/components/q2-option-list/index.js +291 -270
- package/dist/collection/components/q2-option-list/styles.css +1 -1
- package/dist/collection/components/q2-pagination/index.js +183 -179
- package/dist/collection/components/q2-pagination/styles.css +1 -1
- package/dist/collection/components/q2-pill/index.js +260 -208
- package/dist/collection/components/q2-pill/styles.css +1 -1
- package/dist/collection/components/q2-popover/index.js +169 -151
- package/dist/collection/components/q2-popover/styles.css +2 -2
- package/dist/collection/components/q2-radio/index.js +233 -224
- package/dist/collection/components/q2-radio/styles.css +3 -3
- package/dist/collection/components/q2-radio-group/index.js +252 -244
- package/dist/collection/components/q2-radio-group/styles.css +1 -1
- package/dist/collection/components/q2-section/index.js +134 -125
- package/dist/collection/components/q2-section/styles.css +12 -1
- package/dist/collection/components/q2-select/index.js +393 -381
- package/dist/collection/components/q2-select/styles.css +1 -1
- package/dist/collection/components/q2-stepper/index.js +124 -126
- package/dist/collection/components/q2-stepper/styles.css +2 -1
- package/dist/collection/components/q2-stepper-pane/index.js +165 -149
- package/dist/collection/components/q2-stepper-pane/styles.css +1 -1
- package/dist/collection/components/q2-stepper-vertical/index.js +86 -85
- package/dist/collection/components/q2-stepper-vertical/styles.css +1 -1
- package/dist/collection/components/q2-tab-container/index.js +189 -184
- package/dist/collection/components/q2-tab-container/styles.css +1 -1
- package/dist/collection/components/q2-tab-pane/index.js +185 -166
- package/dist/collection/components/q2-tab-pane/styles.css +1 -1
- package/dist/collection/components/q2-tag/index.js +168 -116
- package/dist/collection/components/q2-tag/styles.css +1 -1
- package/dist/collection/components/q2-textarea/index.js +344 -327
- package/dist/collection/components/q2-textarea/styles.css +2 -2
- package/dist/collection/components/q2-tooltip/index.js +147 -133
- package/dist/collection/components/q2-tooltip/styles.css +1 -1
- package/dist/collection/components/tecton-tab-pane/index.js +287 -266
- package/dist/collection/components/tecton-tab-pane/styles.css +1 -1
- package/dist/collection/utils/index.js +2 -6
- package/dist/esm/click-elsewhere.entry.js +1 -1
- package/dist/esm/{icons-ed54e307.js → icons-78da5dd2.js} +1 -1
- package/dist/esm/{index-eac6b89e.js → index-9c591682.js} +1 -1
- package/dist/esm/{index-6d5ed7cc.js → index-bb1c8c7f.js} +476 -271
- package/dist/esm/loader.js +3 -3
- package/dist/esm/polyfills/css-shim.js +1 -1
- package/dist/esm/q2-avatar.entry.js +9 -6
- package/dist/esm/q2-badge_2.entry.js +46 -7
- package/dist/esm/q2-btn_2.entry.js +30 -5
- package/dist/esm/q2-calendar.entry.js +89 -62
- package/dist/esm/q2-card.entry.js +17 -6
- package/dist/esm/q2-carousel-pane.entry.js +7 -3
- package/dist/esm/q2-carousel.entry.js +196 -285
- package/dist/esm/q2-chart-donut.entry.js +583 -504
- package/dist/esm/q2-checkbox-group.entry.js +9 -7
- package/dist/esm/q2-checkbox.entry.js +17 -4
- package/dist/esm/q2-dropdown-item.entry.js +9 -3
- package/dist/esm/q2-dropdown.entry.js +16 -5
- package/dist/esm/q2-editable-field.entry.js +16 -6
- package/dist/esm/q2-icon.entry.js +6 -4
- package/dist/esm/q2-loading-element.entry.js +6 -2
- package/dist/esm/q2-loc.entry.js +5 -3
- package/dist/esm/q2-message.entry.js +4 -3
- package/dist/esm/q2-month-picker.entry.js +9 -7
- package/dist/esm/q2-optgroup.entry.js +6 -5
- package/dist/esm/q2-option-list_2.entry.js +21 -7
- package/dist/esm/q2-option.entry.js +12 -2
- package/dist/esm/q2-pagination.entry.js +11 -3
- package/dist/esm/q2-pill.entry.js +25 -7
- package/dist/esm/q2-radio-group.entry.js +13 -6
- package/dist/esm/q2-radio.entry.js +13 -8
- package/dist/esm/q2-section.entry.js +9 -4
- package/dist/esm/q2-select.entry.js +26 -17
- package/dist/esm/q2-stepper-pane.entry.js +8 -3
- package/dist/esm/q2-stepper-vertical.entry.js +5 -4
- package/dist/esm/q2-stepper.entry.js +9 -7
- package/dist/esm/q2-tab-container.entry.js +14 -9
- package/dist/esm/q2-tab-pane.entry.js +10 -2
- package/dist/esm/q2-tag.entry.js +20 -7
- package/dist/esm/q2-tecton-elements.js +3 -3
- package/dist/esm/q2-textarea.entry.js +20 -4
- package/dist/esm/q2-tooltip.entry.js +9 -3
- package/dist/esm/{shapes-c32e3ba2.js → shapes-62b8a431.js} +1 -1
- package/dist/esm/tecton-tab-pane.entry.js +17 -2
- package/dist/loader/package.json +1 -0
- package/dist/q2-tecton-elements/p-0ba564b1.entry.js +1 -0
- package/dist/q2-tecton-elements/p-0fad9c5a.entry.js +1 -0
- package/dist/q2-tecton-elements/{p-73154834.js → p-13a639cf.js} +1 -1
- package/dist/q2-tecton-elements/p-16c11d74.entry.js +1 -0
- package/dist/q2-tecton-elements/p-17e0cbf1.entry.js +1 -0
- package/dist/q2-tecton-elements/p-18e095af.entry.js +1 -0
- package/dist/q2-tecton-elements/p-2c9b1308.entry.js +1 -0
- package/dist/q2-tecton-elements/p-2e832e42.entry.js +1 -0
- package/dist/q2-tecton-elements/p-315fdb74.entry.js +1 -0
- package/dist/q2-tecton-elements/{p-c608e3c9.entry.js → p-444415b5.entry.js} +1 -1
- package/dist/q2-tecton-elements/p-4d700630.entry.js +1 -0
- package/dist/q2-tecton-elements/p-4f0f45e7.entry.js +1 -0
- package/dist/q2-tecton-elements/p-54e792bd.entry.js +1 -0
- package/dist/q2-tecton-elements/{p-80014da0.js → p-5e374fbd.js} +1 -1
- package/dist/q2-tecton-elements/p-5f064e1e.entry.js +39 -0
- package/dist/q2-tecton-elements/p-692f2d09.entry.js +1 -0
- package/dist/q2-tecton-elements/p-6e6b5b80.entry.js +1 -0
- package/dist/q2-tecton-elements/p-7e8f43d1.entry.js +1 -0
- package/dist/q2-tecton-elements/p-8e380edf.entry.js +1 -0
- package/dist/q2-tecton-elements/p-926a3e80.js +2 -0
- package/dist/q2-tecton-elements/{p-93c00587.js → p-92e1faf8.js} +1 -1
- package/dist/q2-tecton-elements/p-9772b15f.entry.js +1 -0
- package/dist/q2-tecton-elements/p-97aa8423.entry.js +1 -0
- package/dist/q2-tecton-elements/{p-17cffd7d.entry.js → p-a987402e.entry.js} +1 -1
- package/dist/q2-tecton-elements/p-aaf42539.entry.js +1 -0
- package/dist/q2-tecton-elements/p-ac674c20.entry.js +1 -0
- package/dist/q2-tecton-elements/p-b8b00394.entry.js +1 -0
- package/dist/q2-tecton-elements/p-c444a60b.entry.js +1 -0
- package/dist/q2-tecton-elements/p-c6c489fe.entry.js +1 -0
- package/dist/q2-tecton-elements/p-ce015552.entry.js +1 -0
- package/dist/q2-tecton-elements/p-d464fccc.entry.js +1 -0
- package/dist/q2-tecton-elements/p-de164483.entry.js +1 -0
- package/dist/q2-tecton-elements/p-df91e954.entry.js +1 -0
- package/dist/q2-tecton-elements/p-e6d26f39.entry.js +1 -0
- package/dist/q2-tecton-elements/p-e8e113c2.entry.js +1 -0
- package/dist/q2-tecton-elements/p-f1d06917.entry.js +1 -0
- package/dist/q2-tecton-elements/p-f800fd1e.entry.js +1 -0
- package/dist/q2-tecton-elements/p-fb37e67e.entry.js +1 -0
- package/dist/q2-tecton-elements/p-fc134a5d.entry.js +1 -0
- package/dist/q2-tecton-elements/p-fe88e979.entry.js +1 -0
- package/dist/q2-tecton-elements/p-ffb48ccc.entry.js +1 -0
- package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
- package/dist/test/helpers.js +6 -0
- package/dist/types/components/q2-pill/index.d.ts +3 -0
- package/dist/types/components/q2-tag/index.d.ts +3 -0
- package/dist/types/components.d.ts +154 -38
- package/dist/types/stencil-public-runtime.d.ts +20 -4
- package/dist/types/workspace/workspace/Tecton_tecton-production_master/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +2 -0
- package/package.json +6 -6
- package/dist/q2-tecton-elements/p-02c1b7fd.entry.js +0 -1
- package/dist/q2-tecton-elements/p-04c743f2.entry.js +0 -1
- package/dist/q2-tecton-elements/p-07dc509c.entry.js +0 -1
- package/dist/q2-tecton-elements/p-12caa479.entry.js +0 -1
- package/dist/q2-tecton-elements/p-160dd1c2.entry.js +0 -1
- package/dist/q2-tecton-elements/p-1a3de749.entry.js +0 -1
- package/dist/q2-tecton-elements/p-2061c3fd.entry.js +0 -1
- package/dist/q2-tecton-elements/p-2a217895.entry.js +0 -1
- package/dist/q2-tecton-elements/p-2b94ae62.entry.js +0 -1
- package/dist/q2-tecton-elements/p-2e54f9a0.entry.js +0 -1
- package/dist/q2-tecton-elements/p-375569ff.entry.js +0 -1
- package/dist/q2-tecton-elements/p-3766cc6c.entry.js +0 -1
- package/dist/q2-tecton-elements/p-3eda2714.entry.js +0 -1
- package/dist/q2-tecton-elements/p-421af42d.entry.js +0 -1
- package/dist/q2-tecton-elements/p-4c53713d.entry.js +0 -1
- package/dist/q2-tecton-elements/p-4fd405f5.entry.js +0 -1
- package/dist/q2-tecton-elements/p-509c8924.entry.js +0 -1
- package/dist/q2-tecton-elements/p-55dc3dc1.entry.js +0 -1
- package/dist/q2-tecton-elements/p-5fffb28a.entry.js +0 -1
- package/dist/q2-tecton-elements/p-612e9974.entry.js +0 -1
- package/dist/q2-tecton-elements/p-64ca8c59.entry.js +0 -1
- package/dist/q2-tecton-elements/p-796c2bb5.entry.js +0 -1
- package/dist/q2-tecton-elements/p-86887866.entry.js +0 -1
- package/dist/q2-tecton-elements/p-9204c34d.entry.js +0 -1
- package/dist/q2-tecton-elements/p-9725d55f.entry.js +0 -1
- package/dist/q2-tecton-elements/p-a0fa416d.entry.js +0 -39
- package/dist/q2-tecton-elements/p-bd83e8e2.entry.js +0 -1
- package/dist/q2-tecton-elements/p-be0f2539.entry.js +0 -1
- package/dist/q2-tecton-elements/p-c05b0b55.entry.js +0 -1
- package/dist/q2-tecton-elements/p-c5691700.js +0 -1
- package/dist/q2-tecton-elements/p-d826d7ad.entry.js +0 -1
- package/dist/q2-tecton-elements/p-d9e9340c.entry.js +0 -1
- package/dist/q2-tecton-elements/p-e5757895.entry.js +0 -1
- package/dist/q2-tecton-elements/p-e68c9ef0.entry.js +0 -1
- package/dist/q2-tecton-elements/p-eb33bda4.entry.js +0 -1
- package/dist/q2-tecton-elements/p-f319549d.entry.js +0 -1
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const index = require('./index-
|
|
6
|
-
const index$1 = require('./index-
|
|
5
|
+
const index = require('./index-734296a7.js');
|
|
6
|
+
const index$1 = require('./index-3518c78c.js');
|
|
7
7
|
|
|
8
8
|
/*! *****************************************************************************
|
|
9
9
|
Copyright (c) Microsoft Corporation.
|
|
@@ -1132,6 +1132,21 @@ function preparePointerTransformer(markers, saved, inverse) {
|
|
|
1132
1132
|
function isCanvasEl(el) {
|
|
1133
1133
|
return el.nodeName.toUpperCase() === 'CANVAS';
|
|
1134
1134
|
}
|
|
1135
|
+
var replaceReg = /([&<>"'])/g;
|
|
1136
|
+
var replaceMap = {
|
|
1137
|
+
'&': '&',
|
|
1138
|
+
'<': '<',
|
|
1139
|
+
'>': '>',
|
|
1140
|
+
'"': '"',
|
|
1141
|
+
'\'': '''
|
|
1142
|
+
};
|
|
1143
|
+
function encodeHTML(source) {
|
|
1144
|
+
return source == null
|
|
1145
|
+
? ''
|
|
1146
|
+
: (source + '').replace(replaceReg, function (str, c) {
|
|
1147
|
+
return replaceMap[c];
|
|
1148
|
+
});
|
|
1149
|
+
}
|
|
1135
1150
|
|
|
1136
1151
|
var MOUSE_EVENT_REG = /^(?:mouse|pointer|contextmenu|drag|drop)|click/;
|
|
1137
1152
|
var _calcOut = [];
|
|
@@ -1315,6 +1330,442 @@ var recognizers = {
|
|
|
1315
1330
|
}
|
|
1316
1331
|
};
|
|
1317
1332
|
|
|
1333
|
+
function create() {
|
|
1334
|
+
return [1, 0, 0, 1, 0, 0];
|
|
1335
|
+
}
|
|
1336
|
+
function identity(out) {
|
|
1337
|
+
out[0] = 1;
|
|
1338
|
+
out[1] = 0;
|
|
1339
|
+
out[2] = 0;
|
|
1340
|
+
out[3] = 1;
|
|
1341
|
+
out[4] = 0;
|
|
1342
|
+
out[5] = 0;
|
|
1343
|
+
return out;
|
|
1344
|
+
}
|
|
1345
|
+
function copy(out, m) {
|
|
1346
|
+
out[0] = m[0];
|
|
1347
|
+
out[1] = m[1];
|
|
1348
|
+
out[2] = m[2];
|
|
1349
|
+
out[3] = m[3];
|
|
1350
|
+
out[4] = m[4];
|
|
1351
|
+
out[5] = m[5];
|
|
1352
|
+
return out;
|
|
1353
|
+
}
|
|
1354
|
+
function mul(out, m1, m2) {
|
|
1355
|
+
var out0 = m1[0] * m2[0] + m1[2] * m2[1];
|
|
1356
|
+
var out1 = m1[1] * m2[0] + m1[3] * m2[1];
|
|
1357
|
+
var out2 = m1[0] * m2[2] + m1[2] * m2[3];
|
|
1358
|
+
var out3 = m1[1] * m2[2] + m1[3] * m2[3];
|
|
1359
|
+
var out4 = m1[0] * m2[4] + m1[2] * m2[5] + m1[4];
|
|
1360
|
+
var out5 = m1[1] * m2[4] + m1[3] * m2[5] + m1[5];
|
|
1361
|
+
out[0] = out0;
|
|
1362
|
+
out[1] = out1;
|
|
1363
|
+
out[2] = out2;
|
|
1364
|
+
out[3] = out3;
|
|
1365
|
+
out[4] = out4;
|
|
1366
|
+
out[5] = out5;
|
|
1367
|
+
return out;
|
|
1368
|
+
}
|
|
1369
|
+
function translate(out, a, v) {
|
|
1370
|
+
out[0] = a[0];
|
|
1371
|
+
out[1] = a[1];
|
|
1372
|
+
out[2] = a[2];
|
|
1373
|
+
out[3] = a[3];
|
|
1374
|
+
out[4] = a[4] + v[0];
|
|
1375
|
+
out[5] = a[5] + v[1];
|
|
1376
|
+
return out;
|
|
1377
|
+
}
|
|
1378
|
+
function rotate(out, a, rad) {
|
|
1379
|
+
var aa = a[0];
|
|
1380
|
+
var ac = a[2];
|
|
1381
|
+
var atx = a[4];
|
|
1382
|
+
var ab = a[1];
|
|
1383
|
+
var ad = a[3];
|
|
1384
|
+
var aty = a[5];
|
|
1385
|
+
var st = Math.sin(rad);
|
|
1386
|
+
var ct = Math.cos(rad);
|
|
1387
|
+
out[0] = aa * ct + ab * st;
|
|
1388
|
+
out[1] = -aa * st + ab * ct;
|
|
1389
|
+
out[2] = ac * ct + ad * st;
|
|
1390
|
+
out[3] = -ac * st + ct * ad;
|
|
1391
|
+
out[4] = ct * atx + st * aty;
|
|
1392
|
+
out[5] = ct * aty - st * atx;
|
|
1393
|
+
return out;
|
|
1394
|
+
}
|
|
1395
|
+
function scale(out, a, v) {
|
|
1396
|
+
var vx = v[0];
|
|
1397
|
+
var vy = v[1];
|
|
1398
|
+
out[0] = a[0] * vx;
|
|
1399
|
+
out[1] = a[1] * vy;
|
|
1400
|
+
out[2] = a[2] * vx;
|
|
1401
|
+
out[3] = a[3] * vy;
|
|
1402
|
+
out[4] = a[4] * vx;
|
|
1403
|
+
out[5] = a[5] * vy;
|
|
1404
|
+
return out;
|
|
1405
|
+
}
|
|
1406
|
+
function invert(out, a) {
|
|
1407
|
+
var aa = a[0];
|
|
1408
|
+
var ac = a[2];
|
|
1409
|
+
var atx = a[4];
|
|
1410
|
+
var ab = a[1];
|
|
1411
|
+
var ad = a[3];
|
|
1412
|
+
var aty = a[5];
|
|
1413
|
+
var det = aa * ad - ab * ac;
|
|
1414
|
+
if (!det) {
|
|
1415
|
+
return null;
|
|
1416
|
+
}
|
|
1417
|
+
det = 1.0 / det;
|
|
1418
|
+
out[0] = ad * det;
|
|
1419
|
+
out[1] = -ab * det;
|
|
1420
|
+
out[2] = -ac * det;
|
|
1421
|
+
out[3] = aa * det;
|
|
1422
|
+
out[4] = (ac * aty - ad * atx) * det;
|
|
1423
|
+
out[5] = (ab * atx - aa * aty) * det;
|
|
1424
|
+
return out;
|
|
1425
|
+
}
|
|
1426
|
+
|
|
1427
|
+
var Point = (function () {
|
|
1428
|
+
function Point(x, y) {
|
|
1429
|
+
this.x = x || 0;
|
|
1430
|
+
this.y = y || 0;
|
|
1431
|
+
}
|
|
1432
|
+
Point.prototype.copy = function (other) {
|
|
1433
|
+
this.x = other.x;
|
|
1434
|
+
this.y = other.y;
|
|
1435
|
+
return this;
|
|
1436
|
+
};
|
|
1437
|
+
Point.prototype.clone = function () {
|
|
1438
|
+
return new Point(this.x, this.y);
|
|
1439
|
+
};
|
|
1440
|
+
Point.prototype.set = function (x, y) {
|
|
1441
|
+
this.x = x;
|
|
1442
|
+
this.y = y;
|
|
1443
|
+
return this;
|
|
1444
|
+
};
|
|
1445
|
+
Point.prototype.equal = function (other) {
|
|
1446
|
+
return other.x === this.x && other.y === this.y;
|
|
1447
|
+
};
|
|
1448
|
+
Point.prototype.add = function (other) {
|
|
1449
|
+
this.x += other.x;
|
|
1450
|
+
this.y += other.y;
|
|
1451
|
+
return this;
|
|
1452
|
+
};
|
|
1453
|
+
Point.prototype.scale = function (scalar) {
|
|
1454
|
+
this.x *= scalar;
|
|
1455
|
+
this.y *= scalar;
|
|
1456
|
+
};
|
|
1457
|
+
Point.prototype.scaleAndAdd = function (other, scalar) {
|
|
1458
|
+
this.x += other.x * scalar;
|
|
1459
|
+
this.y += other.y * scalar;
|
|
1460
|
+
};
|
|
1461
|
+
Point.prototype.sub = function (other) {
|
|
1462
|
+
this.x -= other.x;
|
|
1463
|
+
this.y -= other.y;
|
|
1464
|
+
return this;
|
|
1465
|
+
};
|
|
1466
|
+
Point.prototype.dot = function (other) {
|
|
1467
|
+
return this.x * other.x + this.y * other.y;
|
|
1468
|
+
};
|
|
1469
|
+
Point.prototype.len = function () {
|
|
1470
|
+
return Math.sqrt(this.x * this.x + this.y * this.y);
|
|
1471
|
+
};
|
|
1472
|
+
Point.prototype.lenSquare = function () {
|
|
1473
|
+
return this.x * this.x + this.y * this.y;
|
|
1474
|
+
};
|
|
1475
|
+
Point.prototype.normalize = function () {
|
|
1476
|
+
var len = this.len();
|
|
1477
|
+
this.x /= len;
|
|
1478
|
+
this.y /= len;
|
|
1479
|
+
return this;
|
|
1480
|
+
};
|
|
1481
|
+
Point.prototype.distance = function (other) {
|
|
1482
|
+
var dx = this.x - other.x;
|
|
1483
|
+
var dy = this.y - other.y;
|
|
1484
|
+
return Math.sqrt(dx * dx + dy * dy);
|
|
1485
|
+
};
|
|
1486
|
+
Point.prototype.distanceSquare = function (other) {
|
|
1487
|
+
var dx = this.x - other.x;
|
|
1488
|
+
var dy = this.y - other.y;
|
|
1489
|
+
return dx * dx + dy * dy;
|
|
1490
|
+
};
|
|
1491
|
+
Point.prototype.negate = function () {
|
|
1492
|
+
this.x = -this.x;
|
|
1493
|
+
this.y = -this.y;
|
|
1494
|
+
return this;
|
|
1495
|
+
};
|
|
1496
|
+
Point.prototype.transform = function (m) {
|
|
1497
|
+
if (!m) {
|
|
1498
|
+
return;
|
|
1499
|
+
}
|
|
1500
|
+
var x = this.x;
|
|
1501
|
+
var y = this.y;
|
|
1502
|
+
this.x = m[0] * x + m[2] * y + m[4];
|
|
1503
|
+
this.y = m[1] * x + m[3] * y + m[5];
|
|
1504
|
+
return this;
|
|
1505
|
+
};
|
|
1506
|
+
Point.prototype.toArray = function (out) {
|
|
1507
|
+
out[0] = this.x;
|
|
1508
|
+
out[1] = this.y;
|
|
1509
|
+
return out;
|
|
1510
|
+
};
|
|
1511
|
+
Point.prototype.fromArray = function (input) {
|
|
1512
|
+
this.x = input[0];
|
|
1513
|
+
this.y = input[1];
|
|
1514
|
+
};
|
|
1515
|
+
Point.set = function (p, x, y) {
|
|
1516
|
+
p.x = x;
|
|
1517
|
+
p.y = y;
|
|
1518
|
+
};
|
|
1519
|
+
Point.copy = function (p, p2) {
|
|
1520
|
+
p.x = p2.x;
|
|
1521
|
+
p.y = p2.y;
|
|
1522
|
+
};
|
|
1523
|
+
Point.len = function (p) {
|
|
1524
|
+
return Math.sqrt(p.x * p.x + p.y * p.y);
|
|
1525
|
+
};
|
|
1526
|
+
Point.lenSquare = function (p) {
|
|
1527
|
+
return p.x * p.x + p.y * p.y;
|
|
1528
|
+
};
|
|
1529
|
+
Point.dot = function (p0, p1) {
|
|
1530
|
+
return p0.x * p1.x + p0.y * p1.y;
|
|
1531
|
+
};
|
|
1532
|
+
Point.add = function (out, p0, p1) {
|
|
1533
|
+
out.x = p0.x + p1.x;
|
|
1534
|
+
out.y = p0.y + p1.y;
|
|
1535
|
+
};
|
|
1536
|
+
Point.sub = function (out, p0, p1) {
|
|
1537
|
+
out.x = p0.x - p1.x;
|
|
1538
|
+
out.y = p0.y - p1.y;
|
|
1539
|
+
};
|
|
1540
|
+
Point.scale = function (out, p0, scalar) {
|
|
1541
|
+
out.x = p0.x * scalar;
|
|
1542
|
+
out.y = p0.y * scalar;
|
|
1543
|
+
};
|
|
1544
|
+
Point.scaleAndAdd = function (out, p0, p1, scalar) {
|
|
1545
|
+
out.x = p0.x + p1.x * scalar;
|
|
1546
|
+
out.y = p0.y + p1.y * scalar;
|
|
1547
|
+
};
|
|
1548
|
+
Point.lerp = function (out, p0, p1, t) {
|
|
1549
|
+
var onet = 1 - t;
|
|
1550
|
+
out.x = onet * p0.x + t * p1.x;
|
|
1551
|
+
out.y = onet * p0.y + t * p1.y;
|
|
1552
|
+
};
|
|
1553
|
+
return Point;
|
|
1554
|
+
}());
|
|
1555
|
+
|
|
1556
|
+
var mathMin$4 = Math.min;
|
|
1557
|
+
var mathMax$4 = Math.max;
|
|
1558
|
+
var lt = new Point();
|
|
1559
|
+
var rb = new Point();
|
|
1560
|
+
var lb = new Point();
|
|
1561
|
+
var rt = new Point();
|
|
1562
|
+
var minTv$1 = new Point();
|
|
1563
|
+
var maxTv$1 = new Point();
|
|
1564
|
+
var BoundingRect = (function () {
|
|
1565
|
+
function BoundingRect(x, y, width, height) {
|
|
1566
|
+
if (width < 0) {
|
|
1567
|
+
x = x + width;
|
|
1568
|
+
width = -width;
|
|
1569
|
+
}
|
|
1570
|
+
if (height < 0) {
|
|
1571
|
+
y = y + height;
|
|
1572
|
+
height = -height;
|
|
1573
|
+
}
|
|
1574
|
+
this.x = x;
|
|
1575
|
+
this.y = y;
|
|
1576
|
+
this.width = width;
|
|
1577
|
+
this.height = height;
|
|
1578
|
+
}
|
|
1579
|
+
BoundingRect.prototype.union = function (other) {
|
|
1580
|
+
var x = mathMin$4(other.x, this.x);
|
|
1581
|
+
var y = mathMin$4(other.y, this.y);
|
|
1582
|
+
if (isFinite(this.x) && isFinite(this.width)) {
|
|
1583
|
+
this.width = mathMax$4(other.x + other.width, this.x + this.width) - x;
|
|
1584
|
+
}
|
|
1585
|
+
else {
|
|
1586
|
+
this.width = other.width;
|
|
1587
|
+
}
|
|
1588
|
+
if (isFinite(this.y) && isFinite(this.height)) {
|
|
1589
|
+
this.height = mathMax$4(other.y + other.height, this.y + this.height) - y;
|
|
1590
|
+
}
|
|
1591
|
+
else {
|
|
1592
|
+
this.height = other.height;
|
|
1593
|
+
}
|
|
1594
|
+
this.x = x;
|
|
1595
|
+
this.y = y;
|
|
1596
|
+
};
|
|
1597
|
+
BoundingRect.prototype.applyTransform = function (m) {
|
|
1598
|
+
BoundingRect.applyTransform(this, this, m);
|
|
1599
|
+
};
|
|
1600
|
+
BoundingRect.prototype.calculateTransform = function (b) {
|
|
1601
|
+
var a = this;
|
|
1602
|
+
var sx = b.width / a.width;
|
|
1603
|
+
var sy = b.height / a.height;
|
|
1604
|
+
var m = create();
|
|
1605
|
+
translate(m, m, [-a.x, -a.y]);
|
|
1606
|
+
scale(m, m, [sx, sy]);
|
|
1607
|
+
translate(m, m, [b.x, b.y]);
|
|
1608
|
+
return m;
|
|
1609
|
+
};
|
|
1610
|
+
BoundingRect.prototype.intersect = function (b, mtv) {
|
|
1611
|
+
if (!b) {
|
|
1612
|
+
return false;
|
|
1613
|
+
}
|
|
1614
|
+
if (!(b instanceof BoundingRect)) {
|
|
1615
|
+
b = BoundingRect.create(b);
|
|
1616
|
+
}
|
|
1617
|
+
var a = this;
|
|
1618
|
+
var ax0 = a.x;
|
|
1619
|
+
var ax1 = a.x + a.width;
|
|
1620
|
+
var ay0 = a.y;
|
|
1621
|
+
var ay1 = a.y + a.height;
|
|
1622
|
+
var bx0 = b.x;
|
|
1623
|
+
var bx1 = b.x + b.width;
|
|
1624
|
+
var by0 = b.y;
|
|
1625
|
+
var by1 = b.y + b.height;
|
|
1626
|
+
var overlap = !(ax1 < bx0 || bx1 < ax0 || ay1 < by0 || by1 < ay0);
|
|
1627
|
+
if (mtv) {
|
|
1628
|
+
var dMin = Infinity;
|
|
1629
|
+
var dMax = 0;
|
|
1630
|
+
var d0 = Math.abs(ax1 - bx0);
|
|
1631
|
+
var d1 = Math.abs(bx1 - ax0);
|
|
1632
|
+
var d2 = Math.abs(ay1 - by0);
|
|
1633
|
+
var d3 = Math.abs(by1 - ay0);
|
|
1634
|
+
var dx = Math.min(d0, d1);
|
|
1635
|
+
var dy = Math.min(d2, d3);
|
|
1636
|
+
if (ax1 < bx0 || bx1 < ax0) {
|
|
1637
|
+
if (dx > dMax) {
|
|
1638
|
+
dMax = dx;
|
|
1639
|
+
if (d0 < d1) {
|
|
1640
|
+
Point.set(maxTv$1, -d0, 0);
|
|
1641
|
+
}
|
|
1642
|
+
else {
|
|
1643
|
+
Point.set(maxTv$1, d1, 0);
|
|
1644
|
+
}
|
|
1645
|
+
}
|
|
1646
|
+
}
|
|
1647
|
+
else {
|
|
1648
|
+
if (dx < dMin) {
|
|
1649
|
+
dMin = dx;
|
|
1650
|
+
if (d0 < d1) {
|
|
1651
|
+
Point.set(minTv$1, d0, 0);
|
|
1652
|
+
}
|
|
1653
|
+
else {
|
|
1654
|
+
Point.set(minTv$1, -d1, 0);
|
|
1655
|
+
}
|
|
1656
|
+
}
|
|
1657
|
+
}
|
|
1658
|
+
if (ay1 < by0 || by1 < ay0) {
|
|
1659
|
+
if (dy > dMax) {
|
|
1660
|
+
dMax = dy;
|
|
1661
|
+
if (d2 < d3) {
|
|
1662
|
+
Point.set(maxTv$1, 0, -d2);
|
|
1663
|
+
}
|
|
1664
|
+
else {
|
|
1665
|
+
Point.set(maxTv$1, 0, d3);
|
|
1666
|
+
}
|
|
1667
|
+
}
|
|
1668
|
+
}
|
|
1669
|
+
else {
|
|
1670
|
+
if (dx < dMin) {
|
|
1671
|
+
dMin = dx;
|
|
1672
|
+
if (d2 < d3) {
|
|
1673
|
+
Point.set(minTv$1, 0, d2);
|
|
1674
|
+
}
|
|
1675
|
+
else {
|
|
1676
|
+
Point.set(minTv$1, 0, -d3);
|
|
1677
|
+
}
|
|
1678
|
+
}
|
|
1679
|
+
}
|
|
1680
|
+
}
|
|
1681
|
+
if (mtv) {
|
|
1682
|
+
Point.copy(mtv, overlap ? minTv$1 : maxTv$1);
|
|
1683
|
+
}
|
|
1684
|
+
return overlap;
|
|
1685
|
+
};
|
|
1686
|
+
BoundingRect.prototype.contain = function (x, y) {
|
|
1687
|
+
var rect = this;
|
|
1688
|
+
return x >= rect.x
|
|
1689
|
+
&& x <= (rect.x + rect.width)
|
|
1690
|
+
&& y >= rect.y
|
|
1691
|
+
&& y <= (rect.y + rect.height);
|
|
1692
|
+
};
|
|
1693
|
+
BoundingRect.prototype.clone = function () {
|
|
1694
|
+
return new BoundingRect(this.x, this.y, this.width, this.height);
|
|
1695
|
+
};
|
|
1696
|
+
BoundingRect.prototype.copy = function (other) {
|
|
1697
|
+
BoundingRect.copy(this, other);
|
|
1698
|
+
};
|
|
1699
|
+
BoundingRect.prototype.plain = function () {
|
|
1700
|
+
return {
|
|
1701
|
+
x: this.x,
|
|
1702
|
+
y: this.y,
|
|
1703
|
+
width: this.width,
|
|
1704
|
+
height: this.height
|
|
1705
|
+
};
|
|
1706
|
+
};
|
|
1707
|
+
BoundingRect.prototype.isFinite = function () {
|
|
1708
|
+
return isFinite(this.x)
|
|
1709
|
+
&& isFinite(this.y)
|
|
1710
|
+
&& isFinite(this.width)
|
|
1711
|
+
&& isFinite(this.height);
|
|
1712
|
+
};
|
|
1713
|
+
BoundingRect.prototype.isZero = function () {
|
|
1714
|
+
return this.width === 0 || this.height === 0;
|
|
1715
|
+
};
|
|
1716
|
+
BoundingRect.create = function (rect) {
|
|
1717
|
+
return new BoundingRect(rect.x, rect.y, rect.width, rect.height);
|
|
1718
|
+
};
|
|
1719
|
+
BoundingRect.copy = function (target, source) {
|
|
1720
|
+
target.x = source.x;
|
|
1721
|
+
target.y = source.y;
|
|
1722
|
+
target.width = source.width;
|
|
1723
|
+
target.height = source.height;
|
|
1724
|
+
};
|
|
1725
|
+
BoundingRect.applyTransform = function (target, source, m) {
|
|
1726
|
+
if (!m) {
|
|
1727
|
+
if (target !== source) {
|
|
1728
|
+
BoundingRect.copy(target, source);
|
|
1729
|
+
}
|
|
1730
|
+
return;
|
|
1731
|
+
}
|
|
1732
|
+
if (m[1] < 1e-5 && m[1] > -1e-5 && m[2] < 1e-5 && m[2] > -1e-5) {
|
|
1733
|
+
var sx = m[0];
|
|
1734
|
+
var sy = m[3];
|
|
1735
|
+
var tx = m[4];
|
|
1736
|
+
var ty = m[5];
|
|
1737
|
+
target.x = source.x * sx + tx;
|
|
1738
|
+
target.y = source.y * sy + ty;
|
|
1739
|
+
target.width = source.width * sx;
|
|
1740
|
+
target.height = source.height * sy;
|
|
1741
|
+
if (target.width < 0) {
|
|
1742
|
+
target.x += target.width;
|
|
1743
|
+
target.width = -target.width;
|
|
1744
|
+
}
|
|
1745
|
+
if (target.height < 0) {
|
|
1746
|
+
target.y += target.height;
|
|
1747
|
+
target.height = -target.height;
|
|
1748
|
+
}
|
|
1749
|
+
return;
|
|
1750
|
+
}
|
|
1751
|
+
lt.x = lb.x = source.x;
|
|
1752
|
+
lt.y = rt.y = source.y;
|
|
1753
|
+
rb.x = rt.x = source.x + source.width;
|
|
1754
|
+
rb.y = lb.y = source.y + source.height;
|
|
1755
|
+
lt.transform(m);
|
|
1756
|
+
rt.transform(m);
|
|
1757
|
+
rb.transform(m);
|
|
1758
|
+
lb.transform(m);
|
|
1759
|
+
target.x = mathMin$4(lt.x, rb.x, lb.x, rt.x);
|
|
1760
|
+
target.y = mathMin$4(lt.y, rb.y, lb.y, rt.y);
|
|
1761
|
+
var maxX = mathMax$4(lt.x, rb.x, lb.x, rt.x);
|
|
1762
|
+
var maxY = mathMax$4(lt.y, rb.y, lb.y, rt.y);
|
|
1763
|
+
target.width = maxX - target.x;
|
|
1764
|
+
target.height = maxY - target.y;
|
|
1765
|
+
};
|
|
1766
|
+
return BoundingRect;
|
|
1767
|
+
}());
|
|
1768
|
+
|
|
1318
1769
|
var SILENT = 'silent';
|
|
1319
1770
|
function makeEventPacket(eveType, targetInfo, event) {
|
|
1320
1771
|
return {
|
|
@@ -1360,14 +1811,16 @@ var handlerNames = [
|
|
|
1360
1811
|
'click', 'dblclick', 'mousewheel', 'mouseout',
|
|
1361
1812
|
'mouseup', 'mousedown', 'mousemove', 'contextmenu'
|
|
1362
1813
|
];
|
|
1814
|
+
var tmpRect$1 = new BoundingRect(0, 0, 0, 0);
|
|
1363
1815
|
var Handler = (function (_super) {
|
|
1364
1816
|
__extends(Handler, _super);
|
|
1365
|
-
function Handler(storage, painter, proxy, painterRoot) {
|
|
1817
|
+
function Handler(storage, painter, proxy, painterRoot, pointerSize) {
|
|
1366
1818
|
var _this = _super.call(this) || this;
|
|
1367
1819
|
_this._hovered = new HoveredResult(0, 0);
|
|
1368
1820
|
_this.storage = storage;
|
|
1369
1821
|
_this.painter = painter;
|
|
1370
1822
|
_this.painterRoot = painterRoot;
|
|
1823
|
+
_this._pointerSize = pointerSize;
|
|
1371
1824
|
proxy = proxy || new EmptyProxy();
|
|
1372
1825
|
_this.proxy = null;
|
|
1373
1826
|
_this.setHandlerProxy(proxy);
|
|
@@ -1468,15 +1921,40 @@ var Handler = (function (_super) {
|
|
|
1468
1921
|
Handler.prototype.findHover = function (x, y, exclude) {
|
|
1469
1922
|
var list = this.storage.getDisplayList();
|
|
1470
1923
|
var out = new HoveredResult(x, y);
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1924
|
+
setHoverTarget(list, out, x, y, exclude);
|
|
1925
|
+
if (this._pointerSize && !out.target) {
|
|
1926
|
+
var candidates = [];
|
|
1927
|
+
var pointerSize = this._pointerSize;
|
|
1928
|
+
var targetSizeHalf = pointerSize / 2;
|
|
1929
|
+
var pointerRect = new BoundingRect(x - targetSizeHalf, y - targetSizeHalf, pointerSize, pointerSize);
|
|
1930
|
+
for (var i = list.length - 1; i >= 0; i--) {
|
|
1931
|
+
var el = list[i];
|
|
1932
|
+
if (el !== exclude
|
|
1933
|
+
&& !el.ignore
|
|
1934
|
+
&& !el.ignoreCoarsePointer
|
|
1935
|
+
&& (!el.parent || !el.parent.ignoreCoarsePointer)) {
|
|
1936
|
+
tmpRect$1.copy(el.getBoundingRect());
|
|
1937
|
+
if (el.transform) {
|
|
1938
|
+
tmpRect$1.applyTransform(el.transform);
|
|
1939
|
+
}
|
|
1940
|
+
if (tmpRect$1.intersect(pointerRect)) {
|
|
1941
|
+
candidates.push(el);
|
|
1942
|
+
}
|
|
1943
|
+
}
|
|
1944
|
+
}
|
|
1945
|
+
if (candidates.length) {
|
|
1946
|
+
var rStep = 4;
|
|
1947
|
+
var thetaStep = Math.PI / 12;
|
|
1948
|
+
var PI2 = Math.PI * 2;
|
|
1949
|
+
for (var r = 0; r < targetSizeHalf; r += rStep) {
|
|
1950
|
+
for (var theta = 0; theta < PI2; theta += thetaStep) {
|
|
1951
|
+
var x1 = x + r * Math.cos(theta);
|
|
1952
|
+
var y1 = y + r * Math.sin(theta);
|
|
1953
|
+
setHoverTarget(candidates, out, x1, y1, exclude);
|
|
1954
|
+
if (out.target) {
|
|
1955
|
+
return out;
|
|
1956
|
+
}
|
|
1957
|
+
}
|
|
1480
1958
|
}
|
|
1481
1959
|
}
|
|
1482
1960
|
}
|
|
@@ -1555,6 +2033,21 @@ function isHover(displayable, x, y) {
|
|
|
1555
2033
|
}
|
|
1556
2034
|
return false;
|
|
1557
2035
|
}
|
|
2036
|
+
function setHoverTarget(list, out, x, y, exclude) {
|
|
2037
|
+
for (var i = list.length - 1; i >= 0; i--) {
|
|
2038
|
+
var el = list[i];
|
|
2039
|
+
var hoverCheckResult = void 0;
|
|
2040
|
+
if (el !== exclude
|
|
2041
|
+
&& !el.ignore
|
|
2042
|
+
&& (hoverCheckResult = isHover(el, x, y))) {
|
|
2043
|
+
!out.topTarget && (out.topTarget = el);
|
|
2044
|
+
if (hoverCheckResult !== SILENT) {
|
|
2045
|
+
out.target = el;
|
|
2046
|
+
break;
|
|
2047
|
+
}
|
|
2048
|
+
}
|
|
2049
|
+
}
|
|
2050
|
+
}
|
|
1558
2051
|
function isOutsideBoundary(handlerInstance, x, y) {
|
|
1559
2052
|
var painter = handlerInstance.painter;
|
|
1560
2053
|
return x < 0 || x > painter.getWidth() || y < 0 || y > painter.getHeight();
|
|
@@ -3175,13 +3668,15 @@ function parse(colorStr, rgbaArr) {
|
|
|
3175
3668
|
}
|
|
3176
3669
|
alpha = parseCssFloat(params.pop());
|
|
3177
3670
|
case 'rgb':
|
|
3178
|
-
if (params.length
|
|
3671
|
+
if (params.length >= 3) {
|
|
3672
|
+
setRgba(rgbaArr, parseCssInt(params[0]), parseCssInt(params[1]), parseCssInt(params[2]), params.length === 3 ? alpha : parseCssFloat(params[3]));
|
|
3673
|
+
putToCache(colorStr, rgbaArr);
|
|
3674
|
+
return rgbaArr;
|
|
3675
|
+
}
|
|
3676
|
+
else {
|
|
3179
3677
|
setRgba(rgbaArr, 0, 0, 0, 1);
|
|
3180
3678
|
return;
|
|
3181
3679
|
}
|
|
3182
|
-
setRgba(rgbaArr, parseCssInt(params[0]), parseCssInt(params[1]), parseCssInt(params[2]), alpha);
|
|
3183
|
-
putToCache(colorStr, rgbaArr);
|
|
3184
|
-
return rgbaArr;
|
|
3185
3680
|
case 'hsla':
|
|
3186
3681
|
if (params.length !== 4) {
|
|
3187
3682
|
setRgba(rgbaArr, 0, 0, 0, 1);
|
|
@@ -4437,100 +4932,6 @@ var DARK_LABEL_COLOR = '#333';
|
|
|
4437
4932
|
var LIGHT_LABEL_COLOR = '#ccc';
|
|
4438
4933
|
var LIGHTER_LABEL_COLOR = '#eee';
|
|
4439
4934
|
|
|
4440
|
-
function create() {
|
|
4441
|
-
return [1, 0, 0, 1, 0, 0];
|
|
4442
|
-
}
|
|
4443
|
-
function identity(out) {
|
|
4444
|
-
out[0] = 1;
|
|
4445
|
-
out[1] = 0;
|
|
4446
|
-
out[2] = 0;
|
|
4447
|
-
out[3] = 1;
|
|
4448
|
-
out[4] = 0;
|
|
4449
|
-
out[5] = 0;
|
|
4450
|
-
return out;
|
|
4451
|
-
}
|
|
4452
|
-
function copy(out, m) {
|
|
4453
|
-
out[0] = m[0];
|
|
4454
|
-
out[1] = m[1];
|
|
4455
|
-
out[2] = m[2];
|
|
4456
|
-
out[3] = m[3];
|
|
4457
|
-
out[4] = m[4];
|
|
4458
|
-
out[5] = m[5];
|
|
4459
|
-
return out;
|
|
4460
|
-
}
|
|
4461
|
-
function mul(out, m1, m2) {
|
|
4462
|
-
var out0 = m1[0] * m2[0] + m1[2] * m2[1];
|
|
4463
|
-
var out1 = m1[1] * m2[0] + m1[3] * m2[1];
|
|
4464
|
-
var out2 = m1[0] * m2[2] + m1[2] * m2[3];
|
|
4465
|
-
var out3 = m1[1] * m2[2] + m1[3] * m2[3];
|
|
4466
|
-
var out4 = m1[0] * m2[4] + m1[2] * m2[5] + m1[4];
|
|
4467
|
-
var out5 = m1[1] * m2[4] + m1[3] * m2[5] + m1[5];
|
|
4468
|
-
out[0] = out0;
|
|
4469
|
-
out[1] = out1;
|
|
4470
|
-
out[2] = out2;
|
|
4471
|
-
out[3] = out3;
|
|
4472
|
-
out[4] = out4;
|
|
4473
|
-
out[5] = out5;
|
|
4474
|
-
return out;
|
|
4475
|
-
}
|
|
4476
|
-
function translate(out, a, v) {
|
|
4477
|
-
out[0] = a[0];
|
|
4478
|
-
out[1] = a[1];
|
|
4479
|
-
out[2] = a[2];
|
|
4480
|
-
out[3] = a[3];
|
|
4481
|
-
out[4] = a[4] + v[0];
|
|
4482
|
-
out[5] = a[5] + v[1];
|
|
4483
|
-
return out;
|
|
4484
|
-
}
|
|
4485
|
-
function rotate(out, a, rad) {
|
|
4486
|
-
var aa = a[0];
|
|
4487
|
-
var ac = a[2];
|
|
4488
|
-
var atx = a[4];
|
|
4489
|
-
var ab = a[1];
|
|
4490
|
-
var ad = a[3];
|
|
4491
|
-
var aty = a[5];
|
|
4492
|
-
var st = Math.sin(rad);
|
|
4493
|
-
var ct = Math.cos(rad);
|
|
4494
|
-
out[0] = aa * ct + ab * st;
|
|
4495
|
-
out[1] = -aa * st + ab * ct;
|
|
4496
|
-
out[2] = ac * ct + ad * st;
|
|
4497
|
-
out[3] = -ac * st + ct * ad;
|
|
4498
|
-
out[4] = ct * atx + st * aty;
|
|
4499
|
-
out[5] = ct * aty - st * atx;
|
|
4500
|
-
return out;
|
|
4501
|
-
}
|
|
4502
|
-
function scale(out, a, v) {
|
|
4503
|
-
var vx = v[0];
|
|
4504
|
-
var vy = v[1];
|
|
4505
|
-
out[0] = a[0] * vx;
|
|
4506
|
-
out[1] = a[1] * vy;
|
|
4507
|
-
out[2] = a[2] * vx;
|
|
4508
|
-
out[3] = a[3] * vy;
|
|
4509
|
-
out[4] = a[4] * vx;
|
|
4510
|
-
out[5] = a[5] * vy;
|
|
4511
|
-
return out;
|
|
4512
|
-
}
|
|
4513
|
-
function invert(out, a) {
|
|
4514
|
-
var aa = a[0];
|
|
4515
|
-
var ac = a[2];
|
|
4516
|
-
var atx = a[4];
|
|
4517
|
-
var ab = a[1];
|
|
4518
|
-
var ad = a[3];
|
|
4519
|
-
var aty = a[5];
|
|
4520
|
-
var det = aa * ad - ab * ac;
|
|
4521
|
-
if (!det) {
|
|
4522
|
-
return null;
|
|
4523
|
-
}
|
|
4524
|
-
det = 1.0 / det;
|
|
4525
|
-
out[0] = ad * det;
|
|
4526
|
-
out[1] = -ab * det;
|
|
4527
|
-
out[2] = -ac * det;
|
|
4528
|
-
out[3] = aa * det;
|
|
4529
|
-
out[4] = (ac * aty - ad * atx) * det;
|
|
4530
|
-
out[5] = (ab * atx - aa * aty) * det;
|
|
4531
|
-
return out;
|
|
4532
|
-
}
|
|
4533
|
-
|
|
4534
4935
|
var mIdentity = identity;
|
|
4535
4936
|
var EPSILON$1 = 5e-5;
|
|
4536
4937
|
function isNotAroundZero(val) {
|
|
@@ -4768,348 +5169,6 @@ function copyTransform(target, source) {
|
|
|
4768
5169
|
}
|
|
4769
5170
|
}
|
|
4770
5171
|
|
|
4771
|
-
var Point = (function () {
|
|
4772
|
-
function Point(x, y) {
|
|
4773
|
-
this.x = x || 0;
|
|
4774
|
-
this.y = y || 0;
|
|
4775
|
-
}
|
|
4776
|
-
Point.prototype.copy = function (other) {
|
|
4777
|
-
this.x = other.x;
|
|
4778
|
-
this.y = other.y;
|
|
4779
|
-
return this;
|
|
4780
|
-
};
|
|
4781
|
-
Point.prototype.clone = function () {
|
|
4782
|
-
return new Point(this.x, this.y);
|
|
4783
|
-
};
|
|
4784
|
-
Point.prototype.set = function (x, y) {
|
|
4785
|
-
this.x = x;
|
|
4786
|
-
this.y = y;
|
|
4787
|
-
return this;
|
|
4788
|
-
};
|
|
4789
|
-
Point.prototype.equal = function (other) {
|
|
4790
|
-
return other.x === this.x && other.y === this.y;
|
|
4791
|
-
};
|
|
4792
|
-
Point.prototype.add = function (other) {
|
|
4793
|
-
this.x += other.x;
|
|
4794
|
-
this.y += other.y;
|
|
4795
|
-
return this;
|
|
4796
|
-
};
|
|
4797
|
-
Point.prototype.scale = function (scalar) {
|
|
4798
|
-
this.x *= scalar;
|
|
4799
|
-
this.y *= scalar;
|
|
4800
|
-
};
|
|
4801
|
-
Point.prototype.scaleAndAdd = function (other, scalar) {
|
|
4802
|
-
this.x += other.x * scalar;
|
|
4803
|
-
this.y += other.y * scalar;
|
|
4804
|
-
};
|
|
4805
|
-
Point.prototype.sub = function (other) {
|
|
4806
|
-
this.x -= other.x;
|
|
4807
|
-
this.y -= other.y;
|
|
4808
|
-
return this;
|
|
4809
|
-
};
|
|
4810
|
-
Point.prototype.dot = function (other) {
|
|
4811
|
-
return this.x * other.x + this.y * other.y;
|
|
4812
|
-
};
|
|
4813
|
-
Point.prototype.len = function () {
|
|
4814
|
-
return Math.sqrt(this.x * this.x + this.y * this.y);
|
|
4815
|
-
};
|
|
4816
|
-
Point.prototype.lenSquare = function () {
|
|
4817
|
-
return this.x * this.x + this.y * this.y;
|
|
4818
|
-
};
|
|
4819
|
-
Point.prototype.normalize = function () {
|
|
4820
|
-
var len = this.len();
|
|
4821
|
-
this.x /= len;
|
|
4822
|
-
this.y /= len;
|
|
4823
|
-
return this;
|
|
4824
|
-
};
|
|
4825
|
-
Point.prototype.distance = function (other) {
|
|
4826
|
-
var dx = this.x - other.x;
|
|
4827
|
-
var dy = this.y - other.y;
|
|
4828
|
-
return Math.sqrt(dx * dx + dy * dy);
|
|
4829
|
-
};
|
|
4830
|
-
Point.prototype.distanceSquare = function (other) {
|
|
4831
|
-
var dx = this.x - other.x;
|
|
4832
|
-
var dy = this.y - other.y;
|
|
4833
|
-
return dx * dx + dy * dy;
|
|
4834
|
-
};
|
|
4835
|
-
Point.prototype.negate = function () {
|
|
4836
|
-
this.x = -this.x;
|
|
4837
|
-
this.y = -this.y;
|
|
4838
|
-
return this;
|
|
4839
|
-
};
|
|
4840
|
-
Point.prototype.transform = function (m) {
|
|
4841
|
-
if (!m) {
|
|
4842
|
-
return;
|
|
4843
|
-
}
|
|
4844
|
-
var x = this.x;
|
|
4845
|
-
var y = this.y;
|
|
4846
|
-
this.x = m[0] * x + m[2] * y + m[4];
|
|
4847
|
-
this.y = m[1] * x + m[3] * y + m[5];
|
|
4848
|
-
return this;
|
|
4849
|
-
};
|
|
4850
|
-
Point.prototype.toArray = function (out) {
|
|
4851
|
-
out[0] = this.x;
|
|
4852
|
-
out[1] = this.y;
|
|
4853
|
-
return out;
|
|
4854
|
-
};
|
|
4855
|
-
Point.prototype.fromArray = function (input) {
|
|
4856
|
-
this.x = input[0];
|
|
4857
|
-
this.y = input[1];
|
|
4858
|
-
};
|
|
4859
|
-
Point.set = function (p, x, y) {
|
|
4860
|
-
p.x = x;
|
|
4861
|
-
p.y = y;
|
|
4862
|
-
};
|
|
4863
|
-
Point.copy = function (p, p2) {
|
|
4864
|
-
p.x = p2.x;
|
|
4865
|
-
p.y = p2.y;
|
|
4866
|
-
};
|
|
4867
|
-
Point.len = function (p) {
|
|
4868
|
-
return Math.sqrt(p.x * p.x + p.y * p.y);
|
|
4869
|
-
};
|
|
4870
|
-
Point.lenSquare = function (p) {
|
|
4871
|
-
return p.x * p.x + p.y * p.y;
|
|
4872
|
-
};
|
|
4873
|
-
Point.dot = function (p0, p1) {
|
|
4874
|
-
return p0.x * p1.x + p0.y * p1.y;
|
|
4875
|
-
};
|
|
4876
|
-
Point.add = function (out, p0, p1) {
|
|
4877
|
-
out.x = p0.x + p1.x;
|
|
4878
|
-
out.y = p0.y + p1.y;
|
|
4879
|
-
};
|
|
4880
|
-
Point.sub = function (out, p0, p1) {
|
|
4881
|
-
out.x = p0.x - p1.x;
|
|
4882
|
-
out.y = p0.y - p1.y;
|
|
4883
|
-
};
|
|
4884
|
-
Point.scale = function (out, p0, scalar) {
|
|
4885
|
-
out.x = p0.x * scalar;
|
|
4886
|
-
out.y = p0.y * scalar;
|
|
4887
|
-
};
|
|
4888
|
-
Point.scaleAndAdd = function (out, p0, p1, scalar) {
|
|
4889
|
-
out.x = p0.x + p1.x * scalar;
|
|
4890
|
-
out.y = p0.y + p1.y * scalar;
|
|
4891
|
-
};
|
|
4892
|
-
Point.lerp = function (out, p0, p1, t) {
|
|
4893
|
-
var onet = 1 - t;
|
|
4894
|
-
out.x = onet * p0.x + t * p1.x;
|
|
4895
|
-
out.y = onet * p0.y + t * p1.y;
|
|
4896
|
-
};
|
|
4897
|
-
return Point;
|
|
4898
|
-
}());
|
|
4899
|
-
|
|
4900
|
-
var mathMin$4 = Math.min;
|
|
4901
|
-
var mathMax$4 = Math.max;
|
|
4902
|
-
var lt = new Point();
|
|
4903
|
-
var rb = new Point();
|
|
4904
|
-
var lb = new Point();
|
|
4905
|
-
var rt = new Point();
|
|
4906
|
-
var minTv$1 = new Point();
|
|
4907
|
-
var maxTv$1 = new Point();
|
|
4908
|
-
var BoundingRect = (function () {
|
|
4909
|
-
function BoundingRect(x, y, width, height) {
|
|
4910
|
-
if (width < 0) {
|
|
4911
|
-
x = x + width;
|
|
4912
|
-
width = -width;
|
|
4913
|
-
}
|
|
4914
|
-
if (height < 0) {
|
|
4915
|
-
y = y + height;
|
|
4916
|
-
height = -height;
|
|
4917
|
-
}
|
|
4918
|
-
this.x = x;
|
|
4919
|
-
this.y = y;
|
|
4920
|
-
this.width = width;
|
|
4921
|
-
this.height = height;
|
|
4922
|
-
}
|
|
4923
|
-
BoundingRect.prototype.union = function (other) {
|
|
4924
|
-
var x = mathMin$4(other.x, this.x);
|
|
4925
|
-
var y = mathMin$4(other.y, this.y);
|
|
4926
|
-
if (isFinite(this.x) && isFinite(this.width)) {
|
|
4927
|
-
this.width = mathMax$4(other.x + other.width, this.x + this.width) - x;
|
|
4928
|
-
}
|
|
4929
|
-
else {
|
|
4930
|
-
this.width = other.width;
|
|
4931
|
-
}
|
|
4932
|
-
if (isFinite(this.y) && isFinite(this.height)) {
|
|
4933
|
-
this.height = mathMax$4(other.y + other.height, this.y + this.height) - y;
|
|
4934
|
-
}
|
|
4935
|
-
else {
|
|
4936
|
-
this.height = other.height;
|
|
4937
|
-
}
|
|
4938
|
-
this.x = x;
|
|
4939
|
-
this.y = y;
|
|
4940
|
-
};
|
|
4941
|
-
BoundingRect.prototype.applyTransform = function (m) {
|
|
4942
|
-
BoundingRect.applyTransform(this, this, m);
|
|
4943
|
-
};
|
|
4944
|
-
BoundingRect.prototype.calculateTransform = function (b) {
|
|
4945
|
-
var a = this;
|
|
4946
|
-
var sx = b.width / a.width;
|
|
4947
|
-
var sy = b.height / a.height;
|
|
4948
|
-
var m = create();
|
|
4949
|
-
translate(m, m, [-a.x, -a.y]);
|
|
4950
|
-
scale(m, m, [sx, sy]);
|
|
4951
|
-
translate(m, m, [b.x, b.y]);
|
|
4952
|
-
return m;
|
|
4953
|
-
};
|
|
4954
|
-
BoundingRect.prototype.intersect = function (b, mtv) {
|
|
4955
|
-
if (!b) {
|
|
4956
|
-
return false;
|
|
4957
|
-
}
|
|
4958
|
-
if (!(b instanceof BoundingRect)) {
|
|
4959
|
-
b = BoundingRect.create(b);
|
|
4960
|
-
}
|
|
4961
|
-
var a = this;
|
|
4962
|
-
var ax0 = a.x;
|
|
4963
|
-
var ax1 = a.x + a.width;
|
|
4964
|
-
var ay0 = a.y;
|
|
4965
|
-
var ay1 = a.y + a.height;
|
|
4966
|
-
var bx0 = b.x;
|
|
4967
|
-
var bx1 = b.x + b.width;
|
|
4968
|
-
var by0 = b.y;
|
|
4969
|
-
var by1 = b.y + b.height;
|
|
4970
|
-
var overlap = !(ax1 < bx0 || bx1 < ax0 || ay1 < by0 || by1 < ay0);
|
|
4971
|
-
if (mtv) {
|
|
4972
|
-
var dMin = Infinity;
|
|
4973
|
-
var dMax = 0;
|
|
4974
|
-
var d0 = Math.abs(ax1 - bx0);
|
|
4975
|
-
var d1 = Math.abs(bx1 - ax0);
|
|
4976
|
-
var d2 = Math.abs(ay1 - by0);
|
|
4977
|
-
var d3 = Math.abs(by1 - ay0);
|
|
4978
|
-
var dx = Math.min(d0, d1);
|
|
4979
|
-
var dy = Math.min(d2, d3);
|
|
4980
|
-
if (ax1 < bx0 || bx1 < ax0) {
|
|
4981
|
-
if (dx > dMax) {
|
|
4982
|
-
dMax = dx;
|
|
4983
|
-
if (d0 < d1) {
|
|
4984
|
-
Point.set(maxTv$1, -d0, 0);
|
|
4985
|
-
}
|
|
4986
|
-
else {
|
|
4987
|
-
Point.set(maxTv$1, d1, 0);
|
|
4988
|
-
}
|
|
4989
|
-
}
|
|
4990
|
-
}
|
|
4991
|
-
else {
|
|
4992
|
-
if (dx < dMin) {
|
|
4993
|
-
dMin = dx;
|
|
4994
|
-
if (d0 < d1) {
|
|
4995
|
-
Point.set(minTv$1, d0, 0);
|
|
4996
|
-
}
|
|
4997
|
-
else {
|
|
4998
|
-
Point.set(minTv$1, -d1, 0);
|
|
4999
|
-
}
|
|
5000
|
-
}
|
|
5001
|
-
}
|
|
5002
|
-
if (ay1 < by0 || by1 < ay0) {
|
|
5003
|
-
if (dy > dMax) {
|
|
5004
|
-
dMax = dy;
|
|
5005
|
-
if (d2 < d3) {
|
|
5006
|
-
Point.set(maxTv$1, 0, -d2);
|
|
5007
|
-
}
|
|
5008
|
-
else {
|
|
5009
|
-
Point.set(maxTv$1, 0, d3);
|
|
5010
|
-
}
|
|
5011
|
-
}
|
|
5012
|
-
}
|
|
5013
|
-
else {
|
|
5014
|
-
if (dx < dMin) {
|
|
5015
|
-
dMin = dx;
|
|
5016
|
-
if (d2 < d3) {
|
|
5017
|
-
Point.set(minTv$1, 0, d2);
|
|
5018
|
-
}
|
|
5019
|
-
else {
|
|
5020
|
-
Point.set(minTv$1, 0, -d3);
|
|
5021
|
-
}
|
|
5022
|
-
}
|
|
5023
|
-
}
|
|
5024
|
-
}
|
|
5025
|
-
if (mtv) {
|
|
5026
|
-
Point.copy(mtv, overlap ? minTv$1 : maxTv$1);
|
|
5027
|
-
}
|
|
5028
|
-
return overlap;
|
|
5029
|
-
};
|
|
5030
|
-
BoundingRect.prototype.contain = function (x, y) {
|
|
5031
|
-
var rect = this;
|
|
5032
|
-
return x >= rect.x
|
|
5033
|
-
&& x <= (rect.x + rect.width)
|
|
5034
|
-
&& y >= rect.y
|
|
5035
|
-
&& y <= (rect.y + rect.height);
|
|
5036
|
-
};
|
|
5037
|
-
BoundingRect.prototype.clone = function () {
|
|
5038
|
-
return new BoundingRect(this.x, this.y, this.width, this.height);
|
|
5039
|
-
};
|
|
5040
|
-
BoundingRect.prototype.copy = function (other) {
|
|
5041
|
-
BoundingRect.copy(this, other);
|
|
5042
|
-
};
|
|
5043
|
-
BoundingRect.prototype.plain = function () {
|
|
5044
|
-
return {
|
|
5045
|
-
x: this.x,
|
|
5046
|
-
y: this.y,
|
|
5047
|
-
width: this.width,
|
|
5048
|
-
height: this.height
|
|
5049
|
-
};
|
|
5050
|
-
};
|
|
5051
|
-
BoundingRect.prototype.isFinite = function () {
|
|
5052
|
-
return isFinite(this.x)
|
|
5053
|
-
&& isFinite(this.y)
|
|
5054
|
-
&& isFinite(this.width)
|
|
5055
|
-
&& isFinite(this.height);
|
|
5056
|
-
};
|
|
5057
|
-
BoundingRect.prototype.isZero = function () {
|
|
5058
|
-
return this.width === 0 || this.height === 0;
|
|
5059
|
-
};
|
|
5060
|
-
BoundingRect.create = function (rect) {
|
|
5061
|
-
return new BoundingRect(rect.x, rect.y, rect.width, rect.height);
|
|
5062
|
-
};
|
|
5063
|
-
BoundingRect.copy = function (target, source) {
|
|
5064
|
-
target.x = source.x;
|
|
5065
|
-
target.y = source.y;
|
|
5066
|
-
target.width = source.width;
|
|
5067
|
-
target.height = source.height;
|
|
5068
|
-
};
|
|
5069
|
-
BoundingRect.applyTransform = function (target, source, m) {
|
|
5070
|
-
if (!m) {
|
|
5071
|
-
if (target !== source) {
|
|
5072
|
-
BoundingRect.copy(target, source);
|
|
5073
|
-
}
|
|
5074
|
-
return;
|
|
5075
|
-
}
|
|
5076
|
-
if (m[1] < 1e-5 && m[1] > -1e-5 && m[2] < 1e-5 && m[2] > -1e-5) {
|
|
5077
|
-
var sx = m[0];
|
|
5078
|
-
var sy = m[3];
|
|
5079
|
-
var tx = m[4];
|
|
5080
|
-
var ty = m[5];
|
|
5081
|
-
target.x = source.x * sx + tx;
|
|
5082
|
-
target.y = source.y * sy + ty;
|
|
5083
|
-
target.width = source.width * sx;
|
|
5084
|
-
target.height = source.height * sy;
|
|
5085
|
-
if (target.width < 0) {
|
|
5086
|
-
target.x += target.width;
|
|
5087
|
-
target.width = -target.width;
|
|
5088
|
-
}
|
|
5089
|
-
if (target.height < 0) {
|
|
5090
|
-
target.y += target.height;
|
|
5091
|
-
target.height = -target.height;
|
|
5092
|
-
}
|
|
5093
|
-
return;
|
|
5094
|
-
}
|
|
5095
|
-
lt.x = lb.x = source.x;
|
|
5096
|
-
lt.y = rt.y = source.y;
|
|
5097
|
-
rb.x = rt.x = source.x + source.width;
|
|
5098
|
-
rb.y = lb.y = source.y + source.height;
|
|
5099
|
-
lt.transform(m);
|
|
5100
|
-
rt.transform(m);
|
|
5101
|
-
rb.transform(m);
|
|
5102
|
-
lb.transform(m);
|
|
5103
|
-
target.x = mathMin$4(lt.x, rb.x, lb.x, rt.x);
|
|
5104
|
-
target.y = mathMin$4(lt.y, rb.y, lb.y, rt.y);
|
|
5105
|
-
var maxX = mathMax$4(lt.x, rb.x, lb.x, rt.x);
|
|
5106
|
-
var maxY = mathMax$4(lt.y, rb.y, lb.y, rt.y);
|
|
5107
|
-
target.width = maxX - target.x;
|
|
5108
|
-
target.height = maxY - target.y;
|
|
5109
|
-
};
|
|
5110
|
-
return BoundingRect;
|
|
5111
|
-
}());
|
|
5112
|
-
|
|
5113
5172
|
var textWidthCache = {};
|
|
5114
5173
|
function getWidth(text, font) {
|
|
5115
5174
|
font = font || DEFAULT_FONT;
|
|
@@ -6496,7 +6555,16 @@ var ZRender = (function () {
|
|
|
6496
6555
|
var handerProxy = (!env.node && !env.worker && !ssrMode)
|
|
6497
6556
|
? new HandlerDomProxy(painter.getViewportRoot(), painter.root)
|
|
6498
6557
|
: null;
|
|
6499
|
-
|
|
6558
|
+
var useCoarsePointer = opts.useCoarsePointer;
|
|
6559
|
+
var usePointerSize = (useCoarsePointer == null || useCoarsePointer === 'auto')
|
|
6560
|
+
? env.touchEventsSupported
|
|
6561
|
+
: !!useCoarsePointer;
|
|
6562
|
+
var defaultPointerSize = 44;
|
|
6563
|
+
var pointerSize;
|
|
6564
|
+
if (usePointerSize) {
|
|
6565
|
+
pointerSize = retrieve2(opts.pointerSize, defaultPointerSize);
|
|
6566
|
+
}
|
|
6567
|
+
this.handler = new Handler(storage, painter, handerProxy, painter.root, pointerSize);
|
|
6500
6568
|
this.animation = new Animation({
|
|
6501
6569
|
stage: {
|
|
6502
6570
|
update: ssrMode ? null : function () { return _this._flush(true); }
|
|
@@ -6820,22 +6888,17 @@ function getPrecisionSafe(val) {
|
|
|
6820
6888
|
* https://en.wikipedia.org/wiki/Largest_remainder_method
|
|
6821
6889
|
*
|
|
6822
6890
|
* @param valueList a list of all data
|
|
6823
|
-
* @param idx index of the data to be processed in valueList
|
|
6824
6891
|
* @param precision integer number showing digits of precision
|
|
6825
|
-
* @return
|
|
6892
|
+
* @return {Array<number>}
|
|
6826
6893
|
*/
|
|
6827
6894
|
|
|
6828
|
-
function
|
|
6829
|
-
if (!valueList[idx]) {
|
|
6830
|
-
return 0;
|
|
6831
|
-
}
|
|
6832
|
-
|
|
6895
|
+
function getPercentSeats(valueList, precision) {
|
|
6833
6896
|
var sum = reduce(valueList, function (acc, val) {
|
|
6834
6897
|
return acc + (isNaN(val) ? 0 : val);
|
|
6835
6898
|
}, 0);
|
|
6836
6899
|
|
|
6837
6900
|
if (sum === 0) {
|
|
6838
|
-
return
|
|
6901
|
+
return [];
|
|
6839
6902
|
}
|
|
6840
6903
|
|
|
6841
6904
|
var digits = Math.pow(10, precision);
|
|
@@ -6872,7 +6935,9 @@ function getPercentWithPrecision(valueList, idx, precision) {
|
|
|
6872
6935
|
++currentSum;
|
|
6873
6936
|
}
|
|
6874
6937
|
|
|
6875
|
-
return seats
|
|
6938
|
+
return map$1(seats, function (seat) {
|
|
6939
|
+
return seat / digits;
|
|
6940
|
+
});
|
|
6876
6941
|
}
|
|
6877
6942
|
/**
|
|
6878
6943
|
* Solve the floating point adding problem like 0.1 + 0.2 === 0.30000000000000004
|
|
@@ -13818,9 +13883,11 @@ function resizePath(path, rect) {
|
|
|
13818
13883
|
* Sub pixel optimize line for canvas
|
|
13819
13884
|
*/
|
|
13820
13885
|
|
|
13821
|
-
function subPixelOptimizeLine(
|
|
13822
|
-
subPixelOptimizeLine$1(
|
|
13823
|
-
|
|
13886
|
+
function subPixelOptimizeLine(shape, lineWidth) {
|
|
13887
|
+
subPixelOptimizeLine$1(shape, shape, {
|
|
13888
|
+
lineWidth: lineWidth
|
|
13889
|
+
});
|
|
13890
|
+
return shape;
|
|
13824
13891
|
}
|
|
13825
13892
|
/**
|
|
13826
13893
|
* Sub pixel optimize rect for canvas
|
|
@@ -15507,19 +15574,6 @@ function toCamelCase(str, upperCaseFirst) {
|
|
|
15507
15574
|
return str;
|
|
15508
15575
|
}
|
|
15509
15576
|
var normalizeCssArray = normalizeCssArray$1;
|
|
15510
|
-
var replaceReg = /([&<>"'])/g;
|
|
15511
|
-
var replaceMap = {
|
|
15512
|
-
'&': '&',
|
|
15513
|
-
'<': '<',
|
|
15514
|
-
'>': '>',
|
|
15515
|
-
'"': '"',
|
|
15516
|
-
'\'': '''
|
|
15517
|
-
};
|
|
15518
|
-
function encodeHTML(source) {
|
|
15519
|
-
return source == null ? '' : (source + '').replace(replaceReg, function (str, c) {
|
|
15520
|
-
return replaceMap[c];
|
|
15521
|
-
});
|
|
15522
|
-
}
|
|
15523
15577
|
/**
|
|
15524
15578
|
* Make value user readable for tooltip and label.
|
|
15525
15579
|
* "User readable":
|
|
@@ -26059,6 +26113,7 @@ function (_super) {
|
|
|
26059
26113
|
|
|
26060
26114
|
_this._dom = dom;
|
|
26061
26115
|
var defaultRenderer = 'canvas';
|
|
26116
|
+
var defaultCoarsePointer = 'auto';
|
|
26062
26117
|
var defaultUseDirtyRect = false;
|
|
26063
26118
|
|
|
26064
26119
|
var zr = _this._zr = init$1(dom, {
|
|
@@ -26067,7 +26122,9 @@ function (_super) {
|
|
|
26067
26122
|
width: opts.width,
|
|
26068
26123
|
height: opts.height,
|
|
26069
26124
|
ssr: opts.ssr,
|
|
26070
|
-
useDirtyRect: opts.useDirtyRect
|
|
26125
|
+
useDirtyRect: retrieve2(opts.useDirtyRect, defaultUseDirtyRect),
|
|
26126
|
+
useCoarsePointer: retrieve2(opts.useCoarsePointer, defaultCoarsePointer),
|
|
26127
|
+
pointerSize: opts.pointerSize
|
|
26071
26128
|
});
|
|
26072
26129
|
_this._ssr = opts.ssr; // Expect 60 fps.
|
|
26073
26130
|
|
|
@@ -31885,6 +31942,7 @@ var builders = {
|
|
|
31885
31942
|
var matrix = transformGroup.transform;
|
|
31886
31943
|
var pt1 = [extent[0], 0];
|
|
31887
31944
|
var pt2 = [extent[1], 0];
|
|
31945
|
+
var inverse = pt1[0] > pt2[0];
|
|
31888
31946
|
|
|
31889
31947
|
if (matrix) {
|
|
31890
31948
|
applyTransform$1(pt1, pt1, matrix);
|
|
@@ -31895,8 +31953,6 @@ var builders = {
|
|
|
31895
31953
|
lineCap: 'round'
|
|
31896
31954
|
}, axisModel.getModel(['axisLine', 'lineStyle']).getLineStyle());
|
|
31897
31955
|
var line = new Line({
|
|
31898
|
-
// Id for animation
|
|
31899
|
-
subPixelOptimize: true,
|
|
31900
31956
|
shape: {
|
|
31901
31957
|
x1: pt1[0],
|
|
31902
31958
|
y1: pt1[1],
|
|
@@ -31908,6 +31964,7 @@ var builders = {
|
|
|
31908
31964
|
silent: true,
|
|
31909
31965
|
z2: 1
|
|
31910
31966
|
});
|
|
31967
|
+
subPixelOptimizeLine(line.shape, line.style.lineWidth);
|
|
31911
31968
|
line.anid = 'line';
|
|
31912
31969
|
group.add(line);
|
|
31913
31970
|
var arrows = axisModel.get(['axisLine', 'symbol']);
|
|
@@ -31941,10 +31998,11 @@ var builders = {
|
|
|
31941
31998
|
var symbol = createSymbol(arrows[index], -symbolWidth_1 / 2, -symbolHeight_1 / 2, symbolWidth_1, symbolHeight_1, lineStyle.stroke, true); // Calculate arrow position with offset
|
|
31942
31999
|
|
|
31943
32000
|
var r = point.r + point.offset;
|
|
32001
|
+
var pt = inverse ? pt2 : pt1;
|
|
31944
32002
|
symbol.attr({
|
|
31945
32003
|
rotation: point.rotate,
|
|
31946
|
-
x:
|
|
31947
|
-
y:
|
|
32004
|
+
x: pt[0] + r * Math.cos(opt.rotation),
|
|
32005
|
+
y: pt[1] - r * Math.sin(opt.rotation),
|
|
31948
32006
|
silent: true,
|
|
31949
32007
|
z2: 11
|
|
31950
32008
|
});
|
|
@@ -32180,7 +32238,6 @@ function createTicks(ticksCoords, tickTransform, tickEndCoord, tickLineStyle, an
|
|
|
32180
32238
|
|
|
32181
32239
|
|
|
32182
32240
|
var tickEl = new Line({
|
|
32183
|
-
subPixelOptimize: true,
|
|
32184
32241
|
shape: {
|
|
32185
32242
|
x1: pt1[0],
|
|
32186
32243
|
y1: pt1[1],
|
|
@@ -32192,6 +32249,7 @@ function createTicks(ticksCoords, tickTransform, tickEndCoord, tickLineStyle, an
|
|
|
32192
32249
|
autoBatch: true,
|
|
32193
32250
|
silent: true
|
|
32194
32251
|
});
|
|
32252
|
+
subPixelOptimizeLine(tickEl.shape, tickEl.style.lineWidth);
|
|
32195
32253
|
tickEl.anid = anidPrefix + '_' + ticksCoords[i].tickValue;
|
|
32196
32254
|
tickEls.push(tickEl);
|
|
32197
32255
|
}
|
|
@@ -37469,10 +37527,22 @@ function getBasicPieLayout(seriesModel, api) {
|
|
|
37469
37527
|
var width = parsePercent(viewRect.width, api.getWidth());
|
|
37470
37528
|
var height = parsePercent(viewRect.height, api.getHeight());
|
|
37471
37529
|
var size = Math.min(width, height);
|
|
37472
|
-
var cx = parsePercent(center[0], width) + viewRect.x;
|
|
37473
|
-
var cy = parsePercent(center[1], height) + viewRect.y;
|
|
37474
37530
|
var r0 = parsePercent(radius[0], size / 2);
|
|
37475
37531
|
var r = parsePercent(radius[1], size / 2);
|
|
37532
|
+
var cx;
|
|
37533
|
+
var cy;
|
|
37534
|
+
var coordSys = seriesModel.coordinateSystem;
|
|
37535
|
+
|
|
37536
|
+
if (coordSys) {
|
|
37537
|
+
// percentage is not allowed when coordinate system is specified
|
|
37538
|
+
var point = coordSys.dataToPoint(center);
|
|
37539
|
+
cx = point[0] || 0;
|
|
37540
|
+
cy = point[1] || 0;
|
|
37541
|
+
} else {
|
|
37542
|
+
cx = parsePercent(center[0], width) + viewRect.x;
|
|
37543
|
+
cy = parsePercent(center[1], height) + viewRect.y;
|
|
37544
|
+
}
|
|
37545
|
+
|
|
37476
37546
|
return {
|
|
37477
37547
|
cx: cx,
|
|
37478
37548
|
cy: cy,
|
|
@@ -37968,7 +38038,8 @@ function pieLabelLayout(seriesModel) {
|
|
|
37968
38038
|
|
|
37969
38039
|
if (Math.abs(sectorShape.endAngle - sectorShape.startAngle) < minShowLabelRadian) {
|
|
37970
38040
|
each$4(label.states, setNotShow);
|
|
37971
|
-
|
|
38041
|
+
each$4(labelLine.states, setNotShow);
|
|
38042
|
+
label.ignore = labelLine.ignore = true;
|
|
37972
38043
|
return;
|
|
37973
38044
|
}
|
|
37974
38045
|
|
|
@@ -38577,10 +38648,16 @@ function (_super) {
|
|
|
38577
38648
|
|
|
38578
38649
|
|
|
38579
38650
|
PieSeriesModel.prototype.getInitialData = function () {
|
|
38580
|
-
|
|
38651
|
+
var data = createSeriesDataSimply(this, {
|
|
38581
38652
|
coordDimensions: ['value'],
|
|
38582
38653
|
encodeDefaulter: curry$1(makeSeriesEncodeForNameBased, this)
|
|
38583
38654
|
});
|
|
38655
|
+
var valueList = [];
|
|
38656
|
+
data.each(data.mapDimension('value'), function (value) {
|
|
38657
|
+
valueList.push(value);
|
|
38658
|
+
});
|
|
38659
|
+
this.seats = getPercentSeats(valueList, data.hostModel.get('percentPrecision'));
|
|
38660
|
+
return data;
|
|
38584
38661
|
};
|
|
38585
38662
|
/**
|
|
38586
38663
|
* @overwrite
|
|
@@ -38588,16 +38665,9 @@ function (_super) {
|
|
|
38588
38665
|
|
|
38589
38666
|
|
|
38590
38667
|
PieSeriesModel.prototype.getDataParams = function (dataIndex) {
|
|
38591
|
-
var
|
|
38668
|
+
var params = _super.prototype.getDataParams.call(this, dataIndex);
|
|
38592
38669
|
|
|
38593
|
-
|
|
38594
|
-
|
|
38595
|
-
|
|
38596
|
-
var valueList = [];
|
|
38597
|
-
data.each(data.mapDimension('value'), function (value) {
|
|
38598
|
-
valueList.push(value);
|
|
38599
|
-
});
|
|
38600
|
-
params.percent = getPercentWithPrecision(valueList, dataIndex, data.hostModel.get('percentPrecision'));
|
|
38670
|
+
params.percent = this.seats[dataIndex];
|
|
38601
38671
|
params.$vars.push('percent');
|
|
38602
38672
|
return params;
|
|
38603
38673
|
};
|
|
@@ -38990,6 +39060,8 @@ var Layer = (function (_super) {
|
|
|
38990
39060
|
clearColor.__canvasGradient = clearColorGradientOrPattern;
|
|
38991
39061
|
}
|
|
38992
39062
|
else if (isImagePatternObject(clearColor)) {
|
|
39063
|
+
clearColor.scaleX = clearColor.scaleX || dpr;
|
|
39064
|
+
clearColor.scaleY = clearColor.scaleY || dpr;
|
|
38993
39065
|
clearColorGradientOrPattern = createCanvasPattern(ctx, clearColor, {
|
|
38994
39066
|
dirty: function () {
|
|
38995
39067
|
self.setUnpainted();
|
|
@@ -39651,7 +39723,7 @@ function install(registers) {
|
|
|
39651
39723
|
registers.registerPainter('canvas', CanvasPainter);
|
|
39652
39724
|
}
|
|
39653
39725
|
|
|
39654
|
-
const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-
|
|
39726
|
+
const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #33b4ff #06C)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{position:relative;width:100%;display:block}.container{aspect-ratio:1/1;width:100%;display:flex;justify-content:center;align-items:center}.chart-container{width:100%;height:100%;--comp-color-1:var(--tct-chart-donut-color-1, var(--t-chart-donut-color-1, var(--t-accent-1, #e05252)));--comp-color-2:var(--tct-chart-donut-color-2, var(--t-chart-donut-color-2, var(--t-accent-2, #e09952)));--comp-color-3:var(--tct-chart-donut-color-3, var(--t-chart-donut-color-3, var(--t-accent-3, #e0e052)));--comp-color-4:var(--tct-chart-donut-color-4, var(--t-chart-donut-color-4, var(--t-accent-4, #99e052)));--comp-color-5:var(--tct-chart-donut-color-5, var(--t-chart-donut-color-5, var(--t-accent-5, #52e052)));--comp-color-6:var(--tct-chart-donut-color-6, var(--t-chart-donut-color-6, var(--t-accent-6, #52e099)));--comp-color-7:var(--tct-chart-donut-color-7, var(--t-chart-donut-color-7, var(--t-accent-7, #52e0e0)));--comp-color-8:var(--tct-chart-donut-color-8, var(--t-chart-donut-color-8, var(--t-accent-8, #5299e0)));--comp-color-9:var(--tct-chart-donut-color-9, var(--t-chart-donut-color-9, var(--t-accent-9, #5252e0)));--comp-color-10:var(--tct-chart-donut-color-10, var(--t-chart-donut-color-10, var(--t-accent-10, #9952e0)));--comp-color-11:var(--tct-chart-donut-color-11, var(--t-chart-donut-color-11, var(--t-accent-11, #e052e0)));--comp-color-12:var(--tct-chart-donut-color-12, var(--t-chart-donut-color-12, var(--t-accent-12, #e05299)))}.chart-container,.center-card{--comp-background-color:var(--tct-chart-donut-border-color, var(--t-chart-donut-border-color, var(--t-base, #ffffff)))}button{--comp-button-vertical-padding:var(--tct-chart-donut-button-vertical-padding, var(--t-chart-donut-button-vertical-padding, var(--app-scale-1x, 5px)));transition:box-shadow var(--tct-chart-donut-button-tween, var(--t-chart-donut-button-tween, var(--app-tween-1, 0.2s ease)));padding:var(--comp-button-vertical-padding) 0}button:active{box-shadow:var(--const-double-focus-ring), var(--tct-chart-donut-button-hover-box-shadow, var(--t-chart-donut-button-hover-box-shadow, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3))))}button:hover{box-shadow:var(--tct-chart-donut-button-hover-box-shadow, var(--t-chart-donut-button-hover-box-shadow, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3))))}button:focus{box-shadow:var(--const-double-focus-ring), var(--tct-chart-donut-button-hover-box-shadow, var(--t-chart-donut-button-hover-box-shadow, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3))))}.center-card-container{position:absolute;top:50%;transform:translateY(-50%);padding:var(--tct-chart-donut-button-container-padding, var(--t-chart-donut-button-container-padding, var(--app-scale-1x, 5px)))}.center-card{width:100%;text-align:center;color:var(--tct-chart-donut-text-color, var(--t-chart-donut-text-color, var(--t-text, #4d4d4d)));margin-inline:auto;display:block}.center-card:is(button){cursor:pointer;background:var(--comp-background-color);border:0;border-radius:var(--tct-chart-donut-button-border-radius, var(--t-chart-donut-button-border-radius, var(--app-border-radius-1, 3px)))}q2-icon{--tct-icon-size:var(--tct-chart-donut-icon-size, var(--t-chart-donut-icon-size, 26px));margin-bottom:var(--tct-chart-donut-icon-margin-bottom, var(--t-chart-donut-icon-margin-bottom, var(--app-scale-1x, 5px)))}.name{font-size:var(--tct-chart-donut-name-font-size, var(--t-chart-donut-name-font-size, 14px))}.value{font-size:var(--tct-chart-donut-value-font-size, var(--t-chart-donut-value-font-size, 21px))}";
|
|
39655
39727
|
|
|
39656
39728
|
use([install$6, install$3, install$1, install, install$2, installLabelLayout]);
|
|
39657
39729
|
const Q2ChartDonut = class {
|
|
@@ -39659,12 +39731,6 @@ const Q2ChartDonut = class {
|
|
|
39659
39731
|
index.registerInstance(this, hostRef);
|
|
39660
39732
|
this.change = index.createEvent(this, "change", 7);
|
|
39661
39733
|
this.click = index.createEvent(this, "click", 7);
|
|
39662
|
-
this.innerRadius = '70%';
|
|
39663
|
-
this.outerRadius = '85%';
|
|
39664
|
-
this.minSliceSize = '2.5%';
|
|
39665
|
-
this.selectedOffset = 10;
|
|
39666
|
-
this.hoverScaleSize = 5;
|
|
39667
|
-
this.data = [];
|
|
39668
39734
|
this.defaultRecord = { id: null, value: null, name: null };
|
|
39669
39735
|
/// Event Handlers ///
|
|
39670
39736
|
this.onClickElsewhere = (event) => {
|
|
@@ -39718,6 +39784,19 @@ const Q2ChartDonut = class {
|
|
|
39718
39784
|
this.clearSelection();
|
|
39719
39785
|
event.stopPropagation();
|
|
39720
39786
|
};
|
|
39787
|
+
this.chartName = undefined;
|
|
39788
|
+
this.summaryIcon = undefined;
|
|
39789
|
+
this.summaryName = undefined;
|
|
39790
|
+
this.innerRadius = '70%';
|
|
39791
|
+
this.outerRadius = '85%';
|
|
39792
|
+
this.minSliceSize = '2.5%';
|
|
39793
|
+
this.selectedOffset = 10;
|
|
39794
|
+
this.hoverScaleSize = 5;
|
|
39795
|
+
this.format = undefined;
|
|
39796
|
+
this.isClickable = undefined;
|
|
39797
|
+
this.data = [];
|
|
39798
|
+
this.selectedId = undefined;
|
|
39799
|
+
this.hoveredId = undefined;
|
|
39721
39800
|
}
|
|
39722
39801
|
/// LifeCycle Hooks ///
|
|
39723
39802
|
componentDidLoad() {
|