@metamask/snaps-utils 8.1.1 → 8.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/CHANGELOG.md +137 -1
  2. package/dist/currency.cjs +20 -0
  3. package/dist/currency.cjs.map +1 -0
  4. package/dist/currency.d.cts +11 -0
  5. package/dist/currency.d.cts.map +1 -0
  6. package/dist/currency.d.mts +11 -0
  7. package/dist/currency.d.mts.map +1 -0
  8. package/dist/currency.mjs +16 -0
  9. package/dist/currency.mjs.map +1 -0
  10. package/dist/handlers.d.cts +7 -0
  11. package/dist/handlers.d.cts.map +1 -1
  12. package/dist/handlers.d.mts +7 -0
  13. package/dist/handlers.d.mts.map +1 -1
  14. package/dist/iframe.cjs +8 -5
  15. package/dist/iframe.cjs.map +1 -1
  16. package/dist/iframe.d.cts +12 -4
  17. package/dist/iframe.d.cts.map +1 -1
  18. package/dist/iframe.d.mts +12 -4
  19. package/dist/iframe.d.mts.map +1 -1
  20. package/dist/iframe.mjs +8 -5
  21. package/dist/iframe.mjs.map +1 -1
  22. package/dist/iframe.test.browser.cjs +36 -1
  23. package/dist/iframe.test.browser.cjs.map +1 -1
  24. package/dist/iframe.test.browser.mjs +36 -1
  25. package/dist/iframe.test.browser.mjs.map +1 -1
  26. package/dist/index.cjs +1 -0
  27. package/dist/index.cjs.map +1 -1
  28. package/dist/index.d.cts +1 -0
  29. package/dist/index.d.cts.map +1 -1
  30. package/dist/index.d.mts +1 -0
  31. package/dist/index.d.mts.map +1 -1
  32. package/dist/index.mjs +1 -0
  33. package/dist/index.mjs.map +1 -1
  34. package/dist/manifest/validation.cjs +1 -1
  35. package/dist/manifest/validation.cjs.map +1 -1
  36. package/dist/manifest/validation.mjs +1 -1
  37. package/dist/manifest/validation.mjs.map +1 -1
  38. package/dist/types.cjs +1 -1
  39. package/dist/types.cjs.map +1 -1
  40. package/dist/types.d.cts.map +1 -1
  41. package/dist/types.d.mts.map +1 -1
  42. package/dist/types.mjs +2 -2
  43. package/dist/types.mjs.map +1 -1
  44. package/dist/ui.cjs +26 -8
  45. package/dist/ui.cjs.map +1 -1
  46. package/dist/ui.d.cts +8 -3
  47. package/dist/ui.d.cts.map +1 -1
  48. package/dist/ui.d.mts +8 -3
  49. package/dist/ui.d.mts.map +1 -1
  50. package/dist/ui.mjs +26 -8
  51. package/dist/ui.mjs.map +1 -1
  52. package/dist/url.cjs +76 -0
  53. package/dist/url.cjs.map +1 -0
  54. package/dist/url.d.cts +20 -0
  55. package/dist/url.d.cts.map +1 -0
  56. package/dist/url.d.mts +20 -0
  57. package/dist/url.d.mts.map +1 -0
  58. package/dist/url.mjs +72 -0
  59. package/dist/url.mjs.map +1 -0
  60. package/package.json +31 -15
package/CHANGELOG.md CHANGED
@@ -1,4 +1,5 @@
1
1
  # Changelog
2
+
2
3
  All notable changes to this project will be documented in this file.
3
4
 
4
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
@@ -6,18 +7,49 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6
7
 
7
8
  ## [Unreleased]
8
9
 
10
+ ## [8.3.0]
11
+
12
+ ### Added
13
+
14
+ - Add `currency` struct ([#2763](https://github.com/MetaMask/snaps/pull/2763))
15
+
16
+ ### Changed
17
+
18
+ - Convert `createWindow` parameters to options bag ([#2765](https://github.com/MetaMask/snaps/pull/2765))
19
+
20
+ ### Fixed
21
+
22
+ - Update `package.json` struct to allow `repository.directory` ([#2754](https://github.com/MetaMask/snaps/pull/2754))
23
+
24
+ ## [8.2.0]
25
+
26
+ ### Added
27
+
28
+ - Add support for `metamask:` schemed URLs ([#2719](https://github.com/MetaMask/snaps/pull/2719))
29
+ - Add support for JSX in `snap_notify` notifications ([#2706](https://github.com/MetaMask/snaps/pull/2706))
30
+
31
+ ### Fixed
32
+
33
+ - Validate list of emails in `validateLink` function ([#2750](https://github.com/MetaMask/snaps/pull/2750))
34
+
9
35
  ## [8.1.1]
36
+
10
37
  ### Fixed
38
+
11
39
  - Fix invalid types in type declaration in some cases ([#2714](https://github.com/MetaMask/snaps/pull/2714))
12
40
 
13
41
  ## [8.1.0]
42
+
14
43
  ### Added
44
+
15
45
  - Add Bitcoin Taproot derivation paths ([#2695](https://github.com/MetaMask/snaps/pull/2695))
16
46
 
17
47
  ### Changed
48
+
18
49
  - Improve `validateLink` error handling ([#2702](https://github.com/MetaMask/snaps/pull/2702))
19
50
 
20
51
  ### Fixed
52
+
21
53
  - Fix ESM version of the package ([#2682](https://github.com/MetaMask/snaps/pull/2682))
22
54
  - This fixes the ESM version of the package to be fully compliant with the ESM
23
55
  standard.
@@ -25,25 +57,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
25
57
  - Bump other MetaMask dependencies ([#2703](https://github.com/MetaMask/snaps/pull/2703))
26
58
 
27
59
  ## [8.0.1]
60
+
28
61
  ### Changed
62
+
29
63
  - Bump `@metamask/slip44` to 4.0.0 ([#2624](https://github.com/MetaMask/snaps/pull/2624))
30
64
 
31
65
  ## [8.0.0]
66
+
32
67
  ### Changed
68
+
33
69
  - **BREAKING:** Improve manifest validation output ([#2605](https://github.com/MetaMask/snaps/pull/2605), [#2572](https://github.com/MetaMask/snaps/pull/2572))
34
70
  - This is breaking as it removes exports such as `validateNpmSnap`.
35
71
  - Bump `fast-xml-parser` ([#2610](https://github.com/MetaMask/snaps/pull/2610))
36
72
 
37
73
  ## [7.8.1]
74
+
38
75
  ### Changed
76
+
39
77
  - Bump `@metamask/base-controller` from `^6.0.1` to `^6.0.2` ([#2593](https://github.com/metamask/snaps/pull/2593))
40
78
  - Bump `@metamask/permission-controller` from `^10.0.1` to `^11.0.0` ([#2593](https://github.com/metamask/snaps/pull/2593))
41
79
 
42
80
  ## [7.8.0]
81
+
43
82
  ### Added
83
+
44
84
  - Move `serialiseJsx` function from `snaps-jest` to `snaps-utils` ([#2409](https://github.com/metamask/snaps/pull/2409))
45
85
 
46
86
  ### Changed
87
+
47
88
  - Bump `@metamask/base-controller` from `^6.0.0` to `^6.0.1` ([#2445](https://github.com/MetaMask/snaps/pull/2445))
48
89
  - Bump `@metamask/key-tree` from `^9.1.1` to `^9.1.2` ([#2445](https://github.com/MetaMask/snaps/pull/2445))
49
90
  - Bump `@metamask/permission-controller` from `^10.0.0` to `^10.0.1` ([#2445](https://github.com/MetaMask/snaps/pull/2445))
@@ -52,44 +93,59 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
52
93
  - Bump `@metamask/utils` from `^8.3.0` to `^9.1.0` ([#2445](https://github.com/MetaMask/snaps/pull/2445))
53
94
 
54
95
  ### Fixed
96
+
55
97
  - Replace `superstruct` with ESM-compatible `@metamask/superstruct` `^3.1.0` ([#2445](https://github.com/MetaMask/snaps/pull/2445))
56
98
  - This fixes the issue of this package being unusable by any TypeScript project that uses `Node16` or `NodeNext` as its `moduleResolution` option.
57
99
  - Fix `allowedOrigins` bypass caused by unterminated regex ([#2576](https://github.com/metamask/snaps/pull/2576))
58
100
 
59
101
  ## [7.7.0]
102
+
60
103
  ### Added
104
+
61
105
  - Support conditional children in most JSX components ([#2506](https://github.com/MetaMask/snaps/pull/2506))
62
106
  - Support additional components inside forms ([#2497](https://github.com/MetaMask/snaps/pull/2497))
63
107
 
64
108
  ### Fixed
109
+
65
110
  - Improve validation of `endowment:rpc` ([#2512](https://github.com/MetaMask/snaps/pull/2512))
66
111
 
67
112
  ## [7.6.0]
113
+
68
114
  ### Added
115
+
69
116
  - Support nested children in JSX ([#2482](https://github.com/MetaMask/snaps/pull/2482))
70
117
 
71
118
  ### Changed
119
+
72
120
  - Update `onNameLookup` response to include `domainName` ([#2484](https://github.com/MetaMask/snaps/pull/2484))
73
121
  - Bump MetaMask dependencies ([#2460](https://github.com/MetaMask/snaps/pull/2460))
74
122
 
75
123
  ### Fixed
124
+
76
125
  - Fix a problem with converting legacy UIs that used `row()` ([#2486](https://github.com/MetaMask/snaps/pull/2486))
77
126
  - Revert requiring at least one child in JSX components ([#2470](https://github.com/MetaMask/snaps/pull/2470))
78
127
 
79
128
  ## [7.5.0]
129
+
80
130
  ### Added
131
+
81
132
  - Allow wildcards in `allowedOrigins` ([#2458](https://github.com/MetaMask/snaps/pull/2458))
82
133
  - Add `hidden` flag for preinstalled Snaps ([#2463](https://github.com/MetaMask/snaps/pull/2463))
83
134
 
84
135
  ### Fixed
136
+
85
137
  - Require at least 1 child in JSX components ([#2466](https://github.com/MetaMask/snaps/pull/2466))
86
138
 
87
139
  ## [7.4.1]
140
+
88
141
  ### Fixed
142
+
89
143
  - Fix invalid `@metamask/snaps-sdk` imports ([#2452](https://github.com/MetaMask/snaps/pull/2452))
90
144
 
91
145
  ## [7.4.0]
146
+
92
147
  ### Added
148
+
93
149
  - Add support for BIP-32-Ed25519 / CIP-3 key derivation ([#2408](https://github.com/MetaMask/snaps/pull/2408))
94
150
 
95
151
  ## Fixed
@@ -97,47 +153,66 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
97
153
  - Fix build producing invalid JSX types ([#2410](https://github.com/MetaMask/snaps/pull/2410))
98
154
 
99
155
  ## [7.3.0]
156
+
100
157
  ### Added
158
+
101
159
  - Add JSX support for custom UI ([#2258](https://github.com/MetaMask/snaps/pull/2258), [#2383](https://github.com/MetaMask/snaps/pull/2383))
102
160
  - This adds utility functions for working with JSX in Snaps.
103
161
 
104
162
  ### Changed
163
+
105
164
  - Bump `@metamask/base-controller` from `5.0.1` to `5.0.2` ([#2375](https://github.com/MetaMask/snaps/pull/2375))
106
165
 
107
166
  ## [7.2.0]
167
+
108
168
  ### Added
169
+
109
170
  - Add `getJsonSizeUnsafe` ([#2342](https://github.com/MetaMask/snaps/pull/2342))
110
171
 
111
172
  ## [7.1.0]
173
+
112
174
  ### Added
175
+
113
176
  - Add derivation path for Nimiq ([#2309](https://github.com/MetaMask/snaps/pull/2309))
114
177
 
115
178
  ### Fixed
179
+
116
180
  - Disable GitHub flavored Markdown when lexing ([#2317](https://github.com/MetaMask/snaps/pull/2317))
117
181
 
118
182
  ## [7.0.4]
183
+
119
184
  ### Changed
185
+
120
186
  - Bump MetaMask dependencies ([#2270](https://github.com/MetaMask/snaps/pull/2270))
121
187
 
122
188
  ### Fixed
189
+
123
190
  - Allow `maxRequestTime` on `endowment:rpc` ([#2291](https://github.com/MetaMask/snaps/pull/2291))
124
191
 
125
192
  ## [7.0.3]
193
+
126
194
  ### Changed
195
+
127
196
  - Update markdown parsing for better link validation ([#2261](https://github.com/MetaMask/snaps/pull/2261))
128
197
  - Bump `@metamask/snaps-registry` to `^3.0.1` ([#2255](https://github.com/MetaMask/snaps/pull/2255))
129
198
 
130
199
  ## [7.0.2]
200
+
131
201
  ### Fixed
202
+
132
203
  - Remove usage of `Buffer` from browser entrypoint ([#2238](https://github.com/MetaMask/snaps/pull/2238))
133
204
 
134
205
  ## [7.0.1]
206
+
135
207
  ### Fixed
208
+
136
209
  - Fix minor build configuration problems ([#2220](https://github.com/MetaMask/snaps/pull/2220))
137
210
  - Fix regex for HTML comment tokens ([#2222](https://github.com/MetaMask/snaps/pull/2222))
138
211
 
139
212
  ## [7.0.0]
213
+
140
214
  ### Changed
215
+
141
216
  - **BREAKING:** Update ESM build to be fully compliant with the ESM standard ([#2210](https://github.com/MetaMask/snaps/pull/2210))
142
217
  - **BREAKING:** Move Node.js exports to separate export ([#2210](https://github.com/MetaMask/snaps/pull/2210))
143
218
  - The default export is now browser-compatible.
@@ -145,81 +220,110 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
145
220
  - Bump `@metamask/rpc-errors` to `^6.2.1` ([#2209](https://github.com/MetaMask/snaps/pull/2209))
146
221
 
147
222
  ### Removed
223
+
148
224
  - **BREAKING:** Move `file` struct to CLI ([#2207](https://github.com/MetaMask/snaps/pull/2207))
149
225
  - The previously exported `file` struct can now be found in `@metamask/snaps-cli`.
150
226
 
151
227
  ### Fixed
228
+
152
229
  - Add sizing limits for custom UI ([#2199](https://github.com/MetaMask/snaps/pull/2199))
153
230
  - Properly validate links contained in rows ([#2205](https://github.com/MetaMask/snaps/pull/2205))
154
231
 
155
232
  ## [6.1.0]
233
+
156
234
  ### Added
235
+
157
236
  - Add a manifest warning when no icon is found and when icon is not square ([#2185](https://github.com/MetaMask/snaps/pull/2185))
158
237
 
159
238
  ## [6.0.0]
239
+
160
240
  ### Added
241
+
161
242
  - Add support for dynamic user interfaces ([#1465](https://github.com/MetaMask/snaps/pull/1465), [#2126](https://github.com/MetaMask/snaps/pull/2126))
162
243
  - Add support for snap defined execution timeouts ([#2098](https://github.com/MetaMask/snaps/pull/2098))
163
244
 
164
245
  ### Changed
246
+
165
247
  - **BREAKING:** Update name lookup type validation ([#2113](https://github.com/MetaMask/snaps/pull/2113))
166
248
  - The return value and the permission format has changed, see [SIP-12](https://metamask.github.io/SIPs/SIPS/sip-12) for more details.
167
249
  - Speed up eval-worker for improved CLI performance ([#2147](https://github.com/MetaMask/snaps/pull/2147))
168
250
  - Update MetaMask dependencies ([#2132](https://github.com/MetaMask/snaps/pull/2132), [#2142](https://github.com/MetaMask/snaps/pull/2142))
169
251
 
170
252
  ### Fixed
253
+
171
254
  - Fix initial permissions types ([#2111](https://github.com/MetaMask/snaps/pull/2111))
172
255
 
173
256
  ## [5.2.0]
257
+
174
258
  ### Added
259
+
175
260
  - Add support for initial connections ([#2048](https://github.com/MetaMask/snaps/pull/2048))
176
261
  - Add support for preinstalled snaps ([#2008](https://github.com/MetaMask/snaps/pull/2008))
177
262
  - Add support for signature insights ([#2074](https://github.com/MetaMask/snaps/pull/2074))
178
263
 
179
264
  ### Changed
265
+
180
266
  - Bump several MetaMask dependencies ([#2086](https://github.com/MetaMask/snaps/pull/2086), [#2100](https://github.com/MetaMask/snaps/pull/2100))
181
267
 
182
268
  ## [5.1.2]
269
+
183
270
  ### Fixed
271
+
184
272
  - Fix missing `global` during snap evaluation ([#2072](https://github.com/MetaMask/snaps/pull/2072))
185
273
 
186
274
  ## [5.1.1]
275
+
187
276
  ### Changed
277
+
188
278
  - Fix missing export ([#2045](https://github.com/MetaMask/snaps/pull/2045))
189
279
  - Bump `@metamask/permission-controller` from `6.0.0` to `7.0.0` ([#2064](https://github.com/MetaMask/snaps/pull/2064))
190
280
 
191
281
  ### Removed
282
+
192
283
  - Remove support for object-like syntax for cronjobs ([#2057](https://github.com/MetaMask/snaps/pull/2057))
193
284
  - Since this never worked in the first place we aren't marking it as breaking.
194
285
 
195
286
  ## [5.1.0]
287
+
196
288
  ### Added
289
+
197
290
  - Add `getSnapDerivationPathName` and `getSlip44ProtocolName` to be shared across clients ([#2033](https://github.com/MetaMask/snaps/pull/2033))
198
291
 
199
292
  ### Changed
293
+
200
294
  - Bump `snaps-registry` ([#2020](https://hub.com/MetaMask/snaps/pull/2020))
201
295
 
202
296
  ## [5.0.1]
297
+
203
298
  ### Changed
299
+
204
300
  - Improve base64 encoding/decoding speeds ([#1985](https://github.com/MetaMask/snaps/pull/1985))
205
301
  - Bump several MetaMask dependencies ([#1989](https://github.com/MetaMask/snaps/pull/1989), [#1993](https://github.com/MetaMask/snaps/pull/1993))
206
302
 
207
303
  ## [5.0.0]
304
+
208
305
  ### Changed
306
+
209
307
  - Bump several MetaMask dependencies ([#1964](https://github.com/MetaMask/snaps/pull/1964))
210
308
 
211
309
  ### Removed
310
+
212
311
  - **BREAKING:** Move `enumValue`, `literal` and `union` to `snaps-sdk` ([#1968](https://github.com/MetaMask/snaps/pull/1968))
213
312
 
214
313
  ### Fixed
314
+
215
315
  - Fix issues generating checksum with binary auxiliary files ([#1975](https://github.com/MetaMask/snaps/pull/1975))
216
316
 
217
317
  ## [4.0.1]
318
+
218
319
  ### Fixed
320
+
219
321
  - Change `validateTextLinks` to only get URL in markdown links ([#1914](https://github.com/MetaMask/snaps/pull/1914))
220
322
 
221
323
  ## [4.0.0]
324
+
222
325
  ### Changed
326
+
223
327
  - Use `SubtleCrypto` for checksum calculation if available ([#1953](https://github.com/MetaMask/snaps/pull/1953))
224
328
  - This reduces the time of the checksum calculation by up to 95% in some
225
329
  environments.
@@ -230,6 +334,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
230
334
  - `@metamask/snaps-ui` packages, and is much more lightweight.
231
335
 
232
336
  ### Removed
337
+
233
338
  - **BREAKING**: Remove `ValidatedSnapId` and `SnapId` types ([#1930](https://github.com/MetaMask/snaps/pull/1930))
234
339
  - `ValidatedSnapId` was moved to the `@metamask/snaps-sdk` package as
235
340
  `SnapId`.
@@ -243,79 +348,110 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
243
348
  type from the `@metamask/snaps-sdk` package.
244
349
 
245
350
  ### Fixed
351
+
246
352
  - Include localization files in checksum calculations ([#1956](https://github.com/MetaMask/snaps/pull/1956))
247
353
 
248
354
  ## [3.3.0]
355
+
249
356
  ### Added
357
+
250
358
  - Add manifest localization functionality ([#1889](https://github.com/MetaMask/snaps/pull/1889))
251
359
  - Add `OnHomePage` export ([#1896](https://github.com/MetaMask/snaps/pull/1896))
252
360
 
253
361
  ## [3.2.0]
362
+
254
363
  ### Added
364
+
255
365
  - Add support for links in custom UI and notifications ([#1814](https://github.com/MetaMask/snaps/pull/1814))
256
366
 
257
367
  ## [3.1.0]
368
+
258
369
  ### Added
370
+
259
371
  - Add static file API ([#1836](https://github.com/MetaMask/snaps/pull/1836), [#1858](https://github.com/MetaMask/snaps/pull/1858))
260
372
 
261
373
  ### Changed
374
+
262
375
  - Update multiple MetaMask dependencies ([#1841](https://github.com/MetaMask/snaps/pull/1841))
263
376
  - Bump Babel packages from `^7.20.12` to `^7.23.2` ([#1862](https://github.com/MetaMask/snaps/pull/1862))
264
377
 
265
378
  ## [3.0.0]
379
+
266
380
  ### Added
381
+
267
382
  - Add keyring export and endowment ([#1787](https://github.com/MetaMask/snaps/pull/1787))
268
383
  - Add optional `allowedOrigins` field to `endowment:rpc` ([#1822](https://github.com/MetaMask/snaps/pull/1822))
269
384
  - This can be used to only accept certain origins in your Snap.
270
385
 
271
386
  ### Changed
387
+
272
388
  - **BREAKING:** Bump minimum Node.js version to `^18.16.0` ([#1741](https://github.com/MetaMask/snaps/pull/1741))
273
389
 
274
390
  ## [2.0.1]
391
+
275
392
  ### Changed
393
+
276
394
  - Remove deprecated `endowment:long-running` ([#1751](https://github.com/MetaMask/snaps/pull/1751))
277
395
 
278
396
  ## [2.0.0]
397
+
279
398
  ### Changed
399
+
280
400
  - Initial stable release from main branch ([#1757](https://github.com/MetaMask/snaps/pull/1757))
281
401
 
282
402
  ## [0.38.4-flask.1]
403
+
283
404
  ### Added
405
+
284
406
  - Add `onNameLookup` export ([#1394](https://github.com/MetaMask/snaps/pull/1394), [#1759](https://github.com/MetaMask/snaps/pull/1759))
285
407
 
286
408
  ### Changed
409
+
287
410
  - Bump `metamask/utils` and `metamask/snaps-registry` ([#1738](https://github.com/MetaMask/snaps/pull/1738))
288
411
 
289
412
  ## [0.38.3-flask.1]
413
+
290
414
  ### Changed
415
+
291
416
  - Bump `@metamask/post-message-stream` from 6.1.2 to 7.0.0 ([#1707](https://github.com/MetaMask/snaps/pull/1707), [#1724](https://github.com/MetaMask/snaps/pull/1724))
292
417
  - Bump `@metamask/utils` and `@metamask/snaps-registry` ([#1694](https://github.com/MetaMask/snaps/pull/1694))
293
418
 
294
419
  ## [0.38.2-flask.1]
420
+
295
421
  ### Fixed
422
+
296
423
  - Remove unused dependencies ([#1680](https://github.com/MetaMask/snaps/pull/1680))
297
424
 
298
425
  ## [0.38.1-flask.1]
426
+
299
427
  ### Changed
428
+
300
429
  - Update transaction insights response and add severity level enum ([#1653](https://github.com/MetaMask/snaps/pull/1653))
301
430
  - Snaps are now able to specify a `severity` for alongside their insights.
302
431
  - See [SIP-11](https://metamask.github.io/SIPs/SIPS/sip-11) for more information.
303
432
 
304
433
  ## [0.38.0-flask.1]
434
+
305
435
  ### Added
436
+
306
437
  - Add `onInstall` and `onUpdate` lifecycle hooks ([#1643](https://github.com/MetaMask/snaps/pull/1643))
307
438
 
308
439
  ### Changed
440
+
309
441
  - Move source code and snap state back to controller state ([#1634](https://github.com/MetaMask/snaps/pull/1634))
310
442
  - Bump `semver` to `^7.5.4` ([#1631](https://github.com/MetaMask/snaps/pull/1631))
311
443
 
312
444
  ## [0.37.2-flask.1]
445
+
313
446
  ### Changed
447
+
314
448
  - Release package independently ([#1600](https://github.com/MetaMask/snaps/pull/1600))
315
449
  - The version of the package no longer needs to match the version of all other
316
450
  MetaMask Snaps packages.
317
451
 
318
- [Unreleased]: https://github.com/MetaMask/snaps/compare/@metamask/snaps-utils@8.1.1...HEAD
452
+ [Unreleased]: https://github.com/MetaMask/snaps/compare/@metamask/snaps-utils@8.3.0...HEAD
453
+ [8.3.0]: https://github.com/MetaMask/snaps/compare/@metamask/snaps-utils@8.2.0...@metamask/snaps-utils@8.3.0
454
+ [8.2.0]: https://github.com/MetaMask/snaps/compare/@metamask/snaps-utils@8.1.1...@metamask/snaps-utils@8.2.0
319
455
  [8.1.1]: https://github.com/MetaMask/snaps/compare/@metamask/snaps-utils@8.1.0...@metamask/snaps-utils@8.1.1
320
456
  [8.1.0]: https://github.com/MetaMask/snaps/compare/@metamask/snaps-utils@8.0.1...@metamask/snaps-utils@8.1.0
321
457
  [8.0.1]: https://github.com/MetaMask/snaps/compare/@metamask/snaps-utils@8.0.0...@metamask/snaps-utils@8.0.1
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.currency = void 0;
4
+ const superstruct_1 = require("@metamask/superstruct");
5
+ /**
6
+ * A wrapper of Superstruct's `literal` struct that accepts a value in either
7
+ * completely lowercase or completely uppercase (i.e., "usd" or "USD").
8
+ *
9
+ * @param string - The currency symbol.
10
+ * @returns The struct that accepts the currency symbol in either case. It will
11
+ * return the currency symbol in lowercase.
12
+ */
13
+ function currency(string) {
14
+ const lowerCase = string.toLowerCase();
15
+ return (0, superstruct_1.coerce)((0, superstruct_1.literal)(lowerCase), (0, superstruct_1.literal)(string.toUpperCase()), (value) => {
16
+ return (0, superstruct_1.create)(value.toLowerCase(), (0, superstruct_1.literal)(lowerCase));
17
+ });
18
+ }
19
+ exports.currency = currency;
20
+ //# sourceMappingURL=currency.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currency.cjs","sourceRoot":"","sources":["../src/currency.ts"],"names":[],"mappings":";;;AACA,uDAAgE;AAEhE;;;;;;;GAOG;AACH,SAAgB,QAAQ,CACtB,MAAa;IAEb,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAEvC,OAAO,IAAA,oBAAM,EAAC,IAAA,qBAAO,EAAC,SAAS,CAAC,EAAE,IAAA,qBAAO,EAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE;QACzE,OAAO,IAAA,oBAAM,EAAC,KAAK,CAAC,WAAW,EAAE,EAAE,IAAA,qBAAO,EAAC,SAAS,CAAC,CAAC,CAAC;IACzD,CAAC,CAAgD,CAAC;AACpD,CAAC;AARD,4BAQC","sourcesContent":["import type { Struct } from '@metamask/superstruct';\nimport { coerce, create, literal } from '@metamask/superstruct';\n\n/**\n * A wrapper of Superstruct's `literal` struct that accepts a value in either\n * completely lowercase or completely uppercase (i.e., \"usd\" or \"USD\").\n *\n * @param string - The currency symbol.\n * @returns The struct that accepts the currency symbol in either case. It will\n * return the currency symbol in lowercase.\n */\nexport function currency<Value extends string>(\n string: Value,\n): Struct<Lowercase<Value> | Uppercase<Value>> {\n const lowerCase = string.toLowerCase();\n\n return coerce(literal(lowerCase), literal(string.toUpperCase()), (value) => {\n return create(value.toLowerCase(), literal(lowerCase));\n }) as Struct<Lowercase<Value> | Uppercase<Value>>;\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import type { Struct } from "@metamask/superstruct";
2
+ /**
3
+ * A wrapper of Superstruct's `literal` struct that accepts a value in either
4
+ * completely lowercase or completely uppercase (i.e., "usd" or "USD").
5
+ *
6
+ * @param string - The currency symbol.
7
+ * @returns The struct that accepts the currency symbol in either case. It will
8
+ * return the currency symbol in lowercase.
9
+ */
10
+ export declare function currency<Value extends string>(string: Value): Struct<Lowercase<Value> | Uppercase<Value>>;
11
+ //# sourceMappingURL=currency.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currency.d.cts","sourceRoot":"","sources":["../src/currency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,8BAA8B;AAGpD;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,KAAK,SAAS,MAAM,EAC3C,MAAM,EAAE,KAAK,GACZ,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAM7C"}
@@ -0,0 +1,11 @@
1
+ import type { Struct } from "@metamask/superstruct";
2
+ /**
3
+ * A wrapper of Superstruct's `literal` struct that accepts a value in either
4
+ * completely lowercase or completely uppercase (i.e., "usd" or "USD").
5
+ *
6
+ * @param string - The currency symbol.
7
+ * @returns The struct that accepts the currency symbol in either case. It will
8
+ * return the currency symbol in lowercase.
9
+ */
10
+ export declare function currency<Value extends string>(string: Value): Struct<Lowercase<Value> | Uppercase<Value>>;
11
+ //# sourceMappingURL=currency.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currency.d.mts","sourceRoot":"","sources":["../src/currency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,8BAA8B;AAGpD;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,KAAK,SAAS,MAAM,EAC3C,MAAM,EAAE,KAAK,GACZ,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAM7C"}
@@ -0,0 +1,16 @@
1
+ import { coerce, create, literal } from "@metamask/superstruct";
2
+ /**
3
+ * A wrapper of Superstruct's `literal` struct that accepts a value in either
4
+ * completely lowercase or completely uppercase (i.e., "usd" or "USD").
5
+ *
6
+ * @param string - The currency symbol.
7
+ * @returns The struct that accepts the currency symbol in either case. It will
8
+ * return the currency symbol in lowercase.
9
+ */
10
+ export function currency(string) {
11
+ const lowerCase = string.toLowerCase();
12
+ return coerce(literal(lowerCase), literal(string.toUpperCase()), (value) => {
13
+ return create(value.toLowerCase(), literal(lowerCase));
14
+ });
15
+ }
16
+ //# sourceMappingURL=currency.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currency.mjs","sourceRoot":"","sources":["../src/currency.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,8BAA8B;AAEhE;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CACtB,MAAa;IAEb,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAEvC,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE;QACzE,OAAO,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IACzD,CAAC,CAAgD,CAAC;AACpD,CAAC","sourcesContent":["import type { Struct } from '@metamask/superstruct';\nimport { coerce, create, literal } from '@metamask/superstruct';\n\n/**\n * A wrapper of Superstruct's `literal` struct that accepts a value in either\n * completely lowercase or completely uppercase (i.e., \"usd\" or \"USD\").\n *\n * @param string - The currency symbol.\n * @returns The struct that accepts the currency symbol in either case. It will\n * return the currency symbol in lowercase.\n */\nexport function currency<Value extends string>(\n string: Value,\n): Struct<Lowercase<Value> | Uppercase<Value>> {\n const lowerCase = string.toLowerCase();\n\n return coerce(literal(lowerCase), literal(string.toUpperCase()), (value) => {\n return create(value.toLowerCase(), literal(lowerCase));\n }) as Struct<Lowercase<Value> | Uppercase<Value>>;\n}\n"]}
@@ -152,6 +152,7 @@ export declare const OnTransactionResponseWithContentStruct: import("@metamask/s
152
152
  }, "Radio">>;
153
153
  }, "RadioGroup"> | import("@metamask/snaps-sdk/jsx").SnapElement<{
154
154
  children: import("@metamask/snaps-sdk/jsx").StringElement;
155
+ size?: "md" | "lg" | undefined;
155
156
  }, "Heading">;
156
157
  severity?: SeverityLevel | undefined;
157
158
  }, {
@@ -235,6 +236,7 @@ export declare const OnTransactionResponseWithContentStruct: import("@metamask/s
235
236
  }, "Radio">>;
236
237
  }, "RadioGroup"> | import("@metamask/snaps-sdk/jsx").SnapElement<{
237
238
  children: import("@metamask/snaps-sdk/jsx").StringElement;
239
+ size?: "md" | "lg" | undefined;
238
240
  }, "Heading">, null>;
239
241
  severity: import("@metamask/superstruct").Struct<SeverityLevel | undefined, SeverityLevel>;
240
242
  }>;
@@ -322,6 +324,7 @@ export declare const OnTransactionResponseStruct: import("@metamask/superstruct"
322
324
  }, "Radio">>;
323
325
  }, "RadioGroup"> | import("@metamask/snaps-sdk/jsx").SnapElement<{
324
326
  children: import("@metamask/snaps-sdk/jsx").StringElement;
327
+ size?: "md" | "lg" | undefined;
325
328
  }, "Heading">;
326
329
  severity?: SeverityLevel | undefined;
327
330
  } | null, null>;
@@ -409,6 +412,7 @@ export declare const OnSignatureResponseStruct: import("@metamask/superstruct").
409
412
  }, "Radio">>;
410
413
  }, "RadioGroup"> | import("@metamask/snaps-sdk/jsx").SnapElement<{
411
414
  children: import("@metamask/snaps-sdk/jsx").StringElement;
415
+ size?: "md" | "lg" | undefined;
412
416
  }, "Heading">;
413
417
  severity?: SeverityLevel | undefined;
414
418
  } | null, null>;
@@ -493,6 +497,7 @@ export declare const OnHomePageResponseWithContentStruct: import("@metamask/supe
493
497
  }, "Radio">>;
494
498
  }, "RadioGroup"> | import("@metamask/snaps-sdk/jsx").SnapElement<{
495
499
  children: import("@metamask/snaps-sdk/jsx").StringElement;
500
+ size?: "md" | "lg" | undefined;
496
501
  }, "Heading">;
497
502
  }, {
498
503
  content: import("@metamask/superstruct").Struct<import("@metamask/snaps-sdk").Panel | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").ButtonProps, "Button"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").CheckboxProps, "Checkbox"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").FormProps, "Form"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").FileInputProps, "FileInput"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").InputProps, "Input"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").DropdownProps, "Dropdown"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").SelectorProps, "Selector"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").BoldProps, "Bold"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").ItalicProps, "Italic"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").AddressProps, "Address"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").BoxProps, "Box"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").CardProps, "Card"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").ContainerProps, "Container"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").CopyableProps, "Copyable"> | import("@metamask/snaps-sdk/jsx").SnapElement<Record<string, never>, "Divider"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").IconProps, "Icon"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").LinkProps, "Link"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").RowProps, "Row"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").SectionProps, "Section"> | import("@metamask/snaps-sdk/jsx").SnapElement<Record<string, never>, "Spinner"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").TextProps, "Text"> | import("@metamask/snaps-sdk/jsx").SnapElement<import("@metamask/snaps-sdk/jsx").TooltipProps, "Tooltip"> | {
@@ -575,6 +580,7 @@ export declare const OnHomePageResponseWithContentStruct: import("@metamask/supe
575
580
  }, "Radio">>;
576
581
  }, "RadioGroup"> | import("@metamask/snaps-sdk/jsx").SnapElement<{
577
582
  children: import("@metamask/snaps-sdk/jsx").StringElement;
583
+ size?: "md" | "lg" | undefined;
578
584
  }, "Heading">, null>;
579
585
  }>;
580
586
  export declare const OnHomePageResponseWithIdStruct: import("@metamask/superstruct").Struct<{
@@ -663,6 +669,7 @@ export declare const OnHomePageResponseStruct: import("@metamask/superstruct").S
663
669
  }, "Radio">>;
664
670
  }, "RadioGroup"> | import("@metamask/snaps-sdk/jsx").SnapElement<{
665
671
  children: import("@metamask/snaps-sdk/jsx").StringElement;
672
+ size?: "md" | "lg" | undefined;
666
673
  }, "Heading">;
667
674
  } | {
668
675
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.d.cts","sourceRoot":"","sources":["../src/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EAEjB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EAEpB,kBAAkB,EACnB,4BAA4B;AAC7B,OAAO,EAA4B,aAAa,EAAE,4BAA4B;AAa9E,OAAO,KAAK,EAAE,WAAW,EAAE,4BAAwB;AACnD,OAAO,EAAE,WAAW,EAAE,4BAAwB;AAE9C,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,YAAY;;;;yCAIG,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;CAIzB,CAAC;AAEX,eAAO,MAAM,mCAAmC;;;;EAE9C,CAAC;AAEH,eAAO,MAAM,iCAAiC;;;;;;EAK7C,CAAC;AAEF,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKlD,CAAC;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAKvC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAA8B,CAAC;AAErE,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9C,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;EAEzC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAGnC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;EAGlC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;EAIjC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;EAE1C,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;EAEzC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;eAEtC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,IAAI,SAAS,WAAW,IAClD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,KAAK,UAAU,IAAI,MAAM,OAAO,GAC1E,OAAO,GACP,KAAK,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;KAC/B,GAAG,IAAI,MAAM,OAAO,YAAY,CAAC,CAAC,EAAE,eAAe,CAClD,CAAC,OAAO,YAAY,CAAC,CAAC,GAAG,CAAC,CAC3B;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,mBAAmB,CAAC"}
1
+ {"version":3,"file":"handlers.d.cts","sourceRoot":"","sources":["../src/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EAEjB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EAEpB,kBAAkB,EACnB,4BAA4B;AAC7B,OAAO,EAA4B,aAAa,EAAE,4BAA4B;AAa9E,OAAO,KAAK,EAAE,WAAW,EAAE,4BAAwB;AACnD,OAAO,EAAE,WAAW,EAAE,4BAAwB;AAE9C,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,YAAY;;;;yCAIG,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;;;;yCAOP,OAAO;;CAIzB,CAAC;AAEX,eAAO,MAAM,mCAAmC;;;;EAE9C,CAAC;AAEH,eAAO,MAAM,iCAAiC;;;;;;EAK7C,CAAC;AAEF,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKlD,CAAC;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAKvC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAA8B,CAAC;AAErE,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE9C,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;EAEzC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAGnC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;EAGlC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;EAIjC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;EAE1C,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;EAEzC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;eAEtC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,IAAI,SAAS,WAAW,IAClD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,KAAK,UAAU,IAAI,MAAM,OAAO,GAC1E,OAAO,GACP,KAAK,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;KAC/B,GAAG,IAAI,MAAM,OAAO,YAAY,CAAC,CAAC,EAAE,eAAe,CAClD,CAAC,OAAO,YAAY,CAAC,CAAC,GAAG,CAAC,CAC3B;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,mBAAmB,CAAC"}