diff --git a/package-lock.json b/package-lock.json index a2b86ea3e..bd5646c7b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "knowage-vue", - "version": "8.2.0-SNAPSHOT", + "version": "9.0.0-SNAPSHOT", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "knowage-vue", - "version": "8.2.0-SNAPSHOT", + "version": "9.0.0-SNAPSHOT", "license": "AGPL-3.0", "workspaces": [ "src/workspaces" @@ -29,9 +29,6 @@ "caniuse-lite": "^1.0.30001618", "chart.js": "^3.7.0", "cronstrue": "^2.1.0", - "crypto-browserify": "^3.12.0", - "crypto-js": "^4.1.1", - "crypto-random-string": "^5.0.0", "deasync": "^0.1.21", "deepcopy": "^2.1.0", "dexie": "^3.2.4", @@ -3307,6 +3304,7 @@ "version": "4.10.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, "dependencies": { "bn.js": "^4.0.0", "inherits": "^2.0.1", @@ -3316,7 +3314,8 @@ "node_modules/asn1.js/node_modules/bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true }, "node_modules/assertion-error": { "version": "1.1.0", @@ -3482,7 +3481,8 @@ "node_modules/bn.js": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "dev": true }, "node_modules/brace-expansion": { "version": "1.1.11", @@ -3509,7 +3509,8 @@ "node_modules/brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "dev": true }, "node_modules/browser-process-hrtime": { "version": "1.0.0", @@ -3523,6 +3524,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, "dependencies": { "buffer-xor": "^1.0.3", "cipher-base": "^1.0.0", @@ -3536,6 +3538,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, "dependencies": { "browserify-aes": "^1.0.4", "browserify-des": "^1.0.0", @@ -3546,6 +3549,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, "dependencies": { "cipher-base": "^1.0.1", "des.js": "^1.0.0", @@ -3568,6 +3572,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dev": true, "dependencies": { "bn.js": "^5.0.0", "randombytes": "^2.0.1" @@ -3577,6 +3582,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz", "integrity": "sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==", + "dev": true, "dependencies": { "bn.js": "^5.2.1", "browserify-rsa": "^4.1.0", @@ -3597,6 +3603,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==", + "dev": true, "dependencies": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -3609,6 +3616,7 @@ "version": "2.3.8", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -3622,12 +3630,14 @@ "node_modules/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, "node_modules/browserify-sign/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, "dependencies": { "safe-buffer": "~5.1.0" } @@ -3635,7 +3645,8 @@ "node_modules/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, "node_modules/browserslist": { "version": "4.21.9", @@ -3684,7 +3695,8 @@ "node_modules/buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", + "dev": true }, "node_modules/builtin-modules": { "version": "3.3.0", @@ -3842,6 +3854,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, "dependencies": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -3998,12 +4011,14 @@ "node_modules/core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true }, "node_modules/create-ecdh": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dev": true, "dependencies": { "bn.js": "^4.1.0", "elliptic": "^6.5.3" @@ -4012,12 +4027,14 @@ "node_modules/create-ecdh/node_modules/bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true }, "node_modules/create-hash": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, "dependencies": { "cipher-base": "^1.0.1", "inherits": "^2.0.1", @@ -4030,6 +4047,7 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, "dependencies": { "cipher-base": "^1.0.3", "create-hash": "^1.1.0", @@ -4051,6 +4069,7 @@ "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, "dependencies": { "browserify-cipher": "^1.0.0", "browserify-sign": "^4.0.0", @@ -4068,25 +4087,6 @@ "node": "*" } }, - "node_modules/crypto-js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", - "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" - }, - "node_modules/crypto-random-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-5.0.0.tgz", - "integrity": "sha512-KWjTXWwxFd6a94m5CdRGW/t82Tr8DoBc9dNnPCAbFI1EBweN6v1tv8y4Y1m7ndkp/nkIBRxUxAzpaBnR2k3bcQ==", - "dependencies": { - "type-fest": "^2.12.2" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/cssom": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", @@ -4521,6 +4521,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dev": true, "dependencies": { "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" @@ -4547,6 +4548,7 @@ "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, "dependencies": { "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", @@ -4556,7 +4558,8 @@ "node_modules/diffie-hellman/node_modules/bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true }, "node_modules/dom-serializer": { "version": "2.0.0", @@ -4718,6 +4721,7 @@ "version": "6.5.5", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.5.tgz", "integrity": "sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==", + "dev": true, "dependencies": { "bn.js": "^4.11.9", "brorand": "^1.1.0", @@ -4731,7 +4735,8 @@ "node_modules/elliptic/node_modules/bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true }, "node_modules/emoji-regex": { "version": "8.0.0", @@ -4989,6 +4994,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, "dependencies": { "md5.js": "^1.3.4", "safe-buffer": "^5.1.1" @@ -5469,6 +5475,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dev": true, "dependencies": { "inherits": "^2.0.4", "readable-stream": "^3.6.0", @@ -5482,6 +5489,7 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, "dependencies": { "inherits": "^2.0.3", "minimalistic-assert": "^1.0.1" @@ -5501,6 +5509,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dev": true, "dependencies": { "hash.js": "^1.0.3", "minimalistic-assert": "^1.0.0", @@ -5618,7 +5627,8 @@ "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true }, "node_modules/ini": { "version": "1.3.8", @@ -5962,7 +5972,8 @@ "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true }, "node_modules/isbuffer": { "version": "0.0.0", @@ -6554,6 +6565,7 @@ "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, "dependencies": { "hash-base": "^3.0.0", "inherits": "^2.0.1", @@ -6592,6 +6604,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, "dependencies": { "bn.js": "^4.0.0", "brorand": "^1.0.1" @@ -6603,7 +6616,8 @@ "node_modules/miller-rabin/node_modules/bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true }, "node_modules/mime-db": { "version": "1.52.0", @@ -6633,12 +6647,14 @@ "node_modules/minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true }, "node_modules/minimalistic-crypto-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", + "dev": true }, "node_modules/minimatch": { "version": "3.1.2", @@ -6847,6 +6863,7 @@ "version": "5.1.7", "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz", "integrity": "sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==", + "dev": true, "dependencies": { "asn1.js": "^4.10.1", "browserify-aes": "^1.2.0", @@ -6863,6 +6880,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==", + "dev": true, "dependencies": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -6912,6 +6930,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dev": true, "dependencies": { "create-hash": "^1.1.2", "create-hmac": "^1.1.4", @@ -7119,7 +7138,8 @@ "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true }, "node_modules/proto-list": { "version": "1.2.4", @@ -7151,6 +7171,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, "dependencies": { "bn.js": "^4.1.0", "browserify-rsa": "^4.0.0", @@ -7163,7 +7184,8 @@ "node_modules/public-encrypt/node_modules/bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true }, "node_modules/punycode": { "version": "2.3.0", @@ -7280,6 +7302,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, "dependencies": { "safe-buffer": "^5.1.0" } @@ -7288,6 +7311,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, "dependencies": { "randombytes": "^2.0.5", "safe-buffer": "^5.1.0" @@ -7303,6 +7327,7 @@ "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -7472,6 +7497,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, "dependencies": { "hash-base": "^3.0.0", "inherits": "^2.0.1" @@ -7565,6 +7591,7 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, "funding": [ { "type": "github", @@ -7658,6 +7685,7 @@ "version": "2.4.11", "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, "dependencies": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -7728,6 +7756,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, "dependencies": { "safe-buffer": "~5.2.0" } @@ -8078,17 +8107,6 @@ "node": ">=4" } }, - "node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/typed-array-buffer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", @@ -8322,7 +8340,8 @@ "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true }, "node_modules/uuid": { "version": "8.3.2", @@ -12100,6 +12119,7 @@ "version": "4.10.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, "requires": { "bn.js": "^4.0.0", "inherits": "^2.0.1", @@ -12109,7 +12129,8 @@ "bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true } } }, @@ -12254,7 +12275,8 @@ "bn.js": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "dev": true }, "brace-expansion": { "version": "1.1.11", @@ -12278,7 +12300,8 @@ "brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "dev": true }, "browser-process-hrtime": { "version": "1.0.0", @@ -12292,6 +12315,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, "requires": { "buffer-xor": "^1.0.3", "cipher-base": "^1.0.0", @@ -12305,6 +12329,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, "requires": { "browserify-aes": "^1.0.4", "browserify-des": "^1.0.0", @@ -12315,6 +12340,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, "requires": { "cipher-base": "^1.0.1", "des.js": "^1.0.0", @@ -12337,6 +12363,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dev": true, "requires": { "bn.js": "^5.0.0", "randombytes": "^2.0.1" @@ -12346,6 +12373,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz", "integrity": "sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==", + "dev": true, "requires": { "bn.js": "^5.2.1", "browserify-rsa": "^4.1.0", @@ -12363,6 +12391,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==", + "dev": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -12372,6 +12401,7 @@ "version": "2.3.8", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -12385,7 +12415,8 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true } } }, @@ -12393,6 +12424,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, "requires": { "safe-buffer": "~5.1.0" }, @@ -12400,7 +12432,8 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true } } } @@ -12433,7 +12466,8 @@ "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", + "dev": true }, "builtin-modules": { "version": "3.3.0", @@ -12544,6 +12578,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -12677,12 +12712,14 @@ "core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true }, "create-ecdh": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dev": true, "requires": { "bn.js": "^4.1.0", "elliptic": "^6.5.3" @@ -12691,7 +12728,8 @@ "bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true } } }, @@ -12699,6 +12737,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, "requires": { "cipher-base": "^1.0.1", "inherits": "^2.0.1", @@ -12711,6 +12750,7 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, "requires": { "cipher-base": "^1.0.3", "create-hash": "^1.1.0", @@ -12729,6 +12769,7 @@ "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, "requires": { "browserify-cipher": "^1.0.0", "browserify-sign": "^4.0.0", @@ -12743,19 +12784,6 @@ "randomfill": "^1.0.3" } }, - "crypto-js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", - "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" - }, - "crypto-random-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-5.0.0.tgz", - "integrity": "sha512-KWjTXWwxFd6a94m5CdRGW/t82Tr8DoBc9dNnPCAbFI1EBweN6v1tv8y4Y1m7ndkp/nkIBRxUxAzpaBnR2k3bcQ==", - "requires": { - "type-fest": "^2.12.2" - } - }, "cssom": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", @@ -13077,6 +13105,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dev": true, "requires": { "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" @@ -13097,6 +13126,7 @@ "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, "requires": { "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", @@ -13106,7 +13136,8 @@ "bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true } } }, @@ -13238,6 +13269,7 @@ "version": "6.5.5", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.5.tgz", "integrity": "sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==", + "dev": true, "requires": { "bn.js": "^4.11.9", "brorand": "^1.1.0", @@ -13251,7 +13283,8 @@ "bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true } } }, @@ -13440,6 +13473,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, "requires": { "md5.js": "^1.3.4", "safe-buffer": "^5.1.1" @@ -13810,6 +13844,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dev": true, "requires": { "inherits": "^2.0.4", "readable-stream": "^3.6.0", @@ -13820,6 +13855,7 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, "requires": { "inherits": "^2.0.3", "minimalistic-assert": "^1.0.1" @@ -13839,6 +13875,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dev": true, "requires": { "hash.js": "^1.0.3", "minimalistic-assert": "^1.0.0", @@ -13937,7 +13974,8 @@ "inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true }, "ini": { "version": "1.3.8", @@ -14173,7 +14211,8 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true }, "isbuffer": { "version": "0.0.0", @@ -14685,6 +14724,7 @@ "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1", @@ -14717,6 +14757,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, "requires": { "bn.js": "^4.0.0", "brorand": "^1.0.1" @@ -14725,7 +14766,8 @@ "bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true } } }, @@ -14751,12 +14793,14 @@ "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true }, "minimalistic-crypto-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", + "dev": true }, "minimatch": { "version": "3.1.2", @@ -14906,6 +14950,7 @@ "version": "5.1.7", "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz", "integrity": "sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==", + "dev": true, "requires": { "asn1.js": "^4.10.1", "browserify-aes": "^1.2.0", @@ -14919,6 +14964,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==", + "dev": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -14961,6 +15007,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dev": true, "requires": { "create-hash": "^1.1.2", "create-hmac": "^1.1.4", @@ -15090,7 +15137,8 @@ "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true }, "proto-list": { "version": "1.2.4", @@ -15122,6 +15170,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, "requires": { "bn.js": "^4.1.0", "browserify-rsa": "^4.0.0", @@ -15134,7 +15183,8 @@ "bn.js": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true } } }, @@ -15222,6 +15272,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, "requires": { "safe-buffer": "^5.1.0" } @@ -15230,6 +15281,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, "requires": { "randombytes": "^2.0.5", "safe-buffer": "^5.1.0" @@ -15245,6 +15297,7 @@ "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -15376,6 +15429,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1" @@ -15443,7 +15497,8 @@ "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true }, "safe-regex-test": { "version": "1.0.0", @@ -15505,6 +15560,7 @@ "version": "2.4.11", "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -15562,6 +15618,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, "requires": { "safe-buffer": "~5.2.0" } @@ -15828,11 +15885,6 @@ "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==" }, - "type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" - }, "typed-array-buffer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", @@ -15995,7 +16047,8 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true }, "uuid": { "version": "8.3.2", diff --git a/package.json b/package.json index 8dc2ec2fa..3f8a50f8f 100644 --- a/package.json +++ b/package.json @@ -29,9 +29,6 @@ "caniuse-lite": "^1.0.30001618", "chart.js": "^3.7.0", "cronstrue": "^2.1.0", - "crypto-browserify": "^3.12.0", - "crypto-js": "^4.1.1", - "crypto-random-string": "^5.0.0", "deasync": "^0.1.21", "deepcopy": "^2.1.0", "dexie": "^3.2.4", diff --git a/src/components/UI/KnDashboardTabs/KnDashboardTabsPanel.vue b/src/components/UI/KnDashboardTabs/KnDashboardTabsPanel.vue index b7298fa93..2d19ac7bb 100644 --- a/src/components/UI/KnDashboardTabs/KnDashboardTabsPanel.vue +++ b/src/components/UI/KnDashboardTabs/KnDashboardTabsPanel.vue @@ -74,7 +74,6 @@ import { defineComponent } from 'vue' import type { PropType } from 'vue' import type { ISheet } from '@/modules/documentExecution/dashboard/Dashboard' -import cryptoRandomString from 'crypto-random-string' import KnIconPicker from '@/components/UI/KnIconPicker/KnIconPicker.vue' export default defineComponent({ @@ -126,7 +125,7 @@ export default defineComponent({ }, methods: { addSheet(): void { - this.$emit('update:sheets', [...this.sheets, { label: this.$t('dashboard.sheets.newSheet'), widgets: { lg: [], md: [], sm: [], xs: [], xxs: [] }, id: cryptoRandomString({ length: 16, type: 'base64' }) }]) + this.$emit('update:sheets', [...this.sheets, { label: this.$t('dashboard.sheets.newSheet'), widgets: { lg: [], md: [], sm: [], xs: [], xxs: [] }, id: crypto.randomUUID() }]) }, renameSheet(index): void { if (this.edit) { diff --git a/src/helpers/commons/qbeHelpers.ts b/src/helpers/commons/qbeHelpers.ts index 2df21c7f3..65e5b9436 100644 --- a/src/helpers/commons/qbeHelpers.ts +++ b/src/helpers/commons/qbeHelpers.ts @@ -1,5 +1,3 @@ -import cryptoRandomString from 'crypto-random-string' - export function createNewField(editQueryObj, field) { var newField = { id: field.attributes.type === 'inLineCalculatedField' ? field.attributes.formState : field.id, @@ -27,7 +25,7 @@ export function createNewField(editQueryObj, field) { leaf: field.leaf, originalId: field.id, isSpatial: field.isSpatial, - uniqueID: cryptoRandomString({ length: 4, type: 'base64' }) + uniqueID: crypto.randomUUID() } as any // eslint-disable-next-line no-prototype-builtins diff --git a/src/modules/documentBrowser/DocumentBrowser.vue b/src/modules/documentBrowser/DocumentBrowser.vue index 82d38fdd4..c091fe23d 100644 --- a/src/modules/documentBrowser/DocumentBrowser.vue +++ b/src/modules/documentBrowser/DocumentBrowser.vue @@ -39,8 +39,6 @@ import Menu from 'primevue/menu' import TabView from 'primevue/tabview' import TabPanel from 'primevue/tabpanel' -import cryptoRandomString from 'crypto-random-string' - export default defineComponent({ name: 'document-browser', components: { DocumentBrowserHome, DocumentBrowserTab, Menu, TabView, TabPanel }, @@ -93,7 +91,7 @@ export default defineComponent({ name: tempDocument.name, label: id, mode: this.$router.currentRoute.value.params.mode, - routerId: cryptoRandomString({ length: 16, type: 'base64' }), + routerId: crypto.randomUUID(), id: id, showMode: this.$router.currentRoute.value.name === 'document-browser-document-execution' ? 'execute' : 'documentDetail' }, @@ -132,7 +130,7 @@ export default defineComponent({ }, onItemSelect(payload: any) { if (payload.item) { - payload.item.routerId = cryptoRandomString({ length: 16, type: 'base64' }) + payload.item.routerId = crypto.randomUUID() } const tempItem = { ...payload, item: { ...payload.item } } @@ -153,7 +151,7 @@ export default defineComponent({ this.selectedItem.item.showMode = 'execute' this.$router.push(`/document-browser/${routeDocumentType}/` + id) } else { - this.selectedItem.item = { routerId: cryptoRandomString({ length: 16, type: 'base64' }) } + this.selectedItem.item = { routerId: crypto.randomUUID() } this.selectedItem.item.showMode = payload.mode const link = payload.mode === 'createCockpit' ? '/document-browser/new-cockpit' : `/document-browser/new-dashboard?folderId=${payload.functionalityId}` this.$router.push(link) @@ -232,7 +230,7 @@ export default defineComponent({ this.closeIframe() await this.$router.push(`/document-browser/document-composite/${cockpit.DOCUMENT_LABEL}?documentMode=edit`) setTimeout(() => {}, 2000) - this.selectedItem = { item: { ...cockpit, routerId: cryptoRandomString({ length: 16, type: 'base64' }), name: cockpit.DOCUMENT_NAME, label: cockpit.DOCUMENT_LABEL, showMode: 'execute' }, mode: 'execute' } + this.selectedItem = { item: { ...cockpit, routerId: crypto.randomUUID(), name: cockpit.DOCUMENT_NAME, label: cockpit.DOCUMENT_LABEL, showMode: 'execute' }, mode: 'execute' } this.tabs[this.activeIndex - 1] = this.selectedItem }, getTabName(tab: any) { @@ -246,7 +244,7 @@ export default defineComponent({ this.documentSaved = document this.documentSavedTrigger = !this.documentSavedTrigger this.selectedItem.functionalityId = null - this.selectedItem.item = { name: document.name, label: document.id, routerId: cryptoRandomString({ length: 16, type: 'base64' }), id: document.id, showMode: 'documentDetail' } + this.selectedItem.item = { name: document.name, label: document.id, routerId: crypto.randomUUID(), id: document.id, showMode: 'documentDetail' } this.$router.push(`/document-browser/document-details/${document.id}`) } } diff --git a/src/modules/documentExecution/dashboard/DashboardController.vue b/src/modules/documentExecution/dashboard/DashboardController.vue index 9447ef4ea..83541f40d 100644 --- a/src/modules/documentExecution/dashboard/DashboardController.vue +++ b/src/modules/documentExecution/dashboard/DashboardController.vue @@ -96,7 +96,6 @@ import mainStore from '../../../App.store' import DatasetEditor from './dataset/DatasetEditor.vue' import WidgetEditor from './widget/WidgetEditor/WidgetEditor.vue' import descriptor from './DashboardDescriptor.json' -import cryptoRandomString from 'crypto-random-string' import DashboardControllerSaveDialog from './DashboardControllerSaveDialog.vue' import SelectionsListDialog from './widget/SelectorWidget/SelectionsListDialog.vue' import DashboardGeneralSettings from './generalSettings/DashboardGeneralSettings.vue' @@ -271,7 +270,7 @@ export default defineComponent({ }, async getData() { this.loading = true - if (!this.dashboardId) this.dashboardId = cryptoRandomString({ length: 16, type: 'base64' }) + if (!this.dashboardId) this.dashboardId = crypto.randomUUID() this.$emit('dashboardIdSet', this.dashboardId) if (this.filtersData) { this.drivers = loadDrivers(this.filtersData, this.model) diff --git a/src/modules/documentExecution/dashboard/DashboardHelpers.ts b/src/modules/documentExecution/dashboard/DashboardHelpers.ts index 020613e38..63b8773b6 100644 --- a/src/modules/documentExecution/dashboard/DashboardHelpers.ts +++ b/src/modules/documentExecution/dashboard/DashboardHelpers.ts @@ -4,7 +4,6 @@ import { formatWidgetForSave, recreateKnowageChartModel } from './widget/WidgetE import { setVariableValueFromDataset } from './generalSettings/VariablesHelper' import mitt from 'mitt' export const emitter = mitt() -import cryptoRandomString from 'crypto-random-string' import deepcopy from 'deepcopy' import { formatChartJSWidget } from './widget/WidgetEditor/helpers/chartWidget/chartJS/ChartJSHelpers' import { formatHighchartsWidget } from './widget/WidgetEditor/helpers/chartWidget/highcharts/HighchartsHelpers' @@ -25,7 +24,7 @@ export const SHEET_WIDGET_SIZES = ['xxs', 'xs', 'sm', 'md', 'lg'] as string[] export const createNewDashboardModel = () => { const dashboardModel = deepcopy(descriptor.newDashboardModel) as IDashboard dashboardModel.configuration.theme = { config: getDefaultDashboardThemeConfig() } - dashboardModel.configuration.id = cryptoRandomString({ length: 16, type: 'base64' }) + dashboardModel.configuration.id = crypto.randomUUID() return dashboardModel } @@ -82,7 +81,7 @@ const moveWidgetItemToSpecificSizeArray = (widgetToAdd: IWidgetSheetItem, size: } if (overlap) updateWidgetCoordinatesIfOverlaping(widgetToAdd, maxWidth, sheetWidgets[size]) - if (sheetWidgets && widgetToAdd) sheetWidgets[size].push({ id: widgetToAdd.id ?? '', h: widgetToAdd.h, i: cryptoRandomString({ length: 16, type: 'base64' }), w: widgetToAdd.w, x: widgetToAdd.x, y: widgetToAdd.y, moved: false }) + if (sheetWidgets && widgetToAdd) sheetWidgets[size].push({ id: widgetToAdd.id ?? '', h: widgetToAdd.h, i: crypto.randomUUID(), w: widgetToAdd.w, x: widgetToAdd.x, y: widgetToAdd.y, moved: false }) } const getMaxWidthForSpecificSize = (size: string) => { @@ -174,7 +173,7 @@ const updateSheetInWidgetSizeArray = (sheet: IDashboardSheet, size: string, widg } const createDashboardSheetWidgetItem = (widget: IWidget) => { - return { id: widget.id ?? cryptoRandomString({ length: 16, type: 'base64' }), h: 10, i: cryptoRandomString({ length: 16, type: 'base64' }), w: 25, x: 0, y: 0, moved: false } + return { id: widget.id ?? crypto.randomUUID(), h: 10, i: crypto.randomUUID(), w: 25, x: 0, y: 0, moved: false } } export const deleteWidgetHelper = (dashboardId: string, widget: IWidget, dashboards: any) => { @@ -261,7 +260,7 @@ const formatWidget = (widget: IWidget) => { const addColumnIdsToWidgetColumns = (widget: IWidget) => { widget.columns.forEach((column: IWidgetColumn) => { - if (!column.id) column.id = cryptoRandomString({ length: 16, type: 'base64' }) + if (!column.id) column.id = crypto.randomUUID() }) } diff --git a/src/modules/documentExecution/dashboard/DashboardRenderer.vue b/src/modules/documentExecution/dashboard/DashboardRenderer.vue index 889dd61c1..160b91933 100644 --- a/src/modules/documentExecution/dashboard/DashboardRenderer.vue +++ b/src/modules/documentExecution/dashboard/DashboardRenderer.vue @@ -56,7 +56,6 @@ import { IBackground, IDashboardSheet, IDataset, IVariable } from './Dashboard' import { canEditDashboard } from './DashboardHelpers' import { mapActions, mapState } from 'pinia' import { emitter } from './DashboardHelpers' -import cryptoRandomString from 'crypto-random-string' import WidgetController from './widget/WidgetController.vue' import KnDashboardTabsPanel from '@/components/UI/KnDashboardTabs/KnDashboardTabsPanel.vue' import dashboardStore from './Dashboard.store' @@ -150,7 +149,7 @@ export default defineComponent({ y: 0, x: 0, h: 20, - i: cryptoRandomString({ length: 16, type: 'base64' }) + i: crypto.randomUUID() }) } }) diff --git a/src/modules/documentExecution/dashboard/dataset/DatasetEditorAssociations/DatasetEditorAssociations.vue b/src/modules/documentExecution/dashboard/dataset/DatasetEditorAssociations/DatasetEditorAssociations.vue index 48248a7ae..822280567 100644 --- a/src/modules/documentExecution/dashboard/dataset/DatasetEditorAssociations/DatasetEditorAssociations.vue +++ b/src/modules/documentExecution/dashboard/dataset/DatasetEditorAssociations/DatasetEditorAssociations.vue @@ -19,7 +19,6 @@ import KnHint from '@/components/UI/KnHint.vue' import AssociationsList from './DatasetEditorAssociationsList/DatasetEditorAssociationsList.vue' import AssociationsDetail from './DatasetEditorAssociationsDetail/DatasetEditorAssociationsDetail.vue' import mainStore from '../../../../../App.store' -import cryptoRandomString from 'crypto-random-string' export default defineComponent({ name: 'dataset-editor-data-tab', @@ -63,7 +62,7 @@ export default defineComponent({ this.selectedDatasets = this.selectedDatasetsProp }, createNewAssociation() { - this.selectedAssociation = { fields: [], id: cryptoRandomString({ length: 16, type: 'base64' }) } as IAssociation + this.selectedAssociation = { fields: [], id: crypto.randomUUID() } as IAssociation this.dashboardAssociations.push(this.selectedAssociation) this.$emit('associationSelected', this.selectedAssociation) }, diff --git a/src/modules/documentExecution/dashboard/helpers/DashboardBackwardCompatibilityHelper.ts b/src/modules/documentExecution/dashboard/helpers/DashboardBackwardCompatibilityHelper.ts index aebb43c1b..5cd1b7cad 100644 --- a/src/modules/documentExecution/dashboard/helpers/DashboardBackwardCompatibilityHelper.ts +++ b/src/modules/documentExecution/dashboard/helpers/DashboardBackwardCompatibilityHelper.ts @@ -6,7 +6,6 @@ import { IAssociation, IDashboard, IDashboardConfiguration, IDataset, IDatasetPa import { formatSelectionWidget } from './selectionWidget/SelectionsWidgetCompatibilityHelper' import { setVariableValueFromDataset } from '../generalSettings/VariablesHelper' import deepcopy from 'deepcopy' -import cryptoRandomString from 'crypto-random-string' import { formatHTMLWidget } from './htmlWidget/HTMLWidgetCompatibilityHelper' import { formatTextWidget } from './textWidget/TextWidgetCompatibilityHelper' import { getFormattedDatasetDrivers } from '../dataset/DatasetEditorDataTab/DatasetEditorDataDetail/DatasetEditorDriverDialog/DatasetEditorDatasetDriverFormatterHelper' @@ -28,7 +27,7 @@ export const formatModel = async (model: any, document: any, datasets: IDataset[ loadDatasetIdNameMap(datasets) const formattedModel = { - id: cryptoRandomString({ length: 16, type: 'base64' }), + id: crypto.randomUUID(), widgets: [], version: model.knowageVersion, configuration: await getFormattedModelConfiguration(model, document, drivers, profileAttributes, datasets, $http), @@ -199,13 +198,13 @@ const formatSheet = (sheet: any, formattedModel: any, user: any, drivers: IDashb if (!sheet.widgets) return const formattedSheet = deepcopy(sheet) - formattedSheet.id = cryptoRandomString({ length: 16, type: 'base64' }) + formattedSheet.id = crypto.randomUUID() formattedSheet.widgets = { lg: [], md: [], sm: [], xs: [], xxs: [] } for (let i = 0; i < sheet.widgets.length; i++) { const tempWidget = sheet.widgets[i] const sizes = ['lg', 'md', 'sm', 'xs', 'xxs'] - sizes.forEach((size: string) => formattedSheet.widgets[size].push({ id: tempWidget.id, h: tempWidget.sizeY, w: tempWidget.sizeX, x: tempWidget.col, y: tempWidget.row, i: cryptoRandomString({ length: 16, type: 'base64' }), moved: false })) + sizes.forEach((size: string) => formattedSheet.widgets[size].push({ id: tempWidget.id, h: tempWidget.sizeY, w: tempWidget.sizeX, x: tempWidget.col, y: tempWidget.row, i: crypto.randomUUID(), moved: false })) addWidgetToModel(tempWidget, formattedModel, user, drivers) } diff --git a/src/modules/documentExecution/dashboard/helpers/cePivotWidget/cePivotTableColumnHelper.ts b/src/modules/documentExecution/dashboard/helpers/cePivotWidget/cePivotTableColumnHelper.ts index 807f51739..e124e89d0 100644 --- a/src/modules/documentExecution/dashboard/helpers/cePivotWidget/cePivotTableColumnHelper.ts +++ b/src/modules/documentExecution/dashboard/helpers/cePivotWidget/cePivotTableColumnHelper.ts @@ -1,6 +1,5 @@ import { IWidgetColumn } from '../../Dashboard' import { IPivotFields } from '../../interfaces/pivotTable/DashboardPivotTableWidget' -import cryptoRandomString from 'crypto-random-string' export const getFormattedPivotFields = (widget: any, columnNameIdMap: any) => { if (!widget.content || !widget.content.crosstabDefinition) return [] @@ -19,7 +18,7 @@ export const getFormattedFields = (widgetColumns: any, columnNameIdMap: any) => const formattedColumns = [] as IWidgetColumn[] widgetColumns.forEach((widgetColumn) => { - const formattedColumn = { id: cryptoRandomString({ length: 16, type: 'base64' }), columnName: widgetColumn.id, alias: widgetColumn.alias, type: '', fieldType: widgetColumn.nature.toUpperCase(), filter: {} } as IWidgetColumn + const formattedColumn = { id: crypto.randomUUID(), columnName: widgetColumn.id, alias: widgetColumn.alias, type: '', fieldType: widgetColumn.nature.toUpperCase(), filter: {} } as IWidgetColumn if (widgetColumn.isCalculated) { formattedColumn.formula = widgetColumn.formula diff --git a/src/modules/documentExecution/dashboard/helpers/common/WidgetColumnHelper.ts b/src/modules/documentExecution/dashboard/helpers/common/WidgetColumnHelper.ts index 77948b5c0..e318c4852 100644 --- a/src/modules/documentExecution/dashboard/helpers/common/WidgetColumnHelper.ts +++ b/src/modules/documentExecution/dashboard/helpers/common/WidgetColumnHelper.ts @@ -1,5 +1,4 @@ -import { IWidgetColumn } from "../../Dashboard" -import cryptoRandomString from "crypto-random-string" +import { IWidgetColumn } from '../../Dashboard' export const getFormattedWidgetColumns = (widget: any, columnNameIdMap: any, allowDuplicates: boolean = true) => { if (!widget.content || !widget.content.columnSelectedOfDataset) return [] @@ -13,19 +12,18 @@ export const getFormattedWidgetColumns = (widget: any, columnNameIdMap: any, all const index = formattedColumns.findIndex((column: IWidgetColumn) => column.columnName === formattedColumn.columnName && column.alias === formattedColumn.alias) if (index === -1) formattedColumns.push(formattedColumn) } - } return formattedColumns } export const getFormattedWidgetColumn = (widgetColumn: any, columnNameIdMap: any) => { - const formattedColumn = { id: cryptoRandomString({ length: 16, type: 'base64' }), columnName: widgetColumn.name, alias: widgetColumn.alias, type: widgetColumn.type, fieldType: widgetColumn.fieldType, multiValue: widgetColumn.multiValue, filter: {} } as IWidgetColumn + const formattedColumn = { id: crypto.randomUUID(), columnName: widgetColumn.name, alias: widgetColumn.alias, type: widgetColumn.type, fieldType: widgetColumn.fieldType, multiValue: widgetColumn.multiValue, filter: {} } as IWidgetColumn if (widgetColumn.isCalculated) { formattedColumn.formula = widgetColumn.formula formattedColumn.formulaEditor = widgetColumn.formulaEditor } columnNameIdMap[formattedColumn.columnName] = formattedColumn.id if (widgetColumn.aggregationSelected) formattedColumn.aggregation = widgetColumn.aggregationSelected - if (widgetColumn.aggregationColumn) formattedColumn.aggregationColumn = widgetColumn.aggregationSelected !== 'COUNT' ? widgetColumn.aggregationColumn : "" + if (widgetColumn.aggregationColumn) formattedColumn.aggregationColumn = widgetColumn.aggregationSelected !== 'COUNT' ? widgetColumn.aggregationColumn : '' return formattedColumn -} \ No newline at end of file +} diff --git a/src/modules/documentExecution/dashboard/helpers/pivotWidget/PivotTableColumnHelper.ts b/src/modules/documentExecution/dashboard/helpers/pivotWidget/PivotTableColumnHelper.ts index 807f51739..e124e89d0 100644 --- a/src/modules/documentExecution/dashboard/helpers/pivotWidget/PivotTableColumnHelper.ts +++ b/src/modules/documentExecution/dashboard/helpers/pivotWidget/PivotTableColumnHelper.ts @@ -1,6 +1,5 @@ import { IWidgetColumn } from '../../Dashboard' import { IPivotFields } from '../../interfaces/pivotTable/DashboardPivotTableWidget' -import cryptoRandomString from 'crypto-random-string' export const getFormattedPivotFields = (widget: any, columnNameIdMap: any) => { if (!widget.content || !widget.content.crosstabDefinition) return [] @@ -19,7 +18,7 @@ export const getFormattedFields = (widgetColumns: any, columnNameIdMap: any) => const formattedColumns = [] as IWidgetColumn[] widgetColumns.forEach((widgetColumn) => { - const formattedColumn = { id: cryptoRandomString({ length: 16, type: 'base64' }), columnName: widgetColumn.id, alias: widgetColumn.alias, type: '', fieldType: widgetColumn.nature.toUpperCase(), filter: {} } as IWidgetColumn + const formattedColumn = { id: crypto.randomUUID(), columnName: widgetColumn.id, alias: widgetColumn.alias, type: '', fieldType: widgetColumn.nature.toUpperCase(), filter: {} } as IWidgetColumn if (widgetColumn.isCalculated) { formattedColumn.formula = widgetColumn.formula diff --git a/src/modules/documentExecution/dashboard/helpers/selectorWidget/SelectorWidgetCompatibilityHelper.ts b/src/modules/documentExecution/dashboard/helpers/selectorWidget/SelectorWidgetCompatibilityHelper.ts index 93dcad4a0..cde86751c 100644 --- a/src/modules/documentExecution/dashboard/helpers/selectorWidget/SelectorWidgetCompatibilityHelper.ts +++ b/src/modules/documentExecution/dashboard/helpers/selectorWidget/SelectorWidgetCompatibilityHelper.ts @@ -1,10 +1,9 @@ -import { IWidget, IWidgetColumn, IWidgetExports } from "@/modules/documentExecution/dashboard/Dashboard" -import { ISelectorWidgetDefaultValues, ISelectorWidgetSelectorType, ISelectorWidgetSettings, ISelectorWidgetValuesManagement, ISelectorWidgetConfiguration } from "@/modules/documentExecution/dashboard/interfaces/DashboardSelectorWidget" +import { IWidget, IWidgetColumn, IWidgetExports } from '@/modules/documentExecution/dashboard/Dashboard' +import { ISelectorWidgetDefaultValues, ISelectorWidgetSelectorType, ISelectorWidgetSettings, ISelectorWidgetValuesManagement, ISelectorWidgetConfiguration } from '@/modules/documentExecution/dashboard/interfaces/DashboardSelectorWidget' import { getFormattedStyle } from './SelectorWidgetStyleHelper' -import cryptoRandomString from 'crypto-random-string' import * as widgetCommonDefaultValues from '../../widget/WidgetEditor/helpers/common/WidgetCommonDefaultValues' import * as selectorWidgetDefaultValues from '../../widget/WidgetEditor/helpers/selectorWidget/SelectorWidgetDefaultValues' -import { getFiltersForColumns } from "../DashboardBackwardCompatibilityHelper" +import { getFiltersForColumns } from '../DashboardBackwardCompatibilityHelper' export const formatSelectorWidget = (widget: any) => { const formattedWidget = { @@ -23,11 +22,18 @@ export const formatSelectorWidget = (widget: any) => { const getFormattedSelectionColumn = (widget: any) => { const formattedColumns = [] as IWidgetColumn[] if (widget.content && widget.content.selectedColumn) { - const formattedColumn = { id: cryptoRandomString({ length: 16, type: 'base64' }), columnName: widget.content.selectedColumn.name, alias: widget.content.selectedColumn.alias, type: widget.content.selectedColumn.type, fieldType: widget.content.selectedColumn.fieldType, multiValue: widget.content.selectedColumn.multiValue, filter: {} } as IWidgetColumn + const formattedColumn = { + id: crypto.randomUUID(), + columnName: widget.content.selectedColumn.name, + alias: widget.content.selectedColumn.alias, + type: widget.content.selectedColumn.type, + fieldType: widget.content.selectedColumn.fieldType, + multiValue: widget.content.selectedColumn.multiValue, + filter: {} + } as IWidgetColumn formattedColumns.push(formattedColumn) } return formattedColumns - } const getFormattedWidgetSettings = (widget: any) => { @@ -70,7 +76,7 @@ const getFormattedSelectorType = (widget: any) => { const getFormattedDefaultValues = (widget: any) => { if (!widget.settings) return selectorWidgetDefaultValues.getDefaultValues() const formattedDefaultValues = { - enabled: false, + enabled: false } as ISelectorWidgetDefaultValues if (widget.settings.defaultValue) formattedDefaultValues.valueType = widget.settings.defaultValue if (widget.settings.staticValues) formattedDefaultValues.value = widget.settings.staticValues @@ -80,10 +86,10 @@ const getFormattedDefaultValues = (widget: any) => { return formattedDefaultValues } - const getFormattedWidgetValuesManagement = (widget: any) => { if (!widget.settings) return selectorWidgetDefaultValues.getDefaultValuesManagement() return { - hideDisabled: widget.settings.hideDisabled ?? false, enableAll: widget.settings.enableAll ?? false, + hideDisabled: widget.settings.hideDisabled ?? false, + enableAll: widget.settings.enableAll ?? false } as ISelectorWidgetValuesManagement } diff --git a/src/modules/documentExecution/dashboard/widget/ChartWidget/Highcharts/HighchartsContainer.vue b/src/modules/documentExecution/dashboard/widget/ChartWidget/Highcharts/HighchartsContainer.vue index eb9c51878..3519fe376 100644 --- a/src/modules/documentExecution/dashboard/widget/ChartWidget/Highcharts/HighchartsContainer.vue +++ b/src/modules/documentExecution/dashboard/widget/ChartWidget/Highcharts/HighchartsContainer.vue @@ -24,7 +24,6 @@ import NoDataToDisplay from 'highcharts/modules/no-data-to-display' import SeriesLabel from 'highcharts/modules/series-label' import HighchartsHeatmap from 'highcharts/modules/heatmap' import Drilldown from 'highcharts/modules/drilldown' -import cryptoRandomString from 'crypto-random-string' import store from '../../../Dashboard.store' import deepcopy from 'deepcopy' import mainStore from '@/App.store' @@ -75,7 +74,7 @@ export default defineComponent({ emits: ['datasetInteractionPreview'], data() { return { - chartID: cryptoRandomString({ length: 16, type: 'base64' }), + chartID: crypto.randomUUID(), chartModel: {} as IHighchartsChartModel, error: false, highchartsInstance: {} as any, diff --git a/src/modules/documentExecution/dashboard/widget/ChartWidget/Vega/VegaContainer.vue b/src/modules/documentExecution/dashboard/widget/ChartWidget/Vega/VegaContainer.vue index 75824cbd3..e11c69893 100644 --- a/src/modules/documentExecution/dashboard/widget/ChartWidget/Vega/VegaContainer.vue +++ b/src/modules/documentExecution/dashboard/widget/ChartWidget/Vega/VegaContainer.vue @@ -12,7 +12,6 @@ import { IVegaChartsModel, IVegaChartsTextConfiguration, IVegaChartsTooltipSetti import { executeChartCrossNavigation, updateStoreSelections } from '../../interactionsHelpers/InteractionHelper' import { formatForCrossNavigation, getFormattedChartValues } from './VegaContainerHelpers' import VegaContainerNoData from './VegaContainerNoData.vue' -import cryptoRandomString from 'crypto-random-string' import vegaEmbed from 'vega-embed' import mainStore from '@/App.store' import dashboardStore from '@/modules/documentExecution/dashboard/Dashboard.store' @@ -31,7 +30,7 @@ export default defineComponent({ }, data() { return { - chartID: cryptoRandomString({ length: 16, type: 'alphanumeric' }), + chartID: crypto.randomUUID(), chartModel: {} as IVegaChartsModel, chartHeight: 0 as number } diff --git a/src/modules/documentExecution/dashboard/widget/CustomChartWidget/CustomChartWidget.vue b/src/modules/documentExecution/dashboard/widget/CustomChartWidget/CustomChartWidget.vue index 4ef57c1ca..5728a4a0c 100644 --- a/src/modules/documentExecution/dashboard/widget/CustomChartWidget/CustomChartWidget.vue +++ b/src/modules/documentExecution/dashboard/widget/CustomChartWidget/CustomChartWidget.vue @@ -12,7 +12,6 @@ import { CustomChartDatastore } from '../WidgetEditor/WidgetEditorSettingsTab/Cu import { formatForCrossNavigation } from './CustomChartWidgetHelpers' import store from '../../Dashboard.store' import appStore from '../../../../../App.store' -import cryptoRandomString from 'crypto-random-string' import { startHTMLAndCustomChartIFrameInteractions } from '../interactionsHelpers/IFrameInteractionHelper' export default defineComponent({ @@ -29,7 +28,7 @@ export default defineComponent({ emits: ['loading', 'datasetInteractionPreview'], data() { return { - id: cryptoRandomString({ length: 16, type: 'base64' }), + id: crypto.randomUUID(), dataToShow: {} as any, activeSelections: [] as ISelection[], htmlContent: '' as string, diff --git a/src/modules/documentExecution/dashboard/widget/WidgetEditor/WidgetEditorDataTab/WidgetEditorDataList/WidgetEditorDataList.vue b/src/modules/documentExecution/dashboard/widget/WidgetEditor/WidgetEditorDataTab/WidgetEditorDataList/WidgetEditorDataList.vue index c0e4d9542..8c963e3e6 100644 --- a/src/modules/documentExecution/dashboard/widget/WidgetEditor/WidgetEditorDataTab/WidgetEditorDataList/WidgetEditorDataList.vue +++ b/src/modules/documentExecution/dashboard/widget/WidgetEditor/WidgetEditorDataTab/WidgetEditorDataList/WidgetEditorDataList.vue @@ -54,7 +54,6 @@ import Listbox from 'primevue/listbox' import dataListDescriptor from '../../../../dataset/DatasetEditorDataTab/DatasetEditorDataList/DatasetEditorDataListDescriptor.json' import KnCalculatedField from '@/components/functionalities/KnCalculatedField/KnCalculatedField.vue' import calcFieldDescriptor from './WidgetEditorCalcFieldDescriptor.json' -import cryptoRandomString from 'crypto-random-string' import { AxiosResponse } from 'axios' import { createNewWidgetColumn } from '../../helpers/WidgetEditorHelpers' @@ -244,7 +243,7 @@ export default defineComponent({ this.selectedCalcField.formula = calcFieldOutput.formula } else { emitter.emit('addNewCalculatedField', { - id: cryptoRandomString({ length: 16, type: 'base64' }), + id: crypto.randomUUID(), columnName: calcFieldOutput.colName, alias: calcFieldOutput.colName, type: 'java.lang.Double', diff --git a/src/modules/documentExecution/dashboard/widget/WidgetEditor/WidgetEditorSettingsTab/TableWidget/configuration/TableWidgetColumnGroups.vue b/src/modules/documentExecution/dashboard/widget/WidgetEditor/WidgetEditorSettingsTab/TableWidget/configuration/TableWidgetColumnGroups.vue index 7d5a71c9c..02067602d 100644 --- a/src/modules/documentExecution/dashboard/widget/WidgetEditor/WidgetEditorSettingsTab/TableWidget/configuration/TableWidgetColumnGroups.vue +++ b/src/modules/documentExecution/dashboard/widget/WidgetEditor/WidgetEditorSettingsTab/TableWidget/configuration/TableWidgetColumnGroups.vue @@ -22,7 +22,6 @@ import { defineComponent, PropType } from 'vue' import { IWidget, ITableWidgetColumnGroups, IWidgetColumn, ITableWidgetColumnGroup } from '@/modules/documentExecution/dashboard/Dashboard' import { emitter } from '../../../../../DashboardHelpers' import { removeColumnGroupFromModel } from '../../../helpers/tableWidget/TableWidgetFunctions' -import cryptoRandomString from 'crypto-random-string' import descriptor from '../TableWidgetSettingsDescriptor.json' import WidgetEditorColumnsMultiselect from '../../common/WidgetEditorColumnsMultiselect.vue' @@ -110,7 +109,7 @@ export default defineComponent({ if (!this.columnGroupsModel) return if (this.columnGroupsModel.enabled && this.columnGroupsModel.groups.length === 0) { this.columnGroupsModel.groups.push({ - id: cryptoRandomString({ length: 16, type: 'base64' }), + id: crypto.randomUUID(), label: '', columns: [] }) @@ -140,7 +139,7 @@ export default defineComponent({ addColumnGroup() { if (!this.columnGroupsModel) return this.columnGroupsModel.groups.push({ - id: cryptoRandomString({ length: 16, type: 'base64' }), + id: crypto.randomUUID(), label: '', columns: [] }) diff --git a/src/modules/documentExecution/dashboard/widget/WidgetEditor/helpers/WidgetEditorHelpers.ts b/src/modules/documentExecution/dashboard/widget/WidgetEditor/helpers/WidgetEditorHelpers.ts index 7ad84e0db..e3d55e856 100644 --- a/src/modules/documentExecution/dashboard/widget/WidgetEditor/helpers/WidgetEditorHelpers.ts +++ b/src/modules/documentExecution/dashboard/widget/WidgetEditor/helpers/WidgetEditorHelpers.ts @@ -15,7 +15,6 @@ import { formatChartJSForSave } from './chartWidget/chartJS/ChartJSBackendSaveHe import { createNewImageWidgetSettings } from './imageWidget/ImageWidgetFunctions' import { createNewCustomChartSettings } from './customchart/CustomChartFunctions' import { createNewPivotTableWidgetSettings } from './pivotTableWidget/PivotTableFunctions' -import cryptoRandomString from 'crypto-random-string' import deepcopy from 'deepcopy' import useStore from '@/App.store' import { createNewMapWidgetSettings } from './mapWidget/MapWidgetFunctions' @@ -28,7 +27,7 @@ const store = useStore() export function createNewWidget(type: string, dashboardModel: any) { const widget = { - id: cryptoRandomString({ length: 16, type: 'base64' }), + id: crypto.randomUUID(), new: true, type: type, dataset: null, @@ -46,7 +45,7 @@ export function createNewWidget(type: string, dashboardModel: any) { export const createNewWidgetColumn = (eventData: any, widgetType: string) => { const tempColumn = { - id: cryptoRandomString({ length: 16, type: 'base64' }), + id: crypto.randomUUID(), columnName: eventData.name, alias: eventData.alias, type: eventData.type, diff --git a/src/modules/documentExecution/documentDetails/dialogs/olapDesignerDialog/DocumentDetailOlapDesignerDialog.vue b/src/modules/documentExecution/documentDetails/dialogs/olapDesignerDialog/DocumentDetailOlapDesignerDialog.vue index db172b82f..9194a66bf 100644 --- a/src/modules/documentExecution/documentDetails/dialogs/olapDesignerDialog/DocumentDetailOlapDesignerDialog.vue +++ b/src/modules/documentExecution/documentDetails/dialogs/olapDesignerDialog/DocumentDetailOlapDesignerDialog.vue @@ -49,7 +49,6 @@ import DocumentDetailMondrianForm from './DocumentDetailMondrianForm.vue' import Dropdown from 'primevue/dropdown' import ProgressSpinner from 'primevue/progressspinner' import mainStore from '../../../../../App.store' -import cryptoRandomString from 'crypto-random-string' export default defineComponent({ name: 'document-detail-olap-designer-dialog', @@ -88,14 +87,14 @@ export default defineComponent({ } }, async created() { - this.sbiExecutionId = cryptoRandomString({ length: 16, type: 'base64' }) + this.sbiExecutionId = crypto.randomUUID() this.loadDocument() }, methods: { ...mapActions(mainStore, ['setLoading']), async loadDocument() { this.document = this.selectedDocument ? { ...this.selectedDocument } : ({} as iDocument) - this.sbiExecutionId = cryptoRandomString({ length: 16, type: 'base64' }) + this.sbiExecutionId = crypto.randomUUID() this.initialize() this.loadMondrianSchemaResources() diff --git a/src/modules/documentExecution/documentDetails/tabs/history/DocumentDetailsHistory.vue b/src/modules/documentExecution/documentDetails/tabs/history/DocumentDetailsHistory.vue index 1abcfaa05..89d14c70c 100644 --- a/src/modules/documentExecution/documentDetails/tabs/history/DocumentDetailsHistory.vue +++ b/src/modules/documentExecution/documentDetails/tabs/history/DocumentDetailsHistory.vue @@ -64,8 +64,6 @@ import KnInputFile from '@/components/UI/KnInputFile.vue' import InlineMessage from 'primevue/inlinemessage' import mainStore from '../../../../../App.store' -import cryptoRandomString from 'crypto-random-string' - export default defineComponent({ name: 'document-drivers', components: { KnListBox, KnInputFile, knMonaco, InlineMessage }, @@ -275,7 +273,7 @@ export default defineComponent({ this.$emit('openDesignerDialog') } else { const activeTemplate = this.findActiveTemplate() - const sbiExecutionId = cryptoRandomString({ length: 16, type: 'base64' }) + const sbiExecutionId = crypto.randomUUID() await startOlap(this.$http, this.user, sbiExecutionId, this.selectedDocument, activeTemplate, this.$router) } }, diff --git a/src/modules/documentExecution/documentDetails/tabs/informations/DocumentDetailsInformations.vue b/src/modules/documentExecution/documentDetails/tabs/informations/DocumentDetailsInformations.vue index 5b781a159..d6b77ddb5 100644 --- a/src/modules/documentExecution/documentDetails/tabs/informations/DocumentDetailsInformations.vue +++ b/src/modules/documentExecution/documentDetails/tabs/informations/DocumentDetailsInformations.vue @@ -295,8 +295,6 @@ import KnInputFile from '@/components/UI/KnInputFile.vue' import DocumentDetailsTree from './DocumentDetailsTree.vue' import mainStore from '../../../../../App.store' -import cryptoRandomString from 'crypto-random-string' - export default defineComponent({ name: 'document-details-informations', components: { DatasetDialog, Card, Textarea, Dropdown, InputSwitch, KnValidationMessages, KnInputFile, DocumentDetailsTree }, @@ -500,7 +498,7 @@ export default defineComponent({ this.$emit('openDesignerDialog') } else { const activeTemplate = this.findActiveTemplate() - const sbiExecutionId = cryptoRandomString({ length: 16, type: 'base64' }) + const sbiExecutionId = crypto.randomUUID() await startOlap(this.$http, this.user, sbiExecutionId, this.document, activeTemplate, this.$router) } }, diff --git a/src/modules/documentExecution/main/DocumentExecution.vue b/src/modules/documentExecution/main/DocumentExecution.vue index 891585a27..4a8738285 100644 --- a/src/modules/documentExecution/main/DocumentExecution.vue +++ b/src/modules/documentExecution/main/DocumentExecution.vue @@ -413,7 +413,7 @@ export default defineComponent({ this.parameterSidebarVisible = false window.removeEventListener('message', this.iframeEventsListener) }, - async created() { + async mounted() { this.$q.loading.show() this.setEventListeners() window.addEventListener('message', this.iframeEventsListener) diff --git a/src/modules/documentExecution/olap/filterDialog/OlapFilterTree.vue b/src/modules/documentExecution/olap/filterDialog/OlapFilterTree.vue index e3a746f9d..294a00e72 100644 --- a/src/modules/documentExecution/olap/filterDialog/OlapFilterTree.vue +++ b/src/modules/documentExecution/olap/filterDialog/OlapFilterTree.vue @@ -32,8 +32,6 @@ import Message from 'primevue/message' import olapFilterDialogDescriptor from './OlapFilterDialogDescriptor.json' import Tree from 'primevue/tree' -import cryptoRandomString from 'crypto-random-string' - export default defineComponent({ name: 'olap-filter-tree', components: { Checkbox, Message, Tree }, @@ -125,7 +123,7 @@ export default defineComponent({ }, createNode(el: iFilterNode) { const tempNode = { - key: cryptoRandomString({ length: 16, type: 'base64' }) as string, + key: crypto.randomUUID() as string, id: '' + el.id, label: el.name, children: [] as iNode[], diff --git a/src/modules/documentExecution/registry/Registry.vue b/src/modules/documentExecution/registry/Registry.vue index 740c35c5b..fdf02226f 100644 --- a/src/modules/documentExecution/registry/Registry.vue +++ b/src/modules/documentExecution/registry/Registry.vue @@ -66,7 +66,6 @@ import RegistryFiltersCard from './RegistryFiltersCard.vue' import { formatDate } from '@/helpers/commons/localeHelper' import { mapActions } from 'pinia' import store from '../../../App.store' -import cryptoRandomString from 'crypto-random-string' import { emitter } from './tables/RegistryDatatableHelper' export default defineComponent({ @@ -206,7 +205,7 @@ export default defineComponent({ Object.keys(this.registry.rows[i]).forEach((key: string) => { tempRow[this.columnMap[key]] = this.registry.rows[i][key] }) - tempRow.uniqueId = cryptoRandomString({ length: 16, type: 'base64' }) + tempRow.uniqueId = crypto.randomUUID() this.rows.push(tempRow) } diff --git a/src/modules/documentExecution/registry/tables/RegistryDatatable.vue b/src/modules/documentExecution/registry/tables/RegistryDatatable.vue index 87a599bdc..ffc2e3f35 100644 --- a/src/modules/documentExecution/registry/tables/RegistryDatatable.vue +++ b/src/modules/documentExecution/registry/tables/RegistryDatatable.vue @@ -31,7 +31,6 @@ import CellEditor from './registryCellRenderers/RegistryCellEditor.vue' import HeaderRenderer from './registryCellRenderers/RegistryHeaderRenderer.vue' import TooltipRenderer from './registryCellRenderers/RegistryTooltipRenderer.vue' import store from '../../../../App.store' -import cryptoRandomString from 'crypto-random-string' export default defineComponent({ name: 'registry-datatable', components: { @@ -384,7 +383,7 @@ export default defineComponent({ return formatDateWithLocale(date, format, keepNull) }, addNewRow() { - const newRow = { uniqueId: cryptoRandomString({ length: 16, type: 'base64' }), id: this.rows.length + 1, isNew: true } + const newRow = { uniqueId: crypto.randomUUID(), id: this.rows.length + 1, isNew: true } this.columns.forEach((el: any) => { if (el.isVisible && el.field && el.field !== 'id') { if (el.defaultValue) newRow[el.field] = el.defaultValue @@ -400,7 +399,7 @@ export default defineComponent({ cloneRows() { this.selectedRows.forEach((row) => { const tempRow = { ...row } - tempRow.uniqueId = cryptoRandomString({ length: 16, type: 'base64' }) + tempRow.uniqueId = crypto.randomUUID() tempRow.isNew = true delete tempRow.id if (this.keyColumnName) tempRow[this.keyColumnName] = '' diff --git a/src/modules/managers/dashboardThemeManagement/dashboardThemeManagementExamples/DashboardThemeManagementExamples.vue b/src/modules/managers/dashboardThemeManagement/dashboardThemeManagementExamples/DashboardThemeManagementExamples.vue index f7e5b00ac..749ae5bbb 100644 --- a/src/modules/managers/dashboardThemeManagement/dashboardThemeManagementExamples/DashboardThemeManagementExamples.vue +++ b/src/modules/managers/dashboardThemeManagement/dashboardThemeManagementExamples/DashboardThemeManagementExamples.vue @@ -53,7 +53,6 @@ import discoveryWidgetMock from './mocks/DiscoveryWidgetMock.json' import selectorWidgetMock from './mocks/SelectorWidgetMock.json' import WidgetRenderer from '@/modules/documentExecution/dashboard/widget/WidgetRenderer.vue' import deepcopy from 'deepcopy' -import cryptoRandomString from 'crypto-random-string' import appStore from '@/App.store' import ActiveSelectionsExample from './examples/ActiveSelectionsExample.vue' import WidgetPictureExamples from './examples/WidgetPictureExamples.vue' @@ -72,7 +71,7 @@ export default defineComponent({ discoveryModel: {} as any, selectorModel: {} as any, selectedTheme: {} as IDashboardTheme, - chartID: cryptoRandomString({ length: 16, type: 'base64' }), + chartID: crypto.randomUUID(), chartJSData: { labels: [], datasets: [] } as IChartJSData, chartJSOptions: {} as IChartJSOptions } diff --git a/src/modules/managers/hierarchyManagement/HierarchyManagementMasterTab/HierarchyManagementHierarchiesCard/HierarchyManagementHierarchiesTree/HierarchyManagementHierarchiesTree.vue b/src/modules/managers/hierarchyManagement/HierarchyManagementMasterTab/HierarchyManagementHierarchiesCard/HierarchyManagementHierarchiesTree/HierarchyManagementHierarchiesTree.vue index 809095183..3dff230c4 100644 --- a/src/modules/managers/hierarchyManagement/HierarchyManagementMasterTab/HierarchyManagementHierarchiesCard/HierarchyManagementHierarchiesTree/HierarchyManagementHierarchiesTree.vue +++ b/src/modules/managers/hierarchyManagement/HierarchyManagementMasterTab/HierarchyManagementHierarchiesCard/HierarchyManagementHierarchiesTree/HierarchyManagementHierarchiesTree.vue @@ -52,7 +52,6 @@ import HierarchyManagementHierarchiesTargetDialog from './HierarchyManagementHie import Tree from 'primevue/tree' import deepEqual from 'deep-equal' import deepcopy from 'deepcopy' -import cryptoRandomString from 'crypto-random-string' import mainStore from '../../../../../../App.store' export default defineComponent({ @@ -120,7 +119,7 @@ export default defineComponent({ formatNodes(tree: any, parent: any) { return tree.map((node: any) => { node = { - key: cryptoRandomString({ length: 16, type: 'base64' }), + key: crypto.randomUUID(), id: node.id, label: node.name, children: node.children ?? [], @@ -232,7 +231,7 @@ export default defineComponent({ if (tempNode) { tempNode.data = node - tempNode.key = cryptoRandomString({ length: 16, type: 'base64' }) + tempNode.key = crypto.randomUUID() tempNode.label = node.name } this.$emit('treeUpdated', this.nodes) @@ -242,7 +241,7 @@ export default defineComponent({ const tempNode = this.findNodeInTree(node.parent.key) as any node.LEVEL = tempNode.data.LEVEL + 1 - if (tempNode) tempNode.children.push({ key: cryptoRandomString({ length: 16, type: 'base64' }), id: node.name, label: node.name, children: node.children, data: node, style: this.hierarchyManagementHierarchiesTreeDescriptor.node.style, leaf: node.leaf, parent: tempNode }) + if (tempNode) tempNode.children.push({ key: crypto.randomUUID(), id: node.name, label: node.name, children: node.children, data: node, style: this.hierarchyManagementHierarchiesTreeDescriptor.node.style, leaf: node.leaf, parent: tempNode }) this.$emit('treeUpdated', this.nodes) }, copyNode(node: any) { @@ -390,7 +389,7 @@ export default defineComponent({ this.relationsMasterTree.push(newElement) } - parentNode.children.push({ key: cryptoRandomString({ length: 16, type: 'base64' }), id: node.name, label: node.name, children: [], data: node, style: this.hierarchyManagementHierarchiesTreeDescriptor.node.style, leaf: true, parent: parentNode }) + parentNode.children.push({ key: crypto.randomUUID(), id: node.name, label: node.name, children: [], data: node, style: this.hierarchyManagementHierarchiesTreeDescriptor.node.style, leaf: true, parent: parentNode }) this.nodeToMove = null this.targetForMove = null this.$emit('treeUpdated', this.nodes) @@ -447,7 +446,7 @@ export default defineComponent({ node.parent = parent const parentToAdd = this.findNodeInTree(parent.key) - parentToAdd.children ? parentToAdd.children.push({ ...node, parentKey: parentToAdd.key, key: cryptoRandomString({ length: 4, type: 'base64' }) }) : (parentToAdd.children = [{ ...node, parentKey: parentToAdd.key, key: cryptoRandomString({ length: 16, type: 'base64' }) }]) + parentToAdd.children ? parentToAdd.children.push({ ...node, parentKey: parentToAdd.key, key: crypto.randomUUID() }) : (parentToAdd.children = [{ ...node, parentKey: parentToAdd.key, key: crypto.randomUUID() }]) this.$emit('treeUpdated', this.nodes) } } diff --git a/src/modules/managers/scorecards/ScorecardsTable/ScorecardsPerspectiveItem.vue b/src/modules/managers/scorecards/ScorecardsTable/ScorecardsPerspectiveItem.vue index dec872c23..798f875c7 100644 --- a/src/modules/managers/scorecards/ScorecardsTable/ScorecardsPerspectiveItem.vue +++ b/src/modules/managers/scorecards/ScorecardsTable/ScorecardsPerspectiveItem.vue @@ -41,7 +41,6 @@ import SelectButton from 'primevue/selectbutton' import descriptor from './ScorecardsTableDescriptor.json' import ScorecardsTargetItem from './ScorecardsTargetItem.vue' import ScorecardsTableHint from './ScorecardsTableHint.vue' -import cryptoRandomString from 'crypto-random-string' export default defineComponent({ name: 'scorecards-perspective-item', @@ -73,7 +72,7 @@ export default defineComponent({ }, addTarget() { if (this.perspective) { - this.perspective.targets.push({ id: cryptoRandomString({ length: 16, type: 'base64' }), name: 'New Target', status: 'GRAY', criterion: getDefaultCriterion(this.criterias), options: { criterionPriority: [] }, kpis: [], groupedKpis: [], new: true }) + this.perspective.targets.push({ id: crypto.randomUUID(), name: 'New Target', status: 'GRAY', criterion: getDefaultCriterion(this.criterias), options: { criterionPriority: [] }, kpis: [], groupedKpis: [], new: true }) this.$emit('touched') this.expanded = true this.perspective.updated = true diff --git a/src/modules/managers/scorecards/ScorecardsTable/ScorecardsTable.vue b/src/modules/managers/scorecards/ScorecardsTable/ScorecardsTable.vue index 5f04145d8..d4fc9bca5 100644 --- a/src/modules/managers/scorecards/ScorecardsTable/ScorecardsTable.vue +++ b/src/modules/managers/scorecards/ScorecardsTable/ScorecardsTable.vue @@ -22,7 +22,6 @@ import { iScorecard, iScorecardCriterion, iPerspective, iKpi } from '../Scorecar import { getDefaultCriterion } from '../ScorecardsHelpers' import ScorecardsPerspectiveItem from './ScorecardsPerspectiveItem.vue' import ScorecardsTableHint from './ScorecardsTableHint.vue' -import cryptoRandomString from 'crypto-random-string' export default defineComponent({ name: 'scorecards-table', @@ -48,7 +47,7 @@ export default defineComponent({ }, addPerspective() { if (this.scorecard) { - this.scorecard.perspectives.push({ id: cryptoRandomString({ length: 16, type: 'base64' }), name: 'New Perspective', status: 'GRAY', criterion: getDefaultCriterion(this.criterias), options: { criterionPriority: [] }, targets: [], groupedKpis: [], new: true }) + this.scorecard.perspectives.push({ id: crypto.randomUUID(), name: 'New Perspective', status: 'GRAY', criterion: getDefaultCriterion(this.criterias), options: { criterionPriority: [] }, targets: [], groupedKpis: [], new: true }) this.$emit('touched') } }, diff --git a/src/modules/qbe/QBE.vue b/src/modules/qbe/QBE.vue index b479433a9..da13ec3e1 100644 --- a/src/modules/qbe/QBE.vue +++ b/src/modules/qbe/QBE.vue @@ -203,7 +203,6 @@ import calcFieldDescriptor from './QBECalcFieldDescriptor.json' import KnCalculatedField from '@/components/functionalities/KnCalculatedField/KnCalculatedField.vue' import Dropdown from 'primevue/dropdown' import mainStore from '../../App.store' -import cryptoRandomString from 'crypto-random-string' import deepcopy from 'deepcopy' import { getCorrectRolesForExecution } from '@/helpers/commons/roleHelper' @@ -311,7 +310,7 @@ export default defineComponent({ } }, async created() { - this.uniqueID = cryptoRandomString({ length: 16, type: 'base64' }) + this.uniqueID = crypto.randomUUID() this.user = (this.store.$state as any).user this.userRole = this.user.sessionRole && this.user.sessionRole !== this.$t('role.defaultRolePlaceholder') ? this.user.sessionRole : null @@ -465,7 +464,7 @@ export default defineComponent({ }, generateFieldsAndMetadataId() { this.selectedQuery.fields.forEach((field) => { - field.uniqueID = cryptoRandomString({ length: 4, type: 'base64' }) + field.uniqueID = crypto.randomUUID() this.qbeMetadata.find((metadata) => { field.alias === metadata.column ? (metadata.uniqueID = field.uniqueID) : '' }) @@ -746,7 +745,7 @@ export default defineComponent({ this.updateExistingCalculatedField(this.selectedCalcField) } else { calculatedField = buildCalculatedField(this.selectedCalcField, this.selectedQuery.fields) - calculatedField.uniqueID = cryptoRandomString({ length: 4, type: 'base64' }) + calculatedField.uniqueID = crypto.randomUUID() this.selectedQuery.fields.push(calculatedField) this.addEntityToMainQuery(calculatedField, true) this.addCalculatedFieldMetadata(calculatedField) diff --git a/src/modules/qbe/qbeDialogs/qbeAdvancedFilterDialog/QBEFilter.vue b/src/modules/qbe/qbeDialogs/qbeAdvancedFilterDialog/QBEFilter.vue index eca91763a..7f06d6f44 100644 --- a/src/modules/qbe/qbeDialogs/qbeAdvancedFilterDialog/QBEFilter.vue +++ b/src/modules/qbe/qbeDialogs/qbeAdvancedFilterDialog/QBEFilter.vue @@ -18,9 +18,7 @@ import { addOrRemove, contains, isSelectable, isMovable } from './selectedOperan import { swap, move } from './advancedFilterService' import { getFilterTree } from './treeService' import QBEFilterDetail from './QBEFilterDetail.vue' - -import cryptoRandomString from 'crypto-random-string'; -import deepEqual from 'deep-equal' +import deepEqual from 'deep-equal' export default defineComponent({ name: 'qbe-filter', @@ -33,7 +31,7 @@ export default defineComponent({ selected: false, dropzoneLeftVisible: false, dropzoneRightVisible: false, - filterId: cryptoRandomString({length: 16, type: 'base64'}) + filterId: crypto.randomUUID() } }, watch: { diff --git a/src/modules/qbe/qbeDialogs/qbeAdvancedFilterDialog/QBEGroup.vue b/src/modules/qbe/qbeDialogs/qbeAdvancedFilterDialog/QBEGroup.vue index 89f681a5e..bdf670260 100644 --- a/src/modules/qbe/qbeDialogs/qbeAdvancedFilterDialog/QBEGroup.vue +++ b/src/modules/qbe/qbeDialogs/qbeAdvancedFilterDialog/QBEGroup.vue @@ -17,9 +17,7 @@ import { defineComponent } from 'vue' import { addOrRemove, contains, isSelectable, isMovable } from './selectedOperandService' import { swap, move } from './advancedFilterService' import { getFilterTree } from './treeService' - -import cryptoRandomString from 'crypto-random-string'; -import deepEqual from 'deep-equal' +import deepEqual from 'deep-equal' export default defineComponent({ name: 'qbe-group', @@ -32,7 +30,7 @@ export default defineComponent({ selected: false, dropzoneTopVisible: false, dropzoneBottomVisible: false, - groupId: cryptoRandomString({length: 16, type: 'base64'}) + groupId: crypto.randomUUID() } }, watch: { diff --git a/src/modules/qbe/qbeDialogs/qbeFilterDialog/QBEFilterDialog.vue b/src/modules/qbe/qbeDialogs/qbeFilterDialog/QBEFilterDialog.vue index 106826cfa..085311ea2 100644 --- a/src/modules/qbe/qbeDialogs/qbeFilterDialog/QBEFilterDialog.vue +++ b/src/modules/qbe/qbeDialogs/qbeFilterDialog/QBEFilterDialog.vue @@ -45,7 +45,6 @@ import QBEFilterDialogDescriptor from './QBEFilterDialogDescriptor.json' import QBETemporalFilterDialog from './QBETemporalFilterDialog.vue' import QBEFilterParameters from './QBEFilterParameters.vue' import mainStore from '../../../../App.store' -import cryptoRandomString from 'crypto-random-string' import deepcopy from 'deepcopy' import UserFunctionalitiesConstants from '@/UserFunctionalitiesConstants.json' import moment from 'moment' @@ -101,7 +100,7 @@ export default defineComponent({ this.filters.push({ ...filter }) } }) - this.nextFilterIndex = cryptoRandomString({ length: 16, type: 'base64' }) + this.nextFilterIndex = crypto.randomUUID() if (this.filterDialogData.field.type === 'inline.calculated.field') { this.setCalculatedFieldLongDescription(this.filterDialogData.field, this.filterDialogData.field.originalId as string) } else if (this.filterDialogData.field.attributes?.type === 'inLineCalculatedField') { @@ -160,7 +159,7 @@ export default defineComponent({ } if (field) { this.filters.push(filter) - this.nextFilterIndex = cryptoRandomString({ length: 16, type: 'base64' }) + this.nextFilterIndex = crypto.randomUUID() } this.push(filter) }, @@ -239,7 +238,7 @@ export default defineComponent({ } as any this.filters.push(tempFilter) this.push(tempFilter) - this.nextFilterIndex = cryptoRandomString({ length: 16, type: 'base64' }) + this.nextFilterIndex = crypto.randomUUID() } } this.temporalFilterDialogVisible = false @@ -252,7 +251,7 @@ export default defineComponent({ }, closeDialog() { this.$emit('close') - this.nextFilterIndex = cryptoRandomString({ length: 16, type: 'base64' }) + this.nextFilterIndex = crypto.randomUUID() this.updatedParameters = [] this.parameterTableVisible = false this.removeFiltersOnCancel() diff --git a/src/modules/qbe/qbeDialogs/qbeHavingDialog/QBEHavingDialog.vue b/src/modules/qbe/qbeDialogs/qbeHavingDialog/QBEHavingDialog.vue index 57fd270e7..92d200373 100644 --- a/src/modules/qbe/qbeDialogs/qbeHavingDialog/QBEHavingDialog.vue +++ b/src/modules/qbe/qbeDialogs/qbeHavingDialog/QBEHavingDialog.vue @@ -39,8 +39,6 @@ import Message from 'primevue/message' import QBEHavingDialogDescriptor from './QBEHavingDialogDescriptor.json' import QBEHavingCard from './QBEHavingCard.vue' -import cryptoRandomString from 'crypto-random-string'; - export default defineComponent({ name: 'qbe-having-dialog', components: { Dialog, KnFabButton, Message, QBEHavingCard }, @@ -71,7 +69,7 @@ export default defineComponent({ this.havings.push({ ...having }) } }) - this.nextHavingIndex = cryptoRandomString({length: 16, type: 'base64'}) + this.nextHavingIndex = crypto.randomUUID() }, addNewHaving() { const field = this.havingDialogData?.field @@ -102,7 +100,7 @@ export default defineComponent({ color: '', entity: field.entity }) - this.nextHavingIndex = cryptoRandomString({length: 16, type: 'base64'}) + this.nextHavingIndex = crypto.randomUUID() } }, removeHaving(having: iFilter) { diff --git a/src/modules/workspace/Workspace.vue b/src/modules/workspace/Workspace.vue index 1f6512e80..e0c0384b5 100644 --- a/src/modules/workspace/Workspace.vue +++ b/src/modules/workspace/Workspace.vue @@ -125,7 +125,6 @@ import Dialog from 'primevue/dialog' import KnParameterSidebar from '@/components/UI/KnParameterSidebar/KnParameterSidebar.vue' import moment from 'moment' import { mapState } from 'pinia' -import cryptoRandomString from 'crypto-random-string' import mainStore from '../../App.store' import UserFunctionalitiesConstants from '@/UserFunctionalitiesConstants.json' import { IDashboardView } from '../documentExecution/dashboard/Dashboard' @@ -177,7 +176,7 @@ export default defineComponent({ } }, created() { - this.uniqueID = cryptoRandomString({ length: 16, type: 'base64' }) + this.uniqueID = crypto.randomUUID() }, mounted() { this.createMenuItems() diff --git a/vite.config.js b/vite.config.js index 1aca0ef78..2f27fb88a 100644 --- a/vite.config.js +++ b/vite.config.js @@ -1,7 +1,6 @@ import { defineConfig, loadEnv } from 'vite' const { resolve } = require('path') import vue from '@vitejs/plugin-vue' -import builtins from 'rollup-plugin-node-builtins' import forwardToTrailingSlashPlugin from './forward-to-trailing-slash-plugin.js' import { VitePWA } from 'vite-plugin-pwa' import { quasar, transformAssetUrls } from '@quasar/vite-plugin' @@ -9,8 +8,6 @@ import loadVersion from 'vite-plugin-package-version' const path = require('path') -const builtinsPlugin = { ...builtins({ crypto: true }), name: 'rollup-plugin-node-builtins' } - const build = { rollupOptions: { input: { @@ -27,7 +24,6 @@ export default defineConfig((command, mode) => { vue({ template: { transformAssetUrls } }), - builtinsPlugin, forwardToTrailingSlashPlugin(Object.keys(build.rollupOptions.input)), VitePWA({ registerType: 'autoUpdate',