ngx-hana-nameserver-history-viewer 1.1.1 → 1.1.9-1.beta
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/README.md +7 -6
- package/esm2020/ngx-hana-nameserver-history-viewer.mjs +5 -0
- package/esm2020/public-api.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/components/alert/alert.component.mjs +68 -0
- package/esm2020/src/nameserver-history-viewer/components/alert/alert.module.mjs +22 -0
- package/esm2020/src/nameserver-history-viewer/components/alert/index.mjs +3 -0
- package/esm2020/src/nameserver-history-viewer/components/file-drop-input/file-drop-input.component.mjs +112 -0
- package/esm2020/src/nameserver-history-viewer/components/file-drop-input/index.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/components/index.mjs +9 -0
- package/esm2020/src/nameserver-history-viewer/components/instruction/index.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/components/instruction/instruction.component.mjs +42 -0
- package/esm2020/src/nameserver-history-viewer/components/nameserver-history.component.mjs +550 -0
- package/esm2020/src/nameserver-history-viewer/components/port-selector/index.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/components/port-selector/port-selector.component.mjs +69 -0
- package/esm2020/src/nameserver-history-viewer/components/port-selector/port-selector.service.mjs +41 -0
- package/esm2020/src/nameserver-history-viewer/components/progress-bar/index.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/components/progress-bar/progress-bar.component.mjs +40 -0
- package/esm2020/src/nameserver-history-viewer/components/time-range-selector/index.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/components/time-range-selector/time-range-selector.component.mjs +70 -0
- package/esm2020/src/nameserver-history-viewer/components/timezone-selector/index.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/components/timezone-selector/timezone-selector.component.mjs +90 -0
- package/esm2020/src/nameserver-history-viewer/components/timezone-selector/timezone-selector.service.mjs +49 -0
- package/esm2020/src/nameserver-history-viewer/index.mjs +3 -0
- package/esm2020/src/nameserver-history-viewer/nameserver-history.module.mjs +63 -0
- package/esm2020/src/nameserver-history-viewer/services/chart.service.mjs +323 -0
- package/esm2020/src/nameserver-history-viewer/services/file.service.mjs +390 -0
- package/esm2020/src/nameserver-history-viewer/services/index.mjs +4 -0
- package/esm2020/src/nameserver-history-viewer/services/ui.service.mjs +557 -0
- package/esm2020/src/nameserver-history-viewer/types/abort.types.mjs +6 -0
- package/esm2020/src/nameserver-history-viewer/types/alert.types.mjs +8 -0
- package/esm2020/src/nameserver-history-viewer/types/chart-content-data-item.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/chart-content-data.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/chart-content-header.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/chart-content-time.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/chart-content.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/color-rgba.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/html-element.type.mjs +9 -0
- package/esm2020/src/nameserver-history-viewer/types/index.mjs +28 -0
- package/esm2020/src/nameserver-history-viewer/types/item.types.mjs +14 -0
- package/esm2020/src/nameserver-history-viewer/types/legend-color.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-backup.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-columnstore.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-host.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-item.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-persistence.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-rowstore.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-server.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-session-admission-control.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-sql.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-sync-primitives.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info-threads.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/load-history-info.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/port.types.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/types/scale-group.types.mjs +17 -0
- package/esm2020/src/nameserver-history-viewer/types/unit-category.types.mjs +10 -0
- package/esm2020/src/nameserver-history-viewer/types/unit.types.mjs +14 -0
- package/esm2020/src/nameserver-history-viewer/utils/chart-util.mjs +25 -0
- package/esm2020/src/nameserver-history-viewer/utils/chartjs-downsample/chartjs_ext.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/utils/chartjs-downsample/data_culling.mjs +57 -0
- package/esm2020/src/nameserver-history-viewer/utils/chartjs-downsample/data_mipmap.mjs +139 -0
- package/esm2020/src/nameserver-history-viewer/utils/chartjs-downsample/index.mjs +41 -0
- package/esm2020/src/nameserver-history-viewer/utils/chartjs-downsample/lttb_data_mipmap.mjs +106 -0
- package/esm2020/src/nameserver-history-viewer/utils/chartjs-downsample/responsive_downsample_plugin.mjs +168 -0
- package/esm2020/src/nameserver-history-viewer/utils/chartjs-downsample/utils.mjs +114 -0
- package/esm2020/src/nameserver-history-viewer/utils/chartjs-zoom/chart.zoom.mjs +527 -0
- package/esm2020/src/nameserver-history-viewer/utils/chartjs-zoom/index.mjs +2 -0
- package/esm2020/src/nameserver-history-viewer/utils/file-util.mjs +154 -0
- package/esm2020/src/nameserver-history-viewer/utils/index.mjs +5 -0
- package/esm2020/src/nameserver-history-viewer/utils/time-util.mjs +101 -0
- package/esm2020/src/nameserver-history-viewer/utils/ui-util.mjs +162 -0
- package/fesm2015/ngx-hana-nameserver-history-viewer.mjs +4081 -0
- package/fesm2015/ngx-hana-nameserver-history-viewer.mjs.map +1 -0
- package/fesm2020/ngx-hana-nameserver-history-viewer.mjs +4081 -0
- package/fesm2020/ngx-hana-nameserver-history-viewer.mjs.map +1 -0
- package/ngx-hana-nameserver-history-viewer.d.ts +1 -1
- package/package.json +37 -61
- package/src/nameserver-history-viewer/components/alert/alert.component.d.ts +4 -1
- package/src/nameserver-history-viewer/components/alert/alert.module.d.ts +6 -0
- package/src/nameserver-history-viewer/components/file-drop-input/file-drop-input.component.d.ts +3 -0
- package/src/nameserver-history-viewer/components/instruction/instruction.component.d.ts +3 -0
- package/src/nameserver-history-viewer/components/nameserver-history.component.d.ts +33 -14
- package/src/nameserver-history-viewer/components/port-selector/port-selector.component.d.ts +4 -1
- package/src/nameserver-history-viewer/components/port-selector/port-selector.service.d.ts +3 -0
- package/src/nameserver-history-viewer/components/progress-bar/progress-bar.component.d.ts +3 -0
- package/src/nameserver-history-viewer/components/time-range-selector/time-range-selector.component.d.ts +3 -0
- package/src/nameserver-history-viewer/components/timezone-selector/timezone-selector.component.d.ts +3 -0
- package/src/nameserver-history-viewer/components/timezone-selector/timezone-selector.service.d.ts +3 -0
- package/src/nameserver-history-viewer/index.d.ts +1 -0
- package/src/nameserver-history-viewer/nameserver-history.module.d.ts +17 -0
- package/src/nameserver-history-viewer/services/chart.service.d.ts +4 -1
- package/src/nameserver-history-viewer/services/file.service.d.ts +4 -0
- package/src/nameserver-history-viewer/services/ui.service.d.ts +5 -2
- package/src/nameserver-history-viewer/types/load-history-info-session-admission-control.types.d.ts +3 -0
- package/src/nameserver-history-viewer/utils/chartjs-downsample/lttb_data_mipmap.d.ts +1 -1
- package/src/nameserver-history-viewer/utils/file-util.d.ts +11 -0
- package/bundles/ngx-hana-nameserver-history-viewer.umd.js +0 -6298
- package/bundles/ngx-hana-nameserver-history-viewer.umd.js.map +0 -1
- package/bundles/ngx-hana-nameserver-history-viewer.umd.min.js +0 -2
- package/bundles/ngx-hana-nameserver-history-viewer.umd.min.js.map +0 -1
- package/esm2015/ngx-hana-nameserver-history-viewer.js +0 -10
- package/esm2015/public-api.js +0 -6
- package/esm2015/src/nameserver-history-viewer/components/alert/alert.component.js +0 -108
- package/esm2015/src/nameserver-history-viewer/components/alert/alert.module.js +0 -21
- package/esm2015/src/nameserver-history-viewer/components/alert/index.js +0 -7
- package/esm2015/src/nameserver-history-viewer/components/file-drop-input/file-drop-input.component.js +0 -141
- package/esm2015/src/nameserver-history-viewer/components/file-drop-input/index.js +0 -6
- package/esm2015/src/nameserver-history-viewer/components/index.js +0 -13
- package/esm2015/src/nameserver-history-viewer/components/instruction/index.js +0 -6
- package/esm2015/src/nameserver-history-viewer/components/instruction/instruction.component.js +0 -62
- package/esm2015/src/nameserver-history-viewer/components/nameserver-history.component.js +0 -742
- package/esm2015/src/nameserver-history-viewer/components/port-selector/index.js +0 -6
- package/esm2015/src/nameserver-history-viewer/components/port-selector/port-selector.component.js +0 -93
- package/esm2015/src/nameserver-history-viewer/components/port-selector/port-selector.service.js +0 -56
- package/esm2015/src/nameserver-history-viewer/components/progress-bar/index.js +0 -6
- package/esm2015/src/nameserver-history-viewer/components/progress-bar/progress-bar.component.js +0 -35
- package/esm2015/src/nameserver-history-viewer/components/time-range-selector/index.js +0 -6
- package/esm2015/src/nameserver-history-viewer/components/time-range-selector/time-range-selector.component.js +0 -68
- package/esm2015/src/nameserver-history-viewer/components/timezone-selector/index.js +0 -6
- package/esm2015/src/nameserver-history-viewer/components/timezone-selector/timezone-selector.component.js +0 -135
- package/esm2015/src/nameserver-history-viewer/components/timezone-selector/timezone-selector.service.js +0 -72
- package/esm2015/src/nameserver-history-viewer/index.js +0 -6
- package/esm2015/src/nameserver-history-viewer/nameserver-history.module.js +0 -42
- package/esm2015/src/nameserver-history-viewer/services/chart.service.js +0 -423
- package/esm2015/src/nameserver-history-viewer/services/file.service.js +0 -447
- package/esm2015/src/nameserver-history-viewer/services/index.js +0 -8
- package/esm2015/src/nameserver-history-viewer/services/ui.service.js +0 -817
- package/esm2015/src/nameserver-history-viewer/types/abort.types.js +0 -13
- package/esm2015/src/nameserver-history-viewer/types/alert.types.js +0 -13
- package/esm2015/src/nameserver-history-viewer/types/chart-content-data-item.types.js +0 -15
- package/esm2015/src/nameserver-history-viewer/types/chart-content-data.types.js +0 -9
- package/esm2015/src/nameserver-history-viewer/types/chart-content-header.types.js +0 -15
- package/esm2015/src/nameserver-history-viewer/types/chart-content-time.types.js +0 -9
- package/esm2015/src/nameserver-history-viewer/types/chart-content.types.js +0 -21
- package/esm2015/src/nameserver-history-viewer/types/color-rgba.types.js +0 -19
- package/esm2015/src/nameserver-history-viewer/types/html-element.type.js +0 -19
- package/esm2015/src/nameserver-history-viewer/types/index.js +0 -32
- package/esm2015/src/nameserver-history-viewer/types/item.types.js +0 -19
- package/esm2015/src/nameserver-history-viewer/types/legend-color.types.js +0 -9
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-backup.types.js +0 -19
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-columnstore.types.js +0 -19
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-host.types.js +0 -35
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-item.types.js +0 -31
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-persistence.types.js +0 -27
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-rowstore.types.js +0 -15
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-server.types.js +0 -25
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-session-admission-control.types.js +0 -19
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-sql.types.js +0 -37
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-sync-primitives.types.js +0 -15
- package/esm2015/src/nameserver-history-viewer/types/load-history-info-threads.types.js +0 -23
- package/esm2015/src/nameserver-history-viewer/types/load-history-info.types.js +0 -31
- package/esm2015/src/nameserver-history-viewer/types/port.types.js +0 -17
- package/esm2015/src/nameserver-history-viewer/types/scale-group.types.js +0 -35
- package/esm2015/src/nameserver-history-viewer/types/unit-category.types.js +0 -21
- package/esm2015/src/nameserver-history-viewer/types/unit.types.js +0 -19
- package/esm2015/src/nameserver-history-viewer/utils/chart-util.js +0 -38
- package/esm2015/src/nameserver-history-viewer/utils/chartjs-downsample/chartjs_ext.js +0 -100
- package/esm2015/src/nameserver-history-viewer/utils/chartjs-downsample/data_culling.js +0 -88
- package/esm2015/src/nameserver-history-viewer/utils/chartjs-downsample/data_mipmap.js +0 -213
- package/esm2015/src/nameserver-history-viewer/utils/chartjs-downsample/index.js +0 -46
- package/esm2015/src/nameserver-history-viewer/utils/chartjs-downsample/lttb_data_mipmap.js +0 -158
- package/esm2015/src/nameserver-history-viewer/utils/chartjs-downsample/responsive_downsample_plugin.js +0 -295
- package/esm2015/src/nameserver-history-viewer/utils/chartjs-downsample/utils.js +0 -130
- package/esm2015/src/nameserver-history-viewer/utils/chartjs-zoom/chart.zoom.js +0 -733
- package/esm2015/src/nameserver-history-viewer/utils/chartjs-zoom/index.js +0 -6
- package/esm2015/src/nameserver-history-viewer/utils/file-util.js +0 -149
- package/esm2015/src/nameserver-history-viewer/utils/index.js +0 -9
- package/esm2015/src/nameserver-history-viewer/utils/time-util.js +0 -135
- package/esm2015/src/nameserver-history-viewer/utils/ui-util.js +0 -203
- package/esm5/ngx-hana-nameserver-history-viewer.js +0 -10
- package/esm5/public-api.js +0 -6
- package/esm5/src/nameserver-history-viewer/components/alert/alert.component.js +0 -140
- package/esm5/src/nameserver-history-viewer/components/alert/alert.module.js +0 -25
- package/esm5/src/nameserver-history-viewer/components/alert/index.js +0 -7
- package/esm5/src/nameserver-history-viewer/components/file-drop-input/file-drop-input.component.js +0 -155
- package/esm5/src/nameserver-history-viewer/components/file-drop-input/index.js +0 -6
- package/esm5/src/nameserver-history-viewer/components/index.js +0 -13
- package/esm5/src/nameserver-history-viewer/components/instruction/index.js +0 -6
- package/esm5/src/nameserver-history-viewer/components/instruction/instruction.component.js +0 -67
- package/esm5/src/nameserver-history-viewer/components/nameserver-history.component.js +0 -990
- package/esm5/src/nameserver-history-viewer/components/port-selector/index.js +0 -6
- package/esm5/src/nameserver-history-viewer/components/port-selector/port-selector.component.js +0 -93
- package/esm5/src/nameserver-history-viewer/components/port-selector/port-selector.service.js +0 -81
- package/esm5/src/nameserver-history-viewer/components/progress-bar/index.js +0 -6
- package/esm5/src/nameserver-history-viewer/components/progress-bar/progress-bar.component.js +0 -26
- package/esm5/src/nameserver-history-viewer/components/time-range-selector/index.js +0 -6
- package/esm5/src/nameserver-history-viewer/components/time-range-selector/time-range-selector.component.js +0 -58
- package/esm5/src/nameserver-history-viewer/components/timezone-selector/index.js +0 -6
- package/esm5/src/nameserver-history-viewer/components/timezone-selector/timezone-selector.component.js +0 -164
- package/esm5/src/nameserver-history-viewer/components/timezone-selector/timezone-selector.service.js +0 -102
- package/esm5/src/nameserver-history-viewer/index.js +0 -6
- package/esm5/src/nameserver-history-viewer/nameserver-history.module.js +0 -46
- package/esm5/src/nameserver-history-viewer/services/chart.service.js +0 -578
- package/esm5/src/nameserver-history-viewer/services/file.service.js +0 -566
- package/esm5/src/nameserver-history-viewer/services/index.js +0 -8
- package/esm5/src/nameserver-history-viewer/services/ui.service.js +0 -1036
- package/esm5/src/nameserver-history-viewer/types/abort.types.js +0 -13
- package/esm5/src/nameserver-history-viewer/types/alert.types.js +0 -13
- package/esm5/src/nameserver-history-viewer/types/chart-content-data-item.types.js +0 -15
- package/esm5/src/nameserver-history-viewer/types/chart-content-data.types.js +0 -9
- package/esm5/src/nameserver-history-viewer/types/chart-content-header.types.js +0 -15
- package/esm5/src/nameserver-history-viewer/types/chart-content-time.types.js +0 -9
- package/esm5/src/nameserver-history-viewer/types/chart-content.types.js +0 -21
- package/esm5/src/nameserver-history-viewer/types/color-rgba.types.js +0 -19
- package/esm5/src/nameserver-history-viewer/types/html-element.type.js +0 -19
- package/esm5/src/nameserver-history-viewer/types/index.js +0 -32
- package/esm5/src/nameserver-history-viewer/types/item.types.js +0 -19
- package/esm5/src/nameserver-history-viewer/types/legend-color.types.js +0 -9
- package/esm5/src/nameserver-history-viewer/types/load-history-info-backup.types.js +0 -19
- package/esm5/src/nameserver-history-viewer/types/load-history-info-columnstore.types.js +0 -19
- package/esm5/src/nameserver-history-viewer/types/load-history-info-host.types.js +0 -35
- package/esm5/src/nameserver-history-viewer/types/load-history-info-item.types.js +0 -31
- package/esm5/src/nameserver-history-viewer/types/load-history-info-persistence.types.js +0 -27
- package/esm5/src/nameserver-history-viewer/types/load-history-info-rowstore.types.js +0 -15
- package/esm5/src/nameserver-history-viewer/types/load-history-info-server.types.js +0 -25
- package/esm5/src/nameserver-history-viewer/types/load-history-info-session-admission-control.types.js +0 -19
- package/esm5/src/nameserver-history-viewer/types/load-history-info-sql.types.js +0 -37
- package/esm5/src/nameserver-history-viewer/types/load-history-info-sync-primitives.types.js +0 -15
- package/esm5/src/nameserver-history-viewer/types/load-history-info-threads.types.js +0 -23
- package/esm5/src/nameserver-history-viewer/types/load-history-info.types.js +0 -31
- package/esm5/src/nameserver-history-viewer/types/port.types.js +0 -17
- package/esm5/src/nameserver-history-viewer/types/scale-group.types.js +0 -35
- package/esm5/src/nameserver-history-viewer/types/unit-category.types.js +0 -21
- package/esm5/src/nameserver-history-viewer/types/unit.types.js +0 -19
- package/esm5/src/nameserver-history-viewer/utils/chart-util.js +0 -39
- package/esm5/src/nameserver-history-viewer/utils/chartjs-downsample/chartjs_ext.js +0 -100
- package/esm5/src/nameserver-history-viewer/utils/chartjs-downsample/data_culling.js +0 -88
- package/esm5/src/nameserver-history-viewer/utils/chartjs-downsample/data_mipmap.js +0 -307
- package/esm5/src/nameserver-history-viewer/utils/chartjs-downsample/index.js +0 -46
- package/esm5/src/nameserver-history-viewer/utils/chartjs-downsample/lttb_data_mipmap.js +0 -232
- package/esm5/src/nameserver-history-viewer/utils/chartjs-downsample/responsive_downsample_plugin.js +0 -350
- package/esm5/src/nameserver-history-viewer/utils/chartjs-downsample/utils.js +0 -142
- package/esm5/src/nameserver-history-viewer/utils/chartjs-zoom/chart.zoom.js +0 -733
- package/esm5/src/nameserver-history-viewer/utils/chartjs-zoom/index.js +0 -6
- package/esm5/src/nameserver-history-viewer/utils/file-util.js +0 -150
- package/esm5/src/nameserver-history-viewer/utils/index.js +0 -9
- package/esm5/src/nameserver-history-viewer/utils/time-util.js +0 -135
- package/esm5/src/nameserver-history-viewer/utils/ui-util.js +0 -205
- package/fesm2015/ngx-hana-nameserver-history-viewer.js +0 -5223
- package/fesm2015/ngx-hana-nameserver-history-viewer.js.map +0 -1
- package/fesm5/ngx-hana-nameserver-history-viewer.js +0 -6295
- package/fesm5/ngx-hana-nameserver-history-viewer.js.map +0 -1
- package/ngx-hana-nameserver-history-viewer.metadata.json +0 -1
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
export { zoomPlugin } from './chart.zoom';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtaGFuYS1uYW1lc2VydmVyLWhpc3Rvcnktdmlld2VyLyIsInNvdXJjZXMiOlsic3JjL25hbWVzZXJ2ZXItaGlzdG9yeS12aWV3ZXIvdXRpbHMvY2hhcnRqcy16b29tL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwyQkFBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NoYXJ0Lnpvb20nO1xyXG4iXX0=
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
/** @type {?} */
|
|
6
|
-
const _DEFAULT_PORT = 'DEFAULT';
|
|
7
|
-
/**
|
|
8
|
-
* get the default port string (for non-MDC system)
|
|
9
|
-
* @return {?}
|
|
10
|
-
*/
|
|
11
|
-
export function getDefaultPort() {
|
|
12
|
-
return _DEFAULT_PORT;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* get abbreviated file name
|
|
16
|
-
* @param {?} fileName
|
|
17
|
-
* @return {?}
|
|
18
|
-
*/
|
|
19
|
-
export function getAbbreviatedFileName(fileName) {
|
|
20
|
-
return fileName == null || fileName.length <= 22 ? fileName : `${fileName.slice(0, 11)}...${fileName.slice(-11)}`;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* get port if empty return default port
|
|
24
|
-
* @param {?} port
|
|
25
|
-
* @return {?}
|
|
26
|
-
*/
|
|
27
|
-
export function getPort(port) {
|
|
28
|
-
return port == null || port.length === 0 ? _DEFAULT_PORT : port;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* get all real ports except the default port "default"
|
|
32
|
-
* @param {?} ports
|
|
33
|
-
* @param {?=} includeDefault
|
|
34
|
-
* @return {?}
|
|
35
|
-
*/
|
|
36
|
-
export function getRealPorts(ports, includeDefault = false) {
|
|
37
|
-
if (ports == null) {
|
|
38
|
-
return [];
|
|
39
|
-
}
|
|
40
|
-
if (includeDefault) {
|
|
41
|
-
return ports;
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
return ports.filter(port => port !== _DEFAULT_PORT);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* get file from <input>
|
|
49
|
-
* @param {?} inputTarget
|
|
50
|
-
* @return {?}
|
|
51
|
-
*/
|
|
52
|
-
export function getFileFromInput(inputTarget) {
|
|
53
|
-
if (inputTarget && inputTarget.files && inputTarget.files.length >= 0) {
|
|
54
|
-
return inputTarget.files[0];
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* get file from drag and drop
|
|
59
|
-
* @param {?} dragEvent
|
|
60
|
-
* @return {?}
|
|
61
|
-
*/
|
|
62
|
-
export function getFileFromDrop(dragEvent) {
|
|
63
|
-
return new Promise((resolve, reject) => {
|
|
64
|
-
if (dragEvent.error) {
|
|
65
|
-
reject(dragEvent.error);
|
|
66
|
-
}
|
|
67
|
-
else {
|
|
68
|
-
if (dragEvent.file) {
|
|
69
|
-
resolve(dragEvent.file);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Check whether the port from file is the same with the selected port.
|
|
76
|
-
* If the selected port is empty, return true directly. This makes all ports will be selected.
|
|
77
|
-
* @param {?} portFromFile Port read from file
|
|
78
|
-
* @param {?} portFromSelection Port from selection.
|
|
79
|
-
* @param {?} isMDC MDC flag
|
|
80
|
-
* @return {?}
|
|
81
|
-
*/
|
|
82
|
-
export function isSamePort(portFromFile, portFromSelection, isMDC) {
|
|
83
|
-
// if it's MDC system, and the port From File is default port, return false
|
|
84
|
-
if (isMDC && portFromFile === _DEFAULT_PORT) {
|
|
85
|
-
return false;
|
|
86
|
-
}
|
|
87
|
-
// if selected port is empty, return true directly. This makes all ports being selected
|
|
88
|
-
if (portFromSelection == null || portFromSelection.length === 0) {
|
|
89
|
-
return true;
|
|
90
|
-
}
|
|
91
|
-
return portFromFile === portFromSelection || portFromFile.slice(-2) === portFromSelection.slice(-2);
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* As javascript can't get the full path of file, if these two files have same
|
|
95
|
-
* 1. lastModified, 2. name, 3. size, these two files are considered as the same file
|
|
96
|
-
* @param {?} file1
|
|
97
|
-
* @param {?} file2
|
|
98
|
-
* @return {?}
|
|
99
|
-
*/
|
|
100
|
-
export function isSameFile(file1, file2) {
|
|
101
|
-
if (file1 && file2) {
|
|
102
|
-
if (file1.lastModified === file2.lastModified && file1.name === file2.name && file1.size === file2.size) {
|
|
103
|
-
return true;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
return false;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Check whether the provided port is a valid port (3xxxx)
|
|
110
|
-
* @param {?} port
|
|
111
|
-
* @return {?}
|
|
112
|
-
*/
|
|
113
|
-
export function isValidPort(port) {
|
|
114
|
-
return port && port.length === 5 && port[0] === '3';
|
|
115
|
-
}
|
|
116
|
-
/**
|
|
117
|
-
* get next value from current value base on the operator "<" or ">".
|
|
118
|
-
* Keep using current value until the "nextValue" is not empty.
|
|
119
|
-
* @param {?} lastValue
|
|
120
|
-
* @param {?} nextValue
|
|
121
|
-
* @return {?}
|
|
122
|
-
*/
|
|
123
|
-
export function calculateValue(lastValue, nextValue) {
|
|
124
|
-
// if the relative value missed, it's null.
|
|
125
|
-
// And if it's missed, just use current value from last line.
|
|
126
|
-
/** @type {?} */
|
|
127
|
-
let newValue = lastValue;
|
|
128
|
-
if (nextValue != null && nextValue.length > 0) {
|
|
129
|
-
if (nextValue[0] === '<') {
|
|
130
|
-
newValue = lastValue - parseFloat(nextValue.slice(1));
|
|
131
|
-
}
|
|
132
|
-
else if (nextValue[0] === '>') {
|
|
133
|
-
newValue = lastValue + parseFloat(nextValue.slice(1));
|
|
134
|
-
}
|
|
135
|
-
else {
|
|
136
|
-
newValue = parseFloat(nextValue);
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
return newValue;
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* check whether the data comes from valid nameserver history file
|
|
143
|
-
* @param {?} data
|
|
144
|
-
* @return {?}
|
|
145
|
-
*/
|
|
146
|
-
export function validateData(data) {
|
|
147
|
-
return data == null ? false : data.length >= 4 && ['host', 'time'].every(i => data[0].includes(i));
|
|
148
|
-
}
|
|
149
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11dGlsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWhhbmEtbmFtZXNlcnZlci1oaXN0b3J5LXZpZXdlci8iLCJzb3VyY2VzIjpbInNyYy9uYW1lc2VydmVyLWhpc3Rvcnktdmlld2VyL3V0aWxzL2ZpbGUtdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztNQUFNLGFBQWEsR0FBRyxTQUFTOzs7OztBQUsvQixNQUFNLFVBQVUsY0FBYztJQUM1QixPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDOzs7Ozs7QUFNRCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsUUFBZ0I7SUFDckQsT0FBTyxRQUFRLElBQUksSUFBSSxJQUFJLFFBQVEsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7QUFDcEgsQ0FBQzs7Ozs7O0FBS0QsTUFBTSxVQUFVLE9BQU8sQ0FBQyxJQUFZO0lBQ2xDLE9BQU8sSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDbEUsQ0FBQzs7Ozs7OztBQUtELE1BQU0sVUFBVSxZQUFZLENBQUMsS0FBZSxFQUFFLGlCQUEwQixLQUFLO0lBQzNFLElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtRQUNqQixPQUFPLEVBQUUsQ0FBQztLQUNYO0lBQ0QsSUFBSSxjQUFjLEVBQUU7UUFDbEIsT0FBTyxLQUFLLENBQUM7S0FDZDtTQUFNO1FBQ0wsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLGFBQWEsQ0FBQyxDQUFDO0tBQ3JEO0FBQ0gsQ0FBQzs7Ozs7O0FB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Q0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDckcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IF9ERUZBVUxUX1BPUlQgPSAnREVGQVVMVCc7XHJcblxyXG4vKipcclxuICogZ2V0IHRoZSBkZWZhdWx0IHBvcnQgc3RyaW5nIChmb3Igbm9uLU1EQyBzeXN0ZW0pXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVmYXVsdFBvcnQoKTogc3RyaW5nIHtcclxuICByZXR1cm4gX0RFRkFVTFRfUE9SVDtcclxufVxyXG5cclxuLyoqXHJcbiAqIGdldCBhYmJyZXZpYXRlZCBmaWxlIG5hbWVcclxuICogQHBhcmFtIGZpbGVOYW1lXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWJicmV2aWF0ZWRGaWxlTmFtZShmaWxlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICByZXR1cm4gZmlsZU5hbWUgPT0gbnVsbCB8fCBmaWxlTmFtZS5sZW5ndGggPD0gMjIgPyBmaWxlTmFtZSA6IGAke2ZpbGVOYW1lLnNsaWNlKDAsIDExKX0uLi4ke2ZpbGVOYW1lLnNsaWNlKC0xMSl9YDtcclxufVxyXG5cclxuLyoqXHJcbiAqIGdldCBwb3J0IGlmIGVtcHR5IHJldHVybiBkZWZhdWx0IHBvcnRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRQb3J0KHBvcnQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIHBvcnQgPT0gbnVsbCB8fCBwb3J0Lmxlbmd0aCA9PT0gMCA/IF9ERUZBVUxUX1BPUlQgOiBwb3J0O1xyXG59XHJcblxyXG4vKipcclxuICogZ2V0IGFsbCByZWFsIHBvcnRzIGV4Y2VwdCB0aGUgZGVmYXVsdCBwb3J0IFwiZGVmYXVsdFwiXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0UmVhbFBvcnRzKHBvcnRzOiBzdHJpbmdbXSwgaW5jbHVkZURlZmF1bHQ6IGJvb2xlYW4gPSBmYWxzZSk6IHN0cmluZ1tdIHtcclxuICBpZiAocG9ydHMgPT0gbnVsbCkge1xyXG4gICAgcmV0dXJuIFtdO1xyXG4gIH1cclxuICBpZiAoaW5jbHVkZURlZmF1bHQpIHtcclxuICAgIHJldHVybiBwb3J0cztcclxuICB9IGVsc2Uge1xyXG4gICAgcmV0dXJuIHBvcnRzLmZpbHRlcihwb3J0ID0+IHBvcnQgIT09IF9ERUZBVUxUX1BPUlQpO1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIGdldCBmaWxlIGZyb20gPGlucHV0PlxyXG4gKiBAcGFyYW0gaW5wdXRUYXJnZXRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiAgZ2V0RmlsZUZyb21JbnB1dChpbnB1dFRhcmdldDogYW55KTogRmlsZSB7XHJcbiAgaWYgKGlucHV0VGFyZ2V0ICYmIGlucHV0VGFyZ2V0LmZpbGVzICYmIGlucHV0VGFyZ2V0LmZpbGVzLmxlbmd0aCA+PSAwKSB7XHJcbiAgICByZXR1cm4gaW5wdXRUYXJnZXQuZmlsZXNbMF07XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogZ2V0IGZpbGUgZnJvbSBkcmFnIGFuZCBkcm9wXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZUZyb21Ecm9wKGRyYWdFdmVudDogYW55KTogUHJvbWlzZTxhbnk+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgaWYgKGRyYWdFdmVudC5lcnJvcikge1xyXG4gICAgICByZWplY3QoZHJhZ0V2ZW50LmVycm9yKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChkcmFnRXZlbnQuZmlsZSkge1xyXG4gICAgICAgIHJlc29sdmUoZHJhZ0V2ZW50LmZpbGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDaGVjayB3aGV0aGVyIHRoZSBwb3J0IGZyb20gZmlsZSBpcyB0aGUgc2FtZSB3aXRoIHRoZSBzZWxlY3RlZCBwb3J0LlxyXG4gKiBJZiB0aGUgc2VsZWN0ZWQgcG9ydCBpcyBlbXB0eSwgcmV0dXJuIHRydWUgZGlyZWN0bHkuIFRoaXMgbWFrZXMgYWxsIHBvcnRzIHdpbGwgYmUgc2VsZWN0ZWQuXHJcbiAqIEBwYXJhbSBwb3J0RnJvbUZpbGUgUG9ydCByZWFkIGZyb20gZmlsZVxyXG4gKiBAcGFyYW0gcG9ydEZyb21TZWxlY3Rpb24gUG9ydCBmcm9tIHNlbGVjdGlvbi5cclxuICogQHBhcmFtIGlzTURDIE1EQyBmbGFnXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNTYW1lUG9ydChwb3J0RnJvbUZpbGU6IHN0cmluZywgcG9ydEZyb21TZWxlY3Rpb246IHN0cmluZywgaXNNREM6IGJvb2xlYW4pOiBib29sZWFuIHtcclxuICAvLyBpZiBpdCdzIE1EQyBzeXN0ZW0sIGFuZCB0aGUgcG9ydCBGcm9tIEZpbGUgaXMgZGVmYXVsdCBwb3J0LCByZXR1cm4gZmFsc2VcclxuICBpZiAoaXNNREMgJiYgcG9ydEZyb21GaWxlID09PSBfREVGQVVMVF9QT1JUKSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIC8vIGlmIHNlbGVjdGVkIHBvcnQgaXMgZW1wdHksIHJldHVybiB0cnVlIGRpcmVjdGx5LiBUaGlzIG1ha2VzIGFsbCBwb3J0cyBiZWluZyBzZWxlY3RlZFxyXG4gIGlmIChwb3J0RnJvbVNlbGVjdGlvbiA9PSBudWxsIHx8IHBvcnRGcm9tU2VsZWN0aW9uLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcG9ydEZyb21GaWxlID09PSBwb3J0RnJvbVNlbGVjdGlvbiB8fCBwb3J0RnJvbUZpbGUuc2xpY2UoLTIpID09PSBwb3J0RnJvbVNlbGVjdGlvbi5zbGljZSgtMik7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBcyBqYXZhc2NyaXB0IGNhbid0IGdldCB0aGUgZnVsbCBwYXRoIG9mIGZpbGUsIGlmIHRoZXNlIHR3byBmaWxlcyBoYXZlIHNhbWVcclxuICogMS4gbGFzdE1vZGlmaWVkLCAyLiBuYW1lLCAzLiBzaXplLCB0aGVzZSB0d28gZmlsZXMgYXJlIGNvbnNpZGVyZWQgYXMgdGhlIHNhbWUgZmlsZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzU2FtZUZpbGUoZmlsZTE6IEZpbGUsIGZpbGUyOiBGaWxlKTogYm9vbGVhbiB7XHJcbiAgaWYgKGZpbGUxICYmIGZpbGUyKSB7XHJcbiAgICBpZiAoZmlsZTEubGFzdE1vZGlmaWVkID09PSBmaWxlMi5sYXN0TW9kaWZpZWQgJiYgZmlsZTEubmFtZSA9PT0gZmlsZTIubmFtZSAmJiBmaWxlMS5zaXplID09PSBmaWxlMi5zaXplKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gZmFsc2U7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDaGVjayB3aGV0aGVyIHRoZSBwcm92aWRlZCBwb3J0IGlzIGEgdmFsaWQgcG9ydCAoM3h4eHgpXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNWYWxpZFBvcnQocG9ydDogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuIHBvcnQgJiYgcG9ydC5sZW5ndGggPT09IDUgJiYgcG9ydFswXSA9PT0gJzMnO1xyXG59XHJcblxyXG4vKipcclxuICogZ2V0IG5leHQgdmFsdWUgZnJvbSBjdXJyZW50IHZhbHVlIGJhc2Ugb24gdGhlIG9wZXJhdG9yIFwiPFwiIG9yIFwiPlwiLlxyXG4gKiBLZWVwIHVzaW5nIGN1cnJlbnQgdmFsdWUgdW50aWwgdGhlIFwibmV4dFZhbHVlXCIgaXMgbm90IGVtcHR5LlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZVZhbHVlKGxhc3RWYWx1ZTogbnVtYmVyLCBuZXh0VmFsdWU6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgLy8gaWYgdGhlIHJlbGF0aXZlIHZhbHVlIG1pc3NlZCwgaXQncyBudWxsLlxyXG4gIC8vIEFuZCBpZiBpdCdzIG1pc3NlZCwganVzdCB1c2UgY3VycmVudCB2YWx1ZSBmcm9tIGxhc3QgbGluZS5cclxuICBsZXQgbmV3VmFsdWUgPSBsYXN0VmFsdWU7XHJcbiAgaWYgKG5leHRWYWx1ZSAhPSBudWxsICYmIG5leHRWYWx1ZS5sZW5ndGggPiAwKSB7XHJcbiAgICBpZiAobmV4dFZhbHVlWzBdID09PSAnPCcpIHtcclxuICAgICAgbmV3VmFsdWUgPSBsYXN0VmFsdWUgLSBwYXJzZUZsb2F0KG5leHRWYWx1ZS5zbGljZSgxKSk7XHJcbiAgICB9IGVsc2UgaWYgKG5leHRWYWx1ZVswXSA9PT0gJz4nKSB7XHJcbiAgICAgIG5ld1ZhbHVlID0gbGFzdFZhbHVlICsgcGFyc2VGbG9hdChuZXh0VmFsdWUuc2xpY2UoMSkpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbmV3VmFsdWUgPSBwYXJzZUZsb2F0KG5leHRWYWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiBuZXdWYWx1ZTtcclxufVxyXG4vKipcclxuICogY2hlY2sgd2hldGhlciB0aGUgZGF0YSBjb21lcyBmcm9tIHZhbGlkIG5hbWVzZXJ2ZXIgaGlzdG9yeSBmaWxlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVEYXRhKGRhdGE6IHN0cmluZ1tdW10pOiBib29sZWFuIHtcclxuICByZXR1cm4gZGF0YSA9PSBudWxsID8gZmFsc2UgOiBkYXRhLmxlbmd0aCA+PSA0ICYmIFsnaG9zdCcsICd0aW1lJ10uZXZlcnkoaSA9PiBkYXRhWzBdLmluY2x1ZGVzKGkpKTtcclxufVxyXG4iXX0=
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
export { randomColor, getColorString, getNumberWithCommas } from './chart-util';
|
|
6
|
-
export { getDefaultPort, getAbbreviatedFileName, getPort, getRealPorts, getFileFromInput, getFileFromDrop, isSamePort, isSameFile, isValidPort, calculateValue, validateData } from './file-util';
|
|
7
|
-
export { getIgnoredLineNumFromTail, getDisplayPort, generatePorts, getUnitFactor, getValueByUnit, getRoundedValue, isUnitTimeRelated, calculateYScale, isEmptyData, sleep, setChartHeight } from './ui-util';
|
|
8
|
-
export { getDefaultTimezone, getTimeFromTimeZone, getTimeString, getTimeRangeString, printProcessedTime } from './time-util';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtaGFuYS1uYW1lc2VydmVyLWhpc3Rvcnktdmlld2VyLyIsInNvdXJjZXMiOlsic3JjL25hbWVzZXJ2ZXItaGlzdG9yeS12aWV3ZXIvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGlFQUFjLGNBQWMsQ0FBQztBQUM3QixvTEFBYyxhQUFhLENBQUM7QUFDNUIsaU1BQWMsV0FBVyxDQUFDO0FBQzFCLCtHQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2hhcnQtdXRpbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZmlsZS11dGlsJztcclxuZXhwb3J0ICogZnJvbSAnLi91aS11dGlsJztcclxuZXhwb3J0ICogZnJvbSAnLi90aW1lLXV0aWwnO1xyXG4iXX0=
|
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import { isDevMode } from '@angular/core';
|
|
6
|
-
import { getIgnoredLineNumFromTail } from './ui-util';
|
|
7
|
-
import * as momentImported from 'moment-timezone';
|
|
8
|
-
// workaround for fixing following error when doing packagr: Cannot call a namespace ('moment')
|
|
9
|
-
/** @type {?} */
|
|
10
|
-
const moment = momentImported;
|
|
11
|
-
/**
|
|
12
|
-
* get the time range for all ports
|
|
13
|
-
* @param {?} time
|
|
14
|
-
* @return {?}
|
|
15
|
-
*/
|
|
16
|
-
function _getTotalTimeRange(time) {
|
|
17
|
-
if (time) {
|
|
18
|
-
/** @type {?} */
|
|
19
|
-
let startTime = 4102358400000;
|
|
20
|
-
// 2099/12/31
|
|
21
|
-
/** @type {?} */
|
|
22
|
-
let endTime = 0;
|
|
23
|
-
Object.keys(time).forEach(port => {
|
|
24
|
-
if (time[port]) {
|
|
25
|
-
/** @type {?} */
|
|
26
|
-
const timeRangeCurrent = _getTimeRange(time[port]);
|
|
27
|
-
startTime = startTime > timeRangeCurrent.startTime ? timeRangeCurrent.startTime : startTime;
|
|
28
|
-
endTime = endTime < timeRangeCurrent.endTime ? timeRangeCurrent.endTime : endTime;
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
return { startTime: startTime, endTime: endTime };
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* get the time range (startTime ~ endTime) base on the time (the xScale)
|
|
36
|
-
* @param {?} time
|
|
37
|
-
* @return {?}
|
|
38
|
-
*/
|
|
39
|
-
function _getTimeRange(time) {
|
|
40
|
-
/** @type {?} */
|
|
41
|
-
const ignoredLineNumFromTail = getIgnoredLineNumFromTail();
|
|
42
|
-
if (time) {
|
|
43
|
-
/** @type {?} */
|
|
44
|
-
let startTime = 4102358400000;
|
|
45
|
-
// 2099/12/31
|
|
46
|
-
/** @type {?} */
|
|
47
|
-
let endTime = 0;
|
|
48
|
-
/** @type {?} */
|
|
49
|
-
const len = time.length;
|
|
50
|
-
if (len > ignoredLineNumFromTail) {
|
|
51
|
-
startTime = time[0] > startTime ? startTime : time[0];
|
|
52
|
-
endTime = time[len - ignoredLineNumFromTail - 1] > endTime ? time[len - ignoredLineNumFromTail - 1] : endTime;
|
|
53
|
-
}
|
|
54
|
-
return { startTime: startTime, endTime: endTime };
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* get default local time zone
|
|
59
|
-
* @return {?}
|
|
60
|
-
*/
|
|
61
|
-
export function getDefaultTimezone() {
|
|
62
|
-
return moment.tz.guess();
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Get time from provided timezone, using this only because chart.js doesn't support timezone.
|
|
66
|
-
* This function will be removed when chart.js starts to support timezone feature.
|
|
67
|
-
* @param {?} time time in seconds (Epoch time)
|
|
68
|
-
* @param {?} timezone timezone string, uses local timezone if this is null.
|
|
69
|
-
* @return {?}
|
|
70
|
-
*/
|
|
71
|
-
export function getTimeFromTimeZone(time, timezone) {
|
|
72
|
-
if (timezone == null || timezone.length === 0) {
|
|
73
|
-
timezone = getDefaultTimezone();
|
|
74
|
-
console.warn(`getTimeFromTimeZone - Input timezone is null, returning the local (${timezone}) time. `);
|
|
75
|
-
}
|
|
76
|
-
/** @type {?} */
|
|
77
|
-
const utcOffset = moment.tz.zone(timezone).utcOffset(time * 1000);
|
|
78
|
-
/** @type {?} */
|
|
79
|
-
const currentOffset = moment.tz.zone(getDefaultTimezone()).utcOffset(time * 1000);
|
|
80
|
-
// convert to utc and then to selected timezone
|
|
81
|
-
return time + currentOffset * 60 - utcOffset * 60;
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Get time formatted with the provided timezone
|
|
85
|
-
* @param {?} time
|
|
86
|
-
* @return {?}
|
|
87
|
-
*/
|
|
88
|
-
export function getTimeString(time) {
|
|
89
|
-
return moment(time).format('YYYY-MM-DD HH:mm:ss');
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Get the time range string by time array, eg: 2018-10-25 10:10:00 ~ 2018-10-25 12:12:00
|
|
93
|
-
* @param {?} time
|
|
94
|
-
* @return {?}
|
|
95
|
-
*/
|
|
96
|
-
export function getTimeRangeString(time) {
|
|
97
|
-
/** @type {?} */
|
|
98
|
-
let startTimeString = 'N/A';
|
|
99
|
-
/** @type {?} */
|
|
100
|
-
let endTimeString = 'N/A';
|
|
101
|
-
/** @type {?} */
|
|
102
|
-
let timeRange;
|
|
103
|
-
if (Array.isArray(time)) {
|
|
104
|
-
timeRange = _getTimeRange(time);
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
timeRange = _getTotalTimeRange(time);
|
|
108
|
-
}
|
|
109
|
-
if (timeRange) {
|
|
110
|
-
if (timeRange.startTime < 4102358400000) {
|
|
111
|
-
startTimeString = getTimeString(timeRange.startTime);
|
|
112
|
-
}
|
|
113
|
-
if (timeRange.endTime > 0) {
|
|
114
|
-
endTimeString = getTimeString(timeRange.endTime);
|
|
115
|
-
}
|
|
116
|
-
return `${startTimeString} ~ ${endTimeString}`;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* print processed time from the provided beginTime, only works in dev mode
|
|
121
|
-
* @param {?} beginTime
|
|
122
|
-
* @param {?} step
|
|
123
|
-
* @return {?}
|
|
124
|
-
*/
|
|
125
|
-
export function printProcessedTime(beginTime, step) {
|
|
126
|
-
if (isDevMode()) {
|
|
127
|
-
// only do it in dev mode
|
|
128
|
-
/** @type {?} */
|
|
129
|
-
const timeAfter = new Date();
|
|
130
|
-
/** @type {?} */
|
|
131
|
-
const parsingTime = (timeAfter.getTime() - beginTime.getTime()) / 1000;
|
|
132
|
-
console.log(`${step}, Parsing time: ${parsingTime} seconds`);
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS11dGlsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWhhbmEtbmFtZXNlcnZlci1oaXN0b3J5LXZpZXdlci8iLCJzb3VyY2VzIjpbInNyYy9uYW1lc2VydmVyLWhpc3Rvcnktdmlld2VyL3V0aWxzL3RpbWUtdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFdEQsT0FBTyxLQUFLLGNBQWMsTUFBTSxpQkFBaUIsQ0FBQzs7O01BRzVDLE1BQU0sR0FBRyxjQUFjOzs7Ozs7QUFJN0IsU0FBUyxrQkFBa0IsQ0FBQyxJQUFzQjtJQUNoRCxJQUFJLElBQUksRUFBRTs7WUFDSixTQUFTLEdBQUcsYUFBYTs7O1lBQ3pCLE9BQU8sR0FBRyxDQUFDO1FBRWYsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDL0IsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7O3NCQUNSLGdCQUFnQixHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2xELFNBQVMsR0FBRyxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztnQkFDNUYsT0FBTyxHQUFHLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO2FBQ25GO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFDLENBQUM7S0FDakQ7QUFDSCxDQUFDOzs7Ozs7QUFLRCxTQUFTLGFB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QixXQUFXLEdBQUcsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLEdBQUcsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsSUFBSTtRQUN0RSxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxtQkFBbUIsV0FBVyxVQUFVLENBQUMsQ0FBQztLQUM5RDtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZ2V0SWdub3JlZExpbmVOdW1Gcm9tVGFpbCB9IGZyb20gJy4vdWktdXRpbCc7XHJcbmltcG9ydCB7IENoYXJ0Q29udGVudFRpbWUgfSBmcm9tICcuLi90eXBlcyc7XHJcbmltcG9ydCAqIGFzIG1vbWVudEltcG9ydGVkIGZyb20gJ21vbWVudC10aW1lem9uZSc7XHJcblxyXG4vLyB3b3JrYXJvdW5kIGZvciBmaXhpbmcgZm9sbG93aW5nIGVycm9yIHdoZW4gZG9pbmcgcGFja2FncjogQ2Fubm90IGNhbGwgYSBuYW1lc3BhY2UgKCdtb21lbnQnKVxyXG5jb25zdCBtb21lbnQgPSBtb21lbnRJbXBvcnRlZDtcclxuLyoqXHJcbiAqIGdldCB0aGUgdGltZSByYW5nZSBmb3IgYWxsIHBvcnRzXHJcbiAqL1xyXG5mdW5jdGlvbiBfZ2V0VG90YWxUaW1lUmFuZ2UodGltZTogQ2hhcnRDb250ZW50VGltZSk6IHtzdGFydFRpbWU6IG51bWJlciwgZW5kVGltZTogbnVtYmVyfSB7XHJcbiAgaWYgKHRpbWUpIHtcclxuICAgIGxldCBzdGFydFRpbWUgPSA0MTAyMzU4NDAwMDAwOyAvLyAyMDk5LzEyLzMxXHJcbiAgICBsZXQgZW5kVGltZSA9IDA7XHJcblxyXG4gICAgT2JqZWN0LmtleXModGltZSkuZm9yRWFjaChwb3J0ID0+IHtcclxuICAgICAgaWYgKHRpbWVbcG9ydF0pIHtcclxuICAgICAgICBjb25zdCB0aW1lUmFuZ2VDdXJyZW50ID0gX2dldFRpbWVSYW5nZSh0aW1lW3BvcnRdKTtcclxuICAgICAgICBzdGFydFRpbWUgPSBzdGFydFRpbWUgPiB0aW1lUmFuZ2VDdXJyZW50LnN0YXJ0VGltZSA/IHRpbWVSYW5nZUN1cnJlbnQuc3RhcnRUaW1lIDogc3RhcnRUaW1lO1xyXG4gICAgICAgIGVuZFRpbWUgPSBlbmRUaW1lIDwgdGltZVJhbmdlQ3VycmVudC5lbmRUaW1lID8gdGltZVJhbmdlQ3VycmVudC5lbmRUaW1lIDogZW5kVGltZTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIHtzdGFydFRpbWU6IHN0YXJ0VGltZSwgZW5kVGltZTogZW5kVGltZX07XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogZ2V0IHRoZSB0aW1lIHJhbmdlIChzdGFydFRpbWUgfiBlbmRUaW1lKSBiYXNlIG9uIHRoZSB0aW1lICh0aGUgeFNjYWxlKVxyXG4gKi9cclxuZnVuY3Rpb24gX2dldFRpbWVSYW5nZSh0aW1lOiBudW1iZXJbXSk6IHtzdGFydFRpbWU6IG51bWJlciwgZW5kVGltZTogbnVtYmVyfSB7XHJcbiAgY29uc3QgaWdub3JlZExpbmVOdW1Gcm9tVGFpbCA9IGdldElnbm9yZWRMaW5lTnVtRnJvbVRhaWwoKTtcclxuICBpZiAodGltZSkge1xyXG4gICAgbGV0IHN0YXJ0VGltZSA9IDQxMDIzNTg0MDAwMDA7IC8vIDIwOTkvMTIvMzFcclxuICAgIGxldCBlbmRUaW1lID0gMDtcclxuXHJcbiAgICBjb25zdCBsZW4gPSB0aW1lLmxlbmd0aDtcclxuICAgIGlmIChsZW4gPiBpZ25vcmVkTGluZU51bUZyb21UYWlsKSB7XHJcbiAgICAgIHN0YXJ0VGltZSA9IHRpbWVbMF0gPiBzdGFydFRpbWUgPyBzdGFydFRpbWUgOiB0aW1lWzBdO1xyXG4gICAgICBlbmRUaW1lID0gdGltZVtsZW4gLSBpZ25vcmVkTGluZU51bUZyb21UYWlsIC0gMV0gPiBlbmRUaW1lID8gdGltZVtsZW4gLSBpZ25vcmVkTGluZU51bUZyb21UYWlsIC0gMV0gOiBlbmRUaW1lO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB7c3RhcnRUaW1lOiBzdGFydFRpbWUsIGVuZFRpbWU6IGVuZFRpbWV9O1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIGdldCBkZWZhdWx0IGxvY2FsIHRpbWUgem9uZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldERlZmF1bHRUaW1lem9uZSgpOiBzdHJpbmcge1xyXG4gIHJldHVybiBtb21lbnQudHouZ3Vlc3MoKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEdldCB0aW1lIGZyb20gcHJvdmlkZWQgdGltZXpvbmUsIHVzaW5nIHRoaXMgb25seSBiZWNhdXNlIGNoYXJ0LmpzIGRvZXNuJ3Qgc3VwcG9ydCB0aW1lem9uZS5cclxuICogVGhpcyBmdW5jdGlvbiB3aWxsIGJlIHJlbW92ZWQgd2hlbiBjaGFydC5qcyBzdGFydHMgdG8gc3VwcG9ydCB0aW1lem9uZSBmZWF0dXJlLlxyXG4gKiBAcGFyYW0gdGltZSB0aW1lIGluIHNlY29uZHMgKEVwb2NoIHRpbWUpXHJcbiAqIEBwYXJhbSB0aW1lem9uZSB0aW1lem9uZSBzdHJpbmcsIHVzZXMgbG9jYWwgdGltZXpvbmUgaWYgdGhpcyBpcyBudWxsLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFRpbWVGcm9tVGltZVpvbmUgKHRpbWU6IG51bWJlciwgdGltZXpvbmU6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgaWYgKHRpbWV6b25lID09IG51bGwgfHwgdGltZXpvbmUubGVuZ3RoID09PSAwKSB7XHJcbiAgICB0aW1lem9uZSA9IGdldERlZmF1bHRUaW1lem9uZSgpO1xyXG4gICAgY29uc29sZS53YXJuKGBnZXRUaW1lRnJvbVRpbWVab25lIC0gSW5wdXQgdGltZXpvbmUgaXMgbnVsbCwgcmV0dXJuaW5nIHRoZSBsb2NhbCAoJHt0aW1lem9uZX0pIHRpbWUuIGApO1xyXG4gIH1cclxuICBjb25zdCB1dGNPZmZzZXQgPSBtb21lbnQudHouem9uZSh0aW1lem9uZSkudXRjT2Zmc2V0KHRpbWUgKiAxMDAwKTtcclxuICBjb25zdCBjdXJyZW50T2Zmc2V0ID0gbW9tZW50LnR6LnpvbmUoZ2V0RGVmYXVsdFRpbWV6b25lKCkpLnV0Y09mZnNldCh0aW1lICogMTAwMCk7XHJcbiAgLy8gY29udmVydCB0byB1dGMgYW5kIHRoZW4gdG8gc2VsZWN0ZWQgdGltZXpvbmVcclxuICByZXR1cm4gdGltZSArIGN1cnJlbnRPZmZzZXQgKiA2MCAtIHV0Y09mZnNldCAqIDYwO1xyXG59XHJcblxyXG4vKipcclxuICogR2V0IHRpbWUgZm9ybWF0dGVkIHdpdGggdGhlIHByb3ZpZGVkIHRpbWV6b25lXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGltZVN0cmluZyAodGltZTogbnVtYmVyKTogc3RyaW5nIHtcclxuICByZXR1cm4gbW9tZW50KHRpbWUpLmZvcm1hdCgnWVlZWS1NTS1ERCBISDptbTpzcycpO1xyXG59XHJcblxyXG4vKipcclxuICogR2V0IHRoZSB0aW1lIHJhbmdlIHN0cmluZyBieSB0aW1lIGFycmF5LCBlZzogMjAxOC0xMC0yNSAxMDoxMDowMCB+IDIwMTgtMTAtMjUgMTI6MTI6MDBcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRUaW1lUmFuZ2VTdHJpbmcodGltZTogYW55KTogc3RyaW5nIHtcclxuICBsZXQgc3RhcnRUaW1lU3RyaW5nID0gJ04vQSc7XHJcbiAgbGV0IGVuZFRpbWVTdHJpbmcgPSAnTi9BJztcclxuICBsZXQgdGltZVJhbmdlO1xyXG4gIGlmIChBcnJheS5pc0FycmF5KHRpbWUpKSB7XHJcbiAgICB0aW1lUmFuZ2UgPSBfZ2V0VGltZVJhbmdlKHRpbWUpO1xyXG4gIH0gZWxzZSB7XHJcbiAgICB0aW1lUmFuZ2UgPSBfZ2V0VG90YWxUaW1lUmFuZ2UodGltZSk7XHJcbiAgfVxyXG5cclxuICBpZiAodGltZVJhbmdlKSB7XHJcbiAgICBpZiAodGltZVJhbmdlLnN0YXJ0VGltZSA8IDQxMDIzNTg0MDAwMDApIHtcclxuICAgICAgc3RhcnRUaW1lU3RyaW5nID0gZ2V0VGltZVN0cmluZyh0aW1lUmFuZ2Uuc3RhcnRUaW1lKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGltZVJhbmdlLmVuZFRpbWUgPiAwKSB7XHJcbiAgICAgIGVuZFRpbWVTdHJpbmcgPSBnZXRUaW1lU3RyaW5nKHRpbWVSYW5nZS5lbmRUaW1lKTtcclxuICAgIH1cclxuICAgIHJldHVybiBgJHtzdGFydFRpbWVTdHJpbmd9IH4gJHtlbmRUaW1lU3RyaW5nfWA7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogcHJpbnQgcHJvY2Vzc2VkIHRpbWUgZnJvbSB0aGUgcHJvdmlkZWQgYmVnaW5UaW1lLCBvbmx5IHdvcmtzIGluIGRldiBtb2RlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gcHJpbnRQcm9jZXNzZWRUaW1lKGJlZ2luVGltZTogRGF0ZSwgc3RlcDogc3RyaW5nKTogdm9pZCB7XHJcbiAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAvLyBvbmx5IGRvIGl0IGluIGRldiBtb2RlXHJcbiAgICBjb25zdCB0aW1lQWZ0ZXIgPSBuZXcgRGF0ZSgpO1xyXG4gICAgY29uc3QgcGFyc2luZ1RpbWUgPSAodGltZUFmdGVyLmdldFRpbWUoKSAtIGJlZ2luVGltZS5nZXRUaW1lKCkpIC8gMTAwMDtcclxuICAgIGNvbnNvbGUubG9nKGAke3N0ZXB9LCBQYXJzaW5nIHRpbWU6ICR7cGFyc2luZ1RpbWV9IHNlY29uZHNgKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,203 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import { getRealPorts } from './file-util';
|
|
6
|
-
import { UnitType } from '../types';
|
|
7
|
-
/**
|
|
8
|
-
* For some reason, hana studio will abandon the last line of nameserver history trace file
|
|
9
|
-
* @type {?}
|
|
10
|
-
*/
|
|
11
|
-
const _IGNORED_LINE_FROM_TAIL = 1;
|
|
12
|
-
/**
|
|
13
|
-
* None index server ports in name server history,
|
|
14
|
-
* 01: name server; 02: preprocessor; 04: script server; 05: statistics server / diserver;
|
|
15
|
-
* 06: web dispatcher; 07: xsengine; 10 compileserver; 11 dpserver; 12 esserver; 29 xscontroller
|
|
16
|
-
* @type {?}
|
|
17
|
-
*/
|
|
18
|
-
const _NON_INDEX_SERVER_PORTS = ['01', '02', '04', '05', '06', '07', '10', '11', '12', '29'];
|
|
19
|
-
/**
|
|
20
|
-
* Get the ignored line number from tail (For some reason, hana studio will abandon the last line of nameserver history trace file).
|
|
21
|
-
* @return {?}
|
|
22
|
-
*/
|
|
23
|
-
export function getIgnoredLineNumFromTail() {
|
|
24
|
-
return _IGNORED_LINE_FROM_TAIL;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* get the port that needs to be displayed from ports list via the selected port
|
|
28
|
-
* @param {?} ports overall ports list
|
|
29
|
-
* @param {?} port the selected port
|
|
30
|
-
* @return {?}
|
|
31
|
-
*/
|
|
32
|
-
export function getDisplayPort(ports, port) {
|
|
33
|
-
if (ports != null && ports.length > 0) {
|
|
34
|
-
if (port == null || port.length === 0) {
|
|
35
|
-
// if no port is selected
|
|
36
|
-
if (ports.length === 1) {
|
|
37
|
-
// not mdc system, will display the only one
|
|
38
|
-
port = ports[0];
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
// select the first service (not in _NON_INDEX_SERVER_PORTS list)
|
|
42
|
-
port = getRealPorts(ports).find(p => _NON_INDEX_SERVER_PORTS.indexOf(p.slice(-2)) < 0);
|
|
43
|
-
if (port == null) {
|
|
44
|
-
port = getRealPorts(ports)[0];
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
// get real port is port is some thing like 3**03
|
|
50
|
-
if (port.slice(1, 3) === '**') {
|
|
51
|
-
port = ports.find(key => key.slice(-2) === port.slice(-2));
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
port = ports.find(key => key === port);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
port = void 0;
|
|
60
|
-
}
|
|
61
|
-
return port;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Generate the ports for ngx-select.
|
|
65
|
-
* If the provided ports is not null and no port has been selected,
|
|
66
|
-
* will choose the first item which is not 01 (nameserver) or 07 (xsengine)
|
|
67
|
-
*
|
|
68
|
-
* @param {?=} ports
|
|
69
|
-
* @param {?=} selectedPort
|
|
70
|
-
* @return {?}
|
|
71
|
-
*/
|
|
72
|
-
export function generatePorts(ports = null, selectedPort = null) {
|
|
73
|
-
if (ports == null) {
|
|
74
|
-
return null;
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
// if no selection, choose the first item which is not 01 (nameserver) or 07 (xsengine)
|
|
78
|
-
if (selectedPort == null || selectedPort === '') {
|
|
79
|
-
/** @type {?} */
|
|
80
|
-
const firstIndexServer = ports.find(p => _NON_INDEX_SERVER_PORTS.indexOf(p.slice(-2)) < 0);
|
|
81
|
-
selectedPort = firstIndexServer ? firstIndexServer : ports[0];
|
|
82
|
-
}
|
|
83
|
-
/** @type {?} */
|
|
84
|
-
let index = ports.findIndex(port => port === selectedPort);
|
|
85
|
-
if (index === -1) {
|
|
86
|
-
// selection is not exists in the file
|
|
87
|
-
index = 0;
|
|
88
|
-
}
|
|
89
|
-
/** @type {?} */
|
|
90
|
-
const newPorts = ports.map(port => ({ id: port, text: port }));
|
|
91
|
-
newPorts[index].selected = true;
|
|
92
|
-
return newPorts;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* get unit factor by unit
|
|
97
|
-
* @param {?} unitType
|
|
98
|
-
* @return {?}
|
|
99
|
-
*/
|
|
100
|
-
export function getUnitFactor(unitType) {
|
|
101
|
-
/** @type {?} */
|
|
102
|
-
let unitFactor = 1;
|
|
103
|
-
switch (unitType) {
|
|
104
|
-
case UnitType.TypeGB:
|
|
105
|
-
// BYTE to GB
|
|
106
|
-
unitFactor = 1024 * 1024 * 1024;
|
|
107
|
-
break;
|
|
108
|
-
case UnitType.TypeMB:
|
|
109
|
-
case UnitType.TypeMBSec:
|
|
110
|
-
// BYTE to MB
|
|
111
|
-
unitFactor = 1024 * 1024;
|
|
112
|
-
break;
|
|
113
|
-
case UnitType.TypeSecSec:
|
|
114
|
-
// micro second to second
|
|
115
|
-
unitFactor = 1000000;
|
|
116
|
-
}
|
|
117
|
-
return unitFactor;
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* get value by unit (divided by the unit factor).
|
|
121
|
-
* @param {?} value
|
|
122
|
-
* @param {?} unit
|
|
123
|
-
* @return {?}
|
|
124
|
-
*/
|
|
125
|
-
export function getValueByUnit(value, unit) {
|
|
126
|
-
return (value / getUnitFactor(unit));
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* get rounded value: if value >= 10, round to integer; if value < 10, round to at most 2 decimal places
|
|
130
|
-
* @param {?} value
|
|
131
|
-
* @return {?}
|
|
132
|
-
*/
|
|
133
|
-
export function getRoundedValue(value) {
|
|
134
|
-
return value >= 10 ? Math.round(value) : Math.round(value * 100) / 100;
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* check whether unit is time related.
|
|
138
|
-
* @param {?} unit
|
|
139
|
-
* @return {?}
|
|
140
|
-
*/
|
|
141
|
-
export function isUnitTimeRelated(unit) {
|
|
142
|
-
return unit === UnitType.TypeMBSec || unit === UnitType.TypeSec || unit === UnitType.TypeSecSec;
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* calculate YScale base on the provided value
|
|
146
|
-
* @param {?} value
|
|
147
|
-
* @return {?}
|
|
148
|
-
*/
|
|
149
|
-
export function calculateYScale(value) {
|
|
150
|
-
// round up to next 2,5,10,20,50,100,...
|
|
151
|
-
if (value <= 0) {
|
|
152
|
-
return 100;
|
|
153
|
-
}
|
|
154
|
-
/** @type {?} */
|
|
155
|
-
const scale = Math.pow(10, Math.floor(Math.log10(value)));
|
|
156
|
-
if (scale >= value) {
|
|
157
|
-
return scale;
|
|
158
|
-
}
|
|
159
|
-
if (2 * scale >= value) {
|
|
160
|
-
return 2 * scale;
|
|
161
|
-
}
|
|
162
|
-
if (5 * scale >= value) {
|
|
163
|
-
return 5 * scale;
|
|
164
|
-
}
|
|
165
|
-
return 10 * scale;
|
|
166
|
-
}
|
|
167
|
-
/**
|
|
168
|
-
* @param {?} data
|
|
169
|
-
* @return {?}
|
|
170
|
-
*/
|
|
171
|
-
export function isEmptyData(data) {
|
|
172
|
-
if (data) {
|
|
173
|
-
return Object.keys(data).findIndex(port => {
|
|
174
|
-
if (port != null && data[port]) {
|
|
175
|
-
return data[port].findIndex(row => row && row.length > 0) >= 0;
|
|
176
|
-
}
|
|
177
|
-
return false;
|
|
178
|
-
}) < 0;
|
|
179
|
-
}
|
|
180
|
-
return true;
|
|
181
|
-
}
|
|
182
|
-
/**
|
|
183
|
-
* @param {?} time
|
|
184
|
-
* @return {?}
|
|
185
|
-
*/
|
|
186
|
-
export function sleep(time) {
|
|
187
|
-
return new Promise((resolve) => setTimeout(resolve, time));
|
|
188
|
-
}
|
|
189
|
-
/**
|
|
190
|
-
* @param {?} nsAll
|
|
191
|
-
* @param {?} nsContent
|
|
192
|
-
* @return {?}
|
|
193
|
-
*/
|
|
194
|
-
export function setChartHeight(nsAll, nsContent) {
|
|
195
|
-
// const item1 = (document.getElementsByClassName('nameserver-history-all') as HTMLCollectionOf<HTMLElement>)[0];
|
|
196
|
-
// const item2 = (document.getElementsByClassName('nameserver-history-content') as HTMLCollectionOf<HTMLElement>)[0];
|
|
197
|
-
if (nsAll && nsContent) {
|
|
198
|
-
/** @type {?} */
|
|
199
|
-
const chartHeight = nsAll.offsetWidth * 0.75 / 2 + 10;
|
|
200
|
-
nsContent.style.height = `${chartHeight}px`;
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktdXRpbC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1oYW5hLW5hbWVzZXJ2ZXItaGlzdG9yeS12aWV3ZXIvIiwic291cmNlcyI6WyJzcmMvbmFtZXNlcnZlci1oaXN0b3J5LXZpZXdlci91dGlscy91aS11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzNDLE9BQU8sRUFBQyxRQUFRLEVBQXlCLE1BQU0sVUFBVSxDQUFDOzs7OztNQUtwRCx1QkFBdUIsR0FBRyxDQUFDOzs7Ozs7O01BTzNCLHVCQUF1QixHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDOzs7OztBQUs1RixNQUFNLFVBQVUseUJBQXlCO0lBQ3JDLE9BQU8sdUJBQXVCLENBQUM7QUFDbkMsQ0FBQzs7Ozs7OztBQU9ELE1BQU0sVUFBVSxjQUFjLENBQUMsS0FBZSxFQUFFLElBQVk7SUFDMUQsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3JDLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNyQyx5QkFBeUI7WUFDekIsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDdEIsNENBQTRDO2dCQUM1QyxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2pCO2lCQUFNO2dCQUNMLGlFQUFpRTtnQkFDakUsSUFBSSxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENB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SUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3hDLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzlCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNoRTtZQUNELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQ1I7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7Ozs7O0FBRUQsTUFBTSxVQUFVLEtBQUssQ0FBRSxJQUFZO0lBQ2pDLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUM3RCxDQUFDOzs7Ozs7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLEtBQUssRUFBRSxTQUFTO0lBQzdDLGlIQUFpSDtJQUNqSCxxSEFBcUg7SUFDckgsSUFBSSxLQUFLLElBQUksU0FBUyxFQUFFOztjQUNoQixXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLEVBQUU7UUFDckQsU0FBUyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxXQUFXLElBQUksQ0FBQztLQUM3QztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRSZWFsUG9ydHMgfSBmcm9tICcuL2ZpbGUtdXRpbCc7XHJcbmltcG9ydCB7VW5pdFR5cGUsIFBvcnQsIENoYXJ0Q29udGVudERhdGF9IGZyb20gJy4uL3R5cGVzJztcclxuXHJcbi8qKlxyXG4gKiBGb3Igc29tZSByZWFzb24sIGhhbmEgc3R1ZGlvIHdpbGwgYWJhbmRvbiB0aGUgbGFzdCBsaW5lIG9mIG5hbWVzZXJ2ZXIgaGlzdG9yeSB0cmFjZSBmaWxlXHJcbiAqL1xyXG5jb25zdCBfSUdOT1JFRF9MSU5FX0ZST01fVEFJTCA9IDE7XHJcblxyXG4vKipcclxuICogTm9uZSBpbmRleCBzZXJ2ZXIgcG9ydHMgaW4gbmFtZSBzZXJ2ZXIgaGlzdG9yeSxcclxuICogMDE6IG5hbWUgc2VydmVyOyAwMjogcHJlcHJvY2Vzc29yOyAwNDogc2NyaXB0IHNlcnZlcjsgMDU6IHN0YXRpc3RpY3Mgc2VydmVyIC8gZGlzZXJ2ZXI7XHJcbiAqIDA2OiB3ZWIgZGlzcGF0Y2hlcjsgMDc6IHhzZW5naW5lOyAxMCBjb21waWxlc2VydmVyOyAxMSBkcHNlcnZlcjsgMTIgZXNzZXJ2ZXI7IDI5IHhzY29udHJvbGxlclxyXG4gKi9cclxuY29uc3QgX05PTl9JTkRFWF9TRVJWRVJfUE9SVFMgPSBbJzAxJywgJzAyJywgJzA0JywgJzA1JywgJzA2JywgJzA3JywgJzEwJywgJzExJywgJzEyJywgJzI5J107XHJcblxyXG4vKipcclxuICogR2V0IHRoZSBpZ25vcmVkIGxpbmUgbnVtYmVyIGZyb20gdGFpbCAoRm9yIHNvbWUgcmVhc29uLCBoYW5hIHN0dWRpbyB3aWxsIGFiYW5kb24gdGhlIGxhc3QgbGluZSBvZiBuYW1lc2VydmVyIGhpc3RvcnkgdHJhY2UgZmlsZSkuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0SWdub3JlZExpbmVOdW1Gcm9tVGFpbCgpIHtcclxuICAgIHJldHVybiBfSUdOT1JFRF9MSU5FX0ZST01fVEFJTDtcclxufVxyXG5cclxuLyoqXHJcbiAqIGdldCB0aGUgcG9ydCB0aGF0IG5lZWRzIHRvIGJlIGRpc3BsYXllZCBmcm9tIHBvcnRzIGxpc3QgdmlhIHRoZSBzZWxlY3RlZCBwb3J0XHJcbiAqIEBwYXJhbSBwb3J0cyBvdmVyYWxsIHBvcnRzIGxpc3RcclxuICogQHBhcmFtIHBvcnQgdGhlIHNlbGVjdGVkIHBvcnRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXREaXNwbGF5UG9ydChwb3J0czogc3RyaW5nW10sIHBvcnQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgaWYgKHBvcnRzICE9IG51bGwgJiYgcG9ydHMubGVuZ3RoID4gMCkge1xyXG4gICAgaWYgKHBvcnQgPT0gbnVsbCB8fCBwb3J0Lmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAvLyBpZiBubyBwb3J0IGlzIHNlbGVjdGVkXHJcbiAgICAgIGlmIChwb3J0cy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgICAvLyBub3QgbWRjIHN5c3RlbSwgd2lsbCBkaXNwbGF5IHRoZSBvbmx5IG9uZVxyXG4gICAgICAgIHBvcnQgPSBwb3J0c1swXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAvLyBzZWxlY3QgdGhlIGZpcnN0IHNlcnZpY2UgKG5vdCBpbiBfTk9OX0lOREVYX1NFUlZFUl9QT1JUUyBsaXN0KVxyXG4gICAgICAgIHBvcnQgPSBnZXRSZWFsUG9ydHMocG9ydHMpLmZpbmQocCA9PiBfTk9OX0lOREVYX1NFUlZFUl9QT1JUUy5pbmRleE9mKHAuc2xpY2UoLTIpKSA8IDApO1xyXG4gICAgICAgIGlmIChwb3J0ID09IG51bGwpIHtcclxuICAgICAgICAgIHBvcnQgPSBnZXRSZWFsUG9ydHMocG9ydHMpWzBdO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gZ2V0IHJlYWwgcG9ydCBpcyBwb3J0IGlzIHNvbWUgdGhpbmcgbGlrZSAzKiowM1xyXG4gICAgICBpZiAocG9ydC5zbGljZSgxLCAzKSA9PT0gJyoqJykge1xyXG4gICAgICAgIHBvcnQgPSBwb3J0cy5maW5kKGtleSA9PiBrZXkuc2xpY2UoLTIpID09PSBwb3J0LnNsaWNlKC0yKSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcG9ydCA9IHBvcnRzLmZpbmQoa2V5ID0+IGtleSA9PT0gcG9ydCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9IGVsc2Uge1xyXG4gICAgcG9ydCA9IHZvaWQgMDtcclxuICB9XHJcbiAgcmV0dXJuIHBvcnQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZW5lcmF0ZSB0aGUgcG9ydHMgZm9yIG5neC1zZWxlY3QuXHJcbiAqIElmIHRoZSBwcm92aWRlZCBwb3J0cyBpcyBub3QgbnVsbCBhbmQgbm8gcG9ydCBoYXMgYmVlbiBzZWxlY3RlZCxcclxuICogd2lsbCBjaG9vc2UgdGhlIGZpcnN0IGl0ZW0gd2hpY2ggaXMgbm90IDAxIChuYW1lc2VydmVyKSBvciAwNyAoeHNlbmdpbmUpXHJcbiAqXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVQb3J0cyhwb3J0czogc3RyaW5nW10gPSBudWxsLCBzZWxlY3RlZFBvcnQ6IHN0cmluZyA9IG51bGwpOiBQb3J0W10ge1xyXG4gIGlmIChwb3J0cyA9PSBudWxsKSB7XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9IGVsc2Uge1xyXG4gICAgLy8gaWYgbm8gc2VsZWN0aW9uLCBjaG9vc2UgdGhlIGZpcnN0IGl0ZW0gd2hpY2ggaXMgbm90IDAxIChuYW1lc2VydmVyKSBvciAwNyAoeHNlbmdpbmUpXHJcbiAgICBpZiAoc2VsZWN0ZWRQb3J0ID09IG51bGwgfHwgc2VsZWN0ZWRQb3J0ID09PSAnJykge1xyXG4gICAgICBjb25zdCBmaXJzdEluZGV4U2VydmVyID0gcG9ydHMuZmluZChwID0+IF9OT05fSU5ERVhfU0VSVkVSX1BPUlRTLmluZGV4T2YocC5zbGljZSgtMikpIDwgMCk7XHJcbiAgICAgIHNlbGVjdGVkUG9ydCA9IGZpcnN0SW5kZXhTZXJ2ZXIgPyBmaXJzdEluZGV4U2VydmVyIDogcG9ydHNbMF07XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGluZGV4ID0gcG9ydHMuZmluZEluZGV4KHBvcnQgPT4gcG9ydCA9PT0gc2VsZWN0ZWRQb3J0KTtcclxuICAgIGlmIChpbmRleCA9PT0gLTEpIHtcclxuICAgICAgLy8gc2VsZWN0aW9uIGlzIG5vdCBleGlzdHMgaW4gdGhlIGZpbGVcclxuICAgICAgaW5kZXggPSAwO1xyXG4gICAgfVxyXG4gICAgY29uc3QgbmV3UG9ydHM6IFBvcnRbXSA9IHBvcnRzLm1hcChwb3J0ID0+ICh7aWQ6IHBvcnQsIHRleHQ6IHBvcnR9KSk7XHJcbiAgICBuZXdQb3J0c1tpbmRleF0uc2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgcmV0dXJuIG5ld1BvcnRzO1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIGdldCB1bml0IGZhY3RvciBieSB1bml0XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0VW5pdEZhY3Rvcih1bml0VHlwZTogVW5pdFR5cGUpOiBudW1iZXIge1xyXG4gIGxldCB1bml0RmFjdG9yID0gMTtcclxuICBzd2l0Y2ggKHVuaXRUeXBlKSB7XHJcbiAgICBjYXNlIFVuaXRUeXBlLlR5cGVHQjpcclxuICAgICAgLy8gQllURSB0byBHQlxyXG4gICAgICB1bml0RmFjdG9yID0gMTAyNCAqIDEwMjQgKiAxMDI0O1xyXG4gICAgICBicmVhaztcclxuICAgIGNhc2UgVW5pdFR5cGUuVHlwZU1COlxyXG4gICAgY2FzZSBVbml0VHlwZS5UeXBlTUJTZWM6XHJcbiAgICAgIC8vIEJZVEUgdG8gTUJcclxuICAgICAgdW5pdEZhY3RvciA9IDEwMjQgKiAxMDI0O1xyXG4gICAgICBicmVhaztcclxuICAgIGNhc2UgVW5pdFR5cGUuVHlwZVNlY1NlYzpcclxuICAgICAgLy8gbWljcm8gc2Vjb25kIHRvIHNlY29uZFxyXG4gICAgICB1bml0RmFjdG9yID0gMTAwMDAwMDtcclxuICB9XHJcbiAgcmV0dXJuIHVuaXRGYWN0b3I7XHJcbn1cclxuLyoqXHJcbiAqIGdldCB2YWx1ZSBieSB1bml0IChkaXZpZGVkIGJ5IHRoZSB1bml0IGZhY3RvcikuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0VmFsdWVCeVVuaXQodmFsdWU6IG51bWJlciwgdW5pdDogVW5pdFR5cGUpOiBudW1iZXIge1xyXG4gIHJldHVybiAodmFsdWUgLyBnZXRVbml0RmFjdG9yKHVuaXQpKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIGdldCByb3VuZGVkIHZhbHVlOiBpZiB2YWx1ZSA+PSAxMCwgcm91bmQgdG8gaW50ZWdlcjsgaWYgdmFsdWUgPCAxMCwgcm91bmQgdG8gYXQgbW9zdCAyIGRlY2ltYWwgcGxhY2VzXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0Um91bmRlZFZhbHVlKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xyXG4gIHJldHVybiB2YWx1ZSA+PSAxMCA/IE1hdGgucm91bmQgKHZhbHVlKSA6IE1hdGgucm91bmQodmFsdWUgKiAxMDApIC8gMTAwO1xyXG59XHJcblxyXG4vKipcclxuICogY2hlY2sgd2hldGhlciB1bml0IGlzIHRpbWUgcmVsYXRlZC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1VuaXRUaW1lUmVsYXRlZCAodW5pdDogVW5pdFR5cGUpOiBib29sZWFuIHtcclxuICByZXR1cm4gdW5pdCA9PT0gVW5pdFR5cGUuVHlwZU1CU2VjIHx8IHVuaXQgPT09IFVuaXRUeXBlLlR5cGVTZWMgfHwgdW5pdCA9PT0gVW5pdFR5cGUuVHlwZVNlY1NlYztcclxufVxyXG5cclxuLyoqXHJcbiAqIGNhbGN1bGF0ZSBZU2NhbGUgYmFzZSBvbiB0aGUgcHJvdmlkZWQgdmFsdWVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVZU2NhbGUodmFsdWU6IG51bWJlcik6IG51bWJlciB7XHJcbiAgLy8gcm91bmQgdXAgdG8gbmV4dCAyLDUsMTAsMjAsNTAsMTAwLC4uLlxyXG4gIGlmICh2YWx1ZSA8PSAwKSB7XHJcbiAgICByZXR1cm4gMTAwO1xyXG4gIH1cclxuICBjb25zdCBzY2FsZSA9IE1hdGgucG93KCAxMCwgTWF0aC5mbG9vcihNYXRoLmxvZzEwKHZhbHVlKSkpO1xyXG4gIGlmIChzY2FsZSA+PSB2YWx1ZSkge1xyXG4gICAgcmV0dXJuIHNjYWxlO1xyXG4gIH1cclxuICBpZiAoMiAqIHNjYWxlID49IHZhbHVlKSB7XHJcbiAgICByZXR1cm4gMiAqIHNjYWxlO1xyXG4gIH1cclxuICBpZiAoIDUgKiBzY2FsZSA+PSB2YWx1ZSkge1xyXG4gICAgcmV0dXJuIDUgKiBzY2FsZTtcclxuICB9XHJcblxyXG4gIHJldHVybiAxMCAqIHNjYWxlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXNFbXB0eURhdGEoZGF0YTogQ2hhcnRDb250ZW50RGF0YSk6IGJvb2xlYW4ge1xyXG4gIGlmIChkYXRhKSB7XHJcbiAgICByZXR1cm4gT2JqZWN0LmtleXMoZGF0YSkuZmluZEluZGV4KHBvcnQgPT4ge1xyXG4gICAgICBpZiAocG9ydCAhPSBudWxsICYmIGRhdGFbcG9ydF0pIHtcclxuICAgICAgICByZXR1cm4gZGF0YVtwb3J0XS5maW5kSW5kZXgocm93ID0+IHJvdyAmJiByb3cubGVuZ3RoID4gMCkgPj0gMDtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9KSA8IDA7XHJcbiAgfVxyXG4gIHJldHVybiB0cnVlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2xlZXAgKHRpbWU6IG51bWJlcik6IFByb21pc2U8YW55PiB7XHJcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIHRpbWUpKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldENoYXJ0SGVpZ2h0KG5zQWxsLCBuc0NvbnRlbnQpOiB2b2lkIHtcclxuICAvLyBjb25zdCBpdGVtMSA9IChkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCduYW1lc2VydmVyLWhpc3RvcnktYWxsJykgYXMgSFRNTENvbGxlY3Rpb25PZjxIVE1MRWxlbWVudD4pWzBdO1xyXG4gIC8vIGNvbnN0IGl0ZW0yID0gKGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoJ25hbWVzZXJ2ZXItaGlzdG9yeS1jb250ZW50JykgYXMgSFRNTENvbGxlY3Rpb25PZjxIVE1MRWxlbWVudD4pWzBdO1xyXG4gIGlmIChuc0FsbCAmJiBuc0NvbnRlbnQpIHtcclxuICAgIGNvbnN0IGNoYXJ0SGVpZ2h0ID0gbnNBbGwub2Zmc2V0V2lkdGggKiAwLjc1IC8gMiArIDEwO1xyXG4gICAgbnNDb250ZW50LnN0eWxlLmhlaWdodCA9IGAke2NoYXJ0SGVpZ2h0fXB4YDtcclxuICB9XHJcbn1cclxuXHJcbiJdfQ==
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Generated bundle index. Do not edit.
|
|
7
|
-
*/
|
|
8
|
-
export { NameserverHistoryModule } from './public-api';
|
|
9
|
-
export { AlertModule as ɵh, FileDropInputComponent as ɵb, InstructionComponent as ɵf, NameServerHistoryComponent as ɵa, PortSelectorComponent as ɵe, ProgressBarComponent as ɵc, TimeRangeSelectorComponent as ɵg, TimezoneSelectorComponent as ɵd } from './src/nameserver-history-viewer/components';
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWhhbmEtbmFtZXNlcnZlci1oaXN0b3J5LXZpZXdlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1oYW5hLW5hbWVzZXJ2ZXItaGlzdG9yeS12aWV3ZXIvIiwic291cmNlcyI6WyJuZ3gtaGFuYS1uYW1lc2VydmVyLWhpc3Rvcnktdmlld2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSx3Q0FBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsc0JBQXNCLElBQUksRUFBRSxFQUFDLG9CQUFvQixJQUFJLEVBQUUsRUFBQywwQkFBMEIsSUFBSSxFQUFFLEVBQUMscUJBQXFCLElBQUksRUFBRSxFQUFDLG9CQUFvQixJQUFJLEVBQUUsRUFBQywwQkFBMEIsSUFBSSxFQUFFLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sNENBQTRDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7QWxlcnRNb2R1bGUgYXMgybVoLEZpbGVEcm9wSW5wdXRDb21wb25lbnQgYXMgybViLEluc3RydWN0aW9uQ29tcG9uZW50IGFzIMm1ZixOYW1lU2VydmVySGlzdG9yeUNvbXBvbmVudCBhcyDJtWEsUG9ydFNlbGVjdG9yQ29tcG9uZW50IGFzIMm1ZSxQcm9ncmVzc0JhckNvbXBvbmVudCBhcyDJtWMsVGltZVJhbmdlU2VsZWN0b3JDb21wb25lbnQgYXMgybVnLFRpbWV6b25lU2VsZWN0b3JDb21wb25lbnQgYXMgybVkfSBmcm9tICcuL3NyYy9uYW1lc2VydmVyLWhpc3Rvcnktdmlld2VyL2NvbXBvbmVudHMnOyJdfQ==
|
package/esm5/public-api.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
export { NameserverHistoryModule } from './src/nameserver-history-viewer/index';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1oYW5hLW5hbWVzZXJ2ZXItaGlzdG9yeS12aWV3ZXIvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSx3Q0FBYyx1Q0FBdUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjL25hbWVzZXJ2ZXItaGlzdG9yeS12aWV3ZXIvaW5kZXgnO1xyXG4iXX0=
|