From d178b2e70eb29e5d6a93b57f4683bc2fd3bb9f91 Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 16:25:57 -0800 Subject: [PATCH 01/17] Switch to compiling of SCSS --- .gitignore | 4 + package-lock.json | 1629 ++++++++++++++++++++++ package.json | 15 + simple-grid.css | 250 ---- simple-grid.min.css | 1 - simple-grid.scss => src/simple-grid.scss | 0 6 files changed, 1648 insertions(+), 251 deletions(-) create mode 100644 .gitignore create mode 100644 package-lock.json create mode 100644 package.json delete mode 100644 simple-grid.css delete mode 100644 simple-grid.min.css rename simple-grid.scss => src/simple-grid.scss (100%) diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d573201 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ + +node_modules/ +tmp/ +dist/ diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..3485f73 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,1629 @@ +{ + "name": "Simple-Grid", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "lightningcss-cli": "^1.23.0", + "npm-run-all": "^4.1.5", + "sass": "^1.70.0" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "dependencies": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", + "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-array-buffer": "^3.0.2", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", + "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", + "dependencies": { + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.1", + "set-function-length": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "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" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/define-data-property": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", + "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "dependencies": { + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.22.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", + "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "arraybuffer.prototype.slice": "^1.0.2", + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.5", + "es-set-tostringtag": "^2.0.1", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.2", + "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0", + "internal-slot": "^1.0.5", + "is-array-buffer": "^3.0.2", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.12", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "safe-array-concat": "^1.0.1", + "safe-regex-test": "^1.0.0", + "string.prototype.trim": "^1.2.8", + "string.prototype.trimend": "^1.0.7", + "string.prototype.trimstart": "^1.0.7", + "typed-array-buffer": "^1.0.0", + "typed-array-byte-length": "^1.0.0", + "typed-array-byte-offset": "^1.0.0", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", + "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", + "dependencies": { + "get-intrinsic": "^1.2.2", + "has-tostringtag": "^1.0.0", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", + "dependencies": { + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "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", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "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", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "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==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/immutable": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==" + }, + "node_modules/internal-slot": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", + "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", + "dependencies": { + "get-intrinsic": "^1.2.2", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", + "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "dependencies": { + "which-typed-array": "^1.1.11" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "node_modules/lightningcss-cli": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-cli/-/lightningcss-cli-1.23.0.tgz", + "integrity": "sha512-STwsFaVtiGwBCAl3swVvs/ido0ZzhcLFWn0KEkZv1DQNtNppJrULjqap/yaxCooDI5bfjJGj70Ne1tt3AwaQ+g==", + "hasInstallScript": true, + "dependencies": { + "detect-libc": "^1.0.3" + }, + "bin": { + "lightningcss": "lightningcss" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-cli-darwin-arm64": "1.23.0", + "lightningcss-cli-darwin-x64": "1.23.0", + "lightningcss-cli-freebsd-x64": "1.23.0", + "lightningcss-cli-linux-arm-gnueabihf": "1.23.0", + "lightningcss-cli-linux-arm64-gnu": "1.23.0", + "lightningcss-cli-linux-arm64-musl": "1.23.0", + "lightningcss-cli-linux-x64-gnu": "1.23.0", + "lightningcss-cli-linux-x64-musl": "1.23.0", + "lightningcss-cli-win32-x64-msvc": "1.23.0" + } + }, + "node_modules/lightningcss-cli-darwin-arm64": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-cli-darwin-arm64/-/lightningcss-cli-darwin-arm64-1.23.0.tgz", + "integrity": "sha512-uZvy0I7lf5dt/Ti4egRuSpd3OEPA9I0+aQ/iXUB9pFl4enD6+EmGtfjfEwvOFgcECTO8SZW0tSaRgwhXtHz0qg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-cli-darwin-x64": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-cli-darwin-x64/-/lightningcss-cli-darwin-x64-1.23.0.tgz", + "integrity": "sha512-VTOPUVnL+znA1LktTK5jo+3qNhaU0hUYF2u8znJr07vG0NGy8KsZffimYUvWSKi7qid6M8CGAaY9Tw6zMqIniw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-cli-freebsd-x64": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-cli-freebsd-x64/-/lightningcss-cli-freebsd-x64-1.23.0.tgz", + "integrity": "sha512-dPeiQjfatVfTJA06Hb2ou6jtk/mbYmBM4YLro8bh6FWMNRKmglwR12kog4Dj/2umNtbLcf4OVDe5+/UhSL+Atw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-cli-linux-arm-gnueabihf": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-cli-linux-arm-gnueabihf/-/lightningcss-cli-linux-arm-gnueabihf-1.23.0.tgz", + "integrity": "sha512-bq7Lbn3btKbeV/6UTS0MucHF0cpnCAVUycvmTrNTB1VF0JvekUStORAhqRlhgMYsjgklGFvQSaBPX1pozYGp8Q==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-cli-linux-arm64-gnu": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-cli-linux-arm64-gnu/-/lightningcss-cli-linux-arm64-gnu-1.23.0.tgz", + "integrity": "sha512-CbRzSK4tH2KpqoFuFLAb0DZgRIA7RsYYYKrDAdsC/S0kq6VBR/rSeISsczfCtMRSBTjqYwnZAdQXQO0YQrfsrA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-cli-linux-arm64-musl": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-cli-linux-arm64-musl/-/lightningcss-cli-linux-arm64-musl-1.23.0.tgz", + "integrity": "sha512-bkhubISbHj/G3+BuOMclC+V5k82PTYuWdGAvqrMB3HOd/yIcOxP1uX3O/KLo7qxrLw0m729RCo8Lk7Cd54Z6jg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-cli-linux-x64-gnu": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-cli-linux-x64-gnu/-/lightningcss-cli-linux-x64-gnu-1.23.0.tgz", + "integrity": "sha512-uWiB/7m1pI+UcpmrikD+r8T4b1hcjNHe43/GX2zkx+BtzzUhDwwW1/bXbatGar4K6BVDtSGP8B0diOtONsm2KQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-cli-linux-x64-musl": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-cli-linux-x64-musl/-/lightningcss-cli-linux-x64-musl-1.23.0.tgz", + "integrity": "sha512-2GQKReVX2BLM+2vXdp9pUt8NzPy5PKyEU3PKNuAaKAW6gEMFRUWiISir6faSlMm6lCjEoqfrvAtrenELudhQCA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-cli-win32-x64-msvc": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-cli-win32-x64-msvc/-/lightningcss-cli-win32-x64-msvc-1.23.0.tgz", + "integrity": "sha512-5xAaw/S1cTywwGZGBFtNSnb5YH67toEualXjlKH2RpmtaWPYvxwtXr86BCnZotAqx0KNESMjE27tIWDvYAQNKQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", + "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" + }, + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/npm-run-all/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/npm-run-all/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/npm-run-all/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/npm-run-all/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/npm-run-all/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pidtree": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", + "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", + "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "set-function-name": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.0.tgz", + "integrity": "sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==", + "dependencies": { + "call-bind": "^1.0.5", + "get-intrinsic": "^1.2.2", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-array-concat/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, + "node_modules/safe-regex-test": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.2.tgz", + "integrity": "sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ==", + "dependencies": { + "call-bind": "^1.0.5", + "get-intrinsic": "^1.2.2", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sass": { + "version": "1.70.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.70.0.tgz", + "integrity": "sha512-uUxNQ3zAHeAx5nRFskBnrWzDUJrrvpCPD5FNAoRvTi0WwremlheES3tg+56PaVtCs5QDRX5CBLxxKMDJMEa1WQ==", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/set-function-length": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.0.tgz", + "integrity": "sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==", + "dependencies": { + "define-data-property": "^1.1.1", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.2", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", + "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", + "dependencies": { + "define-data-property": "^1.0.1", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.4.0.tgz", + "integrity": "sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw==" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", + "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==" + }, + "node_modules/string.prototype.padend": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.5.tgz", + "integrity": "sha512-DOB27b/2UTTD+4myKUFh+/fXWcu/UDyASIXfg+7VzoCNNGOfWvoyU/x5pvVHr++ztyt/oSYI1BcWBBG/hmlNjA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", + "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz", + "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", + "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", + "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", + "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "has-proto": "^1.0.1", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", + "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "has-proto": "^1.0.1", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", + "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.4", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..aced04c --- /dev/null +++ b/package.json @@ -0,0 +1,15 @@ +{ + "scripts": { + "build": "npm-run-all compile process process-min", + "compile": "sass ./src/simple-grid.scss ./tmp/simple-grid.css", + "process": "lightningcss --browserslist ./tmp/simple-grid.css -o dist/simple-grid.css", + "process-min": "lightningcss --minify --browserslist ./tmp/simple-grid.css -o dist/simple-grid-min.css" + }, + "dependencies": { + "lightningcss": "^1.23.0", + "npm-run-all": "^4.1.5" + }, + "browserslist": [ + "> 1%, last 6 versions, Firefox ESR, not dead" + ] +} diff --git a/simple-grid.css b/simple-grid.css deleted file mode 100644 index 6f8e71b..0000000 --- a/simple-grid.css +++ /dev/null @@ -1,250 +0,0 @@ -/** -*** SIMPLE GRID -*** (C) ZACH COLE 2016 -**/ - -@import url(https://fonts.googleapis.com/css?family=Lato:400,300,300italic,400italic,700,700italic); - -/* UNIVERSAL */ - -html, -body { - height: 100%; - width: 100%; - margin: 0; - padding: 0; - left: 0; - top: 0; - font-size: 100%; -} - -/* ROOT FONT STYLES */ - -* { - font-family: 'Lato', Helvetica, sans-serif; - color: #333447; - line-height: 1.5; -} - -/* TYPOGRAPHY */ - -h1 { - font-size: 2.5rem; -} - -h2 { - font-size: 2rem; -} - -h3 { - font-size: 1.375rem; -} - -h4 { - font-size: 1.125rem; -} - -h5 { - font-size: 1rem; -} - -h6 { - font-size: 0.875rem; -} - -p { - font-size: 1.125rem; - font-weight: 200; - line-height: 1.8; -} - -.font-light { - font-weight: 300; -} - -.font-regular { - font-weight: 400; -} - -.font-heavy { - font-weight: 700; -} - -/* POSITIONING */ - -.left { - text-align: left; -} - -.right { - text-align: right; -} - -.center { - text-align: center; - margin-left: auto; - margin-right: auto; -} - -.justify { - text-align: justify; -} - -/* ==== GRID SYSTEM ==== */ - -.container { - width: 90%; - margin-left: auto; - margin-right: auto; -} - -.row { - position: relative; - width: 100%; -} - -.row [class^="col"] { - float: left; - margin: 0.5rem 2%; - min-height: 0.125rem; -} - -.col-1, -.col-2, -.col-3, -.col-4, -.col-5, -.col-6, -.col-7, -.col-8, -.col-9, -.col-10, -.col-11, -.col-12 { - width: 96%; -} - -.col-1-sm { - width: 4.33%; -} - -.col-2-sm { - width: 12.66%; -} - -.col-3-sm { - width: 21%; -} - -.col-4-sm { - width: 29.33%; -} - -.col-5-sm { - width: 37.66%; -} - -.col-6-sm { - width: 46%; -} - -.col-7-sm { - width: 54.33%; -} - -.col-8-sm { - width: 62.66%; -} - -.col-9-sm { - width: 71%; -} - -.col-10-sm { - width: 79.33%; -} - -.col-11-sm { - width: 87.66%; -} - -.col-12-sm { - width: 96%; -} - -.row::after { - content: ""; - display: table; - clear: both; -} - -.hidden-sm { - display: none; -} - -@media only screen and (min-width: 33.75em) { /* 540px */ - .container { - width: 80%; - } -} - -@media only screen and (min-width: 45em) { /* 720px */ - .col-1 { - width: 4.33%; - } - - .col-2 { - width: 12.66%; - } - - .col-3 { - width: 21%; - } - - .col-4 { - width: 29.33%; - } - - .col-5 { - width: 37.66%; - } - - .col-6 { - width: 46%; - } - - .col-7 { - width: 54.33%; - } - - .col-8 { - width: 62.66%; - } - - .col-9 { - width: 71%; - } - - .col-10 { - width: 79.33%; - } - - .col-11 { - width: 87.66%; - } - - .col-12 { - width: 96%; - } - - .hidden-sm { - display: block; - } -} - -@media only screen and (min-width: 60em) { /* 960px */ - .container { - width: 75%; - max-width: 60rem; - } -} diff --git a/simple-grid.min.css b/simple-grid.min.css deleted file mode 100644 index d3f2cc2..0000000 --- a/simple-grid.min.css +++ /dev/null @@ -1 +0,0 @@ -@import url(https://fonts.googleapis.com/css?family=Lato:400,300,300italic,400italic,700,700italic);body,html{height:100%;width:100%;margin:0;padding:0;left:0;top:0;font-size:100%}.center,.container{margin-left:auto;margin-right:auto}*{font-family:Lato,Helvetica,sans-serif;color:#333447;line-height:1.5}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.375rem}h4{font-size:1.125rem}h5{font-size:1rem}h6{font-size:.875rem}p{font-size:1.125rem;font-weight:200;line-height:1.8}.font-light{font-weight:300}.font-regular{font-weight:400}.font-heavy{font-weight:700}.left{text-align:left}.right{text-align:right}.center{text-align:center}.justify{text-align:justify}.container{width:90%}.row{position:relative;width:100%}.row [class^=col]{float:left;margin:.5rem 2%;min-height:.125rem}.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9{width:96%}.col-1-sm{width:4.33%}.col-2-sm{width:12.66%}.col-3-sm{width:21%}.col-4-sm{width:29.33%}.col-5-sm{width:37.66%}.col-6-sm{width:46%}.col-7-sm{width:54.33%}.col-8-sm{width:62.66%}.col-9-sm{width:71%}.col-10-sm{width:79.33%}.col-11-sm{width:87.66%}.col-12-sm{width:96%}.row::after{content:"";display:table;clear:both}.hidden-sm{display:none}@media only screen and (min-width:33.75em){.container{width:80%}}@media only screen and (min-width:45em){.col-1{width:4.33%}.col-2{width:12.66%}.col-3{width:21%}.col-4{width:29.33%}.col-5{width:37.66%}.col-6{width:46%}.col-7{width:54.33%}.col-8{width:62.66%}.col-9{width:71%}.col-10{width:79.33%}.col-11{width:87.66%}.col-12{width:96%}.hidden-sm{display:block}}@media only screen and (min-width:60em){.container{width:75%;max-width:60rem}} diff --git a/simple-grid.scss b/src/simple-grid.scss similarity index 100% rename from simple-grid.scss rename to src/simple-grid.scss From cbef7227caabe9b1824747efea02e0be7f68a23d Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 16:33:15 -0800 Subject: [PATCH 02/17] Resolve deprecations, rebrand --- README.md | 6 +++--- src/simple-grid.scss | 46 +++++++++++++++++++++++--------------------- 2 files changed, 27 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index 65164b6..584183b 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,11 @@ -# Simple Grid +# Simple Grid+ A lightweight, responsive CSS grid Developed by Zach Cole -## Simple Grid and Simple Code +## Simple Grid+ and Simple Code -Simple Grid is a mobile-first 12-column CSS grid system to make developing responsive websites easy and fast. +Simple Grid+ is a mobile-first 12-column CSS grid system to make developing responsive websites easy and fast. All the code you need is simple and familiar. A parent container class contains the grid. Within the container are rows. Row classes denote rows of content, which can be filled with up to 12 columns. Columns must be nested within a row. diff --git a/src/simple-grid.scss b/src/simple-grid.scss index 49a3881..d32de3a 100644 --- a/src/simple-grid.scss +++ b/src/simple-grid.scss @@ -1,5 +1,7 @@ // SIMPLE GRID - SASS/SCSS +@use "sass:math"; + @import url(https://fonts.googleapis.com/css?family=Lato:400,300,300italic,400italic,700,700italic); // fonts @@ -155,31 +157,31 @@ $breakpoint-large: 60em; // 960px width: $width; } -.col-1-sm { width:($width / 12) - ($gutter * 11 / 12); } -.col-2-sm { width: ($width / 6) - ($gutter * 10 / 12); } -.col-3-sm { width: ($width / 4) - ($gutter * 9 / 12); } -.col-4-sm { width: ($width / 3) - ($gutter * 8 / 12); } -.col-5-sm { width: ($width / (12 / 5)) - ($gutter * 7 / 12); } -.col-6-sm { width: ($width / 2) - ($gutter * 6 / 12); } -.col-7-sm { width: ($width / (12 / 7)) - ($gutter * 5 / 12); } -.col-8-sm { width: ($width / (12 / 8)) - ($gutter * 4 / 12); } -.col-9-sm { width: ($width / (12 / 9)) - ($gutter * 3 / 12); } -.col-10-sm { width: ($width / (12 / 10)) - ($gutter * 2 / 12); } -.col-11-sm { width: ($width / (12 / 11)) - ($gutter * 1 / 12); } +.col-1-sm { width:math.div($width, 12) - math.div($gutter * 11, 12); } +.col-2-sm { width: math.div($width, 6) - math.div($gutter * 10, 12); } +.col-3-sm { width: ($width * 0.25) - math.div($gutter * 9, 12); } +.col-4-sm { width: math.div($width, 3) - math.div($gutter * 8, 12); } +.col-5-sm { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } +.col-6-sm { width: ($width * 0.5) - math.div($gutter * 6, 12); } +.col-7-sm { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } +.col-8-sm { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } +.col-9-sm { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } +.col-10-sm { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } +.col-11-sm { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } .col-12-sm { width: $width; } @media only screen and (min-width: $breakpoint-med) { - .col-1 { width:($width / 12) - ($gutter * 11 / 12); } - .col-2 { width: ($width / 6) - ($gutter * 10 / 12); } - .col-3 { width: ($width / 4) - ($gutter * 9 / 12); } - .col-4 { width: ($width / 3) - ($gutter * 8 / 12); } - .col-5 { width: ($width / (12 / 5)) - ($gutter * 7 / 12); } - .col-6 { width: ($width / 2) - ($gutter * 6 / 12); } - .col-7 { width: ($width / (12 / 7)) - ($gutter * 5 / 12); } - .col-8 { width: ($width / (12 / 8)) - ($gutter * 4 / 12); } - .col-9 { width: ($width / (12 / 9)) - ($gutter * 3 / 12); } - .col-10 { width: ($width / (12 / 10)) - ($gutter * 2 / 12); } - .col-11 { width: ($width / (12 / 11)) - ($gutter * 1 / 12); } + .col-1 { width:math.div($width, 12) - math.div($gutter * 11, 12); } + .col-2 { width: math.div($width, 6) - math.div($gutter * 10, 12); } + .col-3 { width: ($width * 0.25) - math.div($gutter * 9, 12); } + .col-4 { width: math.div($width, 3) - math.div($gutter * 8, 12); } + .col-5 { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } + .col-6 { width: ($width * 0.5) - math.div($gutter * 6, 12); } + .col-7 { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } + .col-8 { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } + .col-9 { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } + .col-10 { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } + .col-11 { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } .col-12 { width: $width; } .hidden-sm { From 1ecde197385bce2fb9e94bad2d36e78aeee9dbca Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 17:09:36 -0800 Subject: [PATCH 03/17] Added workflows --- .github/dependabot.yml | 11 +++++++++++ .github/workflows/build.yml | 19 +++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 .github/dependabot.yml create mode 100644 .github/workflows/build.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..c219e9b --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + + - package-ecosystem: "npm" + directory: "/" + schedule: + interval: "weekly" diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..5594dad --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,19 @@ +name: Test + +on: + push: + pull_request: + branches: main + +jobs: + build: + name: "Build" + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-node@v4 + with: + node-version: latest + + - run: npm run build From 208971f158a5b3a0c287db9f7006bc9cf73c8b18 Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 17:16:18 -0800 Subject: [PATCH 04/17] Update build.yml --- .github/workflows/build.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5594dad..92c2098 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,4 +16,6 @@ jobs: with: node-version: latest + - run: npm run i + - run: npm run build From 92f9cd91bc1b4b2c3b8e4012ba56bf5dd9db8b2a Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 17:17:15 -0800 Subject: [PATCH 05/17] Update build.yml --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 92c2098..3980ed9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,6 +16,6 @@ jobs: with: node-version: latest - - run: npm run i + - run: npm i - run: npm run build From 2cd905e9f5688883cc3e9a891dfaab548ac36b6a Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 17:20:39 -0800 Subject: [PATCH 06/17] Fixed package.json, minor fix for workflow --- .github/workflows/build.yml | 1 + package.json | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3980ed9..c13f022 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,6 +2,7 @@ name: Test on: push: + branches: main pull_request: branches: main diff --git a/package.json b/package.json index aced04c..4ba4418 100644 --- a/package.json +++ b/package.json @@ -6,8 +6,9 @@ "process-min": "lightningcss --minify --browserslist ./tmp/simple-grid.css -o dist/simple-grid-min.css" }, "dependencies": { - "lightningcss": "^1.23.0", - "npm-run-all": "^4.1.5" + "lightningcss-cli": "^1.23.0", + "npm-run-all": "^4.1.5", + "sass": "^1.70.0" }, "browserslist": [ "> 1%, last 6 versions, Firefox ESR, not dead" From 015d572502292ac9fe8885da5159529246b252da Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 17:54:03 -0800 Subject: [PATCH 07/17] Split files --- src/_grid.scss | 86 ++++++++++++++++++++ src/_typography.scss | 60 ++++++++++++++ src/_utility.scss | 21 +++++ src/simple-grid.scss | 182 +------------------------------------------ 4 files changed, 170 insertions(+), 179 deletions(-) create mode 100644 src/_grid.scss create mode 100644 src/_typography.scss create mode 100644 src/_utility.scss diff --git a/src/_grid.scss b/src/_grid.scss new file mode 100644 index 0000000..c2c6db8 --- /dev/null +++ b/src/_grid.scss @@ -0,0 +1,86 @@ +@use "sass:math"; + +$width: 96%; +$gutter: 4%; +$breakpoint-small: 33.75em; // 540px +$breakpoint-med: 45em; // 720px +$breakpoint-large: 60em; // 960px + +.container { + width: 90%; + margin-left: auto; + margin-right: auto; + + @media only screen and (min-width: $breakpoint-small) { + width: 80%; + } + + @media only screen and (min-width: $breakpoint-large) { + width: 75%; + max-width: 60rem; + } +} + +.row { + position: relative; + width: 100%; +} + +.row [class^="col-"] { + float: left; + margin: 0.5rem 2%; + min-height: 0.125rem; +} + +.row::after { + content: ""; + display: table; + clear: both; +} + +.col-1, +.col-2, +.col-3, +.col-4, +.col-5, +.col-6, +.col-7, +.col-8, +.col-9, +.col-10, +.col-11, +.col-12 { + width: $width; +} + +.col-1-sm { width:math.div($width, 12) - math.div($gutter * 11, 12); } +.col-2-sm { width: math.div($width, 6) - math.div($gutter * 10, 12); } +.col-3-sm { width: ($width * 0.25) - math.div($gutter * 9, 12); } +.col-4-sm { width: math.div($width, 3) - math.div($gutter * 8, 12); } +.col-5-sm { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } +.col-6-sm { width: ($width * 0.5) - math.div($gutter * 6, 12); } +.col-7-sm { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } +.col-8-sm { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } +.col-9-sm { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } +.col-10-sm { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } +.col-11-sm { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } +.col-12-sm { width: $width; } + +@media only screen and (min-width: $breakpoint-med) { + .col-1 { width:math.div($width, 12) - math.div($gutter * 11, 12); } + .col-2 { width: math.div($width, 6) - math.div($gutter * 10, 12); } + .col-3 { width: ($width * 0.25) - math.div($gutter * 9, 12); } + .col-4 { width: math.div($width, 3) - math.div($gutter * 8, 12); } + .col-5 { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } + .col-6 { width: ($width * 0.5) - math.div($gutter * 6, 12); } + .col-7 { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } + .col-8 { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } + .col-9 { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } + .col-10 { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } + .col-11 { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } + .col-12 { width: $width; } + + .hidden-sm { + display: block; + } +} diff --git a/src/_typography.scss b/src/_typography.scss new file mode 100644 index 0000000..ce3311f --- /dev/null +++ b/src/_typography.scss @@ -0,0 +1,60 @@ +@import url(https://fonts.googleapis.com/css?family=Lato:400,300,300italic,400italic,700,700italic); + +// fonts +$font-family: 'Lato', Helvetica, sans-serif; +$font-weight-light: 300; +$font-weight-regular: 400; +$font-weight-heavy: 700; +$font-height: 1.5; + +// colors +$dark-grey: #333447; +$dark-gray: #333447; // for the Americans + +* { + font-family: $font-family; + color: $dark-grey; + line-height: $font-height; +} + +h1 { + font-size: 2.5rem; +} + +h2 { + font-size: 2rem; +} + +h3 { + font-size: 1.375rem; +} + +h4 { + font-size: 1.125rem; +} + +h5 { + font-size: 1rem; +} + +h6 { + font-size: 0.875rem; +} + +p { + font-size: 1.125rem; + font-weight: 200; + line-height: 1.8; +} + +.font-light { + font-weight: $font-weight-light; +} + +.font-regular { + font-weight: $font-weight-regular; +} + +.font-heavy { + font-weight: $font-weight-heavy; +} diff --git a/src/_utility.scss b/src/_utility.scss new file mode 100644 index 0000000..0a82845 --- /dev/null +++ b/src/_utility.scss @@ -0,0 +1,21 @@ +.left { + text-align: left; +} + +.right { + text-align: right; +} + +.center { + text-align: center; + margin-left: auto; + margin-right: auto; +} + +.justify { + text-align: justify; +} + +.hidden-sm { + display: none; +} diff --git a/src/simple-grid.scss b/src/simple-grid.scss index d32de3a..51444d7 100644 --- a/src/simple-grid.scss +++ b/src/simple-grid.scss @@ -1,21 +1,6 @@ -// SIMPLE GRID - SASS/SCSS - -@use "sass:math"; - -@import url(https://fonts.googleapis.com/css?family=Lato:400,300,300italic,400italic,700,700italic); - -// fonts -$font-family: 'Lato', Helvetica, sans-serif; -$font-weight-light: 300; -$font-weight-regular: 400; -$font-weight-heavy: 700; -$font-height: 1.5; - -// colors -$dark-grey: #333447; -$dark-gray: #333447; // for the Americans - -// universal +@import "_utility.scss"; +@import "_typography.scss"; +@import "_grid.scss"; html, body { @@ -27,164 +12,3 @@ body { top: 0; font-size: 100%; } - -* { - font-family: $font-family; - color: $dark-grey; - line-height: $font-height; -} - -// typography - -h1 { - font-size: 2.5rem; -} - -h2 { - font-size: 2rem; -} - -h3 { - font-size: 1.375rem; -} - -h4 { - font-size: 1.125rem; -} - -h5 { - font-size: 1rem; -} - -h6 { - font-size: 0.875rem; -} - -p { - font-size: 1.125rem; - font-weight: 200; - line-height: 1.8; -} - -.font-light { - font-weight: $font-weight-light; -} - -.font-regular { - font-weight: $font-weight-regular; -} - -.font-heavy { - font-weight: $font-weight-heavy; -} - -// utility - -.left { - text-align: left; -} - -.right { - text-align: right; -} - -.center { - text-align: center; - margin-left: auto; - margin-right: auto; -} - -.justify { - text-align: justify; -} - -.hidden-sm { - display: none; -} - -// grid - -$width: 96%; -$gutter: 4%; -$breakpoint-small: 33.75em; // 540px -$breakpoint-med: 45em; // 720px -$breakpoint-large: 60em; // 960px - -.container { - width: 90%; - margin-left: auto; - margin-right: auto; - - @media only screen and (min-width: $breakpoint-small) { - width: 80%; - } - - @media only screen and (min-width: $breakpoint-large) { - width: 75%; - max-width: 60rem; - } -} - -.row { - position: relative; - width: 100%; -} - -.row [class^="col"] { - float: left; - margin: 0.5rem 2%; - min-height: 0.125rem; -} - -.row::after { - content: ""; - display: table; - clear: both; -} - -.col-1, -.col-2, -.col-3, -.col-4, -.col-5, -.col-6, -.col-7, -.col-8, -.col-9, -.col-10, -.col-11, -.col-12 { - width: $width; -} - -.col-1-sm { width:math.div($width, 12) - math.div($gutter * 11, 12); } -.col-2-sm { width: math.div($width, 6) - math.div($gutter * 10, 12); } -.col-3-sm { width: ($width * 0.25) - math.div($gutter * 9, 12); } -.col-4-sm { width: math.div($width, 3) - math.div($gutter * 8, 12); } -.col-5-sm { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } -.col-6-sm { width: ($width * 0.5) - math.div($gutter * 6, 12); } -.col-7-sm { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } -.col-8-sm { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } -.col-9-sm { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } -.col-10-sm { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } -.col-11-sm { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } -.col-12-sm { width: $width; } - -@media only screen and (min-width: $breakpoint-med) { - .col-1 { width:math.div($width, 12) - math.div($gutter * 11, 12); } - .col-2 { width: math.div($width, 6) - math.div($gutter * 10, 12); } - .col-3 { width: ($width * 0.25) - math.div($gutter * 9, 12); } - .col-4 { width: math.div($width, 3) - math.div($gutter * 8, 12); } - .col-5 { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } - .col-6 { width: ($width * 0.5) - math.div($gutter * 6, 12); } - .col-7 { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } - .col-8 { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } - .col-9 { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } - .col-10 { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } - .col-11 { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } - .col-12 { width: $width; } - - .hidden-sm { - display: block; - } -} From 2fe6c7f89c99685b14c040f5eea6cd396142da94 Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 22:06:46 -0800 Subject: [PATCH 08/17] Upload artifacts --- .github/workflows/build.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c13f022..a43f80c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,3 +20,9 @@ jobs: - run: npm i - run: npm run build + + - name: Upload CSS Artifacts + uses: actions/upload-artifact@v4 + with: + name: build + path: ./dist/*.css From af0f6a5a9115c3b7501343ce5f8e6303179a50b2 Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 22:24:06 -0800 Subject: [PATCH 09/17] Don't built typography by default --- package.json | 5 +++-- src/{simple-grid.scss => default.scss} | 0 src/with-typography.scss | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 2 deletions(-) rename src/{simple-grid.scss => default.scss} (100%) create mode 100644 src/with-typography.scss diff --git a/package.json b/package.json index 4ba4418..1bfc7be 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,8 @@ { "scripts": { - "build": "npm-run-all compile process process-min", - "compile": "sass ./src/simple-grid.scss ./tmp/simple-grid.css", + "build": "npm-run-all compile-default process process-min", + "compile-default": "sass ./src/default.scss ./tmp/simple-grid.css", + "compile-typography": "sass ./src/with-typography.scss ./tmp/simple-grid.css", "process": "lightningcss --browserslist ./tmp/simple-grid.css -o dist/simple-grid.css", "process-min": "lightningcss --minify --browserslist ./tmp/simple-grid.css -o dist/simple-grid-min.css" }, diff --git a/src/simple-grid.scss b/src/default.scss similarity index 100% rename from src/simple-grid.scss rename to src/default.scss diff --git a/src/with-typography.scss b/src/with-typography.scss new file mode 100644 index 0000000..51444d7 --- /dev/null +++ b/src/with-typography.scss @@ -0,0 +1,14 @@ +@import "_utility.scss"; +@import "_typography.scss"; +@import "_grid.scss"; + +html, +body { + height: 100%; + width: 100%; + margin: 0; + padding: 0; + left: 0; + top: 0; + font-size: 100%; +} From 9a436f974250451dee489bb1c60e29206c221f06 Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 22:45:32 -0800 Subject: [PATCH 10/17] Fixed & extended util. Made typography separate --- package.json | 10 ++++++---- src/_grid.scss | 10 ---------- src/_typography.scss | 11 ----------- src/_utility.scss | 12 ++++++++++-- src/_variables.scss | 16 ++++++++++++++++ src/default.scss | 2 +- src/typography.scss | 2 ++ src/with-typography.scss | 14 -------------- 8 files changed, 35 insertions(+), 42 deletions(-) create mode 100644 src/_variables.scss create mode 100644 src/typography.scss delete mode 100644 src/with-typography.scss diff --git a/package.json b/package.json index 1bfc7be..f62e8c6 100644 --- a/package.json +++ b/package.json @@ -1,10 +1,12 @@ { "scripts": { - "build": "npm-run-all compile-default process process-min", + "build": "npm-run-all compile-default compile-typography process process-min process-typography process-min-typography", "compile-default": "sass ./src/default.scss ./tmp/simple-grid.css", - "compile-typography": "sass ./src/with-typography.scss ./tmp/simple-grid.css", + "compile-typography": "sass ./src/typography.scss ./tmp/typography.css", "process": "lightningcss --browserslist ./tmp/simple-grid.css -o dist/simple-grid.css", - "process-min": "lightningcss --minify --browserslist ./tmp/simple-grid.css -o dist/simple-grid-min.css" + "process-min": "lightningcss --minify --browserslist ./tmp/simple-grid.css -o dist/simple-grid-min.css", + "process-typography": "lightningcss --browserslist ./tmp/simple-grid.css -o dist/typography.css", + "process-min-typography": "lightningcss --minify --browserslist ./tmp/typography.css -o dist/typography-min.css" }, "dependencies": { "lightningcss-cli": "^1.23.0", @@ -14,4 +16,4 @@ "browserslist": [ "> 1%, last 6 versions, Firefox ESR, not dead" ] -} +} \ No newline at end of file diff --git a/src/_grid.scss b/src/_grid.scss index c2c6db8..fdd396f 100644 --- a/src/_grid.scss +++ b/src/_grid.scss @@ -1,11 +1,5 @@ @use "sass:math"; -$width: 96%; -$gutter: 4%; -$breakpoint-small: 33.75em; // 540px -$breakpoint-med: 45em; // 720px -$breakpoint-large: 60em; // 960px - .container { width: 90%; margin-left: auto; @@ -79,8 +73,4 @@ $breakpoint-large: 60em; // 960px .col-10 { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } .col-11 { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } .col-12 { width: $width; } - - .hidden-sm { - display: block; - } } diff --git a/src/_typography.scss b/src/_typography.scss index ce3311f..9c783de 100644 --- a/src/_typography.scss +++ b/src/_typography.scss @@ -1,16 +1,5 @@ @import url(https://fonts.googleapis.com/css?family=Lato:400,300,300italic,400italic,700,700italic); -// fonts -$font-family: 'Lato', Helvetica, sans-serif; -$font-weight-light: 300; -$font-weight-regular: 400; -$font-weight-heavy: 700; -$font-height: 1.5; - -// colors -$dark-grey: #333447; -$dark-gray: #333447; // for the Americans - * { font-family: $font-family; color: $dark-grey; diff --git a/src/_utility.scss b/src/_utility.scss index 0a82845..9a8a0d0 100644 --- a/src/_utility.scss +++ b/src/_utility.scss @@ -16,6 +16,14 @@ text-align: justify; } -.hidden-sm { - display: none; +@media only screen and (min-width: $breakpoint-med) { + .hidden-sm { + display: none; + } +} + +@media only screen and (min-width: $breakpoint-large) { + .hidden-md { + display: none; + } } diff --git a/src/_variables.scss b/src/_variables.scss new file mode 100644 index 0000000..14cc866 --- /dev/null +++ b/src/_variables.scss @@ -0,0 +1,16 @@ +/* Grid / Utility */ +$width: 96%; +$gutter: 4%; +$breakpoint-small: 33.75em; // 540px +$breakpoint-med: 45em; // 720px +$breakpoint-large: 60em; // 960px + +/* Typography */ +$font-family: 'Lato', Helvetica, sans-serif; +$font-weight-light: 300; +$font-weight-regular: 400; +$font-weight-heavy: 700; +$font-height: 1.5; + +$dark-grey: #333447; +$dark-gray: #333447; // for the Americans diff --git a/src/default.scss b/src/default.scss index 51444d7..957dddc 100644 --- a/src/default.scss +++ b/src/default.scss @@ -1,5 +1,5 @@ +@import "_variables.scss"; @import "_utility.scss"; -@import "_typography.scss"; @import "_grid.scss"; html, diff --git a/src/typography.scss b/src/typography.scss new file mode 100644 index 0000000..fafd0cc --- /dev/null +++ b/src/typography.scss @@ -0,0 +1,2 @@ +@import "_variables.scss"; +@import "_typography.scss"; diff --git a/src/with-typography.scss b/src/with-typography.scss deleted file mode 100644 index 51444d7..0000000 --- a/src/with-typography.scss +++ /dev/null @@ -1,14 +0,0 @@ -@import "_utility.scss"; -@import "_typography.scss"; -@import "_grid.scss"; - -html, -body { - height: 100%; - width: 100%; - margin: 0; - padding: 0; - left: 0; - top: 0; - font-size: 100%; -} From 85a326169d40b9a5851a395486fc87aaf72296e8 Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 23:14:08 -0800 Subject: [PATCH 11/17] Added a license file, updated readme --- LICENSE | 22 +++++++++++++++++++ README.md | 60 ++++++++++++++++++++++++++++++++++++++-------------- package.json | 2 +- 3 files changed, 67 insertions(+), 17 deletions(-) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..af91415 --- /dev/null +++ b/LICENSE @@ -0,0 +1,22 @@ +MIT License + +Copyright (c) 2024 HostByBelle +Copyright (c) 2016 Zach Cole + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index 584183b..8b9d25d 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,50 @@ # Simple Grid+ -A lightweight, responsive CSS grid -Developed by Zach Cole +Lightweight and responsive CSS grid & utility components for easier front-end development. Optionally includes typography as well. -## Simple Grid+ and Simple Code +Based on [Simple Grid](https://github.com/zachacole/Simple-Grid) originally created by Zach Cole. -Simple Grid+ is a mobile-first 12-column CSS grid system to make developing responsive websites easy and fast. - -All the code you need is simple and familiar. A parent container class contains the grid. Within the container are rows. Row classes denote rows of content, which can be filled with up to 12 columns. Columns must be nested within a row. - -To define your column width, declare how many columns you want your content to take up on desktop and large screens. For example, if your content should take up 6 out of 12 columns (or half the container), your class name will be .col-6. - -If you don’t want columns to expand on mobile devices and small screens, simply add -sm to the end of your column class name. For example, if you want to have two blocks of content floating side-by-side on small screens, each would be given the class name .col-6-sm. +## Grid -Update: Grid styles are now available in SASS/SCSS. Hooray! Thanks to [shankariyerr](https://github.com/shankariyerr/) for contributing as well. - -Learn more and see code samples at: http://simplegrid.io - -## License +Simple Grid+ is a mobile-first 12-column CSS grid system to make developing responsive websites easy and fast. - Open source under the MIT License. +All the code you need is simple and familiar. A parent container class contains the grid. Within the container are rows. Row classes denote rows of content, which can be filled with up to 12 columns. Columns must be nested within a row. + +```HTML +
+
+
+ +
+
+ +
+
+ +
+
+
+``` + +If you don’t want columns to expand on mobile devices and small screens, simply add `-sm` to the end of your column class name. For example, if you want to have two blocks of content floating side-by-side on small screens, each would be given the class name `.col-6-sm`. + +## Utility + +- `left`: Aligns content to the left. +- `right`: Aligns content to the right. +- `center`: Centers content. +- `justify`: Applies the "justify" content alignment. +- `hidden-sm` +- `hidden-md` + +## Typography + +- `font-light` +- `font-regular` +- `font-heavy` + +## Breakpoints + +- `sm`: 33.75em; // 540px +- `md`: 45em; // 720px +- `lg`: 60em; // 960px diff --git a/package.json b/package.json index f62e8c6..512cbfc 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "compile-typography": "sass ./src/typography.scss ./tmp/typography.css", "process": "lightningcss --browserslist ./tmp/simple-grid.css -o dist/simple-grid.css", "process-min": "lightningcss --minify --browserslist ./tmp/simple-grid.css -o dist/simple-grid-min.css", - "process-typography": "lightningcss --browserslist ./tmp/simple-grid.css -o dist/typography.css", + "process-typography": "lightningcss --browserslist ./tmp/typography.css -o dist/typography.css", "process-min-typography": "lightningcss --minify --browserslist ./tmp/typography.css -o dist/typography-min.css" }, "dependencies": { From 377215feef79e733d19585bee23358b50e043a77 Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 23:28:34 -0800 Subject: [PATCH 12/17] Expanded and improved breakpoints for grid --- README.md | 3 ++- src/_grid.scss | 39 +++++++++++++++++++++++++++------------ 2 files changed, 29 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 8b9d25d..bba7c9f 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,8 @@ All the code you need is simple and familiar. A parent container class contains ``` -If you don’t want columns to expand on mobile devices and small screens, simply add `-sm` to the end of your column class name. For example, if you want to have two blocks of content floating side-by-side on small screens, each would be given the class name `.col-6-sm`. +To control the sizing behavior, you can apply a breakpoint to your column classes (EX: `.col-6-sm`). +Not specifying a breakpoint is equal to using the medium breakpoint (EX: `.col-6-md`). ## Utility diff --git a/src/_grid.scss b/src/_grid.scss index fdd396f..db93e92 100644 --- a/src/_grid.scss +++ b/src/_grid.scss @@ -61,16 +61,31 @@ .col-12-sm { width: $width; } @media only screen and (min-width: $breakpoint-med) { - .col-1 { width:math.div($width, 12) - math.div($gutter * 11, 12); } - .col-2 { width: math.div($width, 6) - math.div($gutter * 10, 12); } - .col-3 { width: ($width * 0.25) - math.div($gutter * 9, 12); } - .col-4 { width: math.div($width, 3) - math.div($gutter * 8, 12); } - .col-5 { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } - .col-6 { width: ($width * 0.5) - math.div($gutter * 6, 12); } - .col-7 { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } - .col-8 { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } - .col-9 { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } - .col-10 { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } - .col-11 { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } - .col-12 { width: $width; } + .col-1, .col-1-md { width:math.div($width, 12) - math.div($gutter * 11, 12); } + .col-2, .col-2-md { width: math.div($width, 6) - math.div($gutter * 10, 12); } + .col-3, .col-3-md { width: ($width * 0.25) - math.div($gutter * 9, 12); } + .col-4, .col-4-md { width: math.div($width, 3) - math.div($gutter * 8, 12); } + .col-5, .col-5-md { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } + .col-6, .col-6-md { width: ($width * 0.5) - math.div($gutter * 6, 12); } + .col-7, .col-7-md { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } + .col-8, .col-8-md { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } + .col-9, .col-9-md { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } + .col-10, .col-10-md { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } + .col-11, .col-11-md { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } + .col-12, .col-12-md { width: $width; } +} + +@media only screen and (min-width: $breakpoint-large) { + .col-1-lg { width:math.div($width, 12) - math.div($gutter * 11, 12); } + .col-2-lg { width: math.div($width, 6) - math.div($gutter * 10, 12); } + .col-3-lg { width: ($width * 0.25) - math.div($gutter * 9, 12); } + .col-4-lg { width: math.div($width, 3) - math.div($gutter * 8, 12); } + .col-5-lg { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } + .col-6-lg { width: ($width * 0.5) - math.div($gutter * 6, 12); } + .col-7-lg { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } + .col-8-lg { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } + .col-9-lg { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } + .col-10-lg { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } + .col-11-lg { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } + .col-12-lg { width: $width; } } From bb27c71005e332c2eb8e5aaed1517ef76a286a6d Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Mon, 29 Jan 2024 23:38:39 -0800 Subject: [PATCH 13/17] Fix the gutter variable not being used --- README.md | 2 +- src/_grid.scss | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index bba7c9f..6fd26d4 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Simple Grid+ -Lightweight and responsive CSS grid & utility components for easier front-end development. Optionally includes typography as well. +Lightweight (~2KB uncompressed) and responsive CSS grid & utility components for easier front-end development. Optionally includes typography as well. Based on [Simple Grid](https://github.com/zachacole/Simple-Grid) originally created by Zach Cole. diff --git a/src/_grid.scss b/src/_grid.scss index db93e92..4c495aa 100644 --- a/src/_grid.scss +++ b/src/_grid.scss @@ -22,7 +22,7 @@ .row [class^="col-"] { float: left; - margin: 0.5rem 2%; + margin: 0.5rem math.div($gutter, 2); min-height: 0.125rem; } From 1bc1bb23bc3ea74643dc84afb48cf6ecc0aeaeb3 Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Tue, 30 Jan 2024 00:14:18 -0800 Subject: [PATCH 14/17] Made column count configurable, cleanup --- src/_grid.scss | 66 +++++++++------------------------------------ src/_variables.scss | 1 + 2 files changed, 14 insertions(+), 53 deletions(-) diff --git a/src/_grid.scss b/src/_grid.scss index 4c495aa..8c83ae6 100644 --- a/src/_grid.scss +++ b/src/_grid.scss @@ -32,60 +32,20 @@ clear: both; } -.col-1, -.col-2, -.col-3, -.col-4, -.col-5, -.col-6, -.col-7, -.col-8, -.col-9, -.col-10, -.col-11, -.col-12 { - width: $width; -} - -.col-1-sm { width:math.div($width, 12) - math.div($gutter * 11, 12); } -.col-2-sm { width: math.div($width, 6) - math.div($gutter * 10, 12); } -.col-3-sm { width: ($width * 0.25) - math.div($gutter * 9, 12); } -.col-4-sm { width: math.div($width, 3) - math.div($gutter * 8, 12); } -.col-5-sm { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } -.col-6-sm { width: ($width * 0.5) - math.div($gutter * 6, 12); } -.col-7-sm { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } -.col-8-sm { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } -.col-9-sm { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } -.col-10-sm { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } -.col-11-sm { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } -.col-12-sm { width: $width; } - @media only screen and (min-width: $breakpoint-med) { - .col-1, .col-1-md { width:math.div($width, 12) - math.div($gutter * 11, 12); } - .col-2, .col-2-md { width: math.div($width, 6) - math.div($gutter * 10, 12); } - .col-3, .col-3-md { width: ($width * 0.25) - math.div($gutter * 9, 12); } - .col-4, .col-4-md { width: math.div($width, 3) - math.div($gutter * 8, 12); } - .col-5, .col-5-md { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } - .col-6, .col-6-md { width: ($width * 0.5) - math.div($gutter * 6, 12); } - .col-7, .col-7-md { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } - .col-8, .col-8-md { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } - .col-9, .col-9-md { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } - .col-10, .col-10-md { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } - .col-11, .col-11-md { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } - .col-12, .col-12-md { width: $width; } + @for $i from 1 through $columns { + + .col-#{$i}, + .col-#{$i}-md { + width: calc($width / $columns * $i - $gutter); + } + } } @media only screen and (min-width: $breakpoint-large) { - .col-1-lg { width:math.div($width, 12) - math.div($gutter * 11, 12); } - .col-2-lg { width: math.div($width, 6) - math.div($gutter * 10, 12); } - .col-3-lg { width: ($width * 0.25) - math.div($gutter * 9, 12); } - .col-4-lg { width: math.div($width, 3) - math.div($gutter * 8, 12); } - .col-5-lg { width: math.div($width, (12 * 0.2)) - math.div($gutter * 7, 12); } - .col-6-lg { width: ($width * 0.5) - math.div($gutter * 6, 12); } - .col-7-lg { width: math.div($width, math.div(12, 7)) - math.div($gutter * 5, 12); } - .col-8-lg { width: math.div($width, (12 * 0.125)) - math.div($gutter * 4, 12); } - .col-9-lg { width: math.div($width, math.div(12, 9)) - math.div($gutter * 3, 12); } - .col-10-lg { width: math.div($width, (12 * 0.1)) - math.div($gutter * 2, 12); } - .col-11-lg { width: math.div($width, math.div(12, 11)) - math.div($gutter * 1, 12); } - .col-12-lg { width: $width; } -} + @for $i from 1 through $columns { + .col-#{$i}-lg { + width: calc($width / $columns * $i - $gutter); + } + } +} \ No newline at end of file diff --git a/src/_variables.scss b/src/_variables.scss index 14cc866..3abf298 100644 --- a/src/_variables.scss +++ b/src/_variables.scss @@ -4,6 +4,7 @@ $gutter: 4%; $breakpoint-small: 33.75em; // 540px $breakpoint-med: 45em; // 720px $breakpoint-large: 60em; // 960px +$columns: 12; /* Typography */ $font-family: 'Lato', Helvetica, sans-serif; From 9884c09b90934d074e8c288e87c1aebb96eb88b7 Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Tue, 30 Jan 2024 00:19:59 -0800 Subject: [PATCH 15/17] Update README.md --- README.md | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 6fd26d4..b8645f3 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,9 @@ Lightweight (~2KB uncompressed) and responsive CSS grid & utility components for Based on [Simple Grid](https://github.com/zachacole/Simple-Grid) originally created by Zach Cole. -## Grid +## Components + +### Grid Simple Grid+ is a mobile-first 12-column CSS grid system to make developing responsive websites easy and fast. @@ -29,7 +31,7 @@ All the code you need is simple and familiar. A parent container class contains To control the sizing behavior, you can apply a breakpoint to your column classes (EX: `.col-6-sm`). Not specifying a breakpoint is equal to using the medium breakpoint (EX: `.col-6-md`). -## Utility +### Utility - `left`: Aligns content to the left. - `right`: Aligns content to the right. @@ -38,14 +40,22 @@ Not specifying a breakpoint is equal to using the medium breakpoint (EX: `.col-6 - `hidden-sm` - `hidden-md` -## Typography +### Breakpoints + +- `sm`: 33.75em; // 540px +- `md`: 45em; // 720px +- `lg`: 60em; // 960px +n + +### Typography + +Note: typography is not included in the default Simple Gride+ CSS files and must be included seperately. - `font-light` - `font-regular` - `font-heavy` -## Breakpoints +## Building -- `sm`: 33.75em; // 540px -- `md`: 45em; // 720px -- `lg`: 60em; // 960px +1. `npm i` +2. `npm run build` From 479cf06ccecab660fa4f5411c6d6e463ee9744e0 Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Tue, 30 Jan 2024 06:54:26 -0800 Subject: [PATCH 16/17] Fixed breakpoint bugs --- README.md | 24 +++++++++++------------- src/_grid.scss | 17 ++++++++++------- src/_typography.scss | 2 ++ src/_utility.scss | 13 +++---------- src/default.scss | 8 ++++---- 5 files changed, 30 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index b8645f3..9c6a649 100644 --- a/README.md +++ b/README.md @@ -14,17 +14,17 @@ All the code you need is simple and familiar. A parent container class contains ```HTML
-
-
- -
-
- -
-
- -
-
+
+
+ +
+
+ +
+
+ +
+
``` @@ -38,14 +38,12 @@ Not specifying a breakpoint is equal to using the medium breakpoint (EX: `.col-6 - `center`: Centers content. - `justify`: Applies the "justify" content alignment. - `hidden-sm` -- `hidden-md` ### Breakpoints - `sm`: 33.75em; // 540px - `md`: 45em; // 720px - `lg`: 60em; // 960px -n ### Typography diff --git a/src/_grid.scss b/src/_grid.scss index 8c83ae6..a41e02e 100644 --- a/src/_grid.scss +++ b/src/_grid.scss @@ -1,5 +1,6 @@ @use "sass:math"; +/* Grid */ .container { width: 90%; margin-left: auto; @@ -32,6 +33,12 @@ clear: both; } +@for $i from 1 through $columns { + .col-#{$i} { + width: $width; + } +} + @media only screen and (min-width: $breakpoint-med) { @for $i from 1 through $columns { @@ -39,13 +46,9 @@ .col-#{$i}-md { width: calc($width / $columns * $i - $gutter); } - } -} -@media only screen and (min-width: $breakpoint-large) { - @for $i from 1 through $columns { - .col-#{$i}-lg { - width: calc($width / $columns * $i - $gutter); + .hidden-sm { + display: block; } } -} \ No newline at end of file +} diff --git a/src/_typography.scss b/src/_typography.scss index 9c783de..72eb1eb 100644 --- a/src/_typography.scss +++ b/src/_typography.scss @@ -1,3 +1,5 @@ +/* Typography */ + @import url(https://fonts.googleapis.com/css?family=Lato:400,300,300italic,400italic,700,700italic); * { diff --git a/src/_utility.scss b/src/_utility.scss index 9a8a0d0..8ea236d 100644 --- a/src/_utility.scss +++ b/src/_utility.scss @@ -1,3 +1,4 @@ +/* Utility */ .left { text-align: left; } @@ -16,14 +17,6 @@ text-align: justify; } -@media only screen and (min-width: $breakpoint-med) { - .hidden-sm { - display: none; - } -} - -@media only screen and (min-width: $breakpoint-large) { - .hidden-md { - display: none; - } +.hidden-sm { + display: none; } diff --git a/src/default.scss b/src/default.scss index 957dddc..900d6b7 100644 --- a/src/default.scss +++ b/src/default.scss @@ -1,7 +1,3 @@ -@import "_variables.scss"; -@import "_utility.scss"; -@import "_grid.scss"; - html, body { height: 100%; @@ -12,3 +8,7 @@ body { top: 0; font-size: 100%; } + +@import "_variables.scss"; +@import "_utility.scss"; +@import "_grid.scss"; From f2475db38b61ba389f331bc858f9372b6e05c65e Mon Sep 17 00:00:00 2001 From: Belle Aerni Date: Tue, 30 Jan 2024 07:01:01 -0800 Subject: [PATCH 17/17] Changed folder structure --- .github/workflows/build.yml | 2 +- .gitignore | 3 +-- package.json | 12 ++++++------ {src => sass}/_grid.scss | 0 {src => sass}/_typography.scss | 0 {src => sass}/_utility.scss | 0 {src => sass}/_variables.scss | 0 {src => sass}/default.scss | 0 {src => sass}/typography.scss | 0 9 files changed, 8 insertions(+), 9 deletions(-) rename {src => sass}/_grid.scss (100%) rename {src => sass}/_typography.scss (100%) rename {src => sass}/_utility.scss (100%) rename {src => sass}/_variables.scss (100%) rename {src => sass}/default.scss (100%) rename {src => sass}/typography.scss (100%) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a43f80c..7d17112 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -25,4 +25,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: build - path: ./dist/*.css + path: ./build/dist/*.css diff --git a/.gitignore b/.gitignore index d573201..3ac8565 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ node_modules/ -tmp/ -dist/ +build/ diff --git a/package.json b/package.json index 512cbfc..04d4d9b 100644 --- a/package.json +++ b/package.json @@ -1,12 +1,12 @@ { "scripts": { "build": "npm-run-all compile-default compile-typography process process-min process-typography process-min-typography", - "compile-default": "sass ./src/default.scss ./tmp/simple-grid.css", - "compile-typography": "sass ./src/typography.scss ./tmp/typography.css", - "process": "lightningcss --browserslist ./tmp/simple-grid.css -o dist/simple-grid.css", - "process-min": "lightningcss --minify --browserslist ./tmp/simple-grid.css -o dist/simple-grid-min.css", - "process-typography": "lightningcss --browserslist ./tmp/typography.css -o dist/typography.css", - "process-min-typography": "lightningcss --minify --browserslist ./tmp/typography.css -o dist/typography-min.css" + "compile-default": "sass ./sass/default.scss ./build/tmp/simple-grid.css", + "compile-typography": "sass ./sass/typography.scss ./build/tmp/typography.css", + "process": "lightningcss --browserslist ./build/tmp/simple-grid.css -o ./build/distsimple-grid.css", + "process-min": "lightningcss --minify --browserslist ./build/tmp/simple-grid.css -o ./build/distsimple-grid-min.css", + "process-typography": "lightningcss --browserslist ./build/tmp/typography.css -o ./build/disttypography.css", + "process-min-typography": "lightningcss --minify --browserslist ./build/tmp/typography.css -o ./build/disttypography-min.css" }, "dependencies": { "lightningcss-cli": "^1.23.0", diff --git a/src/_grid.scss b/sass/_grid.scss similarity index 100% rename from src/_grid.scss rename to sass/_grid.scss diff --git a/src/_typography.scss b/sass/_typography.scss similarity index 100% rename from src/_typography.scss rename to sass/_typography.scss diff --git a/src/_utility.scss b/sass/_utility.scss similarity index 100% rename from src/_utility.scss rename to sass/_utility.scss diff --git a/src/_variables.scss b/sass/_variables.scss similarity index 100% rename from src/_variables.scss rename to sass/_variables.scss diff --git a/src/default.scss b/sass/default.scss similarity index 100% rename from src/default.scss rename to sass/default.scss diff --git a/src/typography.scss b/sass/typography.scss similarity index 100% rename from src/typography.scss rename to sass/typography.scss