tnp-helpers 16.0.7 → 16.0.9
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/assets/shared/shared_folder_info.txt +1 -1
- package/browser/README.md +24 -24
- package/browser/esm2022/lib/for-browser/angular.helper.mjs +89 -0
- package/browser/esm2022/lib/for-browser/helpers-browser.mjs +48 -0
- package/browser/esm2022/lib/helpers-array-obj.mjs +3 -4
- package/browser/esm2022/lib/helpers-binary.mjs +93 -0
- package/browser/esm2022/lib/helpers-numbers.mjs +5 -1
- package/browser/esm2022/lib/helpers-strings.mjs +8 -3
- package/browser/esm2022/lib/helpers.mjs +28 -16
- package/browser/esm2022/lib/index.mjs +8 -12
- package/browser/esm2022/lib/models.mjs +4 -0
- package/browser/esm2022/lib/project.mjs +4 -25
- package/browser/esm2022/lib/validators/validators-git.mjs +12 -0
- package/browser/esm2022/lib/validators/validators-network.mjs +18 -0
- package/browser/esm2022/lib/validators/validators.mjs +10 -0
- package/browser/fesm2022/tnp-helpers.mjs +262 -617
- package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
- package/{client/lib → browser/lib/for-browser}/angular.helper.d.ts +5 -5
- package/{client/lib → browser/lib/for-browser}/helpers-browser.d.ts +3 -3
- package/browser/lib/helpers-binary.d.ts +27 -0
- package/browser/lib/helpers-numbers.d.ts +4 -0
- package/browser/lib/helpers-strings.d.ts +5 -0
- package/browser/lib/helpers.d.ts +26 -12
- package/browser/lib/index.d.ts +7 -10
- package/browser/lib/models.d.ts +11 -0
- package/browser/lib/project.d.ts +25 -33
- package/browser/lib/validators/validators-git.d.ts +4 -0
- package/browser/lib/validators/validators-network.d.ts +4 -0
- package/browser/lib/validators/validators.d.ts +7 -0
- package/client/README.md +24 -24
- package/client/esm2022/lib/for-browser/angular.helper.mjs +89 -0
- package/client/esm2022/lib/for-browser/helpers-browser.mjs +48 -0
- package/client/esm2022/lib/helpers-array-obj.mjs +3 -4
- package/client/esm2022/lib/helpers-binary.mjs +93 -0
- package/client/esm2022/lib/helpers-numbers.mjs +5 -1
- package/client/esm2022/lib/helpers-strings.mjs +8 -3
- package/client/esm2022/lib/helpers.mjs +28 -16
- package/client/esm2022/lib/index.mjs +8 -12
- package/client/esm2022/lib/models.mjs +4 -0
- package/client/esm2022/lib/project.mjs +4 -25
- package/client/esm2022/lib/validators/validators-git.mjs +12 -0
- package/client/esm2022/lib/validators/validators-network.mjs +18 -0
- package/client/esm2022/lib/validators/validators.mjs +10 -0
- package/client/fesm2022/tnp-helpers.mjs +262 -617
- package/client/fesm2022/tnp-helpers.mjs.map +1 -1
- package/{browser/lib → client/lib/for-browser}/angular.helper.d.ts +5 -5
- package/{websql/lib → client/lib/for-browser}/helpers-browser.d.ts +3 -3
- package/client/lib/helpers-binary.d.ts +27 -0
- package/client/lib/helpers-numbers.d.ts +4 -0
- package/client/lib/helpers-strings.d.ts +5 -0
- package/client/lib/helpers.d.ts +26 -12
- package/client/lib/index.d.ts +7 -10
- package/client/lib/models.d.ts +11 -0
- package/client/lib/project.d.ts +25 -33
- package/client/lib/validators/validators-git.d.ts +4 -0
- package/client/lib/validators/validators-network.d.ts +4 -0
- package/client/lib/validators/validators.d.ts +7 -0
- package/client/package.json +51 -40
- package/index.js.map +1 -1
- package/lib/{helpers-cli-tool.backend.d.ts → for-backend/helpers-cli-tool.backend.d.ts} +1 -1
- package/lib/{helpers-cli-tool.backend.js → for-backend/helpers-cli-tool.backend.js} +1 -1
- package/lib/for-backend/helpers-cli-tool.backend.js.map +1 -0
- package/lib/{helpers-console-gui.js → for-backend/helpers-console-gui.js} +1 -1
- package/lib/for-backend/helpers-console-gui.js.map +1 -0
- package/lib/{helpers-dependencies.backend.d.ts → for-backend/helpers-dependencies.backend.d.ts} +1 -1
- package/lib/{helpers-dependencies.backend.js → for-backend/helpers-dependencies.backend.js} +1 -1
- package/lib/for-backend/helpers-dependencies.backend.js.map +1 -0
- package/lib/{helpers-file-folders.backend.d.ts → for-backend/helpers-file-folders.backend.d.ts} +1 -1
- package/lib/{helpers-file-folders.backend.js → for-backend/helpers-file-folders.backend.js} +1 -1
- package/lib/for-backend/helpers-file-folders.backend.js.map +1 -0
- package/lib/{helpers-git.backend.d.ts → for-backend/helpers-git.backend.d.ts} +1 -1
- package/lib/{helpers-git.backend.js → for-backend/helpers-git.backend.js} +1 -1
- package/lib/for-backend/helpers-git.backend.js.map +1 -0
- package/lib/for-backend/helpers-network.backend.js.map +1 -0
- package/lib/for-backend/helpers-npm.backend.js.map +1 -0
- package/lib/{helpers-path.backend.js → for-backend/helpers-path.backend.js} +3 -3
- package/lib/for-backend/helpers-path.backend.js.map +1 -0
- package/lib/{helpers-process.backend.js → for-backend/helpers-process.backend.js} +1 -1
- package/lib/for-backend/helpers-process.backend.js.map +1 -0
- package/lib/{helpers-system-terminal.backend.js → for-backend/helpers-system-terminal.backend.js} +1 -1
- package/lib/for-backend/helpers-system-terminal.backend.js.map +1 -0
- package/lib/for-backend/helpers-vscode.backend.d.ts +5 -0
- package/lib/{helpers-vscode.backend.js → for-backend/helpers-vscode.backend.js} +1 -1
- package/lib/for-backend/helpers-vscode.backend.js.map +1 -0
- package/lib/for-backend/ts-code/index.js.map +1 -0
- package/lib/{ts-code → for-backend/ts-code}/ts-code-extractor.js +1 -1
- package/lib/for-backend/ts-code/ts-code-extractor.js.map +1 -0
- package/lib/{ts-code → for-backend/ts-code}/ts-code-modifier.backend.js +1 -1
- package/lib/for-backend/ts-code/ts-code-modifier.backend.js.map +1 -0
- package/lib/{angular.helper.d.ts → for-browser/angular.helper.d.ts} +5 -5
- package/lib/for-browser/angular.helper.js +6 -0
- package/lib/for-browser/angular.helper.js.map +1 -0
- package/lib/{helpers-browser.d.ts → for-browser/helpers-browser.d.ts} +3 -3
- package/lib/{helpers-browser.js → for-browser/helpers-browser.js} +12 -12
- package/lib/for-browser/helpers-browser.js.map +1 -0
- package/lib/git-project.js +1 -1
- package/lib/git-project.js.map +1 -1
- package/lib/helpers-array-obj.js +3 -3
- package/lib/helpers-array-obj.js.map +1 -1
- package/lib/helpers-binary.d.ts +28 -0
- package/lib/helpers-binary.js +127 -0
- package/lib/helpers-binary.js.map +1 -0
- package/lib/helpers-json5.backend.js +3 -3
- package/lib/helpers-json5.backend.js.map +1 -1
- package/lib/helpers-numbers.d.ts +4 -0
- package/lib/helpers-numbers.js +4 -0
- package/lib/helpers-numbers.js.map +1 -1
- package/lib/helpers-strings-regexes.js.map +1 -1
- package/lib/helpers-strings.d.ts +5 -0
- package/lib/helpers-strings.js +7 -2
- package/lib/helpers-strings.js.map +1 -1
- package/lib/helpers.d.ts +40 -26
- package/lib/helpers.js +61 -51
- package/lib/helpers.js.map +1 -1
- package/lib/index.d.ts +7 -11
- package/lib/index.js +8 -14
- package/lib/index.js.map +1 -1
- package/lib/models.d.ts +10 -0
- package/lib/{firedev-models.js → models.js} +1 -1
- package/lib/models.js.map +1 -0
- package/lib/old/base-component.d.ts +0 -0
- package/lib/old/base-component.js +6 -0
- package/lib/old/base-component.js.map +1 -0
- package/lib/old/base-formly-component.d.ts +0 -0
- package/lib/old/base-formly-component.js +6 -0
- package/lib/old/base-formly-component.js.map +1 -0
- package/lib/old/condition-wait.d.ts +0 -0
- package/lib/old/condition-wait.js +58 -0
- package/lib/old/condition-wait.js.map +1 -0
- package/lib/old/dual-component-ctrl.d.ts +0 -0
- package/lib/old/dual-component-ctrl.js +6 -0
- package/lib/old/dual-component-ctrl.js.map +1 -0
- package/lib/project.d.ts +24 -32
- package/lib/project.js +14 -32
- package/lib/project.js.map +1 -1
- package/lib/validators/validators-firedev.d.ts +3 -0
- package/lib/validators/validators-firedev.js +34 -0
- package/lib/validators/validators-firedev.js.map +1 -0
- package/lib/validators/validators-git.d.ts +3 -0
- package/lib/validators/validators-git.js +13 -0
- package/lib/validators/validators-git.js.map +1 -0
- package/lib/validators/validators-network.d.ts +3 -0
- package/lib/validators/validators-network.js +19 -0
- package/lib/validators/validators-network.js.map +1 -0
- package/lib/validators/validators.d.ts +6 -0
- package/lib/validators/validators.js +11 -0
- package/lib/validators/validators.js.map +1 -0
- package/package.json +5 -5
- package/package.json_devDependencies.json +222 -222
- package/package.json_tnp.json5 +49 -49
- package/tmp-environment.json +55 -44
- package/websql/README.md +24 -24
- package/websql/esm2022/lib/for-browser/angular.helper.mjs +89 -0
- package/websql/esm2022/lib/for-browser/helpers-browser.mjs +48 -0
- package/websql/esm2022/lib/helpers-array-obj.mjs +3 -4
- package/websql/esm2022/lib/helpers-binary.mjs +93 -0
- package/websql/esm2022/lib/helpers-numbers.mjs +5 -1
- package/websql/esm2022/lib/helpers-strings.mjs +8 -3
- package/websql/esm2022/lib/helpers.mjs +28 -16
- package/websql/esm2022/lib/index.mjs +8 -12
- package/websql/esm2022/lib/models.mjs +4 -0
- package/websql/esm2022/lib/project.mjs +4 -25
- package/websql/esm2022/lib/validators/validators-git.mjs +12 -0
- package/websql/esm2022/lib/validators/validators-network.mjs +18 -0
- package/websql/esm2022/lib/validators/validators.mjs +10 -0
- package/websql/fesm2022/tnp-helpers.mjs +262 -617
- package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
- package/websql/lib/{angular.helper.d.ts → for-browser/angular.helper.d.ts} +5 -5
- package/{browser/lib → websql/lib/for-browser}/helpers-browser.d.ts +3 -3
- package/websql/lib/helpers-binary.d.ts +27 -0
- package/websql/lib/helpers-numbers.d.ts +4 -0
- package/websql/lib/helpers-strings.d.ts +5 -0
- package/websql/lib/helpers.d.ts +26 -12
- package/websql/lib/index.d.ts +7 -10
- package/websql/lib/models.d.ts +11 -0
- package/websql/lib/project.d.ts +25 -33
- package/websql/lib/validators/validators-git.d.ts +4 -0
- package/websql/lib/validators/validators-network.d.ts +4 -0
- package/websql/lib/validators/validators.d.ts +7 -0
- package/browser/esm2022/lib/angular.helper.mjs +0 -88
- package/browser/esm2022/lib/base-component.mjs +0 -51
- package/browser/esm2022/lib/base-formly-component.mjs +0 -114
- package/browser/esm2022/lib/condition-wait.mjs +0 -46
- package/browser/esm2022/lib/constants.mjs +0 -9
- package/browser/esm2022/lib/dual-component-ctrl.mjs +0 -119
- package/browser/esm2022/lib/firedev-models.mjs +0 -4
- package/browser/esm2022/lib/helpers-browser.mjs +0 -48
- package/browser/esm2022/lib/helpers-console-gui.mjs +0 -10
- package/browser/esm2022/lib/helpers-environment.mjs +0 -33
- package/browser/esm2022/lib/long-press.directive.mjs +0 -114
- package/browser/esm2022/lib/resize-service.mjs +0 -23
- package/browser/lib/base-component.d.ts +0 -18
- package/browser/lib/base-formly-component.d.ts +0 -32
- package/browser/lib/condition-wait.d.ts +0 -9
- package/browser/lib/constants.d.ts +0 -8
- package/browser/lib/dual-component-ctrl.d.ts +0 -26
- package/browser/lib/firedev-models.d.ts +0 -14
- package/browser/lib/helpers-console-gui.d.ts +0 -7
- package/browser/lib/helpers-environment.d.ts +0 -6
- package/browser/lib/long-press.directive.d.ts +0 -26
- package/browser/lib/resize-service.d.ts +0 -10
- package/client/esm2022/lib/angular.helper.mjs +0 -88
- package/client/esm2022/lib/base-component.mjs +0 -51
- package/client/esm2022/lib/base-formly-component.mjs +0 -114
- package/client/esm2022/lib/condition-wait.mjs +0 -46
- package/client/esm2022/lib/constants.mjs +0 -9
- package/client/esm2022/lib/dual-component-ctrl.mjs +0 -119
- package/client/esm2022/lib/firedev-models.mjs +0 -4
- package/client/esm2022/lib/helpers-browser.mjs +0 -48
- package/client/esm2022/lib/helpers-console-gui.mjs +0 -10
- package/client/esm2022/lib/helpers-environment.mjs +0 -33
- package/client/esm2022/lib/long-press.directive.mjs +0 -114
- package/client/esm2022/lib/resize-service.mjs +0 -23
- package/client/lib/base-component.d.ts +0 -18
- package/client/lib/base-formly-component.d.ts +0 -32
- package/client/lib/condition-wait.d.ts +0 -9
- package/client/lib/constants.d.ts +0 -8
- package/client/lib/dual-component-ctrl.d.ts +0 -26
- package/client/lib/firedev-models.d.ts +0 -14
- package/client/lib/helpers-console-gui.d.ts +0 -7
- package/client/lib/helpers-environment.d.ts +0 -6
- package/client/lib/long-press.directive.d.ts +0 -26
- package/client/lib/resize-service.d.ts +0 -10
- package/lib/angular.helper.js +0 -6
- package/lib/angular.helper.js.map +0 -1
- package/lib/base-component.d.ts +0 -14
- package/lib/base-component.js +0 -6
- package/lib/base-component.js.map +0 -1
- package/lib/base-formly-component.d.ts +0 -28
- package/lib/base-formly-component.js +0 -6
- package/lib/base-formly-component.js.map +0 -1
- package/lib/condition-wait.d.ts +0 -8
- package/lib/condition-wait.js +0 -94
- package/lib/condition-wait.js.map +0 -1
- package/lib/constants.d.ts +0 -7
- package/lib/constants.js +0 -11
- package/lib/constants.js.map +0 -1
- package/lib/dual-component-ctrl.d.ts +0 -25
- package/lib/dual-component-ctrl.js +0 -6
- package/lib/dual-component-ctrl.js.map +0 -1
- package/lib/firedev-models.d.ts +0 -13
- package/lib/firedev-models.js.map +0 -1
- package/lib/helpers-browser.js.map +0 -1
- package/lib/helpers-cli-tool.backend.js.map +0 -1
- package/lib/helpers-console-gui.js.map +0 -1
- package/lib/helpers-dependencies.backend.js.map +0 -1
- package/lib/helpers-environment.d.ts +0 -5
- package/lib/helpers-environment.js +0 -35
- package/lib/helpers-environment.js.map +0 -1
- package/lib/helpers-file-folders.backend.js.map +0 -1
- package/lib/helpers-git.backend.js.map +0 -1
- package/lib/helpers-morphi-framework.backend.d.ts +0 -4
- package/lib/helpers-morphi-framework.backend.js +0 -58
- package/lib/helpers-morphi-framework.backend.js.map +0 -1
- package/lib/helpers-network.backend.js.map +0 -1
- package/lib/helpers-npm.backend.js.map +0 -1
- package/lib/helpers-path.backend.js.map +0 -1
- package/lib/helpers-process.backend.js.map +0 -1
- package/lib/helpers-system-terminal.backend.js.map +0 -1
- package/lib/helpers-vscode.backend.d.ts +0 -5
- package/lib/helpers-vscode.backend.js.map +0 -1
- package/lib/long-press.directive.d.ts +0 -22
- package/lib/long-press.directive.js +0 -140
- package/lib/long-press.directive.js.map +0 -1
- package/lib/merge-helpers.backend.d.ts +0 -23
- package/lib/merge-helpers.backend.js +0 -108
- package/lib/merge-helpers.backend.js.map +0 -1
- package/lib/resize-service.d.ts +0 -6
- package/lib/resize-service.js +0 -23
- package/lib/resize-service.js.map +0 -1
- package/lib/ts-code/index.js.map +0 -1
- package/lib/ts-code/ts-code-extractor.js.map +0 -1
- package/lib/ts-code/ts-code-modifier.backend.js.map +0 -1
- package/websql/esm2022/lib/angular.helper.mjs +0 -88
- package/websql/esm2022/lib/base-component.mjs +0 -51
- package/websql/esm2022/lib/base-formly-component.mjs +0 -114
- package/websql/esm2022/lib/condition-wait.mjs +0 -46
- package/websql/esm2022/lib/constants.mjs +0 -9
- package/websql/esm2022/lib/dual-component-ctrl.mjs +0 -119
- package/websql/esm2022/lib/firedev-models.mjs +0 -4
- package/websql/esm2022/lib/helpers-browser.mjs +0 -48
- package/websql/esm2022/lib/helpers-console-gui.mjs +0 -10
- package/websql/esm2022/lib/helpers-environment.mjs +0 -33
- package/websql/esm2022/lib/long-press.directive.mjs +0 -114
- package/websql/esm2022/lib/resize-service.mjs +0 -23
- package/websql/lib/base-component.d.ts +0 -18
- package/websql/lib/base-formly-component.d.ts +0 -32
- package/websql/lib/condition-wait.d.ts +0 -9
- package/websql/lib/constants.d.ts +0 -8
- package/websql/lib/dual-component-ctrl.d.ts +0 -26
- package/websql/lib/firedev-models.d.ts +0 -14
- package/websql/lib/helpers-console-gui.d.ts +0 -7
- package/websql/lib/helpers-environment.d.ts +0 -6
- package/websql/lib/long-press.directive.d.ts +0 -26
- package/websql/lib/resize-service.d.ts +0 -10
- /package/lib/{helpers-console-gui.d.ts → for-backend/helpers-console-gui.d.ts} +0 -0
- /package/lib/{helpers-network.backend.d.ts → for-backend/helpers-network.backend.d.ts} +0 -0
- /package/lib/{helpers-network.backend.js → for-backend/helpers-network.backend.js} +0 -0
- /package/lib/{helpers-npm.backend.d.ts → for-backend/helpers-npm.backend.d.ts} +0 -0
- /package/lib/{helpers-npm.backend.js → for-backend/helpers-npm.backend.js} +0 -0
- /package/lib/{helpers-path.backend.d.ts → for-backend/helpers-path.backend.d.ts} +0 -0
- /package/lib/{helpers-process.backend.d.ts → for-backend/helpers-process.backend.d.ts} +0 -0
- /package/lib/{helpers-system-terminal.backend.d.ts → for-backend/helpers-system-terminal.backend.d.ts} +0 -0
- /package/lib/{ts-code → for-backend/ts-code}/index.d.ts +0 -0
- /package/lib/{ts-code → for-backend/ts-code}/index.js +0 -0
- /package/lib/{ts-code → for-backend/ts-code}/ts-code-extractor.d.ts +0 -0
- /package/lib/{ts-code → for-backend/ts-code}/ts-code-modifier.backend.d.ts +0 -0
package/tmp-environment.json
CHANGED
|
@@ -43,12 +43,12 @@
|
|
|
43
43
|
"firedev-helpers"
|
|
44
44
|
]
|
|
45
45
|
},
|
|
46
|
-
"version": "16.0.
|
|
46
|
+
"version": "16.0.9",
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"json10-writer": "~16.0.
|
|
49
|
-
"morphi": "~16.
|
|
48
|
+
"json10-writer": "~16.0.45",
|
|
49
|
+
"morphi": "~16.2.1",
|
|
50
50
|
"task.js": "0.1.5",
|
|
51
|
-
"tnp-models": "~16.0.
|
|
51
|
+
"tnp-models": "~16.0.36"
|
|
52
52
|
},
|
|
53
53
|
"scripts": {
|
|
54
54
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
@@ -79,6 +79,8 @@
|
|
|
79
79
|
"@angular/router": "~16.0.0",
|
|
80
80
|
"@angular/service-worker": "~16.0.4",
|
|
81
81
|
"@babel/cli": "7.18.6",
|
|
82
|
+
"@compodoc/compodoc": "1.1.20",
|
|
83
|
+
"@cypress/schematic": "2.5.0",
|
|
82
84
|
"@iconify/icons-fa-solid": "1.2.2",
|
|
83
85
|
"@iconify/icons-mdi": "1.2.1",
|
|
84
86
|
"@mdi/js": "7.2.96",
|
|
@@ -100,7 +102,6 @@
|
|
|
100
102
|
"@ngx-translate/core": "15.0.0",
|
|
101
103
|
"@ngx-translate/http-loader": "8.0.0",
|
|
102
104
|
"@sweetalert2/ngx-sweetalert2": "12.1.0",
|
|
103
|
-
"@testdeck/jasmine": "0.3.3",
|
|
104
105
|
"@testdeck/jest": "0.3.3",
|
|
105
106
|
"@testdeck/mocha": "0.3.3",
|
|
106
107
|
"@types/chai": "4.1.2",
|
|
@@ -113,8 +114,7 @@
|
|
|
113
114
|
"@types/glob": "5.0.35",
|
|
114
115
|
"@types/http-proxy": "1.16.0",
|
|
115
116
|
"@types/http-proxy-middleware": "0.19.2",
|
|
116
|
-
"@types/
|
|
117
|
-
"@types/jasmine": "4.3.0",
|
|
117
|
+
"@types/jest": "29.5.2",
|
|
118
118
|
"@types/json-stringify-safe": "5.0.0",
|
|
119
119
|
"@types/json5": "0.0.29",
|
|
120
120
|
"@types/lockfile": "1.0.0",
|
|
@@ -134,9 +134,10 @@
|
|
|
134
134
|
"@types/watch": "1.0.0",
|
|
135
135
|
"accepts": "1.3.4",
|
|
136
136
|
"angular-material-css-vars": "5.0.2",
|
|
137
|
-
"
|
|
137
|
+
"animate.css": "4.1.1 ",
|
|
138
|
+
"any-project-cli": "~16.0.32",
|
|
138
139
|
"axios": "1.3.5",
|
|
139
|
-
"background-worker-process": "~16.0.
|
|
140
|
+
"background-worker-process": "~16.0.49",
|
|
140
141
|
"base32": "0.0.7",
|
|
141
142
|
"bcryptjs": "2.4.3",
|
|
142
143
|
"better-sqlite3": "7.6.2",
|
|
@@ -144,7 +145,7 @@
|
|
|
144
145
|
"bootstrap": "4.6.2",
|
|
145
146
|
"buffer-shims": "1.0.0",
|
|
146
147
|
"callsite-record": "4.1.3",
|
|
147
|
-
"chai": "4.
|
|
148
|
+
"chai": "4.3.7",
|
|
148
149
|
"chalk": "2.3.2",
|
|
149
150
|
"check-node-version": "3.2.0",
|
|
150
151
|
"cheerio": "1.0.0-rc.3",
|
|
@@ -160,6 +161,7 @@
|
|
|
160
161
|
"cors": "2.8.4",
|
|
161
162
|
"cpr": "3.0.1",
|
|
162
163
|
"cross-spawn": "7.0.3",
|
|
164
|
+
"cypress": "latest",
|
|
163
165
|
"dateformat": "3.0.3",
|
|
164
166
|
"detect-mocha": "0.1.0",
|
|
165
167
|
"diff": "3.2.0",
|
|
@@ -176,14 +178,15 @@
|
|
|
176
178
|
"express-session": "1.17.3",
|
|
177
179
|
"file-loader": "1.1.5",
|
|
178
180
|
"file-saver": "2.0.5",
|
|
181
|
+
"file-type": "18.5.0",
|
|
179
182
|
"firedev": "^16",
|
|
180
|
-
"firedev-crud": "~16.0.
|
|
181
|
-
"firedev-crud-deamon": "~16.0.
|
|
182
|
-
"firedev-ports": "~16.0.
|
|
183
|
-
"firedev-storage": "~16.0.
|
|
184
|
-
"firedev-type-sql": "~16.0.
|
|
185
|
-
"firedev-typeorm": "~16.0.
|
|
186
|
-
"firedev-ui": "~16.0.
|
|
183
|
+
"firedev-crud": "~16.0.54",
|
|
184
|
+
"firedev-crud-deamon": "~16.0.44",
|
|
185
|
+
"firedev-ports": "~16.0.49",
|
|
186
|
+
"firedev-storage": "~16.0.41",
|
|
187
|
+
"firedev-type-sql": "~16.0.2",
|
|
188
|
+
"firedev-typeorm": "~16.0.39",
|
|
189
|
+
"firedev-ui": "~16.0.8",
|
|
187
190
|
"fkill": "6.1.0",
|
|
188
191
|
"font-awesome": "4.7.0",
|
|
189
192
|
"form-data": "4.0.0",
|
|
@@ -191,52 +194,55 @@
|
|
|
191
194
|
"fuzzy": "0.1.3",
|
|
192
195
|
"glob": "7.1.2",
|
|
193
196
|
"gulp": "3.9.1",
|
|
197
|
+
"helmet": "7.0.0",
|
|
194
198
|
"hostile": "1.3.3",
|
|
195
199
|
"howler": "2.2.3",
|
|
196
200
|
"http-proxy": "1.16.2",
|
|
197
201
|
"http-proxy-middleware": "0.19.1",
|
|
198
202
|
"http-server": "0.11.1",
|
|
203
|
+
"image-focus": "1.2.1",
|
|
204
|
+
"immer": "10.0.2",
|
|
199
205
|
"immutable": "4.3.0",
|
|
200
|
-
"incremental-compiler": "~16.0.
|
|
206
|
+
"incremental-compiler": "~16.0.31",
|
|
201
207
|
"inquirer": "7.3.3",
|
|
202
208
|
"inquirer-autocomplete-prompt": "1.3.0",
|
|
203
209
|
"is-elevated": "3.0.0",
|
|
204
|
-
"isomorphic-region-loader": "~16.0.
|
|
210
|
+
"isomorphic-region-loader": "~16.0.42",
|
|
205
211
|
"istanbul-instrumenter-loader": "2.0.0",
|
|
206
|
-
"
|
|
212
|
+
"jest": "29.5.0",
|
|
213
|
+
"jest-date-mock": "1.0.8",
|
|
214
|
+
"jest-junit": "16.0.0",
|
|
215
|
+
"jest-marbles": "latest",
|
|
216
|
+
"jest-preset-angular": "13.1.1",
|
|
207
217
|
"jimp": "0.22.8",
|
|
218
|
+
"joi": "17.9.2",
|
|
208
219
|
"jscodeshift": "0.6.3",
|
|
209
220
|
"json-stringify-safe": "5.0.1",
|
|
210
|
-
"json10": "~16.0.
|
|
221
|
+
"json10": "~16.0.49",
|
|
211
222
|
"json5": "2.2.1",
|
|
212
223
|
"json5-writer": "0.2.0",
|
|
213
224
|
"jszip": "3.10.1",
|
|
214
|
-
"karma": "6.4.0",
|
|
215
|
-
"karma-chrome-launcher": "3.2.0",
|
|
216
225
|
"karma-cli": "1.0.1",
|
|
217
|
-
"karma-coverage": "2.2.0",
|
|
218
|
-
"karma-jasmine": "5.1.0",
|
|
219
|
-
"karma-jasmine-html-reporter": "2.0.0",
|
|
220
226
|
"lnk": "1.0.1",
|
|
221
227
|
"localforage": "1.10.0",
|
|
222
228
|
"lockfile": "1.0.4",
|
|
223
229
|
"lodash": "4.17.20",
|
|
224
|
-
"lodash-walk-object": "~16.0.
|
|
230
|
+
"lodash-walk-object": "~16.0.49",
|
|
225
231
|
"lowdb": "1.0.0",
|
|
226
|
-
"magic-renamer": "~16.0.
|
|
232
|
+
"magic-renamer": "~16.0.47",
|
|
227
233
|
"material-design-icons": "3.0.1",
|
|
228
234
|
"method-override": "2.3.10",
|
|
229
235
|
"minimist": "1.2.0",
|
|
230
236
|
"mkdirp": "0.5.1",
|
|
231
|
-
"mocha": "
|
|
237
|
+
"mocha": "10.2.0",
|
|
232
238
|
"moment": "2.29.3",
|
|
233
239
|
"ng-for-track-by-property": "16.0.1",
|
|
234
240
|
"ng-in-viewport": "15.0.2",
|
|
235
241
|
"ng-lock": "16.0.1",
|
|
236
242
|
"ng-packagr": "16.0.1",
|
|
237
|
-
"ng-talkback": "~16.
|
|
238
|
-
"ng2-logger": "~16.0.
|
|
239
|
-
"ng2-rest": "~16.0.
|
|
243
|
+
"ng-talkback": "~16.2.1",
|
|
244
|
+
"ng2-logger": "~16.0.7",
|
|
245
|
+
"ng2-rest": "~16.0.14",
|
|
240
246
|
"ngx-ace-wrapper": "14.0.0",
|
|
241
247
|
"ngx-editor": "15.3.0",
|
|
242
248
|
"ngx-highlightjs": "9.0.0",
|
|
@@ -267,6 +273,7 @@
|
|
|
267
273
|
"ps-list": "6.1.0",
|
|
268
274
|
"ps-node": "0.1.6",
|
|
269
275
|
"q": "1.5.1",
|
|
276
|
+
"rallax.js": "2.0.4",
|
|
270
277
|
"randomcolor": "0.5.3",
|
|
271
278
|
"record-replay-req-res-scenario": "~16.0.1",
|
|
272
279
|
"reflect-metadata": "0.1.10",
|
|
@@ -274,29 +281,33 @@
|
|
|
274
281
|
"rxjs": "~7.8.0",
|
|
275
282
|
"semver": "6.3.0",
|
|
276
283
|
"simple-git": "1.96.0",
|
|
284
|
+
"sinon": "15.2.0",
|
|
277
285
|
"sloc": "0.2.0",
|
|
278
286
|
"socket.io": "2.4.1",
|
|
279
287
|
"sort-package-json": "1.11.0",
|
|
280
288
|
"sql.js": "1.8.0",
|
|
281
|
-
"static-columns": "~16.0.
|
|
289
|
+
"static-columns": "~16.0.7",
|
|
282
290
|
"string-similarity": "4.0.2",
|
|
283
291
|
"sudo-block": "3.0.0",
|
|
292
|
+
"supertest": "6.3.3",
|
|
284
293
|
"sweetalert2": "11.7.12",
|
|
285
294
|
"systeminformation": "3.45.7",
|
|
286
295
|
"threads": "1.7.0",
|
|
287
|
-
"tnp-cli": "~16.0.
|
|
288
|
-
"tnp-config": "~16.0.
|
|
289
|
-
"tnp-core": "~16.0.
|
|
290
|
-
"tnp-db": "~16.0.
|
|
291
|
-
"tnp-helpers": "~16.0.
|
|
296
|
+
"tnp-cli": "~16.0.6",
|
|
297
|
+
"tnp-config": "~16.0.13",
|
|
298
|
+
"tnp-core": "~16.0.14",
|
|
299
|
+
"tnp-db": "~16.0.27",
|
|
300
|
+
"tnp-helpers": "~16.0.8",
|
|
292
301
|
"ts-debug": "1.3.0",
|
|
293
302
|
"ts-loader": "2.3.1",
|
|
294
303
|
"ts-node": "10.9.1",
|
|
295
304
|
"tslib": "~2.3.0",
|
|
305
|
+
"tslint": "5.9.1",
|
|
296
306
|
"turndown": "7.1.2",
|
|
297
307
|
"typeorm": "~0.3.10",
|
|
298
308
|
"typescript": "~5.0.2",
|
|
299
|
-
"typescript-class-helpers": "~16.0.
|
|
309
|
+
"typescript-class-helpers": "~16.0.17",
|
|
310
|
+
"typescript-formatter": "~7.2.2",
|
|
300
311
|
"underscore": "1.9.1",
|
|
301
312
|
"uuid": "8.3.2",
|
|
302
313
|
"validator": "9.2.0",
|
|
@@ -306,12 +317,12 @@
|
|
|
306
317
|
"yup": "1.1.1",
|
|
307
318
|
"zone.js": "~0.13.0"
|
|
308
319
|
},
|
|
309
|
-
"lastBuildTagHash": "
|
|
320
|
+
"lastBuildTagHash": "03192054ec9cca466cc71933c97bcd5eb12b6cfb"
|
|
310
321
|
},
|
|
311
322
|
"build": {
|
|
312
|
-
"number":
|
|
313
|
-
"date": "2023-
|
|
314
|
-
"hash": "
|
|
323
|
+
"number": 581,
|
|
324
|
+
"date": "2023-07-02T18:27:12.000Z",
|
|
325
|
+
"hash": "dcacded2b4c29f488f427b76c350c1e90ab6ac25",
|
|
315
326
|
"options": {}
|
|
316
327
|
},
|
|
317
328
|
"currentProjectName": "tnp-helpers",
|
|
@@ -319,7 +330,7 @@
|
|
|
319
330
|
"currentProjectLaunchConfiguration": "{\"version\":\"0.2.0\",\"configurations\":[{\"type\":\"node\",\"request\":\"launch\",\"name\":\"Launch Server standalone\",\"program\":\"${workspaceFolder}/run.js\",\"args\":[\"--ENVoverride=%7B%0A%20%20%20%20%22clientProjectName%22%3A%20%22tnp-helpers%22%0A%7D\"],\"runtimeArgs\":[\"--nolazy\",\"-r\",\"ts-node/register\",\"--experimental-worker\"]},{\"name\":\"Debugger with ng serve\",\"type\":\"chrome\",\"request\":\"launch\",\"preLaunchTask\":\"Ng Serve\",\"postDebugTask\":\"terminateall\",\"sourceMaps\":true,\"webRoot\":\"${workspaceFolder}\",\"sourceMapPathOverrides\":{\"webpack:/*\":\"${webRoot}/*\",\"/./*\":\"${webRoot}/*\",\"/tmp-src/*\":\"${webRoot}/*\",\"/*\":\"*\",\"/./~/*\":\"${webRoot}/node_modules/*\"}},{\"type\":\"node\",\"request\":\"attach\",\"name\":\"Attach to global cli tool\",\"port\":9229,\"skipFiles\":[\"<node_internals>/**\"]}],\"compounds\":[{\"name\":\"Debug backend/frontend\",\"configurations\":[\"Launch Server standalone\",\"Debugger with ng serve\"]}]}",
|
|
320
331
|
"currentProjectTasksConfiguration": "{\"version\":\"2.0.0\",\"tasks\":[{\"label\":\"terminateall\",\"command\":\"echo ${input:terminate}\",\"type\":\"shell\",\"problemMatcher\":[]},{\"label\":\"Ng Serve\",\"type\":\"shell\",\"command\":\"tnp build\",\"isBackground\":true,\"presentation\":{\"reveal\":\"always\"},\"group\":{\"kind\":\"build\",\"isDefault\":true},\"problemMatcher\":{\"owner\":\"typescript\",\"source\":\"ts\",\"applyTo\":\"closedDocuments\",\"fileLocation\":[\"relative\",\"${cwd}\"],\"pattern\":\"$tsc\",\"background\":{\"activeOnStart\":true,\"beginsPattern\":{\"regexp\":\"(.*?)\"},\"endsPattern\":{\"regexp\":\"Compiled |Failed to compile.\"}}}}],\"inputs\":[{\"id\":\"terminate\",\"type\":\"command\",\"command\":\"workbench.action.tasks.terminate\",\"args\":\"terminateAll\"}]}",
|
|
321
332
|
"currentProjectType": "isomorphic-lib",
|
|
322
|
-
"currentFrameworkVersion": "16.0.
|
|
333
|
+
"currentFrameworkVersion": "16.0.19",
|
|
323
334
|
"currentProjectIsStrictSite": false,
|
|
324
335
|
"currentProjectIsDependencySite": false,
|
|
325
336
|
"currentProjectIsStatic": false,
|
package/websql/README.md
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
# MyLib
|
|
2
|
-
|
|
3
|
-
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
|
|
4
|
-
|
|
5
|
-
## Code scaffolding
|
|
6
|
-
|
|
7
|
-
Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
|
|
8
|
-
> Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
-
|
|
10
|
-
## Build
|
|
11
|
-
|
|
12
|
-
Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
-
|
|
14
|
-
## Publishing
|
|
15
|
-
|
|
16
|
-
After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
|
|
17
|
-
|
|
18
|
-
## Running unit tests
|
|
19
|
-
|
|
20
|
-
Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
-
|
|
22
|
-
## Further help
|
|
23
|
-
|
|
24
|
-
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
1
|
+
# MyLib
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
|
|
4
|
+
|
|
5
|
+
## Code scaffolding
|
|
6
|
+
|
|
7
|
+
Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
|
|
8
|
+
> Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
+
|
|
10
|
+
## Build
|
|
11
|
+
|
|
12
|
+
Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
+
|
|
14
|
+
## Publishing
|
|
15
|
+
|
|
16
|
+
After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
|
|
17
|
+
|
|
18
|
+
## Running unit tests
|
|
19
|
+
|
|
20
|
+
Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
+
|
|
22
|
+
## Further help
|
|
23
|
+
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { Subject } from "rxjs";
|
|
2
|
+
const componentContextSymbol = Symbol();
|
|
3
|
+
const componentsDestroy$Subjects = {};
|
|
4
|
+
export var HelpersAngular;
|
|
5
|
+
(function (HelpersAngular) {
|
|
6
|
+
class SerializedSubject {
|
|
7
|
+
constructor(id) {
|
|
8
|
+
this.id = id;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
HelpersAngular.SerializedSubject = SerializedSubject;
|
|
12
|
+
function subjectId(destroySubject) {
|
|
13
|
+
const id = Math.random().toString(36).substring(2);
|
|
14
|
+
if (!destroySubject[componentContextSymbol]) {
|
|
15
|
+
destroySubject[componentContextSymbol] = new SerializedSubject(id);
|
|
16
|
+
componentsDestroy$Subjects[id] = destroySubject;
|
|
17
|
+
}
|
|
18
|
+
return destroySubject[componentContextSymbol];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* if you are using this.. please call Helpers.ng.unsubscribe(this.$destroy) in ngOnDestroy();
|
|
22
|
+
*/
|
|
23
|
+
function serialize(destroy$) {
|
|
24
|
+
return subjectId(destroy$);
|
|
25
|
+
}
|
|
26
|
+
HelpersAngular.serialize = serialize;
|
|
27
|
+
/**
|
|
28
|
+
* if you are using this.. please call Helpers.ng.unsubscribe(this.$destroy) in ngOnDestroy();
|
|
29
|
+
*/
|
|
30
|
+
function deserialize(destroy$) {
|
|
31
|
+
if (destroy$?.id) {
|
|
32
|
+
const realDestroySubject = componentsDestroy$Subjects[destroy$.id];
|
|
33
|
+
return realDestroySubject;
|
|
34
|
+
}
|
|
35
|
+
return new Subject();
|
|
36
|
+
}
|
|
37
|
+
HelpersAngular.deserialize = deserialize;
|
|
38
|
+
function unsubscribe(destroy$) {
|
|
39
|
+
const destroySubject = subjectId(destroy$);
|
|
40
|
+
if (destroySubject?.id) {
|
|
41
|
+
delete componentsDestroy$Subjects[destroySubject.id];
|
|
42
|
+
delete destroySubject[componentContextSymbol];
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
HelpersAngular.unsubscribe = unsubscribe;
|
|
46
|
+
/**
|
|
47
|
+
get properties from scss file
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
import styles from './tasks-ngrx-data.component.scss';
|
|
51
|
+
|
|
52
|
+
export class ExampleComponent {
|
|
53
|
+
sassFile = sassFile(styles);
|
|
54
|
+
|
|
55
|
+
async ngOnInit() {
|
|
56
|
+
this.tasksService.getAll();
|
|
57
|
+
console.log(this.sassFile.stringValue('--max-container-size'))
|
|
58
|
+
console.log(this.sassFile.numberValue('--max-container-size'))
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
*/
|
|
62
|
+
function sassFile(styles) {
|
|
63
|
+
const lines = (styles.split('\n'));
|
|
64
|
+
return {
|
|
65
|
+
stringValue: (name) => {
|
|
66
|
+
for (let index = 0; index < lines.length; index++) {
|
|
67
|
+
const l = lines[index];
|
|
68
|
+
const [varName, value] = l.trim().split(':');
|
|
69
|
+
if (varName === name) {
|
|
70
|
+
return value.replace(';', '');
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
numberValue: (name) => {
|
|
75
|
+
for (let index = 0; index < lines.length; index++) {
|
|
76
|
+
const l = lines[index];
|
|
77
|
+
const [varName, value] = l.trim().split(':');
|
|
78
|
+
if (varName === name) {
|
|
79
|
+
return Number(value.replace('px', '').replace(';', ''));
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
HelpersAngular.sassFile = sassFile;
|
|
86
|
+
})(HelpersAngular || (HelpersAngular = {}));
|
|
87
|
+
;
|
|
88
|
+
({}); // @--end-of-file-for-module=tnp-helpers lib/for-browser/angular.helper.ts
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlLXdlYnNxbC90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2Zvci1icm93c2VyL2FuZ3VsYXIuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0MsTUFBTSxzQkFBc0IsR0FBRyxNQUFNLEVBQUUsQ0FBQztBQUN4QyxNQUFNLDBCQUEwQixHQUFHLEVBQUUsQ0FBQztBQUd0QyxNQUFNLEtBQVcsY0FBYyxDQXFGOUI7QUFyRkQsV0FBaUIsY0FBYztJQUU3QixNQUFhLGlCQUFpQjtRQUM1QixZQUNTLEVBQVU7WUFBVixPQUFFLEdBQUYsRUFBRSxDQUFRO1FBQ2YsQ0FBQztLQUNOO0lBSlksZ0NBQWlCLG9CQUk3QixDQUFBO0lBR0QsU0FBUyxTQUFTLENBQUMsY0FBNEI7UUFDN0MsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFO1lBQzNDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLElBQUksaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbkUsMEJBQTBCLENBQUMsRUFBRSxDQUFDLEdBQUcsY0FBYyxDQUFDO1NBQ2pEO1FBQ0QsT0FBTyxjQUFjLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFnQixTQUFTLENBQUMsUUFBc0I7UUFDOUMsT0FBTyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUZlLHdCQUFTLFlBRXhCLENBQUE7SUFFRDs7T0FFRztJQUNILFNBQWdCLFdBQVcsQ0FBQyxRQUFnQztRQUMxRCxJQUFJLFFBQVEsRUFBRSxFQUFFLEVBQUU7WUFDaEIsTUFBTSxrQkFBa0IsR0FBRywwQkFBMEIsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbkUsT0FBTyxrQkFBa0IsQ0FBQztTQUMzQjtRQUNELE9BQU8sSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBTmUsMEJBQVcsY0FNMUIsQ0FBQTtJQUVELFNBQWdCLFdBQVcsQ0FBQyxRQUFzQjtRQUNoRCxNQUFNLGNBQWMsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0MsSUFBSSxjQUFjLEVBQUUsRUFBRSxFQUFFO1lBQ3RCLE9BQU8sMEJBQTBCLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3JELE9BQU8sY0FBYyxDQUFDLHNCQUFzQixDQUFDLENBQUM7U0FDL0M7SUFDSCxDQUFDO0lBTmUsMEJBQVcsY0FNMUIsQ0FBQTtJQUlEOzs7Ozs7Ozs7Ozs7Ozs7U0FlSztJQUNMLFNBQWdCLFFBQVEsQ0FBQyxNQUFjO1FBQ3JDLE1BQU0sS0FBSyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ25DLE9BQU87WUFDTCxXQUFXLEVBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRTtnQkFDNUIsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUU7b0JBQ2pELE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDdkIsTUFBTSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUM3QyxJQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUU7d0JBQ3BCLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7cUJBQy9CO2lCQUNGO1lBQ0gsQ0FBQztZQUNELFdBQVcsRUFBRSxDQUFDLElBQVksRUFBVSxFQUFFO2dCQUNwQyxLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRTtvQkFDakQsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUN2QixNQUFNLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQzdDLElBQUksT0FBTyxLQUFLLElBQUksRUFBRTt3QkFDcEIsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO3FCQUN6RDtpQkFDRjtZQUNILENBQUM7U0FDRixDQUFBO0lBQ0gsQ0FBQztJQXRCZSx1QkFBUSxXQXNCdkIsQ0FBQTtBQUNILENBQUMsRUFyRmdCLGNBQWMsS0FBZCxjQUFjLFFBcUY5QjtBQUlBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsMEVBQTBFIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcblxuY29uc3QgY29tcG9uZW50Q29udGV4dFN5bWJvbCA9IFN5bWJvbCgpO1xuY29uc3QgY29tcG9uZW50c0Rlc3Ryb3kkU3ViamVjdHMgPSB7fTtcblxuXG5leHBvcnQgbmFtZXNwYWNlIEhlbHBlcnNBbmd1bGFyIHtcblxuICBleHBvcnQgY2xhc3MgU2VyaWFsaXplZFN1YmplY3Q8VD4ge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgcHVibGljIGlkOiBzdHJpbmdcbiAgICApIHsgfVxuICB9XG5cblxuICBmdW5jdGlvbiBzdWJqZWN0SWQoZGVzdHJveVN1YmplY3Q6IFN1YmplY3Q8YW55Pik6IFNlcmlhbGl6ZWRTdWJqZWN0PGFueT4ge1xuICAgIGNvbnN0IGlkID0gTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIpO1xuICAgIGlmICghZGVzdHJveVN1YmplY3RbY29tcG9uZW50Q29udGV4dFN5bWJvbF0pIHtcbiAgICAgIGRlc3Ryb3lTdWJqZWN0W2NvbXBvbmVudENvbnRleHRTeW1ib2xdID0gbmV3IFNlcmlhbGl6ZWRTdWJqZWN0KGlkKTtcbiAgICAgIGNvbXBvbmVudHNEZXN0cm95JFN1YmplY3RzW2lkXSA9IGRlc3Ryb3lTdWJqZWN0O1xuICAgIH1cbiAgICByZXR1cm4gZGVzdHJveVN1YmplY3RbY29tcG9uZW50Q29udGV4dFN5bWJvbF07XG4gIH1cblxuICAvKipcbiAgICogaWYgeW91IGFyZSB1c2luZyB0aGlzLi4gcGxlYXNlIGNhbGwgSGVscGVycy5uZy51bnN1YnNjcmliZSh0aGlzLiRkZXN0cm95KSBpbiBuZ09uRGVzdHJveSgpO1xuICAgKi9cbiAgZXhwb3J0IGZ1bmN0aW9uIHNlcmlhbGl6ZShkZXN0cm95JDogU3ViamVjdDxhbnk+KTogU2VyaWFsaXplZFN1YmplY3Q8YW55PiB7XG4gICAgcmV0dXJuIHN1YmplY3RJZChkZXN0cm95JCk7XG4gIH1cblxuICAvKipcbiAgICogaWYgeW91IGFyZSB1c2luZyB0aGlzLi4gcGxlYXNlIGNhbGwgSGVscGVycy5uZy51bnN1YnNjcmliZSh0aGlzLiRkZXN0cm95KSBpbiBuZ09uRGVzdHJveSgpO1xuICAgKi9cbiAgZXhwb3J0IGZ1bmN0aW9uIGRlc2VyaWFsaXplKGRlc3Ryb3kkOiBTZXJpYWxpemVkU3ViamVjdDxhbnk+KTogU3ViamVjdDxhbnk+IHtcbiAgICBpZiAoZGVzdHJveSQ/LmlkKSB7XG4gICAgICBjb25zdCByZWFsRGVzdHJveVN1YmplY3QgPSBjb21wb25lbnRzRGVzdHJveSRTdWJqZWN0c1tkZXN0cm95JC5pZF07XG4gICAgICByZXR1cm4gcmVhbERlc3Ryb3lTdWJqZWN0O1xuICAgIH1cbiAgICByZXR1cm4gbmV3IFN1YmplY3QoKTtcbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiB1bnN1YnNjcmliZShkZXN0cm95JDogU3ViamVjdDxhbnk+KSB7XG4gICAgY29uc3QgZGVzdHJveVN1YmplY3QgPSBzdWJqZWN0SWQoZGVzdHJveSQpO1xuICAgIGlmIChkZXN0cm95U3ViamVjdD8uaWQpIHtcbiAgICAgIGRlbGV0ZSBjb21wb25lbnRzRGVzdHJveSRTdWJqZWN0c1tkZXN0cm95U3ViamVjdC5pZF07XG4gICAgICBkZWxldGUgZGVzdHJveVN1YmplY3RbY29tcG9uZW50Q29udGV4dFN5bWJvbF07XG4gICAgfVxuICB9XG5cblxuXG4gIC8qKlxuICBnZXQgcHJvcGVydGllcyBmcm9tIHNjc3MgZmlsZVxuXG5cbiAgaW1wb3J0IHN0eWxlcyBmcm9tICcuL3Rhc2tzLW5ncngtZGF0YS5jb21wb25lbnQuc2Nzcyc7XG5cbiAgZXhwb3J0IGNsYXNzIEV4YW1wbGVDb21wb25lbnQge1xuICAgIHNhc3NGaWxlID0gc2Fzc0ZpbGUoc3R5bGVzKTtcblxuICAgIGFzeW5jIG5nT25Jbml0KCkge1xuICAgICAgdGhpcy50YXNrc1NlcnZpY2UuZ2V0QWxsKCk7XG4gICAgICBjb25zb2xlLmxvZyh0aGlzLnNhc3NGaWxlLnN0cmluZ1ZhbHVlKCctLW1heC1jb250YWluZXItc2l6ZScpKVxuICAgICAgY29uc29sZS5sb2codGhpcy5zYXNzRmlsZS5udW1iZXJWYWx1ZSgnLS1tYXgtY29udGFpbmVyLXNpemUnKSlcbiAgICB9XG4gIH1cbiAgICAgKi9cbiAgZXhwb3J0IGZ1bmN0aW9uIHNhc3NGaWxlKHN0eWxlczogc3RyaW5nKSB7XG4gICAgY29uc3QgbGluZXMgPSAoc3R5bGVzLnNwbGl0KCdcXG4nKSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN0cmluZ1ZhbHVlOiAobmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBsaW5lcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICBjb25zdCBsID0gbGluZXNbaW5kZXhdO1xuICAgICAgICAgIGNvbnN0IFt2YXJOYW1lLCB2YWx1ZV0gPSBsLnRyaW0oKS5zcGxpdCgnOicpO1xuICAgICAgICAgIGlmICh2YXJOYW1lID09PSBuYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUucmVwbGFjZSgnOycsICcnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBudW1iZXJWYWx1ZTogKG5hbWU6IHN0cmluZyk6IG51bWJlciA9PiB7XG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBsaW5lcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICBjb25zdCBsID0gbGluZXNbaW5kZXhdO1xuICAgICAgICAgIGNvbnN0IFt2YXJOYW1lLCB2YWx1ZV0gPSBsLnRyaW0oKS5zcGxpdCgnOicpO1xuICAgICAgICAgIGlmICh2YXJOYW1lID09PSBuYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gTnVtYmVyKHZhbHVlLnJlcGxhY2UoJ3B4JywgJycpLnJlcGxhY2UoJzsnLCAnJykpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9mb3ItYnJvd3Nlci9hbmd1bGFyLmhlbHBlci50cyJdfQ==
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
const key = Symbol('[firedev-helpers] helper browser key');
|
|
2
|
+
class HelpersBrowser {
|
|
3
|
+
static { this.callbacks = []; }
|
|
4
|
+
static onInit(callback) {
|
|
5
|
+
this.callbacks.push(callback);
|
|
6
|
+
}
|
|
7
|
+
get win() {
|
|
8
|
+
let win = window;
|
|
9
|
+
return win;
|
|
10
|
+
}
|
|
11
|
+
get tabIdSessionStorage() {
|
|
12
|
+
return Number(this.win.sessionStorage?.tabId) || 0;
|
|
13
|
+
}
|
|
14
|
+
constructor(win) {
|
|
15
|
+
this.init = (() => {
|
|
16
|
+
const win = this.win;
|
|
17
|
+
if (!win[key]) {
|
|
18
|
+
win[key] = new HelpersBrowser(win);
|
|
19
|
+
}
|
|
20
|
+
HelpersBrowser.inst = win[key];
|
|
21
|
+
})();
|
|
22
|
+
win.addEventListener("beforeunload", (e) => {
|
|
23
|
+
win.sessionStorage.tabId = this.tabId;
|
|
24
|
+
return null;
|
|
25
|
+
});
|
|
26
|
+
setTimeout(() => {
|
|
27
|
+
if (win.sessionStorage?.tabId) {
|
|
28
|
+
// @ts-ignore
|
|
29
|
+
this.tabId = Number(win.sessionStorage.tabId);
|
|
30
|
+
win.sessionStorage.removeItem("tabId");
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
// @ts-ignore
|
|
34
|
+
this.tabId = Math.floor(Math.random() * 1000000) + (new Date()).getTime();
|
|
35
|
+
}
|
|
36
|
+
HelpersBrowser.callbacks.forEach((c) => {
|
|
37
|
+
c(this);
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
static get instance() {
|
|
42
|
+
return HelpersBrowser.inst;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
export { HelpersBrowser };
|
|
46
|
+
;
|
|
47
|
+
({}); // @--end-of-file-for-module=tnp-helpers lib/for-browser/helpers-browser.ts
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy1icm93c2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS13ZWJzcWwvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9mb3ItYnJvd3Nlci9oZWxwZXJzLWJyb3dzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLENBQUE7QUFFMUQsTUFBYSxjQUFjO2FBRVYsY0FBUyxHQUFHLEVBQUUsQUFBTCxDQUFNO0lBQzlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBc0M7UUFDbEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksR0FBRztRQUNMLElBQUksR0FBRyxHQUFHLE1BQU0sQ0FBQztRQUNqQixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxJQUFZLG1CQUFtQjtRQUM3QixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQWNELFlBQW9CLEdBQVc7UUFUL0IsU0FBSSxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ1gsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUVyQixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNiLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNwQztZQUNELGNBQWMsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFJSCxHQUFHLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDekMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUN0QyxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO1FBRUgsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUVkLElBQUksR0FBRyxDQUFDLGNBQWMsRUFBRSxLQUFLLEVBQUU7Z0JBQzdCLGFBQWE7Z0JBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDOUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDeEM7aUJBQ0k7Z0JBQ0gsYUFBYTtnQkFDYixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQzNFO1lBQ0QsY0FBYyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDckMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ1YsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQTtJQUdKLENBQUM7SUFHRCxNQUFNLEtBQUssUUFBUTtRQUNqQixPQUFPLGNBQWMsQ0FBQyxJQUFJLENBQUM7SUFDN0IsQ0FBQzs7U0F6RFUsY0FBYztBQWtFMUIsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywyRUFBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuXG5jb25zdCBrZXkgPSBTeW1ib2woJ1tmaXJlZGV2LWhlbHBlcnNdIGhlbHBlciBicm93c2VyIGtleScpXG5cbmV4cG9ydCBjbGFzcyBIZWxwZXJzQnJvd3NlciB7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgY2FsbGJhY2tzID0gW107XG4gIHN0YXRpYyBvbkluaXQoY2FsbGJhY2s6IChpbnM6IEhlbHBlcnNCcm93c2VyKSA9PiBhbnkpIHtcbiAgICB0aGlzLmNhbGxiYWNrcy5wdXNoKGNhbGxiYWNrKTtcbiAgfVxuXG4gIGdldCB3aW4oKSB7XG4gICAgbGV0IHdpbiA9IHdpbmRvdztcbiAgICByZXR1cm4gd2luO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgdGFiSWRTZXNzaW9uU3RvcmFnZSgpIHtcbiAgICByZXR1cm4gTnVtYmVyKHRoaXMud2luLnNlc3Npb25TdG9yYWdlPy50YWJJZCkgfHwgMDtcbiAgfVxuXG4gIHJlYWRvbmx5IHRhYklkOiBudW1iZXI7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgaW5zdDogSGVscGVyc0Jyb3dzZXI7XG4gIGluaXQgPSAoKCkgPT4ge1xuICAgIGNvbnN0IHdpbiA9IHRoaXMud2luO1xuXG4gICAgaWYgKCF3aW5ba2V5XSkge1xuICAgICAgd2luW2tleV0gPSBuZXcgSGVscGVyc0Jyb3dzZXIod2luKTtcbiAgICB9XG4gICAgSGVscGVyc0Jyb3dzZXIuaW5zdCA9IHdpbltrZXldO1xuICB9KSgpO1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3Iod2luOiBXaW5kb3cpIHtcblxuICAgIHdpbi5hZGRFdmVudExpc3RlbmVyKFwiYmVmb3JldW5sb2FkXCIsIChlKSA9PiB7XG4gICAgICB3aW4uc2Vzc2lvblN0b3JhZ2UudGFiSWQgPSB0aGlzLnRhYklkO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcblxuICAgICAgaWYgKHdpbi5zZXNzaW9uU3RvcmFnZT8udGFiSWQpIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB0aGlzLnRhYklkID0gTnVtYmVyKHdpbi5zZXNzaW9uU3RvcmFnZS50YWJJZCk7XG4gICAgICAgIHdpbi5zZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKFwidGFiSWRcIik7XG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB0aGlzLnRhYklkID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwMDAwMCkgKyAobmV3IERhdGUoKSkuZ2V0VGltZSgpO1xuICAgICAgfVxuICAgICAgSGVscGVyc0Jyb3dzZXIuY2FsbGJhY2tzLmZvckVhY2goKGMpID0+IHtcbiAgICAgICAgYyh0aGlzKTtcbiAgICAgIH0pO1xuICAgIH0pXG5cblxuICB9XG5cblxuICBzdGF0aWMgZ2V0IGluc3RhbmNlKCkge1xuICAgIHJldHVybiBIZWxwZXJzQnJvd3Nlci5pbnN0O1xuICB9XG5cbn1cblxuXG5cblxuXG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10bnAtaGVscGVycyBsaWIvZm9yLWJyb3dzZXIvaGVscGVycy1icm93c2VyLnRzIl19
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { _ } from 'tnp-core/websql';
|
|
2
2
|
import * as fuzzy from 'fuzzy';
|
|
3
|
-
import { Helpers } from './index';
|
|
4
3
|
export class HelpersArrayObj {
|
|
5
4
|
from(s) {
|
|
6
5
|
if (_.isArray(s)) {
|
|
@@ -51,10 +50,10 @@ export class HelpersArrayObj {
|
|
|
51
50
|
}
|
|
52
51
|
sortKeys(obj) {
|
|
53
52
|
if (_.isArray(obj)) {
|
|
54
|
-
return obj.map(
|
|
53
|
+
return obj.map(this.sortKeys);
|
|
55
54
|
}
|
|
56
55
|
if (_.isObject(obj)) {
|
|
57
|
-
return _.fromPairs(_.keys(obj).sort().map(key => [key,
|
|
56
|
+
return _.fromPairs(_.keys(obj).sort().map(key => [key, this.sortKeys(obj[key])]));
|
|
58
57
|
}
|
|
59
58
|
return obj;
|
|
60
59
|
}
|
|
@@ -80,4 +79,4 @@ export class HelpersArrayObj {
|
|
|
80
79
|
}
|
|
81
80
|
;
|
|
82
81
|
({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-array-obj.ts
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy1hcnJheS1vYmouanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlLXdlYnNxbC90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2hlbHBlcnMtYXJyYXktb2JqLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwQyxPQUFPLEtBQUssS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUcvQixNQUFNLE9BQU8sZUFBZTtJQUUxQixJQUFJLENBQUMsQ0FBb0I7UUFDdkIsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2hCLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDakIsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1NBQ3BCO0lBQ0gsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFHO1FBQ1IsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDekMsT0FBTyxLQUFLLENBQUMsQ0FBQztTQUNmO1FBQ0QsT0FBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakIsQ0FBQztJQUVELHNCQUFzQixDQUFVLEdBQVUsRUFBRSxDQUFNLEVBQUUsQ0FBTSxFQUFFLElBQWM7UUFDeEUsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FB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TyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBUSxDQUFDLENBQUM7UUFDN0QsQ0FBQyxDQUFDLENBQUE7UUFFRixJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ25ELE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1lBQ25HLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQVEsQ0FBQyxDQUFDO1NBQ2pEO1FBRUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUM5QixDQUFDO0NBRUY7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGlFQUFpRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS93ZWJzcWwnO1xuaW1wb3J0ICogYXMgZnV6enkgZnJvbSAnZnV6enknO1xuXG5cbmV4cG9ydCBjbGFzcyBIZWxwZXJzQXJyYXlPYmoge1xuXG4gIGZyb20oczogc3RyaW5nIHwgc3RyaW5nW10pOiBzdHJpbmdbXSB7XG4gICAgaWYgKF8uaXNBcnJheShzKSkge1xuICAgICAgcmV0dXJuIHM7XG4gICAgfVxuICAgIGlmIChfLmlzU3RyaW5nKHMpKSB7XG4gICAgICByZXR1cm4gcy5zcGxpdCgnICcpXG4gICAgfVxuICB9XG5cbiAgc2Vjb25kKGFycikge1xuICAgIGlmICghQXJyYXkuaXNBcnJheShhcnIpIHx8IGFyci5sZW5ndGggPCAyKSB7XG4gICAgICByZXR1cm4gdm9pZCAwO1xuICAgIH1cbiAgICByZXR1cm4gIGFyclsxXTtcbiAgfVxuXG4gIGFycmF5TW92ZUVsZW1lbnRCZWZvcmU8VCA9IGFueT4oYXJyOiBhbnlbXSwgYTogYW55LCBiOiBhbnksIHByb3A/OiBrZXlvZiBUKSB7XG4gICAgbGV0IGluZGV4QSA9IHByb3AgPyBhcnIuZmluZEluZGV4KGVsZW0gPT4gZWxlbVtwcm9wXSA9PT0gYVtwcm9wXSkgOiBhcnIuaW5kZXhPZihhKTtcbiAgICBfLnB1bGxBdChhcnIsIGluZGV4QSk7XG4gICAgbGV0IGluZGV4QiA9IHByb3AgPyBhcnIuZmluZEluZGV4KGVsZW0gPT4gZWxlbVtwcm9wXSA9PT0gYltwcm9wXSkgOiBhcnIuaW5kZXhPZihiKTtcbiAgICBpZiAoaW5kZXhCID09PSAwKSB7XG4gICAgICBhcnIudW5zaGlmdChhKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXJyLnNwbGljZShpbmRleEIgLSAxLCAwLCBhKTtcbiAgICB9XG4gICAgcmV0dXJuIGFycjtcbiAgfVxuICBhcnJheU1vdmVFbGVtZW50QWZ0ZXJCPFQgPSBhbnk+KGFycjogYW55W10sIGE6IGFueSwgYjogYW55LCBwcm9wPzoga2V5b2YgVCkge1xuICAgIGxldCBpbmRleEEgPSBwcm9wID8gYXJyLmZpbmRJbmRleChlbGVtID0+IGVsZW1bcHJvcF0gPT09IGFbcHJvcF0pIDogYXJyLmluZGV4T2YoYSk7XG4gICAgXy5wdWxsQXQoYXJyLCBpbmRleEEpO1xuICAgIGxldCBpbmRleEIgPSBwcm9wID8gYXJyLmZpbmRJbmRleChlbGVtID0+IGVsZW1bcHJvcF0gPT09IGJbcHJvcF0pIDogYXJyLmluZGV4T2YoYik7XG4gICAgaWYgKGluZGV4QiA9PT0gYXJyLmxlbmd0aCAtIDEpIHtcbiAgICAgIGFyci5wdXNoKGEpO1xuICAgIH0gZWxzZSB7XG4gICAgICBhcnIuc3BsaWNlKGluZGV4QiArIDEsIDAsIGEpO1xuICAgIH1cbiAgICByZXR1cm4gYXJyO1xuICB9XG5cbiAgdW5pcUFycmF5PFQgPSBhbnk+KGFycmF5OiBhbnlbXSwgdW5pcXVlUHJvcGVydHk/OiAoa2V5b2YgVCkpIHtcbiAgICB2YXIgc2VlbiA9IHt9O1xuICAgIHJldHVybiBhcnJheVxuICAgICAgLmZpbHRlcihmID0+ICEhZilcbiAgICAgIC5maWx0ZXIoZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgICAgcmV0dXJuIHNlZW4uaGFzT3duUHJvcGVydHkodW5pcXVlUHJvcGVydHkgPyBpdGVtW3VuaXF1ZVByb3BlcnR5XSA6IGl0ZW0pID8gZmFsc2VcbiAgICAgICAgICA6IChzZWVuW3VuaXF1ZVByb3BlcnR5ID8gaXRlbVt1bmlxdWVQcm9wZXJ0eV0gOiBpdGVtXSA9IHRydWUpO1xuICAgICAgfSkgYXMgVFtdO1xuICB9XG5cbiAgc29ydEtleXMob2JqKSB7XG4gICAgaWYgKF8uaXNBcnJheShvYmopKSB7XG4gICAgICByZXR1cm4gb2JqLm1hcCh0aGlzLnNvcnRLZXlzKTtcbiAgICB9XG4gICAgaWYgKF8uaXNPYmplY3Qob2JqKSkge1xuICAgICAgcmV0dXJuIF8uZnJvbVBhaXJzKF8ua2V5cyhvYmopLnNvcnQoKS5tYXAoa2V5ID0+IFtrZXksIHRoaXMuc29ydEtleXMob2JqW2tleV0pXSkpO1xuICAgIH1cbiAgICByZXR1cm4gb2JqO1xuICB9O1xuXG4gIC8qKlxuICAgKiBGdXp6eSBzZWFyY2hcbiAgICovXG4gIGZ1enp5PFQgPSBhbnk+KHF1ZXJ5OiBzdHJpbmcsIGxpc3Q6IFRbXSwgdmFsdWVGbj86IChtb2RlbEZyb21MaXN0OiBUKSA9PiBzdHJpbmcpIHtcbiAgICBjb25zdCByZXN1bHRzRnV6enkgPSBmdXp6eS5maWx0ZXIoXG4gICAgICBxdWVyeSxcbiAgICAgIGxpc3QubWFwKGsgPT4gdmFsdWVGbiA/IHZhbHVlRm4oaykgOiBrKSxcbiAgICApXG4gICAgY29uc3QgcmVzdWx0c0Z1enp5S2ViYWIgPSBmdXp6eS5maWx0ZXIoXG4gICAgICBfLmtlYmFiQ2FzZShxdWVyeSksXG4gICAgICBsaXN0Lm1hcChrID0+IF8ua2ViYWJDYXNlKCh2YWx1ZUZuID8gdmFsdWVGbihrKSA6IGspIGFzIGFueSkpLFxuICAgIClcbiAgICBjb25zdCBtYXRjaGVzID0gcmVzdWx0c0Z1enp5Lm1hcCgoZWwpID0+IGVsLnN0cmluZyk7XG4gICAgY29uc3QgbWF0Y2hlc0tlYmFiID0gcmVzdWx0c0Z1enp5S2ViYWIubWFwKChlbCkgPT4gZWwuc3RyaW5nKTtcblxuICAgIGNvbnN0IHJlc3VsdHMgPSAocmVzdWx0c0Z1enp5Lmxlbmd0aCA9PT0gMCkgPyBbXSA6IGxpc3QuZmlsdGVyKGsgPT4ge1xuICAgICAgcmV0dXJuIG1hdGNoZXMuaW5jbHVkZXMoKHZhbHVlRm4gPyB2YWx1ZUZuKGspIDogaykgYXMgYW55KTtcbiAgICB9KVxuXG4gICAgaWYgKG1hdGNoZXMubGVuZ3RoID09PSAwICYmIG1hdGNoZXNLZWJhYi5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBtID0gbGlzdC5maW5kKGsgPT4gXy5rZWJhYkNhc2UoKHZhbHVlRm4gPyB2YWx1ZUZuKGspIDogaykgYXMgYW55KSA9PT0gXy5maXJzdChtYXRjaGVzS2ViYWIpKTtcbiAgICAgIHJlc3VsdHMucHVzaChtKTtcbiAgICAgIG1hdGNoZXMucHVzaCgodmFsdWVGbiA/IHZhbHVlRm4obSkgOiBtKSBhcyBhbnkpO1xuICAgIH1cblxuICAgIHJldHVybiB7IG1hdGNoZXMsIHJlc3VsdHMgfTtcbiAgfVxuXG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10bnAtaGVscGVycyBsaWIvaGVscGVycy1hcnJheS1vYmoudHMiXX0=
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/* */
|
|
2
|
+
/* */
|
|
3
|
+
/* */
|
|
4
|
+
import axios from 'axios';
|
|
5
|
+
/**
|
|
6
|
+
* Blob -> in file transmission storage
|
|
7
|
+
* base64(Blob) -> in file transmission storage (slow)
|
|
8
|
+
* File -> on browser side for easy manipulation, download link
|
|
9
|
+
*/
|
|
10
|
+
export class HelpersBinary {
|
|
11
|
+
arrayBufferToBlob(buffer, contentType) {
|
|
12
|
+
return new Blob([buffer], { type: contentType });
|
|
13
|
+
}
|
|
14
|
+
blobToArrayBuffer(blob) {
|
|
15
|
+
return new Promise((resolve, reject) => {
|
|
16
|
+
const reader = new FileReader();
|
|
17
|
+
reader.addEventListener('loadend', () => {
|
|
18
|
+
resolve(reader.result);
|
|
19
|
+
});
|
|
20
|
+
reader.addEventListener('error', reject); // @ts-ignore
|
|
21
|
+
reader.readAsArrayBuffer(blob);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* it is revers to base64toBlob
|
|
26
|
+
* @param blob
|
|
27
|
+
* @returns
|
|
28
|
+
*/
|
|
29
|
+
blobToBase64(blob) {
|
|
30
|
+
return new Promise((resolve, _) => {
|
|
31
|
+
const reader = new FileReader();
|
|
32
|
+
reader.onloadend = () => resolve(reader.result); // @ts-ignore
|
|
33
|
+
reader.readAsDataURL(blob);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* it is revers to blobToBase64()
|
|
38
|
+
* @param base64Data
|
|
39
|
+
* @returns
|
|
40
|
+
*/
|
|
41
|
+
base64toBlob(base64Data, contentTypeOverride) {
|
|
42
|
+
if (!contentTypeOverride) {
|
|
43
|
+
const m = /^data:(.+?);base64,(.+)$/.exec(base64Data);
|
|
44
|
+
if (!m) {
|
|
45
|
+
throw new Error(`[firedev-framework][base64toBlob] Not a base64 blob [${base64Data}]`);
|
|
46
|
+
}
|
|
47
|
+
var [__, content_type, file_base64] = m;
|
|
48
|
+
}
|
|
49
|
+
content_type = (contentTypeOverride ? contentTypeOverride : content_type || '');
|
|
50
|
+
base64Data = contentTypeOverride ? base64Data : file_base64;
|
|
51
|
+
const sliceSize = 1024;
|
|
52
|
+
const byteCharacters = atob(base64Data);
|
|
53
|
+
const bytesLength = byteCharacters.length;
|
|
54
|
+
const slicesCount = Math.ceil(bytesLength / sliceSize);
|
|
55
|
+
const byteArrays = new Array(slicesCount);
|
|
56
|
+
for (let sliceIndex = 0; sliceIndex < slicesCount; ++sliceIndex) {
|
|
57
|
+
const begin = sliceIndex * sliceSize;
|
|
58
|
+
const end = Math.min(begin + sliceSize, bytesLength);
|
|
59
|
+
const bytes = new Array(end - begin);
|
|
60
|
+
for (let offset = begin, i = 0; offset < end; ++i, ++offset) {
|
|
61
|
+
bytes[i] = byteCharacters[offset].charCodeAt(0);
|
|
62
|
+
}
|
|
63
|
+
byteArrays[sliceIndex] = new Uint8Array(bytes);
|
|
64
|
+
}
|
|
65
|
+
return new Blob(byteArrays, { type: content_type });
|
|
66
|
+
}
|
|
67
|
+
async fileToBlob(file) {
|
|
68
|
+
return new Blob([new Uint8Array(await file.arrayBuffer())], { type: file.type });
|
|
69
|
+
}
|
|
70
|
+
;
|
|
71
|
+
async blobToFile(blob, nameForFile = 'my-file-name') {
|
|
72
|
+
if (!nameForFile) {
|
|
73
|
+
nameForFile = nameForFile + (new Date()).getTime();
|
|
74
|
+
// @ts-ignore
|
|
75
|
+
return new File([blob], nameForFile);
|
|
76
|
+
}
|
|
77
|
+
;
|
|
78
|
+
}
|
|
79
|
+
async getBlobFrom(url) {
|
|
80
|
+
const response = await axios({
|
|
81
|
+
url,
|
|
82
|
+
method: 'get',
|
|
83
|
+
responseType: 'blob'
|
|
84
|
+
});
|
|
85
|
+
return response.data;
|
|
86
|
+
}
|
|
87
|
+
numValue(pixelsCss) {
|
|
88
|
+
return parseInt(pixelsCss.replace('px', ''));
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
;
|
|
92
|
+
({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-binary.ts
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy1iaW5hcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItYnVuZGxlLXdlYnNxbC90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2hlbHBlcnMtYmluYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUVMLE9BQU8sS0FBd0IsTUFBTSxPQUFPLENBQUM7QUFHN0M7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxhQUFhO0lBRXhCLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxXQUFxQztRQUM3RCxPQUFPLElBQUksSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsSUFBVTtRQUMxQixPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7WUFDaEMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUU7Z0JBQ3RDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDekIsQ0FBQyxDQUFDLENBQUM7WUFDSCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsYUFBYTtZQUN2RCxNQUFNLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFlBQVksQ0FBQyxJQUFVO1FBQ3JCLE9BQU8sSUFBSSxPQUFPLENBQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDckMsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVB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LElBQUksQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFBO1NBQ3JDO1FBQUEsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUFDLEdBQUc7UUFDbkIsTUFBTSxRQUFRLEdBQXdCLE1BQU0sS0FBSyxDQUFDO1lBQ2hELEdBQUc7WUFDSCxNQUFNLEVBQUUsS0FBSztZQUNiLFlBQVksRUFBRSxNQUFNO1NBQ3JCLENBQUMsQ0FBQztRQUNILE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQztJQUN2QixDQUFDO0lBRUQsUUFBUSxDQUFDLFNBQWlCO1FBRXhCLE9BQU8sUUFBUSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQztDQUVGO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyw4REFBOEQiLCJzb3VyY2VzQ29udGVudCI6WyIvKiAqL1xuLyogKi9cbi8qICovXG4gIFxuaW1wb3J0IGF4aW9zLCB7IEF4aW9zUmVzcG9uc2UgfSBmcm9tICdheGlvcyc7XG5pbXBvcnQgeyBNb3JwaGkgYXMgRmlyZWRldiB9IGZyb20gJ21vcnBoaS93ZWJzcWwnO1xuXG4vKipcbiAqIEJsb2IgLT4gaW4gZmlsZSB0cmFuc21pc3Npb24gc3RvcmFnZVxuICogYmFzZTY0KEJsb2IpIC0+IGluIGZpbGUgdHJhbnNtaXNzaW9uIHN0b3JhZ2UgKHNsb3cpXG4gKiBGaWxlIC0+IG9uIGJyb3dzZXIgc2lkZSBmb3IgZWFzeSBtYW5pcHVsYXRpb24sIGRvd25sb2FkIGxpbmtcbiAqL1xuZXhwb3J0IGNsYXNzIEhlbHBlcnNCaW5hcnkge1xuXG4gIGFycmF5QnVmZmVyVG9CbG9iKGJ1ZmZlciwgY29udGVudFR5cGU6IEZpcmVkZXYuSHR0cC5Db250ZW50VHlwZSkge1xuICAgIHJldHVybiBuZXcgQmxvYihbYnVmZmVyXSwgeyB0eXBlOiBjb250ZW50VHlwZSB9KTtcbiAgfVxuXG4gIGJsb2JUb0FycmF5QnVmZmVyKGJsb2I6IEJsb2IpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgIHJlYWRlci5hZGRFdmVudExpc3RlbmVyKCdsb2FkZW5kJywgKCkgPT4ge1xuICAgICAgICByZXNvbHZlKHJlYWRlci5yZXN1bHQpO1xuICAgICAgfSk7XG4gICAgICByZWFkZXIuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCByZWplY3QpOyAvLyBAdHMtaWdub3JlXG4gICAgICByZWFkZXIucmVhZEFzQXJyYXlCdWZmZXIoYmxvYik7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogaXQgaXMgcmV2ZXJzIHRvIGJhc2U2NHRvQmxvYlxuICAgKiBAcGFyYW0gYmxvYlxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgYmxvYlRvQmFzZTY0KGJsb2I6IEJsb2IpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2U8YW55PigocmVzb2x2ZSwgXykgPT4ge1xuICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgIHJlYWRlci5vbmxvYWRlbmQgPSAoKSA9PiByZXNvbHZlKHJlYWRlci5yZXN1bHQpOyAvLyBAdHMtaWdub3JlXG4gICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChibG9iKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBpdCBpcyByZXZlcnMgdG8gYmxvYlRvQmFzZTY0KClcbiAgICogQHBhcmFtIGJhc2U2NERhdGFcbiAgICogQHJldHVybnNcbiAgICovXG4gIGJhc2U2NHRvQmxvYihiYXNlNjREYXRhOiBzdHJpbmcsIGNvbnRlbnRUeXBlT3ZlcnJpZGU/OiBGaXJlZGV2Lkh0dHAuQ29udGVudFR5cGUpIHtcbiAgICBpZiAoIWNvbnRlbnRUeXBlT3ZlcnJpZGUpIHtcbiAgICAgIGNvbnN0IG0gPSAvXmRhdGE6KC4rPyk7YmFzZTY0LCguKykkLy5leGVjKGJhc2U2NERhdGEpO1xuICAgICAgaWYgKCFtKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgW2ZpcmVkZXYtZnJhbWV3b3JrXVtiYXNlNjR0b0Jsb2JdIE5vdCBhIGJhc2U2NCBibG9iIFske2Jhc2U2NERhdGF9XWApXG4gICAgICB9XG5cbiAgICAgIHZhciBbX18sIGNvbnRlbnRfdHlwZSwgZmlsZV9iYXNlNjRdID0gbTtcbiAgICB9XG4gICAgY29udGVudF90eXBlID0gKGNvbnRlbnRUeXBlT3ZlcnJpZGUgPyBjb250ZW50VHlwZU92ZXJyaWRlIDogY29udGVudF90eXBlIHx8ICcnKSBhcyBhbnk7XG4gICAgYmFzZTY0RGF0YSA9IGNvbnRlbnRUeXBlT3ZlcnJpZGUgPyBiYXNlNjREYXRhIDogZmlsZV9iYXNlNjQ7XG4gICAgY29uc3Qgc2xpY2VTaXplID0gMTAyNDtcbiAgICBjb25zdCBieXRlQ2hhcmFjdGVycyA9IGF0b2IoYmFzZTY0RGF0YSk7XG4gICAgY29uc3QgYnl0ZXNMZW5ndGggPSBieXRlQ2hhcmFjdGVycy5sZW5ndGg7XG4gICAgY29uc3Qgc2xpY2VzQ291bnQgPSBNYXRoLmNlaWwoYnl0ZXNMZW5ndGggLyBzbGljZVNpemUpO1xuICAgIGNvbnN0IGJ5dGVBcnJheXMgPSBuZXcgQXJyYXkoc2xpY2VzQ291bnQpO1xuXG4gICAgZm9yIChsZXQgc2xpY2VJbmRleCA9IDA7IHNsaWNlSW5kZXggPCBzbGljZXNDb3VudDsgKytzbGljZUluZGV4KSB7XG4gICAgICBjb25zdCBiZWdpbiA9IHNsaWNlSW5kZXggKiBzbGljZVNpemU7XG4gICAgICBjb25zdCBlbmQgPSBNYXRoLm1pbihiZWdpbiArIHNsaWNlU2l6ZSwgYnl0ZXNMZW5ndGgpO1xuXG4gICAgICBjb25zdCBieXRlcyA9IG5ldyBBcnJheShlbmQgLSBiZWdpbik7XG5cbiAgICAgIGZvciAobGV0IG9mZnNldCA9IGJlZ2luLCBpID0gMDsgb2Zmc2V0IDwgZW5kOyArK2ksICsrb2Zmc2V0KSB7XG4gICAgICAgIGJ5dGVzW2ldID0gYnl0ZUNoYXJhY3RlcnNbb2Zmc2V0XS5jaGFyQ29kZUF0KDApO1xuICAgICAgfVxuICAgICAgYnl0ZUFycmF5c1tzbGljZUluZGV4XSA9IG5ldyBVaW50OEFycmF5KGJ5dGVzKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBCbG9iKGJ5dGVBcnJheXMsIHsgdHlwZTogY29udGVudF90eXBlIH0pO1xuICB9XG5cbiAgYXN5bmMgZmlsZVRvQmxvYihmaWxlOiBGaWxlKSB7XG4gICAgcmV0dXJuIG5ldyBCbG9iKFtuZXcgVWludDhBcnJheShhd2FpdCBmaWxlLmFycmF5QnVmZmVyKCkpXSwgeyB0eXBlOiBmaWxlLnR5cGUgfSlcbiAgfTtcblxuICBhc3luYyBibG9iVG9GaWxlKGJsb2I6IEJsb2IsIG5hbWVGb3JGaWxlID0gJ215LWZpbGUtbmFtZScpIHtcbiAgICBpZiAoIW5hbWVGb3JGaWxlKSB7XG4gICAgICBuYW1lRm9yRmlsZSA9IG5hbWVGb3JGaWxlICsgKG5ldyBEYXRlKCkpLmdldFRpbWUoKTtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIHJldHVybiBuZXcgRmlsZShbYmxvYl0sIG5hbWVGb3JGaWxlKVxuICAgIH07XG4gIH1cblxuICBhc3luYyBnZXRCbG9iRnJvbSh1cmwpOiBQcm9taXNlPEJsb2I+IHtcbiAgICBjb25zdCByZXNwb25zZTogQXhpb3NSZXNwb25zZTxCbG9iPiA9IGF3YWl0IGF4aW9zKHtcbiAgICAgIHVybCxcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICByZXNwb25zZVR5cGU6ICdibG9iJ1xuICAgIH0pO1xuICAgIHJldHVybiByZXNwb25zZS5kYXRhO1xuICB9XG5cbiAgbnVtVmFsdWUocGl4ZWxzQ3NzOiBzdHJpbmcpIHtcblxuICAgIHJldHVybiBwYXJzZUludChwaXhlbHNDc3MucmVwbGFjZSgncHgnLCAnJykpO1xuICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9oZWxwZXJzLWJpbmFyeS50cyJdfQ==
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
export class HelpersNumber {
|
|
2
2
|
constructor() {
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated
|
|
5
|
+
* use _.random()
|
|
6
|
+
*/
|
|
3
7
|
this.randomInteger = (max, min) => Math.round(Math.random() * (max - min)) + min;
|
|
4
8
|
}
|
|
5
9
|
}
|
|
6
10
|
;
|
|
7
11
|
({}); // @--end-of-file-for-module=tnp-helpers lib/helpers-numbers.ts
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy1udW1iZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS13ZWJzcWwvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9oZWxwZXJzLW51bWJlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsTUFBTSxPQUFPLGFBQWE7SUFBMUI7UUFDRTs7O1dBR0c7UUFDSCxrQkFBYSxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUM7SUFHOUUsQ0FBQztDQUFBO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywrREFBK0QiLCJzb3VyY2VzQ29udGVudCI6WyJcbmV4cG9ydCBjbGFzcyBIZWxwZXJzTnVtYmVyIHtcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkXG4gICAqIHVzZSBfLnJhbmRvbSgpXG4gICAqL1xuICByYW5kb21JbnRlZ2VyID0gKG1heCwgbWluKSA9PiBNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkgKiAobWF4IC0gbWluKSkgKyBtaW47XG5cblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2hlbHBlcnMtbnVtYmVycy50cyJdfQ==
|