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