From ec3999a8a097dea32fd89bc00a13c5e3e73116a1 Mon Sep 17 00:00:00 2001 From: Marc Brooks Date: Fri, 9 Feb 2024 12:11:19 -0600 Subject: [PATCH 1/3] Bump dependencies --- package-lock.json | 481 ++++++++++++++++++++++++++++------------------ package.json | 10 +- 2 files changed, 297 insertions(+), 194 deletions(-) diff --git a/package-lock.json b/package-lock.json index 346c93f4..819de910 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,16 +1,16 @@ { "name": "dom-to-image-more", - "version": "3.2.0", + "version": "3.3.0-rc", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "dom-to-image-more", - "version": "3.2.0", + "version": "3.3.0-rc", "license": "MIT", "devDependencies": { "chai": "^4.3.10", - "eslint": "^8.50.0", + "eslint": "^8.56.0", "grunt": "^1.6.1", "grunt-cli": "^1.4.3", "grunt-contrib-jshint": "^3.2.0", @@ -24,9 +24,9 @@ "karma-firefox-launcher": "^2.1.2", "karma-mocha": "^2.0.1", "karma-mocha-reporter": "^2.2.5", - "mocha": "^10.2.0", - "prettier": "^3.0.3", - "semver": "^7.5.4" + "mocha": "^10.3.0", + "prettier": "^3.2.5", + "semver": "^7.6.0" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -63,18 +63,18 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", - "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -95,22 +95,22 @@ } }, "node_modules/@eslint/js": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.50.0.tgz", - "integrity": "sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", "minimatch": "^3.0.5" }, "engines": { @@ -131,9 +131,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, "node_modules/@nodelib/fs.scandir": { @@ -184,18 +184,27 @@ "dev": true }, "node_modules/@types/cors": { - "version": "2.8.14", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.14.tgz", - "integrity": "sha512-RXHUvNWYICtbP6s18PnOCaqToK8y14DnLd75c6HfyKf228dxy7pHNOQkxPtvXKp/hINFMDjbYzsj63nnpPMSRQ==", + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", "dev": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/node": { - "version": "20.8.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.2.tgz", - "integrity": "sha512-Vvycsc9FQdwhxE3y3DzeIxuEJbWGDsnrxvMADzTDF/lcdR9/K+AQIeAghTQsHtotg/q0j3WEOYS/jQgSdWue3w==", + "version": "20.11.17", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.17.tgz", + "integrity": "sha512-QmgQZGWu1Yw9TDyAP9ZzpFJKynYNeOvwMJmaxABfieQoVoiVOS6MN1WSpqpRcbeA5+RW82kraAVxCCJg+780Qw==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", "dev": true }, "node_modules/abbrev": { @@ -218,9 +227,9 @@ } }, "node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -486,13 +495,18 @@ } }, "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.6.tgz", + "integrity": "sha512-Mj50FLHtlsoVfRfnHaZvyrooHcrlceNZdL/QBvJJVd9Ta55qCQK0gs4ss2oZDeV9zFCs6ewzYgVE5yfVmfFpVg==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.3", + "set-function-length": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -520,9 +534,9 @@ } }, "node_modules/chai": { - "version": "4.3.10", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.10.tgz", - "integrity": "sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", + "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", "dev": true, "dependencies": { "assertion-error": "^1.1.0", @@ -566,16 +580,10 @@ } }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -588,6 +596,9 @@ "engines": { "node": ">= 8.10.0" }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, "optionalDependencies": { "fsevents": "~2.3.2" } @@ -834,6 +845,21 @@ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, + "node_modules/define-data-property": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.2.tgz", + "integrity": "sha512-SRtsSqsDbgpJBbW3pABMCOt6rQyeM8s8RiyeSN8jYG8sYmt/kGJejbydttUsnDs1tadr19tvhT4ShwMyoqAm4g==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.2", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -985,9 +1011,9 @@ } }, "node_modules/engine.io": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.2.tgz", - "integrity": "sha512-IXsMcGpw/xRfjra46sVZVHiSWo/nJ/3g1337q9KNXtS6YRzbW5yIzTCb9DjhrBe7r3GZQR0I4+nq+4ODk5g/cA==", + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.4.tgz", + "integrity": "sha512-KdVSDKhVKyOi+r5uEabrDLZw2qXStVvCsEB/LN3mw4WFi6Gx50jTyuxYVCwAAC0U46FdnzP/ScKRBTXb/NiEOg==", "dev": true, "dependencies": { "@types/cookie": "^0.4.1", @@ -1006,9 +1032,9 @@ } }, "node_modules/engine.io-parser": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.1.tgz", - "integrity": "sha512-9JktcM3u18nU9N2Lz3bWeBgxVgOKpw7yhRaoxQA3FUDZzzw+9WlA6p4G4u0RixNkg14fH7EfEc/RhpurtiROTQ==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.2.tgz", + "integrity": "sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==", "dev": true, "engines": { "node": ">=10.0.0" @@ -1035,10 +1061,19 @@ "string-template": "~0.2.1" } }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "dev": true, "engines": { "node": ">=6" @@ -1063,18 +1098,19 @@ } }, "node_modules/eslint": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.50.0.tgz", - "integrity": "sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.50.0", - "@humanwhocodes/config-array": "^0.11.11", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.56.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -1274,9 +1310,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dev": true, "dependencies": { "reusify": "^1.0.4" @@ -1453,17 +1489,17 @@ } }, "node_modules/flat-cache": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", - "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, "dependencies": { - "flatted": "^3.2.7", + "flatted": "^3.2.9", "keyv": "^4.5.3", "rimraf": "^3.0.2" }, "engines": { - "node": ">=12.0.0" + "node": "^10.12.0 || >=12.0.0" } }, "node_modules/flatted": { @@ -1473,9 +1509,9 @@ "dev": true }, "node_modules/follow-redirects": { - "version": "1.15.3", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", - "integrity": "sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==", + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", + "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", "dev": true, "funding": [ { @@ -1548,10 +1584,13 @@ } }, "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/gaze": { "version": "1.1.3", @@ -1584,15 +1623,19 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -1682,9 +1725,9 @@ } }, "node_modules/globals": { - "version": "13.22.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.22.0.tgz", - "integrity": "sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -1722,6 +1765,18 @@ "node": "*" } }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", @@ -1906,9 +1961,9 @@ } }, "node_modules/grunt-legacy-util/node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", + "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==", "dev": true }, "node_modules/grunt/node_modules/argparse": { @@ -1964,18 +2019,6 @@ "node": ">=6" } }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -1985,6 +2028,18 @@ "node": ">=8" } }, + "node_modules/has-property-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", @@ -2009,6 +2064,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/he": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", @@ -2110,9 +2177,9 @@ } }, "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" @@ -2197,12 +2264,12 @@ } }, "node_modules/is-core-module": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz", - "integrity": "sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dev": true, "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -2658,9 +2725,9 @@ } }, "node_modules/keyv": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", - "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, "dependencies": { "json-buffer": "3.0.1" @@ -2855,12 +2922,12 @@ } }, "node_modules/loupe": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.6.tgz", - "integrity": "sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==", + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", "dev": true, "dependencies": { - "get-func-name": "^2.0.0" + "get-func-name": "^2.0.1" } }, "node_modules/lru-cache": { @@ -3003,9 +3070,9 @@ } }, "node_modules/mocha": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz", - "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.3.0.tgz", + "integrity": "sha512-uF2XJs+7xSLsrmIvn37i/wnc91nw7XjOQB8ccyx5aEgdnohr7n+rEiZP23WkCYHjilR6+EboEnbq/ZQDz4LSbg==", "dev": true, "dependencies": { "ansi-colors": "4.1.1", @@ -3015,13 +3082,12 @@ "diff": "5.0.0", "escape-string-regexp": "4.0.0", "find-up": "5.0.0", - "glob": "7.2.0", + "glob": "8.1.0", "he": "1.2.0", "js-yaml": "4.1.0", "log-symbols": "4.1.0", "minimatch": "5.0.1", "ms": "2.1.3", - "nanoid": "3.3.3", "serialize-javascript": "6.0.0", "strip-json-comments": "3.1.1", "supports-color": "8.1.1", @@ -3036,42 +3102,73 @@ }, "engines": { "node": ">= 14.0.0" + } + }, + "node_modules/mocha/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/mocha/node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, "node_modules/mocha/node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "minimatch": "^5.0.1", + "once": "^1.3.0" }, "engines": { - "node": "*" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mocha/node_modules/glob/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/mocha/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "is-glob": "^4.0.1" }, "engines": { - "node": "*" + "node": ">= 6" } }, "node_modules/mocha/node_modules/log-symbols": { @@ -3102,15 +3199,6 @@ "node": ">=10" } }, - "node_modules/mocha/node_modules/minimatch/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/mocha/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -3138,18 +3226,6 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "node_modules/nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -3196,9 +3272,9 @@ } }, "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3478,9 +3554,9 @@ } }, "node_modules/prettier": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz", - "integrity": "sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==", + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", + "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -3505,9 +3581,9 @@ } }, "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, "engines": { "node": ">=6" @@ -3654,9 +3730,9 @@ "dev": true }, "node_modules/resolve": { - "version": "1.22.6", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.6.tgz", - "integrity": "sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, "dependencies": { "is-core-module": "^2.13.0", @@ -3703,9 +3779,9 @@ } }, "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", + "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==", "dev": true }, "node_modules/rimraf": { @@ -3779,9 +3855,9 @@ "dev": true }, "node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -3802,6 +3878,23 @@ "randombytes": "^2.1.0" } }, + "node_modules/set-function-length": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.1.tgz", + "integrity": "sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.2", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -3830,23 +3923,27 @@ } }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.5.tgz", + "integrity": "sha512-QcgiIWV4WV7qWExbN5llt6frQB/lBven9pqliLXfGPB+K9ZYXxDozp0wLkHS24kWCm+6YXH/f0HhnObZnZOBnQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/socket.io": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.2.tgz", - "integrity": "sha512-bvKVS29/I5fl2FGLNHuXlQaUH/BlzX1IN6S+NKLNZpBsPZIDH+90eQmCs2Railn4YUiww4SzUedJ6+uzwFnKLw==", + "version": "4.7.4", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.4.tgz", + "integrity": "sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==", "dev": true, "dependencies": { "accepts": "~1.3.4", @@ -4104,9 +4201,9 @@ } }, "node_modules/ua-parser-js": { - "version": "0.7.36", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.36.tgz", - "integrity": "sha512-CPPLoCts2p7D8VbybttE3P2ylv0OBZEAy7a12DsulIEcAiMtWJy+PBgMXgWDI80D5UwqE8oQPHYnk13tm38M2Q==", + "version": "0.7.37", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.37.tgz", + "integrity": "sha512-xV8kqRKM+jhMvcHWUKthV9fNebIzrNy//2O9ZwWcfiBFR5f25XVZPLlEajk/sf3Ra15V92isyQqnIEXRDaZWEA==", "dev": true, "funding": [ { @@ -4160,6 +4257,12 @@ "node": "*" } }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, "node_modules/universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", diff --git a/package.json b/package.json index 4e8c2104..ea0c76f1 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,11 @@ { "name": "dom-to-image-more", - "version": "3.2.0", + "version": "3.3.0-rc", "description": "Generates an image from a DOM node using HTML5 canvas and SVG", "main": "dist/dom-to-image-more.min.js", "devDependencies": { "chai": "^4.3.10", - "eslint": "^8.50.0", + "eslint": "^8.56.0", "grunt": "^1.6.1", "grunt-cli": "^1.4.3", "grunt-contrib-jshint": "^3.2.0", @@ -19,9 +19,9 @@ "karma-firefox-launcher": "^2.1.2", "karma-mocha": "^2.0.1", "karma-mocha-reporter": "^2.2.5", - "mocha": "^10.2.0", - "prettier": "^3.0.3", - "semver": "^7.5.4" + "mocha": "^10.3.0", + "prettier": "^3.2.5", + "semver": "^7.6.0" }, "scripts": { "format": "eslint src --fix && prettier --write .", From be3b447195abc9d623f64241c28b210def780913 Mon Sep 17 00:00:00 2001 From: Marc Brooks Date: Fri, 9 Feb 2024 13:12:05 -0600 Subject: [PATCH 2/3] Lint --- README.md | 4 ++-- spec/resources/eventing/style.css | 5 +++++ spec/resources/fonts/web-fonts/embedded.css | 4 +++- spec/resources/fonts/web-fonts/remote.css | 6 ++++-- spec/resources/fonts/web-fonts/rules.css | 14 ++++++++++---- spec/resources/fonts/web-fonts/with-query.css | 4 +++- 6 files changed, 27 insertions(+), 10 deletions(-) create mode 100644 spec/resources/eventing/style.css diff --git a/README.md b/README.md index 2506a4aa..6b29a0b9 100644 --- a/README.md +++ b/README.md @@ -195,8 +195,8 @@ Are you facing a [CORS policy](https://developer.mozilla.org/en-US/docs/Web/HTTP issue in your app? Don't worry, there are alternative solutions to this problem that you can explore. Here are some options to consider: -1. **Use the option.corsImg support by passing images** With this option, you can setup - a proxy service that will process the requests in a safe CORS context. +1. **Use the option.corsImg support by passing images** With this option, you can setup a + proxy service that will process the requests in a safe CORS context. 2. **Use third-party services like [allOrigins](https://allorigins.win/).** With this service, you can fetch the source code or an image in base64 format from any website. diff --git a/spec/resources/eventing/style.css b/spec/resources/eventing/style.css new file mode 100644 index 00000000..5f373707 --- /dev/null +++ b/spec/resources/eventing/style.css @@ -0,0 +1,5 @@ +#dom-node { + width: 500px; + height: 500px; + background-color: blue; +} diff --git a/spec/resources/fonts/web-fonts/embedded.css b/spec/resources/fonts/web-fonts/embedded.css index 45c65997..7d20e301 100644 --- a/spec/resources/fonts/web-fonts/embedded.css +++ b/spec/resources/fonts/web-fonts/embedded.css @@ -1,6 +1,8 @@ @font-face { font-family: 'Font1'; - src: url('data:application/x-font-woff2;base64,AAA') format('woff2'), local(Arial); + src: + url('data:application/x-font-woff2;base64,AAA') format('woff2'), + local(Arial); font-weight: normal; font-style: normal; } diff --git a/spec/resources/fonts/web-fonts/remote.css b/spec/resources/fonts/web-fonts/remote.css index 3fcbce06..396db8f2 100644 --- a/spec/resources/fonts/web-fonts/remote.css +++ b/spec/resources/fonts/web-fonts/remote.css @@ -1,7 +1,9 @@ @font-face { font-family: 'Font1'; - src: url('http://fonts.com/font1.woff2') format('woff2'), - url('http://fonts.com/font1.woff') format('woff'), local(Arial); + src: + url('http://fonts.com/font1.woff2') format('woff2'), + url('http://fonts.com/font1.woff') format('woff'), + local(Arial); font-weight: normal; font-style: normal; } diff --git a/spec/resources/fonts/web-fonts/rules.css b/spec/resources/fonts/web-fonts/rules.css index 01d516df..56bf8337 100644 --- a/spec/resources/fonts/web-fonts/rules.css +++ b/spec/resources/fonts/web-fonts/rules.css @@ -1,21 +1,27 @@ @font-face { font-family: 'Font1'; - src: url('http://fonts.com/font1.woff') format('woff'), - url('http://fonts.com/font1.woff2') format('woff2'), local('Arial'); + src: + url('http://fonts.com/font1.woff') format('woff'), + url('http://fonts.com/font1.woff2') format('woff2'), + local('Arial'); font-weight: normal; font-style: normal; } @font-face { font-family: 'Font2'; - src: url('http://fonts.com/font2.ttf?v1.1.3') format('truetype'), local('Ubuntu'); + src: + url('http://fonts.com/font2.ttf?v1.1.3') format('truetype'), + local('Ubuntu'); font-weight: normal; font-style: normal; } @font-face { font-family: 'Font3'; - src: url('data:font/woff2;base64,AAA') format('woff2'), local('Ubuntu'); + src: + url('data:font/woff2;base64,AAA') format('woff2'), + local('Ubuntu'); font-weight: normal; font-style: normal; } diff --git a/spec/resources/fonts/web-fonts/with-query.css b/spec/resources/fonts/web-fonts/with-query.css index 1ab9fccd..cacea53f 100644 --- a/spec/resources/fonts/web-fonts/with-query.css +++ b/spec/resources/fonts/web-fonts/with-query.css @@ -1,6 +1,8 @@ @font-face { font-family: 'Font1'; - src: url('http://fonts.com/font1.woff2?v=4.3.0') format('woff2'), local(Arial); + src: + url('http://fonts.com/font1.woff2?v=4.3.0') format('woff2'), + local(Arial); font-weight: normal; font-style: normal; } From 8285e487c18b57aa7d57a57397115a444859e23c Mon Sep 17 00:00:00 2001 From: Marc Brooks Date: Fri, 9 Feb 2024 16:18:04 -0600 Subject: [PATCH 3/3] Add ability to adjust nodes before/after cloning children --- dist/dom-to-image-more.min.js | 4 +- dist/dom-to-image-more.min.js.map | 2 +- package.json | 2 +- spec/dom-to-image-more.spec.js | 24 +++++++- spec/resources/background-clip/control-image | 2 +- spec/resources/defaultStyles/control-image | 2 +- spec/resources/eventing/control-image | 1 + spec/resources/eventing/dom-node.html | 1 + src/dom-to-image-more.js | 61 +++++++++++++++----- 9 files changed, 78 insertions(+), 21 deletions(-) create mode 100644 spec/resources/eventing/control-image create mode 100644 spec/resources/eventing/dom-node.html diff --git a/dist/dom-to-image-more.min.js b/dist/dom-to-image-more.min.js index 6599c086..5f0f9414 100644 --- a/dist/dom-to-image-more.min.js +++ b/dist/dom-to-image-more.min.js @@ -1,3 +1,3 @@ -/*! dom-to-image-more 02-10-2023 */ -!function(s){"use strict";const f=function(){let e=0;return{escape:function(e){return e.replace(/([.*+?^${}()|[]\/\\])/g,"\\$1")},isDataUrl:function(e){return-1!==e.search(/^(data:)/)},canvasToBlob:function(t){if(t.toBlob)return new Promise(function(e){t.toBlob(e)});return function(r){return new Promise(function(e){var t=l(r.toDataURL().split(",")[1]),n=t.length,o=new Uint8Array(n);for(let e=0;et.style.removeProperty(e)),["left","right","top","bottom"].forEach(e=>{t.style.getPropertyValue(e)&&t.style.setProperty(e,"0px")})))}e(c,l)}function t(){const u=f.uid();function t(r){const i=m(c,r),s=i.getPropertyValue("content");if(""!==s&&"none"!==s){const t=l.getAttribute("class")||"",n=(l.setAttribute("class",t+" "+u),document.createElement("style"));function e(){const e=`.${u}:`+r,t=(i.cssText?n:o)();return document.createTextNode(e+`{${t}}`);function n(){return`${i.cssText} content: ${s};`}function o(){const e=f.asArray(i).map(t).join("; ");return e+";";function t(e){const t=i.getPropertyValue(e),n=i.getPropertyPriority(e)?" !important":"";return e+": "+t+n}}}n.appendChild(e()),l.appendChild(n)}}[":before",":after"].forEach(function(e){t(e)})}function n(){f.isHTMLTextAreaElement(c)&&(l.innerHTML=c.value),f.isHTMLInputElement(c)&&l.setAttribute("value",c.value)}function o(){f.isSVGElement(l)&&(l.setAttribute("xmlns","http://www.w3.org/2000/svg"),f.isSVGRectElement(l))&&["width","height"].forEach(function(e){const t=l.getAttribute(e);t&&l.style.setProperty(e,t)})}}}(e,r,null,t)}).then(p).then(g).then(function(t){r.bgcolor&&(t.style.backgroundColor=r.bgcolor);r.width&&(t.style.width=r.width+"px");r.height&&(t.style.height=r.height+"px");r.style&&Object.keys(r.style).forEach(function(e){t.style[e]=r.style[e]});let e=null;"function"==typeof r.onclone&&(e=r.onclone(t));return Promise.resolve(e).then(function(){return t})}).then(function(e){let n=r.width||f.width(e),o=r.height||f.height(e);return Promise.resolve(e).then(function(e){return e.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),(new XMLSerializer).serializeToString(e)}).then(f.escapeXhtml).then(function(e){var t=(f.isDimensionMissing(n)?' width="100%"':` width="${n}"`)+(f.isDimensionMissing(o)?' height="100%"':` height="${o}"`);return`${e}`}).then(function(e){return"data:image/svg+xml;charset=utf-8,"+e})}).then(function(e){for(;0{w=null,E={}},2e4)}(),e})}function i(r,i){return d(r,i=i||{}).then(f.makeImage).then(function(e){var t="number"!=typeof i.scale?1:i.scale,n=function(e,t){let n=i.width||f.width(e),o=i.height||f.height(e);f.isDimensionMissing(n)&&(n=f.isDimensionMissing(o)?300:2*o);f.isDimensionMissing(o)&&(o=n/2);e=document.createElement("canvas");e.width=n*t,e.height=o*t,i.bgcolor&&((t=e.getContext("2d")).fillStyle=i.bgcolor,t.fillRect(0,0,e.width,e.height));return e}(r,t),o=n.getContext("2d");return o.msImageSmoothingEnabled=!1,o.imageSmoothingEnabled=!1,e&&(o.scale(t,t),o.drawImage(e,0,0)),n})}let h=null;function p(n){return e.resolveAll().then(function(e){var t;return""!==e&&(t=document.createElement("style"),n.appendChild(t),t.appendChild(document.createTextNode(e))),n})}function g(e){return n.inlineAll(e).then(function(){return e})}function y(e,t,i,s,n){const u=c.impl.options.copyDefaultStyles?function(t,e){var e=function(e){var t=[];do{if(e.nodeType===a){var n=e.tagName;if(t.push(n),v.includes(n))break}}while(e=e.parentNode,e);return t}(e),n=function(e){return("relaxed"!==t.styleCaching?e:e.filter((e,t,n)=>0===t||t===n.length-1)).join(">")}(e);if(E[n])return E[n];var o=function(){if(h)return h.contentWindow;var e=document.characterSet||"UTF-8",t=document.doctype,t=t?(`":"";return(h=document.createElement("iframe")).id="domtoimage-sandbox-"+f.uid(),h.style.visibility="hidden",h.style.position="fixed",document.body.appendChild(h),function(e,t,n,o){try{return e.contentWindow.document.write(t+`${o}`),e.contentWindow}catch(e){}var r=document.createElement("meta");r.setAttribute("charset",n);try{var i=document.implementation.createHTMLDocument(o),s=(i.head.appendChild(r),t+i.documentElement.outerHTML);return e.setAttribute("srcdoc",s),e.contentWindow}catch(e){}return e.contentDocument.head.appendChild(r),e.contentDocument.title=o,e.contentWindow}(h,t,e,"domtoimage-sandbox");function n(e){var t;return e?((t=document.createElement("div")).innerText=e,t.innerHTML):""}}(),e=function(e,t){let n=e.body;do{var o=t.pop(),o=e.createElement(o);n.appendChild(o),n=o}while(0t.style.removeProperty(e)),["left","right","top","bottom"].forEach(e=>{t.style.getPropertyValue(e)&&t.style.setProperty(e,"0px")})))}e(c,l)}function t(){const u=d.uid();function t(r){const i=m(c,r),s=i.getPropertyValue("content");if(""!==s&&"none"!==s){const t=l.getAttribute("class")||"",n=(l.setAttribute("class",t+" "+u),document.createElement("style"));function e(){const e=`.${u}:`+r,t=(i.cssText?n:o)();return document.createTextNode(e+`{${t}}`);function n(){return`${i.cssText} content: ${s};`}function o(){const e=d.asArray(i).map(t).join("; ");return e+";";function t(e){const t=i.getPropertyValue(e),n=i.getPropertyPriority(e)?" !important":"";return e+": "+t+n}}}n.appendChild(e()),l.appendChild(n)}}[":before",":after"].forEach(function(e){t(e)})}function n(){d.isHTMLTextAreaElement(c)&&(l.innerHTML=c.value),d.isHTMLInputElement(c)&&l.setAttribute("value",c.value)}function o(){d.isSVGElement(l)&&(l.setAttribute("xmlns","http://www.w3.org/2000/svg"),d.isSVGRectElement(l))&&["width","height"].forEach(function(e){const t=l.getAttribute(e);t&&l.style.setProperty(e,t)})}}}(e,r,null,t)}).then(p).then(g).then(function(t){r.bgcolor&&(t.style.backgroundColor=r.bgcolor);r.width&&(t.style.width=r.width+"px");r.height&&(t.style.height=r.height+"px");r.style&&Object.keys(r.style).forEach(function(e){t.style[e]=r.style[e]});let e=null;"function"==typeof r.onclone&&(e=r.onclone(t));return Promise.resolve(e).then(function(){return t})}).then(function(e){let n=r.width||d.width(e),o=r.height||d.height(e);return Promise.resolve(e).then(function(e){return e.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),(new XMLSerializer).serializeToString(e)}).then(d.escapeXhtml).then(function(e){var t=(d.isDimensionMissing(n)?' width="100%"':` width="${n}"`)+(d.isDimensionMissing(o)?' height="100%"':` height="${o}"`);return`${e}`}).then(function(e){return"data:image/svg+xml;charset=utf-8,"+e})}).then(function(e){for(;0{w=null,v={}},2e4)}(),e})}function i(r,i){return f(r,i=i||{}).then(d.makeImage).then(function(e){var t="number"!=typeof i.scale?1:i.scale,n=function(e,t){let n=i.width||d.width(e),o=i.height||d.height(e);d.isDimensionMissing(n)&&(n=d.isDimensionMissing(o)?300:2*o);d.isDimensionMissing(o)&&(o=n/2);e=document.createElement("canvas");e.width=n*t,e.height=o*t,i.bgcolor&&((t=e.getContext("2d")).fillStyle=i.bgcolor,t.fillRect(0,0,e.width,e.height));return e}(r,t),o=n.getContext("2d");return o.msImageSmoothingEnabled=!1,o.imageSmoothingEnabled=!1,e&&(o.scale(t,t),o.drawImage(e,0,0)),n})}let h=null;function p(n){return e.resolveAll().then(function(e){var t;return""!==e&&(t=document.createElement("style"),n.appendChild(t),t.appendChild(document.createTextNode(e))),n})}function g(e){return n.inlineAll(e).then(function(){return e})}function y(e,t,i,s,n){const u=c.impl.options.copyDefaultStyles?function(t,e){var e=function(e){var t=[];do{if(e.nodeType===a){var n=e.tagName;if(t.push(n),E.includes(n))break}}while(e=e.parentNode,e);return t}(e),n=function(e){return("relaxed"!==t.styleCaching?e:e.filter((e,t,n)=>0===t||t===n.length-1)).join(">")}(e);if(v[n])return v[n];var o=function(){if(h)return h.contentWindow;var e=document.characterSet||"UTF-8",t=document.doctype,t=t?(`":"";return(h=document.createElement("iframe")).id="domtoimage-sandbox-"+d.uid(),h.style.visibility="hidden",h.style.position="fixed",document.body.appendChild(h),function(e,t,n,o){try{return e.contentWindow.document.write(t+`${o}`),e.contentWindow}catch(e){}var r=document.createElement("meta");r.setAttribute("charset",n);try{var i=document.implementation.createHTMLDocument(o),s=(i.head.appendChild(r),t+i.documentElement.outerHTML);return e.setAttribute("srcdoc",s),e.contentWindow}catch(e){}return e.contentDocument.head.appendChild(r),e.contentDocument.title=o,e.contentWindow}(h,t,e,"domtoimage-sandbox");function n(e){var t;return e?((t=document.createElement("div")).innerText=e,t.innerHTML):""}}(),e=function(e,t){let n=e.body;do{var o=t.pop(),o=e.createElement(o);n.appendChild(o),n=o}while(0 renderToPng(domNode(), { adjustClonedNode: oncloned })) + .then(check) + .then(done) + .catch(done); + }); + it('should render to svg', function (done) { loadTestPage( 'small/dom-node.html', diff --git a/spec/resources/background-clip/control-image b/spec/resources/background-clip/control-image index cc1ac504..d0f8caae 100644 --- a/spec/resources/background-clip/control-image +++ b/spec/resources/background-clip/control-image @@ -1 +1 @@ -data:image/png;base64,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CBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0ChgQBpbk5kAAQIBAgYkoAQRCBAg0CjwXyzJlLOUQXmIAAAAAElFTkSuQmCC \ No newline at end of file +data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQCAYAAACAvzbMAAAAAXNSR0IArs4c6QAAIABJREFUeF7t3XewJGXVB+B3iQuiiCBhUQTJ5pwtc84555wzljlhzjlUqaWWltkyW+ZQZtEqFZEclCAZE2BgvzpN9a3e3p6Zu+zluN/hmX9g787M6fOce99fv91zYdXatWvXNg8CBAgQILCBAqvmBcisbFm1atUGlvF0AgQIEKgmMBkg4+A4//zz28c+9rH20Y9+tL3uda9rN7nJTWY6/H8Il7/97W/t85//fNfTc57znHanO90pda6f+9zn2u9///u21VZbtRe84AVd7d58pfw2tscvfelL7cMf/nC77W1v257ylKesc4xDrJU63tQBKEaAwIoIrDrooIPWnnXWWW3LLbfs3vDwww9v2267bbviFa/Y/fnss89ut7zlLdtjH/vYdotb3KK95jWvWS9AphaRjVlY/v3vf3cL17Of/ex2j3vcY0UanXqTu971rt3ieMc73jEtEH/wgx+0L3/5y+1Nb3pT+9CHPtQe9ahHXay1N6bHpz/96W3//fdvT37ykxfOYGPmvfDNPYEAgU1SYNXBBx+89kUvetHSGfBDHvKQdrWrXW3pzPiEE05o3/72t7uF7na3u1171ate1W50oxut18ysBeSiLiz3v//923Of+9x2gxvc4GKDu9e97tWe8IQntDvc4Q4La0QfZ5xxRjvttNPaAQccsPD5s57whje8oW2zzTbtqU996rLeY+h3UepvaI/Dg4oA32+//Tqj5T4u6ryX+/6eR4DApiOw6pBDDll77Wtfe+mI4pLKPvvs0x796Ed3X4vdwB/+8Id2jWtco1tIYuG7+tWv3sYLxdTCMeuyzLxFpn9NXCp7xCMe0XbbbbfuODZ2YZo6lmc+85ntvve9b7vpTW86cyLDy3mf+MQn2po1a9qtbnWr7njGl/pmHePweW9961vbrrvu2h70oAct+7ugf9+Pf/zjS/XjxVP1x1971rOe1e5zn/u0m93sZpP1ZvUQNd/4xje2PffcszNa7iPebznfG/37uc+2XFnPI7DpCXT3QIY/xO9+97u7y1d3u9vd1jnaeM5rX/vabvfxl7/8pZ144olthx126BaXy1zmMt1zjz/++PaTn/ykbb311u2f//xnd8lrjz32aH/84x/bN7/5zS6E4lLZb37zm3a/+92vXe5yl2vf+c53Wlyv/9e//tV23HHHbpezxRZbtLgGH5eW4j7BkUce2X7+8593Z+5xuS3ed999911P89xzz22f/vSn22Uve9kW/7755pu3e97znkuX54YviH7e9ra3tdvc5jbdccUjLtd961vfahdccEG3CMbrb3/727ftttuuHXLIIe373/9+997bb799i0tDq1evXm+x/NWvftUOO+yw7jLgeeed14Vt//7f/e53229/+9vueHbeeed24IEHtqte9apLYRQ1I7C/9rWvtf/85z+dSTwe+MAHtl//+tfte9/73lL9m9/85t2x/ulPf+ouKd74xjfuev7Rj37UzSeOb5dddul6vPWtb710DMcdd9zkjHqbfvEPnwisS13qUt08jj766LbZZpu1u9zlLu3KV77yOl7x9b///e9dr9e5znVmzjuO55e//GU76qijuvcM5zvf+c5L3z9TPx4be+Kw6f3IOSICdQTWC5BYuGMh72+Ux0LSB8ynPvWp7pJSnJXG4haXtiJsrnnNa3aBEQtf3LuIRTbCJIIigigWiwiKeMRzTz/99G5xi0UpFr1YDKPG17/+9W5xiktE/cIRi0zcdI5giaD661//2s4555wumMaLS9zsjwV177337mp94Qtf6Ba0ON7xI+rFjfTYffULYoRcHFe/w4rjj0tWESLx+OIXv9gt+nFZZ/yIYzn55JPbT3/6025RjBCN3sIkdjixk4qaESLhE8c1DO6+lwjb8Ol3DL/73e+Wjifqh01fP54XIRIhGIEUj7iHFUEbPvHoe9xrr726GX3lK1/pZhThH5cnI5j6GQ1DJI4tZhbhed3rXrcLjx//+MctjOP18fjGN77R4n3jeOK9495OzCm+f6bmHSET9SKE4nviF7/4RWcUJwTzgkKI1FlwdFJLYNUFF1ywzu+B/OHIo9p2cRN9zYULXjz6f/7usD+2Pa6we9v+0pfuvn7CSSd1/9xjzZp22hlntjPOPrsduM+Fi3ecQcd77bPXnm3b1avbUccd37a71LZtt513Xnq/Qw8/oq3ZdZe2w/bbdwvIn08+pQumK19pj+458bUIkN8ffkS74m67tctuf+FOJx7xd/Mum8Vzjjz2uO41O++44zpT6/s59Igj25pddu7qn3veee2IY45tB+y9d9tqqws/UHDe+ed377HvXnu21Vtv3fWz6+V3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 \ No newline at end of file diff --git a/spec/resources/defaultStyles/control-image b/spec/resources/defaultStyles/control-image index 5718ef69..ccc56676 100644 --- a/spec/resources/defaultStyles/control-image +++ b/spec/resources/defaultStyles/control-image @@ -1 +1 @@ -data:image/png;base64,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 \ No newline at end of file +data:image/png;base64,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 \ No newline at end of file diff --git a/spec/resources/eventing/control-image b/spec/resources/eventing/control-image new file mode 100644 index 00000000..11ce76bb --- /dev/null +++ b/spec/resources/eventing/control-image @@ -0,0 +1 @@ +data:image/png;base64,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gAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAgIemBETyBAgAABAoLuBggQIECAQEBA0AMjegIBAgQIEBB0N0CAAAECBAICgh4Y0RMIECBAgICguwECBAgQIBAQEPTAiJ5AgAABAgQE3Q0QIECAAIGAgKAHRvQEAgQIECAg6G6AAAECBAgEBAQ9MKInECBAgAABQXcDBAgQIEAgICDogRE9gQABAgQICLobIECAAAECAQFBD4zoCQQIECBAQNDdAAECBAgQCAj8ArcjSkn3E5VoAAAAAElFTkSuQmCC \ No newline at end of file diff --git a/spec/resources/eventing/dom-node.html b/spec/resources/eventing/dom-node.html new file mode 100644 index 00000000..43614c75 --- /dev/null +++ b/spec/resources/eventing/dom-node.html @@ -0,0 +1 @@ +
diff --git a/src/dom-to-image-more.js b/src/dom-to-image-more.js index a72167b3..c3477fc0 100644 --- a/src/dom-to-image-more.js +++ b/src/dom-to-image-more.js @@ -22,6 +22,8 @@ styleCaching: 'strict', // Default cors config is to request the image address directly corsImg: undefined, + // Callback for adjustClonedNode eventing (to allow adjusting clone's properties) + adjustClonedNode: undefined, }; const domtoimage = { @@ -83,6 +85,7 @@ * - @param {Enumerator} method - get, post * - @param {Object} headers - eg: { "Content-Type", "application/json;charset=UTF-8" } * - @param {Object} data - post payload + * @param {Function} options.adjustClonedNode - callback for adjustClonedNode eventing (to allow adjusting clone's properties) * @return {Promise} - A promise that is fulfilled with a SVG image data URL * */ function toSvg(node, options) { @@ -266,7 +269,7 @@ domtoimage.impl.options.cacheBust = options.cacheBust; } - if (typeof(options.corsImg) === 'undefined') { + if (typeof options.corsImg === 'undefined') { domtoimage.impl.options.corsImg = defaultOptions.corsImg; } else { domtoimage.impl.options.corsImg = options.corsImg; @@ -352,9 +355,11 @@ return Promise.resolve(node) .then(makeNodeCopy) + .then(adjustCloneBefore) .then(function (clone) { return cloneChildren(clone, getParentOfChildren(node)); }) + .then(adjustCloneAfter) .then(function (clone) { return processClone(clone, node); }); @@ -366,6 +371,20 @@ return original.cloneNode(false); } + function adjustCloneBefore(clone) { + if (options.adjustClonedNode) { + options.adjustClonedNode(node, clone, false); + } + return Promise.resolve(clone); + } + + function adjustCloneAfter(clone) { + if (options.adjustClonedNode) { + options.adjustClonedNode(node, clone, true); + } + return Promise.resolve(clone); + } + function getParentOfChildren(original) { if (util.isElementHostForOpenShadowRoot(original)) { return original.shadowRoot; // jump "down" to #shadow-root @@ -804,15 +823,27 @@ request.withCredentials = true; } - if (domtoimage.impl.options.corsImg - && url.indexOf('http') === 0 - && url.indexOf(window.location.origin) === -1) { - const method = (domtoimage.impl.options.corsImg.method || 'GET').toUpperCase() === 'POST' - ? 'POST' - : 'GET'; + if ( + domtoimage.impl.options.corsImg && + url.indexOf('http') === 0 && + url.indexOf(window.location.origin) === -1 + ) { + const method = + ( + domtoimage.impl.options.corsImg.method || 'GET' + ).toUpperCase() === 'POST' + ? 'POST' + : 'GET'; + + request.open( + method, + (domtoimage.impl.options.corsImg.url || '').replace( + '#{cors}', + url + ), + true + ); - request.open(method, (domtoimage.impl.options.corsImg.url || '').replace('#{cors}', url), true); - let isJson = false; const headers = domtoimage.impl.options.corsImg.headers || {}; Object.keys(headers).forEach(function (key) { @@ -822,10 +853,12 @@ request.setRequestHeader(key, headers[key]); }); - const corsData = handleJson(domtoimage.impl.options.corsImg.data || ''); - + const corsData = handleJson( + domtoimage.impl.options.corsImg.data || '' + ); + Object.keys(corsData).forEach(function (key) { - if (typeof(corsData[key]) === 'string') { + if (typeof corsData[key] === 'string') { corsData[key] = corsData[key].replace('#{cors}', url); } }); @@ -1371,8 +1404,8 @@ const docType = document.doctype; const docTypeDeclaration = docType ? `' + docType.publicId + )} ${escapeHTML(docType.systemId)}`.trim() + '>' : ''; // Create a hidden sandbox