@papaemmelab/isabl-web 0.3.45-beta.0 → 0.3.45-beta.2
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/isabl-web.common.js +616 -555
- package/dist/isabl-web.umd.js +616 -555
- package/dist/isabl-web.umd.min.js +3 -3
- package/package.json +1 -1
package/dist/isabl-web.umd.js
CHANGED
|
@@ -14689,7 +14689,7 @@ ___CSS_LOADER_EXPORT___.push([module.id, ".matrix-legend[data-v-4c88fa7c]{paddin
|
|
|
14689
14689
|
|
|
14690
14690
|
/***/ }),
|
|
14691
14691
|
|
|
14692
|
-
/***/
|
|
14692
|
+
/***/ 8510:
|
|
14693
14693
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
14694
14694
|
|
|
14695
14695
|
"use strict";
|
|
@@ -14703,7 +14703,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
14703
14703
|
|
|
14704
14704
|
var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
|
|
14705
14705
|
// Module
|
|
14706
|
-
___CSS_LOADER_EXPORT___.push([module.id, ".project-matrix[data-v-
|
|
14706
|
+
___CSS_LOADER_EXPORT___.push([module.id, ".project-matrix[data-v-28c10d94]{height:100%;min-height:400px}.loading-container[data-v-28c10d94],.project-matrix[data-v-28c10d94]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.loading-container[data-v-28c10d94]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;min-height:300px}.filter-spacer[data-v-28c10d94]{height:16px;background:#fff}.matrix-scroll-container[data-v-28c10d94]{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:auto;max-height:calc(80vh - 180px)}.no-matches-message[data-v-28c10d94]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:24px;color:#666;font-size:13px}.matrix-table[data-v-28c10d94]{border-collapse:separate;border-spacing:0;table-layout:fixed}.header-row[data-v-28c10d94]{display:grid;grid-template-columns:200px repeat(var(--col-count),50px);position:sticky;top:0;z-index:10;background:#fff;min-width:-webkit-fit-content;min-width:-moz-fit-content;min-width:fit-content}.corner-cell[data-v-28c10d94]{position:sticky;left:0;z-index:11;border-right:2px solid #5b5dff;width:200px;-webkit-box-sizing:border-box;box-sizing:border-box}.corner-cell[data-v-28c10d94],.header-cell[data-v-28c10d94]{background:#fff;border-bottom:2px solid #5b5dff;height:130px}.header-cell[data-v-28c10d94]{position:relative;width:50px;overflow:visible;cursor:pointer}.header-cell:hover .header-text[data-v-28c10d94]{background:#fff6db;border-radius:2px}.header-cell.column-highlighted .header-text[data-v-28c10d94]{background:#fff0d9;border-radius:2px;font-weight:700;color:#000}.header-text[data-v-28c10d94]{position:absolute;bottom:8px;left:50%;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:bottom left;transform-origin:bottom left;white-space:nowrap;font-size:11px;font-weight:500;color:#333;z-index:1}td.row-header[data-v-28c10d94]{position:sticky;left:0;z-index:1;background:#fff;border-right:2px solid #5b5dff;padding:0 8px;width:200px;min-width:200px;max-width:200px;height:24px;border-bottom:1px solid #e0e0e0;cursor:pointer;vertical-align:middle;-webkit-box-sizing:border-box;box-sizing:border-box}.row-header.row-highlighted[data-v-28c10d94]{background:#ffe8c5!important}.row-header.row-highlighted .system-id[data-v-28c10d94]{font-weight:700;color:#000}.system-id[data-v-28c10d94]{font-size:11px;font-family:monospace;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-header[data-v-28c10d94]:hover{background:#fff0d9}.row-header:hover .system-id[data-v-28c10d94]{font-weight:600}td.matrix-cell[data-v-28c10d94]{width:50px;min-width:50px;max-width:50px;height:24px;border-right:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0;cursor:default;background:#fafafa;padding:0;vertical-align:middle;-webkit-box-sizing:border-box;box-sizing:border-box}.matrix-cell.has-analyses[data-v-28c10d94]{cursor:pointer;background:#fff}.matrix-cell.cell-selected[data-v-28c10d94],.matrix-cell.has-analyses[data-v-28c10d94]:hover{border-right-color:#5b5dff;border-bottom-color:#5b5dff;background:#f0f0ff}.matrix-cell.cell-highlighted[data-v-28c10d94]{background:#ffe8c5}.cell-stripes[data-v-28c10d94]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:1px;height:100%;width:100%;padding:2px 4px}.stripe[data-v-28c10d94]{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:3px;min-width:2px;max-width:5px;border-radius:1px}.cell-count-badge[data-v-28c10d94]{width:100%;color:#fff;font-weight:600;text-shadow:0 0 2px rgba(0,0,0,.3)}.cell-count-badge[data-v-28c10d94],.empty-cell[data-v-28c10d94]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%;font-size:10px}.empty-cell[data-v-28c10d94]{color:#ccc}.native-tooltip[data-v-28c10d94]{position:fixed;-webkit-transform:translateX(-50%) translateY(-100%);transform:translateX(-50%) translateY(-100%);z-index:9999;background:#fff;border-radius:4px;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.2);box-shadow:0 2px 8px rgba(0,0,0,.2);min-width:280px;max-width:350px;max-height:300px;overflow-y:auto}.native-tooltip[data-v-28c10d94] .tooltip-header{padding:8px 12px;background:#f5f5f5;font-weight:500;font-size:13px;border-bottom:1px solid #e0e0e0}.native-tooltip[data-v-28c10d94] .tooltip-list{padding:4px 0}.native-tooltip[data-v-28c10d94] .tooltip-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:6px 12px;cursor:pointer;font-size:12px}.native-tooltip[data-v-28c10d94] .tooltip-item:hover{background:#e3f2fd}.native-tooltip[data-v-28c10d94] .tooltip-item .status-dot{width:8px;height:8px;border-radius:50%;margin-right:8px;-ms-flex-negative:0;flex-shrink:0}.native-tooltip[data-v-28c10d94] .tooltip-item .analysis-pk{color:#1976d2;font-weight:500}.native-tooltip[data-v-28c10d94] .tooltip-item .sep{margin:0 6px;color:#999}.native-tooltip[data-v-28c10d94] .tooltip-item .version{color:#666}.native-tooltip[data-v-28c10d94] .tooltip-item .assembly{color:#999}.native-tooltip[data-v-28c10d94] .tooltip-item .status-chip{margin-left:auto;padding:2px 6px;border-radius:3px;color:#fff;font-size:10px;font-weight:500}.native-tooltip[data-v-28c10d94] .experiment-group-header{padding:6px 12px 4px;font-size:11px;font-weight:600;color:#1976d2;background:#f8f9fa;border-top:1px solid #e0e0e0;font-family:monospace}.native-tooltip[data-v-28c10d94] .experiment-group-header:first-child{border-top:none}", ""]);
|
|
14707
14707
|
// Exports
|
|
14708
14708
|
/* harmony default export */ __webpack_exports__["default"] = (___CSS_LOADER_EXPORT___);
|
|
14709
14709
|
|
|
@@ -97326,19 +97326,19 @@ var update = add("f6fdb1b6", content, true, {"sourceMap":false,"shadowMode":fals
|
|
|
97326
97326
|
|
|
97327
97327
|
/***/ }),
|
|
97328
97328
|
|
|
97329
|
-
/***/
|
|
97329
|
+
/***/ 82588:
|
|
97330
97330
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
97331
97331
|
|
|
97332
97332
|
// style-loader: Adds some css to the DOM by adding a <style> tag
|
|
97333
97333
|
|
|
97334
97334
|
// load the styles
|
|
97335
|
-
var content = __webpack_require__(
|
|
97335
|
+
var content = __webpack_require__(8510);
|
|
97336
97336
|
if(content.__esModule) content = content.default;
|
|
97337
97337
|
if(typeof content === 'string') content = [[module.id, content, '']];
|
|
97338
97338
|
if(content.locals) module.exports = content.locals;
|
|
97339
97339
|
// add the styles to the DOM
|
|
97340
97340
|
var add = (__webpack_require__(54402)/* ["default"] */ .Z)
|
|
97341
|
-
var update = add("
|
|
97341
|
+
var update = add("79f306ea", content, true, {"sourceMap":false,"shadowMode":false});
|
|
97342
97342
|
|
|
97343
97343
|
/***/ }),
|
|
97344
97344
|
|
|
@@ -329939,10 +329939,10 @@ var ProjectMatrixModalvue_type_template_id_6865373b_scoped_true_staticRenderFns
|
|
|
329939
329939
|
|
|
329940
329940
|
;// CONCATENATED MODULE: ./src/components/projects/ProjectMatrixModal.vue?vue&type=template&id=6865373b&scoped=true&
|
|
329941
329941
|
|
|
329942
|
-
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/projects/ProjectMatrix.vue?vue&type=template&id=
|
|
329942
|
+
;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/projects/ProjectMatrix.vue?vue&type=template&id=28c10d94&scoped=true&
|
|
329943
329943
|
var cov_geimehe8j = function () {
|
|
329944
329944
|
var path = "/Users/havasove/Desktop/repos/isabl_matrix/isabl_web/src/components/projects/ProjectMatrix.vue";
|
|
329945
|
-
var hash = "
|
|
329945
|
+
var hash = "a3c9c45073d167ae3a2510ad116feca13f8b05f9";
|
|
329946
329946
|
var global = new Function("return this")();
|
|
329947
329947
|
var gcv = "__coverage__";
|
|
329948
329948
|
var coverageData = {
|
|
@@ -329985,7 +329985,7 @@ var cov_geimehe8j = function () {
|
|
|
329985
329985
|
},
|
|
329986
329986
|
end: {
|
|
329987
329987
|
line: 5,
|
|
329988
|
-
column:
|
|
329988
|
+
column: 1131
|
|
329989
329989
|
}
|
|
329990
329990
|
},
|
|
329991
329991
|
"4": {
|
|
@@ -330306,7 +330306,7 @@ var cov_geimehe8j = function () {
|
|
|
330306
330306
|
},
|
|
330307
330307
|
end: {
|
|
330308
330308
|
line: 5,
|
|
330309
|
-
column:
|
|
330309
|
+
column: 1127
|
|
330310
330310
|
}
|
|
330311
330311
|
},
|
|
330312
330312
|
type: "cond-expr",
|
|
@@ -330326,7 +330326,7 @@ var cov_geimehe8j = function () {
|
|
|
330326
330326
|
},
|
|
330327
330327
|
end: {
|
|
330328
330328
|
line: 5,
|
|
330329
|
-
column:
|
|
330329
|
+
column: 1127
|
|
330330
330330
|
}
|
|
330331
330331
|
}],
|
|
330332
330332
|
line: 1
|
|
@@ -330339,7 +330339,7 @@ var cov_geimehe8j = function () {
|
|
|
330339
330339
|
},
|
|
330340
330340
|
end: {
|
|
330341
330341
|
line: 5,
|
|
330342
|
-
column:
|
|
330342
|
+
column: 1127
|
|
330343
330343
|
}
|
|
330344
330344
|
},
|
|
330345
330345
|
type: "cond-expr",
|
|
@@ -330359,7 +330359,7 @@ var cov_geimehe8j = function () {
|
|
|
330359
330359
|
},
|
|
330360
330360
|
end: {
|
|
330361
330361
|
line: 5,
|
|
330362
|
-
column:
|
|
330362
|
+
column: 1127
|
|
330363
330363
|
}
|
|
330364
330364
|
}],
|
|
330365
330365
|
line: 1
|
|
@@ -330372,7 +330372,7 @@ var cov_geimehe8j = function () {
|
|
|
330372
330372
|
},
|
|
330373
330373
|
end: {
|
|
330374
330374
|
line: 5,
|
|
330375
|
-
column:
|
|
330375
|
+
column: 1127
|
|
330376
330376
|
}
|
|
330377
330377
|
},
|
|
330378
330378
|
type: "cond-expr",
|
|
@@ -330392,7 +330392,7 @@ var cov_geimehe8j = function () {
|
|
|
330392
330392
|
},
|
|
330393
330393
|
end: {
|
|
330394
330394
|
line: 5,
|
|
330395
|
-
column:
|
|
330395
|
+
column: 1127
|
|
330396
330396
|
}
|
|
330397
330397
|
}],
|
|
330398
330398
|
line: 1
|
|
@@ -330745,7 +330745,7 @@ var cov_geimehe8j = function () {
|
|
|
330745
330745
|
"11": [0, 0]
|
|
330746
330746
|
},
|
|
330747
330747
|
_coverageSchema: "43e27e138ebf9cfc5966b082cf9a028302ed4184",
|
|
330748
|
-
hash: "
|
|
330748
|
+
hash: "a3c9c45073d167ae3a2510ad116feca13f8b05f9"
|
|
330749
330749
|
};
|
|
330750
330750
|
var coverage = global[gcv] || (global[gcv] = {});
|
|
330751
330751
|
if (coverage[path] && coverage[path].hash === hash) {
|
|
@@ -330754,7 +330754,7 @@ var cov_geimehe8j = function () {
|
|
|
330754
330754
|
return coverage[path] = coverageData;
|
|
330755
330755
|
}();
|
|
330756
330756
|
cov_geimehe8j.s[0]++;
|
|
330757
|
-
var
|
|
330757
|
+
var ProjectMatrixvue_type_template_id_28c10d94_scoped_true_render = function render() {
|
|
330758
330758
|
cov_geimehe8j.f[0]++;
|
|
330759
330759
|
var _vm = (cov_geimehe8j.s[1]++, this),
|
|
330760
330760
|
_c = (cov_geimehe8j.s[2]++, _vm._self._c);
|
|
@@ -330934,8 +330934,8 @@ var ProjectMatrixvue_type_template_id_68d9db25_scoped_true_render = function ren
|
|
|
330934
330934
|
}), _c('div', {
|
|
330935
330935
|
ref: "tooltip",
|
|
330936
330936
|
staticClass: "native-tooltip",
|
|
330937
|
-
|
|
330938
|
-
display:
|
|
330937
|
+
staticStyle: {
|
|
330938
|
+
"display": "none"
|
|
330939
330939
|
},
|
|
330940
330940
|
on: {
|
|
330941
330941
|
"mouseenter": _vm.handleTooltipEnter,
|
|
@@ -330946,9 +330946,9 @@ var ProjectMatrixvue_type_template_id_68d9db25_scoped_true_render = function ren
|
|
|
330946
330946
|
staticClass: "tooltip-content"
|
|
330947
330947
|
})])])))], 2);
|
|
330948
330948
|
};
|
|
330949
|
-
var
|
|
330949
|
+
var ProjectMatrixvue_type_template_id_28c10d94_scoped_true_staticRenderFns = (cov_geimehe8j.s[12]++, []);
|
|
330950
330950
|
|
|
330951
|
-
;// CONCATENATED MODULE: ./src/components/projects/ProjectMatrix.vue?vue&type=template&id=
|
|
330951
|
+
;// CONCATENATED MODULE: ./src/components/projects/ProjectMatrix.vue?vue&type=template&id=28c10d94&scoped=true&
|
|
330952
330952
|
|
|
330953
330953
|
;// CONCATENATED MODULE: ./src/utils/matrixHelpers.js
|
|
330954
330954
|
var cov_17wz1apxpu = function () {
|
|
@@ -341930,7 +341930,7 @@ var MatrixLegend_component = normalizeComponent(
|
|
|
341930
341930
|
function ProjectMatrixvue_type_script_lang_js_typeof(obj) { "@babel/helpers - typeof"; return ProjectMatrixvue_type_script_lang_js_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, ProjectMatrixvue_type_script_lang_js_typeof(obj); }
|
|
341931
341931
|
var ProjectMatrixvue_type_script_lang_js_cov_geimehe8j = function () {
|
|
341932
341932
|
var path = "/Users/havasove/Desktop/repos/isabl_matrix/isabl_web/src/components/projects/ProjectMatrix.vue";
|
|
341933
|
-
var hash = "
|
|
341933
|
+
var hash = "a0c0d0bf4b1dd7c7c1e69ed5b9fb98baf888abe6";
|
|
341934
341934
|
var global = new Function("return this")();
|
|
341935
341935
|
var gcv = "__coverage__";
|
|
341936
341936
|
var coverageData = {
|
|
@@ -342759,94 +342759,104 @@ var ProjectMatrixvue_type_script_lang_js_cov_geimehe8j = function () {
|
|
|
342759
342759
|
"82": {
|
|
342760
342760
|
start: {
|
|
342761
342761
|
line: 324,
|
|
342762
|
-
column:
|
|
342762
|
+
column: 6
|
|
342763
342763
|
},
|
|
342764
342764
|
end: {
|
|
342765
342765
|
line: 324,
|
|
342766
|
-
column:
|
|
342766
|
+
column: 58
|
|
342767
342767
|
}
|
|
342768
342768
|
},
|
|
342769
342769
|
"83": {
|
|
342770
342770
|
start: {
|
|
342771
342771
|
line: 325,
|
|
342772
|
-
column:
|
|
342772
|
+
column: 23
|
|
342773
342773
|
},
|
|
342774
342774
|
end: {
|
|
342775
342775
|
line: 325,
|
|
342776
|
-
column:
|
|
342776
|
+
column: 64
|
|
342777
342777
|
}
|
|
342778
342778
|
},
|
|
342779
342779
|
"84": {
|
|
342780
342780
|
start: {
|
|
342781
|
-
line:
|
|
342782
|
-
column:
|
|
342781
|
+
line: 326,
|
|
342782
|
+
column: 6
|
|
342783
342783
|
},
|
|
342784
342784
|
end: {
|
|
342785
|
-
line:
|
|
342786
|
-
column:
|
|
342785
|
+
line: 326,
|
|
342786
|
+
column: 47
|
|
342787
342787
|
}
|
|
342788
342788
|
},
|
|
342789
342789
|
"85": {
|
|
342790
342790
|
start: {
|
|
342791
|
-
line:
|
|
342791
|
+
line: 327,
|
|
342792
342792
|
column: 6
|
|
342793
342793
|
},
|
|
342794
342794
|
end: {
|
|
342795
|
-
line:
|
|
342796
|
-
column:
|
|
342795
|
+
line: 327,
|
|
342796
|
+
column: 39
|
|
342797
342797
|
}
|
|
342798
342798
|
},
|
|
342799
342799
|
"86": {
|
|
342800
342800
|
start: {
|
|
342801
|
-
line:
|
|
342802
|
-
column:
|
|
342801
|
+
line: 327,
|
|
342802
|
+
column: 33
|
|
342803
342803
|
},
|
|
342804
342804
|
end: {
|
|
342805
|
-
line:
|
|
342806
|
-
column:
|
|
342805
|
+
line: 327,
|
|
342806
|
+
column: 39
|
|
342807
342807
|
}
|
|
342808
342808
|
},
|
|
342809
342809
|
"87": {
|
|
342810
342810
|
start: {
|
|
342811
|
-
line:
|
|
342812
|
-
column:
|
|
342811
|
+
line: 330,
|
|
342812
|
+
column: 6
|
|
342813
342813
|
},
|
|
342814
342814
|
end: {
|
|
342815
|
-
line:
|
|
342816
|
-
column:
|
|
342815
|
+
line: 330,
|
|
342816
|
+
column: 38
|
|
342817
342817
|
}
|
|
342818
342818
|
},
|
|
342819
342819
|
"88": {
|
|
342820
342820
|
start: {
|
|
342821
342821
|
line: 332,
|
|
342822
|
-
column:
|
|
342822
|
+
column: 19
|
|
342823
342823
|
},
|
|
342824
342824
|
end: {
|
|
342825
342825
|
line: 332,
|
|
342826
|
-
column:
|
|
342826
|
+
column: 62
|
|
342827
342827
|
}
|
|
342828
342828
|
},
|
|
342829
342829
|
"89": {
|
|
342830
342830
|
start: {
|
|
342831
|
-
line:
|
|
342832
|
-
column:
|
|
342831
|
+
line: 333,
|
|
342832
|
+
column: 22
|
|
342833
342833
|
},
|
|
342834
342834
|
end: {
|
|
342835
|
-
line:
|
|
342836
|
-
column:
|
|
342835
|
+
line: 333,
|
|
342836
|
+
column: 40
|
|
342837
342837
|
}
|
|
342838
342838
|
},
|
|
342839
342839
|
"90": {
|
|
342840
342840
|
start: {
|
|
342841
342841
|
line: 334,
|
|
342842
|
-
column:
|
|
342842
|
+
column: 22
|
|
342843
342843
|
},
|
|
342844
342844
|
end: {
|
|
342845
342845
|
line: 334,
|
|
342846
|
-
column:
|
|
342846
|
+
column: 47
|
|
342847
342847
|
}
|
|
342848
342848
|
},
|
|
342849
342849
|
"91": {
|
|
342850
|
+
start: {
|
|
342851
|
+
line: 336,
|
|
342852
|
+
column: 6
|
|
342853
|
+
},
|
|
342854
|
+
end: {
|
|
342855
|
+
line: 336,
|
|
342856
|
+
column: 71
|
|
342857
|
+
}
|
|
342858
|
+
},
|
|
342859
|
+
"92": {
|
|
342850
342860
|
start: {
|
|
342851
342861
|
line: 337,
|
|
342852
342862
|
column: 6
|
|
@@ -342856,693 +342866,723 @@ var ProjectMatrixvue_type_script_lang_js_cov_geimehe8j = function () {
|
|
|
342856
342866
|
column: 38
|
|
342857
342867
|
}
|
|
342858
342868
|
},
|
|
342859
|
-
"
|
|
342869
|
+
"93": {
|
|
342870
|
+
start: {
|
|
342871
|
+
line: 337,
|
|
342872
|
+
column: 32
|
|
342873
|
+
},
|
|
342874
|
+
end: {
|
|
342875
|
+
line: 337,
|
|
342876
|
+
column: 38
|
|
342877
|
+
}
|
|
342878
|
+
},
|
|
342879
|
+
"94": {
|
|
342860
342880
|
start: {
|
|
342861
342881
|
line: 340,
|
|
342862
|
-
column:
|
|
342882
|
+
column: 6
|
|
342863
342883
|
},
|
|
342864
342884
|
end: {
|
|
342865
342885
|
line: 340,
|
|
342886
|
+
column: 38
|
|
342887
|
+
}
|
|
342888
|
+
},
|
|
342889
|
+
"95": {
|
|
342890
|
+
start: {
|
|
342891
|
+
line: 343,
|
|
342892
|
+
column: 22
|
|
342893
|
+
},
|
|
342894
|
+
end: {
|
|
342895
|
+
line: 343,
|
|
342866
342896
|
column: 65
|
|
342867
342897
|
}
|
|
342868
342898
|
},
|
|
342869
|
-
"
|
|
342899
|
+
"96": {
|
|
342870
342900
|
start: {
|
|
342871
|
-
line:
|
|
342901
|
+
line: 344,
|
|
342872
342902
|
column: 17
|
|
342873
342903
|
},
|
|
342874
342904
|
end: {
|
|
342875
|
-
line:
|
|
342905
|
+
line: 344,
|
|
342876
342906
|
column: 129
|
|
342877
342907
|
}
|
|
342878
342908
|
},
|
|
342879
|
-
"
|
|
342909
|
+
"97": {
|
|
342880
342910
|
start: {
|
|
342881
|
-
line:
|
|
342911
|
+
line: 345,
|
|
342882
342912
|
column: 6
|
|
342883
342913
|
},
|
|
342884
342914
|
end: {
|
|
342885
|
-
line:
|
|
342915
|
+
line: 345,
|
|
342886
342916
|
column: 42
|
|
342887
342917
|
}
|
|
342888
342918
|
},
|
|
342889
|
-
"
|
|
342919
|
+
"98": {
|
|
342890
342920
|
start: {
|
|
342891
|
-
line:
|
|
342921
|
+
line: 347,
|
|
342892
342922
|
column: 6
|
|
342893
342923
|
},
|
|
342894
342924
|
end: {
|
|
342895
|
-
line:
|
|
342925
|
+
line: 386,
|
|
342896
342926
|
column: 7
|
|
342897
342927
|
}
|
|
342898
342928
|
},
|
|
342899
|
-
"
|
|
342929
|
+
"99": {
|
|
342900
342930
|
start: {
|
|
342901
|
-
line:
|
|
342931
|
+
line: 349,
|
|
342902
342932
|
column: 29
|
|
342903
342933
|
},
|
|
342904
342934
|
end: {
|
|
342905
|
-
line:
|
|
342935
|
+
line: 349,
|
|
342906
342936
|
column: 31
|
|
342907
342937
|
}
|
|
342908
342938
|
},
|
|
342909
|
-
"
|
|
342939
|
+
"100": {
|
|
342910
342940
|
start: {
|
|
342911
|
-
line:
|
|
342941
|
+
line: 350,
|
|
342912
342942
|
column: 8
|
|
342913
342943
|
},
|
|
342914
342944
|
end: {
|
|
342915
|
-
line:
|
|
342945
|
+
line: 356,
|
|
342916
342946
|
column: 10
|
|
342917
342947
|
}
|
|
342918
342948
|
},
|
|
342919
|
-
"
|
|
342949
|
+
"101": {
|
|
342920
342950
|
start: {
|
|
342921
|
-
line:
|
|
342951
|
+
line: 351,
|
|
342922
342952
|
column: 24
|
|
342923
342953
|
},
|
|
342924
342954
|
end: {
|
|
342925
|
-
line:
|
|
342955
|
+
line: 351,
|
|
342926
342956
|
column: 57
|
|
342927
342957
|
}
|
|
342928
342958
|
},
|
|
342929
|
-
"
|
|
342959
|
+
"102": {
|
|
342930
342960
|
start: {
|
|
342931
|
-
line:
|
|
342961
|
+
line: 352,
|
|
342932
342962
|
column: 10
|
|
342933
342963
|
},
|
|
342934
342964
|
end: {
|
|
342935
|
-
line:
|
|
342965
|
+
line: 354,
|
|
342936
342966
|
column: 11
|
|
342937
342967
|
}
|
|
342938
342968
|
},
|
|
342939
|
-
"
|
|
342969
|
+
"103": {
|
|
342940
342970
|
start: {
|
|
342941
|
-
line:
|
|
342971
|
+
line: 353,
|
|
342942
342972
|
column: 12
|
|
342943
342973
|
},
|
|
342944
342974
|
end: {
|
|
342945
|
-
line:
|
|
342975
|
+
line: 353,
|
|
342946
342976
|
column: 36
|
|
342947
342977
|
}
|
|
342948
342978
|
},
|
|
342949
|
-
"
|
|
342979
|
+
"104": {
|
|
342950
342980
|
start: {
|
|
342951
|
-
line:
|
|
342981
|
+
line: 355,
|
|
342952
342982
|
column: 10
|
|
342953
342983
|
},
|
|
342954
342984
|
end: {
|
|
342955
|
-
line:
|
|
342985
|
+
line: 355,
|
|
342956
342986
|
column: 37
|
|
342957
342987
|
}
|
|
342958
342988
|
},
|
|
342959
|
-
"
|
|
342989
|
+
"105": {
|
|
342960
342990
|
start: {
|
|
342961
|
-
line:
|
|
342991
|
+
line: 359,
|
|
342962
342992
|
column: 8
|
|
342963
342993
|
},
|
|
342964
342994
|
end: {
|
|
342965
|
-
line:
|
|
342995
|
+
line: 372,
|
|
342966
342996
|
column: 10
|
|
342967
342997
|
}
|
|
342968
342998
|
},
|
|
342969
|
-
"
|
|
342999
|
+
"106": {
|
|
342970
343000
|
start: {
|
|
342971
|
-
line:
|
|
343001
|
+
line: 360,
|
|
342972
343002
|
column: 10
|
|
342973
343003
|
},
|
|
342974
343004
|
end: {
|
|
342975
|
-
line:
|
|
343005
|
+
line: 360,
|
|
342976
343006
|
column: 71
|
|
342977
343007
|
}
|
|
342978
343008
|
},
|
|
342979
|
-
"
|
|
343009
|
+
"107": {
|
|
342980
343010
|
start: {
|
|
342981
|
-
line:
|
|
343011
|
+
line: 361,
|
|
342982
343012
|
column: 10
|
|
342983
343013
|
},
|
|
342984
343014
|
end: {
|
|
342985
|
-
line:
|
|
343015
|
+
line: 371,
|
|
342986
343016
|
column: 12
|
|
342987
343017
|
}
|
|
342988
343018
|
},
|
|
342989
|
-
"
|
|
343019
|
+
"108": {
|
|
342990
343020
|
start: {
|
|
342991
|
-
line:
|
|
343021
|
+
line: 362,
|
|
342992
343022
|
column: 26
|
|
342993
343023
|
},
|
|
342994
343024
|
end: {
|
|
342995
|
-
line:
|
|
343025
|
+
line: 362,
|
|
342996
343026
|
column: 55
|
|
342997
343027
|
}
|
|
342998
343028
|
},
|
|
342999
|
-
"
|
|
343029
|
+
"109": {
|
|
343000
343030
|
start: {
|
|
343001
|
-
line:
|
|
343031
|
+
line: 363,
|
|
343002
343032
|
column: 12
|
|
343003
343033
|
},
|
|
343004
343034
|
end: {
|
|
343005
|
-
line:
|
|
343035
|
+
line: 363,
|
|
343006
343036
|
column: 66
|
|
343007
343037
|
}
|
|
343008
343038
|
},
|
|
343009
|
-
"
|
|
343039
|
+
"110": {
|
|
343010
343040
|
start: {
|
|
343011
|
-
line:
|
|
343041
|
+
line: 364,
|
|
343012
343042
|
column: 12
|
|
343013
343043
|
},
|
|
343014
343044
|
end: {
|
|
343015
|
-
line:
|
|
343045
|
+
line: 364,
|
|
343016
343046
|
column: 82
|
|
343017
343047
|
}
|
|
343018
343048
|
},
|
|
343019
|
-
"
|
|
343049
|
+
"111": {
|
|
343020
343050
|
start: {
|
|
343021
|
-
line:
|
|
343051
|
+
line: 365,
|
|
343022
343052
|
column: 12
|
|
343023
343053
|
},
|
|
343024
343054
|
end: {
|
|
343025
|
-
line:
|
|
343055
|
+
line: 365,
|
|
343026
343056
|
column: 62
|
|
343027
343057
|
}
|
|
343028
343058
|
},
|
|
343029
|
-
"
|
|
343059
|
+
"112": {
|
|
343030
343060
|
start: {
|
|
343031
|
-
line:
|
|
343061
|
+
line: 366,
|
|
343032
343062
|
column: 12
|
|
343033
343063
|
},
|
|
343034
343064
|
end: {
|
|
343035
|
-
line:
|
|
343065
|
+
line: 366,
|
|
343036
343066
|
column: 48
|
|
343037
343067
|
}
|
|
343038
343068
|
},
|
|
343039
|
-
"
|
|
343069
|
+
"113": {
|
|
343040
343070
|
start: {
|
|
343041
|
-
line:
|
|
343071
|
+
line: 367,
|
|
343042
343072
|
column: 12
|
|
343043
343073
|
},
|
|
343044
343074
|
end: {
|
|
343045
|
-
line:
|
|
343075
|
+
line: 367,
|
|
343046
343076
|
column: 73
|
|
343047
343077
|
}
|
|
343048
343078
|
},
|
|
343049
|
-
"
|
|
343079
|
+
"114": {
|
|
343050
343080
|
start: {
|
|
343051
|
-
line:
|
|
343081
|
+
line: 368,
|
|
343052
343082
|
column: 12
|
|
343053
343083
|
},
|
|
343054
343084
|
end: {
|
|
343055
|
-
line:
|
|
343085
|
+
line: 368,
|
|
343056
343086
|
column: 84
|
|
343057
343087
|
}
|
|
343058
343088
|
},
|
|
343059
|
-
"
|
|
343089
|
+
"115": {
|
|
343060
343090
|
start: {
|
|
343061
|
-
line:
|
|
343091
|
+
line: 368,
|
|
343062
343092
|
column: 28
|
|
343063
343093
|
},
|
|
343064
343094
|
end: {
|
|
343065
|
-
line:
|
|
343095
|
+
line: 368,
|
|
343066
343096
|
column: 84
|
|
343067
343097
|
}
|
|
343068
343098
|
},
|
|
343069
|
-
"
|
|
343099
|
+
"116": {
|
|
343070
343100
|
start: {
|
|
343071
|
-
line:
|
|
343101
|
+
line: 369,
|
|
343072
343102
|
column: 12
|
|
343073
343103
|
},
|
|
343074
343104
|
end: {
|
|
343075
|
-
line:
|
|
343105
|
+
line: 369,
|
|
343076
343106
|
column: 94
|
|
343077
343107
|
}
|
|
343078
343108
|
},
|
|
343079
|
-
"
|
|
343109
|
+
"117": {
|
|
343080
343110
|
start: {
|
|
343081
|
-
line:
|
|
343111
|
+
line: 370,
|
|
343082
343112
|
column: 12
|
|
343083
343113
|
},
|
|
343084
343114
|
end: {
|
|
343085
|
-
line:
|
|
343115
|
+
line: 370,
|
|
343086
343116
|
column: 28
|
|
343087
343117
|
}
|
|
343088
343118
|
},
|
|
343089
|
-
"
|
|
343119
|
+
"118": {
|
|
343090
343120
|
start: {
|
|
343091
|
-
line:
|
|
343121
|
+
line: 375,
|
|
343092
343122
|
column: 8
|
|
343093
343123
|
},
|
|
343094
343124
|
end: {
|
|
343095
|
-
line:
|
|
343125
|
+
line: 385,
|
|
343096
343126
|
column: 10
|
|
343097
343127
|
}
|
|
343098
343128
|
},
|
|
343099
|
-
"
|
|
343129
|
+
"119": {
|
|
343100
343130
|
start: {
|
|
343101
|
-
line:
|
|
343131
|
+
line: 376,
|
|
343102
343132
|
column: 24
|
|
343103
343133
|
},
|
|
343104
343134
|
end: {
|
|
343105
|
-
line:
|
|
343135
|
+
line: 376,
|
|
343106
343136
|
column: 53
|
|
343107
343137
|
}
|
|
343108
343138
|
},
|
|
343109
|
-
"
|
|
343139
|
+
"120": {
|
|
343110
343140
|
start: {
|
|
343111
|
-
line:
|
|
343141
|
+
line: 377,
|
|
343112
343142
|
column: 10
|
|
343113
343143
|
},
|
|
343114
343144
|
end: {
|
|
343115
|
-
line:
|
|
343145
|
+
line: 377,
|
|
343116
343146
|
column: 64
|
|
343117
343147
|
}
|
|
343118
343148
|
},
|
|
343119
|
-
"
|
|
343149
|
+
"121": {
|
|
343120
343150
|
start: {
|
|
343121
|
-
line:
|
|
343151
|
+
line: 378,
|
|
343122
343152
|
column: 10
|
|
343123
343153
|
},
|
|
343124
343154
|
end: {
|
|
343125
|
-
line:
|
|
343155
|
+
line: 378,
|
|
343126
343156
|
column: 80
|
|
343127
343157
|
}
|
|
343128
343158
|
},
|
|
343129
|
-
"
|
|
343159
|
+
"122": {
|
|
343130
343160
|
start: {
|
|
343131
|
-
line:
|
|
343161
|
+
line: 379,
|
|
343132
343162
|
column: 10
|
|
343133
343163
|
},
|
|
343134
343164
|
end: {
|
|
343135
|
-
line:
|
|
343165
|
+
line: 379,
|
|
343136
343166
|
column: 60
|
|
343137
343167
|
}
|
|
343138
343168
|
},
|
|
343139
|
-
"
|
|
343169
|
+
"123": {
|
|
343140
343170
|
start: {
|
|
343141
|
-
line:
|
|
343171
|
+
line: 380,
|
|
343142
343172
|
column: 10
|
|
343143
343173
|
},
|
|
343144
343174
|
end: {
|
|
343145
|
-
line:
|
|
343175
|
+
line: 380,
|
|
343146
343176
|
column: 46
|
|
343147
343177
|
}
|
|
343148
343178
|
},
|
|
343149
|
-
"
|
|
343179
|
+
"124": {
|
|
343150
343180
|
start: {
|
|
343151
|
-
line:
|
|
343181
|
+
line: 381,
|
|
343152
343182
|
column: 10
|
|
343153
343183
|
},
|
|
343154
343184
|
end: {
|
|
343155
|
-
line:
|
|
343185
|
+
line: 381,
|
|
343156
343186
|
column: 71
|
|
343157
343187
|
}
|
|
343158
343188
|
},
|
|
343159
|
-
"
|
|
343189
|
+
"125": {
|
|
343160
343190
|
start: {
|
|
343161
|
-
line:
|
|
343191
|
+
line: 382,
|
|
343162
343192
|
column: 10
|
|
343163
343193
|
},
|
|
343164
343194
|
end: {
|
|
343165
|
-
line:
|
|
343195
|
+
line: 382,
|
|
343166
343196
|
column: 82
|
|
343167
343197
|
}
|
|
343168
343198
|
},
|
|
343169
|
-
"
|
|
343199
|
+
"126": {
|
|
343170
343200
|
start: {
|
|
343171
|
-
line:
|
|
343201
|
+
line: 382,
|
|
343172
343202
|
column: 26
|
|
343173
343203
|
},
|
|
343174
343204
|
end: {
|
|
343175
|
-
line:
|
|
343205
|
+
line: 382,
|
|
343176
343206
|
column: 82
|
|
343177
343207
|
}
|
|
343178
343208
|
},
|
|
343179
|
-
"
|
|
343209
|
+
"127": {
|
|
343180
343210
|
start: {
|
|
343181
|
-
line:
|
|
343211
|
+
line: 383,
|
|
343182
343212
|
column: 10
|
|
343183
343213
|
},
|
|
343184
343214
|
end: {
|
|
343185
|
-
line:
|
|
343215
|
+
line: 383,
|
|
343186
343216
|
column: 92
|
|
343187
343217
|
}
|
|
343188
343218
|
},
|
|
343189
|
-
"
|
|
343219
|
+
"128": {
|
|
343190
343220
|
start: {
|
|
343191
|
-
line:
|
|
343221
|
+
line: 384,
|
|
343192
343222
|
column: 10
|
|
343193
343223
|
},
|
|
343194
343224
|
end: {
|
|
343195
|
-
line:
|
|
343225
|
+
line: 384,
|
|
343196
343226
|
column: 26
|
|
343197
343227
|
}
|
|
343198
343228
|
},
|
|
343199
|
-
"
|
|
343229
|
+
"129": {
|
|
343200
343230
|
start: {
|
|
343201
|
-
line:
|
|
343231
|
+
line: 388,
|
|
343202
343232
|
column: 6
|
|
343203
343233
|
},
|
|
343204
343234
|
end: {
|
|
343205
|
-
line:
|
|
343235
|
+
line: 388,
|
|
343206
343236
|
column: 22
|
|
343207
343237
|
}
|
|
343208
343238
|
},
|
|
343209
|
-
"
|
|
343239
|
+
"130": {
|
|
343210
343240
|
start: {
|
|
343211
|
-
line:
|
|
343241
|
+
line: 389,
|
|
343212
343242
|
column: 6
|
|
343213
343243
|
},
|
|
343214
343244
|
end: {
|
|
343215
|
-
line:
|
|
343245
|
+
line: 389,
|
|
343216
343246
|
column: 30
|
|
343217
343247
|
}
|
|
343218
343248
|
},
|
|
343219
|
-
"
|
|
343249
|
+
"131": {
|
|
343220
343250
|
start: {
|
|
343221
|
-
line:
|
|
343251
|
+
line: 392,
|
|
343222
343252
|
column: 6
|
|
343223
343253
|
},
|
|
343224
343254
|
end: {
|
|
343225
|
-
line:
|
|
343255
|
+
line: 398,
|
|
343226
343256
|
column: 8
|
|
343227
343257
|
}
|
|
343228
343258
|
},
|
|
343229
|
-
"
|
|
343259
|
+
"132": {
|
|
343230
343260
|
start: {
|
|
343231
|
-
line:
|
|
343261
|
+
line: 393,
|
|
343232
343262
|
column: 8
|
|
343233
343263
|
},
|
|
343234
343264
|
end: {
|
|
343235
|
-
line:
|
|
343265
|
+
line: 397,
|
|
343236
343266
|
column: 9
|
|
343237
343267
|
}
|
|
343238
343268
|
},
|
|
343239
|
-
"
|
|
343269
|
+
"133": {
|
|
343240
343270
|
start: {
|
|
343241
|
-
line:
|
|
343271
|
+
line: 394,
|
|
343242
343272
|
column: 21
|
|
343243
343273
|
},
|
|
343244
343274
|
end: {
|
|
343245
|
-
line:
|
|
343275
|
+
line: 394,
|
|
343246
343276
|
column: 46
|
|
343247
343277
|
}
|
|
343248
343278
|
},
|
|
343249
|
-
"
|
|
343279
|
+
"134": {
|
|
343250
343280
|
start: {
|
|
343251
|
-
line:
|
|
343281
|
+
line: 395,
|
|
343252
343282
|
column: 10
|
|
343253
343283
|
},
|
|
343254
343284
|
end: {
|
|
343255
|
-
line:
|
|
343285
|
+
line: 395,
|
|
343256
343286
|
column: 34
|
|
343257
343287
|
}
|
|
343258
343288
|
},
|
|
343259
|
-
"
|
|
343289
|
+
"135": {
|
|
343260
343290
|
start: {
|
|
343261
|
-
line:
|
|
343291
|
+
line: 396,
|
|
343262
343292
|
column: 10
|
|
343263
343293
|
},
|
|
343264
343294
|
end: {
|
|
343265
|
-
line:
|
|
343295
|
+
line: 396,
|
|
343266
343296
|
column: 37
|
|
343267
343297
|
}
|
|
343268
343298
|
},
|
|
343269
|
-
"
|
|
343299
|
+
"136": {
|
|
343270
343300
|
start: {
|
|
343271
|
-
line:
|
|
343301
|
+
line: 401,
|
|
343272
343302
|
column: 6
|
|
343273
343303
|
},
|
|
343274
343304
|
end: {
|
|
343275
|
-
line:
|
|
343305
|
+
line: 401,
|
|
343276
343306
|
column: 37
|
|
343277
343307
|
}
|
|
343278
343308
|
},
|
|
343279
|
-
"
|
|
343309
|
+
"137": {
|
|
343280
343310
|
start: {
|
|
343281
|
-
line:
|
|
343311
|
+
line: 402,
|
|
343282
343312
|
column: 6
|
|
343283
343313
|
},
|
|
343284
343314
|
end: {
|
|
343285
|
-
line:
|
|
343315
|
+
line: 402,
|
|
343286
343316
|
column: 60
|
|
343287
343317
|
}
|
|
343288
343318
|
},
|
|
343289
|
-
"
|
|
343319
|
+
"138": {
|
|
343290
343320
|
start: {
|
|
343291
|
-
line:
|
|
343321
|
+
line: 403,
|
|
343292
343322
|
column: 6
|
|
343293
343323
|
},
|
|
343294
343324
|
end: {
|
|
343295
|
-
line:
|
|
343325
|
+
line: 403,
|
|
343296
343326
|
column: 45
|
|
343297
343327
|
}
|
|
343298
343328
|
},
|
|
343299
|
-
"
|
|
343329
|
+
"139": {
|
|
343300
343330
|
start: {
|
|
343301
343331
|
line: 404,
|
|
343332
|
+
column: 6
|
|
343333
|
+
},
|
|
343334
|
+
end: {
|
|
343335
|
+
line: 410,
|
|
343336
|
+
column: 8
|
|
343337
|
+
}
|
|
343338
|
+
},
|
|
343339
|
+
"140": {
|
|
343340
|
+
start: {
|
|
343341
|
+
line: 414,
|
|
343302
343342
|
column: 22
|
|
343303
343343
|
},
|
|
343304
343344
|
end: {
|
|
343305
|
-
line:
|
|
343345
|
+
line: 414,
|
|
343306
343346
|
column: 40
|
|
343307
343347
|
}
|
|
343308
343348
|
},
|
|
343309
|
-
"
|
|
343349
|
+
"141": {
|
|
343310
343350
|
start: {
|
|
343311
|
-
line:
|
|
343351
|
+
line: 415,
|
|
343312
343352
|
column: 6
|
|
343313
343353
|
},
|
|
343314
343354
|
end: {
|
|
343315
|
-
line:
|
|
343355
|
+
line: 417,
|
|
343316
343356
|
column: 7
|
|
343317
343357
|
}
|
|
343318
343358
|
},
|
|
343319
|
-
"
|
|
343359
|
+
"142": {
|
|
343320
343360
|
start: {
|
|
343321
|
-
line:
|
|
343361
|
+
line: 416,
|
|
343322
343362
|
column: 8
|
|
343323
343363
|
},
|
|
343324
343364
|
end: {
|
|
343325
|
-
line:
|
|
343365
|
+
line: 416,
|
|
343326
343366
|
column: 38
|
|
343327
343367
|
}
|
|
343328
343368
|
},
|
|
343329
|
-
"
|
|
343369
|
+
"143": {
|
|
343330
343370
|
start: {
|
|
343331
|
-
line:
|
|
343371
|
+
line: 424,
|
|
343332
343372
|
column: 27
|
|
343333
343373
|
},
|
|
343334
343374
|
end: {
|
|
343335
|
-
line:
|
|
343375
|
+
line: 424,
|
|
343336
343376
|
column: 29
|
|
343337
343377
|
}
|
|
343338
343378
|
},
|
|
343339
|
-
"
|
|
343379
|
+
"144": {
|
|
343340
343380
|
start: {
|
|
343341
|
-
line:
|
|
343381
|
+
line: 425,
|
|
343342
343382
|
column: 6
|
|
343343
343383
|
},
|
|
343344
343384
|
end: {
|
|
343345
|
-
line:
|
|
343385
|
+
line: 427,
|
|
343346
343386
|
column: 8
|
|
343347
343387
|
}
|
|
343348
343388
|
},
|
|
343349
|
-
"
|
|
343389
|
+
"145": {
|
|
343350
343390
|
start: {
|
|
343351
|
-
line:
|
|
343391
|
+
line: 426,
|
|
343352
343392
|
column: 8
|
|
343353
343393
|
},
|
|
343354
343394
|
end: {
|
|
343355
|
-
line:
|
|
343395
|
+
line: 426,
|
|
343356
343396
|
column: 66
|
|
343357
343397
|
}
|
|
343358
343398
|
},
|
|
343359
|
-
"
|
|
343399
|
+
"146": {
|
|
343360
343400
|
start: {
|
|
343361
|
-
line:
|
|
343401
|
+
line: 430,
|
|
343362
343402
|
column: 21
|
|
343363
343403
|
},
|
|
343364
343404
|
end: {
|
|
343365
|
-
line:
|
|
343405
|
+
line: 430,
|
|
343366
343406
|
column: 22
|
|
343367
343407
|
}
|
|
343368
343408
|
},
|
|
343369
|
-
"
|
|
343409
|
+
"147": {
|
|
343370
343410
|
start: {
|
|
343371
|
-
line:
|
|
343411
|
+
line: 431,
|
|
343372
343412
|
column: 30
|
|
343373
343413
|
},
|
|
343374
343414
|
end: {
|
|
343375
|
-
line:
|
|
343415
|
+
line: 431,
|
|
343376
343416
|
column: 41
|
|
343377
343417
|
}
|
|
343378
343418
|
},
|
|
343379
|
-
"
|
|
343419
|
+
"148": {
|
|
343380
343420
|
start: {
|
|
343381
|
-
line:
|
|
343421
|
+
line: 432,
|
|
343382
343422
|
column: 6
|
|
343383
343423
|
},
|
|
343384
343424
|
end: {
|
|
343385
|
-
line:
|
|
343425
|
+
line: 437,
|
|
343386
343426
|
column: 8
|
|
343387
343427
|
}
|
|
343388
343428
|
},
|
|
343389
|
-
"
|
|
343429
|
+
"149": {
|
|
343390
343430
|
start: {
|
|
343391
|
-
line:
|
|
343431
|
+
line: 433,
|
|
343392
343432
|
column: 8
|
|
343393
343433
|
},
|
|
343394
343434
|
end: {
|
|
343395
|
-
line:
|
|
343435
|
+
line: 436,
|
|
343396
343436
|
column: 9
|
|
343397
343437
|
}
|
|
343398
343438
|
},
|
|
343399
|
-
"
|
|
343439
|
+
"150": {
|
|
343400
343440
|
start: {
|
|
343401
|
-
line:
|
|
343441
|
+
line: 434,
|
|
343402
343442
|
column: 10
|
|
343403
343443
|
},
|
|
343404
343444
|
end: {
|
|
343405
|
-
line:
|
|
343445
|
+
line: 434,
|
|
343406
343446
|
column: 26
|
|
343407
343447
|
}
|
|
343408
343448
|
},
|
|
343409
|
-
"
|
|
343449
|
+
"151": {
|
|
343410
343450
|
start: {
|
|
343411
|
-
line:
|
|
343451
|
+
line: 435,
|
|
343412
343452
|
column: 10
|
|
343413
343453
|
},
|
|
343414
343454
|
end: {
|
|
343415
|
-
line:
|
|
343455
|
+
line: 435,
|
|
343416
343456
|
column: 36
|
|
343417
343457
|
}
|
|
343418
343458
|
},
|
|
343419
|
-
"
|
|
343459
|
+
"152": {
|
|
343420
343460
|
start: {
|
|
343421
|
-
line:
|
|
343461
|
+
line: 439,
|
|
343422
343462
|
column: 6
|
|
343423
343463
|
},
|
|
343424
343464
|
end: {
|
|
343425
|
-
line:
|
|
343465
|
+
line: 439,
|
|
343426
343466
|
column: 46
|
|
343427
343467
|
}
|
|
343428
343468
|
},
|
|
343429
|
-
"
|
|
343469
|
+
"153": {
|
|
343430
343470
|
start: {
|
|
343431
|
-
line:
|
|
343471
|
+
line: 443,
|
|
343432
343472
|
column: 6
|
|
343433
343473
|
},
|
|
343434
343474
|
end: {
|
|
343435
|
-
line:
|
|
343475
|
+
line: 443,
|
|
343436
343476
|
column: 31
|
|
343437
343477
|
}
|
|
343438
343478
|
},
|
|
343439
|
-
"
|
|
343479
|
+
"154": {
|
|
343440
343480
|
start: {
|
|
343441
|
-
line:
|
|
343481
|
+
line: 447,
|
|
343442
343482
|
column: 6
|
|
343443
343483
|
},
|
|
343444
343484
|
end: {
|
|
343445
|
-
line:
|
|
343485
|
+
line: 447,
|
|
343446
343486
|
column: 32
|
|
343447
343487
|
}
|
|
343448
343488
|
},
|
|
343449
|
-
"
|
|
343489
|
+
"155": {
|
|
343450
343490
|
start: {
|
|
343451
|
-
line:
|
|
343491
|
+
line: 448,
|
|
343452
343492
|
column: 6
|
|
343453
343493
|
},
|
|
343454
343494
|
end: {
|
|
343455
|
-
line:
|
|
343495
|
+
line: 448,
|
|
343456
343496
|
column: 30
|
|
343457
343497
|
}
|
|
343458
343498
|
},
|
|
343459
|
-
"
|
|
343499
|
+
"156": {
|
|
343460
343500
|
start: {
|
|
343461
|
-
line:
|
|
343501
|
+
line: 452,
|
|
343462
343502
|
column: 22
|
|
343463
343503
|
},
|
|
343464
343504
|
end: {
|
|
343465
|
-
line:
|
|
343505
|
+
line: 452,
|
|
343466
343506
|
column: 40
|
|
343467
343507
|
}
|
|
343468
343508
|
},
|
|
343469
|
-
"
|
|
343509
|
+
"157": {
|
|
343470
343510
|
start: {
|
|
343471
|
-
line:
|
|
343511
|
+
line: 455,
|
|
343472
343512
|
column: 6
|
|
343473
343513
|
},
|
|
343474
343514
|
end: {
|
|
343475
|
-
line:
|
|
343515
|
+
line: 455,
|
|
343476
343516
|
column: 59
|
|
343477
343517
|
}
|
|
343478
343518
|
},
|
|
343479
|
-
"
|
|
343519
|
+
"158": {
|
|
343480
343520
|
start: {
|
|
343481
|
-
line:
|
|
343521
|
+
line: 455,
|
|
343482
343522
|
column: 53
|
|
343483
343523
|
},
|
|
343484
343524
|
end: {
|
|
343485
|
-
line:
|
|
343525
|
+
line: 455,
|
|
343486
343526
|
column: 59
|
|
343487
343527
|
}
|
|
343488
343528
|
},
|
|
343489
|
-
"
|
|
343529
|
+
"159": {
|
|
343490
343530
|
start: {
|
|
343491
|
-
line:
|
|
343531
|
+
line: 458,
|
|
343492
343532
|
column: 6
|
|
343493
343533
|
},
|
|
343494
343534
|
end: {
|
|
343495
|
-
line:
|
|
343535
|
+
line: 458,
|
|
343496
343536
|
column: 67
|
|
343497
343537
|
}
|
|
343498
343538
|
},
|
|
343499
|
-
"
|
|
343539
|
+
"160": {
|
|
343500
343540
|
start: {
|
|
343501
|
-
line:
|
|
343541
|
+
line: 458,
|
|
343502
343542
|
column: 61
|
|
343503
343543
|
},
|
|
343504
343544
|
end: {
|
|
343505
|
-
line:
|
|
343545
|
+
line: 458,
|
|
343506
343546
|
column: 67
|
|
343507
343547
|
}
|
|
343508
343548
|
},
|
|
343509
|
-
"
|
|
343549
|
+
"161": {
|
|
343510
343550
|
start: {
|
|
343511
|
-
line:
|
|
343551
|
+
line: 461,
|
|
343512
343552
|
column: 6
|
|
343513
343553
|
},
|
|
343514
343554
|
end: {
|
|
343515
|
-
line:
|
|
343555
|
+
line: 461,
|
|
343516
343556
|
column: 30
|
|
343517
343557
|
}
|
|
343518
343558
|
},
|
|
343519
|
-
"
|
|
343559
|
+
"162": {
|
|
343520
343560
|
start: {
|
|
343521
|
-
line:
|
|
343561
|
+
line: 465,
|
|
343522
343562
|
column: 30
|
|
343523
343563
|
},
|
|
343524
343564
|
end: {
|
|
343525
|
-
line:
|
|
343565
|
+
line: 465,
|
|
343526
343566
|
column: 56
|
|
343527
343567
|
}
|
|
343528
343568
|
},
|
|
343529
|
-
"
|
|
343569
|
+
"163": {
|
|
343530
343570
|
start: {
|
|
343531
|
-
line:
|
|
343571
|
+
line: 466,
|
|
343532
343572
|
column: 6
|
|
343533
343573
|
},
|
|
343534
343574
|
end: {
|
|
343535
|
-
line:
|
|
343575
|
+
line: 468,
|
|
343536
343576
|
column: 7
|
|
343537
343577
|
}
|
|
343538
343578
|
},
|
|
343539
|
-
"
|
|
343579
|
+
"164": {
|
|
343540
343580
|
start: {
|
|
343541
|
-
line:
|
|
343581
|
+
line: 467,
|
|
343542
343582
|
column: 8
|
|
343543
343583
|
},
|
|
343544
343584
|
end: {
|
|
343545
|
-
line:
|
|
343585
|
+
line: 467,
|
|
343546
343586
|
column: 32
|
|
343547
343587
|
}
|
|
343548
343588
|
}
|
|
@@ -344430,7 +344470,7 @@ var ProjectMatrixvue_type_script_lang_js_cov_geimehe8j = function () {
|
|
|
344430
344470
|
column: 37
|
|
344431
344471
|
},
|
|
344432
344472
|
end: {
|
|
344433
|
-
line:
|
|
344473
|
+
line: 411,
|
|
344434
344474
|
column: 5
|
|
344435
344475
|
}
|
|
344436
344476
|
},
|
|
@@ -344440,313 +344480,313 @@ var ProjectMatrixvue_type_script_lang_js_cov_geimehe8j = function () {
|
|
|
344440
344480
|
name: "(anonymous_37)",
|
|
344441
344481
|
decl: {
|
|
344442
344482
|
start: {
|
|
344443
|
-
line:
|
|
344483
|
+
line: 350,
|
|
344444
344484
|
column: 25
|
|
344445
344485
|
},
|
|
344446
344486
|
end: {
|
|
344447
|
-
line:
|
|
344487
|
+
line: 350,
|
|
344448
344488
|
column: 26
|
|
344449
344489
|
}
|
|
344450
344490
|
},
|
|
344451
344491
|
loc: {
|
|
344452
344492
|
start: {
|
|
344453
|
-
line:
|
|
344493
|
+
line: 350,
|
|
344454
344494
|
column: 30
|
|
344455
344495
|
},
|
|
344456
344496
|
end: {
|
|
344457
|
-
line:
|
|
344497
|
+
line: 356,
|
|
344458
344498
|
column: 9
|
|
344459
344499
|
}
|
|
344460
344500
|
},
|
|
344461
|
-
line:
|
|
344501
|
+
line: 350
|
|
344462
344502
|
},
|
|
344463
344503
|
"38": {
|
|
344464
344504
|
name: "(anonymous_38)",
|
|
344465
344505
|
decl: {
|
|
344466
344506
|
start: {
|
|
344467
|
-
line:
|
|
344507
|
+
line: 359,
|
|
344468
344508
|
column: 45
|
|
344469
344509
|
},
|
|
344470
344510
|
end: {
|
|
344471
|
-
line:
|
|
344511
|
+
line: 359,
|
|
344472
344512
|
column: 46
|
|
344473
344513
|
}
|
|
344474
344514
|
},
|
|
344475
344515
|
loc: {
|
|
344476
344516
|
start: {
|
|
344477
|
-
line:
|
|
344517
|
+
line: 359,
|
|
344478
344518
|
column: 71
|
|
344479
344519
|
},
|
|
344480
344520
|
end: {
|
|
344481
|
-
line:
|
|
344521
|
+
line: 372,
|
|
344482
344522
|
column: 9
|
|
344483
344523
|
}
|
|
344484
344524
|
},
|
|
344485
|
-
line:
|
|
344525
|
+
line: 359
|
|
344486
344526
|
},
|
|
344487
344527
|
"39": {
|
|
344488
344528
|
name: "(anonymous_39)",
|
|
344489
344529
|
decl: {
|
|
344490
344530
|
start: {
|
|
344491
|
-
line:
|
|
344531
|
+
line: 361,
|
|
344492
344532
|
column: 30
|
|
344493
344533
|
},
|
|
344494
344534
|
end: {
|
|
344495
|
-
line:
|
|
344535
|
+
line: 361,
|
|
344496
344536
|
column: 31
|
|
344497
344537
|
}
|
|
344498
344538
|
},
|
|
344499
344539
|
loc: {
|
|
344500
344540
|
start: {
|
|
344501
|
-
line:
|
|
344541
|
+
line: 361,
|
|
344502
344542
|
column: 35
|
|
344503
344543
|
},
|
|
344504
344544
|
end: {
|
|
344505
|
-
line:
|
|
344545
|
+
line: 371,
|
|
344506
344546
|
column: 11
|
|
344507
344547
|
}
|
|
344508
344548
|
},
|
|
344509
|
-
line:
|
|
344549
|
+
line: 361
|
|
344510
344550
|
},
|
|
344511
344551
|
"40": {
|
|
344512
344552
|
name: "(anonymous_40)",
|
|
344513
344553
|
decl: {
|
|
344514
344554
|
start: {
|
|
344515
|
-
line:
|
|
344555
|
+
line: 375,
|
|
344516
344556
|
column: 25
|
|
344517
344557
|
},
|
|
344518
344558
|
end: {
|
|
344519
|
-
line:
|
|
344559
|
+
line: 375,
|
|
344520
344560
|
column: 26
|
|
344521
344561
|
}
|
|
344522
344562
|
},
|
|
344523
344563
|
loc: {
|
|
344524
344564
|
start: {
|
|
344525
|
-
line:
|
|
344565
|
+
line: 375,
|
|
344526
344566
|
column: 30
|
|
344527
344567
|
},
|
|
344528
344568
|
end: {
|
|
344529
|
-
line:
|
|
344569
|
+
line: 385,
|
|
344530
344570
|
column: 9
|
|
344531
344571
|
}
|
|
344532
344572
|
},
|
|
344533
|
-
line:
|
|
344573
|
+
line: 375
|
|
344534
344574
|
},
|
|
344535
344575
|
"41": {
|
|
344536
344576
|
name: "(anonymous_41)",
|
|
344537
344577
|
decl: {
|
|
344538
344578
|
start: {
|
|
344539
|
-
line:
|
|
344579
|
+
line: 392,
|
|
344540
344580
|
column: 56
|
|
344541
344581
|
},
|
|
344542
344582
|
end: {
|
|
344543
|
-
line:
|
|
344583
|
+
line: 392,
|
|
344544
344584
|
column: 57
|
|
344545
344585
|
}
|
|
344546
344586
|
},
|
|
344547
344587
|
loc: {
|
|
344548
344588
|
start: {
|
|
344549
|
-
line:
|
|
344589
|
+
line: 392,
|
|
344550
344590
|
column: 64
|
|
344551
344591
|
},
|
|
344552
344592
|
end: {
|
|
344553
|
-
line:
|
|
344593
|
+
line: 398,
|
|
344554
344594
|
column: 7
|
|
344555
344595
|
}
|
|
344556
344596
|
},
|
|
344557
|
-
line:
|
|
344597
|
+
line: 392
|
|
344558
344598
|
},
|
|
344559
344599
|
"42": {
|
|
344560
344600
|
name: "(anonymous_42)",
|
|
344561
344601
|
decl: {
|
|
344562
344602
|
start: {
|
|
344563
|
-
line:
|
|
344603
|
+
line: 393,
|
|
344564
344604
|
column: 23
|
|
344565
344605
|
},
|
|
344566
344606
|
end: {
|
|
344567
|
-
line:
|
|
344607
|
+
line: 393,
|
|
344568
344608
|
column: 24
|
|
344569
344609
|
}
|
|
344570
344610
|
},
|
|
344571
344611
|
loc: {
|
|
344572
344612
|
start: {
|
|
344573
|
-
line:
|
|
344613
|
+
line: 393,
|
|
344574
344614
|
column: 29
|
|
344575
344615
|
},
|
|
344576
344616
|
end: {
|
|
344577
|
-
line:
|
|
344617
|
+
line: 397,
|
|
344578
344618
|
column: 9
|
|
344579
344619
|
}
|
|
344580
344620
|
},
|
|
344581
|
-
line:
|
|
344621
|
+
line: 393
|
|
344582
344622
|
},
|
|
344583
344623
|
"43": {
|
|
344584
344624
|
name: "(anonymous_43)",
|
|
344585
344625
|
decl: {
|
|
344586
344626
|
start: {
|
|
344587
|
-
line:
|
|
344627
|
+
line: 413,
|
|
344588
344628
|
column: 4
|
|
344589
344629
|
},
|
|
344590
344630
|
end: {
|
|
344591
|
-
line:
|
|
344631
|
+
line: 413,
|
|
344592
344632
|
column: 5
|
|
344593
344633
|
}
|
|
344594
344634
|
},
|
|
344595
344635
|
loc: {
|
|
344596
344636
|
start: {
|
|
344597
|
-
line:
|
|
344637
|
+
line: 413,
|
|
344598
344638
|
column: 24
|
|
344599
344639
|
},
|
|
344600
344640
|
end: {
|
|
344601
|
-
line:
|
|
344641
|
+
line: 418,
|
|
344602
344642
|
column: 5
|
|
344603
344643
|
}
|
|
344604
344644
|
},
|
|
344605
|
-
line:
|
|
344645
|
+
line: 413
|
|
344606
344646
|
},
|
|
344607
344647
|
"44": {
|
|
344608
344648
|
name: "(anonymous_44)",
|
|
344609
344649
|
decl: {
|
|
344610
344650
|
start: {
|
|
344611
|
-
line:
|
|
344651
|
+
line: 422,
|
|
344612
344652
|
column: 4
|
|
344613
344653
|
},
|
|
344614
344654
|
end: {
|
|
344615
|
-
line:
|
|
344655
|
+
line: 422,
|
|
344616
344656
|
column: 5
|
|
344617
344657
|
}
|
|
344618
344658
|
},
|
|
344619
344659
|
loc: {
|
|
344620
344660
|
start: {
|
|
344621
|
-
line:
|
|
344661
|
+
line: 422,
|
|
344622
344662
|
column: 34
|
|
344623
344663
|
},
|
|
344624
344664
|
end: {
|
|
344625
|
-
line:
|
|
344665
|
+
line: 440,
|
|
344626
344666
|
column: 5
|
|
344627
344667
|
}
|
|
344628
344668
|
},
|
|
344629
|
-
line:
|
|
344669
|
+
line: 422
|
|
344630
344670
|
},
|
|
344631
344671
|
"45": {
|
|
344632
344672
|
name: "(anonymous_45)",
|
|
344633
344673
|
decl: {
|
|
344634
344674
|
start: {
|
|
344635
|
-
line:
|
|
344675
|
+
line: 425,
|
|
344636
344676
|
column: 23
|
|
344637
344677
|
},
|
|
344638
344678
|
end: {
|
|
344639
|
-
line:
|
|
344679
|
+
line: 425,
|
|
344640
344680
|
column: 24
|
|
344641
344681
|
}
|
|
344642
344682
|
},
|
|
344643
344683
|
loc: {
|
|
344644
344684
|
start: {
|
|
344645
|
-
line:
|
|
344685
|
+
line: 425,
|
|
344646
344686
|
column: 28
|
|
344647
344687
|
},
|
|
344648
344688
|
end: {
|
|
344649
|
-
line:
|
|
344689
|
+
line: 427,
|
|
344650
344690
|
column: 7
|
|
344651
344691
|
}
|
|
344652
344692
|
},
|
|
344653
|
-
line:
|
|
344693
|
+
line: 425
|
|
344654
344694
|
},
|
|
344655
344695
|
"46": {
|
|
344656
344696
|
name: "(anonymous_46)",
|
|
344657
344697
|
decl: {
|
|
344658
344698
|
start: {
|
|
344659
|
-
line:
|
|
344699
|
+
line: 432,
|
|
344660
344700
|
column: 43
|
|
344661
344701
|
},
|
|
344662
344702
|
end: {
|
|
344663
|
-
line:
|
|
344703
|
+
line: 432,
|
|
344664
344704
|
column: 44
|
|
344665
344705
|
}
|
|
344666
344706
|
},
|
|
344667
344707
|
loc: {
|
|
344668
344708
|
start: {
|
|
344669
|
-
line:
|
|
344709
|
+
line: 432,
|
|
344670
344710
|
column: 64
|
|
344671
344711
|
},
|
|
344672
344712
|
end: {
|
|
344673
|
-
line:
|
|
344713
|
+
line: 437,
|
|
344674
344714
|
column: 7
|
|
344675
344715
|
}
|
|
344676
344716
|
},
|
|
344677
|
-
line:
|
|
344717
|
+
line: 432
|
|
344678
344718
|
},
|
|
344679
344719
|
"47": {
|
|
344680
344720
|
name: "(anonymous_47)",
|
|
344681
344721
|
decl: {
|
|
344682
344722
|
start: {
|
|
344683
|
-
line:
|
|
344723
|
+
line: 442,
|
|
344684
344724
|
column: 4
|
|
344685
344725
|
},
|
|
344686
344726
|
end: {
|
|
344687
|
-
line:
|
|
344727
|
+
line: 442,
|
|
344688
344728
|
column: 5
|
|
344689
344729
|
}
|
|
344690
344730
|
},
|
|
344691
344731
|
loc: {
|
|
344692
344732
|
start: {
|
|
344693
|
-
line:
|
|
344733
|
+
line: 442,
|
|
344694
344734
|
column: 25
|
|
344695
344735
|
},
|
|
344696
344736
|
end: {
|
|
344697
|
-
line:
|
|
344737
|
+
line: 444,
|
|
344698
344738
|
column: 5
|
|
344699
344739
|
}
|
|
344700
344740
|
},
|
|
344701
|
-
line:
|
|
344741
|
+
line: 442
|
|
344702
344742
|
},
|
|
344703
344743
|
"48": {
|
|
344704
344744
|
name: "(anonymous_48)",
|
|
344705
344745
|
decl: {
|
|
344706
344746
|
start: {
|
|
344707
|
-
line:
|
|
344747
|
+
line: 446,
|
|
344708
344748
|
column: 4
|
|
344709
344749
|
},
|
|
344710
344750
|
end: {
|
|
344711
|
-
line:
|
|
344751
|
+
line: 446,
|
|
344712
344752
|
column: 5
|
|
344713
344753
|
}
|
|
344714
344754
|
},
|
|
344715
344755
|
loc: {
|
|
344716
344756
|
start: {
|
|
344717
|
-
line:
|
|
344757
|
+
line: 446,
|
|
344718
344758
|
column: 25
|
|
344719
344759
|
},
|
|
344720
344760
|
end: {
|
|
344721
|
-
line:
|
|
344761
|
+
line: 449,
|
|
344722
344762
|
column: 5
|
|
344723
344763
|
}
|
|
344724
344764
|
},
|
|
344725
|
-
line:
|
|
344765
|
+
line: 446
|
|
344726
344766
|
},
|
|
344727
344767
|
"49": {
|
|
344728
344768
|
name: "(anonymous_49)",
|
|
344729
344769
|
decl: {
|
|
344730
344770
|
start: {
|
|
344731
|
-
line:
|
|
344771
|
+
line: 451,
|
|
344732
344772
|
column: 4
|
|
344733
344773
|
},
|
|
344734
344774
|
end: {
|
|
344735
|
-
line:
|
|
344775
|
+
line: 451,
|
|
344736
344776
|
column: 5
|
|
344737
344777
|
}
|
|
344738
344778
|
},
|
|
344739
344779
|
loc: {
|
|
344740
344780
|
start: {
|
|
344741
|
-
line:
|
|
344781
|
+
line: 451,
|
|
344742
344782
|
column: 31
|
|
344743
344783
|
},
|
|
344744
344784
|
end: {
|
|
344745
|
-
line:
|
|
344785
|
+
line: 469,
|
|
344746
344786
|
column: 5
|
|
344747
344787
|
}
|
|
344748
344788
|
},
|
|
344749
|
-
line:
|
|
344789
|
+
line: 451
|
|
344750
344790
|
}
|
|
344751
344791
|
},
|
|
344752
344792
|
branchMap: {
|
|
@@ -345572,695 +345612,695 @@ var ProjectMatrixvue_type_script_lang_js_cov_geimehe8j = function () {
|
|
|
345572
345612
|
"24": {
|
|
345573
345613
|
loc: {
|
|
345574
345614
|
start: {
|
|
345575
|
-
line:
|
|
345615
|
+
line: 325,
|
|
345576
345616
|
column: 23
|
|
345577
345617
|
},
|
|
345578
345618
|
end: {
|
|
345579
|
-
line:
|
|
345619
|
+
line: 325,
|
|
345580
345620
|
column: 64
|
|
345581
345621
|
}
|
|
345582
345622
|
},
|
|
345583
345623
|
type: "binary-expr",
|
|
345584
345624
|
locations: [{
|
|
345585
345625
|
start: {
|
|
345586
|
-
line:
|
|
345626
|
+
line: 325,
|
|
345587
345627
|
column: 23
|
|
345588
345628
|
},
|
|
345589
345629
|
end: {
|
|
345590
|
-
line:
|
|
345630
|
+
line: 325,
|
|
345591
345631
|
column: 58
|
|
345592
345632
|
}
|
|
345593
345633
|
}, {
|
|
345594
345634
|
start: {
|
|
345595
|
-
line:
|
|
345635
|
+
line: 325,
|
|
345596
345636
|
column: 62
|
|
345597
345637
|
},
|
|
345598
345638
|
end: {
|
|
345599
|
-
line:
|
|
345639
|
+
line: 325,
|
|
345600
345640
|
column: 64
|
|
345601
345641
|
}
|
|
345602
345642
|
}],
|
|
345603
|
-
line:
|
|
345643
|
+
line: 325
|
|
345604
345644
|
},
|
|
345605
345645
|
"25": {
|
|
345606
345646
|
loc: {
|
|
345607
345647
|
start: {
|
|
345608
|
-
line:
|
|
345648
|
+
line: 327,
|
|
345609
345649
|
column: 6
|
|
345610
345650
|
},
|
|
345611
345651
|
end: {
|
|
345612
|
-
line:
|
|
345652
|
+
line: 327,
|
|
345613
345653
|
column: 39
|
|
345614
345654
|
}
|
|
345615
345655
|
},
|
|
345616
345656
|
type: "if",
|
|
345617
345657
|
locations: [{
|
|
345618
345658
|
start: {
|
|
345619
|
-
line:
|
|
345659
|
+
line: 327,
|
|
345620
345660
|
column: 6
|
|
345621
345661
|
},
|
|
345622
345662
|
end: {
|
|
345623
|
-
line:
|
|
345663
|
+
line: 327,
|
|
345624
345664
|
column: 39
|
|
345625
345665
|
}
|
|
345626
345666
|
}, {
|
|
345627
345667
|
start: {
|
|
345628
|
-
line:
|
|
345668
|
+
line: 327,
|
|
345629
345669
|
column: 6
|
|
345630
345670
|
},
|
|
345631
345671
|
end: {
|
|
345632
|
-
line:
|
|
345672
|
+
line: 327,
|
|
345633
345673
|
column: 39
|
|
345634
345674
|
}
|
|
345635
345675
|
}],
|
|
345636
|
-
line:
|
|
345676
|
+
line: 327
|
|
345637
345677
|
},
|
|
345638
345678
|
"26": {
|
|
345639
345679
|
loc: {
|
|
345640
345680
|
start: {
|
|
345641
|
-
line:
|
|
345681
|
+
line: 337,
|
|
345642
345682
|
column: 6
|
|
345643
345683
|
},
|
|
345644
345684
|
end: {
|
|
345645
|
-
line:
|
|
345685
|
+
line: 337,
|
|
345646
345686
|
column: 38
|
|
345647
345687
|
}
|
|
345648
345688
|
},
|
|
345649
345689
|
type: "if",
|
|
345650
345690
|
locations: [{
|
|
345651
345691
|
start: {
|
|
345652
|
-
line:
|
|
345692
|
+
line: 337,
|
|
345653
345693
|
column: 6
|
|
345654
345694
|
},
|
|
345655
345695
|
end: {
|
|
345656
|
-
line:
|
|
345696
|
+
line: 337,
|
|
345657
345697
|
column: 38
|
|
345658
345698
|
}
|
|
345659
345699
|
}, {
|
|
345660
345700
|
start: {
|
|
345661
|
-
line:
|
|
345701
|
+
line: 337,
|
|
345662
345702
|
column: 6
|
|
345663
345703
|
},
|
|
345664
345704
|
end: {
|
|
345665
|
-
line:
|
|
345705
|
+
line: 337,
|
|
345666
345706
|
column: 38
|
|
345667
345707
|
}
|
|
345668
345708
|
}],
|
|
345669
|
-
line:
|
|
345709
|
+
line: 337
|
|
345670
345710
|
},
|
|
345671
345711
|
"27": {
|
|
345672
345712
|
loc: {
|
|
345673
345713
|
start: {
|
|
345674
|
-
line:
|
|
345714
|
+
line: 337,
|
|
345675
345715
|
column: 10
|
|
345676
345716
|
},
|
|
345677
345717
|
end: {
|
|
345678
|
-
line:
|
|
345718
|
+
line: 337,
|
|
345679
345719
|
column: 30
|
|
345680
345720
|
}
|
|
345681
345721
|
},
|
|
345682
345722
|
type: "binary-expr",
|
|
345683
345723
|
locations: [{
|
|
345684
345724
|
start: {
|
|
345685
|
-
line:
|
|
345725
|
+
line: 337,
|
|
345686
345726
|
column: 10
|
|
345687
345727
|
},
|
|
345688
345728
|
end: {
|
|
345689
|
-
line:
|
|
345729
|
+
line: 337,
|
|
345690
345730
|
column: 18
|
|
345691
345731
|
}
|
|
345692
345732
|
}, {
|
|
345693
345733
|
start: {
|
|
345694
|
-
line:
|
|
345734
|
+
line: 337,
|
|
345695
345735
|
column: 22
|
|
345696
345736
|
},
|
|
345697
345737
|
end: {
|
|
345698
|
-
line:
|
|
345738
|
+
line: 337,
|
|
345699
345739
|
column: 30
|
|
345700
345740
|
}
|
|
345701
345741
|
}],
|
|
345702
|
-
line:
|
|
345742
|
+
line: 337
|
|
345703
345743
|
},
|
|
345704
345744
|
"28": {
|
|
345705
345745
|
loc: {
|
|
345706
345746
|
start: {
|
|
345707
|
-
line:
|
|
345747
|
+
line: 343,
|
|
345708
345748
|
column: 22
|
|
345709
345749
|
},
|
|
345710
345750
|
end: {
|
|
345711
|
-
line:
|
|
345751
|
+
line: 343,
|
|
345712
345752
|
column: 65
|
|
345713
345753
|
}
|
|
345714
345754
|
},
|
|
345715
345755
|
type: "binary-expr",
|
|
345716
345756
|
locations: [{
|
|
345717
345757
|
start: {
|
|
345718
|
-
line:
|
|
345758
|
+
line: 343,
|
|
345719
345759
|
column: 22
|
|
345720
345760
|
},
|
|
345721
345761
|
end: {
|
|
345722
|
-
line:
|
|
345762
|
+
line: 343,
|
|
345723
345763
|
column: 52
|
|
345724
345764
|
}
|
|
345725
345765
|
}, {
|
|
345726
345766
|
start: {
|
|
345727
|
-
line:
|
|
345767
|
+
line: 343,
|
|
345728
345768
|
column: 56
|
|
345729
345769
|
},
|
|
345730
345770
|
end: {
|
|
345731
|
-
line:
|
|
345771
|
+
line: 343,
|
|
345732
345772
|
column: 65
|
|
345733
345773
|
}
|
|
345734
345774
|
}],
|
|
345735
|
-
line:
|
|
345775
|
+
line: 343
|
|
345736
345776
|
},
|
|
345737
345777
|
"29": {
|
|
345738
345778
|
loc: {
|
|
345739
345779
|
start: {
|
|
345740
|
-
line:
|
|
345780
|
+
line: 344,
|
|
345741
345781
|
column: 88
|
|
345742
345782
|
},
|
|
345743
345783
|
end: {
|
|
345744
|
-
line:
|
|
345784
|
+
line: 344,
|
|
345745
345785
|
column: 121
|
|
345746
345786
|
}
|
|
345747
345787
|
},
|
|
345748
345788
|
type: "cond-expr",
|
|
345749
345789
|
locations: [{
|
|
345750
345790
|
start: {
|
|
345751
|
-
line:
|
|
345791
|
+
line: 344,
|
|
345752
345792
|
column: 112
|
|
345753
345793
|
},
|
|
345754
345794
|
end: {
|
|
345755
|
-
line:
|
|
345795
|
+
line: 344,
|
|
345756
345796
|
column: 116
|
|
345757
345797
|
}
|
|
345758
345798
|
}, {
|
|
345759
345799
|
start: {
|
|
345760
|
-
line:
|
|
345800
|
+
line: 344,
|
|
345761
345801
|
column: 119
|
|
345762
345802
|
},
|
|
345763
345803
|
end: {
|
|
345764
|
-
line:
|
|
345804
|
+
line: 344,
|
|
345765
345805
|
column: 121
|
|
345766
345806
|
}
|
|
345767
345807
|
}],
|
|
345768
|
-
line:
|
|
345808
|
+
line: 344
|
|
345769
345809
|
},
|
|
345770
345810
|
"30": {
|
|
345771
345811
|
loc: {
|
|
345772
345812
|
start: {
|
|
345773
|
-
line:
|
|
345813
|
+
line: 347,
|
|
345774
345814
|
column: 6
|
|
345775
345815
|
},
|
|
345776
345816
|
end: {
|
|
345777
|
-
line:
|
|
345817
|
+
line: 386,
|
|
345778
345818
|
column: 7
|
|
345779
345819
|
}
|
|
345780
345820
|
},
|
|
345781
345821
|
type: "if",
|
|
345782
345822
|
locations: [{
|
|
345783
345823
|
start: {
|
|
345784
|
-
line:
|
|
345824
|
+
line: 347,
|
|
345785
345825
|
column: 6
|
|
345786
345826
|
},
|
|
345787
345827
|
end: {
|
|
345788
|
-
line:
|
|
345828
|
+
line: 386,
|
|
345789
345829
|
column: 7
|
|
345790
345830
|
}
|
|
345791
345831
|
}, {
|
|
345792
345832
|
start: {
|
|
345793
|
-
line:
|
|
345833
|
+
line: 347,
|
|
345794
345834
|
column: 6
|
|
345795
345835
|
},
|
|
345796
345836
|
end: {
|
|
345797
|
-
line:
|
|
345837
|
+
line: 386,
|
|
345798
345838
|
column: 7
|
|
345799
345839
|
}
|
|
345800
345840
|
}],
|
|
345801
|
-
line:
|
|
345841
|
+
line: 347
|
|
345802
345842
|
},
|
|
345803
345843
|
"31": {
|
|
345804
345844
|
loc: {
|
|
345805
345845
|
start: {
|
|
345806
|
-
line:
|
|
345846
|
+
line: 351,
|
|
345807
345847
|
column: 24
|
|
345808
345848
|
},
|
|
345809
345849
|
end: {
|
|
345810
|
-
line:
|
|
345850
|
+
line: 351,
|
|
345811
345851
|
column: 57
|
|
345812
345852
|
}
|
|
345813
345853
|
},
|
|
345814
345854
|
type: "binary-expr",
|
|
345815
345855
|
locations: [{
|
|
345816
345856
|
start: {
|
|
345817
|
-
line:
|
|
345857
|
+
line: 351,
|
|
345818
345858
|
column: 24
|
|
345819
345859
|
},
|
|
345820
345860
|
end: {
|
|
345821
|
-
line:
|
|
345861
|
+
line: 351,
|
|
345822
345862
|
column: 44
|
|
345823
345863
|
}
|
|
345824
345864
|
}, {
|
|
345825
345865
|
start: {
|
|
345826
|
-
line:
|
|
345866
|
+
line: 351,
|
|
345827
345867
|
column: 48
|
|
345828
345868
|
},
|
|
345829
345869
|
end: {
|
|
345830
|
-
line:
|
|
345870
|
+
line: 351,
|
|
345831
345871
|
column: 57
|
|
345832
345872
|
}
|
|
345833
345873
|
}],
|
|
345834
|
-
line:
|
|
345874
|
+
line: 351
|
|
345835
345875
|
},
|
|
345836
345876
|
"32": {
|
|
345837
345877
|
loc: {
|
|
345838
345878
|
start: {
|
|
345839
|
-
line:
|
|
345879
|
+
line: 352,
|
|
345840
345880
|
column: 10
|
|
345841
345881
|
},
|
|
345842
345882
|
end: {
|
|
345843
|
-
line:
|
|
345883
|
+
line: 354,
|
|
345844
345884
|
column: 11
|
|
345845
345885
|
}
|
|
345846
345886
|
},
|
|
345847
345887
|
type: "if",
|
|
345848
345888
|
locations: [{
|
|
345849
345889
|
start: {
|
|
345850
|
-
line:
|
|
345890
|
+
line: 352,
|
|
345851
345891
|
column: 10
|
|
345852
345892
|
},
|
|
345853
345893
|
end: {
|
|
345854
|
-
line:
|
|
345894
|
+
line: 354,
|
|
345855
345895
|
column: 11
|
|
345856
345896
|
}
|
|
345857
345897
|
}, {
|
|
345858
345898
|
start: {
|
|
345859
|
-
line:
|
|
345899
|
+
line: 352,
|
|
345860
345900
|
column: 10
|
|
345861
345901
|
},
|
|
345862
345902
|
end: {
|
|
345863
|
-
line:
|
|
345903
|
+
line: 354,
|
|
345864
345904
|
column: 11
|
|
345865
345905
|
}
|
|
345866
345906
|
}],
|
|
345867
|
-
line:
|
|
345907
|
+
line: 352
|
|
345868
345908
|
},
|
|
345869
345909
|
"33": {
|
|
345870
345910
|
loc: {
|
|
345871
345911
|
start: {
|
|
345872
|
-
line:
|
|
345912
|
+
line: 367,
|
|
345873
345913
|
column: 46
|
|
345874
345914
|
},
|
|
345875
345915
|
end: {
|
|
345876
|
-
line:
|
|
345916
|
+
line: 367,
|
|
345877
345917
|
column: 64
|
|
345878
345918
|
}
|
|
345879
345919
|
},
|
|
345880
345920
|
type: "binary-expr",
|
|
345881
345921
|
locations: [{
|
|
345882
345922
|
start: {
|
|
345883
|
-
line:
|
|
345923
|
+
line: 367,
|
|
345884
345924
|
column: 46
|
|
345885
345925
|
},
|
|
345886
345926
|
end: {
|
|
345887
|
-
line:
|
|
345927
|
+
line: 367,
|
|
345888
345928
|
column: 55
|
|
345889
345929
|
}
|
|
345890
345930
|
}, {
|
|
345891
345931
|
start: {
|
|
345892
|
-
line:
|
|
345932
|
+
line: 367,
|
|
345893
345933
|
column: 59
|
|
345894
345934
|
},
|
|
345895
345935
|
end: {
|
|
345896
|
-
line:
|
|
345936
|
+
line: 367,
|
|
345897
345937
|
column: 64
|
|
345898
345938
|
}
|
|
345899
345939
|
}],
|
|
345900
|
-
line:
|
|
345940
|
+
line: 367
|
|
345901
345941
|
},
|
|
345902
345942
|
"34": {
|
|
345903
345943
|
loc: {
|
|
345904
345944
|
start: {
|
|
345905
|
-
line:
|
|
345945
|
+
line: 368,
|
|
345906
345946
|
column: 12
|
|
345907
345947
|
},
|
|
345908
345948
|
end: {
|
|
345909
|
-
line:
|
|
345949
|
+
line: 368,
|
|
345910
345950
|
column: 84
|
|
345911
345951
|
}
|
|
345912
345952
|
},
|
|
345913
345953
|
type: "if",
|
|
345914
345954
|
locations: [{
|
|
345915
345955
|
start: {
|
|
345916
|
-
line:
|
|
345956
|
+
line: 368,
|
|
345917
345957
|
column: 12
|
|
345918
345958
|
},
|
|
345919
345959
|
end: {
|
|
345920
|
-
line:
|
|
345960
|
+
line: 368,
|
|
345921
345961
|
column: 84
|
|
345922
345962
|
}
|
|
345923
345963
|
}, {
|
|
345924
345964
|
start: {
|
|
345925
|
-
line:
|
|
345965
|
+
line: 368,
|
|
345926
345966
|
column: 12
|
|
345927
345967
|
},
|
|
345928
345968
|
end: {
|
|
345929
|
-
line:
|
|
345969
|
+
line: 368,
|
|
345930
345970
|
column: 84
|
|
345931
345971
|
}
|
|
345932
345972
|
}],
|
|
345933
|
-
line:
|
|
345973
|
+
line: 368
|
|
345934
345974
|
},
|
|
345935
345975
|
"35": {
|
|
345936
345976
|
loc: {
|
|
345937
345977
|
start: {
|
|
345938
|
-
line:
|
|
345978
|
+
line: 381,
|
|
345939
345979
|
column: 44
|
|
345940
345980
|
},
|
|
345941
345981
|
end: {
|
|
345942
|
-
line:
|
|
345982
|
+
line: 381,
|
|
345943
345983
|
column: 62
|
|
345944
345984
|
}
|
|
345945
345985
|
},
|
|
345946
345986
|
type: "binary-expr",
|
|
345947
345987
|
locations: [{
|
|
345948
345988
|
start: {
|
|
345949
|
-
line:
|
|
345989
|
+
line: 381,
|
|
345950
345990
|
column: 44
|
|
345951
345991
|
},
|
|
345952
345992
|
end: {
|
|
345953
|
-
line:
|
|
345993
|
+
line: 381,
|
|
345954
345994
|
column: 53
|
|
345955
345995
|
}
|
|
345956
345996
|
}, {
|
|
345957
345997
|
start: {
|
|
345958
|
-
line:
|
|
345998
|
+
line: 381,
|
|
345959
345999
|
column: 57
|
|
345960
346000
|
},
|
|
345961
346001
|
end: {
|
|
345962
|
-
line:
|
|
346002
|
+
line: 381,
|
|
345963
346003
|
column: 62
|
|
345964
346004
|
}
|
|
345965
346005
|
}],
|
|
345966
|
-
line:
|
|
346006
|
+
line: 381
|
|
345967
346007
|
},
|
|
345968
346008
|
"36": {
|
|
345969
346009
|
loc: {
|
|
345970
346010
|
start: {
|
|
345971
|
-
line:
|
|
346011
|
+
line: 382,
|
|
345972
346012
|
column: 10
|
|
345973
346013
|
},
|
|
345974
346014
|
end: {
|
|
345975
|
-
line:
|
|
346015
|
+
line: 382,
|
|
345976
346016
|
column: 82
|
|
345977
346017
|
}
|
|
345978
346018
|
},
|
|
345979
346019
|
type: "if",
|
|
345980
346020
|
locations: [{
|
|
345981
346021
|
start: {
|
|
345982
|
-
line:
|
|
346022
|
+
line: 382,
|
|
345983
346023
|
column: 10
|
|
345984
346024
|
},
|
|
345985
346025
|
end: {
|
|
345986
|
-
line:
|
|
346026
|
+
line: 382,
|
|
345987
346027
|
column: 82
|
|
345988
346028
|
}
|
|
345989
346029
|
}, {
|
|
345990
346030
|
start: {
|
|
345991
|
-
line:
|
|
346031
|
+
line: 382,
|
|
345992
346032
|
column: 10
|
|
345993
346033
|
},
|
|
345994
346034
|
end: {
|
|
345995
|
-
line:
|
|
346035
|
+
line: 382,
|
|
345996
346036
|
column: 82
|
|
345997
346037
|
}
|
|
345998
346038
|
}],
|
|
345999
|
-
line:
|
|
346039
|
+
line: 382
|
|
346000
346040
|
},
|
|
346001
346041
|
"37": {
|
|
346002
346042
|
loc: {
|
|
346003
346043
|
start: {
|
|
346004
|
-
line:
|
|
346044
|
+
line: 415,
|
|
346005
346045
|
column: 6
|
|
346006
346046
|
},
|
|
346007
346047
|
end: {
|
|
346008
|
-
line:
|
|
346048
|
+
line: 417,
|
|
346009
346049
|
column: 7
|
|
346010
346050
|
}
|
|
346011
346051
|
},
|
|
346012
346052
|
type: "if",
|
|
346013
346053
|
locations: [{
|
|
346014
346054
|
start: {
|
|
346015
|
-
line:
|
|
346055
|
+
line: 415,
|
|
346016
346056
|
column: 6
|
|
346017
346057
|
},
|
|
346018
346058
|
end: {
|
|
346019
|
-
line:
|
|
346059
|
+
line: 417,
|
|
346020
346060
|
column: 7
|
|
346021
346061
|
}
|
|
346022
346062
|
}, {
|
|
346023
346063
|
start: {
|
|
346024
|
-
line:
|
|
346064
|
+
line: 415,
|
|
346025
346065
|
column: 6
|
|
346026
346066
|
},
|
|
346027
346067
|
end: {
|
|
346028
|
-
line:
|
|
346068
|
+
line: 417,
|
|
346029
346069
|
column: 7
|
|
346030
346070
|
}
|
|
346031
346071
|
}],
|
|
346032
|
-
line:
|
|
346072
|
+
line: 415
|
|
346033
346073
|
},
|
|
346034
346074
|
"38": {
|
|
346035
346075
|
loc: {
|
|
346036
346076
|
start: {
|
|
346037
|
-
line:
|
|
346077
|
+
line: 426,
|
|
346038
346078
|
column: 34
|
|
346039
346079
|
},
|
|
346040
346080
|
end: {
|
|
346041
|
-
line:
|
|
346081
|
+
line: 426,
|
|
346042
346082
|
column: 61
|
|
346043
346083
|
}
|
|
346044
346084
|
},
|
|
346045
346085
|
type: "binary-expr",
|
|
346046
346086
|
locations: [{
|
|
346047
346087
|
start: {
|
|
346048
|
-
line:
|
|
346088
|
+
line: 426,
|
|
346049
346089
|
column: 34
|
|
346050
346090
|
},
|
|
346051
346091
|
end: {
|
|
346052
|
-
line:
|
|
346092
|
+
line: 426,
|
|
346053
346093
|
column: 56
|
|
346054
346094
|
}
|
|
346055
346095
|
}, {
|
|
346056
346096
|
start: {
|
|
346057
|
-
line:
|
|
346097
|
+
line: 426,
|
|
346058
346098
|
column: 60
|
|
346059
346099
|
},
|
|
346060
346100
|
end: {
|
|
346061
|
-
line:
|
|
346101
|
+
line: 426,
|
|
346062
346102
|
column: 61
|
|
346063
346103
|
}
|
|
346064
346104
|
}],
|
|
346065
|
-
line:
|
|
346105
|
+
line: 426
|
|
346066
346106
|
},
|
|
346067
346107
|
"39": {
|
|
346068
346108
|
loc: {
|
|
346069
346109
|
start: {
|
|
346070
|
-
line:
|
|
346110
|
+
line: 433,
|
|
346071
346111
|
column: 8
|
|
346072
346112
|
},
|
|
346073
346113
|
end: {
|
|
346074
|
-
line:
|
|
346114
|
+
line: 436,
|
|
346075
346115
|
column: 9
|
|
346076
346116
|
}
|
|
346077
346117
|
},
|
|
346078
346118
|
type: "if",
|
|
346079
346119
|
locations: [{
|
|
346080
346120
|
start: {
|
|
346081
|
-
line:
|
|
346121
|
+
line: 433,
|
|
346082
346122
|
column: 8
|
|
346083
346123
|
},
|
|
346084
346124
|
end: {
|
|
346085
|
-
line:
|
|
346125
|
+
line: 436,
|
|
346086
346126
|
column: 9
|
|
346087
346127
|
}
|
|
346088
346128
|
}, {
|
|
346089
346129
|
start: {
|
|
346090
|
-
line:
|
|
346130
|
+
line: 433,
|
|
346091
346131
|
column: 8
|
|
346092
346132
|
},
|
|
346093
346133
|
end: {
|
|
346094
|
-
line:
|
|
346134
|
+
line: 436,
|
|
346095
346135
|
column: 9
|
|
346096
346136
|
}
|
|
346097
346137
|
}],
|
|
346098
|
-
line:
|
|
346138
|
+
line: 433
|
|
346099
346139
|
},
|
|
346100
346140
|
"40": {
|
|
346101
346141
|
loc: {
|
|
346102
346142
|
start: {
|
|
346103
|
-
line:
|
|
346143
|
+
line: 455,
|
|
346104
346144
|
column: 6
|
|
346105
346145
|
},
|
|
346106
346146
|
end: {
|
|
346107
|
-
line:
|
|
346147
|
+
line: 455,
|
|
346108
346148
|
column: 59
|
|
346109
346149
|
}
|
|
346110
346150
|
},
|
|
346111
346151
|
type: "if",
|
|
346112
346152
|
locations: [{
|
|
346113
346153
|
start: {
|
|
346114
|
-
line:
|
|
346154
|
+
line: 455,
|
|
346115
346155
|
column: 6
|
|
346116
346156
|
},
|
|
346117
346157
|
end: {
|
|
346118
|
-
line:
|
|
346158
|
+
line: 455,
|
|
346119
346159
|
column: 59
|
|
346120
346160
|
}
|
|
346121
346161
|
}, {
|
|
346122
346162
|
start: {
|
|
346123
|
-
line:
|
|
346163
|
+
line: 455,
|
|
346124
346164
|
column: 6
|
|
346125
346165
|
},
|
|
346126
346166
|
end: {
|
|
346127
|
-
line:
|
|
346167
|
+
line: 455,
|
|
346128
346168
|
column: 59
|
|
346129
346169
|
}
|
|
346130
346170
|
}],
|
|
346131
|
-
line:
|
|
346171
|
+
line: 455
|
|
346132
346172
|
},
|
|
346133
346173
|
"41": {
|
|
346134
346174
|
loc: {
|
|
346135
346175
|
start: {
|
|
346136
|
-
line:
|
|
346176
|
+
line: 455,
|
|
346137
346177
|
column: 10
|
|
346138
346178
|
},
|
|
346139
346179
|
end: {
|
|
346140
|
-
line:
|
|
346180
|
+
line: 455,
|
|
346141
346181
|
column: 51
|
|
346142
346182
|
}
|
|
346143
346183
|
},
|
|
346144
346184
|
type: "binary-expr",
|
|
346145
346185
|
locations: [{
|
|
346146
346186
|
start: {
|
|
346147
|
-
line:
|
|
346187
|
+
line: 455,
|
|
346148
346188
|
column: 10
|
|
346149
346189
|
},
|
|
346150
346190
|
end: {
|
|
346151
|
-
line:
|
|
346191
|
+
line: 455,
|
|
346152
346192
|
column: 17
|
|
346153
346193
|
}
|
|
346154
346194
|
}, {
|
|
346155
346195
|
start: {
|
|
346156
|
-
line:
|
|
346196
|
+
line: 455,
|
|
346157
346197
|
column: 21
|
|
346158
346198
|
},
|
|
346159
346199
|
end: {
|
|
346160
|
-
line:
|
|
346200
|
+
line: 455,
|
|
346161
346201
|
column: 51
|
|
346162
346202
|
}
|
|
346163
346203
|
}],
|
|
346164
|
-
line:
|
|
346204
|
+
line: 455
|
|
346165
346205
|
},
|
|
346166
346206
|
"42": {
|
|
346167
346207
|
loc: {
|
|
346168
346208
|
start: {
|
|
346169
|
-
line:
|
|
346209
|
+
line: 458,
|
|
346170
346210
|
column: 6
|
|
346171
346211
|
},
|
|
346172
346212
|
end: {
|
|
346173
|
-
line:
|
|
346213
|
+
line: 458,
|
|
346174
346214
|
column: 67
|
|
346175
346215
|
}
|
|
346176
346216
|
},
|
|
346177
346217
|
type: "if",
|
|
346178
346218
|
locations: [{
|
|
346179
346219
|
start: {
|
|
346180
|
-
line:
|
|
346220
|
+
line: 458,
|
|
346181
346221
|
column: 6
|
|
346182
346222
|
},
|
|
346183
346223
|
end: {
|
|
346184
|
-
line:
|
|
346224
|
+
line: 458,
|
|
346185
346225
|
column: 67
|
|
346186
346226
|
}
|
|
346187
346227
|
}, {
|
|
346188
346228
|
start: {
|
|
346189
|
-
line:
|
|
346229
|
+
line: 458,
|
|
346190
346230
|
column: 6
|
|
346191
346231
|
},
|
|
346192
346232
|
end: {
|
|
346193
|
-
line:
|
|
346233
|
+
line: 458,
|
|
346194
346234
|
column: 67
|
|
346195
346235
|
}
|
|
346196
346236
|
}],
|
|
346197
|
-
line:
|
|
346237
|
+
line: 458
|
|
346198
346238
|
},
|
|
346199
346239
|
"43": {
|
|
346200
346240
|
loc: {
|
|
346201
346241
|
start: {
|
|
346202
|
-
line:
|
|
346242
|
+
line: 466,
|
|
346203
346243
|
column: 6
|
|
346204
346244
|
},
|
|
346205
346245
|
end: {
|
|
346206
|
-
line:
|
|
346246
|
+
line: 468,
|
|
346207
346247
|
column: 7
|
|
346208
346248
|
}
|
|
346209
346249
|
},
|
|
346210
346250
|
type: "if",
|
|
346211
346251
|
locations: [{
|
|
346212
346252
|
start: {
|
|
346213
|
-
line:
|
|
346253
|
+
line: 466,
|
|
346214
346254
|
column: 6
|
|
346215
346255
|
},
|
|
346216
346256
|
end: {
|
|
346217
|
-
line:
|
|
346257
|
+
line: 468,
|
|
346218
346258
|
column: 7
|
|
346219
346259
|
}
|
|
346220
346260
|
}, {
|
|
346221
346261
|
start: {
|
|
346222
|
-
line:
|
|
346262
|
+
line: 466,
|
|
346223
346263
|
column: 6
|
|
346224
346264
|
},
|
|
346225
346265
|
end: {
|
|
346226
|
-
line:
|
|
346266
|
+
line: 468,
|
|
346227
346267
|
column: 7
|
|
346228
346268
|
}
|
|
346229
346269
|
}],
|
|
346230
|
-
line:
|
|
346270
|
+
line: 466
|
|
346231
346271
|
},
|
|
346232
346272
|
"44": {
|
|
346233
346273
|
loc: {
|
|
346234
346274
|
start: {
|
|
346235
|
-
line:
|
|
346275
|
+
line: 466,
|
|
346236
346276
|
column: 10
|
|
346237
346277
|
},
|
|
346238
346278
|
end: {
|
|
346239
|
-
line:
|
|
346279
|
+
line: 466,
|
|
346240
346280
|
column: 67
|
|
346241
346281
|
}
|
|
346242
346282
|
},
|
|
346243
346283
|
type: "binary-expr",
|
|
346244
346284
|
locations: [{
|
|
346245
346285
|
start: {
|
|
346246
|
-
line:
|
|
346286
|
+
line: 466,
|
|
346247
346287
|
column: 10
|
|
346248
346288
|
},
|
|
346249
346289
|
end: {
|
|
346250
|
-
line:
|
|
346290
|
+
line: 466,
|
|
346251
346291
|
column: 25
|
|
346252
346292
|
}
|
|
346253
346293
|
}, {
|
|
346254
346294
|
start: {
|
|
346255
|
-
line:
|
|
346295
|
+
line: 466,
|
|
346256
346296
|
column: 29
|
|
346257
346297
|
},
|
|
346258
346298
|
end: {
|
|
346259
|
-
line:
|
|
346299
|
+
line: 466,
|
|
346260
346300
|
column: 67
|
|
346261
346301
|
}
|
|
346262
346302
|
}],
|
|
346263
|
-
line:
|
|
346303
|
+
line: 466
|
|
346264
346304
|
}
|
|
346265
346305
|
},
|
|
346266
346306
|
s: {
|
|
@@ -346424,7 +346464,11 @@ var ProjectMatrixvue_type_script_lang_js_cov_geimehe8j = function () {
|
|
|
346424
346464
|
"157": 0,
|
|
346425
346465
|
"158": 0,
|
|
346426
346466
|
"159": 0,
|
|
346427
|
-
"160": 0
|
|
346467
|
+
"160": 0,
|
|
346468
|
+
"161": 0,
|
|
346469
|
+
"162": 0,
|
|
346470
|
+
"163": 0,
|
|
346471
|
+
"164": 0
|
|
346428
346472
|
},
|
|
346429
346473
|
f: {
|
|
346430
346474
|
"0": 0,
|
|
@@ -346529,13 +346573,13 @@ var ProjectMatrixvue_type_script_lang_js_cov_geimehe8j = function () {
|
|
|
346529
346573
|
version: 3,
|
|
346530
346574
|
sources: ["ProjectMatrix.vue"],
|
|
346531
346575
|
names: [],
|
|
346532
|
-
mappings: ";AAmJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA",
|
|
346576
|
+
mappings: ";AAmJA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA",
|
|
346533
346577
|
file: "ProjectMatrix.vue",
|
|
346534
346578
|
sourceRoot: "src/components/projects",
|
|
346535
|
-
sourcesContent: ["<template>\n <div class=\"project-matrix\">\n <!-- Loading State -->\n <div v-if=\"loading\" class=\"loading-container\">\n <v-progress-circular indeterminate color=\"primary\" size=\"48\" />\n <div class=\"text-body-2 grey--text mt-3\">Loading matrix data...</div>\n </div>\n\n <!-- Error State -->\n <v-alert v-else-if=\"error\" type=\"error\" class=\"ma-4\">\n {{ error }}\n </v-alert>\n\n <!-- Empty State (only when no data at all, not due to filters) -->\n <v-alert v-else-if=\"!loading && matrixData.rows.length === 0\" type=\"info\" class=\"ma-4\">\n No {{ viewMode === 'individual' ? 'individuals' : 'experiments' }} or analyses found for this project.\n </v-alert>\n\n <!-- Matrix Content (always show when we have data) -->\n <template v-else>\n <!-- Filters -->\n <matrix-filters\n :view-mode=\"viewMode\"\n :statuses=\"filters.statuses\"\n :selected-columns=\"filters.selectedColumns\"\n :experiment-search=\"filters.experimentSearch\"\n :assemblies=\"filters.assemblies\"\n :techniques=\"filters.techniques\"\n :identifier-list=\"filters.identifierList\"\n :matched-identifier-count=\"matchedIdentifierCount\"\n :available-statuses=\"availableStatuses\"\n :available-columns=\"matrixData.columns\"\n :available-assemblies=\"availableAssemblies\"\n :available-techniques=\"availableTechniques\"\n :available-rows=\"matrixData.rows\"\n :hide-empty-rows=\"hideEmptyRows\"\n :has-active-filters=\"hasActiveFilters\"\n :has-highlights=\"hasHighlights\"\n :is-refreshing=\"refreshing\"\n @update:viewMode=\"handleViewModeChange\"\n @update:filters=\"updateFilters\"\n @update:hideEmptyRows=\"hideEmptyRows = $event\"\n @update-identifier-list=\"updateIdentifierList\"\n @clear-identifier-list=\"clearIdentifierList\"\n @clear-filters=\"clearFilters\"\n @clear-highlights=\"clearHighlights\"\n @refresh=\"refreshData\"\n />\n\n <!-- Spacer for visual separation -->\n <div class=\"filter-spacer\"></div>\n\n <!-- Matrix Grid -->\n <div\n class=\"matrix-scroll-container\"\n ref=\"scrollContainer\"\n >\n <!-- No matches message (inline, when filters exclude all results) -->\n <div v-if=\"filteredData.rows.length === 0 && hasActiveFilters\" class=\"no-matches-message\">\n <v-icon small color=\"grey\" class=\"mr-1\">mdi-filter-off</v-icon>\n No results match your filters\n </div>\n\n <template v-else>\n <!-- Header Row (CSS Grid for proper overflow of angled text) -->\n <div class=\"header-row\" :style=\"{ '--col-count': filteredData.columns.length }\">\n <div class=\"corner-cell\"></div>\n <div\n v-for=\"col in filteredData.columns\"\n :key=\"`header-${col}`\"\n class=\"header-cell\"\n :class=\"{ 'column-highlighted': highlightedColumnsMap[col] }\"\n @click=\"toggleColumnHighlight(col)\"\n >\n <span class=\"header-text\" :title=\"col\">{{ col }}</span>\n </div>\n </div>\n\n <!-- Data Table (same column widths as header) -->\n <table class=\"matrix-table\">\n <tbody>\n <tr v-for=\"row in filteredData.rows\" :key=\"row\">\n <td\n class=\"row-header\"\n :class=\"{ 'row-highlighted': highlightedRowsMap[row] }\"\n @click=\"toggleRowHighlight(row)\"\n >\n <span class=\"system-id\" :title=\"row\">{{ row }}</span>\n </td>\n <td\n v-for=\"col in filteredData.columns\"\n :key=\"col\"\n class=\"matrix-cell\"\n :class=\"{\n 'has-analyses': filteredData.cells[row]?.[col]?.length > 0,\n 'cell-highlighted': highlightedRowsMap[row] || highlightedColumnsMap[col],\n 'cell-selected': selectedCell && selectedCell.row === row && selectedCell.col === col\n }\"\n :data-row=\"row\"\n :data-col=\"col\"\n @click=\"handleCellClick($event, row, col)\"\n >\n <template v-if=\"filteredData.cells[row]?.[col]?.length\">\n <!-- Show stripes for small counts (\u2264 8) -->\n <div v-if=\"filteredData.cells[row][col].length <= 8\" class=\"cell-stripes\">\n <div\n v-for=\"(analysis, index) in filteredData.cells[row][col]\"\n :key=\"`${analysis.pk}-${analysis.experimentSystemId || ''}-${index}`\"\n class=\"stripe\"\n :style=\"{ backgroundColor: getStatusColor(analysis.status) }\"\n />\n </div>\n <!-- Show count badge for large counts (> 8) -->\n <div v-else class=\"cell-count-badge\" :style=\"{ backgroundColor: getPredominantColor(filteredData.cells[row][col]) }\">\n {{ filteredData.cells[row][col].length }}\n </div>\n </template>\n <span v-else class=\"empty-cell\">-</span>\n </td>\n </tr>\n </tbody>\n </table>\n </template>\n </div>\n\n <!-- Legend -->\n <matrix-legend\n :active-statuses=\"availableStatuses\"\n :view-mode=\"viewMode\"\n :stats=\"matrixStats\"\n />\n\n <!-- Native DOM Tooltip (bypasses Vue reactivity) -->\n <div\n ref=\"tooltip\"\n class=\"native-tooltip\"\n :style=\"{ display: 'none' }\"\n @mouseenter=\"handleTooltipEnter\"\n @mouseleave=\"handleTooltipLeave\"\n >\n <div class=\"tooltip-content\" ref=\"tooltipContent\"></div>\n </div>\n </template>\n </div>\n</template>\n\n<script>\nimport { fetchAllRecords } from '@/utils/api'\nimport {\n buildMatrixData,\n filterMatrixData,\n getStatusColor\n} from '@/utils/matrixHelpers'\nimport MatrixFilters from './MatrixFilters.vue'\nimport MatrixLegend from './MatrixLegend.vue'\n\nexport default {\n name: 'ProjectMatrix',\n components: {\n MatrixFilters,\n MatrixLegend\n },\n props: {\n projectId: {\n type: [String, Number],\n required: true\n }\n },\n data() {\n return {\n loading: false,\n refreshing: false,\n filtering: false,\n error: null,\n experiments: [],\n analyses: [],\n viewMode: 'experiment', // 'experiment' | 'individual'\n lockedProjectId: this.projectId, // Lock to initial project ID to prevent changes while modal is open\n matrixData: {\n rows: [],\n columns: [],\n cells: {},\n appVersions: {},\n viewMode: 'experiment',\n stats: {\n totalRows: 0,\n totalApps: 0,\n totalAnalyses: 0,\n byStatus: {},\n uniqueStatuses: [],\n uniqueAssemblies: [],\n uniqueTechniques: []\n }\n },\n filteredData: {\n rows: [],\n columns: [],\n cells: {},\n appVersions: {}\n },\n filters: {\n statuses: [],\n selectedColumns: [],\n experimentSearch: '',\n assemblies: [],\n techniques: [],\n identifierList: []\n },\n hideEmptyRows: false,\n highlightedRows: new Set(),\n highlightedColumns: new Set(),\n // Tooltip state (for native DOM tooltip)\n isOverTooltip: false,\n // Selected cell state\n selectedCell: null // { row, col }\n }\n },\n computed: {\n availableStatuses() {\n // Use pre-calculated stats from matrixData (avoids expensive iteration)\n return this.matrixData.stats?.uniqueStatuses || []\n },\n availableAssemblies() {\n // Use pre-calculated stats from matrixData\n return this.matrixData.stats?.uniqueAssemblies || []\n },\n availableTechniques() {\n // Use pre-calculated stats from matrixData\n return this.matrixData.stats?.uniqueTechniques || []\n },\n matrixStats() {\n // Use pre-calculated stats from matrixData (avoids expensive iteration on filter changes)\n // Note: Shows total stats, not filtered stats (for performance)\n const stats = this.matrixData.stats || {}\n return {\n totalRows: stats.totalRows || 0,\n totalApps: stats.totalApps || 0,\n totalAnalyses: stats.totalAnalyses || 0\n }\n },\n hasActiveFilters() {\n const columnsFiltered = this.filters.selectedColumns.length > 0 &&\n this.filters.selectedColumns.length < this.matrixData.columns.length\n return (\n this.filters.statuses.length > 0 ||\n columnsFiltered ||\n this.filters.experimentSearch ||\n this.filters.assemblies.length > 0 ||\n this.filters.techniques.length > 0 ||\n this.filters.identifierList.length > 0\n )\n },\n // Memoized highlight maps for O(1) lookup\n highlightedRowsMap() {\n const map = {}\n this.highlightedRows.forEach(r => { map[r] = true })\n return map\n },\n highlightedColumnsMap() {\n const map = {}\n this.highlightedColumns.forEach(c => { map[c] = true })\n return map\n },\n hasHighlights() {\n return this.highlightedRows.size > 0 || this.highlightedColumns.size > 0\n },\n // Count how many identifiers from the list actually exist in the data\n matchedIdentifierCount() {\n if (this.filters.identifierList.length === 0) return 0\n\n // Build case-insensitive set of all row IDs in the matrix\n const rowSet = new Set(\n this.matrixData.rows.map(row => row.toLowerCase())\n )\n\n // Count how many identifiers from the list exist in the data\n return this.filters.identifierList.filter(id =>\n rowSet.has(id.toLowerCase())\n ).length\n }\n },\n watch: {\n projectId: {\n immediate: true,\n handler(newId, oldId) {\n // Only fetch data on initial load (when oldId is undefined)\n // Ignore subsequent changes to keep matrix locked to original project\n if (oldId === undefined) {\n this.fetchData()\n }\n }\n },\n filters: {\n deep: true,\n handler() {\n this.applyFilters()\n }\n },\n hideEmptyRows() {\n this.applyFilters()\n },\n matrixData() {\n this.applyFilters()\n },\n 'filteredData.rows'() {\n // Reset scroll when data changes\n if (this.$refs.scrollContainer) {\n this.$refs.scrollContainer.scrollTop = 0\n }\n }\n },\n mounted() {\n // Close tooltip when clicking outside\n document.addEventListener('click', this.handleDocumentClick)\n },\n beforeDestroy() {\n document.removeEventListener('click', this.handleDocumentClick)\n },\n methods: {\n async fetchData(isRefresh = false) {\n // Set appropriate loading state\n if (isRefresh) {\n this.refreshing = true\n } else {\n this.loading = true\n }\n this.error = null\n\n // Store current filters before fetch (for refresh)\n const currentFilters = isRefresh ? { ...this.filters } : null\n\n try {\n // Fetch all experiments and analyses (with pagination)\n // Use lockedProjectId to prevent refetching if prop changes while modal is open\n const [experimentsRes, analysesRes] = await Promise.all([\n fetchAllRecords('experiments', {\n projects__pk: this.lockedProjectId,\n 'fields!': 'results,analytics,raw_data,bam_files'\n }),\n fetchAllRecords('analyses', {\n targets__projects__pk: this.lockedProjectId,\n 'fields!': 'targets,references,analytics,results'\n })\n ])\n\n this.experiments = experimentsRes.results || []\n this.analyses = analysesRes.results || []\n\n // Build matrix data and freeze it to prevent Vue reactivity overhead\n this.rebuildMatrixData()\n\n // Initialize selected columns to all columns (show all by default on initial load)\n // On refresh, restore previous filters\n if (isRefresh && currentFilters) {\n // Restore filters but ensure selectedColumns are still valid\n this.filters = {\n ...currentFilters,\n // Keep only columns that still exist after refresh\n selectedColumns: currentFilters.selectedColumns.filter(col =>\n this.matrixData.columns.includes(col)\n )\n }\n // If all selected columns were removed, default to all\n if (this.filters.selectedColumns.length === 0) {\n this.filters.selectedColumns = [...this.matrixData.columns]\n }\n } else {\n this.filters.selectedColumns = [...this.matrixData.columns]\n }\n } catch (err) {\n this.error = `Failed to load data: ${err.message}`\n console.error('Error loading matrix data:', err)\n } finally {\n if (isRefresh) {\n this.refreshing = false\n } else {\n this.loading = false\n }\n }\n },\n\n async refreshData() {\n await this.fetchData(true)\n },\n\n async applyFilters() {\n // Use requestAnimationFrame to yield to browser and prevent UI blocking\n await new Promise(resolve => requestAnimationFrame(resolve))\n\n // Filter matrix data (already frozen internally)\n // Include hideEmptyRows from component state\n this.filteredData = filterMatrixData(this.matrixData, {\n ...this.filters,\n hideEmptyRows: this.hideEmptyRows\n })\n },\n\n updateFilters(newFilters) {\n this.filters = { ...newFilters }\n },\n\n updateIdentifierList(identifiers) {\n this.filters.identifierList = identifiers\n },\n\n clearIdentifierList() {\n this.filters.identifierList = []\n },\n\n handleViewModeChange(newMode) {\n this.viewMode = newMode\n // Clear highlights and selection when switching views\n this.highlightedRows = new Set()\n this.highlightedColumns = new Set()\n this.selectedCell = null\n this.hideTooltipNative()\n // Rebuild matrix data with new view mode\n this.rebuildMatrixData()\n },\n\n rebuildMatrixData() {\n // buildMatrixData already freezes everything internally for performance\n this.matrixData = buildMatrixData(this.experiments, this.analyses, this.viewMode)\n // The watcher on matrixData will automatically call applyFilters()\n },\n\n handleOpenAnalysis(analysisId) {\n this.hideTooltipNative()\n this.$emit('open-analysis', analysisId)\n },\n\n toggleRowHighlight(row) {\n const newSet = new Set(this.highlightedRows)\n if (newSet.has(row)) {\n newSet.delete(row)\n } else {\n newSet.add(row)\n }\n this.highlightedRows = newSet\n },\n\n toggleColumnHighlight(col) {\n const newSet = new Set(this.highlightedColumns)\n if (newSet.has(col)) {\n newSet.delete(col)\n } else {\n newSet.add(col)\n }\n this.highlightedColumns = newSet\n },\n\n clearHighlights() {\n this.highlightedRows = new Set()\n this.highlightedColumns = new Set()\n },\n\n clearFilters() {\n this.filters = {\n statuses: [],\n selectedColumns: [],\n experimentSearch: '',\n assemblies: [],\n techniques: [],\n identifierList: []\n }\n },\n\n // Cell click handler - uses native DOM to avoid Vue re-renders\n handleCellClick(event, row, col) {\n const analyses = this.filteredData.cells[row]?.[col] || []\n if (analyses.length === 0) return\n\n // Set selected cell\n this.selectedCell = { row, col }\n\n const rect = event.currentTarget.getBoundingClientRect()\n const tooltip = this.$refs.tooltip\n const content = this.$refs.tooltipContent\n\n if (!tooltip || !content) return\n\n // Store analyses for later use\n this._currentAnalyses = analyses\n\n // Build tooltip HTML directly (no Vue reactivity)\n const appName = analyses[0]?.application?.name || 'Unknown'\n let html = `<div class=\"tooltip-header\">${appName} - ${analyses.length} analysis${analyses.length !== 1 ? 'es' : ''}</div>`\n html += '<div class=\"tooltip-list\">'\n\n if (this.viewMode === 'individual') {\n // Group analyses by experiment for individual view\n const byExperiment = {}\n analyses.forEach(a => {\n const expId = a.experimentSystemId || 'Unknown'\n if (!byExperiment[expId]) {\n byExperiment[expId] = []\n }\n byExperiment[expId].push(a)\n })\n\n // Render grouped by experiment\n Object.entries(byExperiment).forEach(([expId, expAnalyses]) => {\n html += `<div class=\"experiment-group-header\">${expId}</div>`\n expAnalyses.forEach(a => {\n const color = this.getStatusColor(a.status)\n html += `<div class=\"tooltip-item\" data-pk=\"${a.pk}\">`\n html += `<span class=\"status-dot\" style=\"background:${color}\"></span>`\n html += `<span class=\"analysis-pk\">${a.pk}</span>`\n html += `<span class=\"sep\">|</span>`\n html += `<span class=\"version\">v${a.version || 'N/A'}</span>`\n if (a.assembly) html += `<span class=\"assembly\"> \xB7 ${a.assembly}</span>`\n html += `<span class=\"status-chip\" style=\"background:${color}\">${a.status}</span>`\n html += '</div>'\n })\n })\n } else {\n // Flat list for experiment view\n analyses.forEach(a => {\n const color = this.getStatusColor(a.status)\n html += `<div class=\"tooltip-item\" data-pk=\"${a.pk}\">`\n html += `<span class=\"status-dot\" style=\"background:${color}\"></span>`\n html += `<span class=\"analysis-pk\">${a.pk}</span>`\n html += `<span class=\"sep\">|</span>`\n html += `<span class=\"version\">v${a.version || 'N/A'}</span>`\n if (a.assembly) html += `<span class=\"assembly\"> \xB7 ${a.assembly}</span>`\n html += `<span class=\"status-chip\" style=\"background:${color}\">${a.status}</span>`\n html += '</div>'\n })\n }\n\n html += '</div>'\n content.innerHTML = html\n\n // Add click handlers to items\n content.querySelectorAll('.tooltip-item').forEach(item => {\n item.onclick = () => {\n const pk = parseInt(item.dataset.pk)\n this.hideTooltipNative()\n this.handleOpenAnalysis(pk)\n }\n })\n\n // Position and show tooltip\n tooltip.style.display = 'block'\n tooltip.style.left = `${rect.left + rect.width / 2}px`\n tooltip.style.top = `${rect.top - 8}px`\n },\n\n hideTooltipNative() {\n const tooltip = this.$refs.tooltip\n if (tooltip) {\n tooltip.style.display = 'none'\n }\n },\n\n getStatusColor,\n\n getPredominantColor(analyses) {\n // Count occurrences of each status\n const statusCounts = {}\n analyses.forEach(a => {\n statusCounts[a.status] = (statusCounts[a.status] || 0) + 1\n })\n\n // Find the most common status\n let maxCount = 0\n let predominantStatus = 'SUCCEEDED' // default\n Object.entries(statusCounts).forEach(([status, count]) => {\n if (count > maxCount) {\n maxCount = count\n predominantStatus = status\n }\n })\n\n return getStatusColor(predominantStatus)\n },\n\n handleTooltipEnter() {\n this.isOverTooltip = true\n },\n\n handleTooltipLeave() {\n this.isOverTooltip = false\n this.hideTooltipNative()\n },\n\n handleDocumentClick(event) {\n const tooltip = this.$refs.tooltip\n\n // Check if click was inside tooltip\n if (tooltip && tooltip.contains(event.target)) return\n\n // Check if click was on a matrix cell (this opens tooltip, don't close it)\n if (event.target.closest('.matrix-cell.has-analyses')) return\n\n // Hide tooltip if visible\n this.hideTooltipNative()\n\n // Only clear selection if clicking inside the matrix scroll container\n // (not when clicking tabs, filters, etc.)\n const scrollContainer = this.$refs.scrollContainer\n if (scrollContainer && scrollContainer.contains(event.target)) {\n this.selectedCell = null\n }\n }\n }\n}\n</script>\n\n<style scoped>\n.project-matrix {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 400px;\n}\n\n.loading-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-height: 300px;\n}\n\n.filter-spacer {\n height: 16px;\n background: white;\n}\n\n.matrix-scroll-container {\n flex: 1;\n overflow: auto;\n max-height: calc(80vh - 180px);\n}\n\n.no-matches-message {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n color: #666;\n font-size: 13px;\n}\n\n.matrix-table {\n border-collapse: separate;\n border-spacing: 0;\n table-layout: fixed;\n}\n\n/* Header row - CSS Grid for proper text overflow */\n.header-row {\n display: grid;\n grid-template-columns: 200px repeat(var(--col-count), 50px);\n position: sticky;\n top: 0;\n z-index: 10;\n background: white;\n min-width: fit-content;\n}\n\n/* Corner cell - top-left */\n.corner-cell {\n position: sticky;\n left: 0;\n z-index: 11;\n background: white;\n border-bottom: 2px solid #5b5dff;\n border-right: 2px solid #5b5dff;\n height: 130px;\n width: 200px;\n box-sizing: border-box;\n}\n\n/* Column headers - angled text */\n.header-cell {\n position: relative;\n height: 130px;\n width: 50px;\n border-bottom: 2px solid #5b5dff;\n background: white;\n overflow: visible;\n cursor: pointer;\n}\n\n.header-cell:hover .header-text {\n background: #FFF6DB;\n border-radius: 2px;\n}\n\n.header-cell.column-highlighted .header-text {\n background: #FFF0D9;\n border-radius: 2px;\n font-weight: 700;\n color: #000;\n}\n\n.header-text {\n position: absolute;\n bottom: 8px;\n left: 50%;\n transform: rotate(-45deg);\n transform-origin: bottom left;\n white-space: nowrap;\n font-size: 11px;\n font-weight: 500;\n color: #333;\n z-index: 1;\n}\n\n/* Row headers - width must match corner-cell (200px) */\ntd.row-header {\n position: sticky;\n left: 0;\n z-index: 1;\n background: white;\n border-right: 2px solid #5b5dff;\n padding: 0 8px;\n width: 200px;\n min-width: 200px;\n max-width: 200px;\n height: 24px;\n border-bottom: 1px solid #e0e0e0;\n cursor: pointer;\n vertical-align: middle;\n box-sizing: border-box;\n}\n\n.row-header.row-highlighted {\n background: #FFE8C5 !important;\n}\n\n.row-header.row-highlighted .system-id {\n font-weight: 700;\n color: #000;\n}\n\n.system-id {\n font-size: 11px;\n font-family: monospace;\n color: #333;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* Hover highlight for row header */\n.row-header:hover {\n background: #FFF0D9;\n}\n\n.row-header:hover .system-id {\n font-weight: 600;\n}\n\n/* Table cell styles - width must match header-cell (50px) */\ntd.matrix-cell {\n width: 50px;\n min-width: 50px;\n max-width: 50px;\n height: 24px;\n border-right: 1px solid #e0e0e0;\n border-bottom: 1px solid #e0e0e0;\n cursor: default;\n background: #fafafa;\n padding: 0;\n vertical-align: middle;\n box-sizing: border-box;\n}\n\n.matrix-cell.has-analyses {\n cursor: pointer;\n background: white;\n}\n\n.matrix-cell.has-analyses:hover,\n.matrix-cell.cell-selected {\n border-right-color: #5b5dff;\n border-bottom-color: #5b5dff;\n background: #f0f0ff;\n}\n\n.matrix-cell.cell-highlighted {\n background: #FFE8C5;\n}\n\n.cell-stripes {\n display: flex;\n align-items: stretch;\n justify-content: center;\n gap: 1px;\n height: 100%;\n width: 100%;\n padding: 2px 4px;\n}\n\n.stripe {\n flex: 0 0 auto;\n width: 3px;\n min-width: 2px;\n max-width: 5px;\n border-radius: 1px;\n}\n\n.cell-count-badge {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n width: 100%;\n color: white;\n font-size: 10px;\n font-weight: 600;\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.3);\n}\n\n.empty-cell {\n display: flex;\n align-items: center;\n justify-content: center;\n color: #ccc;\n font-size: 10px;\n height: 100%;\n}\n\n/* Native tooltip styles - use ::v-deep for dynamically generated content */\n.native-tooltip {\n position: fixed;\n transform: translateX(-50%) translateY(-100%);\n z-index: 1000;\n background: white;\n border-radius: 4px;\n box-shadow: 0 2px 8px rgba(0,0,0,0.2);\n min-width: 280px;\n max-width: 350px;\n max-height: 300px;\n overflow-y: auto;\n}\n\n.native-tooltip ::v-deep .tooltip-header {\n padding: 8px 12px;\n background: #f5f5f5;\n font-weight: 500;\n font-size: 13px;\n border-bottom: 1px solid #e0e0e0;\n}\n\n.native-tooltip ::v-deep .tooltip-list {\n padding: 4px 0;\n}\n\n.native-tooltip ::v-deep .tooltip-item {\n display: flex;\n align-items: center;\n padding: 6px 12px;\n cursor: pointer;\n font-size: 12px;\n}\n\n.native-tooltip ::v-deep .tooltip-item:hover {\n background: #e3f2fd;\n}\n\n.native-tooltip ::v-deep .tooltip-item .status-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n margin-right: 8px;\n flex-shrink: 0;\n}\n\n.native-tooltip ::v-deep .tooltip-item .analysis-pk {\n color: #1976d2;\n font-weight: 500;\n}\n\n.native-tooltip ::v-deep .tooltip-item .sep {\n margin: 0 6px;\n color: #999;\n}\n\n.native-tooltip ::v-deep .tooltip-item .version {\n color: #666;\n}\n\n.native-tooltip ::v-deep .tooltip-item .assembly {\n color: #999;\n}\n\n.native-tooltip ::v-deep .tooltip-item .status-chip {\n margin-left: auto;\n padding: 2px 6px;\n border-radius: 3px;\n color: white;\n font-size: 10px;\n font-weight: 500;\n}\n\n.native-tooltip ::v-deep .experiment-group-header {\n padding: 6px 12px 4px;\n font-size: 11px;\n font-weight: 600;\n color: #1976d2;\n background: #f8f9fa;\n border-top: 1px solid #e0e0e0;\n font-family: monospace;\n}\n\n.native-tooltip ::v-deep .experiment-group-header:first-child {\n border-top: none;\n}\n</style>\n"]
|
|
346579
|
+
sourcesContent: ["<template>\n <div class=\"project-matrix\">\n <!-- Loading State -->\n <div v-if=\"loading\" class=\"loading-container\">\n <v-progress-circular indeterminate color=\"primary\" size=\"48\" />\n <div class=\"text-body-2 grey--text mt-3\">Loading matrix data...</div>\n </div>\n\n <!-- Error State -->\n <v-alert v-else-if=\"error\" type=\"error\" class=\"ma-4\">\n {{ error }}\n </v-alert>\n\n <!-- Empty State (only when no data at all, not due to filters) -->\n <v-alert v-else-if=\"!loading && matrixData.rows.length === 0\" type=\"info\" class=\"ma-4\">\n No {{ viewMode === 'individual' ? 'individuals' : 'experiments' }} or analyses found for this project.\n </v-alert>\n\n <!-- Matrix Content (always show when we have data) -->\n <template v-else>\n <!-- Filters -->\n <matrix-filters\n :view-mode=\"viewMode\"\n :statuses=\"filters.statuses\"\n :selected-columns=\"filters.selectedColumns\"\n :experiment-search=\"filters.experimentSearch\"\n :assemblies=\"filters.assemblies\"\n :techniques=\"filters.techniques\"\n :identifier-list=\"filters.identifierList\"\n :matched-identifier-count=\"matchedIdentifierCount\"\n :available-statuses=\"availableStatuses\"\n :available-columns=\"matrixData.columns\"\n :available-assemblies=\"availableAssemblies\"\n :available-techniques=\"availableTechniques\"\n :available-rows=\"matrixData.rows\"\n :hide-empty-rows=\"hideEmptyRows\"\n :has-active-filters=\"hasActiveFilters\"\n :has-highlights=\"hasHighlights\"\n :is-refreshing=\"refreshing\"\n @update:viewMode=\"handleViewModeChange\"\n @update:filters=\"updateFilters\"\n @update:hideEmptyRows=\"hideEmptyRows = $event\"\n @update-identifier-list=\"updateIdentifierList\"\n @clear-identifier-list=\"clearIdentifierList\"\n @clear-filters=\"clearFilters\"\n @clear-highlights=\"clearHighlights\"\n @refresh=\"refreshData\"\n />\n\n <!-- Spacer for visual separation -->\n <div class=\"filter-spacer\"></div>\n\n <!-- Matrix Grid -->\n <div\n class=\"matrix-scroll-container\"\n ref=\"scrollContainer\"\n >\n <!-- No matches message (inline, when filters exclude all results) -->\n <div v-if=\"filteredData.rows.length === 0 && hasActiveFilters\" class=\"no-matches-message\">\n <v-icon small color=\"grey\" class=\"mr-1\">mdi-filter-off</v-icon>\n No results match your filters\n </div>\n\n <template v-else>\n <!-- Header Row (CSS Grid for proper overflow of angled text) -->\n <div class=\"header-row\" :style=\"{ '--col-count': filteredData.columns.length }\">\n <div class=\"corner-cell\"></div>\n <div\n v-for=\"col in filteredData.columns\"\n :key=\"`header-${col}`\"\n class=\"header-cell\"\n :class=\"{ 'column-highlighted': highlightedColumnsMap[col] }\"\n @click=\"toggleColumnHighlight(col)\"\n >\n <span class=\"header-text\" :title=\"col\">{{ col }}</span>\n </div>\n </div>\n\n <!-- Data Table (same column widths as header) -->\n <table class=\"matrix-table\">\n <tbody>\n <tr v-for=\"row in filteredData.rows\" :key=\"row\">\n <td\n class=\"row-header\"\n :class=\"{ 'row-highlighted': highlightedRowsMap[row] }\"\n @click=\"toggleRowHighlight(row)\"\n >\n <span class=\"system-id\" :title=\"row\">{{ row }}</span>\n </td>\n <td\n v-for=\"col in filteredData.columns\"\n :key=\"col\"\n class=\"matrix-cell\"\n :class=\"{\n 'has-analyses': filteredData.cells[row]?.[col]?.length > 0,\n 'cell-highlighted': highlightedRowsMap[row] || highlightedColumnsMap[col],\n 'cell-selected': selectedCell && selectedCell.row === row && selectedCell.col === col\n }\"\n :data-row=\"row\"\n :data-col=\"col\"\n @click=\"handleCellClick($event, row, col)\"\n >\n <template v-if=\"filteredData.cells[row]?.[col]?.length\">\n <!-- Show stripes for small counts (\u2264 8) -->\n <div v-if=\"filteredData.cells[row][col].length <= 8\" class=\"cell-stripes\">\n <div\n v-for=\"(analysis, index) in filteredData.cells[row][col]\"\n :key=\"`${analysis.pk}-${analysis.experimentSystemId || ''}-${index}`\"\n class=\"stripe\"\n :style=\"{ backgroundColor: getStatusColor(analysis.status) }\"\n />\n </div>\n <!-- Show count badge for large counts (> 8) -->\n <div v-else class=\"cell-count-badge\" :style=\"{ backgroundColor: getPredominantColor(filteredData.cells[row][col]) }\">\n {{ filteredData.cells[row][col].length }}\n </div>\n </template>\n <span v-else class=\"empty-cell\">-</span>\n </td>\n </tr>\n </tbody>\n </table>\n </template>\n </div>\n\n <!-- Legend -->\n <matrix-legend\n :active-statuses=\"availableStatuses\"\n :view-mode=\"viewMode\"\n :stats=\"matrixStats\"\n />\n\n <!-- Native DOM Tooltip (bypasses Vue reactivity) -->\n <div\n ref=\"tooltip\"\n class=\"native-tooltip\"\n style=\"display: none;\"\n @mouseenter=\"handleTooltipEnter\"\n @mouseleave=\"handleTooltipLeave\"\n >\n <div class=\"tooltip-content\" ref=\"tooltipContent\"></div>\n </div>\n </template>\n </div>\n</template>\n\n<script>\nimport { fetchAllRecords } from '@/utils/api'\nimport {\n buildMatrixData,\n filterMatrixData,\n getStatusColor\n} from '@/utils/matrixHelpers'\nimport MatrixFilters from './MatrixFilters.vue'\nimport MatrixLegend from './MatrixLegend.vue'\n\nexport default {\n name: 'ProjectMatrix',\n components: {\n MatrixFilters,\n MatrixLegend\n },\n props: {\n projectId: {\n type: [String, Number],\n required: true\n }\n },\n data() {\n return {\n loading: false,\n refreshing: false,\n filtering: false,\n error: null,\n experiments: [],\n analyses: [],\n viewMode: 'experiment', // 'experiment' | 'individual'\n lockedProjectId: this.projectId, // Lock to initial project ID to prevent changes while modal is open\n matrixData: {\n rows: [],\n columns: [],\n cells: {},\n appVersions: {},\n viewMode: 'experiment',\n stats: {\n totalRows: 0,\n totalApps: 0,\n totalAnalyses: 0,\n byStatus: {},\n uniqueStatuses: [],\n uniqueAssemblies: [],\n uniqueTechniques: []\n }\n },\n filteredData: {\n rows: [],\n columns: [],\n cells: {},\n appVersions: {}\n },\n filters: {\n statuses: [],\n selectedColumns: [],\n experimentSearch: '',\n assemblies: [],\n techniques: [],\n identifierList: []\n },\n hideEmptyRows: false,\n highlightedRows: new Set(),\n highlightedColumns: new Set(),\n // Tooltip state (for native DOM tooltip)\n isOverTooltip: false,\n // Selected cell state\n selectedCell: null // { row, col }\n }\n },\n computed: {\n availableStatuses() {\n // Use pre-calculated stats from matrixData (avoids expensive iteration)\n return this.matrixData.stats?.uniqueStatuses || []\n },\n availableAssemblies() {\n // Use pre-calculated stats from matrixData\n return this.matrixData.stats?.uniqueAssemblies || []\n },\n availableTechniques() {\n // Use pre-calculated stats from matrixData\n return this.matrixData.stats?.uniqueTechniques || []\n },\n matrixStats() {\n // Use pre-calculated stats from matrixData (avoids expensive iteration on filter changes)\n // Note: Shows total stats, not filtered stats (for performance)\n const stats = this.matrixData.stats || {}\n return {\n totalRows: stats.totalRows || 0,\n totalApps: stats.totalApps || 0,\n totalAnalyses: stats.totalAnalyses || 0\n }\n },\n hasActiveFilters() {\n const columnsFiltered = this.filters.selectedColumns.length > 0 &&\n this.filters.selectedColumns.length < this.matrixData.columns.length\n return (\n this.filters.statuses.length > 0 ||\n columnsFiltered ||\n this.filters.experimentSearch ||\n this.filters.assemblies.length > 0 ||\n this.filters.techniques.length > 0 ||\n this.filters.identifierList.length > 0\n )\n },\n // Memoized highlight maps for O(1) lookup\n highlightedRowsMap() {\n const map = {}\n this.highlightedRows.forEach(r => { map[r] = true })\n return map\n },\n highlightedColumnsMap() {\n const map = {}\n this.highlightedColumns.forEach(c => { map[c] = true })\n return map\n },\n hasHighlights() {\n return this.highlightedRows.size > 0 || this.highlightedColumns.size > 0\n },\n // Count how many identifiers from the list actually exist in the data\n matchedIdentifierCount() {\n if (this.filters.identifierList.length === 0) return 0\n\n // Build case-insensitive set of all row IDs in the matrix\n const rowSet = new Set(\n this.matrixData.rows.map(row => row.toLowerCase())\n )\n\n // Count how many identifiers from the list exist in the data\n return this.filters.identifierList.filter(id =>\n rowSet.has(id.toLowerCase())\n ).length\n }\n },\n watch: {\n projectId: {\n immediate: true,\n handler(newId, oldId) {\n // Only fetch data on initial load (when oldId is undefined)\n // Ignore subsequent changes to keep matrix locked to original project\n if (oldId === undefined) {\n this.fetchData()\n }\n }\n },\n filters: {\n deep: true,\n handler() {\n this.applyFilters()\n }\n },\n hideEmptyRows() {\n this.applyFilters()\n },\n matrixData() {\n this.applyFilters()\n },\n 'filteredData.rows'() {\n // Reset scroll when data changes\n if (this.$refs.scrollContainer) {\n this.$refs.scrollContainer.scrollTop = 0\n }\n }\n },\n mounted() {\n // Close tooltip when clicking outside\n document.addEventListener('click', this.handleDocumentClick)\n },\n beforeDestroy() {\n document.removeEventListener('click', this.handleDocumentClick)\n },\n methods: {\n async fetchData(isRefresh = false) {\n // Set appropriate loading state\n if (isRefresh) {\n this.refreshing = true\n } else {\n this.loading = true\n }\n this.error = null\n\n // Store current filters before fetch (for refresh)\n const currentFilters = isRefresh ? { ...this.filters } : null\n\n try {\n // Fetch all experiments and analyses (with pagination)\n // Use lockedProjectId to prevent refetching if prop changes while modal is open\n const [experimentsRes, analysesRes] = await Promise.all([\n fetchAllRecords('experiments', {\n projects__pk: this.lockedProjectId,\n 'fields!': 'results,analytics,raw_data,bam_files'\n }),\n fetchAllRecords('analyses', {\n targets__projects__pk: this.lockedProjectId,\n 'fields!': 'targets,references,analytics,results'\n })\n ])\n\n this.experiments = experimentsRes.results || []\n this.analyses = analysesRes.results || []\n\n // Build matrix data and freeze it to prevent Vue reactivity overhead\n this.rebuildMatrixData()\n\n // Initialize selected columns to all columns (show all by default on initial load)\n // On refresh, restore previous filters\n if (isRefresh && currentFilters) {\n // Restore filters but ensure selectedColumns are still valid\n this.filters = {\n ...currentFilters,\n // Keep only columns that still exist after refresh\n selectedColumns: currentFilters.selectedColumns.filter(col =>\n this.matrixData.columns.includes(col)\n )\n }\n // If all selected columns were removed, default to all\n if (this.filters.selectedColumns.length === 0) {\n this.filters.selectedColumns = [...this.matrixData.columns]\n }\n } else {\n this.filters.selectedColumns = [...this.matrixData.columns]\n }\n } catch (err) {\n this.error = `Failed to load data: ${err.message}`\n console.error('Error loading matrix data:', err)\n } finally {\n if (isRefresh) {\n this.refreshing = false\n } else {\n this.loading = false\n }\n }\n },\n\n async refreshData() {\n await this.fetchData(true)\n },\n\n async applyFilters() {\n // Use requestAnimationFrame to yield to browser and prevent UI blocking\n await new Promise(resolve => requestAnimationFrame(resolve))\n\n // Filter matrix data (already frozen internally)\n // Include hideEmptyRows from component state\n this.filteredData = filterMatrixData(this.matrixData, {\n ...this.filters,\n hideEmptyRows: this.hideEmptyRows\n })\n },\n\n updateFilters(newFilters) {\n this.filters = { ...newFilters }\n },\n\n updateIdentifierList(identifiers) {\n this.filters.identifierList = identifiers\n },\n\n clearIdentifierList() {\n this.filters.identifierList = []\n },\n\n handleViewModeChange(newMode) {\n this.viewMode = newMode\n // Clear highlights and selection when switching views\n this.highlightedRows = new Set()\n this.highlightedColumns = new Set()\n this.selectedCell = null\n this.hideTooltipNative()\n // Rebuild matrix data with new view mode\n this.rebuildMatrixData()\n },\n\n rebuildMatrixData() {\n // buildMatrixData already freezes everything internally for performance\n this.matrixData = buildMatrixData(this.experiments, this.analyses, this.viewMode)\n // The watcher on matrixData will automatically call applyFilters()\n },\n\n handleOpenAnalysis(analysisId) {\n this.hideTooltipNative()\n this.$emit('open-analysis', analysisId)\n },\n\n toggleRowHighlight(row) {\n const newSet = new Set(this.highlightedRows)\n if (newSet.has(row)) {\n newSet.delete(row)\n } else {\n newSet.add(row)\n }\n this.highlightedRows = newSet\n },\n\n toggleColumnHighlight(col) {\n const newSet = new Set(this.highlightedColumns)\n if (newSet.has(col)) {\n newSet.delete(col)\n } else {\n newSet.add(col)\n }\n this.highlightedColumns = newSet\n },\n\n clearHighlights() {\n this.highlightedRows = new Set()\n this.highlightedColumns = new Set()\n },\n\n clearFilters() {\n this.filters = {\n statuses: [],\n selectedColumns: [],\n experimentSearch: '',\n assemblies: [],\n techniques: [],\n identifierList: []\n }\n },\n\n // Cell click handler - uses native DOM to avoid Vue re-renders\n handleCellClick(event, row, col) {\n console.log('handleCellClick called:', { row, col })\n const analyses = this.filteredData.cells[row]?.[col] || []\n console.log('analyses:', analyses.length)\n if (analyses.length === 0) return\n\n // Set selected cell\n this.selectedCell = { row, col }\n\n const rect = event.currentTarget.getBoundingClientRect()\n const tooltip = this.$refs.tooltip\n const content = this.$refs.tooltipContent\n\n console.log('tooltip ref:', !!tooltip, 'content ref:', !!content)\n if (!tooltip || !content) return\n\n // Store analyses for later use\n this._currentAnalyses = analyses\n\n // Build tooltip HTML directly (no Vue reactivity)\n const appName = analyses[0]?.application?.name || 'Unknown'\n let html = `<div class=\"tooltip-header\">${appName} - ${analyses.length} analysis${analyses.length !== 1 ? 'es' : ''}</div>`\n html += '<div class=\"tooltip-list\">'\n\n if (this.viewMode === 'individual') {\n // Group analyses by experiment for individual view\n const byExperiment = {}\n analyses.forEach(a => {\n const expId = a.experimentSystemId || 'Unknown'\n if (!byExperiment[expId]) {\n byExperiment[expId] = []\n }\n byExperiment[expId].push(a)\n })\n\n // Render grouped by experiment\n Object.entries(byExperiment).forEach(([expId, expAnalyses]) => {\n html += `<div class=\"experiment-group-header\">${expId}</div>`\n expAnalyses.forEach(a => {\n const color = this.getStatusColor(a.status)\n html += `<div class=\"tooltip-item\" data-pk=\"${a.pk}\">`\n html += `<span class=\"status-dot\" style=\"background:${color}\"></span>`\n html += `<span class=\"analysis-pk\">${a.pk}</span>`\n html += `<span class=\"sep\">|</span>`\n html += `<span class=\"version\">v${a.version || 'N/A'}</span>`\n if (a.assembly) html += `<span class=\"assembly\"> \xB7 ${a.assembly}</span>`\n html += `<span class=\"status-chip\" style=\"background:${color}\">${a.status}</span>`\n html += '</div>'\n })\n })\n } else {\n // Flat list for experiment view\n analyses.forEach(a => {\n const color = this.getStatusColor(a.status)\n html += `<div class=\"tooltip-item\" data-pk=\"${a.pk}\">`\n html += `<span class=\"status-dot\" style=\"background:${color}\"></span>`\n html += `<span class=\"analysis-pk\">${a.pk}</span>`\n html += `<span class=\"sep\">|</span>`\n html += `<span class=\"version\">v${a.version || 'N/A'}</span>`\n if (a.assembly) html += `<span class=\"assembly\"> \xB7 ${a.assembly}</span>`\n html += `<span class=\"status-chip\" style=\"background:${color}\">${a.status}</span>`\n html += '</div>'\n })\n }\n\n html += '</div>'\n content.innerHTML = html\n\n // Add click handlers to items\n content.querySelectorAll('.tooltip-item').forEach(item => {\n item.onclick = () => {\n const pk = parseInt(item.dataset.pk)\n this.hideTooltipNative()\n this.handleOpenAnalysis(pk)\n }\n })\n\n // Position and show tooltip\n tooltip.style.display = 'block'\n tooltip.style.left = `${rect.left + rect.width / 2}px`\n tooltip.style.top = `${rect.top - 8}px`\n console.log('tooltip positioned at:', {\n left: tooltip.style.left,\n top: tooltip.style.top,\n rectTop: rect.top,\n rectLeft: rect.left,\n display: tooltip.style.display\n })\n },\n\n hideTooltipNative() {\n const tooltip = this.$refs.tooltip\n if (tooltip) {\n tooltip.style.display = 'none'\n }\n },\n\n getStatusColor,\n\n getPredominantColor(analyses) {\n // Count occurrences of each status\n const statusCounts = {}\n analyses.forEach(a => {\n statusCounts[a.status] = (statusCounts[a.status] || 0) + 1\n })\n\n // Find the most common status\n let maxCount = 0\n let predominantStatus = 'SUCCEEDED' // default\n Object.entries(statusCounts).forEach(([status, count]) => {\n if (count > maxCount) {\n maxCount = count\n predominantStatus = status\n }\n })\n\n return getStatusColor(predominantStatus)\n },\n\n handleTooltipEnter() {\n this.isOverTooltip = true\n },\n\n handleTooltipLeave() {\n this.isOverTooltip = false\n this.hideTooltipNative()\n },\n\n handleDocumentClick(event) {\n const tooltip = this.$refs.tooltip\n\n // Check if click was inside tooltip\n if (tooltip && tooltip.contains(event.target)) return\n\n // Check if click was on a matrix cell (this opens tooltip, don't close it)\n if (event.target.closest('.matrix-cell.has-analyses')) return\n\n // Hide tooltip if visible\n this.hideTooltipNative()\n\n // Only clear selection if clicking inside the matrix scroll container\n // (not when clicking tabs, filters, etc.)\n const scrollContainer = this.$refs.scrollContainer\n if (scrollContainer && scrollContainer.contains(event.target)) {\n this.selectedCell = null\n }\n }\n }\n}\n</script>\n\n<style scoped>\n.project-matrix {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 400px;\n}\n\n.loading-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-height: 300px;\n}\n\n.filter-spacer {\n height: 16px;\n background: white;\n}\n\n.matrix-scroll-container {\n flex: 1;\n overflow: auto;\n max-height: calc(80vh - 180px);\n}\n\n.no-matches-message {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n color: #666;\n font-size: 13px;\n}\n\n.matrix-table {\n border-collapse: separate;\n border-spacing: 0;\n table-layout: fixed;\n}\n\n/* Header row - CSS Grid for proper text overflow */\n.header-row {\n display: grid;\n grid-template-columns: 200px repeat(var(--col-count), 50px);\n position: sticky;\n top: 0;\n z-index: 10;\n background: white;\n min-width: fit-content;\n}\n\n/* Corner cell - top-left */\n.corner-cell {\n position: sticky;\n left: 0;\n z-index: 11;\n background: white;\n border-bottom: 2px solid #5b5dff;\n border-right: 2px solid #5b5dff;\n height: 130px;\n width: 200px;\n box-sizing: border-box;\n}\n\n/* Column headers - angled text */\n.header-cell {\n position: relative;\n height: 130px;\n width: 50px;\n border-bottom: 2px solid #5b5dff;\n background: white;\n overflow: visible;\n cursor: pointer;\n}\n\n.header-cell:hover .header-text {\n background: #FFF6DB;\n border-radius: 2px;\n}\n\n.header-cell.column-highlighted .header-text {\n background: #FFF0D9;\n border-radius: 2px;\n font-weight: 700;\n color: #000;\n}\n\n.header-text {\n position: absolute;\n bottom: 8px;\n left: 50%;\n transform: rotate(-45deg);\n transform-origin: bottom left;\n white-space: nowrap;\n font-size: 11px;\n font-weight: 500;\n color: #333;\n z-index: 1;\n}\n\n/* Row headers - width must match corner-cell (200px) */\ntd.row-header {\n position: sticky;\n left: 0;\n z-index: 1;\n background: white;\n border-right: 2px solid #5b5dff;\n padding: 0 8px;\n width: 200px;\n min-width: 200px;\n max-width: 200px;\n height: 24px;\n border-bottom: 1px solid #e0e0e0;\n cursor: pointer;\n vertical-align: middle;\n box-sizing: border-box;\n}\n\n.row-header.row-highlighted {\n background: #FFE8C5 !important;\n}\n\n.row-header.row-highlighted .system-id {\n font-weight: 700;\n color: #000;\n}\n\n.system-id {\n font-size: 11px;\n font-family: monospace;\n color: #333;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* Hover highlight for row header */\n.row-header:hover {\n background: #FFF0D9;\n}\n\n.row-header:hover .system-id {\n font-weight: 600;\n}\n\n/* Table cell styles - width must match header-cell (50px) */\ntd.matrix-cell {\n width: 50px;\n min-width: 50px;\n max-width: 50px;\n height: 24px;\n border-right: 1px solid #e0e0e0;\n border-bottom: 1px solid #e0e0e0;\n cursor: default;\n background: #fafafa;\n padding: 0;\n vertical-align: middle;\n box-sizing: border-box;\n}\n\n.matrix-cell.has-analyses {\n cursor: pointer;\n background: white;\n}\n\n.matrix-cell.has-analyses:hover,\n.matrix-cell.cell-selected {\n border-right-color: #5b5dff;\n border-bottom-color: #5b5dff;\n background: #f0f0ff;\n}\n\n.matrix-cell.cell-highlighted {\n background: #FFE8C5;\n}\n\n.cell-stripes {\n display: flex;\n align-items: stretch;\n justify-content: center;\n gap: 1px;\n height: 100%;\n width: 100%;\n padding: 2px 4px;\n}\n\n.stripe {\n flex: 0 0 auto;\n width: 3px;\n min-width: 2px;\n max-width: 5px;\n border-radius: 1px;\n}\n\n.cell-count-badge {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n width: 100%;\n color: white;\n font-size: 10px;\n font-weight: 600;\n text-shadow: 0 0 2px rgba(0, 0, 0, 0.3);\n}\n\n.empty-cell {\n display: flex;\n align-items: center;\n justify-content: center;\n color: #ccc;\n font-size: 10px;\n height: 100%;\n}\n\n/* Native tooltip styles - use ::v-deep for dynamically generated content */\n.native-tooltip {\n position: fixed;\n transform: translateX(-50%) translateY(-100%);\n z-index: 9999;\n background: white;\n border-radius: 4px;\n box-shadow: 0 2px 8px rgba(0,0,0,0.2);\n min-width: 280px;\n max-width: 350px;\n max-height: 300px;\n overflow-y: auto;\n}\n\n.native-tooltip ::v-deep .tooltip-header {\n padding: 8px 12px;\n background: #f5f5f5;\n font-weight: 500;\n font-size: 13px;\n border-bottom: 1px solid #e0e0e0;\n}\n\n.native-tooltip ::v-deep .tooltip-list {\n padding: 4px 0;\n}\n\n.native-tooltip ::v-deep .tooltip-item {\n display: flex;\n align-items: center;\n padding: 6px 12px;\n cursor: pointer;\n font-size: 12px;\n}\n\n.native-tooltip ::v-deep .tooltip-item:hover {\n background: #e3f2fd;\n}\n\n.native-tooltip ::v-deep .tooltip-item .status-dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n margin-right: 8px;\n flex-shrink: 0;\n}\n\n.native-tooltip ::v-deep .tooltip-item .analysis-pk {\n color: #1976d2;\n font-weight: 500;\n}\n\n.native-tooltip ::v-deep .tooltip-item .sep {\n margin: 0 6px;\n color: #999;\n}\n\n.native-tooltip ::v-deep .tooltip-item .version {\n color: #666;\n}\n\n.native-tooltip ::v-deep .tooltip-item .assembly {\n color: #999;\n}\n\n.native-tooltip ::v-deep .tooltip-item .status-chip {\n margin-left: auto;\n padding: 2px 6px;\n border-radius: 3px;\n color: white;\n font-size: 10px;\n font-weight: 500;\n}\n\n.native-tooltip ::v-deep .experiment-group-header {\n padding: 6px 12px 4px;\n font-size: 11px;\n font-weight: 600;\n color: #1976d2;\n background: #f8f9fa;\n border-top: 1px solid #e0e0e0;\n font-family: monospace;\n}\n\n.native-tooltip ::v-deep .experiment-group-header:first-child {\n border-top: none;\n}\n</style>\n"]
|
|
346536
346580
|
},
|
|
346537
346581
|
_coverageSchema: "43e27e138ebf9cfc5966b082cf9a028302ed4184",
|
|
346538
|
-
hash: "
|
|
346582
|
+
hash: "a0c0d0bf4b1dd7c7c1e69ed5b9fb98baf888abe6"
|
|
346539
346583
|
};
|
|
346540
346584
|
var coverage = global[gcv] || (global[gcv] = {});
|
|
346541
346585
|
if (coverage[path] && coverage[path].hash === hash) {
|
|
@@ -347046,167 +347090,184 @@ function ProjectMatrixvue_type_script_lang_js_asyncToGenerator(fn) { return func
|
|
|
347046
347090
|
_analyses$,
|
|
347047
347091
|
_this4 = this;
|
|
347048
347092
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[36]++;
|
|
347049
|
-
|
|
347050
|
-
|
|
347093
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[82]++;
|
|
347094
|
+
console.log('handleCellClick called:', {
|
|
347095
|
+
row: row,
|
|
347096
|
+
col: col
|
|
347097
|
+
});
|
|
347098
|
+
var analyses = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[83]++, (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[24][0]++, (_this$filteredData$ce = this.filteredData.cells[row]) === null || _this$filteredData$ce === void 0 ? void 0 : _this$filteredData$ce[col]) || (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[24][1]++, []));
|
|
347099
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[84]++;
|
|
347100
|
+
console.log('analyses:', analyses.length);
|
|
347101
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[85]++;
|
|
347051
347102
|
if (analyses.length === 0) {
|
|
347052
347103
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[25][0]++;
|
|
347053
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347104
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[86]++;
|
|
347054
347105
|
return;
|
|
347055
347106
|
} else {
|
|
347056
347107
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[25][1]++;
|
|
347057
347108
|
}
|
|
347058
347109
|
|
|
347059
347110
|
// Set selected cell
|
|
347060
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347111
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[87]++;
|
|
347061
347112
|
this.selectedCell = {
|
|
347062
347113
|
row: row,
|
|
347063
347114
|
col: col
|
|
347064
347115
|
};
|
|
347065
|
-
var rect = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347066
|
-
var tooltip = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347067
|
-
var content = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347068
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347116
|
+
var rect = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[88]++, event.currentTarget.getBoundingClientRect());
|
|
347117
|
+
var tooltip = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[89]++, this.$refs.tooltip);
|
|
347118
|
+
var content = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[90]++, this.$refs.tooltipContent);
|
|
347119
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[91]++;
|
|
347120
|
+
console.log('tooltip ref:', !!tooltip, 'content ref:', !!content);
|
|
347121
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[92]++;
|
|
347069
347122
|
if ((ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[27][0]++, !tooltip) || (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[27][1]++, !content)) {
|
|
347070
347123
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[26][0]++;
|
|
347071
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347124
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[93]++;
|
|
347072
347125
|
return;
|
|
347073
347126
|
} else {
|
|
347074
347127
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[26][1]++;
|
|
347075
347128
|
}
|
|
347076
347129
|
|
|
347077
347130
|
// Store analyses for later use
|
|
347078
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347131
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[94]++;
|
|
347079
347132
|
this._currentAnalyses = analyses;
|
|
347080
347133
|
|
|
347081
347134
|
// Build tooltip HTML directly (no Vue reactivity)
|
|
347082
|
-
var appName = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347083
|
-
var html = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347084
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347135
|
+
var appName = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[95]++, (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[28][0]++, (_analyses$ = analyses[0]) === null || _analyses$ === void 0 || (_analyses$ = _analyses$.application) === null || _analyses$ === void 0 ? void 0 : _analyses$.name) || (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[28][1]++, 'Unknown'));
|
|
347136
|
+
var html = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[96]++, "<div class=\"tooltip-header\">".concat(appName, " - ").concat(analyses.length, " analysis").concat(analyses.length !== 1 ? (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[29][0]++, 'es') : (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[29][1]++, ''), "</div>"));
|
|
347137
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[97]++;
|
|
347085
347138
|
html += '<div class="tooltip-list">';
|
|
347086
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347139
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[98]++;
|
|
347087
347140
|
if (this.viewMode === 'individual') {
|
|
347088
347141
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[30][0]++;
|
|
347089
347142
|
// Group analyses by experiment for individual view
|
|
347090
|
-
var byExperiment = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347091
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347143
|
+
var byExperiment = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[99]++, {});
|
|
347144
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[100]++;
|
|
347092
347145
|
analyses.forEach(function (a) {
|
|
347093
347146
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[37]++;
|
|
347094
|
-
var expId = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347095
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347147
|
+
var expId = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[101]++, (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[31][0]++, a.experimentSystemId) || (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[31][1]++, 'Unknown'));
|
|
347148
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[102]++;
|
|
347096
347149
|
if (!byExperiment[expId]) {
|
|
347097
347150
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[32][0]++;
|
|
347098
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347151
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[103]++;
|
|
347099
347152
|
byExperiment[expId] = [];
|
|
347100
347153
|
} else {
|
|
347101
347154
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[32][1]++;
|
|
347102
347155
|
}
|
|
347103
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347156
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[104]++;
|
|
347104
347157
|
byExperiment[expId].push(a);
|
|
347105
347158
|
});
|
|
347106
347159
|
|
|
347107
347160
|
// Render grouped by experiment
|
|
347108
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347161
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[105]++;
|
|
347109
347162
|
Object.entries(byExperiment).forEach(function (_ref3) {
|
|
347110
347163
|
var _ref4 = ProjectMatrixvue_type_script_lang_js_slicedToArray(_ref3, 2),
|
|
347111
347164
|
expId = _ref4[0],
|
|
347112
347165
|
expAnalyses = _ref4[1];
|
|
347113
347166
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[38]++;
|
|
347114
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347167
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[106]++;
|
|
347115
347168
|
html += "<div class=\"experiment-group-header\">".concat(expId, "</div>");
|
|
347116
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347169
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[107]++;
|
|
347117
347170
|
expAnalyses.forEach(function (a) {
|
|
347118
347171
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[39]++;
|
|
347119
|
-
var color = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347120
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347172
|
+
var color = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[108]++, _this4.getStatusColor(a.status));
|
|
347173
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[109]++;
|
|
347121
347174
|
html += "<div class=\"tooltip-item\" data-pk=\"".concat(a.pk, "\">");
|
|
347122
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347175
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[110]++;
|
|
347123
347176
|
html += "<span class=\"status-dot\" style=\"background:".concat(color, "\"></span>");
|
|
347124
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347177
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[111]++;
|
|
347125
347178
|
html += "<span class=\"analysis-pk\">".concat(a.pk, "</span>");
|
|
347126
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347179
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[112]++;
|
|
347127
347180
|
html += "<span class=\"sep\">|</span>";
|
|
347128
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347181
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[113]++;
|
|
347129
347182
|
html += "<span class=\"version\">v".concat((ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[33][0]++, a.version) || (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[33][1]++, 'N/A'), "</span>");
|
|
347130
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347183
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[114]++;
|
|
347131
347184
|
if (a.assembly) {
|
|
347132
347185
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[34][0]++;
|
|
347133
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347186
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[115]++;
|
|
347134
347187
|
html += "<span class=\"assembly\"> \xB7 ".concat(a.assembly, "</span>");
|
|
347135
347188
|
} else {
|
|
347136
347189
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[34][1]++;
|
|
347137
347190
|
}
|
|
347138
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347191
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[116]++;
|
|
347139
347192
|
html += "<span class=\"status-chip\" style=\"background:".concat(color, "\">").concat(a.status, "</span>");
|
|
347140
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347193
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[117]++;
|
|
347141
347194
|
html += '</div>';
|
|
347142
347195
|
});
|
|
347143
347196
|
});
|
|
347144
347197
|
} else {
|
|
347145
347198
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[30][1]++;
|
|
347146
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347199
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[118]++;
|
|
347147
347200
|
// Flat list for experiment view
|
|
347148
347201
|
analyses.forEach(function (a) {
|
|
347149
347202
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[40]++;
|
|
347150
|
-
var color = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347151
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347203
|
+
var color = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[119]++, _this4.getStatusColor(a.status));
|
|
347204
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[120]++;
|
|
347152
347205
|
html += "<div class=\"tooltip-item\" data-pk=\"".concat(a.pk, "\">");
|
|
347153
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347206
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[121]++;
|
|
347154
347207
|
html += "<span class=\"status-dot\" style=\"background:".concat(color, "\"></span>");
|
|
347155
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347208
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[122]++;
|
|
347156
347209
|
html += "<span class=\"analysis-pk\">".concat(a.pk, "</span>");
|
|
347157
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347210
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[123]++;
|
|
347158
347211
|
html += "<span class=\"sep\">|</span>";
|
|
347159
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347212
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[124]++;
|
|
347160
347213
|
html += "<span class=\"version\">v".concat((ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[35][0]++, a.version) || (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[35][1]++, 'N/A'), "</span>");
|
|
347161
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347214
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[125]++;
|
|
347162
347215
|
if (a.assembly) {
|
|
347163
347216
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[36][0]++;
|
|
347164
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347217
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[126]++;
|
|
347165
347218
|
html += "<span class=\"assembly\"> \xB7 ".concat(a.assembly, "</span>");
|
|
347166
347219
|
} else {
|
|
347167
347220
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[36][1]++;
|
|
347168
347221
|
}
|
|
347169
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347222
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[127]++;
|
|
347170
347223
|
html += "<span class=\"status-chip\" style=\"background:".concat(color, "\">").concat(a.status, "</span>");
|
|
347171
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347224
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[128]++;
|
|
347172
347225
|
html += '</div>';
|
|
347173
347226
|
});
|
|
347174
347227
|
}
|
|
347175
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347228
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[129]++;
|
|
347176
347229
|
html += '</div>';
|
|
347177
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347230
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[130]++;
|
|
347178
347231
|
content.innerHTML = html;
|
|
347179
347232
|
|
|
347180
347233
|
// Add click handlers to items
|
|
347181
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347234
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[131]++;
|
|
347182
347235
|
content.querySelectorAll('.tooltip-item').forEach(function (item) {
|
|
347183
347236
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[41]++;
|
|
347184
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347237
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[132]++;
|
|
347185
347238
|
item.onclick = function () {
|
|
347186
347239
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[42]++;
|
|
347187
|
-
var pk = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347188
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347240
|
+
var pk = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[133]++, parseInt(item.dataset.pk));
|
|
347241
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[134]++;
|
|
347189
347242
|
_this4.hideTooltipNative();
|
|
347190
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347243
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[135]++;
|
|
347191
347244
|
_this4.handleOpenAnalysis(pk);
|
|
347192
347245
|
};
|
|
347193
347246
|
});
|
|
347194
347247
|
|
|
347195
347248
|
// Position and show tooltip
|
|
347196
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347249
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[136]++;
|
|
347197
347250
|
tooltip.style.display = 'block';
|
|
347198
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347251
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[137]++;
|
|
347199
347252
|
tooltip.style.left = "".concat(rect.left + rect.width / 2, "px");
|
|
347200
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347253
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[138]++;
|
|
347201
347254
|
tooltip.style.top = "".concat(rect.top - 8, "px");
|
|
347255
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[139]++;
|
|
347256
|
+
console.log('tooltip positioned at:', {
|
|
347257
|
+
left: tooltip.style.left,
|
|
347258
|
+
top: tooltip.style.top,
|
|
347259
|
+
rectTop: rect.top,
|
|
347260
|
+
rectLeft: rect.left,
|
|
347261
|
+
display: tooltip.style.display
|
|
347262
|
+
});
|
|
347202
347263
|
},
|
|
347203
347264
|
hideTooltipNative: function hideTooltipNative() {
|
|
347204
347265
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[43]++;
|
|
347205
|
-
var tooltip = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347206
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347266
|
+
var tooltip = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[140]++, this.$refs.tooltip);
|
|
347267
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[141]++;
|
|
347207
347268
|
if (tooltip) {
|
|
347208
347269
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[37][0]++;
|
|
347209
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347270
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[142]++;
|
|
347210
347271
|
tooltip.style.display = 'none';
|
|
347211
347272
|
} else {
|
|
347212
347273
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[37][1]++;
|
|
@@ -347216,84 +347277,84 @@ function ProjectMatrixvue_type_script_lang_js_asyncToGenerator(fn) { return func
|
|
|
347216
347277
|
getPredominantColor: function getPredominantColor(analyses) {
|
|
347217
347278
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[44]++;
|
|
347218
347279
|
// Count occurrences of each status
|
|
347219
|
-
var statusCounts = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347220
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347280
|
+
var statusCounts = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[143]++, {});
|
|
347281
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[144]++;
|
|
347221
347282
|
analyses.forEach(function (a) {
|
|
347222
347283
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[45]++;
|
|
347223
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347284
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[145]++;
|
|
347224
347285
|
statusCounts[a.status] = ((ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[38][0]++, statusCounts[a.status]) || (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[38][1]++, 0)) + 1;
|
|
347225
347286
|
});
|
|
347226
347287
|
|
|
347227
347288
|
// Find the most common status
|
|
347228
|
-
var maxCount = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347229
|
-
var predominantStatus = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347230
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347289
|
+
var maxCount = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[146]++, 0);
|
|
347290
|
+
var predominantStatus = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[147]++, 'SUCCEEDED'); // default
|
|
347291
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[148]++;
|
|
347231
347292
|
Object.entries(statusCounts).forEach(function (_ref5) {
|
|
347232
347293
|
var _ref6 = ProjectMatrixvue_type_script_lang_js_slicedToArray(_ref5, 2),
|
|
347233
347294
|
status = _ref6[0],
|
|
347234
347295
|
count = _ref6[1];
|
|
347235
347296
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[46]++;
|
|
347236
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347297
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[149]++;
|
|
347237
347298
|
if (count > maxCount) {
|
|
347238
347299
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[39][0]++;
|
|
347239
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347300
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[150]++;
|
|
347240
347301
|
maxCount = count;
|
|
347241
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347302
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[151]++;
|
|
347242
347303
|
predominantStatus = status;
|
|
347243
347304
|
} else {
|
|
347244
347305
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[39][1]++;
|
|
347245
347306
|
}
|
|
347246
347307
|
});
|
|
347247
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347308
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[152]++;
|
|
347248
347309
|
return getStatusColor(predominantStatus);
|
|
347249
347310
|
},
|
|
347250
347311
|
handleTooltipEnter: function handleTooltipEnter() {
|
|
347251
347312
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[47]++;
|
|
347252
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347313
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[153]++;
|
|
347253
347314
|
this.isOverTooltip = true;
|
|
347254
347315
|
},
|
|
347255
347316
|
handleTooltipLeave: function handleTooltipLeave() {
|
|
347256
347317
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[48]++;
|
|
347257
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347318
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[154]++;
|
|
347258
347319
|
this.isOverTooltip = false;
|
|
347259
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347320
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[155]++;
|
|
347260
347321
|
this.hideTooltipNative();
|
|
347261
347322
|
},
|
|
347262
347323
|
handleDocumentClick: function handleDocumentClick(event) {
|
|
347263
347324
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.f[49]++;
|
|
347264
|
-
var tooltip = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347325
|
+
var tooltip = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[156]++, this.$refs.tooltip);
|
|
347265
347326
|
|
|
347266
347327
|
// Check if click was inside tooltip
|
|
347267
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347328
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[157]++;
|
|
347268
347329
|
if ((ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[41][0]++, tooltip) && (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[41][1]++, tooltip.contains(event.target))) {
|
|
347269
347330
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[40][0]++;
|
|
347270
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347331
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[158]++;
|
|
347271
347332
|
return;
|
|
347272
347333
|
} else {
|
|
347273
347334
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[40][1]++;
|
|
347274
347335
|
}
|
|
347275
347336
|
|
|
347276
347337
|
// Check if click was on a matrix cell (this opens tooltip, don't close it)
|
|
347277
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347338
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[159]++;
|
|
347278
347339
|
if (event.target.closest('.matrix-cell.has-analyses')) {
|
|
347279
347340
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[42][0]++;
|
|
347280
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347341
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[160]++;
|
|
347281
347342
|
return;
|
|
347282
347343
|
} else {
|
|
347283
347344
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[42][1]++;
|
|
347284
347345
|
}
|
|
347285
347346
|
|
|
347286
347347
|
// Hide tooltip if visible
|
|
347287
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347348
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[161]++;
|
|
347288
347349
|
this.hideTooltipNative();
|
|
347289
347350
|
|
|
347290
347351
|
// Only clear selection if clicking inside the matrix scroll container
|
|
347291
347352
|
// (not when clicking tabs, filters, etc.)
|
|
347292
|
-
var scrollContainer = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347293
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347353
|
+
var scrollContainer = (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[162]++, this.$refs.scrollContainer);
|
|
347354
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[163]++;
|
|
347294
347355
|
if ((ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[44][0]++, scrollContainer) && (ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[44][1]++, scrollContainer.contains(event.target))) {
|
|
347295
347356
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[43][0]++;
|
|
347296
|
-
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[
|
|
347357
|
+
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.s[164]++;
|
|
347297
347358
|
this.selectedCell = null;
|
|
347298
347359
|
} else {
|
|
347299
347360
|
ProjectMatrixvue_type_script_lang_js_cov_geimehe8j.b[43][1]++;
|
|
@@ -347303,9 +347364,9 @@ function ProjectMatrixvue_type_script_lang_js_asyncToGenerator(fn) { return func
|
|
|
347303
347364
|
});
|
|
347304
347365
|
;// CONCATENATED MODULE: ./src/components/projects/ProjectMatrix.vue?vue&type=script&lang=js&
|
|
347305
347366
|
/* harmony default export */ var projects_ProjectMatrixvue_type_script_lang_js_ = (ProjectMatrixvue_type_script_lang_js_);
|
|
347306
|
-
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-54.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-54.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-54.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-54.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/projects/ProjectMatrix.vue?vue&type=style&index=0&id=
|
|
347307
|
-
var
|
|
347308
|
-
;// CONCATENATED MODULE: ./src/components/projects/ProjectMatrix.vue?vue&type=style&index=0&id=
|
|
347367
|
+
// EXTERNAL MODULE: ./node_modules/vue-style-loader/index.js??clonedRuleSet-54.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-54.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-54.use[2]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-54.use[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/projects/ProjectMatrix.vue?vue&type=style&index=0&id=28c10d94&prod&scoped=true&lang=css&
|
|
347368
|
+
var ProjectMatrixvue_type_style_index_0_id_28c10d94_prod_scoped_true_lang_css_ = __webpack_require__(82588);
|
|
347369
|
+
;// CONCATENATED MODULE: ./src/components/projects/ProjectMatrix.vue?vue&type=style&index=0&id=28c10d94&prod&scoped=true&lang=css&
|
|
347309
347370
|
|
|
347310
347371
|
;// CONCATENATED MODULE: ./src/components/projects/ProjectMatrix.vue
|
|
347311
347372
|
|
|
@@ -347318,11 +347379,11 @@ var ProjectMatrixvue_type_style_index_0_id_68d9db25_prod_scoped_true_lang_css_ =
|
|
|
347318
347379
|
|
|
347319
347380
|
var ProjectMatrix_component = normalizeComponent(
|
|
347320
347381
|
projects_ProjectMatrixvue_type_script_lang_js_,
|
|
347321
|
-
|
|
347322
|
-
|
|
347382
|
+
ProjectMatrixvue_type_template_id_28c10d94_scoped_true_render,
|
|
347383
|
+
ProjectMatrixvue_type_template_id_28c10d94_scoped_true_staticRenderFns,
|
|
347323
347384
|
false,
|
|
347324
347385
|
null,
|
|
347325
|
-
"
|
|
347386
|
+
"28c10d94",
|
|
347326
347387
|
null
|
|
347327
347388
|
|
|
347328
347389
|
)
|