mishig HF staff commited on
Commit
e8d6409
1 Parent(s): 64d1262

Initial commit

Browse files
package-lock.json CHANGED
@@ -12,14 +12,17 @@
12
  "@sveltejs/kit": "next",
13
  "@typescript-eslint/eslint-plugin": "^5.27.0",
14
  "@typescript-eslint/parser": "^5.27.0",
 
15
  "eslint": "^8.16.0",
16
  "eslint-config-prettier": "^8.3.0",
17
  "eslint-plugin-svelte3": "^4.0.0",
 
18
  "prettier": "^2.6.2",
19
  "prettier-plugin-svelte": "^2.7.0",
20
  "svelte": "^3.44.0",
21
  "svelte-check": "^2.7.1",
22
- "svelte-preprocess": "^4.10.6",
 
23
  "tslib": "^2.3.1",
24
  "typescript": "^4.7.4",
25
  "vite": "^3.0.4"
@@ -584,6 +587,38 @@
584
  "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
585
  }
586
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
587
  "node_modules/agent-base": {
588
  "version": "6.0.2",
589
  "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
@@ -668,6 +703,12 @@
668
  "node": ">=10"
669
  }
670
  },
 
 
 
 
 
 
671
  "node_modules/argparse": {
672
  "version": "2.0.1",
673
  "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
@@ -689,6 +730,39 @@
689
  "integrity": "sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==",
690
  "dev": true
691
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
692
  "node_modules/balanced-match": {
693
  "version": "1.0.2",
694
  "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
@@ -735,6 +809,34 @@
735
  "node": ">=8"
736
  }
737
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
738
  "node_modules/buffer-crc32": {
739
  "version": "0.2.13",
740
  "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
@@ -753,6 +855,31 @@
753
  "node": ">=6"
754
  }
755
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
756
  "node_modules/chalk": {
757
  "version": "4.1.2",
758
  "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
@@ -879,6 +1006,18 @@
879
  "node": ">= 8"
880
  }
881
  },
 
 
 
 
 
 
 
 
 
 
 
 
882
  "node_modules/data-uri-to-buffer": {
883
  "version": "4.0.0",
884
  "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz",
@@ -920,6 +1059,12 @@
920
  "node": ">=0.10.0"
921
  }
922
  },
 
 
 
 
 
 
923
  "node_modules/delegates": {
924
  "version": "1.0.0",
925
  "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
@@ -944,12 +1089,35 @@
944
  "node": ">=8"
945
  }
946
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
947
  "node_modules/devalue": {
948
  "version": "2.0.1",
949
  "resolved": "https://registry.npmjs.org/devalue/-/devalue-2.0.1.tgz",
950
  "integrity": "sha512-I2TiqT5iWBEyB8GRfTDP0hiLZ0YeDJZ+upDxjBfOC2lebO5LezQMv7QvIUTzdb64jQyAKLf1AHADtGN+jw6v8Q==",
951
  "dev": true
952
  },
 
 
 
 
 
 
953
  "node_modules/dir-glob": {
954
  "version": "3.0.1",
955
  "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
@@ -962,6 +1130,12 @@
962
  "node": ">=8"
963
  }
964
  },
 
 
 
 
 
 
965
  "node_modules/doctrine": {
966
  "version": "3.0.0",
967
  "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
@@ -974,6 +1148,12 @@
974
  "node": ">=6.0.0"
975
  }
976
  },
 
 
 
 
 
 
977
  "node_modules/emoji-regex": {
978
  "version": "8.0.0",
979
  "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
@@ -1342,6 +1522,15 @@
1342
  "node": ">=12"
1343
  }
1344
  },
 
 
 
 
 
 
 
 
 
1345
  "node_modules/escape-string-regexp": {
1346
  "version": "4.0.0",
1347
  "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
@@ -1741,6 +1930,19 @@
1741
  "node": ">=12.20.0"
1742
  }
1743
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
1744
  "node_modules/fs-minipass": {
1745
  "version": "2.1.0",
1746
  "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
@@ -2110,6 +2312,15 @@
2110
  "node": ">= 0.8.0"
2111
  }
2112
  },
 
 
 
 
 
 
 
 
 
2113
  "node_modules/locate-path": {
2114
  "version": "6.0.0",
2115
  "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
@@ -2367,6 +2578,12 @@
2367
  "node-gyp-build-test": "build-test.js"
2368
  }
2369
  },
 
 
 
 
 
 
2370
  "node_modules/nopt": {
2371
  "version": "5.0.0",
2372
  "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
@@ -2391,6 +2608,15 @@
2391
  "node": ">=0.10.0"
2392
  }
2393
  },
 
 
 
 
 
 
 
 
 
2394
  "node_modules/npmlog": {
2395
  "version": "5.0.1",
2396
  "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz",
@@ -2412,6 +2638,15 @@
2412
  "node": ">=0.10.0"
2413
  }
2414
  },
 
 
 
 
 
 
 
 
 
2415
  "node_modules/once": {
2416
  "version": "1.4.0",
2417
  "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
@@ -2540,6 +2775,15 @@
2540
  "url": "https://github.com/sponsors/jonschlinkert"
2541
  }
2542
  },
 
 
 
 
 
 
 
 
 
2543
  "node_modules/postcss": {
2544
  "version": "8.4.16",
2545
  "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz",
@@ -2564,6 +2808,109 @@
2564
  "node": "^10 || ^12 || >=14"
2565
  }
2566
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2567
  "node_modules/prelude-ls": {
2568
  "version": "1.2.1",
2569
  "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
@@ -2627,6 +2974,27 @@
2627
  }
2628
  ]
2629
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2630
  "node_modules/readable-stream": {
2631
  "version": "3.6.0",
2632
  "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
@@ -3142,6 +3510,46 @@
3142
  "sourcemap-codec": "^1.4.8"
3143
  }
3144
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3145
  "node_modules/tar": {
3146
  "version": "6.1.11",
3147
  "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
@@ -3287,6 +3695,32 @@
3287
  "node": ">=12.18"
3288
  }
3289
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3290
  "node_modules/uri-js": {
3291
  "version": "4.4.1",
3292
  "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
@@ -3426,12 +3860,30 @@
3426
  "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
3427
  "dev": true
3428
  },
 
 
 
 
 
 
 
 
 
3429
  "node_modules/yallist": {
3430
  "version": "4.0.0",
3431
  "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
3432
  "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
3433
  "dev": true
3434
  },
 
 
 
 
 
 
 
 
 
3435
  "node_modules/yocto-queue": {
3436
  "version": "0.1.0",
3437
  "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
@@ -3835,6 +4287,31 @@
3835
  "dev": true,
3836
  "requires": {}
3837
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3838
  "agent-base": {
3839
  "version": "6.0.2",
3840
  "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
@@ -3897,6 +4374,12 @@
3897
  "readable-stream": "^3.6.0"
3898
  }
3899
  },
 
 
 
 
 
 
3900
  "argparse": {
3901
  "version": "2.0.1",
3902
  "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
@@ -3915,6 +4398,20 @@
3915
  "integrity": "sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==",
3916
  "dev": true
3917
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3918
  "balanced-match": {
3919
  "version": "1.0.2",
3920
  "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
@@ -3955,6 +4452,18 @@
3955
  "fill-range": "^7.0.1"
3956
  }
3957
  },
 
 
 
 
 
 
 
 
 
 
 
 
3958
  "buffer-crc32": {
3959
  "version": "0.2.13",
3960
  "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
@@ -3967,6 +4476,18 @@
3967
  "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
3968
  "dev": true
3969
  },
 
 
 
 
 
 
 
 
 
 
 
 
3970
  "chalk": {
3971
  "version": "4.1.2",
3972
  "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
@@ -4060,6 +4581,12 @@
4060
  "which": "^2.0.1"
4061
  }
4062
  },
 
 
 
 
 
 
4063
  "data-uri-to-buffer": {
4064
  "version": "4.0.0",
4065
  "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz",
@@ -4087,6 +4614,12 @@
4087
  "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
4088
  "dev": true
4089
  },
 
 
 
 
 
 
4090
  "delegates": {
4091
  "version": "1.0.0",
4092
  "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
@@ -4105,12 +4638,29 @@
4105
  "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==",
4106
  "dev": true
4107
  },
 
 
 
 
 
 
 
 
 
 
 
4108
  "devalue": {
4109
  "version": "2.0.1",
4110
  "resolved": "https://registry.npmjs.org/devalue/-/devalue-2.0.1.tgz",
4111
  "integrity": "sha512-I2TiqT5iWBEyB8GRfTDP0hiLZ0YeDJZ+upDxjBfOC2lebO5LezQMv7QvIUTzdb64jQyAKLf1AHADtGN+jw6v8Q==",
4112
  "dev": true
4113
  },
 
 
 
 
 
 
4114
  "dir-glob": {
4115
  "version": "3.0.1",
4116
  "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
@@ -4120,6 +4670,12 @@
4120
  "path-type": "^4.0.0"
4121
  }
4122
  },
 
 
 
 
 
 
4123
  "doctrine": {
4124
  "version": "3.0.0",
4125
  "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
@@ -4129,6 +4685,12 @@
4129
  "esutils": "^2.0.2"
4130
  }
4131
  },
 
 
 
 
 
 
4132
  "emoji-regex": {
4133
  "version": "8.0.0",
4134
  "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
@@ -4310,6 +4872,12 @@
4310
  "dev": true,
4311
  "optional": true
4312
  },
 
 
 
 
 
 
4313
  "escape-string-regexp": {
4314
  "version": "4.0.0",
4315
  "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
@@ -4611,6 +5179,12 @@
4611
  "fetch-blob": "^3.1.2"
4612
  }
4613
  },
 
 
 
 
 
 
4614
  "fs-minipass": {
4615
  "version": "2.1.0",
4616
  "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
@@ -4897,6 +5471,12 @@
4897
  "type-check": "~0.4.0"
4898
  }
4899
  },
 
 
 
 
 
 
4900
  "locate-path": {
4901
  "version": "6.0.0",
4902
  "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
@@ -5071,6 +5651,12 @@
5071
  "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==",
5072
  "dev": true
5073
  },
 
 
 
 
 
 
5074
  "nopt": {
5075
  "version": "5.0.0",
5076
  "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
@@ -5086,6 +5672,12 @@
5086
  "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
5087
  "dev": true
5088
  },
 
 
 
 
 
 
5089
  "npmlog": {
5090
  "version": "5.0.1",
5091
  "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz",
@@ -5104,6 +5696,12 @@
5104
  "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
5105
  "dev": true
5106
  },
 
 
 
 
 
 
5107
  "once": {
5108
  "version": "1.4.0",
5109
  "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
@@ -5196,6 +5794,12 @@
5196
  "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
5197
  "dev": true
5198
  },
 
 
 
 
 
 
5199
  "postcss": {
5200
  "version": "8.4.16",
5201
  "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz",
@@ -5207,6 +5811,61 @@
5207
  "source-map-js": "^1.0.2"
5208
  }
5209
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5210
  "prelude-ls": {
5211
  "version": "1.2.1",
5212
  "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
@@ -5238,6 +5897,21 @@
5238
  "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
5239
  "dev": true
5240
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5241
  "readable-stream": {
5242
  "version": "3.6.0",
5243
  "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
@@ -5571,6 +6245,36 @@
5571
  }
5572
  }
5573
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5574
  "tar": {
5575
  "version": "6.1.11",
5576
  "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
@@ -5680,6 +6384,16 @@
5680
  "integrity": "sha512-c8HsD3IbwmjjbLvoZuRI26TZic+TSEe8FPMLLOkN1AfYRhdjnKBU6yL+IwcSCbdZiX4e5t0lfMDLDCqj4Sq70g==",
5681
  "dev": true
5682
  },
 
 
 
 
 
 
 
 
 
 
5683
  "uri-js": {
5684
  "version": "4.4.1",
5685
  "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
@@ -5776,12 +6490,24 @@
5776
  "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
5777
  "dev": true
5778
  },
 
 
 
 
 
 
5779
  "yallist": {
5780
  "version": "4.0.0",
5781
  "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
5782
  "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
5783
  "dev": true
5784
  },
 
 
 
 
 
 
5785
  "yocto-queue": {
5786
  "version": "0.1.0",
5787
  "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
 
12
  "@sveltejs/kit": "next",
13
  "@typescript-eslint/eslint-plugin": "^5.27.0",
14
  "@typescript-eslint/parser": "^5.27.0",
15
+ "autoprefixer": "^10.4.8",
16
  "eslint": "^8.16.0",
17
  "eslint-config-prettier": "^8.3.0",
18
  "eslint-plugin-svelte3": "^4.0.0",
19
+ "postcss": "^8.4.16",
20
  "prettier": "^2.6.2",
21
  "prettier-plugin-svelte": "^2.7.0",
22
  "svelte": "^3.44.0",
23
  "svelte-check": "^2.7.1",
24
+ "svelte-preprocess": "^4.10.7",
25
+ "tailwindcss": "^3.1.8",
26
  "tslib": "^2.3.1",
27
  "typescript": "^4.7.4",
28
  "vite": "^3.0.4"
 
587
  "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
588
  }
589
  },
590
+ "node_modules/acorn-node": {
591
+ "version": "1.8.2",
592
+ "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
593
+ "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
594
+ "dev": true,
595
+ "dependencies": {
596
+ "acorn": "^7.0.0",
597
+ "acorn-walk": "^7.0.0",
598
+ "xtend": "^4.0.2"
599
+ }
600
+ },
601
+ "node_modules/acorn-node/node_modules/acorn": {
602
+ "version": "7.4.1",
603
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
604
+ "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
605
+ "dev": true,
606
+ "bin": {
607
+ "acorn": "bin/acorn"
608
+ },
609
+ "engines": {
610
+ "node": ">=0.4.0"
611
+ }
612
+ },
613
+ "node_modules/acorn-walk": {
614
+ "version": "7.2.0",
615
+ "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
616
+ "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
617
+ "dev": true,
618
+ "engines": {
619
+ "node": ">=0.4.0"
620
+ }
621
+ },
622
  "node_modules/agent-base": {
623
  "version": "6.0.2",
624
  "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
 
703
  "node": ">=10"
704
  }
705
  },
706
+ "node_modules/arg": {
707
+ "version": "5.0.2",
708
+ "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
709
+ "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
710
+ "dev": true
711
+ },
712
  "node_modules/argparse": {
713
  "version": "2.0.1",
714
  "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
 
730
  "integrity": "sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==",
731
  "dev": true
732
  },
733
+ "node_modules/autoprefixer": {
734
+ "version": "10.4.8",
735
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz",
736
+ "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==",
737
+ "dev": true,
738
+ "funding": [
739
+ {
740
+ "type": "opencollective",
741
+ "url": "https://opencollective.com/postcss/"
742
+ },
743
+ {
744
+ "type": "tidelift",
745
+ "url": "https://tidelift.com/funding/github/npm/autoprefixer"
746
+ }
747
+ ],
748
+ "dependencies": {
749
+ "browserslist": "^4.21.3",
750
+ "caniuse-lite": "^1.0.30001373",
751
+ "fraction.js": "^4.2.0",
752
+ "normalize-range": "^0.1.2",
753
+ "picocolors": "^1.0.0",
754
+ "postcss-value-parser": "^4.2.0"
755
+ },
756
+ "bin": {
757
+ "autoprefixer": "bin/autoprefixer"
758
+ },
759
+ "engines": {
760
+ "node": "^10 || ^12 || >=14"
761
+ },
762
+ "peerDependencies": {
763
+ "postcss": "^8.1.0"
764
+ }
765
+ },
766
  "node_modules/balanced-match": {
767
  "version": "1.0.2",
768
  "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
 
809
  "node": ">=8"
810
  }
811
  },
812
+ "node_modules/browserslist": {
813
+ "version": "4.21.3",
814
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz",
815
+ "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==",
816
+ "dev": true,
817
+ "funding": [
818
+ {
819
+ "type": "opencollective",
820
+ "url": "https://opencollective.com/browserslist"
821
+ },
822
+ {
823
+ "type": "tidelift",
824
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
825
+ }
826
+ ],
827
+ "dependencies": {
828
+ "caniuse-lite": "^1.0.30001370",
829
+ "electron-to-chromium": "^1.4.202",
830
+ "node-releases": "^2.0.6",
831
+ "update-browserslist-db": "^1.0.5"
832
+ },
833
+ "bin": {
834
+ "browserslist": "cli.js"
835
+ },
836
+ "engines": {
837
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
838
+ }
839
+ },
840
  "node_modules/buffer-crc32": {
841
  "version": "0.2.13",
842
  "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
 
855
  "node": ">=6"
856
  }
857
  },
858
+ "node_modules/camelcase-css": {
859
+ "version": "2.0.1",
860
+ "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
861
+ "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
862
+ "dev": true,
863
+ "engines": {
864
+ "node": ">= 6"
865
+ }
866
+ },
867
+ "node_modules/caniuse-lite": {
868
+ "version": "1.0.30001382",
869
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001382.tgz",
870
+ "integrity": "sha512-2rtJwDmSZ716Pxm1wCtbPvHtbDWAreTPxXbkc5RkKglow3Ig/4GNGazDI9/BVnXbG/wnv6r3B5FEbkfg9OcTGg==",
871
+ "dev": true,
872
+ "funding": [
873
+ {
874
+ "type": "opencollective",
875
+ "url": "https://opencollective.com/browserslist"
876
+ },
877
+ {
878
+ "type": "tidelift",
879
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
880
+ }
881
+ ]
882
+ },
883
  "node_modules/chalk": {
884
  "version": "4.1.2",
885
  "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
 
1006
  "node": ">= 8"
1007
  }
1008
  },
1009
+ "node_modules/cssesc": {
1010
+ "version": "3.0.0",
1011
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
1012
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
1013
+ "dev": true,
1014
+ "bin": {
1015
+ "cssesc": "bin/cssesc"
1016
+ },
1017
+ "engines": {
1018
+ "node": ">=4"
1019
+ }
1020
+ },
1021
  "node_modules/data-uri-to-buffer": {
1022
  "version": "4.0.0",
1023
  "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz",
 
1059
  "node": ">=0.10.0"
1060
  }
1061
  },
1062
+ "node_modules/defined": {
1063
+ "version": "1.0.0",
1064
+ "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
1065
+ "integrity": "sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==",
1066
+ "dev": true
1067
+ },
1068
  "node_modules/delegates": {
1069
  "version": "1.0.0",
1070
  "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
 
1089
  "node": ">=8"
1090
  }
1091
  },
1092
+ "node_modules/detective": {
1093
+ "version": "5.2.1",
1094
+ "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz",
1095
+ "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==",
1096
+ "dev": true,
1097
+ "dependencies": {
1098
+ "acorn-node": "^1.8.2",
1099
+ "defined": "^1.0.0",
1100
+ "minimist": "^1.2.6"
1101
+ },
1102
+ "bin": {
1103
+ "detective": "bin/detective.js"
1104
+ },
1105
+ "engines": {
1106
+ "node": ">=0.8.0"
1107
+ }
1108
+ },
1109
  "node_modules/devalue": {
1110
  "version": "2.0.1",
1111
  "resolved": "https://registry.npmjs.org/devalue/-/devalue-2.0.1.tgz",
1112
  "integrity": "sha512-I2TiqT5iWBEyB8GRfTDP0hiLZ0YeDJZ+upDxjBfOC2lebO5LezQMv7QvIUTzdb64jQyAKLf1AHADtGN+jw6v8Q==",
1113
  "dev": true
1114
  },
1115
+ "node_modules/didyoumean": {
1116
+ "version": "1.2.2",
1117
+ "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
1118
+ "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
1119
+ "dev": true
1120
+ },
1121
  "node_modules/dir-glob": {
1122
  "version": "3.0.1",
1123
  "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
 
1130
  "node": ">=8"
1131
  }
1132
  },
1133
+ "node_modules/dlv": {
1134
+ "version": "1.1.3",
1135
+ "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
1136
+ "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
1137
+ "dev": true
1138
+ },
1139
  "node_modules/doctrine": {
1140
  "version": "3.0.0",
1141
  "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
 
1148
  "node": ">=6.0.0"
1149
  }
1150
  },
1151
+ "node_modules/electron-to-chromium": {
1152
+ "version": "1.4.228",
1153
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.228.tgz",
1154
+ "integrity": "sha512-XfDHCvou7CsDMlFwb0WZ1tWmW48e7Sn7VBRyPfZsZZila9esRsJl1trO+OqDNV97GggFSt0ISbWslKXfQkG//g==",
1155
+ "dev": true
1156
+ },
1157
  "node_modules/emoji-regex": {
1158
  "version": "8.0.0",
1159
  "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
 
1522
  "node": ">=12"
1523
  }
1524
  },
1525
+ "node_modules/escalade": {
1526
+ "version": "3.1.1",
1527
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
1528
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
1529
+ "dev": true,
1530
+ "engines": {
1531
+ "node": ">=6"
1532
+ }
1533
+ },
1534
  "node_modules/escape-string-regexp": {
1535
  "version": "4.0.0",
1536
  "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
 
1930
  "node": ">=12.20.0"
1931
  }
1932
  },
1933
+ "node_modules/fraction.js": {
1934
+ "version": "4.2.0",
1935
+ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
1936
+ "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==",
1937
+ "dev": true,
1938
+ "engines": {
1939
+ "node": "*"
1940
+ },
1941
+ "funding": {
1942
+ "type": "patreon",
1943
+ "url": "https://www.patreon.com/infusion"
1944
+ }
1945
+ },
1946
  "node_modules/fs-minipass": {
1947
  "version": "2.1.0",
1948
  "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
 
2312
  "node": ">= 0.8.0"
2313
  }
2314
  },
2315
+ "node_modules/lilconfig": {
2316
+ "version": "2.0.6",
2317
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz",
2318
+ "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==",
2319
+ "dev": true,
2320
+ "engines": {
2321
+ "node": ">=10"
2322
+ }
2323
+ },
2324
  "node_modules/locate-path": {
2325
  "version": "6.0.0",
2326
  "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
 
2578
  "node-gyp-build-test": "build-test.js"
2579
  }
2580
  },
2581
+ "node_modules/node-releases": {
2582
+ "version": "2.0.6",
2583
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz",
2584
+ "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==",
2585
+ "dev": true
2586
+ },
2587
  "node_modules/nopt": {
2588
  "version": "5.0.0",
2589
  "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
 
2608
  "node": ">=0.10.0"
2609
  }
2610
  },
2611
+ "node_modules/normalize-range": {
2612
+ "version": "0.1.2",
2613
+ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
2614
+ "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
2615
+ "dev": true,
2616
+ "engines": {
2617
+ "node": ">=0.10.0"
2618
+ }
2619
+ },
2620
  "node_modules/npmlog": {
2621
  "version": "5.0.1",
2622
  "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz",
 
2638
  "node": ">=0.10.0"
2639
  }
2640
  },
2641
+ "node_modules/object-hash": {
2642
+ "version": "3.0.0",
2643
+ "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
2644
+ "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
2645
+ "dev": true,
2646
+ "engines": {
2647
+ "node": ">= 6"
2648
+ }
2649
+ },
2650
  "node_modules/once": {
2651
  "version": "1.4.0",
2652
  "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
 
2775
  "url": "https://github.com/sponsors/jonschlinkert"
2776
  }
2777
  },
2778
+ "node_modules/pify": {
2779
+ "version": "2.3.0",
2780
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
2781
+ "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
2782
+ "dev": true,
2783
+ "engines": {
2784
+ "node": ">=0.10.0"
2785
+ }
2786
+ },
2787
  "node_modules/postcss": {
2788
  "version": "8.4.16",
2789
  "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz",
 
2808
  "node": "^10 || ^12 || >=14"
2809
  }
2810
  },
2811
+ "node_modules/postcss-import": {
2812
+ "version": "14.1.0",
2813
+ "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz",
2814
+ "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==",
2815
+ "dev": true,
2816
+ "dependencies": {
2817
+ "postcss-value-parser": "^4.0.0",
2818
+ "read-cache": "^1.0.0",
2819
+ "resolve": "^1.1.7"
2820
+ },
2821
+ "engines": {
2822
+ "node": ">=10.0.0"
2823
+ },
2824
+ "peerDependencies": {
2825
+ "postcss": "^8.0.0"
2826
+ }
2827
+ },
2828
+ "node_modules/postcss-js": {
2829
+ "version": "4.0.0",
2830
+ "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz",
2831
+ "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==",
2832
+ "dev": true,
2833
+ "dependencies": {
2834
+ "camelcase-css": "^2.0.1"
2835
+ },
2836
+ "engines": {
2837
+ "node": "^12 || ^14 || >= 16"
2838
+ },
2839
+ "funding": {
2840
+ "type": "opencollective",
2841
+ "url": "https://opencollective.com/postcss/"
2842
+ },
2843
+ "peerDependencies": {
2844
+ "postcss": "^8.3.3"
2845
+ }
2846
+ },
2847
+ "node_modules/postcss-load-config": {
2848
+ "version": "3.1.4",
2849
+ "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz",
2850
+ "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==",
2851
+ "dev": true,
2852
+ "dependencies": {
2853
+ "lilconfig": "^2.0.5",
2854
+ "yaml": "^1.10.2"
2855
+ },
2856
+ "engines": {
2857
+ "node": ">= 10"
2858
+ },
2859
+ "funding": {
2860
+ "type": "opencollective",
2861
+ "url": "https://opencollective.com/postcss/"
2862
+ },
2863
+ "peerDependencies": {
2864
+ "postcss": ">=8.0.9",
2865
+ "ts-node": ">=9.0.0"
2866
+ },
2867
+ "peerDependenciesMeta": {
2868
+ "postcss": {
2869
+ "optional": true
2870
+ },
2871
+ "ts-node": {
2872
+ "optional": true
2873
+ }
2874
+ }
2875
+ },
2876
+ "node_modules/postcss-nested": {
2877
+ "version": "5.0.6",
2878
+ "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz",
2879
+ "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==",
2880
+ "dev": true,
2881
+ "dependencies": {
2882
+ "postcss-selector-parser": "^6.0.6"
2883
+ },
2884
+ "engines": {
2885
+ "node": ">=12.0"
2886
+ },
2887
+ "funding": {
2888
+ "type": "opencollective",
2889
+ "url": "https://opencollective.com/postcss/"
2890
+ },
2891
+ "peerDependencies": {
2892
+ "postcss": "^8.2.14"
2893
+ }
2894
+ },
2895
+ "node_modules/postcss-selector-parser": {
2896
+ "version": "6.0.10",
2897
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz",
2898
+ "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==",
2899
+ "dev": true,
2900
+ "dependencies": {
2901
+ "cssesc": "^3.0.0",
2902
+ "util-deprecate": "^1.0.2"
2903
+ },
2904
+ "engines": {
2905
+ "node": ">=4"
2906
+ }
2907
+ },
2908
+ "node_modules/postcss-value-parser": {
2909
+ "version": "4.2.0",
2910
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
2911
+ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
2912
+ "dev": true
2913
+ },
2914
  "node_modules/prelude-ls": {
2915
  "version": "1.2.1",
2916
  "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
 
2974
  }
2975
  ]
2976
  },
2977
+ "node_modules/quick-lru": {
2978
+ "version": "5.1.1",
2979
+ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
2980
+ "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
2981
+ "dev": true,
2982
+ "engines": {
2983
+ "node": ">=10"
2984
+ },
2985
+ "funding": {
2986
+ "url": "https://github.com/sponsors/sindresorhus"
2987
+ }
2988
+ },
2989
+ "node_modules/read-cache": {
2990
+ "version": "1.0.0",
2991
+ "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
2992
+ "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==",
2993
+ "dev": true,
2994
+ "dependencies": {
2995
+ "pify": "^2.3.0"
2996
+ }
2997
+ },
2998
  "node_modules/readable-stream": {
2999
  "version": "3.6.0",
3000
  "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
 
3510
  "sourcemap-codec": "^1.4.8"
3511
  }
3512
  },
3513
+ "node_modules/tailwindcss": {
3514
+ "version": "3.1.8",
3515
+ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.1.8.tgz",
3516
+ "integrity": "sha512-YSneUCZSFDYMwk+TGq8qYFdCA3yfBRdBlS7txSq0LUmzyeqRe3a8fBQzbz9M3WS/iFT4BNf/nmw9mEzrnSaC0g==",
3517
+ "dev": true,
3518
+ "dependencies": {
3519
+ "arg": "^5.0.2",
3520
+ "chokidar": "^3.5.3",
3521
+ "color-name": "^1.1.4",
3522
+ "detective": "^5.2.1",
3523
+ "didyoumean": "^1.2.2",
3524
+ "dlv": "^1.1.3",
3525
+ "fast-glob": "^3.2.11",
3526
+ "glob-parent": "^6.0.2",
3527
+ "is-glob": "^4.0.3",
3528
+ "lilconfig": "^2.0.6",
3529
+ "normalize-path": "^3.0.0",
3530
+ "object-hash": "^3.0.0",
3531
+ "picocolors": "^1.0.0",
3532
+ "postcss": "^8.4.14",
3533
+ "postcss-import": "^14.1.0",
3534
+ "postcss-js": "^4.0.0",
3535
+ "postcss-load-config": "^3.1.4",
3536
+ "postcss-nested": "5.0.6",
3537
+ "postcss-selector-parser": "^6.0.10",
3538
+ "postcss-value-parser": "^4.2.0",
3539
+ "quick-lru": "^5.1.1",
3540
+ "resolve": "^1.22.1"
3541
+ },
3542
+ "bin": {
3543
+ "tailwind": "lib/cli.js",
3544
+ "tailwindcss": "lib/cli.js"
3545
+ },
3546
+ "engines": {
3547
+ "node": ">=12.13.0"
3548
+ },
3549
+ "peerDependencies": {
3550
+ "postcss": "^8.0.9"
3551
+ }
3552
+ },
3553
  "node_modules/tar": {
3554
  "version": "6.1.11",
3555
  "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
 
3695
  "node": ">=12.18"
3696
  }
3697
  },
3698
+ "node_modules/update-browserslist-db": {
3699
+ "version": "1.0.5",
3700
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz",
3701
+ "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==",
3702
+ "dev": true,
3703
+ "funding": [
3704
+ {
3705
+ "type": "opencollective",
3706
+ "url": "https://opencollective.com/browserslist"
3707
+ },
3708
+ {
3709
+ "type": "tidelift",
3710
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
3711
+ }
3712
+ ],
3713
+ "dependencies": {
3714
+ "escalade": "^3.1.1",
3715
+ "picocolors": "^1.0.0"
3716
+ },
3717
+ "bin": {
3718
+ "browserslist-lint": "cli.js"
3719
+ },
3720
+ "peerDependencies": {
3721
+ "browserslist": ">= 4.21.0"
3722
+ }
3723
+ },
3724
  "node_modules/uri-js": {
3725
  "version": "4.4.1",
3726
  "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
 
3860
  "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
3861
  "dev": true
3862
  },
3863
+ "node_modules/xtend": {
3864
+ "version": "4.0.2",
3865
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
3866
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
3867
+ "dev": true,
3868
+ "engines": {
3869
+ "node": ">=0.4"
3870
+ }
3871
+ },
3872
  "node_modules/yallist": {
3873
  "version": "4.0.0",
3874
  "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
3875
  "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
3876
  "dev": true
3877
  },
3878
+ "node_modules/yaml": {
3879
+ "version": "1.10.2",
3880
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
3881
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
3882
+ "dev": true,
3883
+ "engines": {
3884
+ "node": ">= 6"
3885
+ }
3886
+ },
3887
  "node_modules/yocto-queue": {
3888
  "version": "0.1.0",
3889
  "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
 
4287
  "dev": true,
4288
  "requires": {}
4289
  },
4290
+ "acorn-node": {
4291
+ "version": "1.8.2",
4292
+ "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
4293
+ "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
4294
+ "dev": true,
4295
+ "requires": {
4296
+ "acorn": "^7.0.0",
4297
+ "acorn-walk": "^7.0.0",
4298
+ "xtend": "^4.0.2"
4299
+ },
4300
+ "dependencies": {
4301
+ "acorn": {
4302
+ "version": "7.4.1",
4303
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
4304
+ "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
4305
+ "dev": true
4306
+ }
4307
+ }
4308
+ },
4309
+ "acorn-walk": {
4310
+ "version": "7.2.0",
4311
+ "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
4312
+ "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
4313
+ "dev": true
4314
+ },
4315
  "agent-base": {
4316
  "version": "6.0.2",
4317
  "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
 
4374
  "readable-stream": "^3.6.0"
4375
  }
4376
  },
4377
+ "arg": {
4378
+ "version": "5.0.2",
4379
+ "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
4380
+ "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
4381
+ "dev": true
4382
+ },
4383
  "argparse": {
4384
  "version": "2.0.1",
4385
  "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
 
4398
  "integrity": "sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==",
4399
  "dev": true
4400
  },
4401
+ "autoprefixer": {
4402
+ "version": "10.4.8",
4403
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.8.tgz",
4404
+ "integrity": "sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==",
4405
+ "dev": true,
4406
+ "requires": {
4407
+ "browserslist": "^4.21.3",
4408
+ "caniuse-lite": "^1.0.30001373",
4409
+ "fraction.js": "^4.2.0",
4410
+ "normalize-range": "^0.1.2",
4411
+ "picocolors": "^1.0.0",
4412
+ "postcss-value-parser": "^4.2.0"
4413
+ }
4414
+ },
4415
  "balanced-match": {
4416
  "version": "1.0.2",
4417
  "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
 
4452
  "fill-range": "^7.0.1"
4453
  }
4454
  },
4455
+ "browserslist": {
4456
+ "version": "4.21.3",
4457
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz",
4458
+ "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==",
4459
+ "dev": true,
4460
+ "requires": {
4461
+ "caniuse-lite": "^1.0.30001370",
4462
+ "electron-to-chromium": "^1.4.202",
4463
+ "node-releases": "^2.0.6",
4464
+ "update-browserslist-db": "^1.0.5"
4465
+ }
4466
+ },
4467
  "buffer-crc32": {
4468
  "version": "0.2.13",
4469
  "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
 
4476
  "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
4477
  "dev": true
4478
  },
4479
+ "camelcase-css": {
4480
+ "version": "2.0.1",
4481
+ "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
4482
+ "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
4483
+ "dev": true
4484
+ },
4485
+ "caniuse-lite": {
4486
+ "version": "1.0.30001382",
4487
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001382.tgz",
4488
+ "integrity": "sha512-2rtJwDmSZ716Pxm1wCtbPvHtbDWAreTPxXbkc5RkKglow3Ig/4GNGazDI9/BVnXbG/wnv6r3B5FEbkfg9OcTGg==",
4489
+ "dev": true
4490
+ },
4491
  "chalk": {
4492
  "version": "4.1.2",
4493
  "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
 
4581
  "which": "^2.0.1"
4582
  }
4583
  },
4584
+ "cssesc": {
4585
+ "version": "3.0.0",
4586
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
4587
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
4588
+ "dev": true
4589
+ },
4590
  "data-uri-to-buffer": {
4591
  "version": "4.0.0",
4592
  "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz",
 
4614
  "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
4615
  "dev": true
4616
  },
4617
+ "defined": {
4618
+ "version": "1.0.0",
4619
+ "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz",
4620
+ "integrity": "sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==",
4621
+ "dev": true
4622
+ },
4623
  "delegates": {
4624
  "version": "1.0.0",
4625
  "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
 
4638
  "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==",
4639
  "dev": true
4640
  },
4641
+ "detective": {
4642
+ "version": "5.2.1",
4643
+ "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz",
4644
+ "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==",
4645
+ "dev": true,
4646
+ "requires": {
4647
+ "acorn-node": "^1.8.2",
4648
+ "defined": "^1.0.0",
4649
+ "minimist": "^1.2.6"
4650
+ }
4651
+ },
4652
  "devalue": {
4653
  "version": "2.0.1",
4654
  "resolved": "https://registry.npmjs.org/devalue/-/devalue-2.0.1.tgz",
4655
  "integrity": "sha512-I2TiqT5iWBEyB8GRfTDP0hiLZ0YeDJZ+upDxjBfOC2lebO5LezQMv7QvIUTzdb64jQyAKLf1AHADtGN+jw6v8Q==",
4656
  "dev": true
4657
  },
4658
+ "didyoumean": {
4659
+ "version": "1.2.2",
4660
+ "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
4661
+ "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
4662
+ "dev": true
4663
+ },
4664
  "dir-glob": {
4665
  "version": "3.0.1",
4666
  "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
 
4670
  "path-type": "^4.0.0"
4671
  }
4672
  },
4673
+ "dlv": {
4674
+ "version": "1.1.3",
4675
+ "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
4676
+ "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
4677
+ "dev": true
4678
+ },
4679
  "doctrine": {
4680
  "version": "3.0.0",
4681
  "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
 
4685
  "esutils": "^2.0.2"
4686
  }
4687
  },
4688
+ "electron-to-chromium": {
4689
+ "version": "1.4.228",
4690
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.228.tgz",
4691
+ "integrity": "sha512-XfDHCvou7CsDMlFwb0WZ1tWmW48e7Sn7VBRyPfZsZZila9esRsJl1trO+OqDNV97GggFSt0ISbWslKXfQkG//g==",
4692
+ "dev": true
4693
+ },
4694
  "emoji-regex": {
4695
  "version": "8.0.0",
4696
  "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
 
4872
  "dev": true,
4873
  "optional": true
4874
  },
4875
+ "escalade": {
4876
+ "version": "3.1.1",
4877
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
4878
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
4879
+ "dev": true
4880
+ },
4881
  "escape-string-regexp": {
4882
  "version": "4.0.0",
4883
  "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
 
5179
  "fetch-blob": "^3.1.2"
5180
  }
5181
  },
5182
+ "fraction.js": {
5183
+ "version": "4.2.0",
5184
+ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz",
5185
+ "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==",
5186
+ "dev": true
5187
+ },
5188
  "fs-minipass": {
5189
  "version": "2.1.0",
5190
  "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
 
5471
  "type-check": "~0.4.0"
5472
  }
5473
  },
5474
+ "lilconfig": {
5475
+ "version": "2.0.6",
5476
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz",
5477
+ "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==",
5478
+ "dev": true
5479
+ },
5480
  "locate-path": {
5481
  "version": "6.0.0",
5482
  "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
 
5651
  "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==",
5652
  "dev": true
5653
  },
5654
+ "node-releases": {
5655
+ "version": "2.0.6",
5656
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz",
5657
+ "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==",
5658
+ "dev": true
5659
+ },
5660
  "nopt": {
5661
  "version": "5.0.0",
5662
  "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
 
5672
  "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
5673
  "dev": true
5674
  },
5675
+ "normalize-range": {
5676
+ "version": "0.1.2",
5677
+ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
5678
+ "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
5679
+ "dev": true
5680
+ },
5681
  "npmlog": {
5682
  "version": "5.0.1",
5683
  "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz",
 
5696
  "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
5697
  "dev": true
5698
  },
5699
+ "object-hash": {
5700
+ "version": "3.0.0",
5701
+ "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
5702
+ "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
5703
+ "dev": true
5704
+ },
5705
  "once": {
5706
  "version": "1.4.0",
5707
  "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
 
5794
  "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
5795
  "dev": true
5796
  },
5797
+ "pify": {
5798
+ "version": "2.3.0",
5799
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
5800
+ "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
5801
+ "dev": true
5802
+ },
5803
  "postcss": {
5804
  "version": "8.4.16",
5805
  "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz",
 
5811
  "source-map-js": "^1.0.2"
5812
  }
5813
  },
5814
+ "postcss-import": {
5815
+ "version": "14.1.0",
5816
+ "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz",
5817
+ "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==",
5818
+ "dev": true,
5819
+ "requires": {
5820
+ "postcss-value-parser": "^4.0.0",
5821
+ "read-cache": "^1.0.0",
5822
+ "resolve": "^1.1.7"
5823
+ }
5824
+ },
5825
+ "postcss-js": {
5826
+ "version": "4.0.0",
5827
+ "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz",
5828
+ "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==",
5829
+ "dev": true,
5830
+ "requires": {
5831
+ "camelcase-css": "^2.0.1"
5832
+ }
5833
+ },
5834
+ "postcss-load-config": {
5835
+ "version": "3.1.4",
5836
+ "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz",
5837
+ "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==",
5838
+ "dev": true,
5839
+ "requires": {
5840
+ "lilconfig": "^2.0.5",
5841
+ "yaml": "^1.10.2"
5842
+ }
5843
+ },
5844
+ "postcss-nested": {
5845
+ "version": "5.0.6",
5846
+ "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz",
5847
+ "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==",
5848
+ "dev": true,
5849
+ "requires": {
5850
+ "postcss-selector-parser": "^6.0.6"
5851
+ }
5852
+ },
5853
+ "postcss-selector-parser": {
5854
+ "version": "6.0.10",
5855
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz",
5856
+ "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==",
5857
+ "dev": true,
5858
+ "requires": {
5859
+ "cssesc": "^3.0.0",
5860
+ "util-deprecate": "^1.0.2"
5861
+ }
5862
+ },
5863
+ "postcss-value-parser": {
5864
+ "version": "4.2.0",
5865
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
5866
+ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
5867
+ "dev": true
5868
+ },
5869
  "prelude-ls": {
5870
  "version": "1.2.1",
5871
  "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
 
5897
  "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
5898
  "dev": true
5899
  },
5900
+ "quick-lru": {
5901
+ "version": "5.1.1",
5902
+ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
5903
+ "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
5904
+ "dev": true
5905
+ },
5906
+ "read-cache": {
5907
+ "version": "1.0.0",
5908
+ "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
5909
+ "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==",
5910
+ "dev": true,
5911
+ "requires": {
5912
+ "pify": "^2.3.0"
5913
+ }
5914
+ },
5915
  "readable-stream": {
5916
  "version": "3.6.0",
5917
  "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
 
6245
  }
6246
  }
6247
  },
6248
+ "tailwindcss": {
6249
+ "version": "3.1.8",
6250
+ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.1.8.tgz",
6251
+ "integrity": "sha512-YSneUCZSFDYMwk+TGq8qYFdCA3yfBRdBlS7txSq0LUmzyeqRe3a8fBQzbz9M3WS/iFT4BNf/nmw9mEzrnSaC0g==",
6252
+ "dev": true,
6253
+ "requires": {
6254
+ "arg": "^5.0.2",
6255
+ "chokidar": "^3.5.3",
6256
+ "color-name": "^1.1.4",
6257
+ "detective": "^5.2.1",
6258
+ "didyoumean": "^1.2.2",
6259
+ "dlv": "^1.1.3",
6260
+ "fast-glob": "^3.2.11",
6261
+ "glob-parent": "^6.0.2",
6262
+ "is-glob": "^4.0.3",
6263
+ "lilconfig": "^2.0.6",
6264
+ "normalize-path": "^3.0.0",
6265
+ "object-hash": "^3.0.0",
6266
+ "picocolors": "^1.0.0",
6267
+ "postcss": "^8.4.14",
6268
+ "postcss-import": "^14.1.0",
6269
+ "postcss-js": "^4.0.0",
6270
+ "postcss-load-config": "^3.1.4",
6271
+ "postcss-nested": "5.0.6",
6272
+ "postcss-selector-parser": "^6.0.10",
6273
+ "postcss-value-parser": "^4.2.0",
6274
+ "quick-lru": "^5.1.1",
6275
+ "resolve": "^1.22.1"
6276
+ }
6277
+ },
6278
  "tar": {
6279
  "version": "6.1.11",
6280
  "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
 
6384
  "integrity": "sha512-c8HsD3IbwmjjbLvoZuRI26TZic+TSEe8FPMLLOkN1AfYRhdjnKBU6yL+IwcSCbdZiX4e5t0lfMDLDCqj4Sq70g==",
6385
  "dev": true
6386
  },
6387
+ "update-browserslist-db": {
6388
+ "version": "1.0.5",
6389
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz",
6390
+ "integrity": "sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==",
6391
+ "dev": true,
6392
+ "requires": {
6393
+ "escalade": "^3.1.1",
6394
+ "picocolors": "^1.0.0"
6395
+ }
6396
+ },
6397
  "uri-js": {
6398
  "version": "4.4.1",
6399
  "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
 
6490
  "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
6491
  "dev": true
6492
  },
6493
+ "xtend": {
6494
+ "version": "4.0.2",
6495
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
6496
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
6497
+ "dev": true
6498
+ },
6499
  "yallist": {
6500
  "version": "4.0.0",
6501
  "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
6502
  "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
6503
  "dev": true
6504
  },
6505
+ "yaml": {
6506
+ "version": "1.10.2",
6507
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
6508
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
6509
+ "dev": true
6510
+ },
6511
  "yocto-queue": {
6512
  "version": "0.1.0",
6513
  "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
package.json CHANGED
@@ -16,14 +16,17 @@
16
  "@sveltejs/kit": "next",
17
  "@typescript-eslint/eslint-plugin": "^5.27.0",
18
  "@typescript-eslint/parser": "^5.27.0",
 
19
  "eslint": "^8.16.0",
20
  "eslint-config-prettier": "^8.3.0",
21
  "eslint-plugin-svelte3": "^4.0.0",
 
22
  "prettier": "^2.6.2",
23
  "prettier-plugin-svelte": "^2.7.0",
24
  "svelte": "^3.44.0",
25
  "svelte-check": "^2.7.1",
26
- "svelte-preprocess": "^4.10.6",
 
27
  "tslib": "^2.3.1",
28
  "typescript": "^4.7.4",
29
  "vite": "^3.0.4"
 
16
  "@sveltejs/kit": "next",
17
  "@typescript-eslint/eslint-plugin": "^5.27.0",
18
  "@typescript-eslint/parser": "^5.27.0",
19
+ "autoprefixer": "^10.4.8",
20
  "eslint": "^8.16.0",
21
  "eslint-config-prettier": "^8.3.0",
22
  "eslint-plugin-svelte3": "^4.0.0",
23
+ "postcss": "^8.4.16",
24
  "prettier": "^2.6.2",
25
  "prettier-plugin-svelte": "^2.7.0",
26
  "svelte": "^3.44.0",
27
  "svelte-check": "^2.7.1",
28
+ "svelte-preprocess": "^4.10.7",
29
+ "tailwindcss": "^3.1.8",
30
  "tslib": "^2.3.1",
31
  "typescript": "^4.7.4",
32
  "vite": "^3.0.4"
postcss.config.cjs ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ module.exports = {
2
+ plugins: {
3
+ tailwindcss: {},
4
+ autoprefixer: {}
5
+ }
6
+ };
src/app.css ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ @tailwind base;
2
+ @tailwind components;
3
+ @tailwind utilities;
src/routes/+layout.svelte ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ <script>
2
+ import '../app.css';
3
+ </script>
4
+
5
+ <slot />
src/routes/+page.svelte CHANGED
@@ -1,2 +1,189 @@
1
- <h1>Welcome to SvelteKit</h1>
2
- <p>Visit <a href="https://kit.svelte.dev">kit.svelte.dev</a> to read the documentation</p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script lang="ts">
2
+ import { onMount } from 'svelte';
3
+
4
+ let txt = '';
5
+ let isLoading = false;
6
+ let isOutputControlAdded = false;
7
+ let canvas: HTMLCanvasElement;
8
+ let ctx: CanvasRenderingContext2D | null;
9
+ let noiseTs: DOMHighResTimeStamp;
10
+ let imageTs: DOMHighResTimeStamp;
11
+ let drawNextImage: () => void;
12
+ let interval: ReturnType<typeof setInterval>;
13
+
14
+ const animImageDuration = 500 as const;
15
+ const animNoiseDuration = 3000 as const;
16
+ const canvasSize = 512 as const;
17
+
18
+ async function drawNoise() {
19
+ if (!ctx) {
20
+ return;
21
+ }
22
+
23
+ const imageData = ctx.createImageData(canvas.width, canvas.height);
24
+ const pix = imageData.data;
25
+
26
+ for (let i = 0, n = pix.length; i < n; i += 4) {
27
+ const c = 7;
28
+ pix[i] = 40 * Math.random() * c; // Set a random gray
29
+ pix[i + 1] = 40 * Math.random() * c; // Set a random gray
30
+ pix[i + 2] = 40 * Math.random() * c; // Set a random gray
31
+ pix[i + 3] = 255; // 100% opaque
32
+ }
33
+
34
+ const bitmap = await createImageBitmap(imageData);
35
+
36
+ const duration = performance.now() - noiseTs;
37
+ ctx.globalAlpha = Math.min(duration, animNoiseDuration) / animNoiseDuration;
38
+ ctx.drawImage(bitmap, 0, 0, canvasSize, canvasSize);
39
+
40
+ if (isLoading) {
41
+ window.requestAnimationFrame(drawNoise);
42
+ }
43
+ }
44
+
45
+ function drawImage(image: CanvasImageSource) {
46
+ if (!ctx) {
47
+ return;
48
+ }
49
+
50
+ const duration = performance.now() - imageTs;
51
+ ctx.globalAlpha = Math.min(duration, animImageDuration) / animImageDuration;
52
+ ctx.drawImage(image, 0, 0, canvasSize, canvasSize);
53
+
54
+ if (duration < animImageDuration) {
55
+ window.requestAnimationFrame(() => drawImage(image));
56
+ }
57
+ }
58
+
59
+ async function getCanvasSnapshot(canvas: HTMLCanvasElement): Promise<File> {
60
+ const canvasDataUrl = canvas.toDataURL('png');
61
+ const res = await fetch(canvasDataUrl);
62
+ const blob = await res.blob();
63
+ const imgFile = new File([blob], 'canvas shot.png', { type: 'image/png' });
64
+ return imgFile;
65
+ }
66
+
67
+ async function submitRequest() {
68
+ if (!txt) {
69
+ return alert('Please add prompt');
70
+ }
71
+
72
+ if (!canvas || !ctx) {
73
+ return;
74
+ }
75
+
76
+ isLoading = true;
77
+
78
+ // start noise animation
79
+ noiseTs = performance.now();
80
+ drawNoise();
81
+
82
+ const imgFile = await getCanvasSnapshot(canvas);
83
+ const form = new FormData();
84
+ form.append('prompt', 'owl');
85
+ form.append('image', imgFile);
86
+
87
+ const response = await fetch('https://sdb.pcuenca.net/i2i', {
88
+ method: 'POST',
89
+ body: form
90
+ });
91
+
92
+ const json = JSON.parse(await response.text());
93
+
94
+ const { images: imagesBase64Strs }: { images: string[] } = json;
95
+
96
+ const imgEls = await Promise.all(
97
+ imagesBase64Strs.map(async (imgBase64Str) => {
98
+ const imgEl = new Image();
99
+ imgEl.src = `data:image/png;base64, ${imgBase64Str}`;
100
+ // await image.onload
101
+ await new Promise((resolve, _) => {
102
+ imgEl.onload = () => resolve(imgEl);
103
+ });
104
+ return imgEl;
105
+ })
106
+ );
107
+
108
+ isLoading = false;
109
+
110
+ if (interval) {
111
+ clearInterval(interval);
112
+ }
113
+ let i = 0;
114
+ imageTs = performance.now();
115
+ drawImage(imgEls[i % imgEls.length]);
116
+ drawNextImage = () => {
117
+ if (interval) {
118
+ clearInterval(interval);
119
+ }
120
+ imageTs = performance.now();
121
+ i = i + 1;
122
+ drawImage(imgEls[i % imgEls.length]);
123
+ };
124
+ interval = setInterval(() => {
125
+ i = i + 1;
126
+ imageTs = performance.now();
127
+ drawImage(imgEls[i % imgEls.length]);
128
+ }, 2500);
129
+
130
+ if (!isOutputControlAdded) {
131
+ addOutputControls();
132
+ }
133
+ }
134
+
135
+ function addOutputControls() {
136
+ const div = document.createElement('div');
137
+ div.className = 'drawing-board-control';
138
+
139
+ const btn = document.createElement('button');
140
+ btn.innerHTML = '⏯';
141
+ btn.onclick = drawNextImage;
142
+ div.append(btn);
143
+
144
+ const controlsEl = document.querySelector('.drawing-board-controls');
145
+ if (controlsEl) {
146
+ controlsEl.appendChild(div);
147
+ isOutputControlAdded = true;
148
+ }
149
+ }
150
+
151
+ onMount(() => {
152
+ const drawingBoard = new window.DrawingBoard.Board('board-container', {
153
+ size: 10,
154
+ controls: [
155
+ 'Color',
156
+ { Size: { type: 'dropdown' } },
157
+ { DrawingMode: { filler: false } },
158
+ 'Navigation'
159
+ ]
160
+ });
161
+ canvas = drawingBoard.canvas;
162
+ ctx = canvas.getContext('2d');
163
+ });
164
+ </script>
165
+
166
+ <svelte:head>
167
+ <link
168
+ href="https://cdnjs.cloudflare.com/ajax/libs/drawingboard.js/0.4.2/drawingboard.css"
169
+ rel="stylesheet"
170
+ />
171
+ <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
172
+ <script
173
+ src="https://cdnjs.cloudflare.com/ajax/libs/drawingboard.js/0.4.2/drawingboard.min.js"></script>
174
+ </svelte:head>
175
+
176
+ <div class="flex flex-wrap gap-x-8 justify-center mt-16">
177
+ <div class={isLoading ? 'pointer-events-none' : ''}>
178
+ <div id="board-container" style="width: 512px;height: 545px;" />
179
+ <div class="flex gap-x-2 mt-4 items-center justify-center {isLoading ? 'animate-pulse' : ''}">
180
+ <input type="text" class="border-2 " placeholder="Add prompt" bind:value={txt} />
181
+ <button
182
+ on:click={submitRequest}
183
+ class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4"
184
+ >
185
+ diffuse the f rest
186
+ </button>
187
+ </div>
188
+ </div>
189
+ </div>
svelte.config.js CHANGED
@@ -5,7 +5,9 @@ import preprocess from 'svelte-preprocess';
5
  const config = {
6
  // Consult https://github.com/sveltejs/svelte-preprocess
7
  // for more information about preprocessors
8
- preprocess: preprocess(),
 
 
9
 
10
  kit: {
11
  adapter: adapter()
 
5
  const config = {
6
  // Consult https://github.com/sveltejs/svelte-preprocess
7
  // for more information about preprocessors
8
+ preprocess: preprocess({
9
+ postcss: true
10
+ }),
11
 
12
  kit: {
13
  adapter: adapter()
tailwind.config.cjs ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ /** @type {import('tailwindcss').Config} */
2
+ module.exports = {
3
+ content: ['./src/**/*.{html,js,svelte,ts}'],
4
+ theme: {
5
+ extend: {}
6
+ },
7
+ plugins: []
8
+ };