diff --git a/package-lock.json b/package-lock.json index 1655227..f93a2e6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,566 +1,5 @@ { - "name": "@financial-times/sass", - "version": "1", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@financial-times/sass-linux-ia32": { - "version": "1.30.5", - "resolved": "https://registry.npmjs.org/@financial-times/sass-linux-ia32/-/sass-linux-ia32-1.30.5.tgz", - "integrity": "sha512-UEqfCmhK0VjCDEVEvC/LFoEI7MBaWUoexm0veAeC0sQsEQ4ZG4W1iC24jJ36tZeMnpaY8tsnkQ0nh81yITK8EA==", - "optional": true - }, - "@financial-times/sass-linux-x64": { - "version": "1.30.5", - "resolved": "https://registry.npmjs.org/@financial-times/sass-linux-x64/-/sass-linux-x64-1.30.5.tgz", - "integrity": "sha512-9Zuf9vNLyC4l34jjTF6QZRlX/BMQhrIEm+H1UQethC8K7j+nF9RxgSS0vHN1R+evdzXei+Q/HxIZkPzCyErpRg==", - "optional": true - }, - "@financial-times/sass-macos-x64": { - "version": "1.30.5", - "resolved": "https://registry.npmjs.org/@financial-times/sass-macos-x64/-/sass-macos-x64-1.30.5.tgz", - "integrity": "sha512-Tas2x4uJB/xAUbc8OkfMffnuBsO8F3PFmTOQozaWOXV2EP+BUEEgjlgDXrhTaPs8a7txO4EG491i4ejIKOOVpg==", - "optional": true - }, - "@financial-times/sass-windows-ia32": { - "version": "1.30.5", - "resolved": "https://registry.npmjs.org/@financial-times/sass-windows-ia32/-/sass-windows-ia32-1.30.5.tgz", - "integrity": "sha512-xbFfRK64KKmH/W3j3gMUy/4uTAeVYpOiKg9c3KCvnsbNKXYcdlAkgxQtdaLQchUvHoFYLsqLxFKfSZRLkgNVUw==", - "optional": true - }, - "@financial-times/sass-windows-x64": { - "version": "1.30.5", - "resolved": "https://registry.npmjs.org/@financial-times/sass-windows-x64/-/sass-windows-x64-1.30.5.tgz", - "integrity": "sha512-Vhcs6Ee/LwbljYOKxyKBwwvImQMyCp9Vb+H0U+K//oaPuRPt4M+OteB10+SbeeXyMw8yUvPFepay1z6/BvMLNQ==", - "optional": true - }, - "axios": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz", - "integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==", - "dev": true, - "requires": { - "follow-redirects": "1.5.10" - } - }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" - }, - "bl": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", - "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", - "requires": { - "readable-stream": "^2.3.5", - "safe-buffer": "^5.1.1" - } - }, - "buffer": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.5.0.tgz", - "integrity": "sha512-9FTEDjLjwoAkEwyMGDjYJQN2gfRgOKBKRfiglhvibGbpeeU/pQn1bJxQqm32OD/AIeEuHxU9roxXxg34Byp/Ww==", - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, - "buffer-alloc": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", - "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" - } - }, - "buffer-alloc-unsafe": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" - }, - "buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" - }, - "commander": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", - "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", - "requires": { - "graceful-readlink": ">= 1.0.0" - } - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "cross-spawn": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz", - "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "requires": { - "ms": "2.0.0" - } - }, - "decompress": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.0.tgz", - "integrity": "sha1-eu3YVCflqS2s/lVnSnxQXpbQH50=", - "dev": true, - "requires": { - "decompress-tar": "^4.0.0", - "decompress-tarbz2": "^4.0.0", - "decompress-targz": "^4.0.0", - "decompress-unzip": "^4.0.1", - "graceful-fs": "^4.1.10", - "make-dir": "^1.0.0", - "pify": "^2.3.0", - "strip-dirs": "^2.0.0" - } - }, - "decompress-tar": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", - "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", - "requires": { - "file-type": "^5.2.0", - "is-stream": "^1.1.0", - "tar-stream": "^1.5.2" - } - }, - "decompress-tarbz2": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", - "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", - "requires": { - "decompress-tar": "^4.1.0", - "file-type": "^6.1.0", - "is-stream": "^1.1.0", - "seek-bzip": "^1.0.5", - "unbzip2-stream": "^1.0.9" - }, - "dependencies": { - "file-type": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", - "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==" - } - } - }, - "decompress-targz": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", - "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", - "requires": { - "decompress-tar": "^4.1.1", - "file-type": "^5.2.0", - "is-stream": "^1.1.0" - } - }, - "decompress-unzip": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", - "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", - "requires": { - "file-type": "^3.8.0", - "get-stream": "^2.2.0", - "pify": "^2.3.0", - "yauzl": "^2.4.2" - }, - "dependencies": { - "file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" - } - } - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "requires": { - "once": "^1.4.0" - } - }, - "execa": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.0.0.tgz", - "integrity": "sha512-JbDUxwV3BoT5ZVXQrSVbAiaXhXUkIwvbhPIwZ0N13kX+5yCzOhUNdocxB/UQRuYOHRYYwAxKYwJYc0T4D12pDA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "dependencies": { - "get-stream": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", - "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true - } - } - }, - "fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", - "requires": { - "pend": "~1.2.0" - } - }, - "file-type": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", - "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=" - }, - "follow-redirects": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", - "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", - "requires": { - "debug": "=3.1.0" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, - "get-stream": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", - "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", - "requires": { - "object-assign": "^4.0.1", - "pinkie-promise": "^2.0.0" - } - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==" - }, - "graceful-readlink": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" - }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==" - }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "is-natural-number": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", - "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=" - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - } - } - }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "requires": { - "path-key": "^3.0.0" - } - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" - }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "requires": { - "pinkie": "^2.0.0" - } - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } - } - }, - "safe-buffer": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", - "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" - }, - "seek-bzip": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", - "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", - "requires": { - "commander": "~2.8.1" - } - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - } - } - }, - "strip-dirs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", - "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", - "requires": { - "is-natural-number": "^4.0.1" - } - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==" - }, - "tar-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz", - "integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==", - "requires": { - "bl": "^1.0.0", - "buffer-alloc": "^1.2.0", - "end-of-stream": "^1.0.0", - "fs-constants": "^1.0.0", - "readable-stream": "^2.3.0", - "to-buffer": "^1.1.1", - "xtend": "^4.0.0" - } - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "to-buffer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", - "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" - }, - "unbzip2-stream": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.3.3.tgz", - "integrity": "sha512-fUlAF7U9Ah1Q6EieQ4x4zLNejrRvDWUYmxXUpN3uziFYCHapjWFaCAnreY9bGgxzaMCFAPPpYNng57CypwJVhg==", - "requires": { - "buffer": "^5.2.1", - "through": "^2.3.8" - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "requires": { - "isexe": "^2.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" - }, - "yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - } - } + "name": "@financial-times/sass", + "version": "1", + "lockfileVersion": 1 } diff --git a/package.json b/package.json index 3fd9c8d..93055e7 100644 --- a/package.json +++ b/package.json @@ -6,11 +6,11 @@ "repository": "Financial-times/sass", "bin": "sass.bat", "optionalDependencies": { - "@financial-times/sass-linux-ia32": "*", - "@financial-times/sass-linux-x64": "*", - "@financial-times/sass-macos-x64": "*", - "@financial-times/sass-windows-ia32": "*", - "@financial-times/sass-windows-x64": "*" + "@financial-times/sass-linux-ia32": "file:./sass-linux-ia32", + "@financial-times/sass-linux-x64": "file:./sass-linux-x64", + "@financial-times/sass-macos-x64": "file:./sass-macos-x64", + "@financial-times/sass-windows-ia32": "file:./sass-windows-ia32", + "@financial-times/sass-windows-x64": "file:./sass-windows-x64" }, "scripts": { "postinstall": "node ./postinstall.js", diff --git a/postinstall.js b/postinstall.js index 4fb830d..3be448a 100644 --- a/postinstall.js +++ b/postinstall.js @@ -4,65 +4,69 @@ const fs = require("fs"); const path = require("path"); let platformSpecificPackagePath; -if (process.platform === "win32" && process.arch === "x64") { - platformSpecificPackagePath = require.resolve("@financial-times/sass-windows-x64"); -} else if (process.platform === "win32" && process.arch === "ia32") { - platformSpecificPackagePath = require.resolve("@financial-times/sass-windows-ia32"); -} else if (process.platform === "darwin") { - platformSpecificPackagePath = require.resolve("@financial-times/sass-macos-x64"); -} else if (process.platform === "linux" && process.arch === "x64") { - platformSpecificPackagePath = require.resolve("@financial-times/sass-linux-x64"); -} else if (process.platform === "linux" && process.arch === "ia32") { - platformSpecificPackagePath = require.resolve("@financial-times/sass-linux-ia32"); +const windows64bit = process.platform === "win32" && process.arch === "x64"; +const windows32bit = process.platform === "win32" && process.arch === "ia32"; +const mac = process.platform === "darwin"; +const linux64bit = process.platform === "linux" && process.arch === "x64"; +const linux32bit = process.platform === "linux" && process.arch === "ia32"; + +if (windows64bit) { + platformSpecificPackagePath = require.resolve( + "@financial-times/sass-windows-x64" + ); +} else if (windows32bit) { + platformSpecificPackagePath = require.resolve( + "@financial-times/sass-windows-ia32" + ); +} else if (mac) { + platformSpecificPackagePath = require.resolve( + "@financial-times/sass-macos-x64" + ); +} else if (linux64bit) { + platformSpecificPackagePath = require.resolve( + "@financial-times/sass-linux-x64" + ); +} else if (linux32bit) { + platformSpecificPackagePath = require.resolve( + "@financial-times/sass-linux-ia32" + ); } else { throw new Error( "@financial-times/sass does not have a precompiled binary for the platform/architecture you are using. Please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues" ); } -const platformSpecificSassPath = path.join(path.dirname(platformSpecificPackagePath), 'dart-sass') - -// We need to remove the sass entrypoint file if it exists already. -if (fs.existsSync(path.join(__dirname, './sass.bat'))) { - fs.unlinkSync(path.join(__dirname, './sass.bat')); -} +const platformSpecificSassPath = path.join( + path.dirname(platformSpecificPackagePath), + "dart-sass" +); // Create our own sass entrypoint which uses absolute paths to the dartvm and snapshot. // This will ensure it works when symlinked to, which the entrypoint file in dart-sass // does not support on macos. -if (process.platform === "win32") { - fs.writeFileSync( - path.join(__dirname, "sass.bat"), - ` - @echo off - REM This script drives the standalone dart-sass package, which bundles together a - REM Dart executable and a snapshot of dart-sass. - - set SCRIPTPATH=%~dp0 - set arguments=%* - "${path.join(platformSpecificSassPath, "/src/dart.exe")}" "${path.join( - platformSpecificSassPath, - "/src/sass.dart.snapshot" - )}" %arguments% -`, - { - encoding: "utf-8", - mode: 0o777 - } - ); -} else { - fs.writeFileSync( - path.join(__dirname, "sass.bat"), - ` +const windowsEntrypoint = ` +@echo off +REM This script drives the standalone dart-sass package, which bundles together a +REM Dart executable and a snapshot of dart-sass. + +set SCRIPTPATH=%~dp0 +set arguments=%* +"${path.join(platformSpecificSassPath, "/src/dart.exe")}" "${path.join( + platformSpecificSassPath, + "/src/sass.dart.snapshot" +)}" %arguments%`; + +const linuxAndMacEntrypoint = ` #!/bin/sh exec "${path.join(platformSpecificSassPath, "/src/dart")}" "${path.join( - platformSpecificSassPath, - "/src/sass.dart.snapshot" - )}" "$@" -`, - { - encoding: "utf-8", - mode: 0o777 - } - ); -} + platformSpecificSassPath, + "/src/sass.dart.snapshot" +)}" "$@"`; + +const windows = windows64bit || windows32bit; +const entrypoint = windows ? windowsEntrypoint : linuxAndMacEntrypoint; + +fs.writeFileSync(path.join(__dirname, "sass.bat"), entrypoint, { + encoding: "utf-8", + mode: 0o777 +}); diff --git a/sass-linux-ia32/package.json b/sass-linux-ia32/package.json index ab2b667..7bb5331 100644 --- a/sass-linux-ia32/package.json +++ b/sass-linux-ia32/package.json @@ -12,5 +12,8 @@ ], "cpu": [ "ia32" - ] + ], + "scripts": { + "postinstall": "node ./postinstall.js" + } } diff --git a/sass-linux-ia32/postinstall.js b/sass-linux-ia32/postinstall.js new file mode 100644 index 0000000..da3a5af --- /dev/null +++ b/sass-linux-ia32/postinstall.js @@ -0,0 +1,23 @@ +"use strict"; + +const { name, os, cpu } = require("./package.json"); + +if (os && !os.includes(process.platform)) { + throw new Error( + `${name} does not support the platform you are using. You are using: "${ + process.platform + }" and ${name} supports: ${os.join( + "," + )}. If you think this is a mistake, please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues` + ); +} + +if (cpu && !cpu.includes(process.arch)) { + throw new Error( + `${name} does not support the cpu you are using. You are using: "${ + process.arch + }" and ${name} supports: ${cpu.join( + "," + )}. If you think this is a mistake, please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues` + ); +} diff --git a/sass-linux-x64/package.json b/sass-linux-x64/package.json index 4cf4212..07b6905 100644 --- a/sass-linux-x64/package.json +++ b/sass-linux-x64/package.json @@ -12,5 +12,8 @@ ], "cpu": [ "x64" - ] + ], + "scripts": { + "postinstall": "node ./postinstall.js" + } } diff --git a/sass-linux-x64/postinstall.js b/sass-linux-x64/postinstall.js new file mode 100644 index 0000000..da3a5af --- /dev/null +++ b/sass-linux-x64/postinstall.js @@ -0,0 +1,23 @@ +"use strict"; + +const { name, os, cpu } = require("./package.json"); + +if (os && !os.includes(process.platform)) { + throw new Error( + `${name} does not support the platform you are using. You are using: "${ + process.platform + }" and ${name} supports: ${os.join( + "," + )}. If you think this is a mistake, please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues` + ); +} + +if (cpu && !cpu.includes(process.arch)) { + throw new Error( + `${name} does not support the cpu you are using. You are using: "${ + process.arch + }" and ${name} supports: ${cpu.join( + "," + )}. If you think this is a mistake, please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues` + ); +} diff --git a/sass-macos-x64/package.json b/sass-macos-x64/package.json index 574c5ed..6319dde 100644 --- a/sass-macos-x64/package.json +++ b/sass-macos-x64/package.json @@ -9,5 +9,8 @@ }, "os": [ "darwin" - ] + ], + "scripts": { + "postinstall": "node ./postinstall.js" + } } diff --git a/sass-macos-x64/postinstall.js b/sass-macos-x64/postinstall.js new file mode 100644 index 0000000..da3a5af --- /dev/null +++ b/sass-macos-x64/postinstall.js @@ -0,0 +1,23 @@ +"use strict"; + +const { name, os, cpu } = require("./package.json"); + +if (os && !os.includes(process.platform)) { + throw new Error( + `${name} does not support the platform you are using. You are using: "${ + process.platform + }" and ${name} supports: ${os.join( + "," + )}. If you think this is a mistake, please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues` + ); +} + +if (cpu && !cpu.includes(process.arch)) { + throw new Error( + `${name} does not support the cpu you are using. You are using: "${ + process.arch + }" and ${name} supports: ${cpu.join( + "," + )}. If you think this is a mistake, please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues` + ); +} diff --git a/sass-windows-ia32/package.json b/sass-windows-ia32/package.json index b197791..76b368f 100644 --- a/sass-windows-ia32/package.json +++ b/sass-windows-ia32/package.json @@ -12,5 +12,8 @@ ], "cpu": [ "ia32" - ] + ], + "scripts": { + "postinstall": "node ./postinstall.js" + } } diff --git a/sass-windows-ia32/postinstall.js b/sass-windows-ia32/postinstall.js new file mode 100644 index 0000000..da3a5af --- /dev/null +++ b/sass-windows-ia32/postinstall.js @@ -0,0 +1,23 @@ +"use strict"; + +const { name, os, cpu } = require("./package.json"); + +if (os && !os.includes(process.platform)) { + throw new Error( + `${name} does not support the platform you are using. You are using: "${ + process.platform + }" and ${name} supports: ${os.join( + "," + )}. If you think this is a mistake, please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues` + ); +} + +if (cpu && !cpu.includes(process.arch)) { + throw new Error( + `${name} does not support the cpu you are using. You are using: "${ + process.arch + }" and ${name} supports: ${cpu.join( + "," + )}. If you think this is a mistake, please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues` + ); +} diff --git a/sass-windows-x64/package.json b/sass-windows-x64/package.json index c2ce832..1dd39e0 100644 --- a/sass-windows-x64/package.json +++ b/sass-windows-x64/package.json @@ -12,5 +12,8 @@ ], "cpu": [ "x64" - ] + ], + "scripts": { + "postinstall": "node ./postinstall.js" + } } diff --git a/sass-windows-x64/postinstall.js b/sass-windows-x64/postinstall.js new file mode 100644 index 0000000..da3a5af --- /dev/null +++ b/sass-windows-x64/postinstall.js @@ -0,0 +1,23 @@ +"use strict"; + +const { name, os, cpu } = require("./package.json"); + +if (os && !os.includes(process.platform)) { + throw new Error( + `${name} does not support the platform you are using. You are using: "${ + process.platform + }" and ${name} supports: ${os.join( + "," + )}. If you think this is a mistake, please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues` + ); +} + +if (cpu && !cpu.includes(process.arch)) { + throw new Error( + `${name} does not support the cpu you are using. You are using: "${ + process.arch + }" and ${name} supports: ${cpu.join( + "," + )}. If you think this is a mistake, please contact Origami or open an issue on https://github.com/Financial-Times/sass/issues` + ); +}