aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore4
-rw-r--r--.stylelintrc.json25
-rw-r--r--package.json18
-rw-r--r--pnpm-lock.yaml3399
-rw-r--r--src/_easing.scss27
-rw-r--r--src/_functions.scss146
-rw-r--r--src/_iro-sass.scss (renamed from src/index.scss)10
-rw-r--r--src/_props.scss462
-rw-r--r--src/bem/_block.scss8
-rw-r--r--test/_props.scss10
-rw-r--r--test/test.js4
11 files changed, 3665 insertions, 448 deletions
diff --git a/.gitignore b/.gitignore
index dc8af33..92beb11 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,4 +2,6 @@ node_modules
2sassdoc 2sassdoc
3.sassdoc 3.sassdoc
4test/**/*.css 4test/**/*.css
5yarn-error.log \ No newline at end of file 5yarn-error.log
6
7.idea \ No newline at end of file
diff --git a/.stylelintrc.json b/.stylelintrc.json
index 8a9a924..ad8225f 100644
--- a/.stylelintrc.json
+++ b/.stylelintrc.json
@@ -1,23 +1,16 @@
1{ 1{
2 "extends": "stylelint-config-sass-guidelines", 2 "extends": "stylelint-config-sass-guidelines",
3 "rules": { 3 "rules": {
4 "indentation": 4, 4 "@stylistic/indentation": 4,
5 "number-leading-zero": "never", 5 "@stylistic/number-leading-zero": "never",
6 "max-nesting-depth": 10, 6 "@stylistic/declaration-colon-space-after": null,
7 "max-nesting-depth": 9,
7 "selector-class-pattern": [ 8 "selector-class-pattern": [
8 "^[closut](-[a-z0-9]+)+(__[a-z0-9]+(-[a-z0-9]+)*)*(--[a-z0-9]+(-[a-z0-9]+)*)*(\\@[a-z0-9]+(-[a-z0-9]+)*)?$", 9 "^[closut](-[a-z0-9]+)+(__[a-z0-9]+(-[a-z0-9]+)*)*(--[a-z0-9]+(-[a-z0-9]+)*)*(\\@[a-z0-9]+(-[a-z0-9]+)*)?$",
9 { "resolveNestedSelectors": true } 10 {
11 "resolveNestedSelectors": true
12 }
10 ], 13 ],
11 "declaration-colon-space-after": null, 14 "scss/dollar-variable-colon-space-after": null
12 "function-parentheses-newline-inside": "always-multi-line", 15 }
13 "function-parentheses-space-inside": "never-single-line",
14 "scss/dollar-variable-colon-space-after": null,
15 "scss/dollar-variable-pattern": "[a-z0-9-]+"
16 },
17 "overrides": [
18 {
19 "files": ["src/**/*.scss"],
20 "customSyntax": "postcss-scss"
21 }
22 ]
23} 16}
diff --git a/package.json b/package.json
index a03255f..da3fcc5 100644
--- a/package.json
+++ b/package.json
@@ -4,9 +4,9 @@
4 "author": "Volpeon <me@volpeon.ink>", 4 "author": "Volpeon <me@volpeon.ink>",
5 "license": "MIT", 5 "license": "MIT",
6 "description": "A mixin-based Sass framework that makes it easier to work with BEM, organize variables and more.", 6 "description": "A mixin-based Sass framework that makes it easier to work with BEM, organize variables and more.",
7 "main": "src/index.scss", 7 "main": "src/_iro-sass.scss",
8 "style": "src/index.scss", 8 "style": "src/_iro-sass.scss",
9 "sass": "src/index.scss", 9 "sass": "src/_iro-sass.scss",
10 "keywords": [ 10 "keywords": [
11 "sass", 11 "sass",
12 "scss", 12 "scss",
@@ -24,14 +24,14 @@
24 }, 24 },
25 "homepage": "https://git.vulpes.one/iro-sass/", 25 "homepage": "https://git.vulpes.one/iro-sass/",
26 "devDependencies": { 26 "devDependencies": {
27 "mocha": "^9.2.0", 27 "mocha": "^10.7.3",
28 "nodemon": "^2.0.15", 28 "nodemon": "^3.1.7",
29 "postcss-scss": "^4.0.3", 29 "postcss-scss": "^4.0.3",
30 "sass": "^1.49.7", 30 "sass": "^1.79.4",
31 "sass-true": "^6.0.1", 31 "sass-true": "^8.1.0",
32 "sassdoc": "^2.7.3", 32 "sassdoc": "^2.7.3",
33 "stylelint": "^14.3.0", 33 "stylelint": "^16.9.0",
34 "stylelint-config-sass-guidelines": "^9.0.1" 34 "stylelint-config-sass-guidelines": "^12.1.0"
35 }, 35 },
36 "scripts": { 36 "scripts": {
37 "prepublishOnly": "npm run test", 37 "prepublishOnly": "npm run test",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
new file mode 100644
index 0000000..b436de9
--- /dev/null
+++ b/pnpm-lock.yaml
@@ -0,0 +1,3399 @@
1lockfileVersion: '9.0'
2
3settings:
4 autoInstallPeers: true
5 excludeLinksFromLockfile: false
6
7importers:
8
9 .:
10 devDependencies:
11 mocha:
12 specifier: ^10.7.3
13 version: 10.7.3
14 nodemon:
15 specifier: ^3.1.7
16 version: 3.1.7
17 postcss-scss:
18 specifier: ^4.0.3
19 version: 4.0.9(postcss@8.4.47)
20 sass:
21 specifier: ^1.79.4
22 version: 1.79.4
23 sass-true:
24 specifier: ^8.1.0
25 version: 8.1.0(sass@1.79.4)
26 sassdoc:
27 specifier: ^2.7.3
28 version: 2.7.4(chokidar@3.6.0)
29 stylelint:
30 specifier: ^16.9.0
31 version: 16.9.0
32 stylelint-config-sass-guidelines:
33 specifier: ^12.1.0
34 version: 12.1.0(postcss@8.4.47)(stylelint@16.9.0)
35
36packages:
37
38 '@adobe/css-tools@4.4.0':
39 resolution: {integrity: sha512-Ff9+ksdQQB3rMncgqDK78uLznstjyfIf2Arnh22pW8kBpLs6rpKDwgnZT46hin5Hl1WzazzK64DOrhSwYpS7bQ==}
40
41 '@babel/code-frame@7.25.7':
42 resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==}
43 engines: {node: '>=6.9.0'}
44
45 '@babel/helper-validator-identifier@7.25.7':
46 resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==}
47 engines: {node: '>=6.9.0'}
48
49 '@babel/highlight@7.25.7':
50 resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==}
51 engines: {node: '>=6.9.0'}
52
53 '@csstools/css-parser-algorithms@3.0.1':
54 resolution: {integrity: sha512-lSquqZCHxDfuTg/Sk2hiS0mcSFCEBuj49JfzPHJogDBT0mGCyY5A1AQzBWngitrp7i1/HAZpIgzF/VjhOEIJIg==}
55 engines: {node: '>=18'}
56 peerDependencies:
57 '@csstools/css-tokenizer': ^3.0.1
58
59 '@csstools/css-tokenizer@3.0.1':
60 resolution: {integrity: sha512-UBqaiu7kU0lfvaP982/o3khfXccVlHPWp0/vwwiIgDF0GmqqqxoiXC/6FCjlS9u92f7CoEz6nXKQnrn1kIAkOw==}
61 engines: {node: '>=18'}
62
63 '@csstools/media-query-list-parser@3.0.1':
64 resolution: {integrity: sha512-HNo8gGD02kHmcbX6PvCoUuOQvn4szyB9ca63vZHKX5A81QytgDG4oxG4IaEfHTlEZSZ6MjPEMWIVU+zF2PZcgw==}
65 engines: {node: '>=18'}
66 peerDependencies:
67 '@csstools/css-parser-algorithms': ^3.0.1
68 '@csstools/css-tokenizer': ^3.0.1
69
70 '@csstools/selector-specificity@4.0.0':
71 resolution: {integrity: sha512-189nelqtPd8++phaHNwYovKZI0FOzH1vQEE3QhHHkNIGrg5fSs9CbYP3RvfEH5geztnIA9Jwq91wyOIwAW5JIQ==}
72 engines: {node: '>=18'}
73 peerDependencies:
74 postcss-selector-parser: ^6.1.0
75
76 '@dual-bundle/import-meta-resolve@4.1.0':
77 resolution: {integrity: sha512-+nxncfwHM5SgAtrVzgpzJOI1ol0PkumhVo469KCf9lUi21IGcY90G98VuHm9VRrUypmAzawAHO9bs6hqeADaVg==}
78
79 '@jest/schemas@29.6.3':
80 resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
81 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
82
83 '@nodelib/fs.scandir@2.1.5':
84 resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
85 engines: {node: '>= 8'}
86
87 '@nodelib/fs.stat@2.0.5':
88 resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
89 engines: {node: '>= 8'}
90
91 '@nodelib/fs.walk@1.2.8':
92 resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
93 engines: {node: '>= 8'}
94
95 '@sinclair/typebox@0.27.8':
96 resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
97
98 '@sindresorhus/is@0.14.0':
99 resolution: {integrity: sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==}
100 engines: {node: '>=6'}
101
102 '@stylistic/stylelint-plugin@3.1.1':
103 resolution: {integrity: sha512-XagAHHIa528EvyGybv8EEYGK5zrVW74cHpsjhtovVATbhDRuJYfE+X4HCaAieW9lCkwbX6L+X0I4CiUG3w/hFw==}
104 engines: {node: ^18.12 || >=20.9}
105 peerDependencies:
106 stylelint: ^16.8.0
107
108 '@szmarczak/http-timer@1.1.2':
109 resolution: {integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==}
110 engines: {node: '>=6'}
111
112 '@types/keyv@3.1.4':
113 resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==}
114
115 '@types/node@20.14.7':
116 resolution: {integrity: sha512-uTr2m2IbJJucF3KUxgnGOZvYbN0QgkGyWxG6973HCpMYFy2KfcgYuIwkJQMQkt1VbBMlvWRbpshFTLxnxCZjKQ==}
117
118 '@types/responselike@1.0.3':
119 resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==}
120
121 a-sync-waterfall@1.0.1:
122 resolution: {integrity: sha512-RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA==}
123
124 ajv@8.17.1:
125 resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==}
126
127 ansi-align@3.0.1:
128 resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==}
129
130 ansi-colors@4.1.3:
131 resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
132 engines: {node: '>=6'}
133
134 ansi-regex@5.0.1:
135 resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
136 engines: {node: '>=8'}
137
138 ansi-regex@6.1.0:
139 resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==}
140 engines: {node: '>=12'}
141
142 ansi-styles@3.2.1:
143 resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
144 engines: {node: '>=4'}
145
146 ansi-styles@4.3.0:
147 resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
148 engines: {node: '>=8'}
149
150 ansi-styles@5.2.0:
151 resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
152 engines: {node: '>=10'}
153
154 anymatch@3.1.3:
155 resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
156 engines: {node: '>= 8'}
157
158 append-buffer@1.0.2:
159 resolution: {integrity: sha512-WLbYiXzD3y/ATLZFufV/rZvWdZOs+Z/+5v1rBZ463Jn398pa6kcde27cvozYnBoxXblGZTFfoPpsaEw0orU5BA==}
160 engines: {node: '>=0.10.0'}
161
162 argparse@1.0.10:
163 resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
164
165 argparse@2.0.1:
166 resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
167
168 array-union@2.1.0:
169 resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
170 engines: {node: '>=8'}
171
172 asap@2.0.6:
173 resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==}
174
175 astral-regex@2.0.0:
176 resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==}
177 engines: {node: '>=8'}
178
179 babel-runtime@6.26.0:
180 resolution: {integrity: sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==}
181
182 balanced-match@1.0.2:
183 resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
184
185 balanced-match@2.0.0:
186 resolution: {integrity: sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==}
187
188 binary-extensions@2.3.0:
189 resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
190 engines: {node: '>=8'}
191
192 boxen@4.2.0:
193 resolution: {integrity: sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==}
194 engines: {node: '>=8'}
195
196 brace-expansion@1.1.11:
197 resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
198
199 brace-expansion@2.0.1:
200 resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
201
202 braces@3.0.3:
203 resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
204 engines: {node: '>=8'}
205
206 browser-stdout@1.3.1:
207 resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==}
208
209 buffer-equal@1.0.1:
210 resolution: {integrity: sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg==}
211 engines: {node: '>=0.4'}
212
213 buffer-from@1.1.2:
214 resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
215
216 cacheable-request@6.1.0:
217 resolution: {integrity: sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==}
218 engines: {node: '>=8'}
219
220 call-bind@1.0.7:
221 resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
222 engines: {node: '>= 0.4'}
223
224 callsites@3.1.0:
225 resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
226 engines: {node: '>=6'}
227
228 camel-case@3.0.0:
229 resolution: {integrity: sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==}
230
231 camelcase@5.3.1:
232 resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
233 engines: {node: '>=6'}
234
235 camelcase@6.3.0:
236 resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
237 engines: {node: '>=10'}
238
239 cdocparser@0.13.0:
240 resolution: {integrity: sha512-bMi4t0qjeT0xQ8ECBmWcilMYcUNYsERQoatXveMIbItgqliZDCNyv2xfkBoKrs5H08ApeRMoysJLwgPiHtv7HQ==}
241
242 chalk@2.4.2:
243 resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
244 engines: {node: '>=4'}
245
246 chalk@3.0.0:
247 resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==}
248 engines: {node: '>=8'}
249
250 chalk@4.1.2:
251 resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
252 engines: {node: '>=10'}
253
254 chokidar@3.6.0:
255 resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
256 engines: {node: '>= 8.10.0'}
257
258 chokidar@4.0.1:
259 resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==}
260 engines: {node: '>= 14.16.0'}
261
262 chroma-js@1.4.1:
263 resolution: {integrity: sha512-jTwQiT859RTFN/vIf7s+Vl/Z2LcMrvMv3WUFmd/4u76AdlFC0NTNgqEEFPcRiHmAswPsMiQEDZLM8vX8qXpZNQ==}
264
265 ci-info@2.0.0:
266 resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==}
267
268 clean-css@4.2.4:
269 resolution: {integrity: sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==}
270 engines: {node: '>= 4.0'}
271
272 cli-boxes@2.2.1:
273 resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==}
274 engines: {node: '>=6'}
275
276 cliui@7.0.4:
277 resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==}
278
279 clone-buffer@1.0.0:
280 resolution: {integrity: sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==}
281 engines: {node: '>= 0.10'}
282
283 clone-response@1.0.3:
284 resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==}
285
286 clone-stats@0.0.1:
287 resolution: {integrity: sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA==}
288
289 clone-stats@1.0.0:
290 resolution: {integrity: sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag==}
291
292 clone@0.2.0:
293 resolution: {integrity: sha512-g62n3Kb9cszeZvmvBUqP/dsEJD/+80pDA8u8KqHnAPrVnQ2Je9rVV6opxkhuWCd1kCn2gOibzDKxCtBvD3q5kA==}
294
295 clone@1.0.4:
296 resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}
297 engines: {node: '>=0.8'}
298
299 clone@2.1.2:
300 resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==}
301 engines: {node: '>=0.8'}
302
303 cloneable-readable@1.1.3:
304 resolution: {integrity: sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==}
305
306 color-convert@1.9.3:
307 resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
308
309 color-convert@2.0.1:
310 resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
311 engines: {node: '>=7.0.0'}
312
313 color-name@1.1.3:
314 resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
315
316 color-name@1.1.4:
317 resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
318
319 colord@2.9.3:
320 resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
321
322 commander@2.17.1:
323 resolution: {integrity: sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==}
324
325 commander@2.19.0:
326 resolution: {integrity: sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==}
327
328 commander@5.1.0:
329 resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==}
330 engines: {node: '>= 6'}
331
332 concat-map@0.0.1:
333 resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
334
335 concat-stream@1.6.2:
336 resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==}
337 engines: {'0': node >= 0.8}
338
339 concat-stream@2.0.0:
340 resolution: {integrity: sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==}
341 engines: {'0': node >= 6.0}
342
343 configstore@5.0.1:
344 resolution: {integrity: sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==}
345 engines: {node: '>=8'}
346
347 convert-source-map@1.9.0:
348 resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
349
350 core-js@2.6.12:
351 resolution: {integrity: sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==}
352 deprecated: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
353
354 core-util-is@1.0.3:
355 resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
356
357 cosmiconfig@9.0.0:
358 resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==}
359 engines: {node: '>=14'}
360 peerDependencies:
361 typescript: '>=4.9.5'
362 peerDependenciesMeta:
363 typescript:
364 optional: true
365
366 crypto-random-string@2.0.0:
367 resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==}
368 engines: {node: '>=8'}
369
370 css-functions-list@3.2.2:
371 resolution: {integrity: sha512-c+N0v6wbKVxTu5gOBBFkr9BEdBWaqqjQeiJ8QvSRIJOf+UxlJh930m8e6/WNeODIK0mYLFkoONrnj16i2EcvfQ==}
372 engines: {node: '>=12 || >=16'}
373
374 css-tree@2.3.1:
375 resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==}
376 engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
377
378 cssesc@3.0.0:
379 resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
380 engines: {node: '>=4'}
381 hasBin: true
382
383 dargs@4.1.0:
384 resolution: {integrity: sha512-jyweV/k0rbv2WK4r9KLayuBrSh2Py0tNmV7LBoSMH4hMQyrG8OPyIOWB2VEx4DJKXWmK4lopYMVvORlDt2S8Aw==}
385 engines: {node: '>=0.10.0'}
386
387 debug@4.3.7:
388 resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==}
389 engines: {node: '>=6.0'}
390 peerDependencies:
391 supports-color: '*'
392 peerDependenciesMeta:
393 supports-color:
394 optional: true
395
396 decamelize@4.0.0:
397 resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==}
398 engines: {node: '>=10'}
399
400 decompress-response@3.3.0:
401 resolution: {integrity: sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==}
402 engines: {node: '>=4'}
403
404 deep-extend@0.6.0:
405 resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
406 engines: {node: '>=4.0.0'}
407
408 defer-to-connect@1.1.3:
409 resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==}
410
411 define-data-property@1.1.4:
412 resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
413 engines: {node: '>= 0.4'}
414
415 define-properties@1.2.1:
416 resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
417 engines: {node: '>= 0.4'}
418
419 diff-sequences@29.6.3:
420 resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
421 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
422
423 diff@5.2.0:
424 resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==}
425 engines: {node: '>=0.3.1'}
426
427 dir-glob@3.0.1:
428 resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
429 engines: {node: '>=8'}
430
431 docopt@0.6.2:
432 resolution: {integrity: sha512-NqTbaYeE4gA/wU1hdKFdU+AFahpDOpgGLzHP42k6H6DKExJd0A55KEVWYhL9FEmHmgeLvEU2vuKXDuU+4yToOw==}
433 engines: {node: '>=0.10.0'}
434
435 dot-prop@5.3.0:
436 resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==}
437 engines: {node: '>=8'}
438
439 duplexer2@0.1.4:
440 resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==}
441
442 duplexer3@0.1.5:
443 resolution: {integrity: sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==}
444
445 duplexify@3.7.1:
446 resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==}
447
448 emoji-regex@8.0.0:
449 resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
450
451 end-of-stream@1.4.4:
452 resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==}
453
454 ends-with@0.2.0:
455 resolution: {integrity: sha512-lRppY4dK3VkqBdR242sKcAJeYc8Gf/DhoX9AWvWI2RzccmLnqBQfwm2k4oSDv5MPDjUqawCauXhZkyWxkVhRsg==}
456 engines: {node: '>=0.10.0'}
457
458 env-paths@2.2.1:
459 resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
460 engines: {node: '>=6'}
461
462 error-ex@1.3.2:
463 resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
464
465 es-define-property@1.0.0:
466 resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
467 engines: {node: '>= 0.4'}
468
469 es-errors@1.3.0:
470 resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
471 engines: {node: '>= 0.4'}
472
473 es6-denodeify@0.1.5:
474 resolution: {integrity: sha512-731Rf4NqlPvhkT1pIF7r8vZxESJlWocNpXLuyPlVnfEGXlwuJaMvU5WpyyDjpudDC2cgXVX849xljzvQqBg1QQ==}
475
476 es6-promise@3.3.1:
477 resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==}
478
479 es6-promise@4.2.8:
480 resolution: {integrity: sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==}
481
482 escalade@3.2.0:
483 resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
484 engines: {node: '>=6'}
485
486 escape-goat@2.1.1:
487 resolution: {integrity: sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==}
488 engines: {node: '>=8'}
489
490 escape-string-regexp@1.0.5:
491 resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
492 engines: {node: '>=0.8.0'}
493
494 escape-string-regexp@4.0.0:
495 resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
496 engines: {node: '>=10'}
497
498 esprima@4.0.1:
499 resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
500 engines: {node: '>=4'}
501 hasBin: true
502
503 extend@3.0.2:
504 resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
505
506 fast-deep-equal@3.1.3:
507 resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
508
509 fast-glob@3.3.2:
510 resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
511 engines: {node: '>=8.6.0'}
512
513 fast-uri@3.0.2:
514 resolution: {integrity: sha512-GR6f0hD7XXyNJa25Tb9BuIdN0tdr+0BMi6/CJPH3wJO1JjNG3n/VsSw38AwRdKZABm8lGbPfakLRkYzx2V9row==}
515
516 fastest-levenshtein@1.0.16:
517 resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==}
518 engines: {node: '>= 4.9.1'}
519
520 fastq@1.17.1:
521 resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==}
522
523 file-entry-cache@9.1.0:
524 resolution: {integrity: sha512-/pqPFG+FdxWQj+/WSuzXSDaNzxgTLr/OrR1QuqfEZzDakpdYE70PwUxL7BPUa8hpjbvY1+qvCl8k+8Tq34xJgg==}
525 engines: {node: '>=18'}
526
527 fill-range@7.1.1:
528 resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
529 engines: {node: '>=8'}
530
531 find-index@0.1.1:
532 resolution: {integrity: sha512-uJ5vWrfBKMcE6y2Z8834dwEZj9mNGxYa3t3I53OwFeuZ8D9oc2E5zcsrkuhX6h4iYrjhiv0T3szQmxlAV9uxDg==}
533
534 find-up@5.0.0:
535 resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
536 engines: {node: '>=10'}
537
538 flat-cache@5.0.0:
539 resolution: {integrity: sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==}
540 engines: {node: '>=18'}
541
542 flat@5.0.2:
543 resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==}
544 hasBin: true
545
546 flatted@3.3.1:
547 resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
548
549 flush-write-stream@1.1.1:
550 resolution: {integrity: sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==}
551
552 fs-extra@2.1.2:
553 resolution: {integrity: sha512-9ztMtDZtSKC78V8mev+k31qaTabbmuH5jatdvPBMikrFHvw5BqlYnQIn/WGK3WHeRooSTkRvLa2IPlaHjPq5Sg==}
554
555 fs-mkdirp-stream@1.0.0:
556 resolution: {integrity: sha512-+vSd9frUnapVC2RZYfL3FCB2p3g4TBhaUmrsWlSudsGdnxIuUvBB2QM1VZeBtc49QFwrp+wQLrDs3+xxDgI5gQ==}
557 engines: {node: '>= 0.10'}
558
559 fs.realpath@1.0.0:
560 resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
561
562 fsevents@2.3.3:
563 resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
564 engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
565 os: [darwin]
566
567 function-bind@1.1.2:
568 resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
569
570 get-caller-file@2.0.5:
571 resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
572 engines: {node: 6.* || 8.* || >= 10.*}
573
574 get-intrinsic@1.2.4:
575 resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
576 engines: {node: '>= 0.4'}
577
578 get-stdin@4.0.1:
579 resolution: {integrity: sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==}
580 engines: {node: '>=0.10.0'}
581
582 get-stream@4.1.0:
583 resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==}
584 engines: {node: '>=6'}
585
586 get-stream@5.2.0:
587 resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==}
588 engines: {node: '>=8'}
589
590 glob-parent@3.1.0:
591 resolution: {integrity: sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==}
592
593 glob-parent@5.1.2:
594 resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
595 engines: {node: '>= 6'}
596
597 glob-stream@6.1.0:
598 resolution: {integrity: sha512-uMbLGAP3S2aDOHUDfdoYcdIePUCfysbAd0IAoWVZbeGU/oNQ8asHVSshLDJUPWxfzj8zsCG7/XeHPHTtow0nsw==}
599 engines: {node: '>= 0.10'}
600
601 glob2base@0.0.12:
602 resolution: {integrity: sha512-ZyqlgowMbfj2NPjxaZZ/EtsXlOch28FRXgMd64vqZWk1bT9+wvSRLYD1om9M7QfQru51zJPAT17qXm4/zd+9QA==}
603 engines: {node: '>= 0.10'}
604
605 glob@7.2.3:
606 resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
607 deprecated: Glob versions prior to v9 are no longer supported
608
609 glob@8.1.0:
610 resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==}
611 engines: {node: '>=12'}
612 deprecated: Glob versions prior to v9 are no longer supported
613
614 global-dirs@2.1.0:
615 resolution: {integrity: sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ==}
616 engines: {node: '>=8'}
617
618 global-modules@2.0.0:
619 resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==}
620 engines: {node: '>=6'}
621
622 global-prefix@3.0.0:
623 resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==}
624 engines: {node: '>=6'}
625
626 globby@11.1.0:
627 resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
628 engines: {node: '>=10'}
629
630 globjoin@0.1.4:
631 resolution: {integrity: sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==}
632
633 gopd@1.0.1:
634 resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
635
636 got@9.6.0:
637 resolution: {integrity: sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==}
638 engines: {node: '>=8.6'}
639
640 graceful-fs@4.2.11:
641 resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
642
643 has-flag@3.0.0:
644 resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
645 engines: {node: '>=4'}
646
647 has-flag@4.0.0:
648 resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
649 engines: {node: '>=8'}
650
651 has-property-descriptors@1.0.2:
652 resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
653
654 has-proto@1.0.3:
655 resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==}
656 engines: {node: '>= 0.4'}
657
658 has-symbols@1.0.3:
659 resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
660 engines: {node: '>= 0.4'}
661
662 has-yarn@2.1.0:
663 resolution: {integrity: sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==}
664 engines: {node: '>=8'}
665
666 hasown@2.0.2:
667 resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
668 engines: {node: '>= 0.4'}
669
670 he@1.2.0:
671 resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
672 hasBin: true
673
674 html-minifier@3.5.21:
675 resolution: {integrity: sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==}
676 engines: {node: '>=4'}
677 hasBin: true
678
679 html-tags@3.3.1:
680 resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==}
681 engines: {node: '>=8'}
682
683 http-cache-semantics@4.1.1:
684 resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==}
685
686 ignore-by-default@1.0.1:
687 resolution: {integrity: sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==}
688
689 ignore@5.3.2:
690 resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
691 engines: {node: '>= 4'}
692
693 immutable@4.3.7:
694 resolution: {integrity: sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==}
695
696 import-fresh@3.3.0:
697 resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
698 engines: {node: '>=6'}
699
700 import-lazy@2.1.0:
701 resolution: {integrity: sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==}
702 engines: {node: '>=4'}
703
704 imurmurhash@0.1.4:
705 resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
706 engines: {node: '>=0.8.19'}
707
708 inflight@1.0.6:
709 resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
710 deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
711
712 inherits@2.0.4:
713 resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
714
715 ini@1.3.7:
716 resolution: {integrity: sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==}
717
718 ini@1.3.8:
719 resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
720
721 is-absolute@1.0.0:
722 resolution: {integrity: sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==}
723 engines: {node: '>=0.10.0'}
724
725 is-arrayish@0.2.1:
726 resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
727
728 is-binary-path@2.1.0:
729 resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
730 engines: {node: '>=8'}
731
732 is-buffer@1.1.6:
733 resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==}
734
735 is-ci@2.0.0:
736 resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==}
737 hasBin: true
738
739 is-extglob@2.1.1:
740 resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
741 engines: {node: '>=0.10.0'}
742
743 is-fullwidth-code-point@3.0.0:
744 resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
745 engines: {node: '>=8'}
746
747 is-glob@3.1.0:
748 resolution: {integrity: sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==}
749 engines: {node: '>=0.10.0'}
750
751 is-glob@4.0.3:
752 resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
753 engines: {node: '>=0.10.0'}
754
755 is-installed-globally@0.3.2:
756 resolution: {integrity: sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==}
757 engines: {node: '>=8'}
758
759 is-negated-glob@1.0.0:
760 resolution: {integrity: sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug==}
761 engines: {node: '>=0.10.0'}
762
763 is-npm@4.0.0:
764 resolution: {integrity: sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig==}
765 engines: {node: '>=8'}
766
767 is-number@7.0.0:
768 resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
769 engines: {node: '>=0.12.0'}
770
771 is-obj@2.0.0:
772 resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==}
773 engines: {node: '>=8'}
774
775 is-path-inside@3.0.3:
776 resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
777 engines: {node: '>=8'}
778
779 is-plain-obj@2.1.0:
780 resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==}
781 engines: {node: '>=8'}
782
783 is-plain-object@5.0.0:
784 resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==}
785 engines: {node: '>=0.10.0'}
786
787 is-relative@1.0.0:
788 resolution: {integrity: sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==}
789 engines: {node: '>=0.10.0'}
790
791 is-typedarray@1.0.0:
792 resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==}
793
794 is-unc-path@1.0.0:
795 resolution: {integrity: sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==}
796 engines: {node: '>=0.10.0'}
797
798 is-unicode-supported@0.1.0:
799 resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
800 engines: {node: '>=10'}
801
802 is-utf8@0.2.1:
803 resolution: {integrity: sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==}
804
805 is-valid-glob@1.0.0:
806 resolution: {integrity: sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==}
807 engines: {node: '>=0.10.0'}
808
809 is-windows@1.0.2:
810 resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
811 engines: {node: '>=0.10.0'}
812
813 is-yarn-global@0.3.0:
814 resolution: {integrity: sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==}
815
816 isarray@0.0.1:
817 resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==}
818
819 isarray@1.0.0:
820 resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
821
822 isexe@2.0.0:
823 resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
824
825 jest-diff@29.7.0:
826 resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==}
827 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
828
829 jest-get-type@29.6.3:
830 resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==}
831 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
832
833 js-tokens@4.0.0:
834 resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
835
836 js-yaml@3.14.1:
837 resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
838 hasBin: true
839
840 js-yaml@4.1.0:
841 resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
842 hasBin: true
843
844 json-buffer@3.0.0:
845 resolution: {integrity: sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==}
846
847 json-buffer@3.0.1:
848 resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
849
850 json-parse-even-better-errors@2.3.1:
851 resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
852
853 json-schema-traverse@1.0.0:
854 resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
855
856 json-stable-stringify-without-jsonify@1.0.1:
857 resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
858
859 jsonfile@2.4.0:
860 resolution: {integrity: sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==}
861
862 keyv@3.1.0:
863 resolution: {integrity: sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==}
864
865 keyv@4.5.4:
866 resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
867
868 kind-of@6.0.3:
869 resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
870 engines: {node: '>=0.10.0'}
871
872 known-css-properties@0.34.0:
873 resolution: {integrity: sha512-tBECoUqNFbyAY4RrbqsBQqDFpGXAEbdD5QKr8kACx3+rnArmuuR22nKQWKazvp07N9yjTyDZaw/20UIH8tL9DQ==}
874
875 latest-version@5.1.0:
876 resolution: {integrity: sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==}
877 engines: {node: '>=8'}
878
879 lazystream@1.0.1:
880 resolution: {integrity: sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==}
881 engines: {node: '>= 0.6.3'}
882
883 lead@1.0.0:
884 resolution: {integrity: sha512-IpSVCk9AYvLHo5ctcIXxOBpMWUe+4TKN3VPWAKUbJikkmsGp0VrSM8IttVc32D6J4WUsiPE6aEFRNmIoF/gdow==}
885 engines: {node: '>= 0.10'}
886
887 lines-and-columns@1.2.4:
888 resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
889
890 locate-path@6.0.0:
891 resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
892 engines: {node: '>=10'}
893
894 lodash._basebind@2.4.1:
895 resolution: {integrity: sha512-VGHm6DH+1UiuafQdE/DNMqxOcSyhRu0xO9+jPDq7xITRn5YOorGrHVQmavMVXCYmTm80YRTZZCn/jTW7MokwLg==}
896
897 lodash._basecreate@2.4.1:
898 resolution: {integrity: sha512-8JJ3FnMPm54t3BwPLk8q8mPyQKQXm/rt9df+awr4NGtyJrtcCXM3Of1I86S6jVy1b4yAyFBb8wbKPEauuqzRmQ==}
899
900 lodash._basecreatecallback@2.4.1:
901 resolution: {integrity: sha512-SLczhg860fGW7AKlYcuOFstDtJuQhaANlJ4Y/jrOoRxhmVtK41vbJDH3OefVRSRkSCQo4HI82QVkAVsoGa5gSw==}
902
903 lodash._basecreatewrapper@2.4.1:
904 resolution: {integrity: sha512-x2ja1fa/qmzbizuXgVM4QAP9svtMbdxjG8Anl9bCeDAwLOVQ1vLrA0hLb/NkpbGi9evjtkl0aWLTEoOlUdBPQA==}
905
906 lodash._createwrapper@2.4.1:
907 resolution: {integrity: sha512-5TCfLt1haQpsa7bgLYRKNNE4yqhO4ZxIayN1btQmazMchO6Q8JYFRMqbJ3W+uNmMm4R0Jw7KGkZX5YfDDnywuw==}
908
909 lodash._isnative@2.4.1:
910 resolution: {integrity: sha512-BOlKGKNHhCHswGOWtmVb5zBygyxN7EmTuzVOSQI6QSoGhG+kvv71gICFS1TBpnqvT1n53txK8CDK3u5D2/GZxQ==}
911
912 lodash._objecttypes@2.4.1:
913 resolution: {integrity: sha512-XpqGh1e7hhkOzftBfWE7zt+Yn9mVHFkDhicVttvKLsoCMLVVL+xTQjfjB4X4vtznauxv0QZ5ZAeqjvat0dh62Q==}
914
915 lodash._setbinddata@2.4.1:
916 resolution: {integrity: sha512-Vx0XKzpg2DFbQw4wrp1xSWd2sfl3W/BG6bucSRZmftS1AzbWRemCmBQDxyQTNhlLNec428PXkuuja+VNBZgu2A==}
917
918 lodash._shimkeys@2.4.1:
919 resolution: {integrity: sha512-lBrglYxLD/6KAJ8IEa5Lg+YHgNAL7FyKqXg4XOUI+Du/vtniLs1ZqS+yHNKPkK54waAgkdUnDOYaWf+rv4B+AA==}
920
921 lodash._slice@2.4.1:
922 resolution: {integrity: sha512-+odPJa4PE2UgYnQgJgkLs0UD03QU78R2ivhrFnG9GdtYOZdE6ObxOj7KiUEUlqOOgatFT+ZqSypFjDSduTigKg==}
923
924 lodash.assign@2.4.1:
925 resolution: {integrity: sha512-AqQ4AJz5buSx9ELXWt5dONwJyVPd4NTADMKhoVYWCugjoVf172/LpvVhwmSJn4g8/Dc0S8hxTe8rt5Dob3X9KQ==}
926
927 lodash.bind@2.4.1:
928 resolution: {integrity: sha512-hn2VWYZ+N9aYncRad4jORvlGgpFrn+axnPIWRvFxjk6CWcZH5b5alI8EymYsHITI23Z9wrW/+ORq+azrVFpOfw==}
929
930 lodash.difference@4.5.0:
931 resolution: {integrity: sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==}
932
933 lodash.identity@2.4.1:
934 resolution: {integrity: sha512-VRYX+8XipeLjorag5bz3YBBRJ+5kj8hVBzfnaHgXPZAVTYowBdY5l0M5ZnOmlAMCOXBFabQtm7f5VqjMKEji0w==}
935
936 lodash.isfunction@2.4.1:
937 resolution: {integrity: sha512-6XcAB3izeQxPOQQNAJbbdjXbvWEt2Pn9ezPrjr4CwoLwmqsLVbsiEXD19cmmt4mbzOCOCdHzOQiUivUOJLra7w==}
938
939 lodash.isobject@2.4.1:
940 resolution: {integrity: sha512-sTebg2a1PoicYEZXD5PBdQcTlIJ6hUslrlWr7iV0O7n+i4596s2NQ9I5CaZ5FbXSfya/9WQsrYLANUJv9paYVA==}
941
942 lodash.keys@2.4.1:
943 resolution: {integrity: sha512-ZpJhwvUXHSNL5wYd1RM6CUa2ZuqorG9ngoJ9Ix5Cce+uX7I5O/E06FCJdhSZ33b5dVyeQDnIlWH7B2s5uByZ7g==}
944
945 lodash.noop@2.4.1:
946 resolution: {integrity: sha512-uNcV98/blRhInPUGQEnj9ekXXfG+q+rfoNSFZgl/eBfog9yBDW9gfUv2AHX/rAF7zZRlzWhbslGhbGQFZlCkZA==}
947
948 lodash.support@2.4.1:
949 resolution: {integrity: sha512-6SwqWwGFHhTXEiqB/yQgu8FYd//tm786d49y7kizHVCJH7zdzs191UQn3ES3tkkDbUddNRfkCRYqJFHtbLnbCw==}
950
951 lodash.truncate@4.4.2:
952 resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==}
953
954 lodash.uniq@4.5.0:
955 resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==}
956
957 lodash@4.17.21:
958 resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
959
960 log-symbols@4.1.0:
961 resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}
962 engines: {node: '>=10'}
963
964 lower-case@1.1.4:
965 resolution: {integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==}
966
967 lowercase-keys@1.0.1:
968 resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==}
969 engines: {node: '>=0.10.0'}
970
971 lowercase-keys@2.0.0:
972 resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==}
973 engines: {node: '>=8'}
974
975 make-dir@3.1.0:
976 resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==}
977 engines: {node: '>=8'}
978
979 marked@0.6.3:
980 resolution: {integrity: sha512-Fqa7eq+UaxfMriqzYLayfqAE40WN03jf+zHjT18/uXNuzjq3TY0XTbrAoPeqSJrAmPz11VuUA+kBPYOhHt9oOQ==}
981 engines: {node: '>=0.10.0'}
982 hasBin: true
983
984 mathml-tag-names@2.1.3:
985 resolution: {integrity: sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==}
986
987 mdn-data@2.0.30:
988 resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==}
989
990 memoize-decorator@1.0.2:
991 resolution: {integrity: sha512-G2vHcq4c+EwnBAOeWCH1mNz99QPCgm4ECjhHOd3SFZm66jVlwhBLdqhCvnHxptaRyZfm8ap3igoeDfrO92+uHQ==}
992
993 meow@13.2.0:
994 resolution: {integrity: sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==}
995 engines: {node: '>=18'}
996
997 merge2@1.4.1:
998 resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
999 engines: {node: '>= 8'}
1000
1001 micromatch@4.0.8:
1002 resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
1003 engines: {node: '>=8.6'}
1004
1005 mimic-response@1.0.1:
1006 resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==}
1007 engines: {node: '>=4'}
1008
1009 min-indent@1.0.1:
1010 resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
1011 engines: {node: '>=4'}
1012
1013 minimatch@3.1.2:
1014 resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
1015
1016 minimatch@5.1.6:
1017 resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==}
1018 engines: {node: '>=10'}
1019
1020 minimist@1.2.8:
1021 resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
1022
1023 mkdirp@1.0.4:
1024 resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==}
1025 engines: {node: '>=10'}
1026 hasBin: true
1027
1028 mocha@10.7.3:
1029 resolution: {integrity: sha512-uQWxAu44wwiACGqjbPYmjo7Lg8sFrS3dQe7PP2FQI+woptP4vZXSMcfMyFL/e1yFEeEpV4RtyTpZROOKmxis+A==}
1030 engines: {node: '>= 14.0.0'}
1031 hasBin: true
1032
1033 ms@2.1.3:
1034 resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
1035
1036 multipipe@1.0.2:
1037 resolution: {integrity: sha512-6uiC9OvY71vzSGX8lZvSqscE7ft9nPupJ8fMjrCNRAUy2LREUW42UL+V/NTrogr6rFgRydUrCX4ZitfpSNkSCQ==}
1038
1039 nanoid@3.3.7:
1040 resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
1041 engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
1042 hasBin: true
1043
1044 no-case@2.3.2:
1045 resolution: {integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==}
1046
1047 nodemon@3.1.7:
1048 resolution: {integrity: sha512-hLj7fuMow6f0lbB0cD14Lz2xNjwsyruH251Pk4t/yIitCFJbmY1myuLlHm/q06aST4jg6EgAh74PIBBrRqpVAQ==}
1049 engines: {node: '>=10'}
1050 hasBin: true
1051
1052 normalize-path@2.1.1:
1053 resolution: {integrity: sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==}
1054 engines: {node: '>=0.10.0'}
1055
1056 normalize-path@3.0.0:
1057 resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
1058 engines: {node: '>=0.10.0'}
1059
1060 normalize-url@4.5.1:
1061 resolution: {integrity: sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==}
1062 engines: {node: '>=8'}
1063
1064 now-and-later@2.0.1:
1065 resolution: {integrity: sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==}
1066 engines: {node: '>= 0.10'}
1067
1068 number-is-nan@1.0.1:
1069 resolution: {integrity: sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==}
1070 engines: {node: '>=0.10.0'}
1071
1072 nunjucks@3.2.4:
1073 resolution: {integrity: sha512-26XRV6BhkgK0VOxfbU5cQI+ICFUtMLixv1noZn1tGU38kQH5A5nmmbk/O45xdyBhD1esk47nKrY0mvQpZIhRjQ==}
1074 engines: {node: '>= 6.9.0'}
1075 hasBin: true
1076 peerDependencies:
1077 chokidar: ^3.3.0
1078 peerDependenciesMeta:
1079 chokidar:
1080 optional: true
1081
1082 object-assign@3.0.0:
1083 resolution: {integrity: sha512-jHP15vXVGeVh1HuaA2wY6lxk+whK/x4KBG88VXeRma7CCun7iGD5qPc4eYykQ9sdQvg8jkwFKsSxHln2ybW3xQ==}
1084 engines: {node: '>=0.10.0'}
1085
1086 object-assign@4.1.1:
1087 resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
1088 engines: {node: '>=0.10.0'}
1089
1090 object-keys@1.1.1:
1091 resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
1092 engines: {node: '>= 0.4'}
1093
1094 object.assign@4.1.5:
1095 resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==}
1096 engines: {node: '>= 0.4'}
1097
1098 once@1.4.0:
1099 resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
1100
1101 ordered-read-streams@1.0.1:
1102 resolution: {integrity: sha512-Z87aSjx3r5c0ZB7bcJqIgIRX5bxR7A4aSzvIbaxd0oTkWBCOoKfuGHiKj60CHVUgg1Phm5yMZzBdt8XqRs73Mw==}
1103
1104 p-cancelable@1.1.0:
1105 resolution: {integrity: sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==}
1106 engines: {node: '>=6'}
1107
1108 p-limit@3.1.0:
1109 resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
1110 engines: {node: '>=10'}
1111
1112 p-locate@5.0.0:
1113 resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
1114 engines: {node: '>=10'}
1115
1116 package-json@6.5.0:
1117 resolution: {integrity: sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==}
1118 engines: {node: '>=8'}
1119
1120 param-case@2.1.1:
1121 resolution: {integrity: sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==}
1122
1123 parent-module@1.0.1:
1124 resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
1125 engines: {node: '>=6'}
1126
1127 parse-json@5.2.0:
1128 resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
1129 engines: {node: '>=8'}
1130
1131 path-dirname@1.0.2:
1132 resolution: {integrity: sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==}
1133
1134 path-exists@4.0.0:
1135 resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
1136 engines: {node: '>=8'}
1137
1138 path-is-absolute@1.0.1:
1139 resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
1140 engines: {node: '>=0.10.0'}
1141
1142 path-type@4.0.0:
1143 resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
1144 engines: {node: '>=8'}
1145
1146 picocolors@1.1.0:
1147 resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==}
1148
1149 picomatch@2.3.1:
1150 resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
1151 engines: {node: '>=8.6'}
1152
1153 postcss-media-query-parser@0.2.3:
1154 resolution: {integrity: sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==}
1155
1156 postcss-resolve-nested-selector@0.1.6:
1157 resolution: {integrity: sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==}
1158
1159 postcss-safe-parser@7.0.1:
1160 resolution: {integrity: sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==}
1161 engines: {node: '>=18.0'}
1162 peerDependencies:
1163 postcss: ^8.4.31
1164
1165 postcss-scss@4.0.9:
1166 resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==}
1167 engines: {node: '>=12.0'}
1168 peerDependencies:
1169 postcss: ^8.4.29
1170
1171 postcss-selector-parser@6.1.2:
1172 resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
1173 engines: {node: '>=4'}
1174
1175 postcss-value-parser@4.2.0:
1176 resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
1177
1178 postcss@8.4.47:
1179 resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==}
1180 engines: {node: ^10 || ^12 || >=14}
1181
1182 prepend-http@2.0.0:
1183 resolution: {integrity: sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==}
1184 engines: {node: '>=4'}
1185
1186 pretty-format@29.7.0:
1187 resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
1188 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
1189
1190 process-nextick-args@2.0.1:
1191 resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
1192
1193 pstree.remy@1.1.8:
1194 resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==}
1195
1196 pump@2.0.1:
1197 resolution: {integrity: sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==}
1198
1199 pump@3.0.0:
1200 resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==}
1201
1202 pumpify@1.5.1:
1203 resolution: {integrity: sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==}
1204
1205 pupa@2.1.1:
1206 resolution: {integrity: sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==}
1207 engines: {node: '>=8'}
1208
1209 q@1.5.1:
1210 resolution: {integrity: sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==}
1211 engines: {node: '>=0.6.0', teleport: '>=0.2.0'}
1212 deprecated: |-
1213 You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other.
1214
1215 (For a CapTP with native promises, see @endo/eventual-send and @endo/captp)
1216
1217 queue-microtask@1.2.3:
1218 resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
1219
1220 randombytes@2.1.0:
1221 resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
1222
1223 rc@1.2.8:
1224 resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
1225 hasBin: true
1226
1227 react-is@18.3.1:
1228 resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==}
1229
1230 readable-stream@1.1.14:
1231 resolution: {integrity: sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==}
1232
1233 readable-stream@2.3.8:
1234 resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
1235
1236 readable-stream@3.6.2:
1237 resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
1238 engines: {node: '>= 6'}
1239
1240 readdirp@3.6.0:
1241 resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
1242 engines: {node: '>=8.10.0'}
1243
1244 readdirp@4.0.2:
1245 resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==}
1246 engines: {node: '>= 14.16.0'}
1247
1248 regenerator-runtime@0.11.1:
1249 resolution: {integrity: sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==}
1250
1251 registry-auth-token@4.2.2:
1252 resolution: {integrity: sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==}
1253 engines: {node: '>=6.0.0'}
1254
1255 registry-url@5.1.0:
1256 resolution: {integrity: sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==}
1257 engines: {node: '>=8'}
1258
1259 relateurl@0.2.7:
1260 resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==}
1261 engines: {node: '>= 0.10'}
1262
1263 remove-bom-buffer@3.0.0:
1264 resolution: {integrity: sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==}
1265 engines: {node: '>=0.10.0'}
1266
1267 remove-bom-stream@1.2.0:
1268 resolution: {integrity: sha512-wigO8/O08XHb8YPzpDDT+QmRANfW6vLqxfaXm1YXhnFf3AkSLyjfG3GEFg4McZkmgL7KvCj5u2KczkvSP6NfHA==}
1269 engines: {node: '>= 0.10'}
1270
1271 remove-trailing-separator@1.1.0:
1272 resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==}
1273
1274 replace-ext@0.0.1:
1275 resolution: {integrity: sha512-AFBWBy9EVRTa/LhEcG8QDP3FvpwZqmvN2QFDuJswFeaVhWnZMp8q3E6Zd90SR04PlIwfGdyVjNyLPyen/ek5CQ==}
1276 engines: {node: '>= 0.4'}
1277
1278 replace-ext@1.0.1:
1279 resolution: {integrity: sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==}
1280 engines: {node: '>= 0.10'}
1281
1282 require-directory@2.1.1:
1283 resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
1284 engines: {node: '>=0.10.0'}
1285
1286 require-from-string@2.0.2:
1287 resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
1288 engines: {node: '>=0.10.0'}
1289
1290 resolve-from@4.0.0:
1291 resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
1292 engines: {node: '>=4'}
1293
1294 resolve-from@5.0.0:
1295 resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
1296 engines: {node: '>=8'}
1297
1298 resolve-options@1.1.0:
1299 resolution: {integrity: sha512-NYDgziiroVeDC29xq7bp/CacZERYsA9bXYd1ZmcJlF3BcrZv5pTb4NG7SjdyKDnXZ84aC4vo2u6sNKIA1LCu/A==}
1300 engines: {node: '>= 0.10'}
1301
1302 responselike@1.0.2:
1303 resolution: {integrity: sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==}
1304
1305 reusify@1.0.4:
1306 resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
1307 engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
1308
1309 rimraf@2.7.1:
1310 resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==}
1311 deprecated: Rimraf versions prior to v4 are no longer supported
1312 hasBin: true
1313
1314 rimraf@3.0.2:
1315 resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
1316 deprecated: Rimraf versions prior to v4 are no longer supported
1317 hasBin: true
1318
1319 run-parallel@1.2.0:
1320 resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
1321
1322 safe-buffer@5.1.2:
1323 resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
1324
1325 safe-buffer@5.2.1:
1326 resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
1327
1328 safe-wipe@0.2.5:
1329 resolution: {integrity: sha512-MwTNf4YrRqCHsB5jUzOVdXoRbW4jkhgTvhlyfiaxox8EP7cOCiD4ydMOQCxDPR9KpvwdBSM2dQHScV1m85k8wQ==}
1330
1331 sass-convert@0.5.2:
1332 resolution: {integrity: sha512-eV9wXZg7MrHmnKLD6WojC/WX7lhLm+PSSLrOukzRIECa04fGbkmFDO9Ot9/82KjzSe+VEClYe9WDKzCuBz30Dg==}
1333 engines: {node: '>=0.10.0', npm: '>=2.1.0'}
1334
1335 sass-true@8.1.0:
1336 resolution: {integrity: sha512-LUiNRslsNreGk8Oe85ZvMmV0mlIh3LFP2KTDMZsSHz5DxPElCy7wI9ocJzf8IpIf7Q5ZO0w+hDBF1nbdUcmZHA==}
1337 engines: {node: '>=18'}
1338 peerDependencies:
1339 sass: '>=1.45.0'
1340 sass-embedded: '>=1.45.0'
1341 peerDependenciesMeta:
1342 sass:
1343 optional: true
1344 sass-embedded:
1345 optional: true
1346
1347 sass@1.79.4:
1348 resolution: {integrity: sha512-K0QDSNPXgyqO4GZq2HO5Q70TLxTH6cIT59RdoCHMivrC8rqzaTw5ab9prjz9KUN1El4FLXrBXJhik61JR4HcGg==}
1349 engines: {node: '>=14.0.0'}
1350 hasBin: true
1351
1352 sassdoc-extras@2.5.1:
1353 resolution: {integrity: sha512-/+ilEnk1H1hG9nympL1GIFWhAczzoclyDzgzfphIg46nsT/dWJuzWYHyzIpduc/nTVwKeQfmTz0ZVvy12QMkrQ==}
1354
1355 sassdoc-theme-default@2.8.6:
1356 resolution: {integrity: sha512-s12y6pThpPDm33UScHfnfa/RBs9+gkCxl/YNWDTyLl3a6IxzusEdut1uwv4fpmpaOsTpcjGxZw839Moi4d/3Eg==}
1357
1358 sassdoc@2.7.4:
1359 resolution: {integrity: sha512-/HEjX9pMILkePyC4ZKGhkLqZHJZpsTxFwQIQNsLhV4XHiPKoWHrSmam1pMntM79tcdtBII3JX7ShfyZjHnrkyw==}
1360 hasBin: true
1361
1362 scss-comment-parser@0.8.4:
1363 resolution: {integrity: sha512-ERw4BODvM22n8Ke8hJxuH3fKXLm0Q4chfUNHwDSOAExCths2ZXq8PT32vms4R9Om6dffRSXzzGZS1p38UU4EAg==}
1364
1365 semver-diff@3.1.1:
1366 resolution: {integrity: sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==}
1367 engines: {node: '>=8'}
1368
1369 semver-regex@1.0.0:
1370 resolution: {integrity: sha512-1vZcoRC+LPtHFkLUPyrabsATDSHerxW+hJBN8h04HZOZBuewbXaNROtUVdEPrTdZsWNq6sfsXDhd48GB2xTG4g==}
1371 engines: {node: '>=0.10.0'}
1372
1373 semver@5.7.2:
1374 resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==}
1375 hasBin: true
1376
1377 semver@6.3.1:
1378 resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
1379 hasBin: true
1380
1381 semver@7.6.3:
1382 resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==}
1383 engines: {node: '>=10'}
1384 hasBin: true
1385
1386 serialize-javascript@6.0.2:
1387 resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
1388
1389 set-function-length@1.2.2:
1390 resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
1391 engines: {node: '>= 0.4'}
1392
1393 signal-exit@3.0.7:
1394 resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
1395
1396 signal-exit@4.1.0:
1397 resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
1398 engines: {node: '>=14'}
1399
1400 simple-update-notifier@2.0.0:
1401 resolution: {integrity: sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==}
1402 engines: {node: '>=10'}
1403
1404 slash@3.0.0:
1405 resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
1406 engines: {node: '>=8'}
1407
1408 slice-ansi@4.0.0:
1409 resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==}
1410 engines: {node: '>=10'}
1411
1412 source-map-js@1.2.1:
1413 resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
1414 engines: {node: '>=0.10.0'}
1415
1416 source-map@0.6.1:
1417 resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
1418 engines: {node: '>=0.10.0'}
1419
1420 sprintf-js@1.0.3:
1421 resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
1422
1423 stream-shift@1.0.3:
1424 resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==}
1425
1426 string-width@4.2.3:
1427 resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
1428 engines: {node: '>=8'}
1429
1430 string_decoder@0.10.31:
1431 resolution: {integrity: sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==}
1432
1433 string_decoder@1.1.1:
1434 resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
1435
1436 string_decoder@1.3.0:
1437 resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
1438
1439 strip-ansi@6.0.1:
1440 resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
1441 engines: {node: '>=8'}
1442
1443 strip-ansi@7.1.0:
1444 resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
1445 engines: {node: '>=12'}
1446
1447 strip-indent@1.0.1:
1448 resolution: {integrity: sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==}
1449 engines: {node: '>=0.10.0'}
1450 hasBin: true
1451
1452 strip-indent@3.0.0:
1453 resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
1454 engines: {node: '>=8'}
1455
1456 strip-json-comments@2.0.1:
1457 resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==}
1458 engines: {node: '>=0.10.0'}
1459
1460 strip-json-comments@3.1.1:
1461 resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
1462 engines: {node: '>=8'}
1463
1464 style-search@0.1.0:
1465 resolution: {integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==}
1466
1467 stylelint-config-sass-guidelines@12.1.0:
1468 resolution: {integrity: sha512-NTxEtVT6uNSqRvq+A3ScyKhjUrY/Z845TnpWEwnMgIPZ/+/Waa4+51r6OPuQRMu4XZS3D8DK1UaT4TWFBvuuAw==}
1469 engines: {node: '>=18.12.0'}
1470 peerDependencies:
1471 postcss: ^8.4.21
1472 stylelint: ^16.1.0
1473
1474 stylelint-scss@6.7.0:
1475 resolution: {integrity: sha512-RFIa2A+pVWS5wjNT+whtK7wsbZEWazyqesCuSaPbPlZ8lh2TujwVJSnCYJijg6ChZzwI8pZPRZS1L6A9aCbXDg==}
1476 engines: {node: '>=18.12.0'}
1477 peerDependencies:
1478 stylelint: ^16.0.2
1479
1480 stylelint@16.9.0:
1481 resolution: {integrity: sha512-31Nm3WjxGOBGpQqF43o3wO9L5AC36TPIe6030Lnm13H3vDMTcS21DrLh69bMX+DBilKqMMVLian4iG6ybBoNRQ==}
1482 engines: {node: '>=18.12.0'}
1483 hasBin: true
1484
1485 supports-color@5.5.0:
1486 resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
1487 engines: {node: '>=4'}
1488
1489 supports-color@7.2.0:
1490 resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
1491 engines: {node: '>=8'}
1492
1493 supports-color@8.1.1:
1494 resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
1495 engines: {node: '>=10'}
1496
1497 supports-hyperlinks@3.1.0:
1498 resolution: {integrity: sha512-2rn0BZ+/f7puLOHZm1HOJfwBggfaHXUpPUSSG/SWM4TWp5KCfmNYwnC3hruy2rZlMnmWZ+QAGpZfchu3f3695A==}
1499 engines: {node: '>=14.18'}
1500
1501 svg-tags@1.0.0:
1502 resolution: {integrity: sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==}
1503
1504 table@6.8.2:
1505 resolution: {integrity: sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==}
1506 engines: {node: '>=10.0.0'}
1507
1508 term-size@2.2.1:
1509 resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==}
1510 engines: {node: '>=8'}
1511
1512 through2-filter@3.0.0:
1513 resolution: {integrity: sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==}
1514
1515 through2@1.1.1:
1516 resolution: {integrity: sha512-zEbpaeSMHxczpTzO1KkMHjBC1enTA68ojeaZGG4toqdASpb9t4xUZaYFBq2/9OHo5nTGFVSYd4c910OR+6wxbQ==}
1517
1518 through2@2.0.5:
1519 resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==}
1520
1521 to-absolute-glob@2.0.2:
1522 resolution: {integrity: sha512-rtwLUQEwT8ZeKQbyFJyomBRYXyE16U5VKuy0ftxLMK/PZb2fkOsg5r9kHdauuVDbsNdIBoC/HCthpidamQFXYA==}
1523 engines: {node: '>=0.10.0'}
1524
1525 to-readable-stream@1.0.0:
1526 resolution: {integrity: sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==}
1527 engines: {node: '>=6'}
1528
1529 to-regex-range@5.0.1:
1530 resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
1531 engines: {node: '>=8.0'}
1532
1533 to-through@2.0.0:
1534 resolution: {integrity: sha512-+QIz37Ly7acM4EMdw2PRN389OneM5+d844tirkGp4dPKzI5OE72V9OsbFp+CIYJDahZ41ZV05hNtcPAQUAm9/Q==}
1535 engines: {node: '>= 0.10'}
1536
1537 touch@3.1.1:
1538 resolution: {integrity: sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==}
1539 hasBin: true
1540
1541 type-fest@0.8.1:
1542 resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
1543 engines: {node: '>=8'}
1544
1545 typedarray-to-buffer@3.1.5:
1546 resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==}
1547
1548 typedarray@0.0.6:
1549 resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==}
1550
1551 uglify-js@3.4.10:
1552 resolution: {integrity: sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==}
1553 engines: {node: '>=0.8.0'}
1554 hasBin: true
1555
1556 unc-path-regex@0.1.2:
1557 resolution: {integrity: sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==}
1558 engines: {node: '>=0.10.0'}
1559
1560 undefsafe@2.0.5:
1561 resolution: {integrity: sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==}
1562
1563 undici-types@5.26.5:
1564 resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
1565
1566 unique-stream@2.3.1:
1567 resolution: {integrity: sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==}
1568
1569 unique-string@2.0.0:
1570 resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==}
1571 engines: {node: '>=8'}
1572
1573 update-notifier@4.1.3:
1574 resolution: {integrity: sha512-Yld6Z0RyCYGB6ckIjffGOSOmHXj1gMeE7aROz4MG+XMkmixBX4jUngrGXNYz7wPKBmtoD4MnBa2Anu7RSKht/A==}
1575 engines: {node: '>=8'}
1576
1577 upper-case@1.1.3:
1578 resolution: {integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==}
1579
1580 url-parse-lax@3.0.0:
1581 resolution: {integrity: sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==}
1582 engines: {node: '>=4'}
1583
1584 util-deprecate@1.0.2:
1585 resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
1586
1587 value-or-function@3.0.0:
1588 resolution: {integrity: sha512-jdBB2FrWvQC/pnPtIqcLsMaQgjhdb6B7tk1MMyTKapox+tQZbdRP4uLxu/JY0t7fbfDCUMnuelzEYv5GsxHhdg==}
1589 engines: {node: '>= 0.10'}
1590
1591 vinyl-fs@3.0.3:
1592 resolution: {integrity: sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==}
1593 engines: {node: '>= 0.10'}
1594
1595 vinyl-source-stream@1.1.2:
1596 resolution: {integrity: sha512-X+1Jq+M6ufv/ky480hndPBsNb0ieqTQkvpakxMTxb7oUlyuNaJKL2HddYUrbTec0Lb0J53JlDiCetcgJ3b3Wmg==}
1597
1598 vinyl-sourcemap@1.1.0:
1599 resolution: {integrity: sha512-NiibMgt6VJGJmyw7vtzhctDcfKch4e4n9TBeoWlirb7FMg9/1Ov9k+A5ZRAtywBpRPiyECvQRQllYM8dECegVA==}
1600 engines: {node: '>= 0.10'}
1601
1602 vinyl-string@1.0.2:
1603 resolution: {integrity: sha512-mDkPUvCM7K9r0WYZKIWc/dfPH8wkJBbe/3wZUU9EJyw3g6VSACg6FLlcZ/QbP1lTSdtBsVjQoYG1a9K0cfoKeQ==}
1604
1605 vinyl@0.4.6:
1606 resolution: {integrity: sha512-pmza4M5VA15HOImIQYWhoXGlGNafCm0QK5BpBUXkzzEwrRxKqBsbAhTfkT2zMcJhUX1G1Gkid0xaV8WjOl7DsA==}
1607 engines: {node: '>= 0.9'}
1608
1609 vinyl@1.2.0:
1610 resolution: {integrity: sha512-Ci3wnR2uuSAWFMSglZuB8Z2apBdtOyz8CV7dC6/U1XbltXBC+IuutUkXQISz01P+US2ouBuesSbV6zILZ6BuzQ==}
1611 engines: {node: '>= 0.9'}
1612
1613 vinyl@2.2.1:
1614 resolution: {integrity: sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==}
1615 engines: {node: '>= 0.10'}
1616
1617 which@1.3.1:
1618 resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
1619 hasBin: true
1620
1621 widest-line@3.1.0:
1622 resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==}
1623 engines: {node: '>=8'}
1624
1625 workerpool@6.5.1:
1626 resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==}
1627
1628 wrap-ansi@7.0.0:
1629 resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
1630 engines: {node: '>=10'}
1631
1632 wrappy@1.0.2:
1633 resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
1634
1635 write-file-atomic@3.0.3:
1636 resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==}
1637
1638 write-file-atomic@5.0.1:
1639 resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==}
1640 engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
1641
1642 xdg-basedir@4.0.0:
1643 resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==}
1644 engines: {node: '>=8'}
1645
1646 xtend@4.0.2:
1647 resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
1648 engines: {node: '>=0.4'}
1649
1650 y18n@5.0.8:
1651 resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
1652 engines: {node: '>=10'}
1653
1654 yargs-parser@20.2.9:
1655 resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==}
1656 engines: {node: '>=10'}
1657
1658 yargs-unparser@2.0.0:
1659 resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==}
1660 engines: {node: '>=10'}
1661
1662 yargs@16.2.0:
1663 resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==}
1664 engines: {node: '>=10'}
1665
1666 yocto-queue@0.1.0:
1667 resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
1668 engines: {node: '>=10'}
1669
1670snapshots:
1671
1672 '@adobe/css-tools@4.4.0': {}
1673
1674 '@babel/code-frame@7.25.7':
1675 dependencies:
1676 '@babel/highlight': 7.25.7
1677 picocolors: 1.1.0
1678
1679 '@babel/helper-validator-identifier@7.25.7': {}
1680
1681 '@babel/highlight@7.25.7':
1682 dependencies:
1683 '@babel/helper-validator-identifier': 7.25.7
1684 chalk: 2.4.2
1685 js-tokens: 4.0.0
1686 picocolors: 1.1.0
1687
1688 '@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1)':
1689 dependencies:
1690 '@csstools/css-tokenizer': 3.0.1
1691
1692 '@csstools/css-tokenizer@3.0.1': {}
1693
1694 '@csstools/media-query-list-parser@3.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1)':
1695 dependencies:
1696 '@csstools/css-parser-algorithms': 3.0.1(@csstools/css-tokenizer@3.0.1)
1697 '@csstools/css-tokenizer': 3.0.1
1698
1699 '@csstools/selector-specificity@4.0.0(postcss-selector-parser@6.1.2)':
1700 dependencies:
1701 postcss-selector-parser: 6.1.2
1702
1703 '@dual-bundle/import-meta-resolve@4.1.0': {}
1704
1705 '@jest/schemas@29.6.3':
1706 dependencies:
1707 '@sinclair/typebox': 0.27.8
1708
1709 '@nodelib/fs.scandir@2.1.5':
1710 dependencies:
1711 '@nodelib/fs.stat': 2.0.5
1712 run-parallel: 1.2.0
1713
1714 '@nodelib/fs.stat@2.0.5': {}
1715
1716 '@nodelib/fs.walk@1.2.8':
1717 dependencies:
1718 '@nodelib/fs.scandir': 2.1.5
1719 fastq: 1.17.1
1720
1721 '@sinclair/typebox@0.27.8': {}
1722
1723 '@sindresorhus/is@0.14.0': {}
1724
1725 '@stylistic/stylelint-plugin@3.1.1(stylelint@16.9.0)':
1726 dependencies:
1727 '@csstools/css-parser-algorithms': 3.0.1(@csstools/css-tokenizer@3.0.1)
1728 '@csstools/css-tokenizer': 3.0.1
1729 '@csstools/media-query-list-parser': 3.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1)
1730 is-plain-object: 5.0.0
1731 postcss-selector-parser: 6.1.2
1732 postcss-value-parser: 4.2.0
1733 style-search: 0.1.0
1734 stylelint: 16.9.0
1735
1736 '@szmarczak/http-timer@1.1.2':
1737 dependencies:
1738 defer-to-connect: 1.1.3
1739
1740 '@types/keyv@3.1.4':
1741 dependencies:
1742 '@types/node': 20.14.7
1743
1744 '@types/node@20.14.7':
1745 dependencies:
1746 undici-types: 5.26.5
1747
1748 '@types/responselike@1.0.3':
1749 dependencies:
1750 '@types/node': 20.14.7
1751
1752 a-sync-waterfall@1.0.1: {}
1753
1754 ajv@8.17.1:
1755 dependencies:
1756 fast-deep-equal: 3.1.3
1757 fast-uri: 3.0.2
1758 json-schema-traverse: 1.0.0
1759 require-from-string: 2.0.2
1760
1761 ansi-align@3.0.1:
1762 dependencies:
1763 string-width: 4.2.3
1764
1765 ansi-colors@4.1.3: {}
1766
1767 ansi-regex@5.0.1: {}
1768
1769 ansi-regex@6.1.0: {}
1770
1771 ansi-styles@3.2.1:
1772 dependencies:
1773 color-convert: 1.9.3
1774
1775 ansi-styles@4.3.0:
1776 dependencies:
1777 color-convert: 2.0.1
1778
1779 ansi-styles@5.2.0: {}
1780
1781 anymatch@3.1.3:
1782 dependencies:
1783 normalize-path: 3.0.0
1784 picomatch: 2.3.1
1785
1786 append-buffer@1.0.2:
1787 dependencies:
1788 buffer-equal: 1.0.1
1789
1790 argparse@1.0.10:
1791 dependencies:
1792 sprintf-js: 1.0.3
1793
1794 argparse@2.0.1: {}
1795
1796 array-union@2.1.0: {}
1797
1798 asap@2.0.6: {}
1799
1800 astral-regex@2.0.0: {}
1801
1802 babel-runtime@6.26.0:
1803 dependencies:
1804 core-js: 2.6.12
1805 regenerator-runtime: 0.11.1
1806
1807 balanced-match@1.0.2: {}
1808
1809 balanced-match@2.0.0: {}
1810
1811 binary-extensions@2.3.0: {}
1812
1813 boxen@4.2.0:
1814 dependencies:
1815 ansi-align: 3.0.1
1816 camelcase: 5.3.1
1817 chalk: 3.0.0
1818 cli-boxes: 2.2.1
1819 string-width: 4.2.3
1820 term-size: 2.2.1
1821 type-fest: 0.8.1
1822 widest-line: 3.1.0
1823
1824 brace-expansion@1.1.11:
1825 dependencies:
1826 balanced-match: 1.0.2
1827 concat-map: 0.0.1
1828
1829 brace-expansion@2.0.1:
1830 dependencies:
1831 balanced-match: 1.0.2
1832
1833 braces@3.0.3:
1834 dependencies:
1835 fill-range: 7.1.1
1836
1837 browser-stdout@1.3.1: {}
1838
1839 buffer-equal@1.0.1: {}
1840
1841 buffer-from@1.1.2: {}
1842
1843 cacheable-request@6.1.0:
1844 dependencies:
1845 clone-response: 1.0.3
1846 get-stream: 5.2.0
1847 http-cache-semantics: 4.1.1
1848 keyv: 3.1.0
1849 lowercase-keys: 2.0.0
1850 normalize-url: 4.5.1
1851 responselike: 1.0.2
1852
1853 call-bind@1.0.7:
1854 dependencies:
1855 es-define-property: 1.0.0
1856 es-errors: 1.3.0
1857 function-bind: 1.1.2
1858 get-intrinsic: 1.2.4
1859 set-function-length: 1.2.2
1860
1861 callsites@3.1.0: {}
1862
1863 camel-case@3.0.0:
1864 dependencies:
1865 no-case: 2.3.2
1866 upper-case: 1.1.3
1867
1868 camelcase@5.3.1: {}
1869
1870 camelcase@6.3.0: {}
1871
1872 cdocparser@0.13.0:
1873 dependencies:
1874 escape-string-regexp: 1.0.5
1875 lodash.assign: 2.4.1
1876 strip-indent: 1.0.1
1877
1878 chalk@2.4.2:
1879 dependencies:
1880 ansi-styles: 3.2.1
1881 escape-string-regexp: 1.0.5
1882 supports-color: 5.5.0
1883
1884 chalk@3.0.0:
1885 dependencies:
1886 ansi-styles: 4.3.0
1887 supports-color: 7.2.0
1888
1889 chalk@4.1.2:
1890 dependencies:
1891 ansi-styles: 4.3.0
1892 supports-color: 7.2.0
1893
1894 chokidar@3.6.0:
1895 dependencies:
1896 anymatch: 3.1.3
1897 braces: 3.0.3
1898 glob-parent: 5.1.2
1899 is-binary-path: 2.1.0
1900 is-glob: 4.0.3
1901 normalize-path: 3.0.0
1902 readdirp: 3.6.0
1903 optionalDependencies:
1904 fsevents: 2.3.3
1905
1906 chokidar@4.0.1:
1907 dependencies:
1908 readdirp: 4.0.2
1909
1910 chroma-js@1.4.1: {}
1911
1912 ci-info@2.0.0: {}
1913
1914 clean-css@4.2.4:
1915 dependencies:
1916 source-map: 0.6.1
1917
1918 cli-boxes@2.2.1: {}
1919
1920 cliui@7.0.4:
1921 dependencies:
1922 string-width: 4.2.3
1923 strip-ansi: 6.0.1
1924 wrap-ansi: 7.0.0
1925
1926 clone-buffer@1.0.0: {}
1927
1928 clone-response@1.0.3:
1929 dependencies:
1930 mimic-response: 1.0.1
1931
1932 clone-stats@0.0.1: {}
1933
1934 clone-stats@1.0.0: {}
1935
1936 clone@0.2.0: {}
1937
1938 clone@1.0.4: {}
1939
1940 clone@2.1.2: {}
1941
1942 cloneable-readable@1.1.3:
1943 dependencies:
1944 inherits: 2.0.4
1945 process-nextick-args: 2.0.1
1946 readable-stream: 2.3.8
1947
1948 color-convert@1.9.3:
1949 dependencies:
1950 color-name: 1.1.3
1951
1952 color-convert@2.0.1:
1953 dependencies:
1954 color-name: 1.1.4
1955
1956 color-name@1.1.3: {}
1957
1958 color-name@1.1.4: {}
1959
1960 colord@2.9.3: {}
1961
1962 commander@2.17.1: {}
1963
1964 commander@2.19.0: {}
1965
1966 commander@5.1.0: {}
1967
1968 concat-map@0.0.1: {}
1969
1970 concat-stream@1.6.2:
1971 dependencies:
1972 buffer-from: 1.1.2
1973 inherits: 2.0.4
1974 readable-stream: 2.3.8
1975 typedarray: 0.0.6
1976
1977 concat-stream@2.0.0:
1978 dependencies:
1979 buffer-from: 1.1.2
1980 inherits: 2.0.4
1981 readable-stream: 3.6.2
1982 typedarray: 0.0.6
1983
1984 configstore@5.0.1:
1985 dependencies:
1986 dot-prop: 5.3.0
1987 graceful-fs: 4.2.11
1988 make-dir: 3.1.0
1989 unique-string: 2.0.0
1990 write-file-atomic: 3.0.3
1991 xdg-basedir: 4.0.0
1992
1993 convert-source-map@1.9.0: {}
1994
1995 core-js@2.6.12: {}
1996
1997 core-util-is@1.0.3: {}
1998
1999 cosmiconfig@9.0.0:
2000 dependencies:
2001 env-paths: 2.2.1
2002 import-fresh: 3.3.0
2003 js-yaml: 4.1.0
2004 parse-json: 5.2.0
2005
2006 crypto-random-string@2.0.0: {}
2007
2008 css-functions-list@3.2.2: {}
2009
2010 css-tree@2.3.1:
2011 dependencies:
2012 mdn-data: 2.0.30
2013 source-map-js: 1.2.1
2014
2015 cssesc@3.0.0: {}
2016
2017 dargs@4.1.0:
2018 dependencies:
2019 number-is-nan: 1.0.1
2020
2021 debug@4.3.7:
2022 dependencies:
2023 ms: 2.1.3
2024
2025 debug@4.3.7(supports-color@5.5.0):
2026 dependencies:
2027 ms: 2.1.3
2028 optionalDependencies:
2029 supports-color: 5.5.0
2030
2031 debug@4.3.7(supports-color@8.1.1):
2032 dependencies:
2033 ms: 2.1.3
2034 optionalDependencies:
2035 supports-color: 8.1.1
2036
2037 decamelize@4.0.0: {}
2038
2039 decompress-response@3.3.0:
2040 dependencies:
2041 mimic-response: 1.0.1
2042
2043 deep-extend@0.6.0: {}
2044
2045 defer-to-connect@1.1.3: {}
2046
2047 define-data-property@1.1.4:
2048 dependencies:
2049 es-define-property: 1.0.0
2050 es-errors: 1.3.0
2051 gopd: 1.0.1
2052
2053 define-properties@1.2.1:
2054 dependencies:
2055 define-data-property: 1.1.4
2056 has-property-descriptors: 1.0.2
2057 object-keys: 1.1.1
2058
2059 diff-sequences@29.6.3: {}
2060
2061 diff@5.2.0: {}
2062
2063 dir-glob@3.0.1:
2064 dependencies:
2065 path-type: 4.0.0
2066
2067 docopt@0.6.2: {}
2068
2069 dot-prop@5.3.0:
2070 dependencies:
2071 is-obj: 2.0.0
2072
2073 duplexer2@0.1.4:
2074 dependencies:
2075 readable-stream: 2.3.8
2076
2077 duplexer3@0.1.5: {}
2078
2079 duplexify@3.7.1:
2080 dependencies:
2081 end-of-stream: 1.4.4
2082 inherits: 2.0.4
2083 readable-stream: 2.3.8
2084 stream-shift: 1.0.3
2085
2086 emoji-regex@8.0.0: {}
2087
2088 end-of-stream@1.4.4:
2089 dependencies:
2090 once: 1.4.0
2091
2092 ends-with@0.2.0: {}
2093
2094 env-paths@2.2.1: {}
2095
2096 error-ex@1.3.2:
2097 dependencies:
2098 is-arrayish: 0.2.1
2099
2100 es-define-property@1.0.0:
2101 dependencies:
2102 get-intrinsic: 1.2.4
2103
2104 es-errors@1.3.0: {}
2105
2106 es6-denodeify@0.1.5: {}
2107
2108 es6-promise@3.3.1: {}
2109
2110 es6-promise@4.2.8: {}
2111
2112 escalade@3.2.0: {}
2113
2114 escape-goat@2.1.1: {}
2115
2116 escape-string-regexp@1.0.5: {}
2117
2118 escape-string-regexp@4.0.0: {}
2119
2120 esprima@4.0.1: {}
2121
2122 extend@3.0.2: {}
2123
2124 fast-deep-equal@3.1.3: {}
2125
2126 fast-glob@3.3.2:
2127 dependencies:
2128 '@nodelib/fs.stat': 2.0.5
2129 '@nodelib/fs.walk': 1.2.8
2130 glob-parent: 5.1.2
2131 merge2: 1.4.1
2132 micromatch: 4.0.8
2133
2134 fast-uri@3.0.2: {}
2135
2136 fastest-levenshtein@1.0.16: {}
2137
2138 fastq@1.17.1:
2139 dependencies:
2140 reusify: 1.0.4
2141
2142 file-entry-cache@9.1.0:
2143 dependencies:
2144 flat-cache: 5.0.0
2145
2146 fill-range@7.1.1:
2147 dependencies:
2148 to-regex-range: 5.0.1
2149
2150 find-index@0.1.1: {}
2151
2152 find-up@5.0.0:
2153 dependencies:
2154 locate-path: 6.0.0
2155 path-exists: 4.0.0
2156
2157 flat-cache@5.0.0:
2158 dependencies:
2159 flatted: 3.3.1
2160 keyv: 4.5.4
2161
2162 flat@5.0.2: {}
2163
2164 flatted@3.3.1: {}
2165
2166 flush-write-stream@1.1.1:
2167 dependencies:
2168 inherits: 2.0.4
2169 readable-stream: 2.3.8
2170
2171 fs-extra@2.1.2:
2172 dependencies:
2173 graceful-fs: 4.2.11
2174 jsonfile: 2.4.0
2175
2176 fs-mkdirp-stream@1.0.0:
2177 dependencies:
2178 graceful-fs: 4.2.11
2179 through2: 2.0.5
2180
2181 fs.realpath@1.0.0: {}
2182
2183 fsevents@2.3.3:
2184 optional: true
2185
2186 function-bind@1.1.2: {}
2187
2188 get-caller-file@2.0.5: {}
2189
2190 get-intrinsic@1.2.4:
2191 dependencies:
2192 es-errors: 1.3.0
2193 function-bind: 1.1.2
2194 has-proto: 1.0.3
2195 has-symbols: 1.0.3
2196 hasown: 2.0.2
2197
2198 get-stdin@4.0.1: {}
2199
2200 get-stream@4.1.0:
2201 dependencies:
2202 pump: 3.0.0
2203
2204 get-stream@5.2.0:
2205 dependencies:
2206 pump: 3.0.0
2207
2208 glob-parent@3.1.0:
2209 dependencies:
2210 is-glob: 3.1.0
2211 path-dirname: 1.0.2
2212
2213 glob-parent@5.1.2:
2214 dependencies:
2215 is-glob: 4.0.3
2216
2217 glob-stream@6.1.0:
2218 dependencies:
2219 extend: 3.0.2
2220 glob: 7.2.3
2221 glob-parent: 3.1.0
2222 is-negated-glob: 1.0.0
2223 ordered-read-streams: 1.0.1
2224 pumpify: 1.5.1
2225 readable-stream: 2.3.8
2226 remove-trailing-separator: 1.1.0
2227 to-absolute-glob: 2.0.2
2228 unique-stream: 2.3.1
2229
2230 glob2base@0.0.12:
2231 dependencies:
2232 find-index: 0.1.1
2233
2234 glob@7.2.3:
2235 dependencies:
2236 fs.realpath: 1.0.0
2237 inflight: 1.0.6
2238 inherits: 2.0.4
2239 minimatch: 3.1.2
2240 once: 1.4.0
2241 path-is-absolute: 1.0.1
2242
2243 glob@8.1.0:
2244 dependencies:
2245 fs.realpath: 1.0.0
2246 inflight: 1.0.6
2247 inherits: 2.0.4
2248 minimatch: 5.1.6
2249 once: 1.4.0
2250
2251 global-dirs@2.1.0:
2252 dependencies:
2253 ini: 1.3.7
2254
2255 global-modules@2.0.0:
2256 dependencies:
2257 global-prefix: 3.0.0
2258
2259 global-prefix@3.0.0:
2260 dependencies:
2261 ini: 1.3.8
2262 kind-of: 6.0.3
2263 which: 1.3.1
2264
2265 globby@11.1.0:
2266 dependencies:
2267 array-union: 2.1.0
2268 dir-glob: 3.0.1
2269 fast-glob: 3.3.2
2270 ignore: 5.3.2
2271 merge2: 1.4.1
2272 slash: 3.0.0
2273
2274 globjoin@0.1.4: {}
2275
2276 gopd@1.0.1:
2277 dependencies:
2278 get-intrinsic: 1.2.4
2279
2280 got@9.6.0:
2281 dependencies:
2282 '@sindresorhus/is': 0.14.0
2283 '@szmarczak/http-timer': 1.1.2
2284 '@types/keyv': 3.1.4
2285 '@types/responselike': 1.0.3
2286 cacheable-request: 6.1.0
2287 decompress-response: 3.3.0
2288 duplexer3: 0.1.5
2289 get-stream: 4.1.0
2290 lowercase-keys: 1.0.1
2291 mimic-response: 1.0.1
2292 p-cancelable: 1.1.0
2293 to-readable-stream: 1.0.0
2294 url-parse-lax: 3.0.0
2295
2296 graceful-fs@4.2.11: {}
2297
2298 has-flag@3.0.0: {}
2299
2300 has-flag@4.0.0: {}
2301
2302 has-property-descriptors@1.0.2:
2303 dependencies:
2304 es-define-property: 1.0.0
2305
2306 has-proto@1.0.3: {}
2307
2308 has-symbols@1.0.3: {}
2309
2310 has-yarn@2.1.0: {}
2311
2312 hasown@2.0.2:
2313 dependencies:
2314 function-bind: 1.1.2
2315
2316 he@1.2.0: {}
2317
2318 html-minifier@3.5.21:
2319 dependencies:
2320 camel-case: 3.0.0
2321 clean-css: 4.2.4
2322 commander: 2.17.1
2323 he: 1.2.0
2324 param-case: 2.1.1
2325 relateurl: 0.2.7
2326 uglify-js: 3.4.10
2327
2328 html-tags@3.3.1: {}
2329
2330 http-cache-semantics@4.1.1: {}
2331
2332 ignore-by-default@1.0.1: {}
2333
2334 ignore@5.3.2: {}
2335
2336 immutable@4.3.7: {}
2337
2338 import-fresh@3.3.0:
2339 dependencies:
2340 parent-module: 1.0.1
2341 resolve-from: 4.0.0
2342
2343 import-lazy@2.1.0: {}
2344
2345 imurmurhash@0.1.4: {}
2346
2347 inflight@1.0.6:
2348 dependencies:
2349 once: 1.4.0
2350 wrappy: 1.0.2
2351
2352 inherits@2.0.4: {}
2353
2354 ini@1.3.7: {}
2355
2356 ini@1.3.8: {}
2357
2358 is-absolute@1.0.0:
2359 dependencies:
2360 is-relative: 1.0.0
2361 is-windows: 1.0.2
2362
2363 is-arrayish@0.2.1: {}
2364
2365 is-binary-path@2.1.0:
2366 dependencies:
2367 binary-extensions: 2.3.0
2368
2369 is-buffer@1.1.6: {}
2370
2371 is-ci@2.0.0:
2372 dependencies:
2373 ci-info: 2.0.0
2374
2375 is-extglob@2.1.1: {}
2376
2377 is-fullwidth-code-point@3.0.0: {}
2378
2379 is-glob@3.1.0:
2380 dependencies:
2381 is-extglob: 2.1.1
2382
2383 is-glob@4.0.3:
2384 dependencies:
2385 is-extglob: 2.1.1
2386
2387 is-installed-globally@0.3.2:
2388 dependencies:
2389 global-dirs: 2.1.0
2390 is-path-inside: 3.0.3
2391
2392 is-negated-glob@1.0.0: {}
2393
2394 is-npm@4.0.0: {}
2395
2396 is-number@7.0.0: {}
2397
2398 is-obj@2.0.0: {}
2399
2400 is-path-inside@3.0.3: {}
2401
2402 is-plain-obj@2.1.0: {}
2403
2404 is-plain-object@5.0.0: {}
2405
2406 is-relative@1.0.0:
2407 dependencies:
2408 is-unc-path: 1.0.0
2409
2410 is-typedarray@1.0.0: {}
2411
2412 is-unc-path@1.0.0:
2413 dependencies:
2414 unc-path-regex: 0.1.2
2415
2416 is-unicode-supported@0.1.0: {}
2417
2418 is-utf8@0.2.1: {}
2419
2420 is-valid-glob@1.0.0: {}
2421
2422 is-windows@1.0.2: {}
2423
2424 is-yarn-global@0.3.0: {}
2425
2426 isarray@0.0.1: {}
2427
2428 isarray@1.0.0: {}
2429
2430 isexe@2.0.0: {}
2431
2432 jest-diff@29.7.0:
2433 dependencies:
2434 chalk: 4.1.2
2435 diff-sequences: 29.6.3
2436 jest-get-type: 29.6.3
2437 pretty-format: 29.7.0
2438
2439 jest-get-type@29.6.3: {}
2440
2441 js-tokens@4.0.0: {}
2442
2443 js-yaml@3.14.1:
2444 dependencies:
2445 argparse: 1.0.10
2446 esprima: 4.0.1
2447
2448 js-yaml@4.1.0:
2449 dependencies:
2450 argparse: 2.0.1
2451
2452 json-buffer@3.0.0: {}
2453
2454 json-buffer@3.0.1: {}
2455
2456 json-parse-even-better-errors@2.3.1: {}
2457
2458 json-schema-traverse@1.0.0: {}
2459
2460 json-stable-stringify-without-jsonify@1.0.1: {}
2461
2462 jsonfile@2.4.0:
2463 optionalDependencies:
2464 graceful-fs: 4.2.11
2465
2466 keyv@3.1.0:
2467 dependencies:
2468 json-buffer: 3.0.0
2469
2470 keyv@4.5.4:
2471 dependencies:
2472 json-buffer: 3.0.1
2473
2474 kind-of@6.0.3: {}
2475
2476 known-css-properties@0.34.0: {}
2477
2478 latest-version@5.1.0:
2479 dependencies:
2480 package-json: 6.5.0
2481
2482 lazystream@1.0.1:
2483 dependencies:
2484 readable-stream: 2.3.8
2485
2486 lead@1.0.0:
2487 dependencies:
2488 flush-write-stream: 1.1.1
2489
2490 lines-and-columns@1.2.4: {}
2491
2492 locate-path@6.0.0:
2493 dependencies:
2494 p-locate: 5.0.0
2495
2496 lodash._basebind@2.4.1:
2497 dependencies:
2498 lodash._basecreate: 2.4.1
2499 lodash._setbinddata: 2.4.1
2500 lodash._slice: 2.4.1
2501 lodash.isobject: 2.4.1
2502
2503 lodash._basecreate@2.4.1:
2504 dependencies:
2505 lodash._isnative: 2.4.1
2506 lodash.isobject: 2.4.1
2507 lodash.noop: 2.4.1
2508
2509 lodash._basecreatecallback@2.4.1:
2510 dependencies:
2511 lodash._setbinddata: 2.4.1
2512 lodash.bind: 2.4.1
2513 lodash.identity: 2.4.1
2514 lodash.support: 2.4.1
2515
2516 lodash._basecreatewrapper@2.4.1:
2517 dependencies:
2518 lodash._basecreate: 2.4.1
2519 lodash._setbinddata: 2.4.1
2520 lodash._slice: 2.4.1
2521 lodash.isobject: 2.4.1
2522
2523 lodash._createwrapper@2.4.1:
2524 dependencies:
2525 lodash._basebind: 2.4.1
2526 lodash._basecreatewrapper: 2.4.1
2527 lodash._slice: 2.4.1
2528 lodash.isfunction: 2.4.1
2529
2530 lodash._isnative@2.4.1: {}
2531
2532 lodash._objecttypes@2.4.1: {}
2533
2534 lodash._setbinddata@2.4.1:
2535 dependencies:
2536 lodash._isnative: 2.4.1
2537 lodash.noop: 2.4.1
2538
2539 lodash._shimkeys@2.4.1:
2540 dependencies:
2541 lodash._objecttypes: 2.4.1
2542
2543 lodash._slice@2.4.1: {}
2544
2545 lodash.assign@2.4.1:
2546 dependencies:
2547 lodash._basecreatecallback: 2.4.1
2548 lodash._objecttypes: 2.4.1
2549 lodash.keys: 2.4.1
2550
2551 lodash.bind@2.4.1:
2552 dependencies:
2553 lodash._createwrapper: 2.4.1
2554 lodash._slice: 2.4.1
2555
2556 lodash.difference@4.5.0: {}
2557
2558 lodash.identity@2.4.1: {}
2559
2560 lodash.isfunction@2.4.1: {}
2561
2562 lodash.isobject@2.4.1:
2563 dependencies:
2564 lodash._objecttypes: 2.4.1
2565
2566 lodash.keys@2.4.1:
2567 dependencies:
2568 lodash._isnative: 2.4.1
2569 lodash._shimkeys: 2.4.1
2570 lodash.isobject: 2.4.1
2571
2572 lodash.noop@2.4.1: {}
2573
2574 lodash.support@2.4.1:
2575 dependencies:
2576 lodash._isnative: 2.4.1
2577
2578 lodash.truncate@4.4.2: {}
2579
2580 lodash.uniq@4.5.0: {}
2581
2582 lodash@4.17.21: {}
2583
2584 log-symbols@4.1.0:
2585 dependencies:
2586 chalk: 4.1.2
2587 is-unicode-supported: 0.1.0
2588
2589 lower-case@1.1.4: {}
2590
2591 lowercase-keys@1.0.1: {}
2592
2593 lowercase-keys@2.0.0: {}
2594
2595 make-dir@3.1.0:
2596 dependencies:
2597 semver: 6.3.1
2598
2599 marked@0.6.3: {}
2600
2601 mathml-tag-names@2.1.3: {}
2602
2603 mdn-data@2.0.30: {}
2604
2605 memoize-decorator@1.0.2: {}
2606
2607 meow@13.2.0: {}
2608
2609 merge2@1.4.1: {}
2610
2611 micromatch@4.0.8:
2612 dependencies:
2613 braces: 3.0.3
2614 picomatch: 2.3.1
2615
2616 mimic-response@1.0.1: {}
2617
2618 min-indent@1.0.1: {}
2619
2620 minimatch@3.1.2:
2621 dependencies:
2622 brace-expansion: 1.1.11
2623
2624 minimatch@5.1.6:
2625 dependencies:
2626 brace-expansion: 2.0.1
2627
2628 minimist@1.2.8: {}
2629
2630 mkdirp@1.0.4: {}
2631
2632 mocha@10.7.3:
2633 dependencies:
2634 ansi-colors: 4.1.3
2635 browser-stdout: 1.3.1
2636 chokidar: 3.6.0
2637 debug: 4.3.7(supports-color@8.1.1)
2638 diff: 5.2.0
2639 escape-string-regexp: 4.0.0
2640 find-up: 5.0.0
2641 glob: 8.1.0
2642 he: 1.2.0
2643 js-yaml: 4.1.0
2644 log-symbols: 4.1.0
2645 minimatch: 5.1.6
2646 ms: 2.1.3
2647 serialize-javascript: 6.0.2
2648 strip-json-comments: 3.1.1
2649 supports-color: 8.1.1
2650 workerpool: 6.5.1
2651 yargs: 16.2.0
2652 yargs-parser: 20.2.9
2653 yargs-unparser: 2.0.0
2654
2655 ms@2.1.3: {}
2656
2657 multipipe@1.0.2:
2658 dependencies:
2659 duplexer2: 0.1.4
2660 object-assign: 4.1.1
2661
2662 nanoid@3.3.7: {}
2663
2664 no-case@2.3.2:
2665 dependencies:
2666 lower-case: 1.1.4
2667
2668 nodemon@3.1.7:
2669 dependencies:
2670 chokidar: 3.6.0
2671 debug: 4.3.7(supports-color@5.5.0)
2672 ignore-by-default: 1.0.1
2673 minimatch: 3.1.2
2674 pstree.remy: 1.1.8
2675 semver: 7.6.3
2676 simple-update-notifier: 2.0.0
2677 supports-color: 5.5.0
2678 touch: 3.1.1
2679 undefsafe: 2.0.5
2680
2681 normalize-path@2.1.1:
2682 dependencies:
2683 remove-trailing-separator: 1.1.0
2684
2685 normalize-path@3.0.0: {}
2686
2687 normalize-url@4.5.1: {}
2688
2689 now-and-later@2.0.1:
2690 dependencies:
2691 once: 1.4.0
2692
2693 number-is-nan@1.0.1: {}
2694
2695 nunjucks@3.2.4(chokidar@3.6.0):
2696 dependencies:
2697 a-sync-waterfall: 1.0.1
2698 asap: 2.0.6
2699 commander: 5.1.0
2700 optionalDependencies:
2701 chokidar: 3.6.0
2702
2703 object-assign@3.0.0: {}
2704
2705 object-assign@4.1.1: {}
2706
2707 object-keys@1.1.1: {}
2708
2709 object.assign@4.1.5:
2710 dependencies:
2711 call-bind: 1.0.7
2712 define-properties: 1.2.1
2713 has-symbols: 1.0.3
2714 object-keys: 1.1.1
2715
2716 once@1.4.0:
2717 dependencies:
2718 wrappy: 1.0.2
2719
2720 ordered-read-streams@1.0.1:
2721 dependencies:
2722 readable-stream: 2.3.8
2723
2724 p-cancelable@1.1.0: {}
2725
2726 p-limit@3.1.0:
2727 dependencies:
2728 yocto-queue: 0.1.0
2729
2730 p-locate@5.0.0:
2731 dependencies:
2732 p-limit: 3.1.0
2733
2734 package-json@6.5.0:
2735 dependencies:
2736 got: 9.6.0
2737 registry-auth-token: 4.2.2
2738 registry-url: 5.1.0
2739 semver: 6.3.1
2740
2741 param-case@2.1.1:
2742 dependencies:
2743 no-case: 2.3.2
2744
2745 parent-module@1.0.1:
2746 dependencies:
2747 callsites: 3.1.0
2748
2749 parse-json@5.2.0:
2750 dependencies:
2751 '@babel/code-frame': 7.25.7
2752 error-ex: 1.3.2
2753 json-parse-even-better-errors: 2.3.1
2754 lines-and-columns: 1.2.4
2755
2756 path-dirname@1.0.2: {}
2757
2758 path-exists@4.0.0: {}
2759
2760 path-is-absolute@1.0.1: {}
2761
2762 path-type@4.0.0: {}
2763
2764 picocolors@1.1.0: {}
2765
2766 picomatch@2.3.1: {}
2767
2768 postcss-media-query-parser@0.2.3: {}
2769
2770 postcss-resolve-nested-selector@0.1.6: {}
2771
2772 postcss-safe-parser@7.0.1(postcss@8.4.47):
2773 dependencies:
2774 postcss: 8.4.47
2775
2776 postcss-scss@4.0.9(postcss@8.4.47):
2777 dependencies:
2778 postcss: 8.4.47
2779
2780 postcss-selector-parser@6.1.2:
2781 dependencies:
2782 cssesc: 3.0.0
2783 util-deprecate: 1.0.2
2784
2785 postcss-value-parser@4.2.0: {}
2786
2787 postcss@8.4.47:
2788 dependencies:
2789 nanoid: 3.3.7
2790 picocolors: 1.1.0
2791 source-map-js: 1.2.1
2792
2793 prepend-http@2.0.0: {}
2794
2795 pretty-format@29.7.0:
2796 dependencies:
2797 '@jest/schemas': 29.6.3
2798 ansi-styles: 5.2.0
2799 react-is: 18.3.1
2800
2801 process-nextick-args@2.0.1: {}
2802
2803 pstree.remy@1.1.8: {}
2804
2805 pump@2.0.1:
2806 dependencies:
2807 end-of-stream: 1.4.4
2808 once: 1.4.0
2809
2810 pump@3.0.0:
2811 dependencies:
2812 end-of-stream: 1.4.4
2813 once: 1.4.0
2814
2815 pumpify@1.5.1:
2816 dependencies:
2817 duplexify: 3.7.1
2818 inherits: 2.0.4
2819 pump: 2.0.1
2820
2821 pupa@2.1.1:
2822 dependencies:
2823 escape-goat: 2.1.1
2824
2825 q@1.5.1: {}
2826
2827 queue-microtask@1.2.3: {}
2828
2829 randombytes@2.1.0:
2830 dependencies:
2831 safe-buffer: 5.2.1
2832
2833 rc@1.2.8:
2834 dependencies:
2835 deep-extend: 0.6.0
2836 ini: 1.3.8
2837 minimist: 1.2.8
2838 strip-json-comments: 2.0.1
2839
2840 react-is@18.3.1: {}
2841
2842 readable-stream@1.1.14:
2843 dependencies:
2844 core-util-is: 1.0.3
2845 inherits: 2.0.4
2846 isarray: 0.0.1
2847 string_decoder: 0.10.31
2848
2849 readable-stream@2.3.8:
2850 dependencies:
2851 core-util-is: 1.0.3
2852 inherits: 2.0.4
2853 isarray: 1.0.0
2854 process-nextick-args: 2.0.1
2855 safe-buffer: 5.1.2
2856 string_decoder: 1.1.1
2857 util-deprecate: 1.0.2
2858
2859 readable-stream@3.6.2:
2860 dependencies:
2861 inherits: 2.0.4
2862 string_decoder: 1.3.0
2863 util-deprecate: 1.0.2
2864
2865 readdirp@3.6.0:
2866 dependencies:
2867 picomatch: 2.3.1
2868
2869 readdirp@4.0.2: {}
2870
2871 regenerator-runtime@0.11.1: {}
2872
2873 registry-auth-token@4.2.2:
2874 dependencies:
2875 rc: 1.2.8
2876
2877 registry-url@5.1.0:
2878 dependencies:
2879 rc: 1.2.8
2880
2881 relateurl@0.2.7: {}
2882
2883 remove-bom-buffer@3.0.0:
2884 dependencies:
2885 is-buffer: 1.1.6
2886 is-utf8: 0.2.1
2887
2888 remove-bom-stream@1.2.0:
2889 dependencies:
2890 remove-bom-buffer: 3.0.0
2891 safe-buffer: 5.2.1
2892 through2: 2.0.5
2893
2894 remove-trailing-separator@1.1.0: {}
2895
2896 replace-ext@0.0.1: {}
2897
2898 replace-ext@1.0.1: {}
2899
2900 require-directory@2.1.1: {}
2901
2902 require-from-string@2.0.2: {}
2903
2904 resolve-from@4.0.0: {}
2905
2906 resolve-from@5.0.0: {}
2907
2908 resolve-options@1.1.0:
2909 dependencies:
2910 value-or-function: 3.0.0
2911
2912 responselike@1.0.2:
2913 dependencies:
2914 lowercase-keys: 1.0.1
2915
2916 reusify@1.0.4: {}
2917
2918 rimraf@2.7.1:
2919 dependencies:
2920 glob: 7.2.3
2921
2922 rimraf@3.0.2:
2923 dependencies:
2924 glob: 7.2.3
2925
2926 run-parallel@1.2.0:
2927 dependencies:
2928 queue-microtask: 1.2.3
2929
2930 safe-buffer@5.1.2: {}
2931
2932 safe-buffer@5.2.1: {}
2933
2934 safe-wipe@0.2.5:
2935 dependencies:
2936 extend: 3.0.2
2937 q: 1.5.1
2938 rimraf: 2.7.1
2939
2940 sass-convert@0.5.2:
2941 dependencies:
2942 concat-stream: 1.6.2
2943 dargs: 4.1.0
2944 ends-with: 0.2.0
2945 es6-denodeify: 0.1.5
2946 es6-promise: 3.3.1
2947 memoize-decorator: 1.0.2
2948 object-assign: 3.0.0
2949 semver: 5.7.2
2950 semver-regex: 1.0.0
2951 through2: 2.0.5
2952 which: 1.3.1
2953
2954 sass-true@8.1.0(sass@1.79.4):
2955 dependencies:
2956 '@adobe/css-tools': 4.4.0
2957 jest-diff: 29.7.0
2958 lodash: 4.17.21
2959 optionalDependencies:
2960 sass: 1.79.4
2961
2962 sass@1.79.4:
2963 dependencies:
2964 chokidar: 4.0.1
2965 immutable: 4.3.7
2966 source-map-js: 1.2.1
2967
2968 sassdoc-extras@2.5.1:
2969 dependencies:
2970 marked: 0.6.3
2971
2972 sassdoc-theme-default@2.8.6(chokidar@3.6.0):
2973 dependencies:
2974 babel-runtime: 6.26.0
2975 chroma-js: 1.4.1
2976 es6-denodeify: 0.1.5
2977 es6-promise: 4.2.8
2978 extend: 3.0.2
2979 fs-extra: 2.1.2
2980 html-minifier: 3.5.21
2981 nunjucks: 3.2.4(chokidar@3.6.0)
2982 sassdoc-extras: 2.5.1
2983 transitivePeerDependencies:
2984 - chokidar
2985
2986 sassdoc@2.7.4(chokidar@3.6.0):
2987 dependencies:
2988 ansi-styles: 4.3.0
2989 babel-runtime: 6.26.0
2990 chalk: 2.4.2
2991 concat-stream: 2.0.0
2992 docopt: 0.6.2
2993 glob: 7.2.3
2994 glob2base: 0.0.12
2995 js-yaml: 3.14.1
2996 lodash.difference: 4.5.0
2997 lodash.uniq: 4.5.0
2998 minimatch: 3.1.2
2999 mkdirp: 1.0.4
3000 multipipe: 1.0.2
3001 rimraf: 3.0.2
3002 safe-wipe: 0.2.5
3003 sass-convert: 0.5.2
3004 sassdoc-theme-default: 2.8.6(chokidar@3.6.0)
3005 scss-comment-parser: 0.8.4
3006 strip-indent: 3.0.0
3007 through2: 1.1.1
3008 update-notifier: 4.1.3
3009 vinyl-fs: 3.0.3
3010 vinyl-source-stream: 1.1.2
3011 vinyl-string: 1.0.2
3012 transitivePeerDependencies:
3013 - chokidar
3014
3015 scss-comment-parser@0.8.4:
3016 dependencies:
3017 cdocparser: 0.13.0
3018
3019 semver-diff@3.1.1:
3020 dependencies:
3021 semver: 6.3.1
3022
3023 semver-regex@1.0.0: {}
3024
3025 semver@5.7.2: {}
3026
3027 semver@6.3.1: {}
3028
3029 semver@7.6.3: {}
3030
3031 serialize-javascript@6.0.2:
3032 dependencies:
3033 randombytes: 2.1.0
3034
3035 set-function-length@1.2.2:
3036 dependencies:
3037 define-data-property: 1.1.4
3038 es-errors: 1.3.0
3039 function-bind: 1.1.2
3040 get-intrinsic: 1.2.4
3041 gopd: 1.0.1
3042 has-property-descriptors: 1.0.2
3043
3044 signal-exit@3.0.7: {}
3045
3046 signal-exit@4.1.0: {}
3047
3048 simple-update-notifier@2.0.0:
3049 dependencies:
3050 semver: 7.6.3
3051
3052 slash@3.0.0: {}
3053
3054 slice-ansi@4.0.0:
3055 dependencies:
3056 ansi-styles: 4.3.0
3057 astral-regex: 2.0.0
3058 is-fullwidth-code-point: 3.0.0
3059
3060 source-map-js@1.2.1: {}
3061
3062 source-map@0.6.1: {}
3063
3064 sprintf-js@1.0.3: {}
3065
3066 stream-shift@1.0.3: {}
3067
3068 string-width@4.2.3:
3069 dependencies:
3070 emoji-regex: 8.0.0
3071 is-fullwidth-code-point: 3.0.0
3072 strip-ansi: 6.0.1
3073
3074 string_decoder@0.10.31: {}
3075
3076 string_decoder@1.1.1:
3077 dependencies:
3078 safe-buffer: 5.1.2
3079
3080 string_decoder@1.3.0:
3081 dependencies:
3082 safe-buffer: 5.2.1
3083
3084 strip-ansi@6.0.1:
3085 dependencies:
3086 ansi-regex: 5.0.1
3087
3088 strip-ansi@7.1.0:
3089 dependencies:
3090 ansi-regex: 6.1.0
3091
3092 strip-indent@1.0.1:
3093 dependencies:
3094 get-stdin: 4.0.1
3095
3096 strip-indent@3.0.0:
3097 dependencies:
3098 min-indent: 1.0.1
3099
3100 strip-json-comments@2.0.1: {}
3101
3102 strip-json-comments@3.1.1: {}
3103
3104 style-search@0.1.0: {}
3105
3106 stylelint-config-sass-guidelines@12.1.0(postcss@8.4.47)(stylelint@16.9.0):
3107 dependencies:
3108 '@stylistic/stylelint-plugin': 3.1.1(stylelint@16.9.0)
3109 postcss: 8.4.47
3110 postcss-scss: 4.0.9(postcss@8.4.47)
3111 stylelint: 16.9.0
3112 stylelint-scss: 6.7.0(stylelint@16.9.0)
3113
3114 stylelint-scss@6.7.0(stylelint@16.9.0):
3115 dependencies:
3116 css-tree: 2.3.1
3117 is-plain-object: 5.0.0
3118 known-css-properties: 0.34.0
3119 postcss-media-query-parser: 0.2.3
3120 postcss-resolve-nested-selector: 0.1.6
3121 postcss-selector-parser: 6.1.2
3122 postcss-value-parser: 4.2.0
3123 stylelint: 16.9.0
3124
3125 stylelint@16.9.0:
3126 dependencies:
3127 '@csstools/css-parser-algorithms': 3.0.1(@csstools/css-tokenizer@3.0.1)
3128 '@csstools/css-tokenizer': 3.0.1
3129 '@csstools/media-query-list-parser': 3.0.1(@csstools/css-parser-algorithms@3.0.1(@csstools/css-tokenizer@3.0.1))(@csstools/css-tokenizer@3.0.1)
3130 '@csstools/selector-specificity': 4.0.0(postcss-selector-parser@6.1.2)
3131 '@dual-bundle/import-meta-resolve': 4.1.0
3132 balanced-match: 2.0.0
3133 colord: 2.9.3
3134 cosmiconfig: 9.0.0
3135 css-functions-list: 3.2.2
3136 css-tree: 2.3.1
3137 debug: 4.3.7
3138 fast-glob: 3.3.2
3139 fastest-levenshtein: 1.0.16
3140 file-entry-cache: 9.1.0
3141 global-modules: 2.0.0
3142 globby: 11.1.0
3143 globjoin: 0.1.4
3144 html-tags: 3.3.1
3145 ignore: 5.3.2
3146 imurmurhash: 0.1.4
3147 is-plain-object: 5.0.0
3148 known-css-properties: 0.34.0
3149 mathml-tag-names: 2.1.3
3150 meow: 13.2.0
3151 micromatch: 4.0.8
3152 normalize-path: 3.0.0
3153 picocolors: 1.1.0
3154 postcss: 8.4.47
3155 postcss-resolve-nested-selector: 0.1.6
3156 postcss-safe-parser: 7.0.1(postcss@8.4.47)
3157 postcss-selector-parser: 6.1.2
3158 postcss-value-parser: 4.2.0
3159 resolve-from: 5.0.0
3160 string-width: 4.2.3
3161 strip-ansi: 7.1.0
3162 supports-hyperlinks: 3.1.0
3163 svg-tags: 1.0.0
3164 table: 6.8.2
3165 write-file-atomic: 5.0.1
3166 transitivePeerDependencies:
3167 - supports-color
3168 - typescript
3169
3170 supports-color@5.5.0:
3171 dependencies:
3172 has-flag: 3.0.0
3173
3174 supports-color@7.2.0:
3175 dependencies:
3176 has-flag: 4.0.0
3177
3178 supports-color@8.1.1:
3179 dependencies:
3180 has-flag: 4.0.0
3181
3182 supports-hyperlinks@3.1.0:
3183 dependencies:
3184 has-flag: 4.0.0
3185 supports-color: 7.2.0
3186
3187 svg-tags@1.0.0: {}
3188
3189 table@6.8.2:
3190 dependencies:
3191 ajv: 8.17.1
3192 lodash.truncate: 4.4.2
3193 slice-ansi: 4.0.0
3194 string-width: 4.2.3
3195 strip-ansi: 6.0.1
3196
3197 term-size@2.2.1: {}
3198
3199 through2-filter@3.0.0:
3200 dependencies:
3201 through2: 2.0.5
3202 xtend: 4.0.2
3203
3204 through2@1.1.1:
3205 dependencies:
3206 readable-stream: 1.1.14
3207 xtend: 4.0.2
3208
3209 through2@2.0.5:
3210 dependencies:
3211 readable-stream: 2.3.8
3212 xtend: 4.0.2
3213
3214 to-absolute-glob@2.0.2:
3215 dependencies:
3216 is-absolute: 1.0.0
3217 is-negated-glob: 1.0.0
3218
3219 to-readable-stream@1.0.0: {}
3220
3221 to-regex-range@5.0.1:
3222 dependencies:
3223 is-number: 7.0.0
3224
3225 to-through@2.0.0:
3226 dependencies:
3227 through2: 2.0.5
3228
3229 touch@3.1.1: {}
3230
3231 type-fest@0.8.1: {}
3232
3233 typedarray-to-buffer@3.1.5:
3234 dependencies:
3235 is-typedarray: 1.0.0
3236
3237 typedarray@0.0.6: {}
3238
3239 uglify-js@3.4.10:
3240 dependencies:
3241 commander: 2.19.0
3242 source-map: 0.6.1
3243
3244 unc-path-regex@0.1.2: {}
3245
3246 undefsafe@2.0.5: {}
3247
3248 undici-types@5.26.5: {}
3249
3250 unique-stream@2.3.1:
3251 dependencies:
3252 json-stable-stringify-without-jsonify: 1.0.1
3253 through2-filter: 3.0.0
3254
3255 unique-string@2.0.0:
3256 dependencies:
3257 crypto-random-string: 2.0.0
3258
3259 update-notifier@4.1.3:
3260 dependencies:
3261 boxen: 4.2.0
3262 chalk: 3.0.0
3263 configstore: 5.0.1
3264 has-yarn: 2.1.0
3265 import-lazy: 2.1.0
3266 is-ci: 2.0.0
3267 is-installed-globally: 0.3.2
3268 is-npm: 4.0.0
3269 is-yarn-global: 0.3.0
3270 latest-version: 5.1.0
3271 pupa: 2.1.1
3272 semver-diff: 3.1.1
3273 xdg-basedir: 4.0.0
3274
3275 upper-case@1.1.3: {}
3276
3277 url-parse-lax@3.0.0:
3278 dependencies:
3279 prepend-http: 2.0.0
3280
3281 util-deprecate@1.0.2: {}
3282
3283 value-or-function@3.0.0: {}
3284
3285 vinyl-fs@3.0.3:
3286 dependencies:
3287 fs-mkdirp-stream: 1.0.0
3288 glob-stream: 6.1.0
3289 graceful-fs: 4.2.11
3290 is-valid-glob: 1.0.0
3291 lazystream: 1.0.1
3292 lead: 1.0.0
3293 object.assign: 4.1.5
3294 pumpify: 1.5.1
3295 readable-stream: 2.3.8
3296 remove-bom-buffer: 3.0.0
3297 remove-bom-stream: 1.2.0
3298 resolve-options: 1.1.0
3299 through2: 2.0.5
3300 to-through: 2.0.0
3301 value-or-function: 3.0.0
3302 vinyl: 2.2.1
3303 vinyl-sourcemap: 1.1.0
3304
3305 vinyl-source-stream@1.1.2:
3306 dependencies:
3307 through2: 2.0.5
3308 vinyl: 0.4.6
3309
3310 vinyl-sourcemap@1.1.0:
3311 dependencies:
3312 append-buffer: 1.0.2
3313 convert-source-map: 1.9.0
3314 graceful-fs: 4.2.11
3315 normalize-path: 2.1.1
3316 now-and-later: 2.0.1
3317 remove-bom-buffer: 3.0.0
3318 vinyl: 2.2.1
3319
3320 vinyl-string@1.0.2:
3321 dependencies:
3322 vinyl: 1.2.0
3323
3324 vinyl@0.4.6:
3325 dependencies:
3326 clone: 0.2.0
3327 clone-stats: 0.0.1
3328
3329 vinyl@1.2.0:
3330 dependencies:
3331 clone: 1.0.4
3332 clone-stats: 0.0.1
3333 replace-ext: 0.0.1
3334
3335 vinyl@2.2.1:
3336 dependencies:
3337 clone: 2.1.2
3338 clone-buffer: 1.0.0
3339 clone-stats: 1.0.0
3340 cloneable-readable: 1.1.3
3341 remove-trailing-separator: 1.1.0
3342 replace-ext: 1.0.1
3343
3344 which@1.3.1:
3345 dependencies:
3346 isexe: 2.0.0
3347
3348 widest-line@3.1.0:
3349 dependencies:
3350 string-width: 4.2.3
3351
3352 workerpool@6.5.1: {}
3353
3354 wrap-ansi@7.0.0:
3355 dependencies:
3356 ansi-styles: 4.3.0
3357 string-width: 4.2.3
3358 strip-ansi: 6.0.1
3359
3360 wrappy@1.0.2: {}
3361
3362 write-file-atomic@3.0.3:
3363 dependencies:
3364 imurmurhash: 0.1.4
3365 is-typedarray: 1.0.0
3366 signal-exit: 3.0.7
3367 typedarray-to-buffer: 3.1.5
3368
3369 write-file-atomic@5.0.1:
3370 dependencies:
3371 imurmurhash: 0.1.4
3372 signal-exit: 4.1.0
3373
3374 xdg-basedir@4.0.0: {}
3375
3376 xtend@4.0.2: {}
3377
3378 y18n@5.0.8: {}
3379
3380 yargs-parser@20.2.9: {}
3381
3382 yargs-unparser@2.0.0:
3383 dependencies:
3384 camelcase: 6.3.0
3385 decamelize: 4.0.0
3386 flat: 5.0.2
3387 is-plain-obj: 2.1.0
3388
3389 yargs@16.2.0:
3390 dependencies:
3391 cliui: 7.0.4
3392 escalade: 3.2.0
3393 get-caller-file: 2.0.5
3394 require-directory: 2.1.1
3395 string-width: 4.2.3
3396 y18n: 5.0.8
3397 yargs-parser: 20.2.9
3398
3399 yocto-queue@0.1.0: {}
diff --git a/src/_easing.scss b/src/_easing.scss
index 8bcfd39..6d66ea7 100644
--- a/src/_easing.scss
+++ b/src/_easing.scss
@@ -10,6 +10,8 @@
10//// 10////
11 11
12@use 'sass:math'; 12@use 'sass:math';
13@use 'sass:map';
14@use 'sass:list';
13 15
14/// 16///
15/// @access private 17/// @access private
@@ -73,14 +75,14 @@ $cubic-bezier-subdiv-max-iters: 10 !default;
73 75
74 $sample-pool-key: $x1 + '_' + $x2; 76 $sample-pool-key: $x1 + '_' + $x2;
75 77
76 @if not map-has-key($cubic-bezier-sample-pool, $sample-pool-key) { 78 @if not map.has-key($cubic-bezier-sample-pool, $sample-pool-key) {
77 $samples: (); 79 $samples: ();
78 80
79 @for $i from 0 through $cubic-bezier-sample-pool-size { 81 @for $i from 0 through $cubic-bezier-sample-pool-size {
80 $samples: append($samples, cubic-bezier-func($x1, $x2, math.div($i, $cubic-bezier-sample-pool-size))); 82 $samples: list.append($samples, cubic-bezier-func($x1, $x2, math.div($i, $cubic-bezier-sample-pool-size)));
81 } 83 }
82 84
83 $cubic-bezier-sample-pool: map-merge($cubic-bezier-sample-pool, ($sample-pool-key: $samples)) !global; 85 $cubic-bezier-sample-pool: map.merge($cubic-bezier-sample-pool, ($sample-pool-key: $samples)) !global;
84 } 86 }
85 87
86 // 88 //
@@ -169,7 +171,7 @@ $cubic-bezier-subdiv-max-iters: 10 !default;
169 $a: $cur-t; 171 $a: $cur-t;
170 } 172 }
171 173
172 @if abs($cur-x) < $cubic-bezier-subdiv-precision { 174 @if math.abs($cur-x) < $cubic-bezier-subdiv-precision {
173 @return $cur-t; 175 @return $cur-t;
174 } 176 }
175 } 177 }
@@ -184,19 +186,19 @@ $cubic-bezier-subdiv-max-iters: 10 !default;
184/// 186///
185@function cubic-bezier-t-for-x($x1, $x2, $x) { 187@function cubic-bezier-t-for-x($x1, $x2, $x) {
186 $sample-pool-key: $x1 + '_' + $x2; 188 $sample-pool-key: $x1 + '_' + $x2;
187 $samples: map-get($cubic-bezier-sample-pool, $sample-pool-key); 189 $samples: map.get($cubic-bezier-sample-pool, $sample-pool-key);
188 190
189 $intv-start: 0; 191 $intv-start: 0;
190 $cur-sample: 1; 192 $cur-sample: 1;
191 $last-sample: $cubic-bezier-sample-pool-size; 193 $last-sample: $cubic-bezier-sample-pool-size;
192 194
193 @while ($cur-sample != $last-sample) and (nth($samples, $cur-sample) <= $x) { 195 @while ($cur-sample != $last-sample) and (list.nth($samples, $cur-sample) <= $x) {
194 $intv-start: $intv-start + math.div(1, $cubic-bezier-sample-pool-size); 196 $intv-start: $intv-start + math.div(1, $cubic-bezier-sample-pool-size);
195 $cur-sample: $cur-sample + 1; 197 $cur-sample: $cur-sample + 1;
196 } 198 }
197 $cur-sample: $cur-sample - 1; 199 $cur-sample: $cur-sample - 1;
198 200
199 $dist: math.div($x - nth($samples, $cur-sample), nth($samples, $cur-sample + 1) - nth($samples, $cur-sample)); 201 $dist: math.div($x - list.nth($samples, $cur-sample), list.nth($samples, $cur-sample + 1) - list.nth($samples, $cur-sample));
200 $guess-t: $intv-start + math.div($dist, $cubic-bezier-sample-pool-size); 202 $guess-t: $intv-start + math.div($dist, $cubic-bezier-sample-pool-size);
201 203
202 $init-slope: cubic-bezier-func-slope($x1, $x2, $guess-t); 204 $init-slope: cubic-bezier-func-slope($x1, $x2, $guess-t);
@@ -210,6 +212,17 @@ $cubic-bezier-subdiv-max-iters: 10 !default;
210} 212}
211 213
212/// 214///
215/// Linear easing function.
216///
217/// @param {number} $x - Progress between 0 and 1 inclusive
218///
219/// @return {number}
220///
221@function linear($x) {
222 @return $x;
223}
224
225///
213/// Sinusoidal easing function (in direction). 226/// Sinusoidal easing function (in direction).
214/// 227///
215/// @param {number} $x - Progress between 0 and 1 inclusive 228/// @param {number} $x - Progress between 0 and 1 inclusive
diff --git a/src/_functions.scss b/src/_functions.scss
index 9dd14b1..0d139b4 100644
--- a/src/_functions.scss
+++ b/src/_functions.scss
@@ -10,9 +10,32 @@
10//// 10////
11 11
12@use 'sass:map'; 12@use 'sass:map';
13@use 'sass:list';
13@use 'sass:math'; 14@use 'sass:math';
15@use 'sass:string';
16@use 'sass:meta';
14@use './vars'; 17@use './vars';
15 18
19$numbers: ('0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9);
20
21$units: (
22 'px': 1px,
23 'cm': 1cm,
24 'mm': 1mm,
25 '%': 1%,
26 'ch': 1ch,
27 'pc': 1pc,
28 'in': 1in,
29 'em': 1em,
30 'rem': 1rem,
31 'pt': 1pt,
32 'ex': 1ex,
33 'vw': 1vw,
34 'vh': 1vh,
35 'vmin': 1vmin,
36 'vmax': 1vmax
37);
38
16/// 39///
17/// Replace a substring with a new string. 40/// Replace a substring with a new string.
18/// 41///
@@ -23,10 +46,10 @@
23/// @return {string} A string with all instances of $search replaced with $replace 46/// @return {string} A string with all instances of $search replaced with $replace
24/// 47///
25@function str-replace($string, $search, $replace) { 48@function str-replace($string, $search, $replace) {
26 $index: str-index($string, $search); 49 $index: string.index($string, $search);
27 50
28 @if $index { 51 @if $index {
29 @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace); 52 @return string.slice($string, 1, $index - 1) + $replace + str-replace(string.slice($string, $index + string.length($search)), $search, $replace);
30 } 53 }
31 54
32 @return $string; 55 @return $string;
@@ -44,9 +67,9 @@
44 $result: ''; 67 $result: '';
45 68
46 @each $item in $list { 69 @each $item in $list {
47 $result: $result + if(length($item) > 1, str-implode($item, $glue), $item); 70 $result: $result + if(list.length($item) > 1, str-implode($item, $glue), $item);
48 71
49 @if $item != nth($list, length($list)) { 72 @if $item != list.nth($list, list.length($list)) {
50 $result: $result + $glue; 73 $result: $result + $glue;
51 } 74 }
52 } 75 }
@@ -63,13 +86,13 @@
63/// 86///
64/// @return {list} A slice of the list 87/// @return {list} A slice of the list
65/// 88///
66@function list-slice($list, $start: 1, $end: length($list)) { 89@function list-slice($list, $start: 1, $end: list.length($list)) {
67 $result: (); 90 $result: ();
68 91
69 @if $end >= $start { 92 @if $end >= $start {
70 @for $i from $start through $end { 93 @for $i from $start through $end {
71 @if $i != 0 { 94 @if $i != 0 {
72 $result: append($result, nth($list, $i), list-separator($list)); 95 $result: list.append($result, list.nth($list, $i), list.separator($list));
73 } 96 }
74 } 97 }
75 } 98 }
@@ -86,11 +109,11 @@
86/// @return {list} A list with $value at the beginning, followed by the other items 109/// @return {list} A list with $value at the beginning, followed by the other items
87/// 110///
88@function list-prepend($list, $value) { 111@function list-prepend($list, $value) {
89 $result: append((), $value, list-separator($list)); 112 $result: list.append((), $value, list.separator($list));
90 113
91 @if length($list) > 0 { 114 @if list.length($list) > 0 {
92 @for $i from 1 through length($list) { 115 @for $i from 1 through list.length($list) {
93 $result: append($result, nth($list, $i), list-separator($list)); 116 $result: list.append($result, list.nth($list, $i), list.separator($list));
94 } 117 }
95 } 118 }
96 119
@@ -105,13 +128,13 @@
105/// @return {list} Teh reversed list 128/// @return {list} Teh reversed list
106/// 129///
107@function list-reverse($list) { 130@function list-reverse($list) {
108 @if length($list) == 0 { 131 @if list.length($list) == 0 {
109 @return $list; 132 @return $list;
110 } 133 }
111 134
112 $result: (); 135 $result: ();
113 @for $i from length($list) * -1 through -1 { 136 @for $i from list.length($list) * -1 through -1 {
114 $result: append($result, nth($list, abs($i))); 137 $result: list.append($result, list.nth($list, math.abs($i)));
115 } 138 }
116 @return $result; 139 @return $result;
117} 140}
@@ -126,11 +149,11 @@
126/// 149///
127/// @return {list} Sorted list 150/// @return {list} Sorted list
128/// 151///
129@function quicksort($l, $left: 1, $right: length($l)) { 152@function quicksort($l, $left: 1, $right: list.length($l)) {
130 @if $left < $right { 153 @if $left < $right {
131 $pvr: quicksort-partition($l, $left, $right); 154 $pvr: quicksort-partition($l, $left, $right);
132 $pivot: nth($pvr, 1); 155 $pivot: list.nth($pvr, 1);
133 $l: nth($pvr, 2); 156 $l: list.nth($pvr, 2);
134 $l: quicksort($l, $left, $pivot); 157 $l: quicksort($l, $left, $pivot);
135 $l: quicksort($l, $pivot + 1, $right); 158 $l: quicksort($l, $pivot + 1, $right);
136 } 159 }
@@ -145,30 +168,30 @@
145 $start: true; 168 $start: true;
146 $i: $left; 169 $i: $left;
147 $j: $right - 1; 170 $j: $right - 1;
148 $pivot: nth($l, $right); 171 $pivot: list.nth($l, $right);
149 172
150 @while ($i < $j) or $start { 173 @while ($i < $j) or $start {
151 @while (nth($l, $i) < $pivot) and ($i < $right - 1) { 174 @while (list.nth($l, $i) < $pivot) and ($i < $right - 1) {
152 $i: $i + 1; 175 $i: $i + 1;
153 } 176 }
154 177
155 @while (nth($l, $j)>= $pivot) and ($j > $left) { 178 @while (list.nth($l, $j)>= $pivot) and ($j > $left) {
156 $j: $j - 1; 179 $j: $j - 1;
157 } 180 }
158 181
159 @if $i < $j { 182 @if $i < $j {
160 $i-val: nth($l, $i); 183 $i-val: list.nth($l, $i);
161 $l: set-nth($l, $i, nth($l, $j)); 184 $l: list.set-nth($l, $i, list.nth($l, $j));
162 $l: set-nth($l, $j, $i-val); 185 $l: list.set-nth($l, $j, $i-val);
163 } 186 }
164 187
165 $start: false; 188 $start: false;
166 } 189 }
167 190
168 @if nth($l, $i) > $pivot { 191 @if list.nth($l, $i) > $pivot {
169 $i-val: nth($l, $i); 192 $i-val: list.nth($l, $i);
170 $l: set-nth($l, $i, nth($l, $right)); 193 $l: list.set-nth($l, $i, list.nth($l, $right));
171 $l: set-nth($l, $right, $i-val); 194 $l: list.set-nth($l, $right, $i-val);
172 } 195 }
173 196
174 @return $i $l; 197 @return $i $l;
@@ -185,10 +208,10 @@
185/// @return {any} Either the value assigned to $key or $default 208/// @return {any} Either the value assigned to $key or $default
186/// 209///
187@function map-get-default($map, $key, $keys...) { 210@function map-get-default($map, $key, $keys...) {
188 $default: nth($keys, length($keys)); 211 $default: list.nth($keys, list.length($keys));
189 $keys: list-slice($keys, 1, length($keys) - 1); 212 $keys: list-slice($keys, 1, list.length($keys) - 1);
190 213
191 @return if(map-has-key($map, $key, $keys...), map-get($map, $key, $keys...), $default); 214 @return if(map.has-key($map, $key, $keys...), map.get($map, $key, $keys...), $default);
192} 215}
193 216
194/// 217///
@@ -204,11 +227,11 @@
204 @each $key, $value in $map { 227 @each $key, $value in $map {
205 $value-str: ''; 228 $value-str: '';
206 229
207 @if type-of($value) == map { 230 @if meta.type-of($value) == map {
208 $value-str: '[ ' + map-print($value) + ' ]'; 231 $value-str: '[ ' + map-print($value) + ' ]';
209 } @else if type-of($value) == list { 232 } @else if meta.type-of($value) == list {
210 $value-str: '[ ' + str-implode($value, ', ') + ' ]'; 233 $value-str: '[ ' + str-implode($value, ', ') + ' ]';
211 } @else if type-of($value) == string { 234 } @else if meta.type-of($value) == string {
212 $value-str: '\'' + $value + '\''; 235 $value-str: '\'' + $value + '\'';
213 } @else { 236 } @else {
214 $value-str: $value; 237 $value-str: $value;
@@ -243,8 +266,8 @@
243 @if not $sel-match { 266 @if not $sel-match {
244 $suf-match: true; 267 $suf-match: true;
245 268
246 @for $i from 1 through length($suffix) { 269 @for $i from 1 through list.length($suffix) {
247 @if $suf-match and (nth($sel, -$i) != nth($suffix, -$i)) { 270 @if $suf-match and (list.nth($sel, -$i) != list.nth($suffix, -$i)) {
248 $suf-match: false; 271 $suf-match: false;
249 } 272 }
250 } 273 }
@@ -287,6 +310,61 @@
287 @return math.div($size, $base) * 1rem; 310 @return math.div($size, $base) * 1rem;
288} 311}
289 312
313///
314/// Casts a string into a number
315///
316/// @param {string|number} $value
317///
318/// @return {number}
319///
320@function to-number($value) {
321 @if meta.type-of($value) == 'number' {
322 @return $value;
323 }
324 @if meta.type-of($value) != 'string' {
325 @error 'Value for `to-number` should be a number or a string.';
326 }
327
328 $result: 0;
329 $digits: 0;
330 $minus: string.slice($value, 1, 1) == '-';
331
332 @for $i from if($minus, 2, 1) through string.length($value) {
333 $character: string.slice($value, $i, $i);
334
335 @if not list.index(map.keys($numbers), $character) and $character != '.' {
336 @return to-length(if($minus, -$result, $result), string.slice($value, $i));
337 }
338
339 @if $character == '.' {
340 $digits: 1;
341 } @else if $digits == 0 {
342 $result: $result * 10 + map.get($numbers, $character);
343 } @else {
344 $digits: $digits * 10;
345 $result: $result + math.div(map.get($numbers, $character), $digits);
346 }
347 }
348
349 @return if($minus, -$result, $result);
350}
351
352///
353/// Add $unit to $value
354///
355/// @param {number} $value - Value to add unit to
356/// @param {string} $unit - String representation of the unit
357///
358/// @return {number} $value expressed in $unit
359///
360@function to-length($value, $unit) {
361 @if not list.index(map.keys($units), $unit) {
362 @error 'Invalid unit `#{$unit}`.';
363 }
364
365 @return $value * map.get($units, $unit);
366}
367
290/// 368///
291/// A mixin with the sole purpose of letting you use temporary variables without polluting the global namespace. 369/// A mixin with the sole purpose of letting you use temporary variables without polluting the global namespace.
292/// 370///
diff --git a/src/index.scss b/src/_iro-sass.scss
index cc9cda7..d1b8ee3 100644
--- a/src/index.scss
+++ b/src/_iro-sass.scss
@@ -1,9 +1,9 @@
1@forward 'bem' as bem-*; 1@forward 'vars' as vars-*;
2@forward 'functions' as fn-*;
2@forward 'contexts' as ctx-*; 3@forward 'contexts' as ctx-*;
4@forward 'props' as props-*;
5@forward 'bem' as bem-*;
3@forward 'easing' as easing-*; 6@forward 'easing' as easing-*;
4@forward 'functions' as fn-*;
5@forward 'gradients' as gradients-*; 7@forward 'gradients' as gradients-*;
6@forward 'harmony' as harmony-*;
7@forward 'props' as props-*;
8@forward 'responsive' as responsive-*; 8@forward 'responsive' as responsive-*;
9@forward 'vars' as vars-*; 9@forward 'harmony' as harmony-*;
diff --git a/src/_props.scss b/src/_props.scss
index 8d84aa1..300fc28 100644
--- a/src/_props.scss
+++ b/src/_props.scss
@@ -1,423 +1,139 @@
1//// 1@use 'sass:list';
2/// Property trees.
3///
4/// Property trees allow you to organize properties in a tree structure (internally nested maps).
5/// The intended use is to store all your properties at the beginning and for the rest of the
6/// stylesheet you just get them.
7///
8/// @group Property trees
9///
10/// @access public
11////
12
13@use 'sass:map'; 2@use 'sass:map';
14@use './functions'; 3@use 'sass:meta';
15@use './contexts';
16
17///
18/// The maximum depth of resolved iro-prop-ref() references.
19///
20/// @type number
21///
22$native-assign-max-depth: 2 !default;
23
24///
25/// Indicate if property names must start with two dashes (--).
26/// This is required if property trees are also used for native CSS custom properties.
27///
28/// @type bool
29///
30$enforce-double-dashes: true !default;
31
32///
33/// Default tree name to use if no name is specified.
34///
35/// @type string
36///
37$default-tree: 'default' !default;
38
39///
40/// List of all created property trees.
41///
42/// @type list
43///
44/// @access private
45///
46$trees: ();
47
48///
49/// Default context name used for the namespace context.
50///
51/// @type string
52///
53$namespace-context-id: 'namespace' !default;
54
55///
56/// Declare a namespace, meaning that all variables declared and accessed.
57///
58/// @param {string} $name - Name of the namespace
59///
60@mixin namespace($name) {
61 $key: '--#{$name}';
62 4
63 $ns-key: get-ns-key(); 5@function is-prop-ref($value) {
64 6 @if meta.type-of($value) != 'list' {
65 @if $ns-key != null { 7 @return false;
66 $key: append($ns-key, $key);
67 } @else {
68 $key: ($key);
69 } 8 }
70 9 @if list.length($value) != 4 {
71 @include contexts.push($namespace-context-id, 'namespace', ( 10 @return false;
72 'name': $name,
73 'key': $key
74 ));
75
76 @content;
77
78 @include contexts.pop($namespace-context-id);
79}
80
81///
82/// Get the current namespace name.
83///
84@function namespace() {
85 $noop: contexts.assert-stack-must-contain($namespace-context-id, 'namespace');
86
87 $data: nth(contexts.get($namespace-context-id, 'namespace'), 2);
88 $name: map-get($data, 'name');
89
90 @return $name;
91}
92
93///
94/// Save a property tree. If a tree with the sane name already exists, the trees
95/// will be merged.
96///
97/// @param {map} $map - Map containing properties
98/// @param {string} $tree [$default-tree] - ID the map is saved as
99/// @param {bool} $merge [true] - If a tree named $tree already exists and this value is set to true, they will be merged. Otherwise an error will be emitted.
100///
101@mixin store($map, $tree: $default-tree, $merge: true, $global: false) {
102 $noop: store($map, $tree, $merge, $global);
103}
104
105///
106/// Save a property tree.
107///
108/// @param {map} $map - Map containing properties
109/// @param {string} $tree [$default-tree] - ID the map is saved as
110/// @param {bool} $merge [true] - If a tree named $tree already exists and this value is set to true, they will be merged. Otherwise an error will be emitted.
111///
112@function store($map, $tree: $default-tree, $merge: true, $global: false) {
113 $prop-map: null;
114
115 @if $enforce-double-dashes {
116 @if not validate($map) {
117 @error 'Property tree keys must start with two dashes (--). If you don\'t use property trees for native CSS custom properties, set $enforce-double-dashes to false.';
118 }
119 } 11 }
120 12 @if list.nth($value, 1) != 'prop-ref' {
121 @if not $global { 13 @return false;
122 $ns-key: get-ns-key();
123
124 @if $ns-key != null {
125 $map: ($ns-key: $map);
126 }
127 } 14 }
128 15 @return true;
129 @if map-has-key($trees, $tree) {
130 @if $merge {
131 $map: map.deep-merge(map-get($trees, $tree), $map);
132 } @else {
133 @error 'Property tree #{inspect($tree)} does already exist.';
134 }
135 }
136
137 $trees: map-merge($trees, ($tree: $map)) !global;
138
139 @return null;
140} 16}
141 17
142/// 18@function def($name, $value: (), $metadata: ()) {
143/// Delete a property tree. 19 @return ('prop-ref' $name $value $metadata);
144///
145/// @param {string} $tree [$default-tree] - ID of the tree to be deleted
146///
147@mixin clear($tree: $default-tree) {
148 $noop: clear($tree);
149} 20}
150 21
151/// 22@function merge($ref, $value) {
152/// Delete a property tree. 23 @if not is-prop-ref($ref) {
153/// 24 @return $ref;
154/// @param {string} $tree [$default-tree] - ID of the tree to be deleted
155///
156/// @throw If the property tree does not exist
157///
158@function clear($tree: $default-tree) {
159 @if not map-has-key($trees, $tree) {
160 @error 'Property tree "#{inspect($tree)}" does not exist.';
161 } 25 }
162 26
163 $trees: map-remove($trees, $tree) !global; 27 $v: list.nth($ref, 3);
164 28 $ref: list.set-nth($ref, 3, map.deep-merge($v, $value));
165 @return null; 29 @return $ref;
166} 30}
167 31
168/// 32@function get-deep($name, $value, $key: null, $keys...) {
169/// Access a whole property or a subsection (i.e. value) of it. 33 @if is-prop-ref($value) {
170/// 34 @return get($value, $key, $keys);
171/// @param {string | list} $key [null] - Key of the property to read. If this is a list of keys, the map will be traversed in that order.
172/// @param {string} $tree [$default-tree] - ID of the property tree to use
173/// @param {any} $default [null] - Default value to return of no match was found. If null, this function will throw an error instead.
174///
175/// @return {any} Value assigned to property or $default
176///
177/// @throw If there was no match for $key and $default is null
178///
179@function get-static($key: (), $tree: $default-tree, $default: null, $global: false) {
180 @if not map-has-key($trees, $tree) {
181 @error 'Unknown tree "#{$tree}".';
182 } 35 }
183 36 @if meta.type-of($value) == 'map' and $key != null {
184 $result: map-get($trees, $tree); 37 @if meta.type-of($key) != 'string' {
185 38 @error 'Expected string, got #{$key}';
186 @if not $global {
187 $ns-key: get-ns-key();
188
189 @if $ns-key != null {
190 $orig-key: $key;
191 $key: $ns-key;
192
193 @if type-of($orig-key) == list {
194 @each $subkey in $orig-key {
195 $key: append($key, $subkey);
196 }
197 } @else {
198 $key: append($key, $orig-key);
199 }
200 } 39 }
40 @return get-deep(#{$name}#{$key}, map.get($value, $key), $keys...);
201 } 41 }
202 42 @return $name $value;
203 @if type-of($key) == list {
204 $stop: false;
205
206 @each $k in $key {
207 @if not $stop and map-has-key($result, $k) {
208 $result: map-get($result, $k);
209
210 @if type-of($result) == list and nth($result, 1) == 'iro-prop-ref' {
211 @if length($result) == 2 {
212 $result: get-static($tree: nth($result, 2), $global: true);
213 } @else {
214 $result: get-static(nth($result, 3), nth($result, 2), $global: true);
215 }
216 }
217 } @else {
218 $stop: true;
219 }
220 }
221
222 @if $stop {
223 $result: null;
224 }
225 } @else {
226 $result: map-get($result, $key);
227
228 @if type-of($result) == list and nth($result, 1) == 'iro-prop-ref' {
229 @if length($result) == 2 {
230 $result: get-static($tree: nth($result, 2), $global: true);
231 } @else {
232 $result: get-static(nth($result, 3), nth($result, 2), $global: true);
233 }
234 }
235 }
236
237 @if $result == null {
238 @if $default == null {
239 @error '"#{$key}" is null.';
240 } @else {
241 @return $default;
242 }
243 }
244
245 @return $result;
246} 43}
247 44
248/// 45@function map-to-vars($name, $map) {
249/// Generate a var() function call to get native CSS custom property. 46 @if meta.type-of($map) != 'map' {
250/// 47 @if meta.type-of($name) != 'string' {
251/// @param {string | list} $key - Key of the property to read. If this is a list of keys, the map will be traversed in that order. 48 @error 'Expected variable name, got #{$name} instead';
252/// @param {string | null} $tree [null] - Optional tree to check if the property actually exists.
253/// @param {any} $default [null] - Default value to return of no match was found.
254///
255/// @return {string} var()
256///
257@function get($key, $tree: $default-tree, $default: null, $global: false) {
258 @if $tree != null {
259 $noop: get-static($key, $tree, $default, $global);
260 }
261
262 @if not $global {
263 $ns-key: get-ns-key();
264
265 @if $ns-key != null {
266 $orig-key: $key;
267 $key: $ns-key;
268
269 @if type-of($orig-key) == list {
270 @each $subkey in $orig-key {
271 $key: append($key, $subkey);
272 }
273 } @else {
274 $key: append($key, $orig-key);
275 }
276 } 49 }
50 @return var($name);
277 } 51 }
278 52
279 $native-var: ''; 53 $out: ();
280 54
281 @if type-of($key) == list { 55 @each $key, $value in $map {
282 @each $subkey in $key { 56 $out: map.set($out, $key, map-to-vars(#{$name}#{$key}, $value));
283 $native-var: $native-var + $subkey;
284 }
285 } @else {
286 $native-var: $key;
287 } 57 }
288 58
289 @if $default == null { 59 @return $out;
290 @return var(#{$native-var});
291 } @else {
292 @return var(#{$native-var}, #{$default});
293 }
294} 60}
295 61
296/// 62@function get($ref, $key: null, $keys...) {
297/// Generate assignments for native CSS custom properties with the values from the specified tree. 63 @if not is-prop-ref($ref) {
298/// 64 @return $ref;
299/// @param {string} $tree [$default-tree] - ID of the property tree to use
300/// @param {string} $root [()] - Sub-tree to use for assignment
301///
302@mixin assign($tree: $default-tree, $root: (), $skip: (), $prefix: '', $global: false) {
303 $map: get-static($root, $tree, $global: $global);
304 $map: map-remove($map, $skip...);
305
306 @if type-of($prefix) == list {
307 $prefix: functions.str-implode($prefix);
308 } 65 }
309 66
310 @if not $global { 67 $name: list.nth($ref, 2);
311 $ns-key: get-ns-key(); 68 $value: get(list.nth($ref, 3));
312 69
313 @if $ns-key != null { 70 @if meta.type-of($value) == 'map' {
314 $prefix: $prefix + functions.str-implode($ns-key); 71 $res: get-deep($name, $value, $key, $keys...);
72 $name: list.nth($res, 1);
73 $value: list.nth($res, 2);
74 } @else if meta.type-of($value) == 'list' {
75 $i: 1;
76 @each $item in $value {
77 $value: list.set-nth($value, $i, get($item));
78 $i: $i + 1;
315 } 79 }
316 } 80 }
317 81
318 @include assign-internal($map, $prefix); 82 @return map-to-vars($name, $value);
319} 83}
320 84
321/// 85@mixin materialize-helper($name, $value) {
322/// @access private 86 @if meta.type-of($value) == 'map' {
323/// 87 @each $key, $value in $value {
324@mixin assign-internal($map, $prefix: '', $ref-depth: $native-assign-max-depth) { 88 @include materialize-helper(#{$name}#{$key}, $value);
325 @each $key, $value in $map {
326 $rd: $ref-depth;
327 @if type-of($value) == list and length($value) > 0 and nth($value, 1) == 'iro-prop-ref' {
328 @if $ref-depth != 0 {
329 $rd: $rd - 1;
330 @if length($value) == 2 {
331 $value: get-static($tree: nth($value, 2));
332 } @else {
333 $value: get-static(nth($value, 3), nth($value, 2));
334 }
335 } @else {
336 $value: null;
337 }
338 }
339 @if type-of($value) != map and $value != () {
340 #{$prefix + $key}: #{$value};
341 } @else {
342 @include assign-internal($value, $prefix + $key, $rd);
343 } 89 }
90 } @else {
91 #{$name}: #{$value};
344 } 92 }
345} 93}
346 94
347/// 95@mixin materialize($ref, $match-meta: ()) {
348/// Validate property names. 96 @if is-prop-ref($ref) {
349/// 97 $name: list.nth($ref, 2);
350/// @access private 98 $value: get(list.nth($ref, 3));
351/// 99 $meta: get(list.nth($ref, 4));
352@function validate($map) {
353 @each $key, $value in $map {
354 @if str-index($key, '--') != 1 {
355 @return false;
356 }
357 100
358 @if type-of($value) == map { 101 $match: true;
359 @if not validate($value) { 102 @if meta.type-of($match-meta) == 'list' {
360 @return false; 103 @each $item in $match-meta {
104 $match: $match and list.index($meta, $item) != null;
361 } 105 }
106 } @else if $match-meta == null and list.length($meta) == 0 {
107 $match: true;
108 } @else {
109 $match: list.index($meta, $match-meta) != null;
362 } 110 }
363 }
364
365 @return true;
366}
367
368///
369/// Generate a reference to another tree. Dereferencing is lazy, so you may specify a tree that hasn't been created yet.
370///
371/// @param {string} $tree [$default-tree] - ID of the property tree to use
372/// @param {string | list} $key - Key of the property to read. If this is a list of keys, the map will be traversed in that order.
373///
374/// @return {list} A special list that let's Ignis know that this is a lazy value.
375///
376/// @throw If there was no match for $key and $default is null
377///
378@function ref($tree: $default-tree, $key: null, $global: false) {
379 @if not $global {
380 $ns-key: get-ns-key();
381 111
382 @if $ns-key != null { 112 @if $match {
383 $orig-key: $key; 113 @include materialize-helper($name, $value);
384 $key: $ns-key; 114 }
115 } @else if meta.type-of($ref) == 'list' {
116 @each $r in $ref {
117 @if is-prop-ref($r) {
118 $name: list.nth($r, 2);
119 $value: get(list.nth($r, 3));
120 $meta: get(list.nth($r, 4));
385 121
386 @if $orig-key != null { 122 $match: true;
387 @if type-of($orig-key) == list { 123 @if meta.type-of($match-meta) == 'list' {
388 @each $subkey in $orig-key { 124 @each $item in $match-meta {
389 $key: append($key, $subkey); 125 $match: $match and list.index($meta, $item) != null;
390 } 126 }
127 } @else if $match-meta == null and list.length($meta) == 0 {
128 $match: true;
391 } @else { 129 } @else {
392 $key: append($key, $orig-key); 130 $match: list.index($meta, $match-meta) != null;
131 }
132
133 @if $match {
134 @include materialize-helper($name, $value);
393 } 135 }
394 } 136 }
395 } 137 }
396 } 138 }
397
398 @if $key == null {
399 @return ('iro-prop-ref' $tree);
400 } @else {
401 @return ('iro-prop-ref' $tree $key);
402 }
403}
404
405///
406/// Get the current namespace key.
407///
408/// @access private
409///
410@function get-ns-key() {
411 $ctx: contexts.get($namespace-context-id, 'namespace');
412
413 @if $ctx == null {
414 @return null;
415 }
416
417 $data: nth($ctx, 2);
418 $key: map-get($data, 'key');
419
420 @return $key;
421} 139}
422
423@include contexts.create($namespace-context-id);
diff --git a/src/bem/_block.scss b/src/bem/_block.scss
index 49af04b..cfa9f33 100644
--- a/src/bem/_block.scss
+++ b/src/bem/_block.scss
@@ -56,7 +56,13 @@
56 56
57 @include contexts.push(vars.$context-id, $context...); 57 @include contexts.push(vars.$context-id, $context...);
58 @at-root #{$selector} { 58 @at-root #{$selector} {
59 @content; 59 @if $type != null {
60 @layer #{$type} {
61 @content;
62 }
63 } @else {
64 @content;
65 }
60 } 66 }
61 @include contexts.pop(vars.$context-id); 67 @include contexts.pop(vars.$context-id);
62} 68}
diff --git a/test/_props.scss b/test/_props.scss
index d8b550b..1d64080 100644
--- a/test/_props.scss
+++ b/test/_props.scss
@@ -240,6 +240,16 @@
240 @include assert-equal(props.get(--primary --text), var(--buttons--primary--text), 'Get via namespace "buttons" --primary --text'); 240 @include assert-equal(props.get(--primary --text), var(--buttons--primary--text), 'Get via namespace "buttons" --primary --text');
241 @include assert-equal(props.get(--secondary --text, $default: false), var(--buttons--secondary--text, false), 'Get via namespace "buttons" --secondary --text with default'); 241 @include assert-equal(props.get(--secondary --text, $default: false), var(--buttons--secondary--text, false), 'Get via namespace "buttons" --secondary --text with default');
242 } 242 }
243 @include assert-equal(props.get(--buttons), (
244 --primary: (
245 --background: var(--buttons--primary--background),
246 --text: var(--buttons--primary--text)
247 ),
248 --default: (
249 --background: var(--buttons--default--background),
250 --text: var(--buttons--default--text)
251 )
252 ), 'Get --buttons recursively');
243 253
244 @include assert-equal(props.clear(), null, 'Delete default tree'); 254 @include assert-equal(props.clear(), null, 'Delete default tree');
245 } 255 }
diff --git a/test/test.js b/test/test.js
index 94d16da..cce331c 100644
--- a/test/test.js
+++ b/test/test.js
@@ -1,4 +1,4 @@
1const path = require("path"); 1const path = require("path");
2const sassTrue = require("sass-true"); 2const sassTrue = require("sass-true");
3 3
4sassTrue.runSass({ file: path.join(__dirname, "test.scss") }, { describe, it }); 4sassTrue.runSass({ describe, it }, path.join(__dirname, "test.scss"));