1 line
45 KiB
JSON
1 line
45 KiB
JSON
{"remainingRequest":"E:\\项目\\suyiScreen\\node_modules\\babel-loader\\lib\\index.js!E:\\项目\\suyiScreen\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!E:\\项目\\suyiScreen\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\项目\\suyiScreen\\node_modules\\@jiaminghi\\data-view\\lib\\components\\flylineChartEnhanced\\src\\main.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\项目\\suyiScreen\\node_modules\\@jiaminghi\\data-view\\lib\\components\\flylineChartEnhanced\\src\\main.vue","mtime":1670569849700},{"path":"E:\\项目\\suyiScreen\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1670569853083},{"path":"E:\\项目\\suyiScreen\\node_modules\\babel-loader\\lib\\index.js","mtime":1670569850970},{"path":"E:\\项目\\suyiScreen\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1670569853083},{"path":"E:\\项目\\suyiScreen\\node_modules\\vue-loader\\lib\\index.js","mtime":1670569867456}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuY29uY2F0IjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuZmluZCI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5Lm1hcCI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmZ1bmN0aW9uLm5hbWUiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5udW1iZXIudG8tZml4ZWQiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3QudG8tc3RyaW5nIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMucmVnZXhwLnRvLXN0cmluZyI7CmltcG9ydCBfb2JqZWN0U3ByZWFkIGZyb20gIkU6XFxcdTk4NzlcdTc2RUVcXHN1eWlTY3JlZW5cXG5vZGVfbW9kdWxlc1xcQGJhYmVsXFxydW50aW1lL2hlbHBlcnMvZXNtL29iamVjdFNwcmVhZDIiOwppbXBvcnQgX3RvQ29uc3VtYWJsZUFycmF5IGZyb20gIkU6XFxcdTk4NzlcdTc2RUVcXHN1eWlTY3JlZW5cXG5vZGVfbW9kdWxlc1xcQGJhYmVsXFxydW50aW1lL2hlbHBlcnMvZXNtL3RvQ29uc3VtYWJsZUFycmF5IjsKaW1wb3J0IF9zbGljZWRUb0FycmF5IGZyb20gIkU6XFxcdTk4NzlcdTc2RUVcXHN1eWlTY3JlZW5cXG5vZGVfbW9kdWxlc1xcQGJhYmVsXFxydW50aW1lL2hlbHBlcnMvZXNtL3NsaWNlZFRvQXJyYXkiOwppbXBvcnQgInJlZ2VuZXJhdG9yLXJ1bnRpbWUvcnVudGltZSI7CmltcG9ydCBfYXN5bmNUb0dlbmVyYXRvciBmcm9tICJFOlxcXHU5ODc5XHU3NkVFXFxzdXlpU2NyZWVuXFxub2RlX21vZHVsZXNcXEBiYWJlbFxccnVudGltZS9oZWxwZXJzL2VzbS9hc3luY1RvR2VuZXJhdG9yIjsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KaW1wb3J0IHsgZGVlcE1lcmdlIH0gZnJvbSAnQGppYW1pbmdoaS9jaGFydHMvbGliL3V0aWwvaW5kZXgnOwppbXBvcnQgeyBkZWVwQ2xvbmUgfSBmcm9tICdAamlhbWluZ2hpL2MtcmVuZGVyL2xpYi9wbHVnaW4vdXRpbCc7CmltcG9ydCB7IHJhbmRvbUV4dGVuZCwgZ2V0UG9pbnREaXN0YW5jZSB9IGZyb20gJy4uLy4uLy4uL3V0aWwvaW5kZXgnOwppbXBvcnQgYXV0b1Jlc2l6ZSBmcm9tICcuLi8uLi8uLi9taXhpbi9hdXRvUmVzaXplJzsKZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICdEdkZseWxpbmVDaGFydEVuaGFuY2VkJywKICBtaXhpbnM6IFthdXRvUmVzaXplXSwKICBwcm9wczogewogICAgY29uZmlnOiB7CiAgICAgIHR5cGU6IE9iamVjdCwKICAgICAgZGVmYXVsdDogZnVuY3Rpb24gX2RlZmF1bHQoKSB7CiAgICAgICAgcmV0dXJuIHt9OwogICAgICB9CiAgICB9LAogICAgZGV2OiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9CiAgfSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgdmFyIHRpbWVzdGFtcCA9IERhdGUubm93KCk7CiAgICByZXR1cm4gewogICAgICByZWY6ICdkdi1mbHlsaW5lLWNoYXJ0LWVuaGFuY2VkJywKICAgICAgdW5pcXVlOiBNYXRoLnJhbmRvbSgpLAogICAgICBmbHlsaW5lR3JhZGllbnRJZDogImZseWxpbmUtZ3JhZGllbnQtaWQtIi5jb25jYXQodGltZXN0YW1wKSwKICAgICAgaGFsb0dyYWRpZW50SWQ6ICJoYWxvLWdyYWRpZW50LWlkLSIuY29uY2F0KHRpbWVzdGFtcCksCgogICAgICAvKioNCiAgICAgICAqIEBkZXNjcmlwdGlvbiBUeXBlIERlY2xhcmF0aW9uDQogICAgICAgKiANCiAgICAgICAqIGludGVyZmFjZSBIYWxvIHsNCiAgICAgICAqICAgIHNob3c/OiBib29sZWFuDQogICAgICAgKiAgICBkdXJhdGlvbj86IFtudW1iZXIsIG51bWJlcl0NCiAgICAgICAqICAgIGNvbG9yPzogc3RyaW5nDQogICAgICAgKiAgICByYWRpdXM/OiBudW1iZXINCiAgICAgICAqIH0NCiAgICAgICAqIA0KICAgICAgICogaW50ZXJmYWNlIFRleHQgew0KICAgICAgICogICAgc2hvdz86IGJvb2xlYW4NCiAgICAgICAqICAgIG9mZnNldD86IFtudW1iZXIsIG51bWJlcl0NCiAgICAgICAqICAgIGNvbG9yPzogc3RyaW5nDQogICAgICAgKiAgICBmb250U2l6ZT86IG51bWJlcg0KICAgICAgICogfQ0KICAgICAgICogDQogICAgICAgKiBpbnRlcmZhY2UgSWNvbiB7DQogICAgICAgKiAgICBzaG93PzogYm9vbGVhbg0KICAgICAgICogICAgc3JjPzogc3RyaW5nDQogICAgICAgKiAgICB3aWR0aD86IG51bWJlcg0KICAgICAgICogICAgaGVpZ2h0PzogbnVtYmVyDQogICAgICAgKiB9DQogICAgICAgKiANCiAgICAgICAqIGludGVyZmFjZSBQb2ludCB7DQogICAgICAgKiAgICBuYW1lOiBzdHJpbmcNCiAgICAgICAqICAgIGNvb3JkaW5hdGU6IFtudW1iZXIsIG51bWJlcl0NCiAgICAgICAqICAgIGhhbG8/OiBIYWxvDQogICAgICAgKiAgICB0ZXh0PzogVGV4dA0KICAgICAgICogICAgaWNvbj86IEljb24NCiAgICAgICAqIH0NCiAgICAgICAqIA0KICAgICAgICogaW50ZXJmYWNlIExpbmUgew0KICAgICAgICogICAgd2lkdGg/OiBudW1iZXINCiAgICAgICAqICAgIGNvbG9yPzogc3RyaW5nDQogICAgICAgKiAgICBvcmJpdENvbG9yPzogc3RyaW5nDQogICAgICAgKiAgICBkdXJhdGlvbj86IFtudW1iZXIsIG51bWJlcl0NCiAgICAgICAqICAgIHJhZGl1cz86IHN0cmluZw0KICAgICAgICogfQ0KICAgICAgICogDQogICAgICAgKiBpbnRlcmZhY2UgRmx5bGluZSBleHRlbmRzIExpbmUgew0KICAgICAgICogICAgc291cmNlOiBzdHJpbmcNCiAgICAgICAqICAgIHRhcmdldDogc3RyaW5nDQogICAgICAgKiB9DQogICAgICAgKiANCiAgICAgICAqIGludGVyZmFjZSBGbHlsaW5lV2l0aFBhdGggZXh0ZW5kcyBGbHlsaW5lIHsNCiAgICAgICAqICAgIGQ6IHN0cmluZw0KICAgICAgICogICAgcGF0aDogW1tudW1iZXIsIG51bWJlcl0sIFtudW1iZXIsIG51bWJlcl0sIFtudW1iZXIsIG51bWJlcl1dDQogICAgICAgKiAgICBrZXk6IHN0cmluZw0KICAgICAgICogfQ0KICAgICAgICovCiAgICAgIGRlZmF1bHRDb25maWc6IHsKICAgICAgICAvKioNCiAgICAgICAgICogQGRlc2NyaXB0aW9uIEZseWxpbmUgY2hhcnQgcG9pbnRzDQogICAgICAgICAqIEB0eXBlIHtQb2ludFtdfQ0KICAgICAgICAgKiBAZGVmYXVsdCBwb2ludHMgPSBbXQ0KICAgICAgICAgKi8KICAgICAgICBwb2ludHM6IFtdLAoKICAgICAgICAvKioNCiAgICAgICAgICogQGRlc2NyaXB0aW9uIExpbmVzDQogICAgICAgICAqIEB0eXBlIHtGbHlsaW5lW119DQogICAgICAgICAqIEBkZWZhdWx0IGxpbmVzID0gW10NCiAgICAgICAgICovCiAgICAgICAgbGluZXM6IFtdLAoKICAgICAgICAvKioNCiAgICAgICAgICogQGRlc2NyaXB0aW9uIEdsb2JhbCBoYWxvIGNvbmZpZ3VyYXRpb24NCiAgICAgICAgICogQHR5cGUge0hhbG99DQogICAgICAgICAqLwogICAgICAgIGhhbG86IHsKICAgICAgICAgIC8qKg0KICAgICAgICAgICAqIEBkZXNjcmlwdGlvbiBXaGV0aGVyIHRvIHNob3cgaGFsbw0KICAgICAgICAgICAqIEB0eXBlIHtCb29sZWFufQ0KICAgICAgICAgICAqIEBkZWZhdWx0IHNob3cgPSBmYWxzZQ0KICAgICAgICAgICAqLwogICAgICAgICAgc2hvdzogZmFsc2UsCgogICAgICAgICAgLyoqDQogICAgICAgICAgICogQGRlc2NyaXB0aW9uIEhhbG8gYW5pbWF0aW9uIGR1cmF0aW9uICgxcyA9IDEwKQ0KICAgICAgICAgICAqIEB0eXBlIHtbbnVtYmVyLCBudW1iZXJdfQ0KICAgICAgICAgICAqLwogICAgICAgICAgZHVyYXRpb246IFsyMCwgMzBdLAoKICAgICAgICAgIC8qKg0KICAgICAgICAgICAqIEBkZXNjcmlwdGlvbiBIYWxvIGNvbG9yDQogICAgICAgICAgICogQHR5cGUge1N0cmluZ30NCiAgICAgICAgICAgKiBAZGVmYXVsdCBjb2xvciA9ICcjZmI3MjkzJw0KICAgICAgICAgICAqLwogICAgICAgICAgY29sb3I6ICcjZmI3MjkzJywKCiAgICAgICAgICAvKioNCiAgICAgICAgICAgKiBAZGVzY3JpcHRpb24gSGFsbyByYWRpdXMNCiAgICAgICAgICAgKiBAdHlwZSB7TnVtYmVyfQ0KICAgICAgICAgICAqIEBkZWZhdWx0IHJhZGl1cyA9IDEyMA0KICAgICAgICAgICAqLwogICAgICAgICAgcmFkaXVzOiAxMjAKICAgICAgICB9LAoKICAgICAgICAvKioNCiAgICAgICAgICogQGRlc2NyaXB0aW9uIEdsb2JhbCB0ZXh0IGNvbmZpZ3VyYXRpb24NCiAgICAgICAgICogQHR5cGUge1RleHR9DQogICAgICAgICAqLwogICAgICAgIHRleHQ6IHsKICAgICAgICAgIC8qKg0KICAgICAgICAgICAqIEBkZXNjcmlwdGlvbiBXaGV0aGVyIHRvIHNob3cgdGV4dA0KICAgICAgICAgICAqIEB0eXBlIHtCb29sZWFufQ0KICAgICAgICAgICAqIEBkZWZhdWx0IHNob3cgPSBmYWxzZQ0KICAgICAgICAgICAqLwogICAgICAgICAgc2hvdzogZmFsc2UsCgogICAgICAgICAgLyoqDQogICAgICAgICAgICogQGRlc2NyaXB0aW9uIFRleHQgb2Zmc2V0DQogICAgICAgICAgICogQHR5cGUge1tudW1iZXIsIG51bWJlcl19DQogICAgICAgICAgICogQGRlZmF1bHQgb2Zmc2V0ID0gWzAsIDE1XQ0KICAgICAgICAgICAqLwogICAgICAgICAgb2Zmc2V0OiBbMCwgMTVdLAoKICAgICAgICAgIC8qKg0KICAgICAgICAgICAqIEBkZXNjcmlwdGlvbiBUZXh0IGNvbG9yDQogICAgICAgICAgICogQHR5cGUge1N0cmluZ30NCiAgICAgICAgICAgKiBAZGVmYXVsdCBjb2xvciA9ICcjZmZkYjVjJw0KICAgICAgICAgICAqLwogICAgICAgICAgY29sb3I6ICcjZmZkYjVjJywKCiAgICAgICAgICAvKioNCiAgICAgICAgICAgKiBAZGVzY3JpcHRpb24gVGV4dCBmb250IHNpemUNCiAgICAgICAgICAgKiBAdHlwZSB7TnVtYmVyfQ0KICAgICAgICAgICAqIEBkZWZhdWx0IGZvbnRTaXplID0gMTINCiAgICAgICAgICAgKi8KICAgICAgICAgIGZvbnRTaXplOiAxMgogICAgICAgIH0sCgogICAgICAgIC8qKg0KICAgICAgICAgKiBAZGVzY3JpcHRpb24gR2xvYmFsIGljb24gY29uZmlndXJhdGlvbg0KICAgICAgICAgKiBAdHlwZSB7SWNvbn0NCiAgICAgICAgICovCiAgICAgICAgaWNvbjogewogICAgICAgICAgLyoqDQogICAgICAgICAgICogQGRlc2NyaXB0aW9uIFdoZXRoZXIgdG8gc2hvdyBpY29uDQogICAgICAgICAgICogQHR5cGUge0Jvb2xlYW59DQogICAgICAgICAgICogQGRlZmF1bHQgc2hvdyA9IGZhbHNlDQogICAgICAgICAgICovCiAgICAgICAgICBzaG93OiBmYWxzZSwKCiAgICAgICAgICAvKioNCiAgICAgICAgICAgKiBAZGVzY3JpcHRpb24gSWNvbiBzcmMNCiAgICAgICAgICAgKiBAdHlwZSB7U3RyaW5nfQ0KICAgICAgICAgICAqIEBkZWZhdWx0IHNyYyA9ICcnDQogICAgICAgICAgICovCiAgICAgICAgICBzcmM6ICcnLAoKICAgICAgICAgIC8qKg0KICAgICAgICAgICAqIEBkZXNjcmlwdGlvbiBJY29uIHdpZHRoDQogICAgICAgICAgICogQHR5cGUge051bWJlcn0NCiAgICAgICAgICAgKiBAZGVmYXVsdCB3aWR0aCA9IDE1DQogICAgICAgICAgICovCiAgICAgICAgICB3aWR0aDogMTUsCgogICAgICAgICAgLyoqDQogICAgICAgICAgICogQGRlc2NyaXB0aW9uIEljb24gaGVpZ2h0DQogICAgICAgICAgICogQHR5cGUge051bWJlcn0NCiAgICAgICAgICAgKiBAZGVmYXVsdCB3aWR0aCA9IDE1DQogICAgICAgICAgICovCiAgICAgICAgICBoZWlnaHQ6IDE1CiAgICAgICAgfSwKCiAgICAgICAgLyoqDQogICAgICAgICAqIEBkZXNjcmlwdGlvbiBHbG9iYWwgbGluZSBjb25maWd1cmF0aW9uDQogICAgICAgICAqIEB0eXBlIHtMaW5lfQ0KICAgICAgICAgKi8KICAgICAgICBsaW5lOiB7CiAgICAgICAgICAvKioNCiAgICAgICAgICAgKiBAZGVzY3JpcHRpb24gTGluZSB3aWR0aA0KICAgICAgICAgICAqIEB0eXBlIHtOdW1iZXJ9DQogICAgICAgICAgICogQGRlZmF1bHQgd2lkdGggPSAxDQogICAgICAgICAgICovCiAgICAgICAgICB3aWR0aDogMSwKCiAgICAgICAgICAvKioNCiAgICAgICAgICAgKiBAZGVzY3JpcHRpb24gRmx5bGluZSBjb2xvcg0KICAgICAgICAgICAqIEB0eXBlIHtTdHJpbmd9DQogICAgICAgICAgICogQGRlZmF1bHQgY29sb3IgPSAnI2ZmZGU5MycNCiAgICAgICAgICAgKi8KICAgICAgICAgIGNvbG9yOiAnI2ZmZGU5MycsCgogICAgICAgICAgLyoqDQogICAgICAgICAgICogQGRlc2NyaXB0aW9uIE9yYml0IGNvbG9yDQogICAgICAgICAgICogQHR5cGUge1N0cmluZ30NCiAgICAgICAgICAgKiBAZGVmYXVsdCBvcmJpdENvbG9yID0gJ3JnYmEoMTAzLCAyMjQsIDIyNywgLjIpJw0KICAgICAgICAgICAqLwogICAgICAgICAgb3JiaXRDb2xvcjogJ3JnYmEoMTAzLCAyMjQsIDIyNywgLjIpJywKCiAgICAgICAgICAvKioNCiAgICAgICAgICAgKiBAZGVzY3JpcHRpb24gRmx5bGluZSBhbmltYXRpb24gZHVyYXRpb24NCiAgICAgICAgICAgKiBAdHlwZSB7W251bWJlciwgbnVtYmVyXX0NCiAgICAgICAgICAgKiBAZGVmYXVsdCBkdXJhdGlvbiA9IFsyMCwgMzBdDQogICAgICAgICAgICovCiAgICAgICAgICBkdXJhdGlvbjogWzIwLCAzMF0sCgogICAgICAgICAgLyoqDQogICAgICAgICAgICogQGRlc2NyaXB0aW9uIEZseWxpbmUgcmFkaXVzDQogICAgICAgICAgICogQHR5cGUge051bWJlcn0NCiAgICAgICAgICAgKiBAZGVmYXVsdCByYWRpdXMgPSAxMDANCiAgICAgICAgICAgKi8KICAgICAgICAgIHJhZGl1czogMTAwCiAgICAgICAgfSwKCiAgICAgICAgLyoqDQogICAgICAgICAqIEBkZXNjcmlwdGlvbiBCYWNrIGdyb3VuZCBpbWFnZSB1cmwNCiAgICAgICAgICogQHR5cGUge1N0cmluZ30NCiAgICAgICAgICogQGRlZmF1bHQgYmdJbWdTcmMgPSAnJw0KICAgICAgICAgKi8KICAgICAgICBiZ0ltZ1NyYzogJycsCgogICAgICAgIC8qKg0KICAgICAgICAgKiBAZGVzY3JpcHRpb24gSyB2YWx1ZQ0KICAgICAgICAgKiBAdHlwZSB7TnVtYmVyfQ0KICAgICAgICAgKiBAZGVmYXVsdCBrID0gLTAuNQ0KICAgICAgICAgKiBAZXhhbXBsZSBrID0gLTEgfiAxDQogICAgICAgICAqLwogICAgICAgIGs6IC0wLjUsCgogICAgICAgIC8qKg0KICAgICAgICAgKiBAZGVzY3JpcHRpb24gRmx5bGluZSBjdXJ2YXR1cmUNCiAgICAgICAgICogQHR5cGUge051bWJlcn0NCiAgICAgICAgICogQGRlZmF1bHQgY3VydmF0dXJlID0gNQ0KICAgICAgICAgKi8KICAgICAgICBjdXJ2YXR1cmU6IDUsCgogICAgICAgIC8qKg0KICAgICAgICAgKiBAZGVzY3JpcHRpb24gUmVsYXRpdmUgcG9pbnRzIHBvc2l0aW9uDQogICAgICAgICAqIEB0eXBlIHtCb29sZWFufQ0KICAgICAgICAgKiBAZGVmYXVsdCByZWxhdGl2ZSA9IHRydWUNCiAgICAgICAgICovCiAgICAgICAgcmVsYXRpdmU6IHRydWUKICAgICAgfSwKCiAgICAgIC8qKg0KICAgICAgICogQGRlc2NyaXB0aW9uIEZseSBsaW5lIGRhdGENCiAgICAgICAqIEB0eXBlIHtGbHlsaW5lV2l0aFBhdGhbXX0NCiAgICAgICAqIEBkZWZhdWx0IGZseWxpbmVzID0gW10NCiAgICAgICAqLwogICAgICBmbHlsaW5lczogW10sCgogICAgICAvKioNCiAgICAgICAqIEBkZXNjcmlwdGlvbiBGbHkgbGluZSBsZW5ndGhzDQogICAgICAgKiBAdHlwZSB7TnVtYmVyW119DQogICAgICAgKiBAZGVmYXVsdCBmbHlsaW5lTGVuZ3RocyA9IFtdDQogICAgICAgKi8KICAgICAgZmx5bGluZUxlbmd0aHM6IFtdLAoKICAgICAgLyoqDQogICAgICAgKiBAZGVzY3JpcHRpb24gRmx5IGxpbmUgcG9pbnRzDQogICAgICAgKiBAZGVmYXVsdCBmbHlsaW5lUG9pbnRzID0gW10NCiAgICAgICAqLwogICAgICBmbHlsaW5lUG9pbnRzOiBbXSwKICAgICAgbWVyZ2VkQ29uZmlnOiBudWxsCiAgICB9OwogIH0sCiAgd2F0Y2g6IHsKICAgIGNvbmZpZzogZnVuY3Rpb24gY29uZmlnKCkgewogICAgICB2YXIgY2FsY0RhdGEgPSB0aGlzLmNhbGNEYXRhOwogICAgICBjYWxjRGF0YSgpOwogICAgfQogIH0sCiAgbWV0aG9kczogewogICAgYWZ0ZXJBdXRvUmVzaXplTWl4aW5Jbml0OiBmdW5jdGlvbiBhZnRlckF1dG9SZXNpemVNaXhpbkluaXQoKSB7CiAgICAgIHZhciBjYWxjRGF0YSA9IHRoaXMuY2FsY0RhdGE7CiAgICAgIGNhbGNEYXRhKCk7CiAgICB9LAogICAgb25SZXNpemU6IGZ1bmN0aW9uIG9uUmVzaXplKCkgewogICAgICB2YXIgY2FsY0RhdGEgPSB0aGlzLmNhbGNEYXRhOwogICAgICBjYWxjRGF0YSgpOwogICAgfSwKICAgIGNhbGNEYXRhOiBmdW5jdGlvbiBjYWxjRGF0YSgpIHsKICAgICAgdmFyIF90aGlzID0gdGhpczsKCiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvciggLyojX19QVVJFX18qL3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUoKSB7CiAgICAgICAgdmFyIG1lcmdlQ29uZmlnLCBjYWxjZmx5bGluZVBvaW50cywgY2FsY0xpbmVQYXRocywgY2FsY0xpbmVMZW5ndGhzOwogICAgICAgIHJldHVybiByZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkgewogICAgICAgICAgd2hpbGUgKDEpIHsKICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkgewogICAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICAgIG1lcmdlQ29uZmlnID0gX3RoaXMubWVyZ2VDb25maWcsIGNhbGNmbHlsaW5lUG9pbnRzID0gX3RoaXMuY2FsY2ZseWxpbmVQb2ludHMsIGNhbGNMaW5lUGF0aHMgPSBfdGhpcy5jYWxjTGluZVBhdGhzOwogICAgICAgICAgICAgICAgbWVyZ2VDb25maWcoKTsKICAgICAgICAgICAgICAgIGNhbGNmbHlsaW5lUG9pbnRzKCk7CiAgICAgICAgICAgICAgICBjYWxjTGluZVBhdGhzKCk7CiAgICAgICAgICAgICAgICBjYWxjTGluZUxlbmd0aHMgPSBfdGhpcy5jYWxjTGluZUxlbmd0aHM7CiAgICAgICAgICAgICAgICBfY29udGV4dC5uZXh0ID0gNzsKICAgICAgICAgICAgICAgIHJldHVybiBjYWxjTGluZUxlbmd0aHMoKTsKCiAgICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuc3RvcCgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZSk7CiAgICAgIH0pKSgpOwogICAgfSwKICAgIG1lcmdlQ29uZmlnOiBmdW5jdGlvbiBtZXJnZUNvbmZpZygpIHsKICAgICAgdmFyIGNvbmZpZyA9IHRoaXMuY29uZmlnLAogICAgICAgICAgZGVmYXVsdENvbmZpZyA9IHRoaXMuZGVmYXVsdENvbmZpZzsKICAgICAgdmFyIG1lcmdlZENvbmZpZyA9IGRlZXBNZXJnZShkZWVwQ2xvbmUoZGVmYXVsdENvbmZpZywgdHJ1ZSksIGNvbmZpZyB8fCB7fSk7CiAgICAgIHZhciBwb2ludHMgPSBtZXJnZWRDb25maWcucG9pbnRzLAogICAgICAgICAgbGluZXMgPSBtZXJnZWRDb25maWcubGluZXMsCiAgICAgICAgICBoYWxvID0gbWVyZ2VkQ29uZmlnLmhhbG8sCiAgICAgICAgICB0ZXh0ID0gbWVyZ2VkQ29uZmlnLnRleHQsCiAgICAgICAgICBpY29uID0gbWVyZ2VkQ29uZmlnLmljb24sCiAgICAgICAgICBsaW5lID0gbWVyZ2VkQ29uZmlnLmxpbmU7CiAgICAgIG1lcmdlZENvbmZpZy5wb2ludHMgPSBwb2ludHMubWFwKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgaXRlbS5oYWxvID0gZGVlcE1lcmdlKGRlZXBDbG9uZShoYWxvLCB0cnVlKSwgaXRlbS5oYWxvIHx8IHt9KTsKICAgICAgICBpdGVtLnRleHQgPSBkZWVwTWVyZ2UoZGVlcENsb25lKHRleHQsIHRydWUpLCBpdGVtLnRleHQgfHwge30pOwogICAgICAgIGl0ZW0uaWNvbiA9IGRlZXBNZXJnZShkZWVwQ2xvbmUoaWNvbiwgdHJ1ZSksIGl0ZW0uaWNvbiB8fCB7fSk7CiAgICAgICAgcmV0dXJuIGl0ZW07CiAgICAgIH0pOwogICAgICBtZXJnZWRDb25maWcubGluZXMgPSBsaW5lcy5tYXAoZnVuY3Rpb24gKGl0ZW0pIHsKICAgICAgICByZXR1cm4gZGVlcE1lcmdlKGRlZXBDbG9uZShsaW5lLCB0cnVlKSwgaXRlbSk7CiAgICAgIH0pOwogICAgICB0aGlzLm1lcmdlZENvbmZpZyA9IG1lcmdlZENvbmZpZzsKICAgIH0sCiAgICBjYWxjZmx5bGluZVBvaW50czogZnVuY3Rpb24gY2FsY2ZseWxpbmVQb2ludHMoKSB7CiAgICAgIHZhciBtZXJnZWRDb25maWcgPSB0aGlzLm1lcmdlZENvbmZpZywKICAgICAgICAgIHdpZHRoID0gdGhpcy53aWR0aCwKICAgICAgICAgIGhlaWdodCA9IHRoaXMuaGVpZ2h0OwogICAgICB2YXIgcmVsYXRpdmUgPSBtZXJnZWRDb25maWcucmVsYXRpdmUsCiAgICAgICAgICBwb2ludHMgPSBtZXJnZWRDb25maWcucG9pbnRzOwogICAgICB0aGlzLmZseWxpbmVQb2ludHMgPSBwb2ludHMubWFwKGZ1bmN0aW9uIChpdGVtLCBpKSB7CiAgICAgICAgdmFyIF9pdGVtJGNvb3JkaW5hdGUgPSBfc2xpY2VkVG9BcnJheShpdGVtLmNvb3JkaW5hdGUsIDIpLAogICAgICAgICAgICB4ID0gX2l0ZW0kY29vcmRpbmF0ZVswXSwKICAgICAgICAgICAgeSA9IF9pdGVtJGNvb3JkaW5hdGVbMV0sCiAgICAgICAgICAgIGhhbG8gPSBpdGVtLmhhbG8sCiAgICAgICAgICAgIGljb24gPSBpdGVtLmljb24sCiAgICAgICAgICAgIHRleHQgPSBpdGVtLnRleHQ7CgogICAgICAgIGlmIChyZWxhdGl2ZSkgaXRlbS5jb29yZGluYXRlID0gW3ggKiB3aWR0aCwgeSAqIGhlaWdodF07CiAgICAgICAgaXRlbS5oYWxvLnRpbWUgPSByYW5kb21FeHRlbmQuYXBwbHkodm9pZCAwLCBfdG9Db25zdW1hYmxlQXJyYXkoaGFsby5kdXJhdGlvbikpIC8gMTA7CiAgICAgICAgdmFyIGl3ID0gaWNvbi53aWR0aCwKICAgICAgICAgICAgaWggPSBpY29uLmhlaWdodDsKICAgICAgICBpdGVtLmljb24ueCA9IGl0ZW0uY29vcmRpbmF0ZVswXSAtIGl3IC8gMjsKICAgICAgICBpdGVtLmljb24ueSA9IGl0ZW0uY29vcmRpbmF0ZVsxXSAtIGloIC8gMjsKCiAgICAgICAgdmFyIF90ZXh0JG9mZnNldCA9IF9zbGljZWRUb0FycmF5KHRleHQub2Zmc2V0LCAyKSwKICAgICAgICAgICAgb3ggPSBfdGV4dCRvZmZzZXRbMF0sCiAgICAgICAgICAgIG95ID0gX3RleHQkb2Zmc2V0WzFdOwoKICAgICAgICBpdGVtLnRleHQueCA9IGl0ZW0uY29vcmRpbmF0ZVswXSArIG94OwogICAgICAgIGl0ZW0udGV4dC55ID0gaXRlbS5jb29yZGluYXRlWzFdICsgb3k7CiAgICAgICAgaXRlbS5rZXkgPSAiIi5jb25jYXQoaXRlbS5jb29yZGluYXRlLnRvU3RyaW5nKCkpLmNvbmNhdChpKTsKICAgICAgICByZXR1cm4gaXRlbTsKICAgICAgfSk7CiAgICB9LAogICAgY2FsY0xpbmVQYXRoczogZnVuY3Rpb24gY2FsY0xpbmVQYXRocygpIHsKICAgICAgdmFyIGdldFBhdGggPSB0aGlzLmdldFBhdGgsCiAgICAgICAgICBtZXJnZWRDb25maWcgPSB0aGlzLm1lcmdlZENvbmZpZzsKICAgICAgdmFyIHBvaW50cyA9IG1lcmdlZENvbmZpZy5wb2ludHMsCiAgICAgICAgICBsaW5lcyA9IG1lcmdlZENvbmZpZy5saW5lczsKICAgICAgdGhpcy5mbHlsaW5lcyA9IGxpbmVzLm1hcChmdW5jdGlvbiAoaXRlbSkgewogICAgICAgIHZhciBzb3VyY2UgPSBpdGVtLnNvdXJjZSwKICAgICAgICAgICAgdGFyZ2V0ID0gaXRlbS50YXJnZXQsCiAgICAgICAgICAgIGR1cmF0aW9uID0gaXRlbS5kdXJhdGlvbjsKICAgICAgICB2YXIgc291cmNlUG9pbnQgPSBwb2ludHMuZmluZChmdW5jdGlvbiAoX3JlZikgewogICAgICAgICAgdmFyIG5hbWUgPSBfcmVmLm5hbWU7CiAgICAgICAgICByZXR1cm4gbmFtZSA9PT0gc291cmNlOwogICAgICAgIH0pLmNvb3JkaW5hdGU7CiAgICAgICAgdmFyIHRhcmdldFBvaW50ID0gcG9pbnRzLmZpbmQoZnVuY3Rpb24gKF9yZWYyKSB7CiAgICAgICAgICB2YXIgbmFtZSA9IF9yZWYyLm5hbWU7CiAgICAgICAgICByZXR1cm4gbmFtZSA9PT0gdGFyZ2V0OwogICAgICAgIH0pLmNvb3JkaW5hdGU7CiAgICAgICAgdmFyIHBhdGggPSBnZXRQYXRoKHNvdXJjZVBvaW50LCB0YXJnZXRQb2ludCkubWFwKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgICByZXR1cm4gaXRlbS5tYXAoZnVuY3Rpb24gKHYpIHsKICAgICAgICAgICAgcmV0dXJuIHBhcnNlRmxvYXQodi50b0ZpeGVkKDEwKSk7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICB2YXIgZCA9ICJNIi5jb25jYXQocGF0aFswXS50b1N0cmluZygpLCAiIFEiKS5jb25jYXQocGF0aFsxXS50b1N0cmluZygpLCAiICIpLmNvbmNhdChwYXRoWzJdLnRvU3RyaW5nKCkpOwogICAgICAgIHZhciBrZXkgPSAicGF0aCIuY29uY2F0KHBhdGgudG9TdHJpbmcoKSk7CiAgICAgICAgdmFyIHRpbWUgPSByYW5kb21FeHRlbmQuYXBwbHkodm9pZCAwLCBfdG9Db25zdW1hYmxlQXJyYXkoZHVyYXRpb24pKSAvIDEwOwogICAgICAgIHJldHVybiBfb2JqZWN0U3ByZWFkKHt9LCBpdGVtLCB7CiAgICAgICAgICBwYXRoOiBwYXRoLAogICAgICAgICAga2V5OiBrZXksCiAgICAgICAgICBkOiBkLAogICAgICAgICAgdGltZTogdGltZQogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0sCiAgICBnZXRQYXRoOiBmdW5jdGlvbiBnZXRQYXRoKHN0YXJ0LCBlbmQpIHsKICAgICAgdmFyIGdldENvbnRyb2xQb2ludCA9IHRoaXMuZ2V0Q29udHJvbFBvaW50OwogICAgICB2YXIgY29udHJvbFBvaW50ID0gZ2V0Q29udHJvbFBvaW50KHN0YXJ0LCBlbmQpOwogICAgICByZXR1cm4gW3N0YXJ0LCBjb250cm9sUG9pbnQsIGVuZF07CiAgICB9LAogICAgZ2V0Q29udHJvbFBvaW50OiBmdW5jdGlvbiBnZXRDb250cm9sUG9pbnQoX3JlZjMsIF9yZWY0KSB7CiAgICAgIHZhciBfcmVmNSA9IF9zbGljZWRUb0FycmF5KF9yZWYzLCAyKSwKICAgICAgICAgIHN4ID0gX3JlZjVbMF0sCiAgICAgICAgICBzeSA9IF9yZWY1WzFdOwoKICAgICAgdmFyIF9yZWY2ID0gX3NsaWNlZFRvQXJyYXkoX3JlZjQsIDIpLAogICAgICAgICAgZXggPSBfcmVmNlswXSwKICAgICAgICAgIGV5ID0gX3JlZjZbMV07CgogICAgICB2YXIgZ2V0S0xpbmVQb2ludEJ5eCA9IHRoaXMuZ2V0S0xpbmVQb2ludEJ5eCwKICAgICAgICAgIG1lcmdlZENvbmZpZyA9IHRoaXMubWVyZ2VkQ29uZmlnOwogICAgICB2YXIgY3VydmF0dXJlID0gbWVyZ2VkQ29uZmlnLmN1cnZhdHVyZSwKICAgICAgICAgIGsgPSBtZXJnZWRDb25maWcuazsKICAgICAgdmFyIG14ID0gKHN4ICsgZXgpIC8gMiwKICAgICAgICAgIG15ID0gKHN5ICsgZXkpIC8gMjsKICAgICAgdmFyIGRpc3RhbmNlID0gZ2V0UG9pbnREaXN0YW5jZShbc3gsIHN5XSwgW2V4LCBleV0pOwogICAgICB2YXIgdGFyZ2V0TGVuZ3RoID0gZGlzdGFuY2UgLyBjdXJ2YXR1cmU7CiAgICAgIHZhciBkaXNEaXZlZCA9IHRhcmdldExlbmd0aCAvIDI7CiAgICAgIHZhciBkeCA9IG14LAogICAgICAgICAgZHkgPSBteTsKCiAgICAgIGRvIHsKICAgICAgICBkeCArPSBkaXNEaXZlZDsKICAgICAgICBkeSA9IGdldEtMaW5lUG9pbnRCeXgoaywgW214LCBteV0sIGR4KVsxXTsKICAgICAgfSB3aGlsZSAoZ2V0UG9pbnREaXN0YW5jZShbbXgsIG15XSwgW2R4LCBkeV0pIDwgdGFyZ2V0TGVuZ3RoKTsKCiAgICAgIHJldHVybiBbZHgsIGR5XTsKICAgIH0sCiAgICBnZXRLTGluZVBvaW50Qnl4OiBmdW5jdGlvbiBnZXRLTGluZVBvaW50Qnl4KGssIF9yZWY3LCB4KSB7CiAgICAgIHZhciBfcmVmOCA9IF9zbGljZWRUb0FycmF5KF9yZWY3LCAyKSwKICAgICAgICAgIGx4ID0gX3JlZjhbMF0sCiAgICAgICAgICBseSA9IF9yZWY4WzFdOwoKICAgICAgdmFyIHkgPSBseSAtIGsgKiBseCArIGsgKiB4OwogICAgICByZXR1cm4gW3gsIHldOwogICAgfSwKICAgIGNhbGNMaW5lTGVuZ3RoczogZnVuY3Rpb24gY2FsY0xpbmVMZW5ndGhzKCkgewogICAgICB2YXIgX3RoaXMyID0gdGhpczsKCiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvciggLyojX19QVVJFX18qL3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUyKCkgewogICAgICAgIHZhciAkbmV4dFRpY2ssIGZseWxpbmVzLCAkcmVmczsKICAgICAgICByZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTIkKF9jb250ZXh0MikgewogICAgICAgICAgd2hpbGUgKDEpIHsKICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dDIucHJldiA9IF9jb250ZXh0Mi5uZXh0KSB7CiAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgJG5leHRUaWNrID0gX3RoaXMyLiRuZXh0VGljaywgZmx5bGluZXMgPSBfdGhpczIuZmx5bGluZXMsICRyZWZzID0gX3RoaXMyLiRyZWZzOwogICAgICAgICAgICAgICAgX2NvbnRleHQyLm5leHQgPSAzOwogICAgICAgICAgICAgICAgcmV0dXJuICRuZXh0VGljaygpOwoKICAgICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgICBfdGhpczIuZmx5bGluZUxlbmd0aHMgPSBmbHlsaW5lcy5tYXAoZnVuY3Rpb24gKF9yZWY5KSB7CiAgICAgICAgICAgICAgICAgIHZhciBrZXkgPSBfcmVmOS5rZXk7CiAgICAgICAgICAgICAgICAgIHJldHVybiAkcmVmc1trZXldWzBdLmdldFRvdGFsTGVuZ3RoKCk7CiAgICAgICAgICAgICAgICB9KTsKCiAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQyLnN0b3AoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIF9jYWxsZWUyKTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgY29uc29sZUNsaWNrUG9zOiBmdW5jdGlvbiBjb25zb2xlQ2xpY2tQb3MoX3JlZjEwKSB7CiAgICAgIHZhciBvZmZzZXRYID0gX3JlZjEwLm9mZnNldFgsCiAgICAgICAgICBvZmZzZXRZID0gX3JlZjEwLm9mZnNldFk7CiAgICAgIHZhciB3aWR0aCA9IHRoaXMud2lkdGgsCiAgICAgICAgICBoZWlnaHQgPSB0aGlzLmhlaWdodCwKICAgICAgICAgIGRldiA9IHRoaXMuZGV2OwogICAgICBpZiAoIWRldikgcmV0dXJuOwogICAgICB2YXIgcmVsYXRpdmVYID0gKG9mZnNldFggLyB3aWR0aCkudG9GaXhlZCgyKTsKICAgICAgdmFyIHJlbGF0aXZlWSA9IChvZmZzZXRZIC8gaGVpZ2h0KS50b0ZpeGVkKDIpOwogICAgICBjb25zb2xlLndhcm4oImR2LWZseWxpbmUtY2hhcnQtZW5oYW5jZWQgREVWOiBcbiBDbGljayBQb3NpdGlvbiBpcyBbIi5jb25jYXQob2Zmc2V0WCwgIiwgIikuY29uY2F0KG9mZnNldFksICJdIFxuIFJlbGF0aXZlIFBvc2l0aW9uIGlzIFsiKS5jb25jYXQocmVsYXRpdmVYLCAiLCAiKS5jb25jYXQocmVsYXRpdmVZLCAiXSIpKTsKICAgIH0KICB9Cn07"},{"version":3,"sources":["main.vue"],"names":[],"mappings":"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","sourcesContent":["<template>\r\n <div\r\n class=\"dv-flyline-chart-enhanced\"\r\n :style=\"`background-image: url(${mergedConfig ? mergedConfig.bgImgSrc : ''})`\"\r\n :ref=\"ref\"\r\n @click=\"consoleClickPos\"\r\n >\r\n <svg v-if=\"flylines.length\" :width=\"width\" :height=\"height\">\r\n <defs>\r\n <radialGradient\r\n :id=\"flylineGradientId\"\r\n cx=\"50%\" cy=\"50%\" r=\"50%\"\r\n >\r\n <stop\r\n offset=\"0%\" stop-color=\"#fff\"\r\n stop-opacity=\"1\"\r\n />\r\n <stop\r\n offset=\"100%\" stop-color=\"#fff\"\r\n stop-opacity=\"0\"\r\n />\r\n </radialGradient>\r\n\r\n <radialGradient\r\n :id=\"haloGradientId\"\r\n cx=\"50%\" cy=\"50%\" r=\"50%\"\r\n >\r\n <stop\r\n offset=\"0%\" stop-color=\"#fff\"\r\n stop-opacity=\"0\"\r\n />\r\n <stop\r\n offset=\"100%\" stop-color=\"#fff\"\r\n stop-opacity=\"1\"\r\n />\r\n </radialGradient>\r\n </defs>\r\n\r\n <!-- points -->\r\n <g v-for=\"point in flylinePoints\" :key=\"point.key + Math.random()\">\r\n <defs>\r\n <circle\r\n v-if=\"point.halo.show\"\r\n :id=\"`halo${unique}${point.key}`\"\r\n :cx=\"point.coordinate[0]\"\r\n :cy=\"point.coordinate[1]\"\r\n >\r\n <animate\r\n attributeName=\"r\"\r\n :values=\"`1;${point.halo.radius}`\"\r\n :dur=\"`${point.halo.time}s`\"\r\n repeatCount=\"indefinite\"\r\n />\r\n <animate\r\n attributeName=\"opacity\"\r\n values=\"1;0\"\r\n :dur=\"`${point.halo.time}s`\"\r\n repeatCount=\"indefinite\"\r\n />\r\n </circle>\r\n </defs>\r\n\r\n <!-- halo gradient mask -->\r\n <mask :id=\"`mask${unique}${point.key}`\">\r\n <use\r\n v-if=\"point.halo.show\"\r\n :xlink:href=\"`#halo${unique}${point.key}`\"\r\n :fill=\"`url(#${haloGradientId})`\"\r\n />\r\n </mask>\r\n\r\n <!-- point halo -->\r\n <use\r\n v-if=\"point.halo.show\"\r\n :xlink:href=\"`#halo${unique}${point.key}`\"\r\n :fill=\"point.halo.color\"\r\n :mask=\"`url(#mask${unique}${point.key})`\"\r\n />\r\n\r\n <!-- point icon -->\r\n <image\r\n v-if=\"point.icon.show\"\r\n :xlink:href=\"point.icon.src\"\r\n :width=\"point.icon.width\"\r\n :height=\"point.icon.height\"\r\n :x=\"point.icon.x\"\r\n :y=\"point.icon.y\"\r\n />\r\n\r\n <!-- point text -->\r\n <text\r\n v-if=\"point.text.show\"\r\n :style=\"`fontSize:${point.text.fontSize}px;color:${point.text.color}`\"\r\n :fill=\"point.text.color\"\r\n :x=\"point.text.x\"\r\n :y=\"point.text.y\"\r\n >\r\n {{ point.name }}\r\n </text>\r\n </g>\r\n\r\n <!-- flylines -->\r\n <g v-for=\"(line, i) in flylines\" :key=\"line.key + Math.random()\">\r\n <defs>\r\n <path\r\n :id=\"line.key\"\r\n :ref=\"line.key\"\r\n :d=\"line.d\"\r\n fill=\"transparent\"\r\n />\r\n </defs>\r\n\r\n <!-- orbit line -->\r\n <use\r\n :xlink:href=\"`#${line.key}`\"\r\n :stroke-width=\"line.width\"\r\n :stroke=\"line.orbitColor\"\r\n />\r\n\r\n <!-- fly line gradient mask -->\r\n <mask :id=\"`mask${unique}${line.key}`\">\r\n <circle cx=\"0\" cy=\"0\" :r=\"line.radius\" :fill=\"`url(#${flylineGradientId})`\">\r\n <animateMotion\r\n :dur=\"line.time\"\r\n :path=\"line.d\"\r\n rotate=\"auto\"\r\n repeatCount=\"indefinite\"\r\n />\r\n </circle>\r\n </mask>\r\n\r\n <!-- fly line -->\r\n <use\r\n v-if=\"flylineLengths[i]\"\r\n :xlink:href=\"`#${line.key}`\"\r\n :stroke-width=\"line.width\"\r\n :stroke=\"line.color\"\r\n :mask=\"`url(#mask${unique}${line.key})`\"\r\n >\r\n <animate\r\n attributeName=\"stroke-dasharray\"\r\n :from=\"`0, ${flylineLengths[i]}`\"\r\n :to=\"`${flylineLengths[i]}, 0`\"\r\n :dur=\"line.time\"\r\n repeatCount=\"indefinite\"\r\n />\r\n </use>\r\n </g>\r\n </svg>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { deepMerge } from '@jiaminghi/charts/lib/util/index'\r\n\r\nimport { deepClone } from '@jiaminghi/c-render/lib/plugin/util'\r\n\r\nimport { randomExtend, getPointDistance } from '../../../util/index'\r\n\r\nimport autoResize from '../../../mixin/autoResize'\r\n\r\nexport default {\r\n name: 'DvFlylineChartEnhanced',\r\n mixins: [autoResize],\r\n props: {\r\n config: {\r\n type: Object,\r\n default: () => ({})\r\n },\r\n dev: {\r\n type: Boolean,\r\n default: false\r\n }\r\n },\r\n data () {\r\n const timestamp = Date.now()\r\n return {\r\n ref: 'dv-flyline-chart-enhanced',\r\n unique: Math.random(),\r\n flylineGradientId: `flyline-gradient-id-${timestamp}`,\r\n haloGradientId: `halo-gradient-id-${timestamp}`,\r\n /**\r\n * @description Type Declaration\r\n * \r\n * interface Halo {\r\n * show?: boolean\r\n * duration?: [number, number]\r\n * color?: string\r\n * radius?: number\r\n * }\r\n * \r\n * interface Text {\r\n * show?: boolean\r\n * offset?: [number, number]\r\n * color?: string\r\n * fontSize?: number\r\n * }\r\n * \r\n * interface Icon {\r\n * show?: boolean\r\n * src?: string\r\n * width?: number\r\n * height?: number\r\n * }\r\n * \r\n * interface Point {\r\n * name: string\r\n * coordinate: [number, number]\r\n * halo?: Halo\r\n * text?: Text\r\n * icon?: Icon\r\n * }\r\n * \r\n * interface Line {\r\n * width?: number\r\n * color?: string\r\n * orbitColor?: string\r\n * duration?: [number, number]\r\n * radius?: string\r\n * }\r\n * \r\n * interface Flyline extends Line {\r\n * source: string\r\n * target: string\r\n * }\r\n * \r\n * interface FlylineWithPath extends Flyline {\r\n * d: string\r\n * path: [[number, number], [number, number], [number, number]]\r\n * key: string\r\n * }\r\n */\r\n defaultConfig: {\r\n /**\r\n * @description Flyline chart points\r\n * @type {Point[]}\r\n * @default points = []\r\n */\r\n points: [],\r\n /**\r\n * @description Lines\r\n * @type {Flyline[]}\r\n * @default lines = []\r\n */\r\n lines: [],\r\n /**\r\n * @description Global halo configuration\r\n * @type {Halo}\r\n */\r\n halo: {\r\n /**\r\n * @description Whether to show halo\r\n * @type {Boolean}\r\n * @default show = false\r\n */\r\n show: false,\r\n /**\r\n * @description Halo animation duration (1s = 10)\r\n * @type {[number, number]}\r\n */\r\n duration: [20, 30],\r\n /**\r\n * @description Halo color\r\n * @type {String}\r\n * @default color = '#fb7293'\r\n */\r\n color: '#fb7293',\r\n /**\r\n * @description Halo radius\r\n * @type {Number}\r\n * @default radius = 120\r\n */\r\n radius: 120\r\n },\r\n /**\r\n * @description Global text configuration\r\n * @type {Text}\r\n */\r\n text: {\r\n /**\r\n * @description Whether to show text\r\n * @type {Boolean}\r\n * @default show = false\r\n */\r\n show: false,\r\n /**\r\n * @description Text offset\r\n * @type {[number, number]}\r\n * @default offset = [0, 15]\r\n */\r\n offset: [0, 15],\r\n /**\r\n * @description Text color\r\n * @type {String}\r\n * @default color = '#ffdb5c'\r\n */\r\n color: '#ffdb5c',\r\n /**\r\n * @description Text font size\r\n * @type {Number}\r\n * @default fontSize = 12\r\n */\r\n fontSize: 12\r\n },\r\n /**\r\n * @description Global icon configuration\r\n * @type {Icon}\r\n */\r\n icon: {\r\n /**\r\n * @description Whether to show icon\r\n * @type {Boolean}\r\n * @default show = false\r\n */\r\n show: false,\r\n /**\r\n * @description Icon src\r\n * @type {String}\r\n * @default src = ''\r\n */\r\n src: '',\r\n /**\r\n * @description Icon width\r\n * @type {Number}\r\n * @default width = 15\r\n */\r\n width: 15,\r\n /**\r\n * @description Icon height\r\n * @type {Number}\r\n * @default width = 15\r\n */\r\n height: 15\r\n },\r\n /**\r\n * @description Global line configuration\r\n * @type {Line}\r\n */\r\n line: {\r\n /**\r\n * @description Line width\r\n * @type {Number}\r\n * @default width = 1\r\n */\r\n width: 1,\r\n /**\r\n * @description Flyline color\r\n * @type {String}\r\n * @default color = '#ffde93'\r\n */\r\n color: '#ffde93',\r\n /**\r\n * @description Orbit color\r\n * @type {String}\r\n * @default orbitColor = 'rgba(103, 224, 227, .2)'\r\n */\r\n orbitColor: 'rgba(103, 224, 227, .2)',\r\n /**\r\n * @description Flyline animation duration\r\n * @type {[number, number]}\r\n * @default duration = [20, 30]\r\n */\r\n duration: [20, 30],\r\n /**\r\n * @description Flyline radius\r\n * @type {Number}\r\n * @default radius = 100\r\n */\r\n radius: 100\r\n },\r\n /**\r\n * @description Back ground image url\r\n * @type {String}\r\n * @default bgImgSrc = ''\r\n */\r\n bgImgSrc: '',\r\n /**\r\n * @description K value\r\n * @type {Number}\r\n * @default k = -0.5\r\n * @example k = -1 ~ 1\r\n */\r\n k: -0.5,\r\n /**\r\n * @description Flyline curvature\r\n * @type {Number}\r\n * @default curvature = 5\r\n */\r\n curvature: 5,\r\n /**\r\n * @description Relative points position\r\n * @type {Boolean}\r\n * @default relative = true\r\n */\r\n relative: true\r\n },\r\n /**\r\n * @description Fly line data\r\n * @type {FlylineWithPath[]}\r\n * @default flylines = []\r\n */\r\n flylines: [],\r\n /**\r\n * @description Fly line lengths\r\n * @type {Number[]}\r\n * @default flylineLengths = []\r\n */\r\n flylineLengths: [],\r\n /**\r\n * @description Fly line points\r\n * @default flylinePoints = []\r\n */\r\n flylinePoints: [],\r\n\r\n mergedConfig: null\r\n }\r\n },\r\n watch: {\r\n config () {\r\n const { calcData } = this\r\n\r\n calcData()\r\n }\r\n },\r\n methods: {\r\n afterAutoResizeMixinInit () {\r\n const { calcData } = this\r\n\r\n calcData()\r\n },\r\n onResize () {\r\n const { calcData } = this\r\n\r\n calcData()\r\n },\r\n async calcData () {\r\n const { mergeConfig, calcflylinePoints, calcLinePaths } = this\r\n\r\n mergeConfig()\r\n\r\n calcflylinePoints()\r\n\r\n calcLinePaths()\r\n\r\n const { calcLineLengths } = this\r\n\r\n await calcLineLengths()\r\n },\r\n mergeConfig () {\r\n let { config, defaultConfig } = this\r\n\r\n const mergedConfig = deepMerge(deepClone(defaultConfig, true), config || {})\r\n\r\n const { points, lines, halo, text, icon, line } = mergedConfig\r\n\r\n mergedConfig.points = points.map(item => {\r\n item.halo = deepMerge(deepClone(halo, true), item.halo || {})\r\n item.text = deepMerge(deepClone(text, true), item.text || {})\r\n item.icon = deepMerge(deepClone(icon, true), item.icon || {})\r\n\r\n return item\r\n })\r\n\r\n mergedConfig.lines = lines.map(item => {\r\n return deepMerge(deepClone(line, true), item)\r\n })\r\n\r\n this.mergedConfig = mergedConfig\r\n },\r\n calcflylinePoints () {\r\n const { mergedConfig, width, height } = this\r\n\r\n const { relative, points } = mergedConfig\r\n\r\n this.flylinePoints = points.map((item, i) => {\r\n const { coordinate: [x, y], halo, icon, text } = item\r\n\r\n if (relative) item.coordinate = [x * width, y * height]\r\n\r\n item.halo.time = randomExtend(...halo.duration) / 10\r\n\r\n const { width: iw, height: ih } = icon\r\n item.icon.x = item.coordinate[0] - iw / 2\r\n item.icon.y = item.coordinate[1] - ih / 2\r\n\r\n const [ox, oy] = text.offset\r\n item.text.x = item.coordinate[0] + ox\r\n item.text.y = item.coordinate[1] + oy\r\n\r\n item.key = `${item.coordinate.toString()}${i}`\r\n\r\n return item\r\n })\r\n },\r\n calcLinePaths () {\r\n const { getPath, mergedConfig } = this\r\n\r\n const { points, lines } = mergedConfig\r\n\r\n this.flylines = lines.map(item => {\r\n const { source, target, duration } = item\r\n\r\n const sourcePoint = points.find(({ name }) => name === source).coordinate\r\n const targetPoint = points.find(({ name }) => name === target).coordinate\r\n\r\n const path = getPath(sourcePoint, targetPoint).map(item => item.map(v => parseFloat(v.toFixed(10))))\r\n const d = `M${path[0].toString()} Q${path[1].toString()} ${path[2].toString()}`\r\n const key = `path${path.toString()}`\r\n const time = randomExtend(...duration) / 10\r\n\r\n return { ...item, path, key, d, time }\r\n })\r\n },\r\n getPath (start, end) {\r\n const { getControlPoint } = this\r\n\r\n const controlPoint = getControlPoint(start, end)\r\n\r\n return [start, controlPoint, end]\r\n },\r\n getControlPoint ([sx, sy], [ex, ey]) {\r\n const { getKLinePointByx, mergedConfig } = this\r\n\r\n const { curvature, k } = mergedConfig\r\n\r\n const [mx, my] = [(sx + ex) / 2, (sy + ey) / 2]\r\n\r\n const distance = getPointDistance([sx, sy], [ex, ey])\r\n\r\n const targetLength = distance / curvature\r\n const disDived = targetLength / 2\r\n\r\n let [dx, dy] = [mx, my]\r\n\r\n do {\r\n dx += disDived\r\n dy = getKLinePointByx(k, [mx, my], dx)[1]\r\n } while (getPointDistance([mx, my], [dx, dy]) < targetLength)\r\n\r\n return [dx, dy]\r\n },\r\n getKLinePointByx (k, [lx, ly], x) {\r\n const y = ly - k * lx + k * x\r\n\r\n return [x, y]\r\n },\r\n async calcLineLengths () {\r\n const { $nextTick, flylines, $refs } = this\r\n\r\n await $nextTick()\r\n\r\n this.flylineLengths = flylines.map(({ key }) => $refs[key][0].getTotalLength())\r\n },\r\n consoleClickPos ({ offsetX, offsetY }) {\r\n const { width, height, dev } = this\r\n\r\n if (!dev) return\r\n\r\n const relativeX = (offsetX / width).toFixed(2)\r\n const relativeY = (offsetY / height).toFixed(2)\r\n\r\n console.warn(`dv-flyline-chart-enhanced DEV: \\n Click Position is [${offsetX}, ${offsetY}] \\n Relative Position is [${relativeX}, ${relativeY}]`)\r\n }\r\n }\r\n}\r\n</script>"],"sourceRoot":"node_modules/@jiaminghi/data-view/lib/components/flylineChartEnhanced/src"}]} |