diff --git a/package-lock.json b/package-lock.json index d0dee325c..8971d9b29 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "trilium", - "version": "0.41.4-beta", + "version": "0.41.5", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -198,23 +198,23 @@ } }, "@jimp/bmp": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.10.2.tgz", - "integrity": "sha512-vsLwkfj6rcxtSxEdpQaxDagrgpOB0ErHTS/vVRQKDIhrzZkW1ddQa9W1hV8qssSY3K7lz1QNYFQdeRw/qoCiBA==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.10.3.tgz", + "integrity": "sha512-keMOc5woiDmONXsB/6aXLR4Z5Q+v8lFq3EY2rcj2FmstbDMhRuGbmcBxlEgOqfRjwvtf/wOtJ3Of37oAWtVfLg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "bmp-js": "^0.1.0", "core-js": "^3.4.1" } }, "@jimp/core": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.10.2.tgz", - "integrity": "sha512-oyJLzWYcT6u0joD2YJAAVqCc1Ng9wXGPdAijWy3xxQT/roALmWLGL5ev6fQ/gugPVAD+xKUQpM0OxJepRYUl0Q==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.10.3.tgz", + "integrity": "sha512-Gd5IpL3U2bFIO57Fh/OA3HCpWm4uW/pU01E75rI03BXfTdz3T+J7TwvyG1XaqsQ7/DSlS99GXtLQPlfFIe28UA==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "any-base": "^1.1.0", "buffer": "^5.2.0", "core-js": "^3.4.1", @@ -235,295 +235,295 @@ } }, "@jimp/custom": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.10.2.tgz", - "integrity": "sha512-+ErCKYrIC0m6nDxRwIq0ETdltL4+C8RKrv3bGW/bI94QSfIXCdP6Vsz03VMae1J9+IPjfhn1LJ5rQ3zWkZEfdA==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.10.3.tgz", + "integrity": "sha512-nZmSI+jwTi5IRyNLbKSXQovoeqsw+D0Jn0SxW08wYQvdkiWA8bTlDQFgQ7HVwCAKBm8oKkDB/ZEo9qvHJ+1gAQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/core": "^0.10.2", + "@jimp/core": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/gif": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.10.2.tgz", - "integrity": "sha512-Evkwr7Vlt5zMqNccsUDetHpKtvhFz07yg8BRZl3kXzkeKeaK/PbuAV7yjXn1DxVVU+1uSS765MdbsMVe7J404A==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.10.3.tgz", + "integrity": "sha512-vjlRodSfz1CrUvvrnUuD/DsLK1GHB/yDZXHthVdZu23zYJIW7/WrIiD1IgQ5wOMV7NocfrvPn2iqUfBP81/WWA==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1", "omggif": "^1.0.9" } }, "@jimp/jpeg": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.10.2.tgz", - "integrity": "sha512-+aQUGBZI6OueB0K6gqLCwehV5skZceVyZjjmPmuXaE7ZvdhFMP2QDh45vcT8LzlPGUcOwpIWxsGHrB6Q6RcFXQ==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.10.3.tgz", + "integrity": "sha512-AAANwgUZOt6f6P7LZxY9lyJ9xclqutYJlsxt3JbriXUGJgrrFAIkcKcqv1nObgmQASSAQKYaMV9KdHjMlWFKlQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1", "jpeg-js": "^0.3.4" } }, "@jimp/plugin-blit": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.10.2.tgz", - "integrity": "sha512-PdqKZLkwnOOnrr+M4X4K/GrQ26qeCHut7AoFbKW+BsHooHvyadOWwVTBUBfK8GyDp/NApEC9SXbT0UNk8XqabA==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.10.3.tgz", + "integrity": "sha512-5zlKlCfx4JWw9qUVC7GI4DzXyxDWyFvgZLaoGFoT00mlXlN75SarlDwc9iZ/2e2kp4bJWxz3cGgG4G/WXrbg3Q==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-blur": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.10.2.tgz", - "integrity": "sha512-9KeLyUY3s5N0cPZN4uMg0qIiSDvIPhXEnpYnXdN2V53dM25sKrBCMH578/W+n9hAHVpsbJHS+VFknO1JV47QVw==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.10.3.tgz", + "integrity": "sha512-cTOK3rjh1Yjh23jSfA6EHCHjsPJDEGLC8K2y9gM7dnTUK1y9NNmkFS23uHpyjgsWFIoH9oRh2SpEs3INjCpZhQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-circle": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.10.2.tgz", - "integrity": "sha512-wOJ3qKa916YZMEwA9qwIn8yROYonkscJ3bqaaSsyf5CadiY8VCijKxA3BVwr7PKjj89yf5RCS4mcy+CO8+nmkw==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.10.3.tgz", + "integrity": "sha512-51GAPIVelqAcfuUpaM5JWJ0iWl4vEjNXB7p4P7SX5udugK5bxXUjO6KA2qgWmdpHuCKtoNgkzWU9fNSuYp7tCA==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-color": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.10.2.tgz", - "integrity": "sha512-c6cw41Hn3tLYQIRg3hxXrefKcOfW4jRN9b9DGH16mcZrRtw5jMzq3NfZ+RLQM47SyAE7N2BeUz0Ah3pmCArI0g==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.10.3.tgz", + "integrity": "sha512-RgeHUElmlTH7vpI4WyQrz6u59spiKfVQbsG/XUzfWGamFSixa24ZDwX/yV/Ts+eNaz7pZeIuv533qmKPvw2ujg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1", "tinycolor2": "^1.4.1" } }, "@jimp/plugin-contain": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.10.2.tgz", - "integrity": "sha512-oDDe+XdpSwx2OQOSb6ar4O31+4d02Qz4R+1BeucuO7FzOrbDggnCWavSg6RevyOJPDKGkmv8Jj3V6S0jUwgVgw==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.10.3.tgz", + "integrity": "sha512-bYJKW9dqzcB0Ihc6u7jSyKa3juStzbLs2LFr6fu8TzA2WkMS/R8h+ddkiO36+F9ILTWHP0CIA3HFe5OdOGcigw==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-cover": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.10.2.tgz", - "integrity": "sha512-cnEqx8kHqBvQA+axKA8qRshwAIIfyxAwjdeRB/LZ9bWroh8XvbifW5buBgITDG5KklDkBhivmDEtPY90r3mMFQ==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.10.3.tgz", + "integrity": "sha512-pOxu0cM0BRPzdV468n4dMocJXoMbTnARDY/EpC3ZW15SpMuc/dr1KhWQHgoQX5kVW1Wt8zgqREAJJCQ5KuPKDA==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-crop": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.10.2.tgz", - "integrity": "sha512-6uTb3LMP0kiMqYOAHyU/q/pkScw6aRWkTSxhjgcsewQS3zPHWTSGgP8u6CNAFnlDmVYVIz/jdKlFnnOdf0ZwrA==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.10.3.tgz", + "integrity": "sha512-nB7HgOjjl9PgdHr076xZ3Sr6qHYzeBYBs9qvs3tfEEUeYMNnvzgCCGtUl6eMakazZFCMk3mhKmcB9zQuHFOvkg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-displace": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.10.2.tgz", - "integrity": "sha512-AGQDlyeFJz+zszYUkIzi5QyLLPsJzRJNIplU0S0HBxmXf5tZEeiiEtmsaC4j9VoAVD9Jwwn39+cfwV88Ij7WGg==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.10.3.tgz", + "integrity": "sha512-8t3fVKCH5IVqI4lewe4lFFjpxxr69SQCz5/tlpDLQZsrNScNJivHdQ09zljTrVTCSgeCqQJIKgH2Q7Sk/pAZ0w==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-dither": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.10.2.tgz", - "integrity": "sha512-TEu7n44OS/+F1eWqKumsKYI+i2cPxzRTmxJhxrsUGyDD2aNi7tCIfKILXDqO6Ii0tYgSqwakG2+Eu0Jqg7J/VQ==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.10.3.tgz", + "integrity": "sha512-JCX/oNSnEg1kGQ8ffZ66bEgQOLCY3Rn+lrd6v1jjLy/mn9YVZTMsxLtGCXpiCDC2wG/KTmi4862ysmP9do9dAQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-fisheye": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.10.2.tgz", - "integrity": "sha512-kxtfkcnnXitqpTxGaZg/q6bzMBRWCFEWs7maMIgjFkGvXsMegQ90EdKF1Ku76/gCTIGxyfbped8QD/+iACgzFw==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.10.3.tgz", + "integrity": "sha512-RRZb1wqe+xdocGcFtj2xHU7sF7xmEZmIa6BmrfSchjyA2b32TGPWKnP3qyj7p6LWEsXn+19hRYbjfyzyebPElQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-flip": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.10.2.tgz", - "integrity": "sha512-JW/aAKPGYOEGrqldpUBFxHUZ21pwhtxeRiwXEyMu/8N23PVuNBAePKboPMxRvkSLvAOn122xKEyCQvF10v/TOQ==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.10.3.tgz", + "integrity": "sha512-0epbi8XEzp0wmSjoW9IB0iMu0yNF17aZOxLdURCN3Zr+8nWPs5VNIMqSVa1Y62GSyiMDpVpKF/ITiXre+EqrPg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-gaussian": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.10.2.tgz", - "integrity": "sha512-uP1up3fCIBzGexqs/+HMGBoZckEEcic09RNRj5Lq6EUVY8vFdKeBk3F+tAA+fstpA6yHhjPk1w7FZKX/tkECNw==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.10.3.tgz", + "integrity": "sha512-25eHlFbHUDnMMGpgRBBeQ2AMI4wsqCg46sue0KklI+c2BaZ+dGXmJA5uT8RTOrt64/K9Wz5E+2n7eBnny4dfpQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-invert": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.10.2.tgz", - "integrity": "sha512-zm1NB+AS0fTKW0gmFs1Tjgkj892gtnDicyxzmYeCLoQzPTr/1iPVf2EGidCS88+aw04sA5DOu0UX7637ib7TkA==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.10.3.tgz", + "integrity": "sha512-effYSApWY/FbtlzqsKXlTLkgloKUiHBKjkQnqh5RL4oQxh/33j6aX+HFdDyQKtsXb8CMd4xd7wyiD2YYabTa0g==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-mask": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.10.2.tgz", - "integrity": "sha512-4pVBAU6d/7EhfYs8sYuBGB3JMIuvrdiXbt6ESNs4CyDSbiDT4z1/f2sjWvNyLYlJ7cQJ+we50qqvq8vvNnb5lA==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.10.3.tgz", + "integrity": "sha512-twrg8q8TIhM9Z6Jcu9/5f+OCAPaECb0eKrrbbIajJqJ3bCUlj5zbfgIhiQIzjPJ6KjpnFPSqHQfHkU1Vvk/nVw==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-normalize": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.10.2.tgz", - "integrity": "sha512-B2HXf6uaH8EAyZA5KvVYJOfv4AZpferIuDhOQSqDLKAEBBfEViwHk/Rn+nCUzGsAzQ/yiVtKAil68YcybaI6oQ==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.10.3.tgz", + "integrity": "sha512-xkb5eZI/mMlbwKkDN79+1/t/+DBo8bBXZUMsT4gkFgMRKNRZ6NQPxlv1d3QpRzlocsl6UMxrHnhgnXdLAcgrXw==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-print": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.10.2.tgz", - "integrity": "sha512-YXKBG5yNOr/DX958Omk1GzTrprRJ3YXWhJ6tzCbboxqXK6pErLDxFsa1mlngDGb/a43oGs63Myj7CuGf98/vaw==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.10.3.tgz", + "integrity": "sha512-wjRiI6yjXsAgMe6kVjizP+RgleUCLkH256dskjoNvJzmzbEfO7xQw9g6M02VET+emnbY0CO83IkrGm2q43VRyg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1", "load-bmfont": "^1.4.0" } }, "@jimp/plugin-resize": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.10.2.tgz", - "integrity": "sha512-F+pXSU5sbACqqArZfVeYYXrq7qMwZcMs97Z3V70qsLtvDSVyNFG5iYpJhFKJOj05O7a2G7FQ1Nq2h0UKJdlLJg==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.10.3.tgz", + "integrity": "sha512-rf8YmEB1d7Sg+g4LpqF0Mp+dfXfb6JFJkwlAIWPUOR7lGsPWALavEwTW91c0etEdnp0+JB9AFpy6zqq7Lwkq6w==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-rotate": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.10.2.tgz", - "integrity": "sha512-bQ0RQuXS768G9l1HemULJ7puuevU5N3TpE1QV5NdzbKwjHidFAAavp8XFXOhd2Mj/Xh/3iFlMMEB7NG/McYoOA==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.10.3.tgz", + "integrity": "sha512-YXLlRjm18fkW9MOHUaVAxWjvgZM851ofOipytz5FyKp4KZWDLk+dZK1JNmVmK7MyVmAzZ5jsgSLhIgj+GgN0Eg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-scale": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.10.2.tgz", - "integrity": "sha512-47GRG3joOGDBLHYyLR0tc3hEz/H8tgPcLZaNEAaIdyL+ckAWQIgnoytbqj7OEAFeMj5j+loNm+ahJVX7w/X/ug==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.10.3.tgz", + "integrity": "sha512-5DXD7x7WVcX1gUgnlFXQa8F+Q3ThRYwJm+aesgrYvDOY+xzRoRSdQvhmdd4JEEue3lyX44DvBSgCIHPtGcEPaw==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-shadow": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.10.2.tgz", - "integrity": "sha512-koksEMJZKjq8OiprLh+ffrRo/x/dXHCsfaKS4kf2EoFZEb6sZHeJgKLwozLky1DXBPiMryYSrNt8Cb6wzjd1zA==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.10.3.tgz", + "integrity": "sha512-/nkFXpt2zVcdP4ETdkAUL0fSzyrC5ZFxdcphbYBodqD7fXNqChS/Un1eD4xCXWEpW8cnG9dixZgQgStjywH0Mg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugin-threshold": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.10.2.tgz", - "integrity": "sha512-RQzxB40KK50iUUNLF9M7G3dVKFmbe/T4EQVWMPxxX8NQPNbU0vjZzTW0vVYoTYno2vLxewQgV0Y3ydX/l08NLg==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.10.3.tgz", + "integrity": "sha512-Dzh0Yq2wXP2SOnxcbbiyA4LJ2luwrdf1MghNIt9H+NX7B+IWw/N8qA2GuSm9n4BPGSLluuhdAWJqHcTiREriVA==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1" } }, "@jimp/plugins": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.10.2.tgz", - "integrity": "sha512-z4Fhu97WZIussTzd1PJXUUuluushXlfCYzXifixf8fGAoVGZuMMJl6aqtuy4eUOgLyN8sXun0MzdWAahelqbfA==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.10.3.tgz", + "integrity": "sha512-jTT3/7hOScf0EIKiAXmxwayHhryhc1wWuIe3FrchjDjr9wgIGNN2a7XwCgPl3fML17DXK1x8EzDneCdh261bkw==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/plugin-blit": "^0.10.2", - "@jimp/plugin-blur": "^0.10.2", - "@jimp/plugin-circle": "^0.10.2", - "@jimp/plugin-color": "^0.10.2", - "@jimp/plugin-contain": "^0.10.2", - "@jimp/plugin-cover": "^0.10.2", - "@jimp/plugin-crop": "^0.10.2", - "@jimp/plugin-displace": "^0.10.2", - "@jimp/plugin-dither": "^0.10.2", - "@jimp/plugin-fisheye": "^0.10.2", - "@jimp/plugin-flip": "^0.10.2", - "@jimp/plugin-gaussian": "^0.10.2", - "@jimp/plugin-invert": "^0.10.2", - "@jimp/plugin-mask": "^0.10.2", - "@jimp/plugin-normalize": "^0.10.2", - "@jimp/plugin-print": "^0.10.2", - "@jimp/plugin-resize": "^0.10.2", - "@jimp/plugin-rotate": "^0.10.2", - "@jimp/plugin-scale": "^0.10.2", - "@jimp/plugin-shadow": "^0.10.2", - "@jimp/plugin-threshold": "^0.10.2", + "@jimp/plugin-blit": "^0.10.3", + "@jimp/plugin-blur": "^0.10.3", + "@jimp/plugin-circle": "^0.10.3", + "@jimp/plugin-color": "^0.10.3", + "@jimp/plugin-contain": "^0.10.3", + "@jimp/plugin-cover": "^0.10.3", + "@jimp/plugin-crop": "^0.10.3", + "@jimp/plugin-displace": "^0.10.3", + "@jimp/plugin-dither": "^0.10.3", + "@jimp/plugin-fisheye": "^0.10.3", + "@jimp/plugin-flip": "^0.10.3", + "@jimp/plugin-gaussian": "^0.10.3", + "@jimp/plugin-invert": "^0.10.3", + "@jimp/plugin-mask": "^0.10.3", + "@jimp/plugin-normalize": "^0.10.3", + "@jimp/plugin-print": "^0.10.3", + "@jimp/plugin-resize": "^0.10.3", + "@jimp/plugin-rotate": "^0.10.3", + "@jimp/plugin-scale": "^0.10.3", + "@jimp/plugin-shadow": "^0.10.3", + "@jimp/plugin-threshold": "^0.10.3", "core-js": "^3.4.1", "timm": "^1.6.1" } }, "@jimp/png": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.10.2.tgz", - "integrity": "sha512-3r5q9Ns3Gz8pcI8oBdGTY7d0TkkW4atZ12bknB1sABc3UYX69arqmTvrULMYhWf0M6n3tKHdnmdW2cTlFWIAbw==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.10.3.tgz", + "integrity": "sha512-YKqk/dkl+nGZxSYIDQrqhmaP8tC3IK8H7dFPnnzFVvbhDnyYunqBZZO3SaZUKTichClRw8k/CjBhbc+hifSGWg==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.10.2", + "@jimp/utils": "^0.10.3", "core-js": "^3.4.1", "pngjs": "^3.3.3" } }, "@jimp/tiff": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.10.2.tgz", - "integrity": "sha512-uuJF6ZMXo0EDyooho9RhwAY9YGcgUju1mw53N9BtU7E9Y+AxKn7miaK2niROmN2/ufmLJO8vS9zjpgAxv+zgKQ==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.10.3.tgz", + "integrity": "sha512-7EsJzZ5Y/EtinkBGuwX3Bi4S+zgbKouxjt9c82VJTRJOQgLWsE/RHqcyRCOQBhHAZ9QexYmDz34medfLKdoX0g==", "requires": { "@babel/runtime": "^7.7.2", "core-js": "^3.4.1", @@ -531,24 +531,24 @@ } }, "@jimp/types": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.10.2.tgz", - "integrity": "sha512-XCgFhH8BR0ovxrEkDnKRXalEAUjo3vW9vwOFxfSrJR/YS/k0TsvYB6/+QAU/cGwcN8icmYdDyhq2yhJACAl13w==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.10.3.tgz", + "integrity": "sha512-XGmBakiHZqseSWr/puGN+CHzx0IKBSpsKlmEmsNV96HKDiP6eu8NSnwdGCEq2mmIHe0JNcg1hqg59hpwtQ7Tiw==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/bmp": "^0.10.2", - "@jimp/gif": "^0.10.2", - "@jimp/jpeg": "^0.10.2", - "@jimp/png": "^0.10.2", - "@jimp/tiff": "^0.10.2", + "@jimp/bmp": "^0.10.3", + "@jimp/gif": "^0.10.3", + "@jimp/jpeg": "^0.10.3", + "@jimp/png": "^0.10.3", + "@jimp/tiff": "^0.10.3", "core-js": "^3.4.1", "timm": "^1.6.1" } }, "@jimp/utils": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.10.2.tgz", - "integrity": "sha512-B3fBgkE7t7S4X1RXKY5vfx+8QdUvN0AIbG2rM7csYTsudOczTtzimlP7XxunYtOwCYBLVswRWpqn8PZcRLWu2w==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.10.3.tgz", + "integrity": "sha512-VcSlQhkil4ReYmg1KkN+WqHyYfZ2XfZxDsKAHSfST1GEz/RQHxKZbX+KhFKtKflnL0F4e6DlNQj3vznMNXCR2w==", "requires": { "@babel/runtime": "^7.7.2", "core-js": "^3.4.1", @@ -1263,7 +1263,7 @@ "dependencies": { "file-type": { "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "resolved": "http://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" } } @@ -1539,7 +1539,7 @@ }, "uuid": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", + "resolved": "http://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=" } } @@ -1573,7 +1573,7 @@ "dependencies": { "semver": { "version": "4.3.6", - "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.6.tgz", + "resolved": "http://registry.npmjs.org/semver/-/semver-4.3.6.tgz", "integrity": "sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=" } } @@ -1593,7 +1593,7 @@ }, "bl": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", + "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", "requires": { "readable-stream": "^2.3.5", @@ -1853,12 +1853,12 @@ "dependencies": { "file-type": { "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "resolved": "http://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" }, "uuid": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", + "resolved": "http://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=" } } @@ -1963,7 +1963,7 @@ }, "readable-stream": { "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "requires": { "core-util-is": "~1.0.0", @@ -2138,7 +2138,7 @@ }, "chalk": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { "ansi-styles": "^2.2.1", @@ -2455,7 +2455,7 @@ }, "commander": { "version": "2.8.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", + "resolved": "http://registry.npmjs.org/commander/-/commander-2.8.1.tgz", "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", "requires": { "graceful-readlink": ">= 1.0.0" @@ -2822,9 +2822,9 @@ "integrity": "sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI=" }, "dayjs": { - "version": "1.8.24", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.8.24.tgz", - "integrity": "sha512-bImQZbBv86zcOWOq6fLg7r4aqMx8fScdmykA7cSh+gH1Yh8AM0Dbw0gHYrsOrza6oBBnkK+/OaR+UAa9UsMrDw==" + "version": "1.8.25", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.8.25.tgz", + "integrity": "sha512-Pk36juDfQQGDCgr0Lqd1kw15w3OS6xt21JaLPE3lCfsEf8KrERGwDNwvK1tRjrjqFC0uZBJncT4smZQ4F+uV5g==" }, "debug": { "version": "4.1.1", @@ -3118,7 +3118,7 @@ }, "readable-stream": { "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "requires": { "core-util-is": "~1.0.0", @@ -4435,9 +4435,9 @@ } }, "file-type": { - "version": "14.1.4", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.1.4.tgz", - "integrity": "sha512-1n6FczX8n73Y/cLjTiMboeTGHfm/i2AWk2oQE7m9a/G5YTCZHCEHEGr32thhLm3iQNUYzTKVQUcYcNHtOLwqgQ==", + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-14.2.0.tgz", + "integrity": "sha512-CAkX5G5jq8LIgFu++dpM3giMZadYdU+QVQoPLajjNboo8IzaR4cKpBCVEuz+suhd/vHqoAJeSWhEubKjRPQHJg==", "requires": { "readable-web-to-node-stream": "^2.0.0", "strtok3": "^6.0.0", @@ -4509,9 +4509,9 @@ }, "dependencies": { "make-dir": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.2.tgz", - "integrity": "sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "requires": { "semver": "^6.0.0" @@ -4936,7 +4936,7 @@ }, "get-stream": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" }, "getpass": { @@ -5200,7 +5200,7 @@ }, "got": { "version": "5.7.1", - "resolved": "https://registry.npmjs.org/got/-/got-5.7.1.tgz", + "resolved": "http://registry.npmjs.org/got/-/got-5.7.1.tgz", "integrity": "sha1-X4FjWmHkplifGAVp6k44FoClHzU=", "requires": { "create-error-class": "^3.0.1", @@ -5848,7 +5848,7 @@ }, "into-stream": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", + "resolved": "http://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", "requires": { "from2": "^2.1.1", @@ -5937,9 +5937,9 @@ } }, "is-function": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.1.tgz", - "integrity": "sha1-Es+5i2W1fdPRk6MSH19uL0N2ArU=" + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", + "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==" }, "is-gif": { "version": "1.0.0", @@ -6000,7 +6000,7 @@ }, "is-obj": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "resolved": "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" }, "is-object": { @@ -6147,9 +6147,9 @@ } }, "jest-worker": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.2.6.tgz", - "integrity": "sha512-FJn9XDUSxcOR4cwDzRfL1z56rUofNTFs539FGASpd50RHdb6EVkhxQqktodW2mI49l+W3H+tFJDotCHUQF6dmA==", + "version": "25.4.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.4.0.tgz", + "integrity": "sha512-ghAs/1FtfYpMmYQ0AHqxV62XPvKdUDIBBApMZfly+E9JEmYh2K45G0R5dWxx986RN12pRCxsViwQVtGl+N4whw==", "dev": true, "requires": { "merge-stream": "^2.0.0", @@ -6174,14 +6174,14 @@ } }, "jimp": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.10.2.tgz", - "integrity": "sha512-dt6n3P0LZyoqAiIUur+gJEKS55sCUUo19cKx8LTSZRqGizF4JN0jfRAnfnV4nxF+sINP2FN6SOi82gHcAMm1nQ==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.10.3.tgz", + "integrity": "sha512-meVWmDMtyUG5uYjFkmzu0zBgnCvvxwWNi27c4cg55vWNVC9ES4Lcwb+ogx+uBBQE3Q+dLKjXaLl0JVW+nUNwbQ==", "requires": { "@babel/runtime": "^7.7.2", - "@jimp/custom": "^0.10.2", - "@jimp/plugins": "^0.10.2", - "@jimp/types": "^0.10.2", + "@jimp/custom": "^0.10.3", + "@jimp/plugins": "^0.10.3", + "@jimp/types": "^0.10.3", "core-js": "^3.4.1", "regenerator-runtime": "^0.13.3" } @@ -6551,7 +6551,7 @@ }, "load-json-file": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "requires": { "graceful-fs": "^4.1.2", @@ -7060,7 +7060,7 @@ }, "minimist": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" }, "minipass": { @@ -7160,7 +7160,7 @@ }, "mkdirp": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "requires": { "minimist": "0.0.8" @@ -7168,7 +7168,7 @@ "dependencies": { "minimist": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" } } @@ -7362,7 +7362,7 @@ }, "get-stream": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" }, "got": { @@ -7398,7 +7398,7 @@ }, "p-cancelable": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", + "resolved": "http://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==" }, "p-event": { @@ -7522,7 +7522,7 @@ "dependencies": { "file-type": { "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "resolved": "http://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" } } @@ -7547,7 +7547,7 @@ "dependencies": { "get-stream": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" }, "pify": { @@ -7604,7 +7604,7 @@ }, "get-stream": { "version": "2.3.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", "requires": { "object-assign": "^4.0.1", @@ -7634,7 +7634,7 @@ "dependencies": { "get-stream": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" } } @@ -7674,7 +7674,7 @@ }, "pify": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" }, "prepend-http": { @@ -7779,7 +7779,7 @@ }, "readable-stream": { "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "requires": { "core-util-is": "~1.0.0", @@ -7853,9 +7853,9 @@ "integrity": "sha512-0L9FvHG3nfnnmaEQPjT9xhfN4ISk0A8/2j4M37Np4mcDesJjHgEUfgPhdCyZuFI954tjokaIj/A3NdpFNdEh4Q==" }, "node-abi": { - "version": "2.15.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.15.0.tgz", - "integrity": "sha512-FeLpTS0F39U7hHZU1srAK4Vx+5AHNVOTP+hxBNQknR/54laTHSFIJkDWDqiquY1LeLUgTfPN7sLPhMubx0PLAg==", + "version": "2.16.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.16.0.tgz", + "integrity": "sha512-+sa0XNlWDA6T+bDLmkCUYn6W5k5W6BPRL6mqzSCs6H/xUgtl4D5x2fORKDzopKiU6wsyn/+wXlRXwXeSp+mtoA==", "requires": { "semver": "^5.4.1" }, @@ -8148,7 +8148,7 @@ }, "onetime": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" }, "open": { @@ -8300,7 +8300,7 @@ }, "p-is-promise": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", + "resolved": "http://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=" }, "p-limit": { @@ -8781,7 +8781,7 @@ }, "get-stream": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" } } @@ -9065,7 +9065,7 @@ "dependencies": { "file-type": { "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "resolved": "http://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" } } @@ -9090,7 +9090,7 @@ "dependencies": { "get-stream": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" }, "pify": { @@ -9128,7 +9128,7 @@ }, "get-stream": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" } } @@ -9180,7 +9180,7 @@ }, "get-stream": { "version": "2.3.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", "requires": { "object-assign": "^4.0.1", @@ -9210,7 +9210,7 @@ "dependencies": { "get-stream": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" } } @@ -9398,7 +9398,7 @@ }, "query-string": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", + "resolved": "http://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", "requires": { "decode-uri-component": "^0.2.0", @@ -9537,7 +9537,7 @@ }, "readable-stream": { "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "requires": { "core-util-is": "~1.0.0", @@ -9890,9 +9890,9 @@ } }, "schema-utils": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.5.tgz", - "integrity": "sha512-5KXuwKziQrTVHh8j/Uxz+QUbxkaLW9X/86NBlx/gnKgtsZA2GIVMUn17qWhRFwF8jdYb3Dig5hRO/W5mZqy6SQ==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.6.tgz", + "integrity": "sha512-wHutF/WPSbIi9x6ctjGGk2Hvl0VOz5l3EKEuKbjPlB30mKZUzb9A5k9yEXRX3pwyqVLPvpfZZEllaFq/M718hA==", "dev": true, "requires": { "ajv": "^6.12.0", @@ -9900,9 +9900,9 @@ }, "dependencies": { "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -10405,7 +10405,7 @@ }, "strip-ansi": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { "ansi-regex": "^2.0.0" @@ -10430,7 +10430,7 @@ }, "strip-dirs": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-1.1.1.tgz", + "resolved": "http://registry.npmjs.org/strip-dirs/-/strip-dirs-1.1.1.tgz", "integrity": "sha1-lgu9EoeETzl1pFWKoQOoJV4kVqA=", "requires": { "chalk": "^1.0.0", @@ -10688,7 +10688,7 @@ }, "through": { "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" }, "through2": { @@ -10707,7 +10707,7 @@ }, "readable-stream": { "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "requires": { "core-util-is": "~1.0.0", @@ -11387,9 +11387,9 @@ "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==" }, "webpack": { - "version": "5.0.0-beta.14", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.0.0-beta.14.tgz", - "integrity": "sha512-g51iJZx/7geKuqRhBR2KK2EpnfwwkO+mw/MsxfnUoXTCptoC4XPUXYLue1VjEMOnHfTyk9xnxrTwnW14pclMQw==", + "version": "5.0.0-beta.15", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.0.0-beta.15.tgz", + "integrity": "sha512-nT+l7LteKTIzB3lmroEGL4qcCBqgHMpa3EJUvhQdfXRWjxCfWnnWdBARhp/To61omZhyNPz2Ye2J1ZEf070kWA==", "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", diff --git a/package.json b/package.json index ff3b9a9c5..ef9b88fa7 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "commonmark": "0.29.1", "cookie-parser": "1.4.5", "csurf": "1.11.0", - "dayjs": "1.8.24", + "dayjs": "1.8.25", "debug": "4.1.1", "ejs": "3.0.2", "electron-debug": "3.0.1", @@ -37,7 +37,7 @@ "electron-window-state": "5.0.3", "express": "4.17.1", "express-session": "1.17.1", - "file-type": "14.1.4", + "file-type": "14.2.0", "fs-extra": "9.0.0", "helmet": "3.22.0", "html": "1.0.0", @@ -51,10 +51,10 @@ "imagemin-pngquant": "8.0.0", "ini": "1.3.5", "is-svg": "4.2.1", - "jimp": "0.10.2", + "jimp": "0.10.3", "mime-types": "2.1.26", "multer": "1.4.2", - "node-abi": "2.15.0", + "node-abi": "2.16.0", "open": "7.0.3", "portscanner": "2.2.0", "rand-token": "1.0.1", @@ -84,7 +84,7 @@ "electron-rebuild": "1.10.1", "jsdoc": "3.6.4", "lorem-ipsum": "2.0.3", - "webpack": "5.0.0-beta.14", + "webpack": "5.0.0-beta.15", "webpack-cli": "4.0.0-beta.8" }, "optionalDependencies": { diff --git a/src/public/app/extra.js b/src/public/app/extra.js new file mode 100644 index 000000000..1b07ce51b --- /dev/null +++ b/src/public/app/extra.js @@ -0,0 +1,144 @@ +import appContext from "./services/app_context.js"; +import utils from './services/utils.js'; +import noteTooltipService from './services/note_tooltip.js'; +import bundleService from "./services/bundle.js"; +import noteAutocompleteService from './services/note_autocomplete.js'; +import macInit from './services/mac_init.js'; +import contextMenu from "./services/context_menu.js"; +import ExtraLayout from "./widgets/extra_layout.js"; +import glob from "./services/glob.js"; + +glob.setupGlobs(); + +if (utils.isElectron()) { + utils.dynamicRequire('electron').ipcRenderer.on('globalShortcut', async function(event, actionName) { + appContext.triggerCommand(actionName); + }); +} + +$('[data-toggle="tooltip"]').tooltip({ + html: true +}); + +macInit.init(); + +bundleService.getWidgetBundlesByParent().then(widgetBundles => { + const extraLayout = new ExtraLayout(widgetBundles); + + appContext.setLayout(extraLayout); + appContext.start(false); +}); + +noteTooltipService.setupGlobalTooltip(); + +noteAutocompleteService.init(); + +if (utils.isElectron()) { + const electron = utils.dynamicRequire('electron'); + const {webContents} = electron.remote.getCurrentWindow(); + + webContents.on('context-menu', (event, params) => { + const {editFlags} = params; + const hasText = params.selectionText.trim().length > 0; + const isMac = process.platform === "darwin"; + const platformModifier = isMac ? 'Meta' : 'Ctrl'; + + const items = []; + + if (params.misspelledWord) { + for (const suggestion of params.dictionarySuggestions) { + items.push({ + title: suggestion, + command: "replaceMisspelling", + spellingSuggestion: suggestion, + uiIcon: "empty" + }); + } + + items.push({ + title: `Add "${params.misspelledWord}" to dictionary`, + uiIcon: "plus", + handler: () => webContents.session.addWordToSpellCheckerDictionary(params.misspelledWord) + }); + + items.push({ title: `----` }); + } + + if (params.isEditable) { + items.push({ + enabled: editFlags.canCut && hasText, + title: `Cut ${platformModifier}+X`, + uiIcon: "cut", + handler: () => webContents.cut() + }); + } + + if (params.isEditable || hasText) { + items.push({ + enabled: editFlags.canCopy && hasText, + title: `Copy ${platformModifier}+C`, + uiIcon: "copy", + handler: () => webContents.copy() + }); + } + + if (params.linkURL.length !== 0 && params.mediaType === 'none') { + items.push({ + title: `Copy link`, + uiIcon: "copy", + handler: () => { + electron.clipboard.write({ + bookmark: params.linkText, + text: params.linkURL + }); + } + }); + } + + if (params.isEditable) { + items.push({ + enabled: editFlags.canPaste, + title: `Paste ${platformModifier}+V`, + uiIcon: "paste", + handler: () => webContents.paste() + }); + } + + if (params.isEditable) { + items.push({ + enabled: editFlags.canPaste, + title: `Paste as plain text ${platformModifier}+Shift+V`, + uiIcon: "paste", + handler: () => webContents.pasteAndMatchStyle() + }); + } + + if (hasText) { + const shortenedSelection = params.selectionText.length > 15 + ? (params.selectionText.substr(0, 13) + "…") + : params.selectionText; + + items.push({ + enabled: editFlags.canPaste, + title: `Search for "${shortenedSelection}" with DuckDuckGo`, + uiIcon: "search-alt", + handler: () => electron.shell.openExternal(`https://duckduckgo.com/?q=${encodeURIComponent(params.selectionText)}`) + }); + } + + if (items.length === 0) { + return; + } + + contextMenu.show({ + x: params.x, + y: params.y, + items, + selectMenuItemHandler: ({command, spellingSuggestion}) => { + if (command === 'replaceMisspelling') { + webContents.insertText(spellingSuggestion); + } + } + }); + }); +} \ No newline at end of file diff --git a/src/public/app/services/app_context.js b/src/public/app/services/app_context.js index 6dbcfa2db..028576547 100644 --- a/src/public/app/services/app_context.js +++ b/src/public/app/services/app_context.js @@ -17,14 +17,14 @@ class AppContext extends Component { this.layout = layout; } - async start() { + async start(loadExistingTabs = true) { await Promise.all([treeCache.initializedPromise, options.initializedPromise]); $("#loading-indicator").hide(); this.showWidgets(); - this.tabManager.loadTabs(); + this.tabManager.loadTabs(loadExistingTabs); if (utils.isDesktop()) { setTimeout(() => bundleService.executeStartupBundles(), 2000); @@ -100,6 +100,19 @@ class AppContext extends Component { this.triggerEvent('treeCacheReloaded'); } + + async openInNewWindow(notePath) { + if (utils.isElectron()) { + const {ipcRenderer} = utils.dynamicRequire('electron'); + + ipcRenderer.send('create-extra-window', {notePath}); + } + else { + const url = 'http://127.0.0.1:37740/#' + notePath; + + window.open(url); + } + } } const appContext = new AppContext(); diff --git a/src/public/app/services/link.js b/src/public/app/services/link.js index 64ec62956..97732821d 100644 --- a/src/public/app/services/link.js +++ b/src/public/app/services/link.js @@ -113,12 +113,16 @@ function newTabContextMenu(e) { x: e.pageX, y: e.pageY, items: [ - {title: "Open note in new tab", command: "openNoteInNewTab", uiIcon: "arrow-up-right"} + {title: "Open note in new tab", command: "openNoteInNewTab", uiIcon: "arrow-up-right"}, + {title: "Open note in new window", command: "openNoteInNewWindow", uiIcon: "arrow-up-right"} ], selectMenuItemHandler: ({command}) => { if (command === 'openNoteInNewTab') { appContext.tabManager.openTabWithNote(notePath); } + else if (command === 'openNoteInNewWindow') { + appContext.openInNewWindow(notePath); + } } }); } diff --git a/src/public/app/services/tab_manager.js b/src/public/app/services/tab_manager.js index c7823a5b1..3c2823fb1 100644 --- a/src/public/app/services/tab_manager.js +++ b/src/public/app/services/tab_manager.js @@ -29,8 +29,10 @@ export default class TabManager extends Component { return this.children; } - async loadTabs() { - const openTabs = options.getJson('openTabs') || []; + async loadTabs(loadExistingTabs) { + const openTabs = loadExistingTabs + ? (options.getJson('openTabs') || []) + : []; // if there's notePath in the URL, make sure it's open and active // (useful, among others, for opening clipped notes from clipper) diff --git a/src/public/app/widgets/extra_layout.js b/src/public/app/widgets/extra_layout.js new file mode 100644 index 000000000..1a09e39b8 --- /dev/null +++ b/src/public/app/widgets/extra_layout.js @@ -0,0 +1,48 @@ +import FlexContainer from "./flex_container.js"; +import GlobalMenuWidget from "./global_menu.js"; +import TabRowWidget from "./tab_row.js"; +import TitleBarButtonsWidget from "./title_bar_buttons.js"; +import NoteTreeWidget from "./note_tree.js"; +import TabCachingWidget from "./tab_caching_widget.js"; +import NoteTitleWidget from "./note_title.js"; +import RunScriptButtonsWidget from "./run_script_buttons.js"; +import ProtectedNoteSwitchWidget from "./protected_note_switch.js"; +import NoteTypeWidget from "./note_type.js"; +import NoteActionsWidget from "./note_actions.js"; +import PromotedAttributesWidget from "./promoted_attributes.js"; +import NoteDetailWidget from "./note_detail.js"; + +export default class ExtraLayout { + constructor(customWidgets) { + this.customWidgets = customWidgets; + } + + getRootWidget(appContext) { + appContext.mainTreeWidget = new NoteTreeWidget(); + + return new FlexContainer('column') + .setParent(appContext) + .id('root-widget') + .css('height', '100vh') + .child(new FlexContainer('row') + .child(new GlobalMenuWidget()) + .child(new TabRowWidget()) + .child(new TitleBarButtonsWidget())) + .child(new FlexContainer('row') + .collapsible() + .child(new FlexContainer('column').id('center-pane') + .child(new FlexContainer('row').class('title-row') + .cssBlock('.title-row > * { margin: 5px; }') + .child(new NoteTitleWidget()) + .child(new RunScriptButtonsWidget().hideInZenMode()) + .child(new ProtectedNoteSwitchWidget().hideInZenMode()) + .child(new NoteTypeWidget().hideInZenMode()) + .child(new NoteActionsWidget().hideInZenMode()) + ) + .child(new TabCachingWidget(() => new PromotedAttributesWidget())) + .child(new TabCachingWidget(() => new NoteDetailWidget())) + .child(...this.customWidgets.get('center-pane')) + ) + ); + } +} \ No newline at end of file diff --git a/src/public/app/widgets/tab_caching_widget.js b/src/public/app/widgets/tab_caching_widget.js index 1b0fcd526..331e3235d 100644 --- a/src/public/app/widgets/tab_caching_widget.js +++ b/src/public/app/widgets/tab_caching_widget.js @@ -68,6 +68,8 @@ export default class TabCachingWidget extends TabAwareWidget { const widget = this.widgets[data.tabContext.tabId]; if (widget && (widget.hasBeenAlreadyShown || name === 'tabNoteSwitchedAndActivated')) { + widget.hasBeenAlreadyShown = true; + return widget.handleEvent('tabNoteSwitched', data); } else { diff --git a/src/routes/index.js b/src/routes/index.js index ab705544e..ee114810e 100644 --- a/src/routes/index.js +++ b/src/routes/index.js @@ -11,7 +11,11 @@ const env = require('../services/env'); async function index(req, res) { const options = await optionService.getOptionsMap(); - const view = req.cookies['trilium-device'] === 'mobile' ? 'mobile' : 'desktop'; + let view = req.cookies['trilium-device'] === 'mobile' ? 'mobile' : 'desktop'; + + if (req.query.extra) { + view = 'extra'; + } const csrfToken = req.csrfToken(); log.info(`Generated CSRF token ${csrfToken} with secret ${res.getHeader('set-cookie')}`); diff --git a/src/services/window.js b/src/services/window.js index 22a1277ff..e7c0bc763 100644 --- a/src/services/window.js +++ b/src/services/window.js @@ -7,6 +7,7 @@ const log = require('./log'); const sqlInit = require('./sql_init'); const cls = require('./cls'); const keyboardActionsService = require('./keyboard_actions'); +const {ipcMain} = require('electron'); // Prevent window being garbage collected /** @type {Electron.BrowserWindow} */ @@ -14,6 +15,29 @@ let mainWindow; /** @type {Electron.BrowserWindow} */ let setupWindow; +async function createExtraWindow(notePath) { + const {BrowserWindow} = require('electron'); + const win = new BrowserWindow({ + height: 600, + width: 800, + title: 'Trilium Notes', + webPreferences: { + enableRemoteModule: true, + nodeIntegration: true, + spellcheck: await optionService.getOptionBool('spellCheckEnabled') + }, + frame: await optionService.getOptionBool('nativeTitleBarVisible'), + icon: getIcon() + }); + + win.setMenuBarVisibility(false); + win.loadURL('http://127.0.0.1:' + await port + '/?extra=1#' + notePath); +} + +ipcMain.on('create-extra-window', (event, arg) => { + createExtraWindow(arg.notePath); +}); + async function createMainWindow() { const windowStateKeeper = require('electron-window-state'); // should not be statically imported @@ -141,5 +165,6 @@ module.exports = { createMainWindow, createSetupWindow, closeSetupWindow, + createExtraWindow, registerGlobalShortcuts }; \ No newline at end of file diff --git a/src/views/extra.ejs b/src/views/extra.ejs new file mode 100644 index 000000000..f666408d6 --- /dev/null +++ b/src/views/extra.ejs @@ -0,0 +1,83 @@ + + + + + + Trilium Notes + + + + +
+ + + +<%- include('dialogs/about.ejs') %> +<%- include('dialogs/add_link.ejs') %> +<%- include('dialogs/attributes.ejs') %> +<%- include('dialogs/branch_prefix.ejs') %> +<%- include('dialogs/export.ejs') %> +<%- include('dialogs/import.ejs') %> +<%- include('dialogs/jump_to_note.ejs') %> +<%- include('dialogs/markdown_import.ejs') %> +<%- include('dialogs/note_revisions.ejs') %> +<%- include('dialogs/note_source.ejs') %> +<%- include('dialogs/options.ejs') %> +<%- include('dialogs/protected_session_password.ejs') %> +<%- include('dialogs/recent_changes.ejs') %> +<%- include('dialogs/sql_console.ejs') %> +<%- include('dialogs/info.ejs') %> +<%- include('dialogs/prompt.ejs') %> +<%- include('dialogs/confirm.ejs') %> +<%- include('dialogs/help.ejs') %> +<%- include('dialogs/note_info.ejs') %> +<%- include('dialogs/link_map.ejs') %> +<%- include('dialogs/clone_to.ejs') %> +<%- include('dialogs/move_to.ejs') %> +<%- include('dialogs/backend_log.ejs') %> +<%- include('dialogs/include_note.ejs') %> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +