From 219fd9be5c43e96e8a7df3f241e33f54844f7075 Mon Sep 17 00:00:00 2001 From: Ls <2391972606@qq.com> Date: Thu, 12 Feb 2026 12:19:20 +0800 Subject: [PATCH] first commit --- .gitignore | 21 + .hbuilderx/launch.json | 23 + .svn/entries | 1 + .svn/format | 1 + ...a992679974870eb695fc57859039eb83e.svn-base | 20 + ...65f2a10f8d8f442f0e1ffd1c4cb1f81a7.svn-base | Bin 0 -> 13543 bytes ...69dd214df7865c8881ee4135fb9398d2b.svn-base | 13 + ...cb6ee95a4c64f0e8770ebea0818285145.svn-base | Bin 0 -> 2943 bytes ...d530e1607b6ed9689b646fc027aa61d33.svn-base | 225 + ...1832126892d0d9ba205c9d9e3b74801e8.svn-base | 63 + ...2eb245c167b9819e95b454e60b65e2198.svn-base | Bin 0 -> 813 bytes ...7f51c4360b8778005b7a35da51a2f5240.svn-base | 234 + ...48da2982b8e3993cdc30a9e3c902b1d6f.svn-base | 625 + ...f57b2d6ac9d93d5e62f935971fa209655.svn-base | Bin 0 -> 278 bytes ...d461ae3ed9159a006e5506aa25c7bbc83.svn-base | 727 + ...98529cd0a1b4156ca35576943d8790874.svn-base | 238 + ...3a255a890461a1cf8acf1979980d1d5d1.svn-base | 241 + ...6cc1267ccd5876cffbbb894512771ee34.svn-base | 43 + ...bc6bbae0e859744bfd14155f6bb7e651b.svn-base | Bin 0 -> 8925 bytes ...63c27578e353de3a44a04075215a655a6.svn-base | 30 + ...bf9daddd67a9717d1bd27b41d9f0e30d9.svn-base | 714 + ...c726f609b3727765bf906f8a0cd01ab27.svn-base | Bin 0 -> 387 bytes ...27b631047fe9ec6c709d22640321cc313.svn-base | 662 + ...168cc8bbc20d24f8f5e3c2f241ae75b5c.svn-base | 145 + ...e2635710df480df8f2a9965f5e11ee10c.svn-base | 156 + ...1b0ee772ba788ac186336ecd95bb24359.svn-base | 315 + ...e3058935773c7850a58fb72b6c6527434.svn-base | 218 + ...c5881090dd08683f19efeb37f1c1436f4.svn-base | 369 + ...c26c662d890046b98c3fa2582463e8057.svn-base | Bin 0 -> 474 bytes ...3508db1f0145f4ed2e9e305883db8451d.svn-base | 655 + ...6758cd5e9f7113a4a2b1ce6e714ef4027.svn-base | 445 + ...12f92f6daf4155b938021c693ab3e8582.svn-base | 86 + ...417cefcae17c6f64bbdb3ab61e9478fff.svn-base | Bin 0 -> 456 bytes ...3d6c37cd8430893f834b62f1cabecdcc4.svn-base | 97 + ...0864fa4fbb3e4529a755dce75b6ff95c4.svn-base | 126 + ...b0fd1e1053a2010ad29a968c5bbb700a4.svn-base | 3912 +++++ ...f1ba4a494dd6d6c5dcc912484322fa129.svn-base | 380 + ...129037012583da60bb0aae9aa0b0ac61c.svn-base | 703 + ...79a5cfd146207d9f18a46a9cb0c47115a.svn-base | 506 + ...207c6a03e2b4369cafcbb8cc9baf32511.svn-base | 13 + ...bbbc39ae1dc9916b328c9dcf9c710e0ce.svn-base | 421 + ...fd654cf78e7218300b3d76d316579ccee.svn-base | 261 + ...d1588158aadde45ed00d1d0ae9e6800ac.svn-base | 19 + ...e31e11e0980337a2ab71a180baacabe3a.svn-base | 22 + ...c88c66aa9fdb41418b6259fa3f77ba83d.svn-base | 63 + ...8cf1144513459d4b24925e0f8ca2e7201.svn-base | 75 + ...24bc0f4113df9bcac07adfc7bfcfa4bd8.svn-base | 511 + ...68337d80e4fac1e3809dcfe7c8ca8edbc.svn-base | 335 + ...cc8d2746c4c2467a7c3e51570356556a9.svn-base | 81 + ...a72dd98d50ef9b5126847cba897b5bd14.svn-base | 544 + ...4892d499a19746d845d36640020983c7b.svn-base | 355 + ...064d97bab2cc2c4331d4624361cc002a5.svn-base | 242 + ...7c83890a604b88566a85304efacb9aa7b.svn-base | 22 + ...b475242d7cf6d7d15bf9027d44fb0d937.svn-base | Bin 0 -> 594 bytes ...0584d435d828ef5de4f77674a83263bb8.svn-base | 125 + ...77b1ce9e62cd1da95f4bf4b4ed541c6bc.svn-base | 68 + ...52bcb0bc748b05a1cc61ee30866daafd7.svn-base | Bin 0 -> 632 bytes ...636a34558113c721404418945b8e56c91.svn-base | 332 + ...5ab4064f04519ae106ca466582d2ac7e5.svn-base | 423 + ...15d1207571d9e353dc2c5df1680519705.svn-base | 494 + ...a75caa89bf75c31b5f7e161d0902d4df0.svn-base | 476 + ...8e73a3382a8b99b0c7f9415c61d4969e2.svn-base | Bin 0 -> 2680 bytes ...b02329a3cddec4cb05b3f8203ebe54f3b.svn-base | 13938 ++++++++++++++++ ...a648487333bc78b4c538dab35560a599e.svn-base | 808 + ...2814fec1e6efe8d3dd50d254be6c2d2cf.svn-base | 799 + ...ab3fb03c49fb89ace99c827577ac1b51e.svn-base | 78 + ...139e2f124eecaa0c0ed989eb491d47103.svn-base | 119 + ...18b6afa6132691fa024942e9ba90a47ea.svn-base | 22 + ...214a578a0166bb3fb818c40bcb9b64551.svn-base | 36 + ...404bbc6d31345b21e5f9f925cfbc89bfd.svn-base | 494 + ...e8b43209b06066f2ecaf3f998b7df8873.svn-base | 443 + ...23cab0e900000339a9533c3432fefb453.svn-base | 146 + ...1ca0cdc5df30fb3078709f101aae52814.svn-base | 146 + ...4d0f5cec97678e6318cfd58a52dd91ac5.svn-base | 196 + ...fa8b2f935befbab2f140f7811c2f328f3.svn-base | 743 + ...fc19f1229a7adb125494f762b3af3c433.svn-base | 180 + ...24dad3494ea7dda51fa45861ce620fbfe.svn-base | 103 + ...0770cb6b47ec46c007fe2f801e6bea20a.svn-base | 588 + ...3ef92b403036152dbf0630993b60b935a.svn-base | 112 + ...d60f4de756c31308bcb3bfd73bc326343.svn-base | 807 + ...94782b2632e1b467b7d0bab246120d6a6.svn-base | Bin 0 -> 566 bytes ...87f30f0505ba9def869abee7febe807ca.svn-base | 580 + ...79dd330c2701b8530cc7b83de4cc6e436.svn-base | Bin 0 -> 6941 bytes ...6e0bb2bb533bd0514297802279a7a9548.svn-base | 661 + ...6ac0f7de4a04810fdd21dc58507e75b7a.svn-base | 770 + ...cd5e15994d16ad1953379ae83b5586f4d.svn-base | Bin 0 -> 690 bytes ...5a02b05827170f777199e487814832d0b.svn-base | 46 + ...088e227c12dc7c6f5e769b8dab293e443.svn-base | 186 + ...4529c94983f8c09df2d7008599211a197.svn-base | 123 + ...2b5fa559692b43fcaf6bcae3ac88317ea.svn-base | 10661 ++++++++++++ ...64a7b26e1a5d20c3ef0be7a34de8425bd.svn-base | 331 + ...2c598986d1f196eb3dce7621e46811fbf.svn-base | 372 + ...fa1015f9389e1b76a509a716f53458390.svn-base | 76 + ...f06dd599b65006ec78ed8def8509fcb59.svn-base | 680 + ...abf1d93f4409d3be7e42e06780fae5444.svn-base | 14 + ...c52a1d4abf961ed668a307fd6c844989b.svn-base | 274 + ...7488634ff81dce36e8e504ebde3ca6645.svn-base | 361 + ...5554eeb3708a2c657c06325e72b5ed69a.svn-base | 600 + ...46b17a341e058f3f7b037abeeab54451f.svn-base | 451 + ...5df500aa57a6d67f16b943d6310677541.svn-base | 131 + ...7fe43ac27a1e092aadf5be141358fdcad.svn-base | 357 + ...9969318906c774fb4b8ed48f57b26bd2e.svn-base | 246 + ...42a5e7905879e908ff41b3d349ba16259.svn-base | 23 + ...b50295bc6da8a585dbe0854e75110d73f.svn-base | Bin 0 -> 7616 bytes ...10fca9333507b74653fa3fa5626d70bcb.svn-base | 582 + ...8c51b70771a15c7d88886bc004de7bf3c.svn-base | Bin 0 -> 531 bytes ...9cb4d7d5e8705f7017ffc5d463ddc6f50.svn-base | Bin 0 -> 6045 bytes ...2942fc6dadb1eb8f6835ee3e32e087d8b.svn-base | 113 + ...c2e82a4659297aec1bbe3510d788d0abc.svn-base | 332 + ...a46b124aedee39242167086d7d413688d.svn-base | 13 + ...08d9e38936e7db7be49d21d84bbd6993b.svn-base | 548 + ...927a8a586286f44884071823b4e7157f2.svn-base | 699 + ...6bfd424b1ebef1a3cb7bb5fbd5adae709.svn-base | 58 + ...a692270a63da1fa79e34d5dbd8c997da1.svn-base | 239 + ...7617b0f84d69a2cd21edd0351a6b612b6.svn-base | Bin 0 -> 8650 bytes ...41b8a49d1ccad5b5f1190711d28614824.svn-base | 503 + ...f53fd29097e3fb434b72b48dd3e8261d6.svn-base | 136 + ...7b4cb14c9ba2aa16accc9931395661634.svn-base | 248 + ...39f11c238f525577b2e57f3a4243092f3.svn-base | 361 + ...e3e18b6e9191e687d42afac2af7ccde5d.svn-base | 291 + ...c55573dbccefca22627683254c6a9558e.svn-base | 13 + ...4f2394cc9a55bad4dcb8373a4773a9e8d.svn-base | 543 + ...55322b26e2b3aabe8d7aea1306799358b.svn-base | 123 + ...efd7031da7a487467371dd43bc53d16fb.svn-base | Bin 0 -> 1851 bytes ...676b5a6b1918fe109ad96c0b450f5e41e.svn-base | 544 + ...fa2f3fff9c6d2c2212f7268048f3800c8.svn-base | 248 + ...965a4f1de7ee94506003f00d6fd1a1b52.svn-base | 65 + ...841e3ebbede64ae9c2c0607e51788fce5.svn-base | 341 + ...2198c24ab5a44ad5f9bf919ff85e5a8de.svn-base | 488 + ...9e62d44eaa0a39e2726a1d64f965076c2.svn-base | Bin 0 -> 604 bytes ...bf05f330381bafb9cfe51d3011ddaad1f.svn-base | 255 + ...8c1c0cfd63cb338533b1694fc5127df4f.svn-base | 8 + ...eeaa77eba2053ca96b6be338e18c9dbc4.svn-base | 517 + ...287a22b7dfb6c009541eb3f2394694324.svn-base | 206 + ...d4dcabe630cfce5020cf6665647d37cf8.svn-base | Bin 0 -> 722 bytes ...822f9fdba6db88456ceee5cbde66548df.svn-base | 355 + ...4df1687a6c22606513720c37d02ffdca2.svn-base | 626 + ...a82ef079712f7c61e3d23a3db3af2bb63.svn-base | 10 + ...fec70d95f486859ae5e4eb069531ffb8f.svn-base | 10 + ...f1aa17b5a49b1a7c627351960f034c692.svn-base | 685 + ...66fa06087905add48cb81aa2d9026e292.svn-base | 562 + ...35614977de712deec6093c3cdab3376cc.svn-base | 557 + ...00465583defcdb4d8d8d0aaced7ccb105.svn-base | Bin 0 -> 714 bytes ...b13a4a21eb6792b9f81193b9cbbe61ba0.svn-base | 17 + ...38c76c82a5786ecc40ad9aa24b44f72c7.svn-base | 146 + ...4c6a354b7b0e038f47c15645341b21da5.svn-base | Bin 0 -> 744 bytes ...9ad07813183df92364722e4163f71b7c7.svn-base | Bin 0 -> 7169 bytes ...c0935e97cbc3e7bd09f0cfefe45e24c25.svn-base | 341 + ...b44e0d45779295c279537b263c2dc97cf.svn-base | Bin 0 -> 87713 bytes ...ca7af2912a6c63da0b62c29f262dcca01.svn-base | 249 + ...e59cbee7cb55d34cb15069f10a371cecb.svn-base | 20 + ...8eeee98f5b7f6cfe439ab1ecd95b570ff.svn-base | 320 + ...a63c851a0a294afee120d787e09b5e8bd.svn-base | 299 + ...a782c22da4a9968bee74b032989ff4971.svn-base | Bin 0 -> 325 bytes ...19a4233bb3e70ed4b0a0ee7e6deb18db3.svn-base | Bin 0 -> 53985 bytes ...1441d7b8898128f16a90239d1db2d8809.svn-base | 72 + ...aca0a8a1c7800bfffeafe3d88117a7271.svn-base | 323 + ...d1a7b9e93f5f782f381e801cbc95d71aa.svn-base | 543 + ...71ccea6811a94479532405b8f63bf95a1.svn-base | Bin 0 -> 417 bytes ...e19dd77b689d05c0f64754172fb577dce.svn-base | 94 + ...ba2910f3b8a12a698618971a19587643c.svn-base | Bin 0 -> 34093 bytes ...971aab22562cffcd21e486d1f294dda1c.svn-base | 84 + ...dfea7fd8d3f18ae551a9c2e174eec28fb.svn-base | 9 + ...9bea78e48a1d31d9b5bf59be20af52e83.svn-base | 47 + ...ab7abc0eee826752a40f1b9890b4a2317.svn-base | 162 + ...8ad51bbe230fe1773c99246c19cee8053.svn-base | 11 + ...b800504f56ffbac3f3e169458a47836c4.svn-base | 124 + ...0ca0a52fe79b0f66ebacf9a963c3e6da9.svn-base | 464 + ...d514cb6350db7b53fd7613427f6fd7a8b.svn-base | 218 + ...22c098f845b4e4d70614d8d69d134227b.svn-base | 50 + ...1753e413ef430a8a8244b797bbea61b71.svn-base | 600 + ...b6f411d8de0386d4a60671460294cf04f.svn-base | Bin 0 -> 6994 bytes ...a2162c483073f884c54975954e78b80d3.svn-base | 122 + ...859e15980c1ae681ea143ed24743fecfe.svn-base | 811 + ...ce3775822d12cc0dba581f644d51af6b9.svn-base | 74 + ...443641cdd80b80d305266bf8f428d0724.svn-base | Bin 0 -> 54491 bytes ...fc87a97229a66bf21f9845700b76eacfe.svn-base | 9 + ...45126280b0428a576850a52c893f09b6e.svn-base | 139 + ...88ce1f2a8594c5e42dc0f3f0a873f154e.svn-base | Bin 0 -> 127984 bytes ...cfe7ea0b671e6a65ef89934efc7d63db6.svn-base | 12 + ...5bb65fb9a6492cc393a83e455fb7c3bbf.svn-base | 311 + ...60fcfccc759786455d216f154e0bf9f2e.svn-base | 488 + ...4b4cc710b49266d1c4dd34da6353de281.svn-base | 27 + ...2b73f4dfa1f7e6aeff9f0057847897ab8.svn-base | 177 + ...bd057b4a52d65bdaac436752e4f81f355.svn-base | 574 + ...4fcd7dfa1e729341743474865bc8c5dd6.svn-base | 161 + ...279fefcfd09c81ca942ee146f9520b823.svn-base | 488 + ...146f7970ab5d87d4dfb2670bf787b2b51.svn-base | 152 + ...17b4a5d451746a3613106e6e69658467c.svn-base | 43 + ...7e7803d93b126583f75a9b3ee27efb19f.svn-base | 626 + ...72e0bcf2a4bcf3ff25b877b754ff03772.svn-base | 528 + ...f19d2c5990fa81b6a88e739273d8d8db8.svn-base | 47 + ...e01e18630b324903ea7e84524c0f9a87f.svn-base | 16 + ...9145efaf10bdd202ceb2b935c528d1ac0.svn-base | Bin 0 -> 478 bytes ...dc9f303de5ba956d37ec6dbe983c3af81.svn-base | 133 + ...b3828de7454cbe53f8d93a2a0dce5bb0a.svn-base | 281 + ...7df97db3881c661d9be875918f3c85385.svn-base | 557 + ...4bd6649e778503f9c41b7fa6080911c46.svn-base | 196 + ...8f2f6f6f8598ae36b7e989492130897c0.svn-base | 360 + ...3cf98214ec22039515ac17184f220ec3d.svn-base | 67 + ...0a561d5f770674b7afd917a709efa3243.svn-base | 1226 ++ ...e9d851a8eae995fa08c7b76c53d9d0f1c.svn-base | 354 + ...51889f2edf5b84781cc47669f79ad2d71.svn-base | Bin 0 -> 195 bytes ...d6cab08e563e35db54e6aceb8d1d20959.svn-base | 21 + ...e3a74aa58271989abf24565430f29c0fe.svn-base | 328 + ...90c58c9eefaa090632414c791d4c9b203.svn-base | 218 + ...9ea5ac8a560952943f3720f734b12d38c.svn-base | 562 + ...c75c228317b760ba4bfba9b7ab9604624.svn-base | Bin 0 -> 569 bytes ...7fd5e71538983ac6a5b247b28b99f45bb.svn-base | 450 + ...b35d2be034e49d277d96f090b9e9e1275.svn-base | 567 + ...5cf97442e5660c2ab6ddce0573def3545.svn-base | 657 + ...e6ef7334759147ff8087706c31d4196e2.svn-base | 23 + ...c9c72b50234d0b11195ac034cf5078516.svn-base | 146 + ...c04de24f7943119fbbd28c023cb0f43da.svn-base | Bin 0 -> 5737 bytes ...f69f48477d66f8b63c484a477f5428b2a.svn-base | 117 + ...46c3917feff6c5208b46dfa66b913833d.svn-base | 7 + ...aadf727d1cd8da3de9d6d6d7de3ce4c5a.svn-base | 86 + ...3c0c3caffaf6bbb1cc52f85ce6514e108.svn-base | Bin 0 -> 40266 bytes ...f42396ec051973fe53074a4f6c751186f.svn-base | 323 + ...f9266b1ee43e218ddd34645a3804453c8.svn-base | 487 + ...f4405d6388b9685256903c40ba932bb37.svn-base | 685 + ...b13453ddaf54ad975a0cb00df5dca5452.svn-base | 354 + ...f06f1f617dd5d71d3e371f4e4baf50352.svn-base | 544 + ...2cbcdaae8f0b4a0e167b5568a8ef977fb.svn-base | 650 + ...bec270cca82dd0f96e263920a0f2c38cc.svn-base | 119 + ...b68f2fea7a729525ab3185fe6b10bff5e.svn-base | 249 + ...e7f24712061e6297ea88fec97089b86d7.svn-base | Bin 0 -> 558 bytes ...c1bfe8ecfedfa78521dd0313fb3b3e2b5.svn-base | 662 + ...39f47cc530432bf139009e22fb7a136be.svn-base | 10 + ...3070597b0bd9cb08f5dcbf7da71386d55.svn-base | Bin 0 -> 6769 bytes ...405df6dab837f06d52b46c790a6dc5693.svn-base | 106 + ...9f5dab3c32423b6992ccb7f087a9a1a91.svn-base | 267 + ...f804b4da0115e2b647e72bc3aa7cb02ca.svn-base | 8 + ...8b01d4eb19700014134fc7b3c51dead7a.svn-base | 341 + ...3f6fbeefe04200dd44ad065d7ebf0cac6.svn-base | 255 + ...b014adbd7941acec984b8eb2cfd3ca6d0.svn-base | 22 + ...d3e526d5e8537be9f114be2ce378bd2ae.svn-base | 36 + ...65de113e9d4f7a59e265cf70c33831658.svn-base | 152 + ...5f6f2a35e2982a7d514e3e3b633ba56bb.svn-base | 152 + ...a610cf87eabf48d3a66160870b924fc09.svn-base | 37 + ...b91f656390dedb0bd65d14307217a0133.svn-base | 249 + ...a0f0e6d0f39c42106627ece57d554301a.svn-base | 840 + ...97eefc8797d9752aa5bd71eecbbae833d.svn-base | 392 + ...6134d1022de69b8af3f2d025cc459256f.svn-base | 808 + ...86a77846d1830d4067baa1f1c4fc8096f.svn-base | 10 + ...79568a2db18ff9cf1af70acda5b689039.svn-base | 75 + ...4259466ee8af20e153767fe9c6a944a48.svn-base | 82 + ...ec6c51dc20bfe5d39854b16dcef41720f.svn-base | 91 + ...67488af2f6e78cade0690e283ca8c35c3.svn-base | 559 + ...1380a0842f4984c6c9987c50dcd3cce13.svn-base | 12 + ...5aa5d046f4595a5829560b2950584516d.svn-base | 152 + ...9078f2c13b69cfdf2b5bbf8cbcd18b516.svn-base | 595 + ...3fc872e7d99f3ea5a7aaa68d350c6be81.svn-base | Bin 0 -> 33752 bytes ...7bfb4d4d120b4e3a5cda61cb0e600095a.svn-base | 420 + ...3ac13a2cb1d8aba5f50c093d0c9dd4656.svn-base | 784 + ...872a816945da825f33b6421449f04c6a5.svn-base | 124 + ...793a408f6712daed89aff93fceb307dd4.svn-base | 131 + ...c1041e8dfcfdf1772925eafdf6083687b.svn-base | 333 + ...fa43fd896829fe01826203e4b189f2f97.svn-base | 54 + ...3f8e7bd504a1031649c77fa5185733cf6.svn-base | 210 + ...2e5acb8ad4e2ee80a5ff34b87b6b1eeef.svn-base | 714 + ...7ecef7aa6a1c51650d6019e06743675d7.svn-base | 10 + ...15aca8489d8fa7e63482d6fbfa5102627.svn-base | Bin 0 -> 28570 bytes ...b1d5e09d0ad685d203ae243422b1e0a9c.svn-base | 392 + ...4b29b2ef7aac423568db85b9483a7832b.svn-base | 146 + ...ae0202822e765f1b2f49d83d42ceb26c3.svn-base | 595 + ...fddfada5462ea8b9721080a173ead7b26.svn-base | Bin 0 -> 643 bytes ...21b0299e2ad42946f7e7a0449f8eafcdd.svn-base | 6 + ...b090a0cfde80773d33bea2e6d38079854.svn-base | 13 + ...a97370c06719da3dd98205af94dece868.svn-base | 372 + ...eb28bf0d72a7df9682d2c7b16d7f2ec2c.svn-base | 436 + ...a7640433a6b296869e2909925d7bac269.svn-base | 285 + ...03f040a058a8e4e46f9e17e334f119cc3.svn-base | 1 + ...b66ea7fcb99908fb95a7c385f447930f3.svn-base | 213 + ...9cd9301f3f99670a66ef37edc32ce5e2f.svn-base | 40 + ...d45fdaa316eec73cefdd385dc99fc2917.svn-base | 281 + ...ebb7bbd9ba6c14e57f81bcbf64d9a0104.svn-base | 59 + ...e8689d7304fdc94b963f2535036ccfb63.svn-base | 219 + ...ca8060154570f507bd4d8cd06cbd18074.svn-base | 152 + ...52a74261b72c3b836fa9db6e58e517d81.svn-base | 218 + ...a471e509b7f549cae0dbd267a44b1fcb9.svn-base | 154 + ...9742f9a90a67d53010ce60ba47c9a33e7.svn-base | 855 + ...d8153b9ad30f7794c1feeed1cd856499d.svn-base | 659 + ...0dbca31d4426fd3d71b45375e543a2974.svn-base | 400 + ...0a808e1cd46b96f74917cde397a04b04f.svn-base | 19 + ...da6b0e9b464d3074c30e75fc33415cf58.svn-base | 447 + ...fbc4c11ec7247b84389bef1cc79f1baa3.svn-base | 144 + ...41836a88c776e33f39d64834bc701c58d.svn-base | 450 + ...59f51a571122af9be2764ef324fda2118.svn-base | 478 + ...7b0724ca4fbd3b7f76c6db3bca8740946.svn-base | 689 + ...cf3884465bb40993493e90e1cb3ae1ab9.svn-base | 177 + ...6f0ede1eee96e768f815e089fe2c98007.svn-base | 70 + ...f6760c6675eb69043d40d36c87d3e6978.svn-base | Bin 0 -> 1925 bytes ...a2efca8d3d968674059b26209fea247a5.svn-base | 543 + ...70185317f19d3a42f15987626eefe138a.svn-base | 106 + ...1f37bc7de9a20036eca0674fada08b736.svn-base | 543 + ...5eb7edb60dd61840ac6ad5f666331b47d.svn-base | 784 + ...9dc65bfe923c7e4dfcb94d32a38c2520e.svn-base | 780 + ...dd6992baecd766acbb6911c1a843ec96d.svn-base | 89 + ...f2690b42ce5bb2204f6737db38a1e8e90.svn-base | 322 + ...e5e6b4b0d3255bfef95601890afd80709.svn-base | 0 ...5442f75520c4203b6e2a13592649d8777.svn-base | 12 + ...ee1d9de28902155b4ede19055d32ebf92.svn-base | 32 + ...9e6d07b6d619bab32ac670d7670539954.svn-base | Bin 0 -> 3068 bytes ...0f7d14723109172e52179244986d83fdd.svn-base | 242 + ...b330dcf34eccf0422fb280a8083c63699.svn-base | 265 + ...8a0a4b2416ca3216cdf096abe02af4194.svn-base | 518 + ...46faa862169651a9847a2a6d6ead0ca25.svn-base | 123 + ...0db9844d0b579dcefa37ea873aa9dc051.svn-base | 103 + ...76791b6ccbb9464cbe3013352828afe98.svn-base | Bin 0 -> 17637 bytes ...6e3d2e40cbbbdd829ae1b1abc3e9e51ef.svn-base | 233 + ...e6109e0e4c7e383ec4b426b17e64b5e7b.svn-base | 115 + ...7a6efb2c1e7a5c00d1144459f0cedcd05.svn-base | 511 + ...352ed92d147bf3879a7c1fe0c5d4eccf0.svn-base | 341 + ...bec983012ec1c88d40eaa2365fe19af11.svn-base | 361 + ...a46357ae3944a006b6be1abdcfc0a8078.svn-base | 807 + ...2b409c48b4067f28bd8977017962f2f1b.svn-base | Bin 0 -> 465 bytes ...2df5e6faf6a2f4f17ce7550119e3d1d8a.svn-base | 203 + ...83157231ab6a043ad9c7c511e05515a92.svn-base | 332 + ...f150c64903852af71300ffaf4696eded1.svn-base | 241 + ...9b25446f9d29711900b8e8f0c94913c30.svn-base | 44 + ...de7f666e6a2149feb793b6309388fd4ab.svn-base | 332 + ...aa411752f3307a2e3a1182dc66f8f4943.svn-base | Bin 0 -> 2193 bytes ...2ceb8139cc6d7771ecad981397efc4d2f.svn-base | 323 + ...11b54df04fcc6045b1f78c2013faebb72.svn-base | 43 + ...28e9fff99c06fed10909ad1c760f8e885.svn-base | 782 + ...798457155df12511588ebd4bf89126167.svn-base | 592 + ...a382866e564305f202104d73d4c3229a6.svn-base | 218 + ...7f4f381473458a35ba71aed6efbee6f42.svn-base | 111 + ...59761d40addb8fb09f4ac2953d55b7f91.svn-base | 844 + ...6ff52fbfe8c1be98042fbc4df0566f6b9.svn-base | 15 + ...0180ba5f5900a471918ec11ec33e6f116.svn-base | 803 + ...5ce34b4bc690fc9d28cc7f3a01b4c02a0.svn-base | 187 + ...d904bd0d1ef8056d04f48630395a1b2b7.svn-base | 494 + ...f066a65e1c2ecdfc66b798655798c4e0c.svn-base | 146 + ...6fbbbc292875def10e29fd50c894bfcfb.svn-base | 574 + ...f588f8c2e0ac3763dce31065bc0f786be.svn-base | Bin 0 -> 511 bytes ...abfb7f1f5ba9e1288870e754df4b80598.svn-base | Bin 0 -> 659 bytes ...4a3b298c3da050b529d29471c768b65b7.svn-base | 184 + ...bcafdd97a34ee5564180485534c193545.svn-base | 525 + ...9ae08bda9a1342929a3a3ae366a3f5ade.svn-base | 218 + ...e3554944b1c7e7ac1b55a6555327bf895.svn-base | 680 + ...39fc0c9d604ee0d5c08448afaa85eb812.svn-base | Bin 0 -> 2215 bytes ...44db0163f49fce72567f72fa5c02f30ba.svn-base | 254 + ...55282f3dc23845f22e38e56b79bbaad8d.svn-base | 277 + ...10e266a3b225bf458b0f147e4c7ee6aad.svn-base | 89 + ...4ae9f89ad72d7dea38ed38222ca429b1e.svn-base | 330 + ...eb753559c66791710356d9598fc281502.svn-base | Bin 0 -> 672 bytes ...a65250c92c88a2bbdcd7a0169f64425c2.svn-base | 343 + ...1a758c2998190b3b165163ec322b8b4f3.svn-base | 10 + ...e7c0fd6ddc324372fb05d37fd6dbf6a42.svn-base | Bin 0 -> 5508 bytes ...5a9901496b60b76c831a1da5fbcade1b6.svn-base | 162 + ...f065d5cdeeec0bb25766a251375867720.svn-base | 9 + ...8061f2ab08218d4609667d42e53a140dd.svn-base | 654 + ...a38e56fa50b421146ed1339afda1e2428.svn-base | 323 + ...69127fa66462082b2dcf875e66d8012a7.svn-base | 98 + ...4d1f68074151cb4b8aa3ad09ddc68ef53.svn-base | 43 + ...e6522dd1ba8a1d1422d29d73a5d5b9ef2.svn-base | 225 + ...a138c6044b29a6c02cd34f2062800429d.svn-base | 331 + ...312d2ac9739011da190a881b4b0baa1b4.svn-base | 423 + ...f161ce06615bd9bce9a08e1ae9e97cd68.svn-base | 177 + ...669d07db9fa8d704dde01d06d1afbe50b.svn-base | 64 + ...6e595ce84da3b4babe18bedced8e855b3.svn-base | Bin 0 -> 6260 bytes ...74583c99af12ff1ef3be128ef4941509e.svn-base | 281 + ...756a548727334f58eaaff7b590a6479e1.svn-base | Bin 0 -> 610 bytes ...c285107e7b850106228d6b363d1e8992d.svn-base | 36 + ...4009b38df0fa2d588cbfaba7e788f1775.svn-base | Bin 0 -> 720 bytes ...077cd233b932f8684c55871b4e058be66.svn-base | 782 + ...0cef6ae1e7487d6e19b9af81408fd9a4f.svn-base | 529 + ...bbc02fc452cf0a392aa24a529d87496de.svn-base | 143 + ...0177a510a151dfc6784454eb2e40d0971.svn-base | Bin 0 -> 24454 bytes .svn/tmp/svn-691095F0 | 146 + .svn/wc.db | Bin 0 -> 294912 bytes .svn/wc.db-journal | 0 index.html | 20 + mtRide.keystore | Bin 0 -> 2680 bytes package-lock.json | 13938 ++++++++++++++++ package.json | 82 + shims-uni.d.ts | 10 + sm.txt | 11 + src/App.vue | 124 + src/Service/BaseConfig.ts | 10 + src/Service/CN/CNRiderDataService.ts | 91 + src/Service/CN/CNRiderLoginService.ts | 58 + src/Service/CN/CNRiderOrderService.ts | 111 + src/Service/Comm/EventHandler.ts | 59 + src/Service/Comm/TwWebSocket.ts | 139 + src/Service/Im/ImConnectService.ts | 46 + src/Service/Service.ts | 392 + src/colorui/animation.css | 184 + src/colorui/components/cu-custom.vue | 65 + src/colorui/icon.css | 1226 ++ src/colorui/main.css | 3912 +++++ src/common/Common.ts | 13 + src/common/Domain/ResultData.ts | 10 + src/common/Unit/HttpRequest.ts | 64 + src/common/Unit/StorageAssist.ts | 14 + src/common/Unit/StoreAssist.ts | 13 + src/common/Unit/StringAssist.ts | 98 + src/common/Unit/UploadAssist.ts | 19 + src/components/ImageCropper.vue | 54 + src/components/liy-select/liy-select.vue | 299 + src/env.d.ts | 8 + src/main.ts | 13 + src/manifest.json | 152 + src/package.json | 16 + src/pages.json | 255 + src/pages/index/income.vue | 548 + src/pages/index/index.vue | 844 + src/pages/index/task.vue | 494 + src/pages/index/upApp.vue | 254 + src/pages/index/user.vue | 341 + src/pages/my/AbnormalList.vue | 450 + src/pages/my/abnormalDetail.vue | 488 + src/pages/my/authentication.vue | 528 + src/pages/my/check.vue | 213 + src/pages/my/completeData.vue | 661 + src/pages/my/edit.vue | 291 + src/pages/my/editPasssword.vue | 136 + src/pages/my/evaluate.vue | 335 + src/pages/my/login.vue | 218 + src/pages/my/myKF.vue | 196 + src/pages/my/noticeList.vue | 357 + src/pages/my/security.vue | 361 + src/pages/my/setConnect.vue | 186 + src/pages/my/statusContro.vue | 450 + src/pages/my/withDrowList.vue | 249 + src/pages/order/abnormal.vue | 557 + src/pages/order/finish.vue | 436 + src/pages/order/grabOrder.vue | 443 + src/pages/order/incomeDetail.vue | 714 + src/pages/order/navigation.vue | 36 + src/pages/order/orderChat.vue | 464 + src/pages/order/orderDetail.vue | 685 + src/pages/order/orderMap.vue | 177 + src/pages/order/upAbnormal.vue | 315 + src/pages/order/withdraw.vue | 600 + src/shime-uni.d.ts | 6 + src/static/dele/home/general.jpg | Bin 0 -> 7616 bytes src/static/dele/home/test.jpeg | Bin 0 -> 33752 bytes src/static/dele/logo.png | Bin 0 -> 17637 bytes src/static/index/home/custom.png | Bin 0 -> 659 bytes src/static/index/home/shop.png | Bin 0 -> 456 bytes src/static/index/home/system.png | Bin 0 -> 672 bytes src/static/index/income/order.png | Bin 0 -> 417 bytes src/static/index/logo/logo.png | Bin 0 -> 28570 bytes src/static/index/my/edit/photo.png | Bin 0 -> 558 bytes src/static/index/my/security/device.png | Bin 0 -> 195 bytes src/static/index/my/security/mima.png | Bin 0 -> 478 bytes src/static/index/my/security/password.png | Bin 0 -> 465 bytes src/static/index/my/security/phone.png | Bin 0 -> 325 bytes src/static/index/my/security/security.png | Bin 0 -> 813 bytes src/static/index/my/security/user.png | Bin 0 -> 659 bytes src/static/index/order/message.png | Bin 0 -> 720 bytes src/static/index/order/voice.png | Bin 0 -> 531 bytes src/static/index/system/upapphed.png | Bin 0 -> 13543 bytes src/static/index/system/updata.png | Bin 0 -> 127984 bytes src/static/index/task/fire.png | Bin 0 -> 278 bytes src/static/index/user/check.png | Bin 0 -> 643 bytes src/static/index/user/income.png | Bin 0 -> 511 bytes src/static/index/user/message.png | Bin 0 -> 474 bytes src/static/index/user/phone.png | Bin 0 -> 714 bytes src/static/index/user/ruler.png | Bin 0 -> 744 bytes src/static/index/user/security.png | Bin 0 -> 813 bytes src/static/index/user/task.png | Bin 0 -> 387 bytes src/static/index/user/user.png | Bin 0 -> 659 bytes src/static/index/user/warming.png | Bin 0 -> 604 bytes src/static/index/user/withdrow.png | Bin 0 -> 690 bytes src/static/liy-select/images/check_mark.png | Bin 0 -> 34093 bytes src/static/liy-select/images/complete.png | Bin 0 -> 54491 bytes src/static/liy-select/images/loading.png | Bin 0 -> 24454 bytes src/static/liy-select/images/search.png | Bin 0 -> 40266 bytes src/static/liy-select/images/void.png | Bin 0 -> 53985 bytes src/static/order.mp3 | Bin 0 -> 87713 bytes src/static/tab/home.png | Bin 0 -> 2215 bytes src/static/tab/homed.png | Bin 0 -> 2193 bytes src/static/tab/income.png | Bin 0 -> 1925 bytes src/static/tab/incomed.png | Bin 0 -> 1851 bytes src/static/tab/task.png | Bin 0 -> 632 bytes src/static/tab/tasked.png | Bin 0 -> 594 bytes src/static/tab/user.png | Bin 0 -> 3068 bytes src/static/tab/usered.png | Bin 0 -> 2943 bytes src/types/uview.d.ts | 1 + src/uni.scss | 78 + .../lime-echart/components/l-echart/canvas.js | 372 + .../components/l-echart/l-echart.vue | 517 + .../lime-echart/components/l-echart/utils.js | 74 + .../components/lime-echart/index.vue | 0 .../piaoyi-cityPicker/changelog.md | 22 + .../components/piaoyi-cityPicker/cityData.js | 10661 ++++++++++++ .../piaoyi-cityPicker/piaoyi-cityPicker.vue | 281 + .../piaoyi-cityPicker/package.json | 17 + src/uni_modules/piaoyi-cityPicker/readme.md | 106 + src/uni_modules/qf-image-cropper/changelog.md | 72 + .../qf-image-cropper.render.js | 855 + .../qf-image-cropper/qf-image-cropper.vue | 743 + .../qf-image-cropper/qf-image-cropper.wxs | 727 + src/uni_modules/qf-image-cropper/package.json | 81 + src/uni_modules/qf-image-cropper/readme.md | 97 + src/uni_modules/uni-calendar/changelog.md | 30 + .../components/uni-calendar/calendar.js | 544 + .../components/uni-calendar/i18n/en.json | 12 + .../components/uni-calendar/i18n/index.js | 8 + .../components/uni-calendar/i18n/zh-Hans.json | 12 + .../components/uni-calendar/i18n/zh-Hant.json | 12 + .../uni-calendar/uni-calendar-item.vue | 187 + .../components/uni-calendar/uni-calendar.vue | 567 + .../components/uni-calendar/util.js | 360 + src/uni_modules/uni-calendar/package.json | 86 + src/uni_modules/uni-calendar/readme.md | 103 + tsconfig.json | 13 + unpackage/res/icons/1024x1024.png | Bin 0 -> 210169 bytes unpackage/res/icons/120x120.png | Bin 0 -> 9679 bytes unpackage/res/icons/144x144.png | Bin 0 -> 12288 bytes unpackage/res/icons/152x152.png | Bin 0 -> 13159 bytes unpackage/res/icons/167x167.png | Bin 0 -> 14839 bytes unpackage/res/icons/180x180.png | Bin 0 -> 16190 bytes unpackage/res/icons/192x192.png | Bin 0 -> 18040 bytes unpackage/res/icons/20x20.png | Bin 0 -> 995 bytes unpackage/res/icons/29x29.png | Bin 0 -> 1646 bytes unpackage/res/icons/40x40.png | Bin 0 -> 2477 bytes unpackage/res/icons/58x58.png | Bin 0 -> 3950 bytes unpackage/res/icons/60x60.png | Bin 0 -> 4154 bytes unpackage/res/icons/72x72.png | Bin 0 -> 5150 bytes unpackage/res/icons/76x76.png | Bin 0 -> 5504 bytes unpackage/res/icons/80x80.png | Bin 0 -> 5897 bytes unpackage/res/icons/87x87.png | Bin 0 -> 6478 bytes unpackage/res/icons/96x96.png | Bin 0 -> 7432 bytes vite.config.ts | 7 + 529 files changed, 169918 insertions(+) create mode 100644 .gitignore create mode 100644 .hbuilderx/launch.json create mode 100644 .svn/entries create mode 100644 .svn/format create mode 100644 .svn/pristine/00/00b664da992679974870eb695fc57859039eb83e.svn-base create mode 100644 .svn/pristine/01/01d756165f2a10f8d8f442f0e1ffd1c4cb1f81a7.svn-base create mode 100644 .svn/pristine/02/028c92269dd214df7865c8881ee4135fb9398d2b.svn-base create mode 100644 .svn/pristine/03/032e9fccb6ee95a4c64f0e8770ebea0818285145.svn-base create mode 100644 .svn/pristine/04/043dbefd530e1607b6ed9689b646fc027aa61d33.svn-base create mode 100644 .svn/pristine/04/04539d51832126892d0d9ba205c9d9e3b74801e8.svn-base create mode 100644 .svn/pristine/04/045ae342eb245c167b9819e95b454e60b65e2198.svn-base create mode 100644 .svn/pristine/06/060e2cc7f51c4360b8778005b7a35da51a2f5240.svn-base create mode 100644 .svn/pristine/06/061d36348da2982b8e3993cdc30a9e3c902b1d6f.svn-base create mode 100644 .svn/pristine/06/0623883f57b2d6ac9d93d5e62f935971fa209655.svn-base create mode 100644 .svn/pristine/06/067705ad461ae3ed9159a006e5506aa25c7bbc83.svn-base create mode 100644 .svn/pristine/06/06f82fe98529cd0a1b4156ca35576943d8790874.svn-base create mode 100644 .svn/pristine/07/0759c8a3a255a890461a1cf8acf1979980d1d5d1.svn-base create mode 100644 .svn/pristine/08/084fa4a6cc1267ccd5876cffbbb894512771ee34.svn-base create mode 100644 .svn/pristine/09/098e0d8bc6bbae0e859744bfd14155f6bb7e651b.svn-base create mode 100644 .svn/pristine/09/09da90663c27578e353de3a44a04075215a655a6.svn-base create mode 100644 .svn/pristine/0a/0acefbcbf9daddd67a9717d1bd27b41d9f0e30d9.svn-base create mode 100644 .svn/pristine/0b/0b0f655c726f609b3727765bf906f8a0cd01ab27.svn-base create mode 100644 .svn/pristine/0b/0b5124427b631047fe9ec6c709d22640321cc313.svn-base create mode 100644 .svn/pristine/0b/0bc246c168cc8bbc20d24f8f5e3c2f241ae75b5c.svn-base create mode 100644 .svn/pristine/0d/0db2c30e2635710df480df8f2a9965f5e11ee10c.svn-base create mode 100644 .svn/pristine/0d/0dee1b91b0ee772ba788ac186336ecd95bb24359.svn-base create mode 100644 .svn/pristine/0e/0e487e4e3058935773c7850a58fb72b6c6527434.svn-base create mode 100644 .svn/pristine/0f/0f01e85c5881090dd08683f19efeb37f1c1436f4.svn-base create mode 100644 .svn/pristine/0f/0f7d1d8c26c662d890046b98c3fa2582463e8057.svn-base create mode 100644 .svn/pristine/0f/0face613508db1f0145f4ed2e9e305883db8451d.svn-base create mode 100644 .svn/pristine/0f/0fde8506758cd5e9f7113a4a2b1ce6e714ef4027.svn-base create mode 100644 .svn/pristine/10/101effb12f92f6daf4155b938021c693ab3e8582.svn-base create mode 100644 .svn/pristine/10/10e2b77417cefcae17c6f64bbdb3ab61e9478fff.svn-base create mode 100644 .svn/pristine/11/111d5e33d6c37cd8430893f834b62f1cabecdcc4.svn-base create mode 100644 .svn/pristine/12/12cc1f30864fa4fbb3e4529a755dce75b6ff95c4.svn-base create mode 100644 .svn/pristine/12/12e3d1ab0fd1e1053a2010ad29a968c5bbb700a4.svn-base create mode 100644 .svn/pristine/14/14a11b3f1ba4a494dd6d6c5dcc912484322fa129.svn-base create mode 100644 .svn/pristine/15/15136c2129037012583da60bb0aae9aa0b0ac61c.svn-base create mode 100644 .svn/pristine/15/15d3b0179a5cfd146207d9f18a46a9cb0c47115a.svn-base create mode 100644 .svn/pristine/16/1675f04207c6a03e2b4369cafcbb8cc9baf32511.svn-base create mode 100644 .svn/pristine/17/170698abbbc39ae1dc9916b328c9dcf9c710e0ce.svn-base create mode 100644 .svn/pristine/19/1951d3cfd654cf78e7218300b3d76d316579ccee.svn-base create mode 100644 .svn/pristine/19/19606b6d1588158aadde45ed00d1d0ae9e6800ac.svn-base create mode 100644 .svn/pristine/19/198cfc9e31e11e0980337a2ab71a180baacabe3a.svn-base create mode 100644 .svn/pristine/19/19e57e9c88c66aa9fdb41418b6259fa3f77ba83d.svn-base create mode 100644 .svn/pristine/19/19f16508cf1144513459d4b24925e0f8ca2e7201.svn-base create mode 100644 .svn/pristine/1a/1a4253c24bc0f4113df9bcac07adfc7bfcfa4bd8.svn-base create mode 100644 .svn/pristine/1a/1ab988c68337d80e4fac1e3809dcfe7c8ca8edbc.svn-base create mode 100644 .svn/pristine/1b/1b108bccc8d2746c4c2467a7c3e51570356556a9.svn-base create mode 100644 .svn/pristine/1b/1ba2ef9a72dd98d50ef9b5126847cba897b5bd14.svn-base create mode 100644 .svn/pristine/1c/1c6826d4892d499a19746d845d36640020983c7b.svn-base create mode 100644 .svn/pristine/1c/1c7b87b064d97bab2cc2c4331d4624361cc002a5.svn-base create mode 100644 .svn/pristine/1c/1c832497c83890a604b88566a85304efacb9aa7b.svn-base create mode 100644 .svn/pristine/1c/1cfbf89b475242d7cf6d7d15bf9027d44fb0d937.svn-base create mode 100644 .svn/pristine/1c/1cff3a60584d435d828ef5de4f77674a83263bb8.svn-base create mode 100644 .svn/pristine/1d/1d56e2f77b1ce9e62cd1da95f4bf4b4ed541c6bc.svn-base create mode 100644 .svn/pristine/1e/1e2334252bcb0bc748b05a1cc61ee30866daafd7.svn-base create mode 100644 .svn/pristine/1e/1e83455636a34558113c721404418945b8e56c91.svn-base create mode 100644 .svn/pristine/1e/1e8ba5b5ab4064f04519ae106ca466582d2ac7e5.svn-base create mode 100644 .svn/pristine/1e/1e9622b15d1207571d9e353dc2c5df1680519705.svn-base create mode 100644 .svn/pristine/1e/1ee11f3a75caa89bf75c31b5f7e161d0902d4df0.svn-base create mode 100644 .svn/pristine/1f/1f597ce8e73a3382a8b99b0c7f9415c61d4969e2.svn-base create mode 100644 .svn/pristine/1f/1ffed74b02329a3cddec4cb05b3f8203ebe54f3b.svn-base create mode 100644 .svn/pristine/21/21484cfa648487333bc78b4c538dab35560a599e.svn-base create mode 100644 .svn/pristine/21/21606d92814fec1e6efe8d3dd50d254be6c2d2cf.svn-base create mode 100644 .svn/pristine/23/237368bab3fb03c49fb89ace99c827577ac1b51e.svn-base create mode 100644 .svn/pristine/23/23bbf81139e2f124eecaa0c0ed989eb491d47103.svn-base create mode 100644 .svn/pristine/24/24364fa18b6afa6132691fa024942e9ba90a47ea.svn-base create mode 100644 .svn/pristine/24/24f12ce214a578a0166bb3fb818c40bcb9b64551.svn-base create mode 100644 .svn/pristine/25/25ecf98404bbc6d31345b21e5f9f925cfbc89bfd.svn-base create mode 100644 .svn/pristine/26/26636bbe8b43209b06066f2ecaf3f998b7df8873.svn-base create mode 100644 .svn/pristine/27/274b17a23cab0e900000339a9533c3432fefb453.svn-base create mode 100644 .svn/pristine/2c/2c5ebc61ca0cdc5df30fb3078709f101aae52814.svn-base create mode 100644 .svn/pristine/2d/2dc87d14d0f5cec97678e6318cfd58a52dd91ac5.svn-base create mode 100644 .svn/pristine/2e/2ecb431fa8b2f935befbab2f140f7811c2f328f3.svn-base create mode 100644 .svn/pristine/2e/2ed776efc19f1229a7adb125494f762b3af3c433.svn-base create mode 100644 .svn/pristine/31/316095a24dad3494ea7dda51fa45861ce620fbfe.svn-base create mode 100644 .svn/pristine/31/319c5340770cb6b47ec46c007fe2f801e6bea20a.svn-base create mode 100644 .svn/pristine/32/32212e03ef92b403036152dbf0630993b60b935a.svn-base create mode 100644 .svn/pristine/32/32316c6d60f4de756c31308bcb3bfd73bc326343.svn-base create mode 100644 .svn/pristine/32/324fe6f94782b2632e1b467b7d0bab246120d6a6.svn-base create mode 100644 .svn/pristine/32/32b665c87f30f0505ba9def869abee7febe807ca.svn-base create mode 100644 .svn/pristine/35/356e12f79dd330c2701b8530cc7b83de4cc6e436.svn-base create mode 100644 .svn/pristine/36/36becca6e0bb2bb533bd0514297802279a7a9548.svn-base create mode 100644 .svn/pristine/37/376c5da6ac0f7de4a04810fdd21dc58507e75b7a.svn-base create mode 100644 .svn/pristine/38/38be20acd5e15994d16ad1953379ae83b5586f4d.svn-base create mode 100644 .svn/pristine/38/38c74715a02b05827170f777199e487814832d0b.svn-base create mode 100644 .svn/pristine/39/3954ce2088e227c12dc7c6f5e769b8dab293e443.svn-base create mode 100644 .svn/pristine/39/39a85dd4529c94983f8c09df2d7008599211a197.svn-base create mode 100644 .svn/pristine/39/39b8e7d2b5fa559692b43fcaf6bcae3ac88317ea.svn-base create mode 100644 .svn/pristine/39/39db0aa64a7b26e1a5d20c3ef0be7a34de8425bd.svn-base create mode 100644 .svn/pristine/3a/3a3c5362c598986d1f196eb3dce7621e46811fbf.svn-base create mode 100644 .svn/pristine/3a/3a6dbb4fa1015f9389e1b76a509a716f53458390.svn-base create mode 100644 .svn/pristine/3a/3a8b641f06dd599b65006ec78ed8def8509fcb59.svn-base create mode 100644 .svn/pristine/3b/3b59f0aabf1d93f4409d3be7e42e06780fae5444.svn-base create mode 100644 .svn/pristine/3b/3bf9c56c52a1d4abf961ed668a307fd6c844989b.svn-base create mode 100644 .svn/pristine/3c/3cf0b677488634ff81dce36e8e504ebde3ca6645.svn-base create mode 100644 .svn/pristine/3d/3d6ab2f5554eeb3708a2c657c06325e72b5ed69a.svn-base create mode 100644 .svn/pristine/3e/3e1bcc346b17a341e058f3f7b037abeeab54451f.svn-base create mode 100644 .svn/pristine/3f/3f083655df500aa57a6d67f16b943d6310677541.svn-base create mode 100644 .svn/pristine/3f/3f1979f7fe43ac27a1e092aadf5be141358fdcad.svn-base create mode 100644 .svn/pristine/3f/3f4d0b19969318906c774fb4b8ed48f57b26bd2e.svn-base create mode 100644 .svn/pristine/3f/3fe5b4942a5e7905879e908ff41b3d349ba16259.svn-base create mode 100644 .svn/pristine/40/40bd542b50295bc6da8a585dbe0854e75110d73f.svn-base create mode 100644 .svn/pristine/41/41a0fe910fca9333507b74653fa3fa5626d70bcb.svn-base create mode 100644 .svn/pristine/42/426321a8c51b70771a15c7d88886bc004de7bf3c.svn-base create mode 100644 .svn/pristine/42/42a520f9cb4d7d5e8705f7017ffc5d463ddc6f50.svn-base create mode 100644 .svn/pristine/44/440bfa12942fc6dadb1eb8f6835ee3e32e087d8b.svn-base create mode 100644 .svn/pristine/47/474f472c2e82a4659297aec1bbe3510d788d0abc.svn-base create mode 100644 .svn/pristine/48/487ecf7a46b124aedee39242167086d7d413688d.svn-base create mode 100644 .svn/pristine/48/48c6a4808d9e38936e7db7be49d21d84bbd6993b.svn-base create mode 100644 .svn/pristine/49/495fa74927a8a586286f44884071823b4e7157f2.svn-base create mode 100644 .svn/pristine/4a/4a12f9b6bfd424b1ebef1a3cb7bb5fbd5adae709.svn-base create mode 100644 .svn/pristine/4a/4ac36dba692270a63da1fa79e34d5dbd8c997da1.svn-base create mode 100644 .svn/pristine/4a/4ae3b267617b0f84d69a2cd21edd0351a6b612b6.svn-base create mode 100644 .svn/pristine/4c/4c0eb4b41b8a49d1ccad5b5f1190711d28614824.svn-base create mode 100644 .svn/pristine/4c/4c97a03f53fd29097e3fb434b72b48dd3e8261d6.svn-base create mode 100644 .svn/pristine/4d/4d4b9a37b4cb14c9ba2aa16accc9931395661634.svn-base create mode 100644 .svn/pristine/4e/4e3eaba39f11c238f525577b2e57f3a4243092f3.svn-base create mode 100644 .svn/pristine/4f/4f10145e3e18b6e9191e687d42afac2af7ccde5d.svn-base create mode 100644 .svn/pristine/4f/4f52bf6c55573dbccefca22627683254c6a9558e.svn-base create mode 100644 .svn/pristine/50/503f3354f2394cc9a55bad4dcb8373a4773a9e8d.svn-base create mode 100644 .svn/pristine/50/507186555322b26e2b3aabe8d7aea1306799358b.svn-base create mode 100644 .svn/pristine/50/50c609aefd7031da7a487467371dd43bc53d16fb.svn-base create mode 100644 .svn/pristine/51/515440b676b5a6b1918fe109ad96c0b450f5e41e.svn-base create mode 100644 .svn/pristine/52/52232a5fa2f3fff9c6d2c2212f7268048f3800c8.svn-base create mode 100644 .svn/pristine/52/522f8e2965a4f1de7ee94506003f00d6fd1a1b52.svn-base create mode 100644 .svn/pristine/52/52bd68a841e3ebbede64ae9c2c0607e51788fce5.svn-base create mode 100644 .svn/pristine/55/55347ec2198c24ab5a44ad5f9bf919ff85e5a8de.svn-base create mode 100644 .svn/pristine/55/555bb6e9e62d44eaa0a39e2726a1d64f965076c2.svn-base create mode 100644 .svn/pristine/55/55a07ebbf05f330381bafb9cfe51d3011ddaad1f.svn-base create mode 100644 .svn/pristine/55/55d24fd8c1c0cfd63cb338533b1694fc5127df4f.svn-base create mode 100644 .svn/pristine/56/5613a3deeaa77eba2053ca96b6be338e18c9dbc4.svn-base create mode 100644 .svn/pristine/56/566d116287a22b7dfb6c009541eb3f2394694324.svn-base create mode 100644 .svn/pristine/56/56fe667d4dcabe630cfce5020cf6665647d37cf8.svn-base create mode 100644 .svn/pristine/57/575d240822f9fdba6db88456ceee5cbde66548df.svn-base create mode 100644 .svn/pristine/57/577920d4df1687a6c22606513720c37d02ffdca2.svn-base create mode 100644 .svn/pristine/57/579dfcca82ef079712f7c61e3d23a3db3af2bb63.svn-base create mode 100644 .svn/pristine/57/57a7eb2fec70d95f486859ae5e4eb069531ffb8f.svn-base create mode 100644 .svn/pristine/57/57a9190f1aa17b5a49b1a7c627351960f034c692.svn-base create mode 100644 .svn/pristine/57/57bc40c66fa06087905add48cb81aa2d9026e292.svn-base create mode 100644 .svn/pristine/58/583b89735614977de712deec6093c3cdab3376cc.svn-base create mode 100644 .svn/pristine/58/585a82e00465583defcdb4d8d8d0aaced7ccb105.svn-base create mode 100644 .svn/pristine/58/589b207b13a4a21eb6792b9f81193b9cbbe61ba0.svn-base create mode 100644 .svn/pristine/58/58ac06a38c76c82a5786ecc40ad9aa24b44f72c7.svn-base create mode 100644 .svn/pristine/5a/5a56d454c6a354b7b0e038f47c15645341b21da5.svn-base create mode 100644 .svn/pristine/5a/5acba559ad07813183df92364722e4163f71b7c7.svn-base create mode 100644 .svn/pristine/5c/5c235cac0935e97cbc3e7bd09f0cfefe45e24c25.svn-base create mode 100644 .svn/pristine/5e/5e39abfb44e0d45779295c279537b263c2dc97cf.svn-base create mode 100644 .svn/pristine/5e/5ebec01ca7af2912a6c63da0b62c29f262dcca01.svn-base create mode 100644 .svn/pristine/5f/5fdc9c9e59cbee7cb55d34cb15069f10a371cecb.svn-base create mode 100644 .svn/pristine/60/600b2f38eeee98f5b7f6cfe439ab1ecd95b570ff.svn-base create mode 100644 .svn/pristine/60/6094c8ea63c851a0a294afee120d787e09b5e8bd.svn-base create mode 100644 .svn/pristine/60/60e0264a782c22da4a9968bee74b032989ff4971.svn-base create mode 100644 .svn/pristine/61/610b70719a4233bb3e70ed4b0a0ee7e6deb18db3.svn-base create mode 100644 .svn/pristine/61/613643d1441d7b8898128f16a90239d1db2d8809.svn-base create mode 100644 .svn/pristine/61/61c87aaaca0a8a1c7800bfffeafe3d88117a7271.svn-base create mode 100644 .svn/pristine/62/62eb723d1a7b9e93f5f782f381e801cbc95d71aa.svn-base create mode 100644 .svn/pristine/65/651a12271ccea6811a94479532405b8f63bf95a1.svn-base create mode 100644 .svn/pristine/66/6694a14e19dd77b689d05c0f64754172fb577dce.svn-base create mode 100644 .svn/pristine/67/6727f30ba2910f3b8a12a698618971a19587643c.svn-base create mode 100644 .svn/pristine/68/689ac86971aab22562cffcd21e486d1f294dda1c.svn-base create mode 100644 .svn/pristine/69/69abeb8dfea7fd8d3f18ae551a9c2e174eec28fb.svn-base create mode 100644 .svn/pristine/6a/6a044509bea78e48a1d31d9b5bf59be20af52e83.svn-base create mode 100644 .svn/pristine/6a/6a1b251ab7abc0eee826752a40f1b9890b4a2317.svn-base create mode 100644 .svn/pristine/6a/6a321758ad51bbe230fe1773c99246c19cee8053.svn-base create mode 100644 .svn/pristine/6b/6b00584b800504f56ffbac3f3e169458a47836c4.svn-base create mode 100644 .svn/pristine/6c/6cd54d70ca0a52fe79b0f66ebacf9a963c3e6da9.svn-base create mode 100644 .svn/pristine/6d/6dc4977d514cb6350db7b53fd7613427f6fd7a8b.svn-base create mode 100644 .svn/pristine/6d/6dc812e22c098f845b4e4d70614d8d69d134227b.svn-base create mode 100644 .svn/pristine/6e/6e573c01753e413ef430a8a8244b797bbea61b71.svn-base create mode 100644 .svn/pristine/6f/6f92b8fb6f411d8de0386d4a60671460294cf04f.svn-base create mode 100644 .svn/pristine/6f/6fb8a00a2162c483073f884c54975954e78b80d3.svn-base create mode 100644 .svn/pristine/6f/6fc132d859e15980c1ae681ea143ed24743fecfe.svn-base create mode 100644 .svn/pristine/6f/6fced0dce3775822d12cc0dba581f644d51af6b9.svn-base create mode 100644 .svn/pristine/70/7016112443641cdd80b80d305266bf8f428d0724.svn-base create mode 100644 .svn/pristine/72/72d947cfc87a97229a66bf21f9845700b76eacfe.svn-base create mode 100644 .svn/pristine/72/72fc59a45126280b0428a576850a52c893f09b6e.svn-base create mode 100644 .svn/pristine/76/768678988ce1f2a8594c5e42dc0f3f0a873f154e.svn-base create mode 100644 .svn/pristine/76/76b4d72cfe7ea0b671e6a65ef89934efc7d63db6.svn-base create mode 100644 .svn/pristine/78/7819f7d5bb65fb9a6492cc393a83e455fb7c3bbf.svn-base create mode 100644 .svn/pristine/79/79169f960fcfccc759786455d216f154e0bf9f2e.svn-base create mode 100644 .svn/pristine/79/79a03624b4cc710b49266d1c4dd34da6353de281.svn-base create mode 100644 .svn/pristine/7d/7dbfacf2b73f4dfa1f7e6aeff9f0057847897ab8.svn-base create mode 100644 .svn/pristine/7e/7e5eea0bd057b4a52d65bdaac436752e4f81f355.svn-base create mode 100644 .svn/pristine/80/808d2a64fcd7dfa1e729341743474865bc8c5dd6.svn-base create mode 100644 .svn/pristine/80/80cfc8b279fefcfd09c81ca942ee146f9520b823.svn-base create mode 100644 .svn/pristine/80/80d77e0146f7970ab5d87d4dfb2670bf787b2b51.svn-base create mode 100644 .svn/pristine/82/82d277d17b4a5d451746a3613106e6e69658467c.svn-base create mode 100644 .svn/pristine/84/84f68e67e7803d93b126583f75a9b3ee27efb19f.svn-base create mode 100644 .svn/pristine/85/857bec072e0bcf2a4bcf3ff25b877b754ff03772.svn-base create mode 100644 .svn/pristine/85/85cbc89f19d2c5990fa81b6a88e739273d8d8db8.svn-base create mode 100644 .svn/pristine/88/88e0c1ae01e18630b324903ea7e84524c0f9a87f.svn-base create mode 100644 .svn/pristine/89/89099eb9145efaf10bdd202ceb2b935c528d1ac0.svn-base create mode 100644 .svn/pristine/89/89b41dedc9f303de5ba956d37ec6dbe983c3af81.svn-base create mode 100644 .svn/pristine/8b/8b798e3b3828de7454cbe53f8d93a2a0dce5bb0a.svn-base create mode 100644 .svn/pristine/8b/8bad7f57df97db3881c661d9be875918f3c85385.svn-base create mode 100644 .svn/pristine/8c/8c3cf514bd6649e778503f9c41b7fa6080911c46.svn-base create mode 100644 .svn/pristine/8d/8d0f3b48f2f6f6f8598ae36b7e989492130897c0.svn-base create mode 100644 .svn/pristine/8d/8df84ae3cf98214ec22039515ac17184f220ec3d.svn-base create mode 100644 .svn/pristine/91/912eb040a561d5f770674b7afd917a709efa3243.svn-base create mode 100644 .svn/pristine/91/9144e2ee9d851a8eae995fa08c7b76c53d9d0f1c.svn-base create mode 100644 .svn/pristine/92/9259f6851889f2edf5b84781cc47669f79ad2d71.svn-base create mode 100644 .svn/pristine/92/926d6e6d6cab08e563e35db54e6aceb8d1d20959.svn-base create mode 100644 .svn/pristine/92/9271663e3a74aa58271989abf24565430f29c0fe.svn-base create mode 100644 .svn/pristine/92/929ffbc90c58c9eefaa090632414c791d4c9b203.svn-base create mode 100644 .svn/pristine/94/942fb589ea5ac8a560952943f3720f734b12d38c.svn-base create mode 100644 .svn/pristine/94/94da867c75c228317b760ba4bfba9b7ab9604624.svn-base create mode 100644 .svn/pristine/95/95419527fd5e71538983ac6a5b247b28b99f45bb.svn-base create mode 100644 .svn/pristine/95/956b4c8b35d2be034e49d277d96f090b9e9e1275.svn-base create mode 100644 .svn/pristine/95/958e8c25cf97442e5660c2ab6ddce0573def3545.svn-base create mode 100644 .svn/pristine/97/9717027e6ef7334759147ff8087706c31d4196e2.svn-base create mode 100644 .svn/pristine/97/97414a4c9c72b50234d0b11195ac034cf5078516.svn-base create mode 100644 .svn/pristine/97/9764106c04de24f7943119fbbd28c023cb0f43da.svn-base create mode 100644 .svn/pristine/99/99647caf69f48477d66f8b63c484a477f5428b2a.svn-base create mode 100644 .svn/pristine/99/997992546c3917feff6c5208b46dfa66b913833d.svn-base create mode 100644 .svn/pristine/9a/9aafe50aadf727d1cd8da3de9d6d6d7de3ce4c5a.svn-base create mode 100644 .svn/pristine/9b/9b753153c0c3caffaf6bbb1cc52f85ce6514e108.svn-base create mode 100644 .svn/pristine/9d/9d53ac2f42396ec051973fe53074a4f6c751186f.svn-base create mode 100644 .svn/pristine/9d/9d93df6f9266b1ee43e218ddd34645a3804453c8.svn-base create mode 100644 .svn/pristine/9f/9fc89bdf4405d6388b9685256903c40ba932bb37.svn-base create mode 100644 .svn/pristine/a0/a023913b13453ddaf54ad975a0cb00df5dca5452.svn-base create mode 100644 .svn/pristine/a1/a130821f06f1f617dd5d71d3e371f4e4baf50352.svn-base create mode 100644 .svn/pristine/a1/a1438cc2cbcdaae8f0b4a0e167b5568a8ef977fb.svn-base create mode 100644 .svn/pristine/a1/a1ddd4dbec270cca82dd0f96e263920a0f2c38cc.svn-base create mode 100644 .svn/pristine/a2/a20b86fb68f2fea7a729525ab3185fe6b10bff5e.svn-base create mode 100644 .svn/pristine/a2/a22ce39e7f24712061e6297ea88fec97089b86d7.svn-base create mode 100644 .svn/pristine/a3/a393967c1bfe8ecfedfa78521dd0313fb3b3e2b5.svn-base create mode 100644 .svn/pristine/a5/a53204d39f47cc530432bf139009e22fb7a136be.svn-base create mode 100644 .svn/pristine/a5/a5755a73070597b0bd9cb08f5dcbf7da71386d55.svn-base create mode 100644 .svn/pristine/a5/a5a09f9405df6dab837f06d52b46c790a6dc5693.svn-base create mode 100644 .svn/pristine/a6/a6317bb9f5dab3c32423b6992ccb7f087a9a1a91.svn-base create mode 100644 .svn/pristine/a7/a7419f7f804b4da0115e2b647e72bc3aa7cb02ca.svn-base create mode 100644 .svn/pristine/a8/a8768c38b01d4eb19700014134fc7b3c51dead7a.svn-base create mode 100644 .svn/pristine/a8/a8bf4493f6fbeefe04200dd44ad065d7ebf0cac6.svn-base create mode 100644 .svn/pristine/a9/a96729cb014adbd7941acec984b8eb2cfd3ca6d0.svn-base create mode 100644 .svn/pristine/a9/a9e51e7d3e526d5e8537be9f114be2ce378bd2ae.svn-base create mode 100644 .svn/pristine/aa/aaa0f7f65de113e9d4f7a59e265cf70c33831658.svn-base create mode 100644 .svn/pristine/ab/ab9f1255f6f2a35e2982a7d514e3e3b633ba56bb.svn-base create mode 100644 .svn/pristine/ac/ac1a104a610cf87eabf48d3a66160870b924fc09.svn-base create mode 100644 .svn/pristine/ad/ad9c374b91f656390dedb0bd65d14307217a0133.svn-base create mode 100644 .svn/pristine/af/af19ea7a0f0e6d0f39c42106627ece57d554301a.svn-base create mode 100644 .svn/pristine/af/afc197297eefc8797d9752aa5bd71eecbbae833d.svn-base create mode 100644 .svn/pristine/b0/b0512fe6134d1022de69b8af3f2d025cc459256f.svn-base create mode 100644 .svn/pristine/b0/b0a6fc286a77846d1830d4067baa1f1c4fc8096f.svn-base create mode 100644 .svn/pristine/b1/b1276cd79568a2db18ff9cf1af70acda5b689039.svn-base create mode 100644 .svn/pristine/b1/b16b2944259466ee8af20e153767fe9c6a944a48.svn-base create mode 100644 .svn/pristine/b2/b204c3fec6c51dc20bfe5d39854b16dcef41720f.svn-base create mode 100644 .svn/pristine/b2/b23b3fe67488af2f6e78cade0690e283ca8c35c3.svn-base create mode 100644 .svn/pristine/b4/b4f6d091380a0842f4984c6c9987c50dcd3cce13.svn-base create mode 100644 .svn/pristine/b5/b51c8b45aa5d046f4595a5829560b2950584516d.svn-base create mode 100644 .svn/pristine/b5/b5becfb9078f2c13b69cfdf2b5bbf8cbcd18b516.svn-base create mode 100644 .svn/pristine/b7/b7438143fc872e7d99f3ea5a7aaa68d350c6be81.svn-base create mode 100644 .svn/pristine/b8/b8e60227bfb4d4d120b4e3a5cda61cb0e600095a.svn-base create mode 100644 .svn/pristine/b9/b92021c3ac13a2cb1d8aba5f50c093d0c9dd4656.svn-base create mode 100644 .svn/pristine/b9/b9ef1f4872a816945da825f33b6421449f04c6a5.svn-base create mode 100644 .svn/pristine/ba/ba0fb21793a408f6712daed89aff93fceb307dd4.svn-base create mode 100644 .svn/pristine/ba/ba82e2fc1041e8dfcfdf1772925eafdf6083687b.svn-base create mode 100644 .svn/pristine/bc/bc46c9efa43fd896829fe01826203e4b189f2f97.svn-base create mode 100644 .svn/pristine/bc/bc6f7c13f8e7bd504a1031649c77fa5185733cf6.svn-base create mode 100644 .svn/pristine/bc/bcf79dc2e5acb8ad4e2ee80a5ff34b87b6b1eeef.svn-base create mode 100644 .svn/pristine/bd/bd09f237ecef7aa6a1c51650d6019e06743675d7.svn-base create mode 100644 .svn/pristine/bd/bdcb1af15aca8489d8fa7e63482d6fbfa5102627.svn-base create mode 100644 .svn/pristine/be/be83377b1d5e09d0ad685d203ae243422b1e0a9c.svn-base create mode 100644 .svn/pristine/be/bef11f34b29b2ef7aac423568db85b9483a7832b.svn-base create mode 100644 .svn/pristine/bf/bfe7c97ae0202822e765f1b2f49d83d42ceb26c3.svn-base create mode 100644 .svn/pristine/c0/c060359fddfada5462ea8b9721080a173ead7b26.svn-base create mode 100644 .svn/pristine/c0/c0f42a121b0299e2ad42946f7e7a0449f8eafcdd.svn-base create mode 100644 .svn/pristine/c1/c1aaa0bb090a0cfde80773d33bea2e6d38079854.svn-base create mode 100644 .svn/pristine/c1/c1f03a1a97370c06719da3dd98205af94dece868.svn-base create mode 100644 .svn/pristine/c3/c3554f7eb28bf0d72a7df9682d2c7b16d7f2ec2c.svn-base create mode 100644 .svn/pristine/c4/c434f6da7640433a6b296869e2909925d7bac269.svn-base create mode 100644 .svn/pristine/c4/c4c91b503f040a058a8e4e46f9e17e334f119cc3.svn-base create mode 100644 .svn/pristine/c5/c558a1eb66ea7fcb99908fb95a7c385f447930f3.svn-base create mode 100644 .svn/pristine/c6/c659e0a9cd9301f3f99670a66ef37edc32ce5e2f.svn-base create mode 100644 .svn/pristine/c6/c6f08e1d45fdaa316eec73cefdd385dc99fc2917.svn-base create mode 100644 .svn/pristine/c7/c77baecebb7bbd9ba6c14e57f81bcbf64d9a0104.svn-base create mode 100644 .svn/pristine/c7/c78ffaae8689d7304fdc94b963f2535036ccfb63.svn-base create mode 100644 .svn/pristine/c8/c878024ca8060154570f507bd4d8cd06cbd18074.svn-base create mode 100644 .svn/pristine/ca/cafbbfe52a74261b72c3b836fa9db6e58e517d81.svn-base create mode 100644 .svn/pristine/cb/cbab60ea471e509b7f549cae0dbd267a44b1fcb9.svn-base create mode 100644 .svn/pristine/cc/cc5b9b49742f9a90a67d53010ce60ba47c9a33e7.svn-base create mode 100644 .svn/pristine/ce/ce8172dd8153b9ad30f7794c1feeed1cd856499d.svn-base create mode 100644 .svn/pristine/ce/ced31180dbca31d4426fd3d71b45375e543a2974.svn-base create mode 100644 .svn/pristine/cf/cf1b4c00a808e1cd46b96f74917cde397a04b04f.svn-base create mode 100644 .svn/pristine/cf/cf30cbdda6b0e9b464d3074c30e75fc33415cf58.svn-base create mode 100644 .svn/pristine/cf/cf7d816fbc4c11ec7247b84389bef1cc79f1baa3.svn-base create mode 100644 .svn/pristine/cf/cfdba8741836a88c776e33f39d64834bc701c58d.svn-base create mode 100644 .svn/pristine/d1/d19a38859f51a571122af9be2764ef324fda2118.svn-base create mode 100644 .svn/pristine/d2/d28af567b0724ca4fbd3b7f76c6db3bca8740946.svn-base create mode 100644 .svn/pristine/d4/d46cbb5cf3884465bb40993493e90e1cb3ae1ab9.svn-base create mode 100644 .svn/pristine/d5/d5365d16f0ede1eee96e768f815e089fe2c98007.svn-base create mode 100644 .svn/pristine/d5/d550ccbf6760c6675eb69043d40d36c87d3e6978.svn-base create mode 100644 .svn/pristine/d5/d56a09aa2efca8d3d968674059b26209fea247a5.svn-base create mode 100644 .svn/pristine/d5/d5d046570185317f19d3a42f15987626eefe138a.svn-base create mode 100644 .svn/pristine/d7/d75371b1f37bc7de9a20036eca0674fada08b736.svn-base create mode 100644 .svn/pristine/d7/d755bf85eb7edb60dd61840ac6ad5f666331b47d.svn-base create mode 100644 .svn/pristine/d8/d8742699dc65bfe923c7e4dfcb94d32a38c2520e.svn-base create mode 100644 .svn/pristine/d9/d97e2e8dd6992baecd766acbb6911c1a843ec96d.svn-base create mode 100644 .svn/pristine/d9/d9a4849f2690b42ce5bb2204f6737db38a1e8e90.svn-base create mode 100644 .svn/pristine/da/da39a3ee5e6b4b0d3255bfef95601890afd80709.svn-base create mode 100644 .svn/pristine/da/da3d6a35442f75520c4203b6e2a13592649d8777.svn-base create mode 100644 .svn/pristine/dc/dcf9d00ee1d9de28902155b4ede19055d32ebf92.svn-base create mode 100644 .svn/pristine/dd/dd434f59e6d07b6d619bab32ac670d7670539954.svn-base create mode 100644 .svn/pristine/dd/dd764fd0f7d14723109172e52179244986d83fdd.svn-base create mode 100644 .svn/pristine/dd/dde07fab330dcf34eccf0422fb280a8083c63699.svn-base create mode 100644 .svn/pristine/dd/ddf45208a0a4b2416ca3216cdf096abe02af4194.svn-base create mode 100644 .svn/pristine/de/de1810146faa862169651a9847a2a6d6ead0ca25.svn-base create mode 100644 .svn/pristine/de/de717370db9844d0b579dcefa37ea873aa9dc051.svn-base create mode 100644 .svn/pristine/de/de8532476791b6ccbb9464cbe3013352828afe98.svn-base create mode 100644 .svn/pristine/de/dea2c0a6e3d2e40cbbbdd829ae1b1abc3e9e51ef.svn-base create mode 100644 .svn/pristine/de/debe8d1e6109e0e4c7e383ec4b426b17e64b5e7b.svn-base create mode 100644 .svn/pristine/e0/e02793c7a6efb2c1e7a5c00d1144459f0cedcd05.svn-base create mode 100644 .svn/pristine/e0/e06270e352ed92d147bf3879a7c1fe0c5d4eccf0.svn-base create mode 100644 .svn/pristine/e0/e08f21dbec983012ec1c88d40eaa2365fe19af11.svn-base create mode 100644 .svn/pristine/e0/e0b7f8da46357ae3944a006b6be1abdcfc0a8078.svn-base create mode 100644 .svn/pristine/e1/e13d7812b409c48b4067f28bd8977017962f2f1b.svn-base create mode 100644 .svn/pristine/e1/e1e979a2df5e6faf6a2f4f17ce7550119e3d1d8a.svn-base create mode 100644 .svn/pristine/e2/e251f0a83157231ab6a043ad9c7c511e05515a92.svn-base create mode 100644 .svn/pristine/e2/e2cfa4af150c64903852af71300ffaf4696eded1.svn-base create mode 100644 .svn/pristine/e3/e3825b19b25446f9d29711900b8e8f0c94913c30.svn-base create mode 100644 .svn/pristine/e4/e4617cede7f666e6a2149feb793b6309388fd4ab.svn-base create mode 100644 .svn/pristine/e4/e4752b7aa411752f3307a2e3a1182dc66f8f4943.svn-base create mode 100644 .svn/pristine/e5/e5a1fae2ceb8139cc6d7771ecad981397efc4d2f.svn-base create mode 100644 .svn/pristine/e5/e5e923511b54df04fcc6045b1f78c2013faebb72.svn-base create mode 100644 .svn/pristine/e6/e6164dc28e9fff99c06fed10909ad1c760f8e885.svn-base create mode 100644 .svn/pristine/e6/e660d31798457155df12511588ebd4bf89126167.svn-base create mode 100644 .svn/pristine/e6/e660e0aa382866e564305f202104d73d4c3229a6.svn-base create mode 100644 .svn/pristine/e9/e97e6b77f4f381473458a35ba71aed6efbee6f42.svn-base create mode 100644 .svn/pristine/ea/ea6c80359761d40addb8fb09f4ac2953d55b7f91.svn-base create mode 100644 .svn/pristine/ea/ea812aa6ff52fbfe8c1be98042fbc4df0566f6b9.svn-base create mode 100644 .svn/pristine/ea/ea9bf770180ba5f5900a471918ec11ec33e6f116.svn-base create mode 100644 .svn/pristine/ea/eab48a15ce34b4bc690fc9d28cc7f3a01b4c02a0.svn-base create mode 100644 .svn/pristine/eb/ebd6927d904bd0d1ef8056d04f48630395a1b2b7.svn-base create mode 100644 .svn/pristine/eb/ebfa022f066a65e1c2ecdfc66b798655798c4e0c.svn-base create mode 100644 .svn/pristine/ec/ecdff2b6fbbbc292875def10e29fd50c894bfcfb.svn-base create mode 100644 .svn/pristine/ed/edb53fbf588f8c2e0ac3763dce31065bc0f786be.svn-base create mode 100644 .svn/pristine/ed/edc4c8dabfb7f1f5ba9e1288870e754df4b80598.svn-base create mode 100644 .svn/pristine/ed/edfaae04a3b298c3da050b529d29471c768b65b7.svn-base create mode 100644 .svn/pristine/ee/eeaa40dbcafdd97a34ee5564180485534c193545.svn-base create mode 100644 .svn/pristine/f0/f0328179ae08bda9a1342929a3a3ae366a3f5ade.svn-base create mode 100644 .svn/pristine/f0/f0d95b2e3554944b1c7e7ac1b55a6555327bf895.svn-base create mode 100644 .svn/pristine/f1/f17c41039fc0c9d604ee0d5c08448afaa85eb812.svn-base create mode 100644 .svn/pristine/f2/f21606e44db0163f49fce72567f72fa5c02f30ba.svn-base create mode 100644 .svn/pristine/f2/f22fcfb55282f3dc23845f22e38e56b79bbaad8d.svn-base create mode 100644 .svn/pristine/f2/f2427e310e266a3b225bf458b0f147e4c7ee6aad.svn-base create mode 100644 .svn/pristine/f2/f2893c44ae9f89ad72d7dea38ed38222ca429b1e.svn-base create mode 100644 .svn/pristine/f2/f298b66eb753559c66791710356d9598fc281502.svn-base create mode 100644 .svn/pristine/f2/f2b298fa65250c92c88a2bbdcd7a0169f64425c2.svn-base create mode 100644 .svn/pristine/f2/f2d55551a758c2998190b3b165163ec322b8b4f3.svn-base create mode 100644 .svn/pristine/f4/f4b1d21e7c0fd6ddc324372fb05d37fd6dbf6a42.svn-base create mode 100644 .svn/pristine/f4/f4dbaa55a9901496b60b76c831a1da5fbcade1b6.svn-base create mode 100644 .svn/pristine/f6/f648cddf065d5cdeeec0bb25766a251375867720.svn-base create mode 100644 .svn/pristine/f6/f65790b8061f2ab08218d4609667d42e53a140dd.svn-base create mode 100644 .svn/pristine/f6/f67518aa38e56fa50b421146ed1339afda1e2428.svn-base create mode 100644 .svn/pristine/f7/f7a305769127fa66462082b2dcf875e66d8012a7.svn-base create mode 100644 .svn/pristine/f7/f7db5c84d1f68074151cb4b8aa3ad09ddc68ef53.svn-base create mode 100644 .svn/pristine/f8/f8b9484e6522dd1ba8a1d1422d29d73a5d5b9ef2.svn-base create mode 100644 .svn/pristine/f8/f8fdc6fa138c6044b29a6c02cd34f2062800429d.svn-base create mode 100644 .svn/pristine/f9/f9aa8d1312d2ac9739011da190a881b4b0baa1b4.svn-base create mode 100644 .svn/pristine/fb/fbe631ef161ce06615bd9bce9a08e1ae9e97cd68.svn-base create mode 100644 .svn/pristine/fc/fc67dfa669d07db9fa8d704dde01d06d1afbe50b.svn-base create mode 100644 .svn/pristine/fd/fd54fb56e595ce84da3b4babe18bedced8e855b3.svn-base create mode 100644 .svn/pristine/fe/fe18e1574583c99af12ff1ef3be128ef4941509e.svn-base create mode 100644 .svn/pristine/fe/fe5c2cd756a548727334f58eaaff7b590a6479e1.svn-base create mode 100644 .svn/pristine/fe/fe9cdccc285107e7b850106228d6b363d1e8992d.svn-base create mode 100644 .svn/pristine/fe/fed0bc34009b38df0fa2d588cbfaba7e788f1775.svn-base create mode 100644 .svn/pristine/ff/ff14d51077cd233b932f8684c55871b4e058be66.svn-base create mode 100644 .svn/pristine/ff/ff2a1c80cef6ae1e7487d6e19b9af81408fd9a4f.svn-base create mode 100644 .svn/pristine/ff/ff58c1dbbc02fc452cf0a392aa24a529d87496de.svn-base create mode 100644 .svn/pristine/ff/ff7cd620177a510a151dfc6784454eb2e40d0971.svn-base create mode 100644 .svn/tmp/svn-691095F0 create mode 100644 .svn/wc.db create mode 100644 .svn/wc.db-journal create mode 100644 index.html create mode 100644 mtRide.keystore create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 shims-uni.d.ts create mode 100644 sm.txt create mode 100644 src/App.vue create mode 100644 src/Service/BaseConfig.ts create mode 100644 src/Service/CN/CNRiderDataService.ts create mode 100644 src/Service/CN/CNRiderLoginService.ts create mode 100644 src/Service/CN/CNRiderOrderService.ts create mode 100644 src/Service/Comm/EventHandler.ts create mode 100644 src/Service/Comm/TwWebSocket.ts create mode 100644 src/Service/Im/ImConnectService.ts create mode 100644 src/Service/Service.ts create mode 100644 src/colorui/animation.css create mode 100644 src/colorui/components/cu-custom.vue create mode 100644 src/colorui/icon.css create mode 100644 src/colorui/main.css create mode 100644 src/common/Common.ts create mode 100644 src/common/Domain/ResultData.ts create mode 100644 src/common/Unit/HttpRequest.ts create mode 100644 src/common/Unit/StorageAssist.ts create mode 100644 src/common/Unit/StoreAssist.ts create mode 100644 src/common/Unit/StringAssist.ts create mode 100644 src/common/Unit/UploadAssist.ts create mode 100644 src/components/ImageCropper.vue create mode 100644 src/components/liy-select/liy-select.vue create mode 100644 src/env.d.ts create mode 100644 src/main.ts create mode 100644 src/manifest.json create mode 100644 src/package.json create mode 100644 src/pages.json create mode 100644 src/pages/index/income.vue create mode 100644 src/pages/index/index.vue create mode 100644 src/pages/index/task.vue create mode 100644 src/pages/index/upApp.vue create mode 100644 src/pages/index/user.vue create mode 100644 src/pages/my/AbnormalList.vue create mode 100644 src/pages/my/abnormalDetail.vue create mode 100644 src/pages/my/authentication.vue create mode 100644 src/pages/my/check.vue create mode 100644 src/pages/my/completeData.vue create mode 100644 src/pages/my/edit.vue create mode 100644 src/pages/my/editPasssword.vue create mode 100644 src/pages/my/evaluate.vue create mode 100644 src/pages/my/login.vue create mode 100644 src/pages/my/myKF.vue create mode 100644 src/pages/my/noticeList.vue create mode 100644 src/pages/my/security.vue create mode 100644 src/pages/my/setConnect.vue create mode 100644 src/pages/my/statusContro.vue create mode 100644 src/pages/my/withDrowList.vue create mode 100644 src/pages/order/abnormal.vue create mode 100644 src/pages/order/finish.vue create mode 100644 src/pages/order/grabOrder.vue create mode 100644 src/pages/order/incomeDetail.vue create mode 100644 src/pages/order/navigation.vue create mode 100644 src/pages/order/orderChat.vue create mode 100644 src/pages/order/orderDetail.vue create mode 100644 src/pages/order/orderMap.vue create mode 100644 src/pages/order/upAbnormal.vue create mode 100644 src/pages/order/withdraw.vue create mode 100644 src/shime-uni.d.ts create mode 100644 src/static/dele/home/general.jpg create mode 100644 src/static/dele/home/test.jpeg create mode 100644 src/static/dele/logo.png create mode 100644 src/static/index/home/custom.png create mode 100644 src/static/index/home/shop.png create mode 100644 src/static/index/home/system.png create mode 100644 src/static/index/income/order.png create mode 100644 src/static/index/logo/logo.png create mode 100644 src/static/index/my/edit/photo.png create mode 100644 src/static/index/my/security/device.png create mode 100644 src/static/index/my/security/mima.png create mode 100644 src/static/index/my/security/password.png create mode 100644 src/static/index/my/security/phone.png create mode 100644 src/static/index/my/security/security.png create mode 100644 src/static/index/my/security/user.png create mode 100644 src/static/index/order/message.png create mode 100644 src/static/index/order/voice.png create mode 100644 src/static/index/system/upapphed.png create mode 100644 src/static/index/system/updata.png create mode 100644 src/static/index/task/fire.png create mode 100644 src/static/index/user/check.png create mode 100644 src/static/index/user/income.png create mode 100644 src/static/index/user/message.png create mode 100644 src/static/index/user/phone.png create mode 100644 src/static/index/user/ruler.png create mode 100644 src/static/index/user/security.png create mode 100644 src/static/index/user/task.png create mode 100644 src/static/index/user/user.png create mode 100644 src/static/index/user/warming.png create mode 100644 src/static/index/user/withdrow.png create mode 100644 src/static/liy-select/images/check_mark.png create mode 100644 src/static/liy-select/images/complete.png create mode 100644 src/static/liy-select/images/loading.png create mode 100644 src/static/liy-select/images/search.png create mode 100644 src/static/liy-select/images/void.png create mode 100644 src/static/order.mp3 create mode 100644 src/static/tab/home.png create mode 100644 src/static/tab/homed.png create mode 100644 src/static/tab/income.png create mode 100644 src/static/tab/incomed.png create mode 100644 src/static/tab/task.png create mode 100644 src/static/tab/tasked.png create mode 100644 src/static/tab/user.png create mode 100644 src/static/tab/usered.png create mode 100644 src/types/uview.d.ts create mode 100644 src/uni.scss create mode 100644 src/uni_modules/lime-echart/components/l-echart/canvas.js create mode 100644 src/uni_modules/lime-echart/components/l-echart/l-echart.vue create mode 100644 src/uni_modules/lime-echart/components/l-echart/utils.js create mode 100644 src/uni_modules/lime-echart/components/lime-echart/index.vue create mode 100644 src/uni_modules/piaoyi-cityPicker/changelog.md create mode 100644 src/uni_modules/piaoyi-cityPicker/components/piaoyi-cityPicker/cityData.js create mode 100644 src/uni_modules/piaoyi-cityPicker/components/piaoyi-cityPicker/piaoyi-cityPicker.vue create mode 100644 src/uni_modules/piaoyi-cityPicker/package.json create mode 100644 src/uni_modules/piaoyi-cityPicker/readme.md create mode 100644 src/uni_modules/qf-image-cropper/changelog.md create mode 100644 src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.render.js create mode 100644 src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.vue create mode 100644 src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.wxs create mode 100644 src/uni_modules/qf-image-cropper/package.json create mode 100644 src/uni_modules/qf-image-cropper/readme.md create mode 100644 src/uni_modules/uni-calendar/changelog.md create mode 100644 src/uni_modules/uni-calendar/components/uni-calendar/calendar.js create mode 100644 src/uni_modules/uni-calendar/components/uni-calendar/i18n/en.json create mode 100644 src/uni_modules/uni-calendar/components/uni-calendar/i18n/index.js create mode 100644 src/uni_modules/uni-calendar/components/uni-calendar/i18n/zh-Hans.json create mode 100644 src/uni_modules/uni-calendar/components/uni-calendar/i18n/zh-Hant.json create mode 100644 src/uni_modules/uni-calendar/components/uni-calendar/uni-calendar-item.vue create mode 100644 src/uni_modules/uni-calendar/components/uni-calendar/uni-calendar.vue create mode 100644 src/uni_modules/uni-calendar/components/uni-calendar/util.js create mode 100644 src/uni_modules/uni-calendar/package.json create mode 100644 src/uni_modules/uni-calendar/readme.md create mode 100644 tsconfig.json create mode 100644 unpackage/res/icons/1024x1024.png create mode 100644 unpackage/res/icons/120x120.png create mode 100644 unpackage/res/icons/144x144.png create mode 100644 unpackage/res/icons/152x152.png create mode 100644 unpackage/res/icons/167x167.png create mode 100644 unpackage/res/icons/180x180.png create mode 100644 unpackage/res/icons/192x192.png create mode 100644 unpackage/res/icons/20x20.png create mode 100644 unpackage/res/icons/29x29.png create mode 100644 unpackage/res/icons/40x40.png create mode 100644 unpackage/res/icons/58x58.png create mode 100644 unpackage/res/icons/60x60.png create mode 100644 unpackage/res/icons/72x72.png create mode 100644 unpackage/res/icons/76x76.png create mode 100644 unpackage/res/icons/80x80.png create mode 100644 unpackage/res/icons/87x87.png create mode 100644 unpackage/res/icons/96x96.png create mode 100644 vite.config.ts diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7ce6e50 --- /dev/null +++ b/.gitignore @@ -0,0 +1,21 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +.DS_Store +dist +*.local + +# Editor directories and files +.idea +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? \ No newline at end of file diff --git a/.hbuilderx/launch.json b/.hbuilderx/launch.json new file mode 100644 index 0000000..07d9281 --- /dev/null +++ b/.hbuilderx/launch.json @@ -0,0 +1,23 @@ +{ + // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/ + // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数 + "version" : "0.0", + "configurations" : [ + { + "app-plus" : { + "launchtype" : "local" + }, + "default" : { + "launchtype" : "local" + }, + "mp-weixin" : { + "launchtype" : "local" + }, + "type" : "uniCloud" + }, + { + "playground" : "standard", + "type" : "uni-app:app-android" + } + ] +} diff --git a/.svn/entries b/.svn/entries new file mode 100644 index 0000000..48082f7 --- /dev/null +++ b/.svn/entries @@ -0,0 +1 @@ +12 diff --git a/.svn/format b/.svn/format new file mode 100644 index 0000000..48082f7 --- /dev/null +++ b/.svn/format @@ -0,0 +1 @@ +12 diff --git a/.svn/pristine/00/00b664da992679974870eb695fc57859039eb83e.svn-base b/.svn/pristine/00/00b664da992679974870eb695fc57859039eb83e.svn-base new file mode 100644 index 0000000..f8a54cb --- /dev/null +++ b/.svn/pristine/00/00b664da992679974870eb695fc57859039eb83e.svn-base @@ -0,0 +1,20 @@ + + + + + + + + + + +
+ + + diff --git a/.svn/pristine/01/01d756165f2a10f8d8f442f0e1ffd1c4cb1f81a7.svn-base b/.svn/pristine/01/01d756165f2a10f8d8f442f0e1ffd1c4cb1f81a7.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..0af6e9b3e40182bc593b1197e0ad111ae730652f GIT binary patch literal 13543 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 p00960O{fx+00006Nkl + + + + + 菜农·商家端 + + + + + + 欢迎登陆 + + + + 手机号登录,安全又便捷 + + + + + + + + + + + + + + + + + + + + + + + 登录 + + + + + 忘记密码 + + + {{isLogin?'去注册':'已有账号去登录'}} + + + + + + + + + + + 我同意 + 《用户协议》 + 和 + 《隐私政策》 + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/04/04539d51832126892d0d9ba205c9d9e3b74801e8.svn-base b/.svn/pristine/04/04539d51832126892d0d9ba205c9d9e3b74801e8.svn-base new file mode 100644 index 0000000..867b673 --- /dev/null +++ b/.svn/pristine/04/04539d51832126892d0d9ba205c9d9e3b74801e8.svn-base @@ -0,0 +1,63 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/04/045ae342eb245c167b9819e95b454e60b65e2198.svn-base b/.svn/pristine/04/045ae342eb245c167b9819e95b454e60b65e2198.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..c27371423a7d40b27af28b51a07895a89abceca2 GIT binary patch literal 813 zcmV+|1JeA7P)}+@MXtX-PGq)!Zyp7$>MeM?-Xlf*A#jZur(Rtz?P7G5R#utfO zp2u!Lf6zp>mp~gmK;mX+h6jQU4Oqb8`qAM7fXoar3`>&D7$3fgT?c!bCtyH8z(m34 zRH}_000=l9{c?D{8rbzJvh;gocN)W?4a11UE%xJ6!(4kkM(h${g3S}K4++@!!N7!@ zd$cxz+N-|Zt|MDxr;#kv+Wo+~ily}oxTCeq&g$r7YvgwgigchA%on0VW^W*95zHX_!el z*vk(Gy%Qe5&+|VCFoQ&0G_zV~zZ&Z;IG~`-`%9Y0850%sZ4|u*s>H&w_ ze7+^%rj*W<`R!Lv!I$YX3?bCm|A@>#JWZ=6^^6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 余额提现-{{ item.payway}} + + + + 提现金额 {{ item.amount}} 元 + + + 实际到账 {{item.withAmount}} 元 + + + + + 收款人 + + + {{ item.name }} + + + + + 提现账号 + + + {{ item.account }} + + + + + 提现时间 + + + {{ Service.formatDate(item.addTime,1) }} + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/06/061d36348da2982b8e3993cdc30a9e3c902b1d6f.svn-base b/.svn/pristine/06/061d36348da2982b8e3993cdc30a9e3c902b1d6f.svn-base new file mode 100644 index 0000000..4aa4a9f --- /dev/null +++ b/.svn/pristine/06/061d36348da2982b8e3993cdc30a9e3c902b1d6f.svn-base @@ -0,0 +1,625 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/06/0623883f57b2d6ac9d93d5e62f935971fa209655.svn-base b/.svn/pristine/06/0623883f57b2d6ac9d93d5e62f935971fa209655.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..442e0615d7897a364e851523c7474e0a89b91b15 GIT binary patch literal 278 zcmeAS@N?(olHy`uVBq!ia0vp^JRr=$1|-8uW1a)4)1EGlAr*{M`tt=38SosH7Exf8 zF<^bb@QguZgC+xe!~w?14a^4)%Jkeny>zb}yZnu(x+i~M&Q5=M{(XAFtYv&}?9cy} zI7@r7le>mYM+xmAQoEzr02#BBAX%heGQKP}zrYof>yN<8h#_9iw zp@+vrf3DfAo0Hb^?Nn!%>nKf4j-Pn0^1zum4(0&aA6p%!%3II4sd0!|s=>#9m)v^m za>MS)$7Y?97E<@fNLZgBYjJt{Lc=h|Tp@O1TaS?83{1OW02Ymfi{ literal 0 HcmV?d00001 diff --git a/.svn/pristine/06/067705ad461ae3ed9159a006e5506aa25c7bbc83.svn-base b/.svn/pristine/06/067705ad461ae3ed9159a006e5506aa25c7bbc83.svn-base new file mode 100644 index 0000000..98a5116 --- /dev/null +++ b/.svn/pristine/06/067705ad461ae3ed9159a006e5506aa25c7bbc83.svn-base @@ -0,0 +1,727 @@ +/** + * 图片编辑器-手势监听 + * 1. wxs 暂不支持 es6 语法 + * 2. 支持编译到微信小程序、QQ小程序、app-vue、H5上(uni-app 2.2.5及以上版本) + */ +/** 图片偏移量 */ +var offset = { x: 0, y: 0 }; +/** 图片缩放比例 */ +var scale = 1; +/** 图片最小缩放比例 */ +var minScale = 1; +/** 图片旋转角度 */ +var rotate = 0; +/** 触摸点 */ +var touches = []; +/** 图片布局信息 */ +var img = {}; +/** 系统信息 */ +var sys = {}; +/** 裁剪区域布局信息 */ +var area = {}; +/** 触摸行为类型 */ +var touchType = ''; +/** 操作角的位置 */ +var activeAngle = 0; +/** 裁剪区域布局信息偏移量 */ +var areaOffset = { left: 0, right: 0, top: 0, bottom: 0 }; +/** 容错值 */ +var fault = 0.000001; +/** + * 获取a、b两数中的最小正数 + * @param a + * @param b + */ +function minimum(a, b) { + if (a > 0 && b < 0) return a; + if (a < 0 && b > 0) return b; + if (a > 0 && b > 0) return Math.min(a, b); + return 0; +} +/** + * 在容错访问内获取n近似值 + * @param n + */ +function num(n) { + var m = parseFloat((n).toFixed(6)); + return m === fault || m === -fault ? 0 : m; +} +/** + * 比较a值在容错值范围内是否等于b值 + * @param a + * @param b + */ +function equalsByFault(a, b) { + return Math.abs(a - b) <= fault; +} +/** + * 比较a值在容错值范围内是否小于b值 + * @param a + * @param b + */ +function lessThanByFault(a, b) { + var c = a - b; + return c < 0 ? c < -fault : c < fault; +} +/** + * 验证并获取有效最大值 + * @param v + * @param max + * @param isInclude + * @param x + * @param y + * @param rate + * @returns + */ +function validMax(v, max, isInclude, x, y, rate) { + if(typeof max === 'number') { + if(isInclude && equalsByFault(max, y)) { // 宽高不等时,x轴用y轴值要做等比例转换 + var n = num(max * rate); + if (n <= x) return n; // 转化后值在x轴最大值范围内 + return x; // 转化后值超出x轴最大值范围则用最大值 + } + return max; + } + return v; +} +/** + * 计算两点间距 + * @param {Object} touches 触摸点信息 + */ +function getDistanceByTouches(touches) { + // 根据勾股定理求两点间距离 + var a = touches[1].pageX - touches[0].pageX; + var b = touches[1].pageY - touches[0].pageY; + var c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2)); + // 求两点间的中点坐标 + // 1. a、b可能为负值 + // 2. 在求a、b时,如用touches[1]减touches[0],则求中点坐标也得用touches[1]减a/2、b/2 + // 3. 同理,在求a、b时,也可用touches[0]减touches[1],则求中点坐标也得用touches[0]减a/2、b/2 + var x = touches[1].pageX - a / 2; + var y = touches[1].pageY - b / 2; + return { c, x, y }; +}; +/** + * 修正取值 + * @param {Object} a + * @param {Object} b + * @param {Object} c + * @param {Object} reverse 是否反向 + */ +function correctValue(a, b, c, reverse) { + return num(reverse ? Math.max(Math.min(a, b), c) : Math.min(Math.max(a, b), c)); +} + +/** + * 旋转90°或270°时检查边界:限制 x、y 拖动范围,禁止滑出边界 + * @param {Object} e 点坐标 + * @param {Object} xReverse x是否反向 + * @param {Object} yReverse y是否反向 + */ +function checkRotateRange(e, xReverse, yReverse) { + var o = num((img.height - img.width) / 2); // 宽高差值一半 + return { + x: correctValue(e.x, -img.height + o + area.width + area.left, area.left + o, xReverse), + y: correctValue(e.y, -img.width - o + area.height + area.top, area.top - o, yReverse) + }; +} + +/** + * 检查边界:限制 x、y 拖动范围,禁止滑出边界 + * @param {Object} e 点坐标 + */ +function checkRange(e) { + var r = rotate / 90 % 2; + if(r === 1) { // 因图片宽高可能不等,翻转 90° 或 270° 后图片宽高需反着计算,且左右和上下边界要根据差值做偏移 + if (area.width === area.height) { + return checkRotateRange(e, img.height < area.height, img.width < area.width); + } + var isInclude = img.height < area.width && img.width < area.height; // 图片是否包含在裁剪区域内 + if (img.width < area.height || img.height < area.width) { + if (area.width < area.height && img.width < img.height) { + return isInclude + ? checkRotateRange(e, area.width < area.height, area.width < area.height) + : checkRotateRange(e, false, true); + } + if (area.height < area.width && img.height < img.width) { + return isInclude + ? checkRotateRange(e, area.height < area.width, area.height < area.width) + : checkRotateRange(e, true, false); + } + } + if (img.height >= area.width && img.width >= area.height) { + return checkRotateRange(e, false, false); + } + if (isInclude) { + return area.height < area.width + ? checkRotateRange(e, true, true) + : checkRotateRange(e, area.width < area.height, area.width < area.height); + } + if (img.height < area.width && !img.width < area.height) { + return checkRotateRange(e, true, false); + } + if (!img.height < area.width && img.width < area.height) { + return checkRotateRange(e, false, true); + } + return checkRotateRange(e, img.height < area.height, img.width < area.width); + } + return { + x: correctValue(e.x, -img.width + area.width + area.left, area.left, img.width < area.width), + y: correctValue(e.y, -img.height + area.height + area.top, area.top, img.height < area.height) + }; +}; +/** + * 变更图片布局信息 + * @param {Object} e 布局信息 + */ +function changeImageRect(e) { + offset.x += e.x || 0; + offset.y += e.y || 0; + var image = e.instance.selectComponent('.crop-image'); + if(e.check && area.checkRange) { // 检查边界 + var point = checkRange(offset); + if(offset.x !== point.x || offset.y !== point.y) { + offset = point; + } + } + // image.setStyle({ + // width: img.width + 'px', + // height: img.height + 'px', + // transform: 'translate(' + offset.x + 'px, ' + offset.y + 'px) rotate(' + rotate +'deg)' + // }); + var ox = (img.width - img.oldWidth) / 2; + var oy = (img.height - img.oldHeight) / 2; + image.setStyle({ + width: img.oldWidth + 'px', + height: img.oldHeight + 'px', + transform: (img.gpu ? 'translateZ(0) ' : '') + 'translate(' + (offset.x + ox) + 'px, ' + (offset.y + oy) + 'px) rotate(' + rotate +'deg) scale(' + scale + ')' + }); + + e.instance.callMethod('dataChange', { + width: img.width, + height: img.height, + x: offset.x, + y: offset.y, + rotate: rotate + }); +}; +/** + * 变更裁剪区域布局信息 + * @param {Object} e 布局信息 + */ +function changeAreaRect(e) { + // 变更蒙版样式 + var masks = e.instance.selectAllComponents('.crop-mask-block'); + var maskStyles = [ + { + left: 0, + width: (area.left + areaOffset.left) + 'px', + top: 0, + bottom: 0, + 'z-index': area.zIndex + 2 + }, + { + left: (area.right + areaOffset.right) + 'px', + right: 0, + top: 0, + bottom: 0, + 'z-index': area.zIndex + 2 + }, + { + left: (area.left + areaOffset.left) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + top: 0, + height: (area.top + areaOffset.top) + 'px', + 'z-index': area.zIndex + 2 + }, + { + left: (area.left + areaOffset.left) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + top: (area.bottom + areaOffset.bottom) + 'px', + // height: (area.top - areaOffset.bottom + sys.offsetBottom) + 'px', + bottom: 0, + 'z-index': area.zIndex + 2 + } + ]; + var len = masks.length; + for (var i = 0; i < len; i++) { + masks[i].setStyle(maskStyles[i]); + } + + // 变更边框样式 + if(area.showBorder) { + var border = e.instance.selectComponent('.crop-border'); + border.setStyle({ + left: (area.left + areaOffset.left) + 'px', + top: (area.top + areaOffset.top) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + }); + } + + // 变更参考线样式 + if(area.showGrid) { + var grids = e.instance.selectAllComponents('.crop-grid'); + var gridStyles = [ + { + 'border-width': '1px 0 0 0', + left: (area.left + areaOffset.left) + 'px', + right: (area.right + areaOffset.right) + 'px', + top: (area.top + areaOffset.top + (area.height + areaOffset.bottom - areaOffset.top) / 3 - 0.5) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '1px 0 0 0', + left: (area.left + areaOffset.left) + 'px', + right: (area.right + areaOffset.right) + 'px', + top: (area.top + areaOffset.top + (area.height + areaOffset.bottom - areaOffset.top) * 2 / 3 - 0.5) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 1px 0 0', + top: (area.top + areaOffset.top) + 'px', + bottom: (area.bottom + areaOffset.bottom) + 'px', + left: (area.left + areaOffset.left + (area.width + areaOffset.right - areaOffset.left) / 3 - 0.5) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 1px 0 0', + top: (area.top + areaOffset.top) + 'px', + bottom: (area.bottom + areaOffset.bottom) + 'px', + left: (area.left + areaOffset.left + (area.width + areaOffset.right - areaOffset.left) * 2 / 3 - 0.5) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + } + ]; + var len = grids.length; + for (var i = 0; i < len; i++) { + grids[i].setStyle(gridStyles[i]); + } + } + + // 变更四个伸缩角样式 + if(area.showAngle) { + var angles = e.instance.selectAllComponents('.crop-angle'); + var angleStyles = [ + { + 'border-width': area.angleBorderWidth + 'px 0 0 ' + area.angleBorderWidth + 'px', + left: (area.left + areaOffset.left - area.angleBorderWidth) + 'px', + top: (area.top + areaOffset.top - area.angleBorderWidth) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px 0 0', + left: (area.right + areaOffset.right - area.angleSize) + 'px', + top: (area.top + areaOffset.top - area.angleBorderWidth) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 0 ' + area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px', + left: (area.left + areaOffset.left - area.angleBorderWidth) + 'px', + top: (area.bottom + areaOffset.bottom - area.angleSize) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 ' + area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px 0', + left: (area.right + areaOffset.right - area.angleSize) + 'px', + top: (area.bottom + areaOffset.bottom - area.angleSize) + 'px', + 'z-index': area.zIndex + 3 + } + ]; + var len = angles.length; + for (var i = 0; i < len; i++) { + angles[i].setStyle(angleStyles[i]); + } + } + + // 变更圆角样式 + if(area.radius > 0) { + var circleBox = e.instance.selectComponent('.crop-circle-box'); + var circle = e.instance.selectComponent('.crop-circle'); + var radius = area.radius; + if(area.width === area.height && area.radius >= area.width / 2) { // 圆形 + radius = (area.width / 2); + } else { // 圆角矩形 + if(area.width !== area.height) { // 限制圆角半径不能超过短边的一半 + radius = Math.min(area.width / 2, area.height / 2, radius); + } + } + circleBox.setStyle({ + left: (area.left + areaOffset.left) + 'px', + top: (area.top + areaOffset.top) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 2 + }); + circle.setStyle({ + 'box-shadow': '0 0 0 ' + Math.max(area.width, area.height) + 'px rgba(51, 51, 51, 0.8)', + 'border-radius': radius + 'px' + }); + } +}; +/** + * 缩放图片 + * @param {Object} e 布局信息 + */ +function scaleImage(e) { + var last = scale; + scale = Math.min(Math.max(e.scale + scale, minScale), img.maxScale); + if(last !== scale) { + img.width = num(img.oldWidth * scale); + img.height = num(img.oldHeight * scale); + // 参考问题:有一个长4000px、宽4000px的四方形ABCD,A点的坐标固定在(-2000,-2000), + // 该四边形上有一个点E,坐标为(-100,-300),将该四方形复制一份并缩小到90%后, + // 新四边形的A点坐标为多少时可使新四边形的E点与原四边形的E点重合? + // 预期效果:从图中选取某点(参照物)为中心点进行缩放,缩放时无论图像怎么变化,该点位置始终固定不变 + // 计算方法:以相同起点先计算缩放前后两点间的距离,再加上原图像偏移量即可 + e.x = num((e.x - offset.x) * (1 - scale / last)); + e.y = num((e.y - offset.y) * (1 - scale / last)); + changeImageRect(e); + return true; + } + return false; +}; +/** + * 获取触摸点在哪个角 + * @param {number} x 触摸点x轴坐标 + * @param {number} y 触摸点y轴坐标 + * @return {number} 角的位置:0=无;1=左上;2=右上;3=左下;4=右下; + */ +function getToucheAngle(x, y) { + // console.log('getToucheAngle', x, y, JSON.stringify(area)) + var o = area.angleBorderWidth; // 需扩大触发范围则把 o 值加大即可 + if(y >= area.top - o && y <= area.top + area.angleSize + o) { + if(x >= area.left - o && x <= area.left + area.angleSize + o) { + return 1; // 左上角 + } else if(x >= area.right - area.angleSize - o && x <= area.right + o) { + return 2; // 右上角 + } + } else if(y >= area.bottom - area.angleSize - o && y <= area.bottom + o) { + if(x >= area.left - o && x <= area.left + area.angleSize + o) { + return 3; // 左下角 + } else if(x >= area.right - area.angleSize - o && x <= area.right + o) { + return 4; // 右下角 + } + } + return 0; // 无触摸到角 +}; +/** + * 重置数据 + */ +function resetData() { + offset = { x: 0, y: 0 }; + scale = 1; + minScale = img.minScale; + rotate = 0; +}; +/** +* 顺时针翻转图片90° +* @param {Object} e 事件对象 +* @param {Object} o 组件实例对象 +*/ +function rotateImage(e, o, r) { + rotate = (rotate + r) % 360; + if(img.minScale >= 1 && area.checkRange) { + // 因图片宽高可能不等,翻转后图片宽高需足够填满裁剪区域 + minScale = 1; + if(img.width < area.height) { + minScale = area.height / img.oldWidth; + } else if(img.height < area.width) { + minScale = area.width / img.oldHeight; + } + if(minScale !== 1) { + scaleImage({ + instance: o, + scale: minScale - scale, + x: sys.windowWidth / 2, + y: (sys.windowHeight - sys.offsetBottom) / 2 + }); + } + } + + // 由于拖动画布后会导致图片位置偏移,翻转时的旋转中心点需是图片区域+偏移区域的中心点 + // 翻转x轴中心点 = (超出裁剪区域右侧的图片宽度 - 超出裁剪区域左侧的图片宽度) / 2 + // 翻转y轴中心点 = (超出裁剪区域下方的图片宽度 - 超出裁剪区域上方的图片宽度) / 2 + var ox = ((offset.x + img.width - area.right) - (area.left - offset.x)) / 2; + var oy = ((offset.y + img.height - area.bottom) - (area.top - offset.y)) / 2; + changeImageRect({ + instance: o, + check: true, + x: -ox - oy, + y: -oy + ox + }); +}; +module.exports = { + /** + * 初始化:观察数据变更 + * @param {Object} newVal 新数据 + * @param {Object} oldVal 旧数据 + * @param {Object} o 组件实例对象 + */ + initObserver: function(newVal, oldVal, o, i) { + if(newVal) { + img = newVal.img; + sys = newVal.sys; + area = newVal.area; + minScale = img.minScale; + resetData(); + img.src && changeImageRect({ + instance: o, + x: (sys.windowWidth - img.width) / 2, + y: (sys.windowHeight - sys.offsetBottom - img.height) / 2 + }); + changeAreaRect({ + instance: o + }); + // console.log('initRect', JSON.stringify(newVal)) + } + }, + /** + * 鼠标滚轮滚动 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + mousewheel: function(e, o) { + if(!img.src) return; + scaleImage({ + instance: o, + check: true, + // 鼠标向上滚动时,deltaY 固定 -100,鼠标向下滚动时,deltaY 固定 100 + scale: e.detail.deltaY > 0 ? -0.05 : 0.05, + x: e.touches[0].pageX, + y: e.touches[0].pageY + }); + }, + /** + * 触摸开始 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchstart: function(e, o) { + if(!img.src) return; + touches = e.touches; + activeAngle = area.showAngle ? getToucheAngle(touches[0].pageX, touches[0].pageY) : 0; + if(touches.length === 1 && activeAngle !== 0) { + touchType = 'stretch'; // 伸缩裁剪区域 + } else { + touchType = ''; + } + // console.log('touchstart', JSON.stringify(e), activeAngle) + }, + /** + * 触摸移动 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchmove: function(e, o) { + if(!img.src) return; + // console.log('touchmove', JSON.stringify(e), JSON.stringify(o)) + if(touchType === 'stretch') { // 触摸四个角进行拉伸 + var point = e.touches[0]; + var start = touches[0]; + var x = point.pageX - start.pageX; + var y = point.pageY - start.pageY; + if(x !== 0 || y !== 0) { + var maxX = num(area.width * (1 - area.minScale)); + var maxY = num(area.height * (1 - area.minScale)); + // console.log(x, y, maxX, maxY, offset, area) + touches[0] = point; + var r = rotate / 90 % 2; + var m = r === 1 ? num((img.height - img.width) / 2) : 0; // 宽高差值一半 + var xCompare = r === 1 ? lessThanByFault(img.height, area.width) : lessThanByFault(img.width, area.width); + var yCompare = r === 1 ? lessThanByFault(img.width, area.height) : lessThanByFault(img.height, area.height) + var isInclude = xCompare && yCompare; + var isIntersect = area.checkRange && (xCompare || yCompare); // 图片是否包含在裁剪区域内 + var isReverse = !isInclude || num((offset.x - area.left) / area.width) <= num((offset.y - area.top) / area.height) || (area.width > area.height && img.width < img.height && r === 1); + switch(activeAngle) { + case 1: // 左上角 + x = num(x + areaOffset.left); + y = num(y + areaOffset.top); + if(x >= 0 && y >= 0) { // 有效滑动 + var t = num(offset.y + m - area.top); + var l = num(offset.x - m - area.left); + // && (offset.x + img.width < area.right || offset.y + img.height < area.bottom) + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(x > y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(x > maxX) x = maxX; + y = num(x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(y > maxY) y = maxY; + x = num(y * area.width / area.height); + } + areaOffset.left = x; + areaOffset.top = y; + } + break; + case 2: // 右上角 + x = num(x + areaOffset.right); + y = num(y + areaOffset.top); + if(x <= 0 && y >= 0) { // 有效滑动 + var w = (r === 1 ? img.height : img.width); + var t = num(offset.y + m - area.top); + var l = num(area.right + m - offset.x - w); + var max = isIntersect && ((t >= 0) || (l >= 0)) + ? minimum(t, l) + : false; + // var max = isInclude && ((offset.x > 0 && offset.x + img.width <= area.right) || (offset.y > 0 && offset.y >= area.top)) + // ? minimum(offset.y - area.top, area.right - offset.x - img.width) + // : false; + // console.log(offset.x, offset.y, img.width, img.height, area.top, area.right, m, max) + // console.log(offset.y + m - area.top, area.right + m - offset.x - w) + if(-x > y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(-x > maxX) x = -maxX; + y = num(-x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(y > maxY) y = maxY; + x = num(-y * area.width / area.height); + } + areaOffset.right = x; + areaOffset.top = y; + } + break; + case 3: // 左下角 + x += num(x + areaOffset.left); + y += num(y + areaOffset.bottom); + if(x >= 0 && y <= 0) { // 有效滑动 + var w = (r === 1 ? img.width : img.height); + var t = num(area.bottom - m - offset.y - w); + var l = num(offset.x - m - area.left); + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(x > -y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(x > maxX) x = maxX; + y = num(-x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(-y > maxY) y = -maxY; + x = num(-y * area.width / area.height); + } + areaOffset.left = x; + areaOffset.bottom = y; + } + break; + case 4: // 右下角 + x = num(x + areaOffset.right); + y = num(y + areaOffset.bottom); + if(x <= 0 && y <= 0) { // 有效滑动 + var w = (r === 1 ? img.height : img.width); + var h = (r === 1 ? img.width : img.height); + var t = num(area.bottom - offset.y - h - m); + var l = num(area.right + m - offset.x - w); + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(-x > -y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(-x > maxX) x = -maxX; + y = num(x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(-y > maxY) y = -maxY; + x = num(y * area.width / area.height); + } + areaOffset.right = x; + areaOffset.bottom = y; + } + break; + } + // console.log(x, y, JSON.stringify(areaOffset)) + changeAreaRect({ + instance: o, + }); + // this.draw(); + } + } else if (e.touches.length == 2) { // 双点触摸缩放 + var start = getDistanceByTouches(touches); + var end = getDistanceByTouches(e.touches); + scaleImage({ + instance: o, + check: !area.bounce, + scale: (end.c - start.c) / 100, + x: end.x, + y: end.y + }); + touchType = 'scale'; + } else if(touchType === 'scale') {// 从双点触摸变成单点触摸 / 从缩放变成拖动 + touchType = 'move'; + } else { + changeImageRect({ + instance: o, + check: !area.bounce, + x: e.touches[0].pageX - touches[0].pageX, + y: e.touches[0].pageY - touches[0].pageY + }); + touchType = 'move'; + } + touches = e.touches; + }, + /** + * 触摸结束 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchend: function(e, o) { + if(!img.src) return; + if(touchType === 'stretch') { // 拉伸裁剪区域的四个角缩放 + // 裁剪区域宽度被缩放到多少 + var left = areaOffset.left; + var right = areaOffset.right; + var top = areaOffset.top; + var bottom = areaOffset.bottom; + var w = area.width + right - left; + var h = area.height + bottom - top; + // 图像放大倍数 + var p = scale * (area.width / w) - scale; + // 复原裁剪区域 + areaOffset = { left: 0, right: 0, top: 0, bottom: 0 }; + changeAreaRect({ + instance: o, + }); + scaleImage({ + instance: o, + scale: p, + x: area.left + left + (1 === activeAngle || 3 === activeAngle ? w : 0), + y: area.top + top + (1 === activeAngle || 2 === activeAngle ? h : 0) + }); + } else if (area.bounce) { // 检查边界并矫正,实现拖动到边界时有回弹效果 + changeImageRect({ + instance: o, + check: true + }); + } + }, + /** + * 顺时针翻转图片90° + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + rotateImage: function(e, o) { + rotateImage(e, o, 90); + }, + rotateImage90: function(e, o) { + rotateImage(e, o, 90) + }, + rotateImage270: function(e, o) { + rotateImage(e, o, 270) + }, + // 此处只用于对齐其他平台端的样式参数,防止异常,无作用 + imageStyles: '', + maskStylesList: ['', '', '', ''], + borderStyles: '', + gridStylesList: ['', '', '', ''], + angleStylesList: ['', '', '', ''], + circleBoxStyles: '', + circleStyles: '', +} \ No newline at end of file diff --git a/.svn/pristine/06/06f82fe98529cd0a1b4156ca35576943d8790874.svn-base b/.svn/pristine/06/06f82fe98529cd0a1b4156ca35576943d8790874.svn-base new file mode 100644 index 0000000..5e3220e --- /dev/null +++ b/.svn/pristine/06/06f82fe98529cd0a1b4156ca35576943d8790874.svn-base @@ -0,0 +1,238 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/07/0759c8a3a255a890461a1cf8acf1979980d1d5d1.svn-base b/.svn/pristine/07/0759c8a3a255a890461a1cf8acf1979980d1d5d1.svn-base new file mode 100644 index 0000000..2c0a63c --- /dev/null +++ b/.svn/pristine/07/0759c8a3a255a890461a1cf8acf1979980d1d5d1.svn-base @@ -0,0 +1,241 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [{ + "root": "pages/order", + "pages": [{ + "path": "orderDetail", + "style": { + "navigationBarTitleText": "订单详情" + } + }, + { + "path": "navigation", + "style": { + "navigationBarTitleText": "导航", + "navigationStyle": "custom" + } + }, + { + "path": "abnormal", + "style": { + "navigationBarTitleText": "上报异常" + } + }, + { + "path": "grabOrder", + "style": { + "navigationBarTitleText": "订单详情" + } + }, + { + "path": "incomeDetail", + "style": { + "navigationBarTitleText": "收入详情", + "navigationStyle": "custom" + } + }, + { + "path": "withdraw", + "style": { + "navigationBarTitleText": "提现申请" + } + }, + { + "path": "finish", + "style": { + "navigationBarTitleText": "订单完成" + } + }, + { + "path": "upAbnormal", + "style": { + "navigationBarTitleText": "异常上报" + } + }, + { + "path": "orderMap", + "style": { + "navigationBarTitleText": "订单地图" + } + }, + { + "path": "orderChat", + "style": { + "navigationBarTitleText": "联系客户" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path": "edit", + "style": { + "navigationBarTitleText": "编辑资料" + } + }, + { + "path": "statusContro", + "style": { + "navigationBarTitleText": "上线管理" + } + }, + { + "path": "myKF", + "style": { + "navigationBarTitleText": "联系客服" + } + }, + { + "path": "AbnormalList", + "style": { + "navigationBarTitleText": "异常订单" + } + }, + { + "path": "check", + "style": { + "navigationBarTitleText": "签到奖励" + } + }, + { + "path": "abnormalDetail", + "style": { + "navigationBarTitleText": "异常详情" + } + }, + { + "path": "security", + "style": { + "navigationBarTitleText": "账号与安全" + } + }, + { + "path": "authentication", + "style": { + "navigationBarTitleText": "实名认证" + } + }, + { + "path": "login", + "style": { + "navigationBarTitleText": "登录", + "navigationStyle": "custom" + } + }, + { + "path": "noticeList", + "style": { + "navigationBarTitleText": "消息通知", + "navigationStyle": "custom" + } + }, + { + "path": "setConnect", + "style": { + "navigationBarTitleText": "紧急联系人" + } + }, + { + "path": "evaluate", + "style": { + "navigationBarTitleText": "评价中心" + } + }, + { + "path": "completeData", + "style": { + "navigationBarTitleText": "完善信息" + } + }, + { + "path": "withDrowList", + "style": { + "navigationBarTitleText": "提现列表" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/08/084fa4a6cc1267ccd5876cffbbb894512771ee34.svn-base b/.svn/pristine/08/084fa4a6cc1267ccd5876cffbbb894512771ee34.svn-base new file mode 100644 index 0000000..0c8e719 --- /dev/null +++ b/.svn/pristine/08/084fa4a6cc1267ccd5876cffbbb894512771ee34.svn-base @@ -0,0 +1,43 @@ +import { Service } from '@/Service/Service'; +/*****代理端接口*****/ +class NvpAgentService { + private static LoginPath: string = '/Agent/Login'; + /*****登录接口*****/ + static Login(name: string, pwd: string) { + var result = Service.Request(this.LoginPath, "POST", { name, pwd }); + return result; + } + + private static GetAgentAccInfoPath: string = '/Agent/GetAgentAccInfo'; + /*****账户接口*****/ + static GetAgentAccInfo() { + var result = Service.Request(this.GetAgentAccInfoPath, "GET", ""); + return result; + } + + private static GetAgentAccLogPath: string = '/Agent/GetAgentAccLog'; + /*****账户记录*****/ + static GetAgentAccLog(code: string, page: number) { + var result = Service.Request(this.GetAgentAccLogPath, "GET", { code, page }); + return result; + } + + private static GetAgentMerchPath: string = '/Agent/GetAgentMerch'; + /*****获取代理开通商家*****/ + static GetAgentMerch(type: number, page: number) { + var result = Service.Request(this.GetAgentMerchPath, "GET", { type, page }); + return result; + } + + private static GetAgentHomePath: string = '/Agent/GetAgentHome'; + /*****代理主页*****/ + static GetAgentHome() { + var result = Service.Request(this.GetAgentHomePath, "GET", { }); + return result; + } + +} +export { + Service, + NvpAgentService +} diff --git a/.svn/pristine/09/098e0d8bc6bbae0e859744bfd14155f6bb7e651b.svn-base b/.svn/pristine/09/098e0d8bc6bbae0e859744bfd14155f6bb7e651b.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..b99e8a0d2e37e3861c6e1e894a17cd7a75cae42e GIT binary patch literal 8925 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 + + + + + + + 收入详情 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 订单信息 + + + + 订单 MT20251017123456 + 已到账 + + + + + 配送费 + +¥5.50 + + + 冲单奖 + +¥3.00 + + + 恶劣天气补贴 + +¥2.00 + + + + + 总计收入 + ¥10.50 + + + + + 配送信息 + + + + + + 张亮麻辣烫 (五道口店) + 成府路28号 + + + + + 拨打商家 + + + + + + + + + 2025-10-17 18:30 下单 · 19:15 送达 + + + + + + 收入明细如有疑问,请联系客服 + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/0b/0b0f655c726f609b3727765bf906f8a0cd01ab27.svn-base b/.svn/pristine/0b/0b0f655c726f609b3727765bf906f8a0cd01ab27.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..c13ac2ace412dcfab683477f40ebcb87df602700 GIT binary patch literal 387 zcmV-}0et?6P)o@j=#jC4^Z(P+nan!A0n z=aL03ysi(p>%!`O8-AAC5VGn*>v{R)4HkyZfE(mj55s!tfFuC=K2Z4`@WcWaWDdaI z{2tz|hZ9l-5Z()^26!Q70p=h&`>QIzbbMj>qUr2#Q~_w_-t_=O%bUNTu<8IbAKq+3 z?L)w4j!^~}bjuy$I+`ohFWC&wivLpR3%-1~6?kpexE8S8Kf)KV* zJf88tNO4J7z}QTq(Qr(FG3MDZEk4QsS(tIZEkb%hcDC+AS% z6I=Qi#AgBsh6X@Vh{EE;9ry{`X;}i`DDF9ukCdIF@5XM`TLerC&dq-T009603yhn* h00006Nkl + + + + + + + 订单详情 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 待取餐 · 请尽快到店取餐 + + + + + + + + 剩余 + 10分钟 + (19:30前送达) + + + 配送费 + ¥5.50 + + + + 订单编号 : + 20251021123456 + + + + 物品明细 : + 食物 + + 共3件商品 + + + 物品重量 : + 0.5kg + + + + + 2025-10-17 18:30下单 + + + 提交异常 + + + + + + + + + + 物品清单 + + + 5件 + + + ¥16 + + + + + + + 康师傅 大食桶红烧牛肉143g/桶 经典红烧酱香免洗桶装速食泡面 + + + ×4 + + + ¥16 + + + + + + {{isShow?'展开':'收入'}} + + + + + + 点击查看完整导航 + + + + + + 取餐地址 + + 张亮麻辣烫(五道口店) + 北京市海淀区成府路28号 + + + + + 取餐号: + A123 + + + + + + + 送餐地址 + + 张* + XX小区3栋502室 + + + + + 备注: + 请放门口,勿按门铃 + + + + + + + + + + + 我已取餐 + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/0b/0bc246c168cc8bbc20d24f8f5e3c2f241ae75b5c.svn-base b/.svn/pristine/0b/0bc246c168cc8bbc20d24f8f5e3c2f241ae75b5c.svn-base new file mode 100644 index 0000000..2b1a78b --- /dev/null +++ b/.svn/pristine/0b/0bc246c168cc8bbc20d24f8f5e3c2f241ae75b5c.svn-base @@ -0,0 +1,145 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__06C2D6A", + "description" : "", + "versionName" : "1.0.8", + "versionCode" : 108, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 25, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/0d/0db2c30e2635710df480df8f2a9965f5e11ee10c.svn-base b/.svn/pristine/0d/0db2c30e2635710df480df8f2a9965f5e11ee10c.svn-base new file mode 100644 index 0000000..9716c2d --- /dev/null +++ b/.svn/pristine/0d/0db2c30e2635710df480df8f2a9965f5e11ee10c.svn-base @@ -0,0 +1,156 @@ +import { Service } from '@/Service/Service'; +/*****用户接口*****/ +class NvpApplyService { + // private static WithDrawPath: string = '/With/WithDraw'; + // /*****佣金提现*****/ + // static WithDraw(money: number, name: string, account: string) { + // var result = Service.Request(this.WithDrawPath, "POST", { money, name, account }); + // return result; + // } + + private static GetSiteMccCodeListPath: string = '/Apply/GetSiteMccCodeList'; + /*****获取mcc列表*****/ + static GetSiteMccCodeList(mercType:string, mchType: string) { + var result = Service.Request(this.GetSiteMccCodeListPath, "GET", {mercType, mchType }); + return result; + } + + + + + + private static GetBankTypeListPath: string = '/Apply/GetBankTypeList'; + /*****获取银行列表*****/ + static GetBankTypeList(name:string) { + var result = Service.Request(this.GetBankTypeListPath, "GET", {name}); + return result; + } + + + private static GetAreaListPath: string = '/Apply/GetAreaList'; + /*****获取银行地区列表*****/ + static GetAreaList(areaCode:string) { + var result = Service.Request(this.GetAreaListPath, "GET", { areaCode}); + return result; + } + + + + private static GetBankCodeListPath: string = '/Apply/GetBankCodeList'; + /*****获取银行代码列表*****/ + static GetBankCodeList(bankType:string,cityCode:string,name:string) { + var result = Service.Request(this.GetBankCodeListPath, "GET", {bankType,cityCode,name}); + return result; + } + + + private static SendApplyMerchPath: string = '/Apply/SendApplyMerch'; + /*****进价提交*****/ + static SendApplyMerch(para:any) { + var result = Service.Request(this.SendApplyMerchPath, "POST", para); + return result; + } + + private static GetAgentMerchLogPath: string = '/Apply/GetAgentMerchLog'; + /*****获取待审核*****/ + static GetAgentMerchLog() { + var result = Service.Request(this.GetAgentMerchLogPath, "GET", {}); + return result; + } + + + + private static AuditApplyPath: string = '/Apply/AuditApply'; + /*****确认资料*****/ + static AuditApply(outId:string) { + var result = Service.Request(this.AuditApplyPath, "POST", {outId}); + return result; + } + + private static SetPayFeePath: string = '/Apply/SetPayFee'; + /*****确认资料*****/ + static SetPayFee(outId:string) { + var result = Service.Request(this.SetPayFeePath, "POST", {outId}); + return result; + } + + + private static GetAssortListPath: string = '/Apply/GetAssortList'; + /*****获取v派分类*****/ + static GetAssortList(code:string) { + var result = Service.Request(this.GetAssortListPath, "GET", {code,parent:'0'}); + return result; + } + + + private static GetAgentMerchPath: string = '/Agent/GetAgentMerch'; + /*****获取已开通商家*****/ + static GetAgentMerch(type:number,page:number) { + var result = Service.Request(this.GetAgentMerchPath, "GET", {type,page}); + return result; + } + + + private static GetAppMerchInfoPath: string = '/Apply/GetAppMerchInfo'; + /*****获取银盛已填写信息*****/ + static GetAppMerchInfo(outId:string) { + var result = Service.Request(this.GetAppMerchInfoPath, "GET", {outId}); + return result; + } + + + private static UpdateMerchPath: string = '/Apply/UpdateMerch'; + /*****修改银盛信息*****/ + static UpdateMerch(obj:any) { + var result = Service.Request(this.UpdateMerchPath, "POST", obj); + return result; + } + + + private static UploadImgPath: string = '/Apply/UploadImg'; + /*****修改银盛图片*****/ + static UploadImg(outId:string,picType:string,img:string) { + var result = Service.Request(this.UploadImgPath, "POST", {outId,picType,img}); + return result; + } + + + private static GetAgentApplyPath: string = '/Apply/GetAgentApply'; + /*****获取添加的商家*****/ + static GetAgentApply(serch:string,page:number) { + var result = Service.Request(this.GetAgentApplyPath, "GET", {serch,page}); + return result; + } + + private static GetCategoryPath: string = '/Apply/GetCategory'; + /*****获取商家类型*****/ + static GetCategory() { + var result = Service.Request(this.GetCategoryPath, "GET", {}); + return result; + } + + + private static AddMerchInfoPath: string = '/Apply/AddMerchInfo'; + /*****添加商户*****/ + static AddMerchInfo(obj:any) { + var result = Service.Request(this.AddMerchInfoPath, "POST", obj); + return result; + } + + + private static BandAppIdPath: string = '/Agent/BandAppId'; + /*****绑定appid*****/ + static BandAppId(merchId:string) { + var result = Service.Request(this.BandAppIdPath, "POST", {merchId}); + return result; + } + + + + + +} +export { + Service, + NvpApplyService +} diff --git a/.svn/pristine/0d/0dee1b91b0ee772ba788ac186336ecd95bb24359.svn-base b/.svn/pristine/0d/0dee1b91b0ee772ba788ac186336ecd95bb24359.svn-base new file mode 100644 index 0000000..bd6002a --- /dev/null +++ b/.svn/pristine/0d/0dee1b91b0ee772ba788ac186336ecd95bb24359.svn-base @@ -0,0 +1,315 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/0e/0e487e4e3058935773c7850a58fb72b6c6527434.svn-base b/.svn/pristine/0e/0e487e4e3058935773c7850a58fb72b6c6527434.svn-base new file mode 100644 index 0000000..9ad4899 --- /dev/null +++ b/.svn/pristine/0e/0e487e4e3058935773c7850a58fb72b6c6527434.svn-base @@ -0,0 +1,218 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/0f/0f01e85c5881090dd08683f19efeb37f1c1436f4.svn-base b/.svn/pristine/0f/0f01e85c5881090dd08683f19efeb37f1c1436f4.svn-base new file mode 100644 index 0000000..c40c451 --- /dev/null +++ b/.svn/pristine/0f/0f01e85c5881090dd08683f19efeb37f1c1436f4.svn-base @@ -0,0 +1,369 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/0f/0f7d1d8c26c662d890046b98c3fa2582463e8057.svn-base b/.svn/pristine/0f/0f7d1d8c26c662d890046b98c3fa2582463e8057.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..849818f0d4be2b35d98d48b6138d3f05876796b6 GIT binary patch literal 474 zcmV<00VV#4P)Px$lu1NER7gwhmBCTMKp2JJ9}ix`LCKL0#160mu>!CH*$Tu8mQ)ZrP%98BkPgsW z(1Y>D#XPfXHWMm;N?0Z1>w@`X`lN9%{k|(E8 z0NNAY3eX2oY&HcE@CEQmsFjk5`Q8Eo%^m~~DRJ?l8M4-PKNvjMPLJ-9x z+4)Wa%?&MA!9Sq5hT1JU((E1pN!fDdol$yKvT%y|IX_l1%MG*r4uX&a5L5HP2XSfy zt&rf+3KM5WFwpEku&lgm1}KSHD;qIq=L+;PRx+*KB3ng@XIHu{Kja`y@m`*l{G1r^ z+AZ2?(Ej!utcg~lB-y1!ZA}w6+Qp8I3SZMd6fCneU1YAAR{$nmXXSZt0Z9)hlEQ|X zTNGRgZDbFNurm+Fa-JYEaa#d&a-ZMCO2)bOqYT<3kO;6@F)?2QBiD&q=^2E)1~DcP zir_p48sFRL{b|(#tbBD7n5a Q5&!@I07*qoM6N<$g6|f_%K!iX literal 0 HcmV?d00001 diff --git a/.svn/pristine/0f/0face613508db1f0145f4ed2e9e305883db8451d.svn-base b/.svn/pristine/0f/0face613508db1f0145f4ed2e9e305883db8451d.svn-base new file mode 100644 index 0000000..bb4153f --- /dev/null +++ b/.svn/pristine/0f/0face613508db1f0145f4ed2e9e305883db8451d.svn-base @@ -0,0 +1,655 @@ + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/0f/0fde8506758cd5e9f7113a4a2b1ce6e714ef4027.svn-base b/.svn/pristine/0f/0fde8506758cd5e9f7113a4a2b1ce6e714ef4027.svn-base new file mode 100644 index 0000000..6a797a0 --- /dev/null +++ b/.svn/pristine/0f/0fde8506758cd5e9f7113a4a2b1ce6e714ef4027.svn-base @@ -0,0 +1,445 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/10/101effb12f92f6daf4155b938021c693ab3e8582.svn-base b/.svn/pristine/10/101effb12f92f6daf4155b938021c693ab3e8582.svn-base new file mode 100644 index 0000000..ec924e9 --- /dev/null +++ b/.svn/pristine/10/101effb12f92f6daf4155b938021c693ab3e8582.svn-base @@ -0,0 +1,86 @@ +{ + "id": "uni-calendar", + "displayName": "uni-calendar 日历", + "version": "1.4.12", + "description": "日历组件", + "keywords": [ + "uni-ui", + "uniui", + "日历", + "", + "打卡", + "日历选择" +], + "repository": "https://github.com/dcloudio/uni-ui", + "engines": { + "HBuilderX": "" + }, + "directories": { + "example": "../../temps/example_temps" + }, +"dcloudext": { + "sale": { + "regular": { + "price": "0.00" + }, + "sourcecode": { + "price": "0.00" + } + }, + "contact": { + "qq": "" + }, + "declaration": { + "ads": "无", + "data": "无", + "permissions": "无" + }, + "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui", + "type": "component-vue" + }, + "uni_modules": { + "dependencies": [], + "encrypt": [], + "platforms": { + "cloud": { + "tcb": "y", + "aliyun": "y", + "alipay": "n" + }, + "client": { + "App": { + "app-vue": "y", + "app-nvue": "y" + }, + "H5-mobile": { + "Safari": "y", + "Android Browser": "y", + "微信浏览器(Android)": "y", + "QQ浏览器(Android)": "y" + }, + "H5-pc": { + "Chrome": "y", + "IE": "y", + "Edge": "y", + "Firefox": "y", + "Safari": "y" + }, + "小程序": { + "微信": "y", + "阿里": "y", + "百度": "y", + "字节跳动": "y", + "QQ": "y" + }, + "快应用": { + "华为": "u", + "联盟": "u" + }, + "Vue": { + "vue2": "y", + "vue3": "y" + } + } + } + } +} diff --git a/.svn/pristine/10/10e2b77417cefcae17c6f64bbdb3ab61e9478fff.svn-base b/.svn/pristine/10/10e2b77417cefcae17c6f64bbdb3ab61e9478fff.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..2859f579b67d0d98c04aea120a38259369b58a38 GIT binary patch literal 456 zcmV;(0XP1MP)wJI^tF>y17ZNv{_Y7qlvP);)a?p$?rG^}qkmdP5GB#>{8yl`FN1R9`tG33QKq$YIClQoq<$JCx9NTpD4hrvojvnz)d<|0+!KX~ z7Lfw>l>9c&*MJVuIjw-6B^I7LJagK}(eQkASnx|fY{a3bt3G~22`*QtWG~$VdDw^p yPgmrbvSbr~00030|LCZ=3;+NC21!IgR09BIi1jIc#jEoG0000微信小程序平台使用 `Canvas 2D` 绘制时有效
如绘制大图或出现裁剪图片空白等情况应适当调大该值,因 `Canvas 2d` 采用同步绘制,需自己把控绘制完成时间 | +| navigation | Boolean | true | 页面是否是原生标题栏:
H5平台当 showAngle 为 true 时,使用插件的页面在 `page.json` 中配置了 `"navigationStyle": "custom"` 时,必须将此值设为 false ,否则四个可拉伸角的触发位置会有偏差。
注:因H5平台的窗口高度是包含标题栏的,而屏幕触摸点的坐标是不包含的 | +| @crop | EventHandle | | 剪裁完成后触发,event = { tempFilePath }。在H5平台下,tempFilePath 为 base64 | + +### 基本用法 +``` + + + +``` +通过ref组件实例可在进入页面后直接打开相册选择图片 +``` +mounted() { + this.$refs.qfImageCropper.chooseImage({ sourceType: ['album'] }); +} +``` +### 使用说明 +1.建议在`pages.json`中将引用插件的页面添加一下配置禁止下拉刷新和禁止页面滑动,防止出现性能或页面抖动等问题。 +``` +{ + "enablePullDownRefresh": false, + "disableScroll": true +} +``` +2.建议使用本插件不要设置过大宽高的目标图片尺寸,建议1365x1365以内,否则可能会导致如下问题: +``` +1.界面卡顿,内存占用过高 +2.生成图片失真(模糊) +3.确定裁剪后一直显示 `裁剪中...`,该问题是由 `uni.canvasToTempFilePath` 无法回调导致,不同平台不同设备限制可能有所不同。 +``` +3.如裁剪后的图片存在偏移的问题,请检查是否受自己项目中父组件或全局样式影响。 +4.src属性设置网络图片时,图片资源必须是能触发 `getImageInfo` API 的 success 回调才可用于插件裁剪。因此小程序平台获取网络图片信息需先配置download域名白名单才能生效。 +5.如果组件无法正常渲染且使用了 `v-if` 时,可尝试将 `v-if` 替换为 `v-show` +6.如果App端导入组件后无法正常渲染,请尝试重新运行 \ No newline at end of file diff --git a/.svn/pristine/12/12cc1f30864fa4fbb3e4529a755dce75b6ff95c4.svn-base b/.svn/pristine/12/12cc1f30864fa4fbb3e4529a755dce75b6ff95c4.svn-base new file mode 100644 index 0000000..099989d --- /dev/null +++ b/.svn/pristine/12/12cc1f30864fa4fbb3e4529a755dce75b6ff95c4.svn-base @@ -0,0 +1,126 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [ + { + "root": "pages/order", + "pages": [ + { + "path": "orderDetail", + "style": { + "navigationBarTitleText": "项目中心", + "navigationStyle": "custom" + } + }, + { + "path" : "navigation", + "style" : + { + "navigationBarTitleText" : "导航", + "navigationStyle": "custom" + } + }, + { + "path" : "abnormal", + "style" : + { + "navigationBarTitleText" : "上报异常", + "navigationStyle": "custom" + } + }, + { + "path" : "grabOrder", + "style" : + { + "navigationBarTitleText" : "订单详情" + } + } + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/task", + "iconPath": "static/tab/task.png", + "selectedIconPath": "static/tab/tasked.png", + "text": "任务" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/12/12e3d1ab0fd1e1053a2010ad29a968c5bbb700a4.svn-base b/.svn/pristine/12/12e3d1ab0fd1e1053a2010ad29a968c5bbb700a4.svn-base new file mode 100644 index 0000000..fade3b2 --- /dev/null +++ b/.svn/pristine/12/12e3d1ab0fd1e1053a2010ad29a968c5bbb700a4.svn-base @@ -0,0 +1,3912 @@ +/* + ColorUi for uniApp v2.1.6 | by 文晓港 2019-05-31 10:44:24 + 仅供学习交流,如作它用所承受的法律责任一概与作者无关 + + *使用ColorUi开发扩展与插件时,请注明基于ColorUi开发 + + (QQ交流群:240787041) +*/ + +/* ================== + 初始化 + ==================== */ +body { + background-color: #f1f1f1; + font-size: 28upx; + color: #333333; + font-family: Helvetica Neue, Helvetica, sans-serif; +} + +view, +scroll-view, +swiper, +button, +input, +textarea, +label, +navigator, +image { + box-sizing: border-box; +} + +.round { + border-radius: 5000upx; +} + +.radius { + border-radius: 6upx; +} + +/* ================== + 图片 + ==================== */ + +image { + max-width: 100%; + display: inline-block; + position: relative; + z-index: 0; +} + +image.loading::before { + content: ""; + background-color: #f5f5f5; + display: block; + position: absolute; + width: 100%; + height: 100%; + z-index: -2; +} + +image.loading::after { + content: "\e7f1"; + font-family: "cuIcon"; + position: absolute; + top: 0; + left: 0; + width: 32upx; + height: 32upx; + line-height: 32upx; + right: 0; + bottom: 0; + z-index: -1; + font-size: 32upx; + margin: auto; + color: #ccc; + -webkit-animation: cuIcon-spin 2s infinite linear; + animation: cuIcon-spin 2s infinite linear; + display: block; +} + +.response { + width: 100%; +} + +/* ================== + 开关 + ==================== */ + +switch, +checkbox, +radio { + position: relative; +} + +switch::after, +switch::before { + font-family: "cuIcon"; + content: "\e645"; + position: absolute; + color: #ffffff !important; + top: 0%; + left: 0upx; + font-size: 26upx; + line-height: 26px; + width: 50%; + text-align: center; + pointer-events: none; + transform: scale(0, 0); + transition: all 0.3s ease-in-out 0s; + z-index: 9; + bottom: 0; + height: 26px; + margin: auto; +} + +switch::before { + content: "\e646"; + right: 0; + transform: scale(1, 1); + left: auto; +} + +switch[checked]::after, +switch.checked::after { + transform: scale(1, 1); +} + +switch[checked]::before, +switch.checked::before { + transform: scale(0, 0); +} + +/* #ifndef MP-ALIPAY */ +radio::before, +checkbox::before { + font-family: "cuIcon"; + content: "\e645"; + position: absolute; + color: #ffffff !important; + top: 50%; + margin-top: -8px; + right: 5px; + font-size: 32upx; + line-height: 16px; + pointer-events: none; + transform: scale(1, 1); + transition: all 0.3s ease-in-out 0s; + z-index: 9; +} + +radio .wx-radio-input, +checkbox .wx-checkbox-input, +radio .uni-radio-input, +checkbox .uni-checkbox-input { + margin: 0; + width: 24px; + height: 24px; +} + +checkbox.round .wx-checkbox-input, +checkbox.round .uni-checkbox-input { + border-radius: 100upx; +} + +/* #endif */ + +switch[checked]::before { + transform: scale(0, 0); +} + +switch .wx-switch-input, +switch .uni-switch-input { + border: none; + padding: 0 24px; + width: 48px; + height: 26px; + margin: 0; + border-radius: 100upx; +} + +switch .wx-switch-input:not([class*="bg-"]), +switch .uni-switch-input:not([class*="bg-"]) { + background: #8799a3 !important; +} + +switch .wx-switch-input::after, +switch .uni-switch-input::after { + margin: auto; + width: 26px; + height: 26px; + border-radius: 100upx; + left: 0upx; + top: 0upx; + bottom: 0upx; + position: absolute; + transform: scale(0.9, 0.9); + transition: all 0.1s ease-in-out 0s; +} + +switch .wx-switch-input.wx-switch-input-checked::after, +switch .uni-switch-input.uni-switch-input-checked::after { + margin: auto; + left: 22px; + box-shadow: none; + transform: scale(0.9, 0.9); +} + +radio-group { + display: inline-block; +} + + + +switch.radius .wx-switch-input::after, +switch.radius .wx-switch-input, +switch.radius .wx-switch-input::before, +switch.radius .uni-switch-input::after, +switch.radius .uni-switch-input, +switch.radius .uni-switch-input::before { + border-radius: 10upx; +} + +switch .wx-switch-input::before, +radio.radio::before, +checkbox .wx-checkbox-input::before, +radio .wx-radio-input::before, +switch .uni-switch-input::before, +radio.radio::before, +checkbox .uni-checkbox-input::before, +radio .uni-radio-input::before { + display: none; +} + +radio.radio[checked]::after, +radio.radio .uni-radio-input-checked::after { + content: ""; + background-color: transparent; + display: block; + position: absolute; + width: 8px; + height: 8px; + z-index: 999; + top: 0upx; + left: 0upx; + right: 0; + bottom: 0; + margin: auto; + border-radius: 200upx; + /* #ifndef MP */ + border: 7px solid #ffffff !important; + /* #endif */ + + /* #ifdef MP */ + border: 8px solid #ffffff !important; + /* #endif */ +} + +.switch-sex::after { + content: "\e71c"; +} + +.switch-sex::before { + content: "\e71a"; +} + +.switch-sex .wx-switch-input, +.switch-sex .uni-switch-input { + background: #e54d42 !important; + border-color: #e54d42 !important; +} + +.switch-sex[checked] .wx-switch-input, +.switch-sex.checked .uni-switch-input { + background: #0081ff !important; + border-color: #0081ff !important; +} + +switch.red[checked] .wx-switch-input.wx-switch-input-checked, +checkbox.red[checked] .wx-checkbox-input, +radio.red[checked] .wx-radio-input, +switch.red.checked .uni-switch-input.uni-switch-input-checked, +checkbox.red.checked .uni-checkbox-input, +radio.red.checked .uni-radio-input { + background-color: #e54d42 !important; + border-color: #e54d42 !important; + color: #ffffff !important; +} + +switch.orange[checked] .wx-switch-input, +checkbox.orange[checked] .wx-checkbox-input, +radio.orange[checked] .wx-radio-input, +switch.orange.checked .uni-switch-input, +checkbox.orange.checked .uni-checkbox-input, +radio.orange.checked .uni-radio-input { + background-color: #f37b1d !important; + border-color: #f37b1d !important; + color: #ffffff !important; +} + +switch.yellow[checked] .wx-switch-input, +checkbox.yellow[checked] .wx-checkbox-input, +radio.yellow[checked] .wx-radio-input, +switch.yellow.checked .uni-switch-input, +checkbox.yellow.checked .uni-checkbox-input, +radio.yellow.checked .uni-radio-input { + background-color: #fbbd08 !important; + border-color: #fbbd08 !important; + color: #333333 !important; +} + +switch.olive[checked] .wx-switch-input, +checkbox.olive[checked] .wx-checkbox-input, +radio.olive[checked] .wx-radio-input, +switch.olive.checked .uni-switch-input, +checkbox.olive.checked .uni-checkbox-input, +radio.olive.checked .uni-radio-input { + background-color: #8dc63f !important; + border-color: #8dc63f !important; + color: #ffffff !important; +} + +switch.green[checked] .wx-switch-input, +switch[checked] .wx-switch-input, +checkbox.green[checked] .wx-checkbox-input, +checkbox[checked] .wx-checkbox-input, +radio.green[checked] .wx-radio-input, +radio[checked] .wx-radio-input, +switch.green.checked .uni-switch-input, +switch.checked .uni-switch-input, +checkbox.green.checked .uni-checkbox-input, +checkbox.checked .uni-checkbox-input, +radio.green.checked .uni-radio-input, +radio.checked .uni-radio-input { + background-color: #39b54a !important; + border-color: #39b54a !important; + color: #ffffff !important; + border-color: #39B54A !important; +} + +switch.cyan[checked] .wx-switch-input, +checkbox.cyan[checked] .wx-checkbox-input, +radio.cyan[checked] .wx-radio-input, +switch.cyan.checked .uni-switch-input, +checkbox.cyan.checked .uni-checkbox-input, +radio.cyan.checked .uni-radio-input { + background-color: #1cbbb4 !important; + border-color: #1cbbb4 !important; + color: #ffffff !important; +} + +switch.blue[checked] .wx-switch-input, +checkbox.blue[checked] .wx-checkbox-input, +radio.blue[checked] .wx-radio-input, +switch.blue.checked .uni-switch-input, +checkbox.blue.checked .uni-checkbox-input, +radio.blue.checked .uni-radio-input { + background-color: #0081ff !important; + border-color: #0081ff !important; + color: #ffffff !important; +} + +switch.purple[checked] .wx-switch-input, +checkbox.purple[checked] .wx-checkbox-input, +radio.purple[checked] .wx-radio-input, +switch.purple.checked .uni-switch-input, +checkbox.purple.checked .uni-checkbox-input, +radio.purple.checked .uni-radio-input { + background-color: #6739b6 !important; + border-color: #6739b6 !important; + color: #ffffff !important; +} + +switch.mauve[checked] .wx-switch-input, +checkbox.mauve[checked] .wx-checkbox-input, +radio.mauve[checked] .wx-radio-input, +switch.mauve.checked .uni-switch-input, +checkbox.mauve.checked .uni-checkbox-input, +radio.mauve.checked .uni-radio-input { + background-color: #9c26b0 !important; + border-color: #9c26b0 !important; + color: #ffffff !important; +} + +switch.pink[checked] .wx-switch-input, +checkbox.pink[checked] .wx-checkbox-input, +radio.pink[checked] .wx-radio-input, +switch.pink.checked .uni-switch-input, +checkbox.pink.checked .uni-checkbox-input, +radio.pink.checked .uni-radio-input { + background-color: #e03997 !important; + border-color: #e03997 !important; + color: #ffffff !important; +} + +switch.brown[checked] .wx-switch-input, +checkbox.brown[checked] .wx-checkbox-input, +radio.brown[checked] .wx-radio-input, +switch.brown.checked .uni-switch-input, +checkbox.brown.checked .uni-checkbox-input, +radio.brown.checked .uni-radio-input { + background-color: #a5673f !important; + border-color: #a5673f !important; + color: #ffffff !important; +} + +switch.grey[checked] .wx-switch-input, +checkbox.grey[checked] .wx-checkbox-input, +radio.grey[checked] .wx-radio-input, +switch.grey.checked .uni-switch-input, +checkbox.grey.checked .uni-checkbox-input, +radio.grey.checked .uni-radio-input { + background-color: #8799a3 !important; + border-color: #8799a3 !important; + color: #ffffff !important; +} + +switch.gray[checked] .wx-switch-input, +checkbox.gray[checked] .wx-checkbox-input, +radio.gray[checked] .wx-radio-input, +switch.gray.checked .uni-switch-input, +checkbox.gray.checked .uni-checkbox-input, +radio.gray.checked .uni-radio-input { + background-color: #f0f0f0 !important; + border-color: #f0f0f0 !important; + color: #333333 !important; +} + +switch.black[checked] .wx-switch-input, +checkbox.black[checked] .wx-checkbox-input, +radio.black[checked] .wx-radio-input, +switch.black.checked .uni-switch-input, +checkbox.black.checked .uni-checkbox-input, +radio.black.checked .uni-radio-input { + background-color: #333333 !important; + border-color: #333333 !important; + color: #ffffff !important; +} + +switch.white[checked] .wx-switch-input, +checkbox.white[checked] .wx-checkbox-input, +radio.white[checked] .wx-radio-input, +switch.white.checked .uni-switch-input, +checkbox.white.checked .uni-checkbox-input, +radio.white.checked .uni-radio-input { + background-color: #ffffff !important; + border-color: #ffffff !important; + color: #333333 !important; +} + +/* ================== + 边框 + ==================== */ + +/* -- 实线 -- */ + +.solid, +.solid-top, +.solid-right, +.solid-bottom, +.solid-left, +.solids, +.solids-top, +.solids-right, +.solids-bottom, +.solids-left, +.dashed, +.dashed-top, +.dashed-right, +.dashed-bottom, +.dashed-left { + position: relative; +} + +.solid::after, +.solid-top::after, +.solid-right::after, +.solid-bottom::after, +.solid-left::after, +.solids::after, +.solids-top::after, +.solids-right::after, +.solids-bottom::after, +.solids-left::after, +.dashed::after, +.dashed-top::after, +.dashed-right::after, +.dashed-bottom::after, +.dashed-left::after { + content: " "; + width: 200%; + height: 200%; + position: absolute; + top: 0; + left: 0; + border-radius: inherit; + transform: scale(0.5); + transform-origin: 0 0; + pointer-events: none; + box-sizing: border-box; +} + +.solid::after { + border: 1upx solid rgba(0, 0, 0, 0.1); +} + +.solid-top::after { + border-top: 1upx solid rgba(0, 0, 0, 0.1); +} + +.solid-right::after { + border-right: 1upx solid rgba(0, 0, 0, 0.1); +} + +.solid-bottom::after { + border-bottom: 1upx solid rgba(0, 0, 0, 0.1); +} + +.solid-left::after { + border-left: 1upx solid rgba(0, 0, 0, 0.1); +} + +.solids::after { + border: 8upx solid #eee; +} + +.solids-top::after { + border-top: 8upx solid #eee; +} + +.solids-right::after { + border-right: 8upx solid #eee; +} + +.solids-bottom::after { + border-bottom: 8upx solid #eee; +} + +.solids-left::after { + border-left: 8upx solid #eee; +} + +/* -- 虚线 -- */ + +.dashed::after { + border: 1upx dashed #ddd; +} + +.dashed-top::after { + border-top: 1upx dashed #ddd; +} + +.dashed-right::after { + border-right: 1upx dashed #ddd; +} + +.dashed-bottom::after { + border-bottom: 1upx dashed #ddd; +} + +.dashed-left::after { + border-left: 1upx dashed #ddd; +} + +/* -- 阴影 -- */ + +.shadow[class*='white'] { + --ShadowSize: 0 1upx 6upx; +} + +.shadow-lg { + --ShadowSize: 0upx 40upx 100upx 0upx; +} + +.shadow-warp { + position: relative; + box-shadow: 0 0 10upx rgba(0, 0, 0, 0.1); +} + +.shadow-warp:before, +.shadow-warp:after { + position: absolute; + content: ""; + top: 20upx; + bottom: 30upx; + left: 20upx; + width: 50%; + box-shadow: 0 30upx 20upx rgba(0, 0, 0, 0.2); + transform: rotate(-3deg); + z-index: -1; +} + +.shadow-warp:after { + right: 20upx; + left: auto; + transform: rotate(3deg); +} + +.shadow-blur { + position: relative; +} + +.shadow-blur::before { + content: ""; + display: block; + background: inherit; + filter: blur(10upx); + position: absolute; + width: 100%; + height: 100%; + top: 10upx; + left: 10upx; + z-index: -1; + opacity: 0.4; + transform-origin: 0 0; + border-radius: inherit; + transform: scale(1, 1); +} + +/* ================== + 按钮 + ==================== */ + +.cu-btn { + position: relative; + border: 0upx; + display: inline-flex; + align-items: center; + justify-content: center; + box-sizing: border-box; + padding: 0 30upx; + font-size: 28upx; + height: 64upx; + line-height: 1; + text-align: center; + text-decoration: none; + overflow: visible; + margin-left: initial; + transform: translate(0upx, 0upx); + margin-right: initial; +} + +.cu-btn::after { + display: none; +} + +.cu-btn:not([class*="bg-"]) { + background-color: #f0f0f0; +} + +.cu-btn[class*="line"] { + background-color: transparent; +} + +.cu-btn[class*="line"]::after { + content: " "; + display: block; + width: 200%; + height: 200%; + position: absolute; + top: 0; + left: 0; + border: 1upx solid currentColor; + transform: scale(0.5); + transform-origin: 0 0; + box-sizing: border-box; + border-radius: 12upx; + z-index: 1; + pointer-events: none; +} + +.cu-btn.round[class*="line"]::after { + border-radius: 1000upx; +} + +.cu-btn[class*="lines"]::after { + border: 6upx solid currentColor; +} + +.cu-btn[class*="bg-"]::after { + display: none; +} + +.cu-btn.sm { + padding: 0 20upx; + font-size: 20upx; + height: 48upx; +} + +.cu-btn.lg { + padding: 0 40upx; + font-size: 32upx; + height: 80upx; +} + +.cu-btn.cuIcon.sm { + width: 48upx; + height: 48upx; +} + +.cu-btn.cuIcon { + width: 64upx; + height: 64upx; + border-radius: 500upx; + padding: 0; +} + +button.cuIcon.lg { + width: 80upx; + height: 80upx; +} + +.cu-btn.shadow-blur::before { + top: 4upx; + left: 4upx; + filter: blur(6upx); + opacity: 0.6; +} + +.cu-btn.button-hover { + transform: translate(1upx, 1upx); +} + +.block { + display: block; +} + +.cu-btn.block { + display: flex; +} + +.cu-btn[disabled] { + opacity: 0.6; + color: #ffffff; +} + +/* ================== + 徽章 + ==================== */ + +.cu-tag { + font-size: 24upx; + vertical-align: middle; + position: relative; + display: inline-flex; + align-items: center; + justify-content: center; + box-sizing: border-box; + padding: 0upx 16upx; + height: 48upx; + font-family: Helvetica Neue, Helvetica, sans-serif; + white-space: nowrap; +} + +.cu-tag:not([class*="bg"]):not([class*="line"]) { + background-color: #f1f1f1; +} + +.cu-tag[class*="line-"]::after { + content: " "; + width: 200%; + height: 200%; + position: absolute; + top: 0; + left: 0; + border: 1upx solid currentColor; + transform: scale(0.5); + transform-origin: 0 0; + box-sizing: border-box; + border-radius: inherit; + z-index: 1; + pointer-events: none; +} + +.cu-tag.radius[class*="line"]::after { + border-radius: 12upx; +} + +.cu-tag.round[class*="line"]::after { + border-radius: 1000upx; +} + +.cu-tag[class*="line-"]::after { + border-radius: 0; +} + +.cu-tag+.cu-tag { + margin-left: 10upx; +} + +.cu-tag.sm { + font-size: 20upx; + padding: 0upx 12upx; + height: 32upx; +} + +.cu-capsule { + display: inline-flex; + vertical-align: middle; +} + +.cu-capsule+.cu-capsule { + margin-left: 10upx; +} + +.cu-capsule .cu-tag { + margin: 0; +} + +.cu-capsule .cu-tag[class*="line-"]:last-child::after { + border-left: 0upx solid transparent; +} + +.cu-capsule .cu-tag[class*="line-"]:first-child::after { + border-right: 0upx solid transparent; +} + +.cu-capsule.radius .cu-tag:first-child { + border-top-left-radius: 6upx; + border-bottom-left-radius: 6upx; +} + +.cu-capsule.radius .cu-tag:last-child::after, +.cu-capsule.radius .cu-tag[class*="line-"] { + border-top-right-radius: 12upx; + border-bottom-right-radius: 12upx; +} + +.cu-capsule.round .cu-tag:first-child { + border-top-left-radius: 200upx; + border-bottom-left-radius: 200upx; + text-indent: 4upx; +} + +.cu-capsule.round .cu-tag:last-child::after, +.cu-capsule.round .cu-tag:last-child { + border-top-right-radius: 200upx; + border-bottom-right-radius: 200upx; + text-indent: -4upx; +} + +.cu-tag.badge { + border-radius: 200upx; + position: absolute; + top: -10upx; + right: -10upx; + font-size: 20upx; + padding: 0upx 10upx; + height: 28upx; + color: #ffffff; +} + +.cu-tag.badge:not([class*="bg-"]) { + background-color: #dd514c; +} + +.cu-tag:empty:not([class*="cuIcon-"]) { + padding: 0upx; + width: 16upx; + height: 16upx; + top: -4upx; + right: -4upx; +} + +.cu-tag[class*="cuIcon-"] { + width: 32upx; + height: 32upx; + top: -4upx; + right: -4upx; +} + +/* ================== + 头像 + ==================== */ + +.cu-avatar { + font-variant: small-caps; + margin: 0; + padding: 0; + display: inline-flex; + text-align: center; + justify-content: center; + align-items: center; + background-color: #ccc; + color: #ffffff; + white-space: nowrap; + position: relative; + width: 64upx; + height: 64upx; + background-size: cover; + background-position: center; + vertical-align: middle; + font-size: 1.5em; +} + +.cu-avatar.sm { + width: 48upx; + height: 48upx; + font-size: 1em; +} + +.cu-avatar.lg { + width: 96upx; + height: 96upx; + font-size: 2em; +} + +.cu-avatar.xl { + width: 128upx; + height: 128upx; + font-size: 2.5em; +} + +.cu-avatar .avatar-text { + font-size: 0.4em; +} + +.cu-avatar-group { + direction: rtl; + unicode-bidi: bidi-override; + padding: 0 10upx 0 40upx; + display: inline-block; +} + +.cu-avatar-group .cu-avatar { + margin-left: -30upx; + border: 4upx solid #f1f1f1; + vertical-align: middle; +} + +.cu-avatar-group .cu-avatar.sm { + margin-left: -20upx; + border: 1upx solid #f1f1f1; +} + +/* ================== + 进度条 + ==================== */ + +.cu-progress { + overflow: hidden; + height: 28upx; + background-color: #ebeef5; + display: inline-flex; + align-items: center; + width: 100%; +} + +.cu-progress+view, +.cu-progress+text { + line-height: 1; +} + +.cu-progress.xs { + height: 10upx; +} + +.cu-progress.sm { + height: 20upx; +} + +.cu-progress view { + width: 0; + height: 100%; + align-items: center; + display: flex; + justify-items: flex-end; + justify-content: space-around; + font-size: 20upx; + color: #ffffff; + transition: width 0.6s ease; +} + +.cu-progress text { + align-items: center; + display: flex; + font-size: 20upx; + color: #333333; + text-indent: 10upx; +} + +.cu-progress.text-progress { + padding-right: 60upx; +} + +.cu-progress.striped view { + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 72upx 72upx; +} + +.cu-progress.active view { + animation: progress-stripes 2s linear infinite; +} + +@keyframes progress-stripes { + from { + background-position: 72upx 0; + } + + to { + background-position: 0 0; + } +} + +/* ================== + 加载 + ==================== */ + +.cu-load { + display: block; + line-height: 3em; + text-align: center; +} + +.cu-load::before { + font-family: "cuIcon"; + display: inline-block; + margin-right: 6upx; +} + +.cu-load.loading::before { + content: "\e67a"; + animation: cuIcon-spin 2s infinite linear; +} + +.cu-load.loading::after { + content: "加载中..."; +} + +.cu-load.over::before { + content: "\e64a"; +} + +.cu-load.over::after { + content: "没有更多了"; +} + +.cu-load.erro::before { + content: "\e658"; +} + +.cu-load.erro::after { + content: "加载失败"; +} + +.cu-load.load-cuIcon::before { + font-size: 32upx; +} + +.cu-load.load-cuIcon::after { + display: none; +} + +.cu-load.load-cuIcon.over { + display: none; +} + +.cu-load.load-modal { + position: fixed; + top: 0; + right: 0; + bottom: 140upx; + left: 0; + margin: auto; + width: 260upx; + height: 260upx; + background-color: #ffffff; + border-radius: 10upx; + box-shadow: 0 0 0upx 2000upx rgba(0, 0, 0, 0.5); + display: flex; + align-items: center; + flex-direction: column; + justify-content: center; + font-size: 28upx; + z-index: 9999; + line-height: 2.4em; +} + +.cu-load.load-modal [class*="cuIcon-"] { + font-size: 60upx; +} + +.cu-load.load-modal image { + width: 70upx; + height: 70upx; +} + +.cu-load.load-modal::after { + content: ""; + position: absolute; + background-color: #ffffff; + border-radius: 50%; + width: 200upx; + height: 200upx; + font-size: 10px; + border-top: 6upx solid rgba(0, 0, 0, 0.05); + border-right: 6upx solid rgba(0, 0, 0, 0.05); + border-bottom: 6upx solid rgba(0, 0, 0, 0.05); + border-left: 6upx solid #f37b1d; + animation: cuIcon-spin 1s infinite linear; + z-index: -1; +} + +.load-progress { + pointer-events: none; + top: 0; + position: fixed; + width: 100%; + left: 0; + z-index: 2000; +} + +.load-progress.hide { + display: none; +} + +.load-progress .load-progress-bar { + position: relative; + width: 100%; + height: 4upx; + overflow: hidden; + transition: all 200ms ease 0s; +} + +.load-progress .load-progress-spinner { + position: absolute; + top: 10upx; + right: 10upx; + z-index: 2000; + display: block; +} + +.load-progress .load-progress-spinner::after { + content: ""; + display: block; + width: 24upx; + height: 24upx; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: solid 4upx transparent; + border-top-color: inherit; + border-left-color: inherit; + border-radius: 50%; + -webkit-animation: load-progress-spinner 0.4s linear infinite; + animation: load-progress-spinner 0.4s linear infinite; +} + +@-webkit-keyframes load-progress-spinner { + 0% { + -webkit-transform: rotate(0); + transform: rotate(0); + } + + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@keyframes load-progress-spinner { + 0% { + -webkit-transform: rotate(0); + transform: rotate(0); + } + + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +/* ================== + 列表 + ==================== */ +.grayscale { + filter: grayscale(1); +} + +.cu-list+.cu-list { + margin-top: 30upx +} + +.cu-list>.cu-item { + transition: all .6s ease-in-out 0s; + transform: translateX(0upx) +} + +.cu-list>.cu-item.move-cur { + transform: translateX(-260upx) +} + +.cu-list>.cu-item .move { + position: absolute; + right: 0; + display: flex; + width: 260upx; + height: 100%; + transform: translateX(100%) +} + +.cu-list>.cu-item .move view { + display: flex; + flex: 1; + justify-content: center; + align-items: center +} + +.cu-list.menu-avatar { + overflow: hidden; +} + +.cu-list.menu-avatar>.cu-item { + position: relative; + display: flex; + padding-right: 10upx; + height: 140upx; + background-color: #ffffff; + justify-content: flex-end; + align-items: center +} + +.cu-list.menu-avatar>.cu-item>.cu-avatar { + position: absolute; + left: 30upx +} + +.cu-list.menu-avatar>.cu-item .flex .text-cut { + max-width: 510upx +} + +.cu-list.menu-avatar>.cu-item .content { + position: absolute; + left: 146upx; + width: calc(100% - 96upx - 60upx - 120upx - 20upx); + line-height: 1.6em; +} + +.cu-list.menu-avatar>.cu-item .content.flex-sub { + width: calc(100% - 96upx - 60upx - 20upx); +} + +.cu-list.menu-avatar>.cu-item .content>view:first-child { + font-size: 30upx; + display: flex; + align-items: center +} + +.cu-list.menu-avatar>.cu-item .content .cu-tag.sm { + display: inline-block; + margin-left: 10upx; + height: 28upx; + font-size: 16upx; + line-height: 32upx +} + +.cu-list.menu-avatar>.cu-item .action { + width: 100upx; + text-align: center +} + +.cu-list.menu-avatar>.cu-item .action view+view { + margin-top: 10upx +} + +.cu-list.menu-avatar.comment>.cu-item .content { + position: relative; + left: 0; + width: auto; + flex: 1; +} + +.cu-list.menu-avatar.comment>.cu-item { + padding: 30upx 30upx 30upx 120upx; + height: auto +} + +.cu-list.menu-avatar.comment .cu-avatar { + align-self: flex-start +} + +.cu-list.menu>.cu-item { + position: relative; + display: flex; + padding: 0 30upx; + min-height: 100upx; + background-color: #ffffff; + justify-content: space-between; + align-items: center +} + +.cu-list.menu>.cu-item:last-child:after { + border: none +} + +.cu-list.menu-avatar>.cu-item:after, +.cu-list.menu>.cu-item:after { + position: absolute; + top: 0; + left: 0; + box-sizing: border-box; + width: 200%; + height: 200%; + border-bottom: 1upx solid #ddd; + border-radius: inherit; + content: " "; + transform: scale(.5); + transform-origin: 0 0; + pointer-events: none +} + +.cu-list.menu>.cu-item.grayscale { + background-color: #f5f5f5 +} + +.cu-list.menu>.cu-item.cur { + background-color: #fcf7e9 +} + +.cu-list.menu>.cu-item.arrow { + padding-right: 90upx +} + +.cu-list.menu>.cu-item.arrow:before { + position: absolute; + top: 0; + right: 30upx; + bottom: 0; + display: block; + margin: auto; + width: 30upx; + height: 30upx; + color: #8799a3; + content: "\e6a3"; + text-align: center; + font-size: 34upx; + font-family: cuIcon; + line-height: 30upx +} + +.cu-list.menu>.cu-item button.content { + padding: 0; + background-color: transparent; + justify-content: flex-start +} + +.cu-list.menu>.cu-item button.content:after { + display: none +} + +.cu-list.menu>.cu-item .cu-avatar-group .cu-avatar { + border-color: #ffffff +} + +.cu-list.menu>.cu-item .content>view:first-child { + display: flex; + align-items: center +} + +.cu-list.menu>.cu-item .content>text[class*=cuIcon] { + display: inline-block; + margin-right: 10upx; + width: 1.6em; + text-align: center +} + +.cu-list.menu>.cu-item .content>image { + display: inline-block; + margin-right: 10upx; + width: 1.6em; + height: 1.6em; + vertical-align: middle +} + +.cu-list.menu>.cu-item .content { + font-size: 30upx; + line-height: 1.6em; + flex: 1 +} + +.cu-list.menu>.cu-item .content .cu-tag.sm { + display: inline-block; + margin-left: 10upx; + height: 28upx; + font-size: 16upx; + line-height: 32upx +} + +.cu-list.menu>.cu-item .action .cu-tag:empty { + right: 10upx +} + +.cu-list.menu { + display: block; + overflow: hidden +} + +.cu-list.menu.sm-border>.cu-item:after { + left: 30upx; + width: calc(200% - 120upx) +} + +.cu-list.grid>.cu-item { + position: relative; + display: flex; + padding: 20upx 0 30upx; + transition-duration: 0s; + flex-direction: column +} + +.cu-list.grid>.cu-item:after { + position: absolute; + top: 0; + left: 0; + box-sizing: border-box; + width: 200%; + height: 200%; + border-right: 1px solid rgba(0, 0, 0, .1); + border-bottom: 1px solid rgba(0, 0, 0, .1); + border-radius: inherit; + content: " "; + transform: scale(.5); + transform-origin: 0 0; + pointer-events: none +} + +.cu-list.grid>.cu-item text { + display: block; + margin-top: 10upx; + color: #888; + font-size: 26upx; + line-height: 40upx +} + +.cu-list.grid>.cu-item [class*=cuIcon] { + position: relative; + display: block; + margin-top: 20upx; + width: 100%; + font-size: 48upx +} + +.cu-list.grid>.cu-item .cu-tag { + right: auto; + left: 50%; + margin-left: 20upx +} + +.cu-list.grid { + background-color: #ffffff; + text-align: center +} + +.cu-list.grid.no-border>.cu-item { + padding-top: 10upx; + padding-bottom: 20upx +} + +.cu-list.grid.no-border>.cu-item:after { + border: none +} + +.cu-list.grid.no-border { + padding: 20upx 10upx +} + +.cu-list.grid.col-3>.cu-item:nth-child(3n):after, +.cu-list.grid.col-4>.cu-item:nth-child(4n):after, +.cu-list.grid.col-5>.cu-item:nth-child(5n):after { + border-right-width: 0 +} + +.cu-list.card-menu { + overflow: hidden; + margin-right: 30upx; + margin-left: 30upx; + border-radius: 20upx +} + + +/* ================== + 操作条 + ==================== */ + +.cu-bar { + display: flex; + position: relative; + align-items: center; + min-height: 100upx; + justify-content: space-between; +} + +.cu-bar .action { + display: flex; + align-items: center; + height: 100%; + justify-content: center; + max-width: 100%; +} + +.cu-bar .action.border-title { + position: relative; + top: -10upx; +} + +.cu-bar .action.border-title text[class*="bg-"]:last-child { + position: absolute; + bottom: -0.5rem; + min-width: 2rem; + height: 6upx; + left: 0; +} + +.cu-bar .action.sub-title { + position: relative; + top: -0.2rem; +} + +.cu-bar .action.sub-title text { + position: relative; + z-index: 1; +} + +.cu-bar .action.sub-title text[class*="bg-"]:last-child { + position: absolute; + display: inline-block; + bottom: -0.2rem; + border-radius: 6upx; + width: 100%; + height: 0.6rem; + left: 0.6rem; + opacity: 0.3; + z-index: 0; +} + +.cu-bar .action.sub-title text[class*="text-"]:last-child { + position: absolute; + display: inline-block; + bottom: -0.7rem; + left: 0.5rem; + opacity: 0.2; + z-index: 0; + text-align: right; + font-weight: 900; + font-size: 36upx; +} + +.cu-bar.justify-center .action.border-title text:last-child, +.cu-bar.justify-center .action.sub-title text:last-child { + left: 0; + right: 0; + margin: auto; + text-align: center; +} + +.cu-bar .action:first-child { + margin-left: 30upx; + font-size: 30upx; +} + +.cu-bar .action text.text-cut { + text-align: left; + width: 100%; +} + +.cu-bar .cu-avatar:first-child { + margin-left: 20upx; +} + +.cu-bar .action:first-child>text[class*="cuIcon-"] { + margin-left: -0.3em; + margin-right: 0.3em; +} + +.cu-bar .action:last-child { + margin-right: 30upx; +} + +.cu-bar .action>text[class*="cuIcon-"], +.cu-bar .action>view[class*="cuIcon-"] { + font-size: 36upx; +} + +.cu-bar .action>text[class*="cuIcon-"]+text[class*="cuIcon-"] { + margin-left: 0.5em; +} + +.cu-bar .content { + position: absolute; + text-align: center; + width: calc(100% - 340upx); + left: 0; + right: 0; + bottom: 0; + top: 0; + margin: auto; + height: 60upx; + font-size: 32upx; + line-height: 60upx; + cursor: none; + pointer-events: none; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; +} + +.cu-bar.ios .content { + bottom: 7px; + height: 30px; + font-size: 32upx; + line-height: 30px; +} + +.cu-bar.btn-group { + justify-content: space-around; +} + +.cu-bar.btn-group button { + padding: 20upx 32upx; +} + +.cu-bar.btn-group button { + flex: 1; + margin: 0 20upx; + max-width: 50%; +} + +.cu-bar .search-form { + background-color: #f5f5f5; + line-height: 64upx; + height: 64upx; + font-size: 24upx; + color: #333333; + flex: 1; + display: flex; + align-items: center; + margin: 0 30upx; +} + +.cu-bar .search-form+.action { + margin-right: 30upx; +} + +.cu-bar .search-form input { + flex: 1; + padding-right: 30upx; + height: 64upx; + line-height: 64upx; + font-size: 26upx; + background-color: transparent; +} + +.cu-bar .search-form [class*="cuIcon-"] { + margin: 0 0.5em 0 0.8em; +} + +.cu-bar .search-form [class*="cuIcon-"]::before { + top: 0upx; +} + +.cu-bar.fixed, +.nav.fixed { + position: fixed; + width: 100%; + top: 0; + z-index: 1024; + box-shadow: 0 1upx 6upx rgba(0, 0, 0, 0.1); +} + +.cu-bar.foot { + position: fixed; + width: 100%; + bottom: 0; + z-index: 1024; + box-shadow: 0 -1upx 6upx rgba(0, 0, 0, 0.1); +} + +.cu-bar.tabbar { + padding: 0; + height: calc(100upx + env(safe-area-inset-bottom) / 2); + padding-bottom: calc(env(safe-area-inset-bottom) / 2); +} + +.cu-tabbar-height { + min-height: 100upx; + height: calc(100upx + env(safe-area-inset-bottom) / 2); +} + +.cu-bar.tabbar.shadow { + box-shadow: 0 -1upx 6upx rgba(0, 0, 0, 0.1); +} + +.cu-bar.tabbar .action { + font-size: 22upx; + position: relative; + flex: 1; + text-align: center; + padding: 0; + display: block; + height: auto; + line-height: 1; + margin: 0; + background-color: inherit; + overflow: initial; +} + +.cu-bar.tabbar.shop .action { + width: 140upx; + flex: initial; +} + +.cu-bar.tabbar .action.add-action { + position: relative; + z-index: 2; + padding-top: 50upx; +} + +.cu-bar.tabbar .action.add-action [class*="cuIcon-"] { + position: absolute; + width: 70upx; + z-index: 2; + height: 70upx; + border-radius: 50%; + line-height: 70upx; + font-size: 50upx; + top: -35upx; + left: 0; + right: 0; + margin: auto; + padding: 0; +} + +.cu-bar.tabbar .action.add-action::after { + content: ""; + position: absolute; + width: 100upx; + height: 100upx; + top: -50upx; + left: 0; + right: 0; + margin: auto; + box-shadow: 0 -3upx 8upx rgba(0, 0, 0, 0.08); + border-radius: 50upx; + background-color: inherit; + z-index: 0; +} + +.cu-bar.tabbar .action.add-action::before { + content: ""; + position: absolute; + width: 100upx; + height: 30upx; + bottom: 30upx; + left: 0; + right: 0; + margin: auto; + background-color: inherit; + z-index: 1; +} + +.cu-bar.tabbar .btn-group { + flex: 1; + display: flex; + justify-content: space-around; + align-items: center; + padding: 0 10upx; +} + +.cu-bar.tabbar button.action::after { + border: 0; +} + +.cu-bar.tabbar .action [class*="cuIcon-"] { + width: 100upx; + position: relative; + display: block; + height: auto; + margin: 0 auto 10upx; + text-align: center; + font-size: 40upx; +} + +.cu-bar.tabbar .action .cuIcon-cu-image { + margin: 0 auto; +} + +.cu-bar.tabbar .action .cuIcon-cu-image image { + width: 50upx; + height: 50upx; + display: inline-block; +} + +.cu-bar.tabbar .submit { + align-items: center; + display: flex; + justify-content: center; + text-align: center; + position: relative; + flex: 2; + align-self: stretch; +} + +.cu-bar.tabbar .submit:last-child { + flex: 2.6; +} + +.cu-bar.tabbar .submit+.submit { + flex: 2; +} + +.cu-bar.tabbar.border .action::before { + content: " "; + width: 200%; + height: 200%; + position: absolute; + top: 0; + left: 0; + transform: scale(0.5); + transform-origin: 0 0; + border-right: 1upx solid rgba(0, 0, 0, 0.1); + z-index: 3; +} + +.cu-bar.tabbar.border .action:last-child:before { + display: none; +} + +.cu-bar.input { + padding-right: 20upx; + background-color: #ffffff; +} + +.cu-bar.input input { + overflow: initial; + line-height: 64upx; + height: 64upx; + min-height: 64upx; + flex: 1; + font-size: 30upx; + margin: 0 20upx; +} + +.cu-bar.input .action { + margin-left: 20upx; +} + +.cu-bar.input .action [class*="cuIcon-"] { + font-size: 48upx; +} + +.cu-bar.input input+.action { + margin-right: 20upx; + margin-left: 0upx; +} + +.cu-bar.input .action:first-child [class*="cuIcon-"] { + margin-left: 0upx; +} + +.cu-custom { + display: block; + position: relative; +} + +.cu-custom .cu-bar .content { + width: calc(100% - 440upx); +} + +/* #ifdef MP-ALIPAY */ +.cu-custom .cu-bar .action .cuIcon-back { + opacity: 0; +} + +/* #endif */ + +.cu-custom .cu-bar .content image { + height: 60upx; + width: 240upx; +} + +.cu-custom .cu-bar { + min-height: 0px; + /* #ifdef MP-WEIXIN */ + padding-right: 220upx; + /* #endif */ + /* #ifdef MP-ALIPAY */ + padding-right: 150upx; + /* #endif */ + box-shadow: 0upx 0upx 0upx; + z-index: 9999; +} + +.cu-custom .cu-bar .border-custom { + position: relative; + background: rgba(0, 0, 0, 0.15); + border-radius: 1000upx; + height: 30px; +} + +.cu-custom .cu-bar .border-custom::after { + content: " "; + width: 200%; + height: 200%; + position: absolute; + top: 0; + left: 0; + border-radius: inherit; + transform: scale(0.5); + transform-origin: 0 0; + pointer-events: none; + box-sizing: border-box; + border: 1upx solid #ffffff; + opacity: 0.5; +} + +.cu-custom .cu-bar .border-custom::before { + content: " "; + width: 1upx; + height: 110%; + position: absolute; + top: 22.5%; + left: 0; + right: 0; + margin: auto; + transform: scale(0.5); + transform-origin: 0 0; + pointer-events: none; + box-sizing: border-box; + opacity: 0.6; + background-color: #ffffff; +} + +.cu-custom .cu-bar .border-custom text { + display: block; + flex: 1; + margin: auto !important; + text-align: center; + font-size: 34upx; +} + +/* ================== + 导航栏 + ==================== */ + +.nav { + white-space: nowrap; +} + +::-webkit-scrollbar { + display: none; +} + +.nav .cu-item { + height: 90upx; + display: inline-block; + line-height: 90upx; + margin: 0 10upx; + padding: 0 20upx; +} + +.nav .cu-item.cur { + border-bottom: 4upx solid; +} + +/* ================== + 时间轴 + ==================== */ + +.cu-timeline { + display: block; + background-color: #ffffff; +} + +.cu-timeline .cu-time { + width: 120upx; + text-align: center; + padding: 20upx 0; + font-size: 26upx; + color: #888; + display: block; +} + +.cu-timeline>.cu-item { + padding: 30upx 30upx 30upx 120upx; + position: relative; + display: block; + z-index: 0; +} + +.cu-timeline>.cu-item:not([class*="text-"]) { + color: #ccc; +} + +.cu-timeline>.cu-item::after { + content: ""; + display: block; + position: absolute; + width: 1upx; + background-color: #ddd; + left: 60upx; + height: 100%; + top: 0; + z-index: 8; +} + +.cu-timeline>.cu-item::before { + font-family: "cuIcon"; + display: block; + position: absolute; + top: 36upx; + z-index: 9; + background-color: #ffffff; + width: 50upx; + height: 50upx; + text-align: center; + border: none; + line-height: 50upx; + left: 36upx; +} + +.cu-timeline>.cu-item:not([class*="cuIcon-"])::before { + content: "\e763"; +} + +.cu-timeline>.cu-item[class*="cuIcon-"]::before { + background-color: #ffffff; + width: 50upx; + height: 50upx; + text-align: center; + border: none; + line-height: 50upx; + left: 36upx; +} + +.cu-timeline>.cu-item>.content { + padding: 30upx; + border-radius: 6upx; + display: block; + line-height: 1.6; +} + +.cu-timeline>.cu-item>.content:not([class*="bg-"]) { + background-color: #f1f1f1; + color: #333333; +} + +.cu-timeline>.cu-item>.content+.content { + margin-top: 20upx; +} + +/* ================== + 聊天 + ==================== */ + +.cu-chat { + display: flex; + flex-direction: column; +} + +.cu-chat .cu-item { + display: flex; + padding: 30upx 30upx 70upx; + position: relative; +} + +.cu-chat .cu-item>.cu-avatar { + width: 80upx; + height: 80upx; +} + +.cu-chat .cu-item>.main { + max-width: calc(100% - 260upx); + margin: 0 40upx; + display: flex; + align-items: center; +} + +.cu-chat .cu-item>image { + height: 320upx; +} + +.cu-chat .cu-item>.main .content { + padding: 20upx; + border-radius: 6upx; + display: inline-flex; + max-width: 100%; + align-items: center; + font-size: 30upx; + position: relative; + min-height: 80upx; + line-height: 40upx; + text-align: left; +} + +.cu-chat .cu-item>.main .content:not([class*="bg-"]) { + background-color: #ffffff; + color: #333333; +} + +.cu-chat .cu-item .date { + position: absolute; + font-size: 24upx; + color: #8799a3; + width: calc(100% - 320upx); + bottom: 20upx; + left: 160upx; +} + +.cu-chat .cu-item .action { + padding: 0 30upx; + display: flex; + align-items: center; +} + +.cu-chat .cu-item>.main .content::after { + content: ""; + top: 27upx; + transform: rotate(45deg); + position: absolute; + z-index: 100; + display: inline-block; + overflow: hidden; + width: 24upx; + height: 24upx; + left: -12upx; + right: initial; + background-color: inherit; +} + +.cu-chat .cu-item.self>.main .content::after { + left: auto; + right: -12upx; +} + +.cu-chat .cu-item>.main .content::before { + content: ""; + top: 30upx; + transform: rotate(45deg); + position: absolute; + z-index: -1; + display: inline-block; + overflow: hidden; + width: 24upx; + height: 24upx; + left: -12upx; + right: initial; + background-color: inherit; + filter: blur(5upx); + opacity: 0.3; +} + +.cu-chat .cu-item>.main .content:not([class*="bg-"])::before { + background-color: #333333; + opacity: 0.1; +} + +.cu-chat .cu-item.self>.main .content::before { + left: auto; + right: -12upx; +} + +.cu-chat .cu-item.self { + justify-content: flex-end; + text-align: right; +} + +.cu-chat .cu-info { + display: inline-block; + margin: 20upx auto; + font-size: 24upx; + padding: 8upx 12upx; + background-color: rgba(0, 0, 0, 0.2); + border-radius: 6upx; + color: #ffffff; + max-width: 400upx; + line-height: 1.4; +} + +/* ================== + 卡片 + ==================== */ + +.cu-card { + display: block; + overflow: hidden; +} + +.cu-card>.cu-item { + display: block; + background-color: #ffffff; + overflow: hidden; + border-radius: 10upx; + margin: 30upx; +} + +.cu-card>.cu-item.shadow-blur { + overflow: initial; +} + +.cu-card.no-card>.cu-item { + margin: 0upx; + border-radius: 0upx; +} + +.cu-card .grid.grid-square { + margin-bottom: -20upx; +} + +.cu-card.case .image { + position: relative; +} + +.cu-card.case .image image { + width: 100%; +} + +.cu-card.case .image .cu-tag { + position: absolute; + right: 0; + top: 0; +} + +.cu-card.case .image .cu-bar { + position: absolute; + bottom: 0; + width: 100%; + background-color: transparent; + padding: 0upx 30upx; +} + +.cu-card.case.no-card .image { + margin: 30upx 30upx 0; + overflow: hidden; + border-radius: 10upx; +} + +.cu-card.dynamic { + display: block; +} + +.cu-card.dynamic>.cu-item { + display: block; + background-color: #ffffff; + overflow: hidden; +} + +.cu-card.dynamic>.cu-item>.text-content { + padding: 0 30upx 0; + max-height: 6.4em; + overflow: hidden; + font-size: 30upx; + margin-bottom: 20upx; +} + +.cu-card.dynamic>.cu-item .square-img { + width: 100%; + height: 200upx; + border-radius: 6upx; +} + +.cu-card.dynamic>.cu-item .only-img { + width: 100%; + height: 320upx; + border-radius: 6upx; +} + +/* card.dynamic>.cu-item .comment { + padding: 20upx; + background-color: #f1f1f1; + margin: 0 30upx 30upx; + border-radius: 6upx; +} */ + +.cu-card.article { + display: block; +} + +.cu-card.article>.cu-item { + padding-bottom: 30upx; +} + +.cu-card.article>.cu-item .title { + font-size: 30upx; + font-weight: 900; + color: #333333; + line-height: 100upx; + padding: 0 30upx; +} + +.cu-card.article>.cu-item .content { + display: flex; + padding: 0 30upx; +} + +.cu-card.article>.cu-item .content>image { + width: 240upx; + height: 6.4em; + margin-right: 20upx; + border-radius: 6upx; +} + +.cu-card.article>.cu-item .content .desc { + flex: 1; + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.cu-card.article>.cu-item .content .text-content { + font-size: 28upx; + color: #888; + height: 4.8em; + overflow: hidden; +} + +/* ================== + 表单 + ==================== */ + +.cu-form-group { + background-color: #ffffff; + padding: 1upx 30upx; + display: flex; + align-items: center; + min-height: 100upx; + justify-content: space-between; +} + +.cu-form-group+.cu-form-group { + border-top: 1upx solid #eee; +} + +.cu-form-group .title { + text-align: justify; + padding-right: 30upx; + font-size: 30upx; + position: relative; + height: 60upx; + line-height: 60upx; +} + +.cu-form-group input { + flex: 1; + font-size: 30upx; + color: #555; + padding-right: 20upx; +} + +.cu-form-group>text[class*="cuIcon-"] { + font-size: 36upx; + padding: 0; + box-sizing: border-box; +} + +.cu-form-group textarea { + margin: 32upx 0 30upx; + height: 4.6em; + width: 100%; + line-height: 1.2em; + flex: 1; + font-size: 28upx; + padding: 0; +} + +.cu-form-group.align-start .title { + height: 1em; + margin-top: 32upx; + line-height: 1em; +} + +.cu-form-group picker { + flex: 1; + padding-right: 40upx; + overflow: hidden; + position: relative; +} + +.cu-form-group picker .picker { + line-height: 100upx; + font-size: 28upx; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; + width: 100%; + text-align: right; +} + +.cu-form-group picker::after { + font-family: cuIcon; + display: block; + content: "\e6a3"; + position: absolute; + font-size: 34upx; + color: #8799a3; + line-height: 100upx; + width: 60upx; + text-align: center; + top: 0; + bottom: 0; + right: -20upx; + margin: auto; +} + +.cu-form-group textarea[disabled], +.cu-form-group textarea[disabled] .placeholder { + color: transparent; +} + +/* ================== + 模态窗口 + ==================== */ + +.cu-modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1110; + opacity: 0; + outline: 0; + text-align: center; + -ms-transform: scale(1.185); + transform: scale(1.185); + backface-visibility: hidden; + perspective: 2000upx; + background: rgba(0, 0, 0, 0.6); + transition: all 0.3s ease-in-out 0s; + pointer-events: none; +} + +.cu-modal::before { + content: "\200B"; + display: inline-block; + height: 100%; + vertical-align: middle; +} + +.cu-modal.show { + opacity: 1; + transition-duration: 0.3s; + -ms-transform: scale(1); + transform: scale(1); + overflow-x: hidden; + overflow-y: auto; + pointer-events: auto; +} + +.cu-dialog { + position: relative; + display: inline-block; + vertical-align: middle; + margin-left: auto; + margin-right: auto; + width: 680upx; + max-width: 100%; + background-color: #f8f8f8; + border-radius: 10upx; + overflow: hidden; +} + +.cu-modal.bottom-modal::before { + vertical-align: bottom; +} + +.cu-modal.bottom-modal .cu-dialog { + width: 100%; + border-radius: 0; +} + +.cu-modal.bottom-modal { + margin-bottom: -1000upx; +} + +.cu-modal.bottom-modal.show { + margin-bottom: 0; +} + +.cu-modal.drawer-modal { + transform: scale(1); + display: flex; +} + +.cu-modal.drawer-modal .cu-dialog { + height: 100%; + min-width: 200upx; + border-radius: 0; + margin: initial; + transition-duration: 0.3s; +} + +.cu-modal.drawer-modal.justify-start .cu-dialog { + transform: translateX(-100%); +} + +.cu-modal.drawer-modal.justify-end .cu-dialog { + transform: translateX(100%); +} + +.cu-modal.drawer-modal.show .cu-dialog { + transform: translateX(0%); +} +.cu-modal .cu-dialog>.cu-bar:first-child .action{ + min-width: 100rpx; + margin-right: 0; + min-height: 100rpx; +} +/* ================== + 轮播 + ==================== */ +swiper .a-swiper-dot { + display: inline-block; + width: 16upx; + height: 16upx; + background: rgba(0, 0, 0, .3); + border-radius: 50%; + vertical-align: middle; +} + +swiper[class*="-dot"] .wx-swiper-dots, +swiper[class*="-dot"] .a-swiper-dots, +swiper[class*="-dot"] .uni-swiper-dots { + display: flex; + align-items: center; + width: 100%; + justify-content: center; +} + +swiper.square-dot .wx-swiper-dot, +swiper.square-dot .a-swiper-dot, +swiper.square-dot .uni-swiper-dot { + background-color: #ffffff; + opacity: 0.4; + width: 10upx; + height: 10upx; + border-radius: 20upx; + margin: 0 8upx !important; +} + +swiper.square-dot .wx-swiper-dot.wx-swiper-dot-active, +swiper.square-dot .a-swiper-dot.a-swiper-dot-active, +swiper.square-dot .uni-swiper-dot.uni-swiper-dot-active { + opacity: 1; + width: 30upx; +} + +swiper.round-dot .wx-swiper-dot, +swiper.round-dot .a-swiper-dot, +swiper.round-dot .uni-swiper-dot { + width: 10upx; + height: 10upx; + position: relative; + margin: 4upx 8upx !important; +} + +swiper.round-dot .wx-swiper-dot.wx-swiper-dot-active::after, +swiper.round-dot .a-swiper-dot.a-swiper-dot-active::after, +swiper.round-dot .uni-swiper-dot.uni-swiper-dot-active::after { + content: ""; + position: absolute; + width: 10upx; + height: 10upx; + top: 0upx; + left: 0upx; + right: 0; + bottom: 0; + margin: auto; + background-color: #ffffff; + border-radius: 20upx; +} + +swiper.round-dot .wx-swiper-dot.wx-swiper-dot-active, +swiper.round-dot .a-swiper-dot.a-swiper-dot-active, +swiper.round-dot .uni-swiper-dot.uni-swiper-dot-active { + width: 18upx; + height: 18upx; +} + +.screen-swiper { + min-height: 375upx; +} + +.screen-swiper image, +.screen-swiper video, +.swiper-item image, +.swiper-item video { + width: 100%; + display: block; + height: 100%; + margin: 0; + pointer-events: none; +} + +.card-swiper { + height: 420upx !important; +} + +.card-swiper swiper-item { + width: 610upx !important; + left: 70upx; + box-sizing: border-box; + padding: 40upx 0upx 70upx; + overflow: initial; +} + +.card-swiper swiper-item .swiper-item { + width: 100%; + display: block; + height: 100%; + border-radius: 10upx; + transform: scale(0.9); + transition: all 0.2s ease-in 0s; + overflow: hidden; +} + +.card-swiper swiper-item.cur .swiper-item { + transform: none; + transition: all 0.2s ease-in 0s; +} + + +.tower-swiper { + height: 420upx; + position: relative; + max-width: 750upx; + overflow: hidden; +} + +.tower-swiper .tower-item { + position: absolute; + width: 300upx; + height: 380upx; + top: 0; + bottom: 0; + left: 50%; + margin: auto; + transition: all 0.2s ease-in 0s; + opacity: 1; +} + +.tower-swiper .tower-item.none { + opacity: 0; +} + +.tower-swiper .tower-item .swiper-item { + width: 100%; + height: 100%; + border-radius: 6upx; + overflow: hidden; +} + +/* ================== + 步骤条 + ==================== */ + +.cu-steps { + display: flex; +} + +scroll-view.cu-steps { + display: block; + white-space: nowrap; +} + +scroll-view.cu-steps .cu-item { + display: inline-block; +} + +.cu-steps .cu-item { + flex: 1; + text-align: center; + position: relative; + min-width: 100upx; +} + +.cu-steps .cu-item:not([class*="text-"]) { + color: #8799a3; +} + +.cu-steps .cu-item [class*="cuIcon-"], +.cu-steps .cu-item .num { + display: block; + font-size: 40upx; + line-height: 80upx; +} + +.cu-steps .cu-item::before, +.cu-steps .cu-item::after, +.cu-steps.steps-arrow .cu-item::before, +.cu-steps.steps-arrow .cu-item::after { + content: ""; + display: block; + position: absolute; + height: 0px; + width: calc(100% - 80upx); + border-bottom: 1px solid #ccc; + left: calc(0px - (100% - 80upx) / 2); + top: 40upx; + z-index: 0; +} + +.cu-steps.steps-arrow .cu-item::before, +.cu-steps.steps-arrow .cu-item::after { + content: "\e6a3"; + font-family: 'cuIcon'; + height: 30upx; + border-bottom-width: 0px; + line-height: 30upx; + top: 0; + bottom: 0; + margin: auto; + color: #ccc; +} + +.cu-steps.steps-bottom .cu-item::before, +.cu-steps.steps-bottom .cu-item::after { + bottom: 40upx; + top: initial; +} + +.cu-steps .cu-item::after { + border-bottom: 1px solid currentColor; + width: 0px; + transition: all 0.3s ease-in-out 0s; +} + +.cu-steps .cu-item[class*="text-"]::after { + width: calc(100% - 80upx); + color: currentColor; +} + +.cu-steps .cu-item:first-child::before, +.cu-steps .cu-item:first-child::after { + display: none; +} + +.cu-steps .cu-item .num { + width: 40upx; + height: 40upx; + border-radius: 50%; + line-height: 40upx; + margin: 20upx auto; + font-size: 24upx; + border: 1px solid currentColor; + position: relative; + overflow: hidden; +} + +.cu-steps .cu-item[class*="text-"] .num { + background-color: currentColor; +} + +.cu-steps .cu-item .num::before, +.cu-steps .cu-item .num::after { + content: attr(data-index); + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + margin: auto; + transition: all 0.3s ease-in-out 0s; + transform: translateY(0upx); +} + +.cu-steps .cu-item[class*="text-"] .num::before { + transform: translateY(-40upx); + color: #ffffff; +} + +.cu-steps .cu-item .num::after { + transform: translateY(40upx); + color: #ffffff; + transition: all 0.3s ease-in-out 0s; +} + +.cu-steps .cu-item[class*="text-"] .num::after { + content: "\e645"; + font-family: 'cuIcon'; + color: #ffffff; + transform: translateY(0upx); +} + +.cu-steps .cu-item[class*="text-"] .num.err::after { + content: "\e646"; +} + +/* ================== + 布局 + ==================== */ + +/* -- flex弹性布局 -- */ + +.flex { + display: flex; +} + +.basis-xs { + flex-basis: 20%; +} + +.basis-sm { + flex-basis: 40%; +} + +.basis-df { + flex-basis: 50%; +} + +.basis-lg { + flex-basis: 60%; +} + +.basis-xl { + flex-basis: 80%; +} + +.flex-sub { + flex: 1; +} + +.flex-twice { + flex: 2; +} + +.flex-treble { + flex: 3; +} + +.flex-direction { + flex-direction: column; +} + +.flex-wrap { + flex-wrap: wrap; +} + +.align-start { + align-items: flex-start; +} + +.align-end { + align-items: flex-end; +} + +.align-center { + align-items: center; +} + +.align-stretch { + align-items: stretch; +} + +.self-start { + align-self: flex-start; +} + +.self-center { + align-self: flex-center; +} + +.self-end { + align-self: flex-end; +} + +.self-stretch { + align-self: stretch; +} + +.align-stretch { + align-items: stretch; +} + +.justify-start { + justify-content: flex-start; +} + +.justify-end { + justify-content: flex-end; +} + +.justify-center { + justify-content: center; +} + +.justify-between { + justify-content: space-between; +} + +.justify-around { + justify-content: space-around; +} + +/* grid布局 */ + +.grid { + display: flex; + flex-wrap: wrap; +} + +.grid.grid-square { + overflow: hidden; +} + +.grid.grid-square .cu-tag { + position: absolute; + right: 0; + top: 0; + border-bottom-left-radius: 6upx; + padding: 6upx 12upx; + height: auto; + background-color: rgba(0, 0, 0, 0.5); +} + +.grid.grid-square>view>text[class*="cuIcon-"] { + font-size: 52upx; + position: absolute; + color: #8799a3; + margin: auto; + top: 0; + bottom: 0; + left: 0; + right: 0; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +} + +.grid.grid-square>view { + margin-right: 20upx; + margin-bottom: 20upx; + border-radius: 6upx; + position: relative; + overflow: hidden; +} +.grid.grid-square>view.bg-img image { + width: 100%; + height: 100%; + position: absolute; +} +.grid.col-1.grid-square>view { + padding-bottom: 100%; + height: 0; + margin-right: 0; +} + +.grid.col-2.grid-square>view { + padding-bottom: calc((100% - 20upx)/2); + height: 0; + width: calc((100% - 20upx)/2); +} + +.grid.col-3.grid-square>view { + padding-bottom: calc((100% - 40upx)/3); + height: 0; + width: calc((100% - 40upx)/3); +} + +.grid.col-4.grid-square>view { + padding-bottom: calc((100% - 60upx)/4); + height: 0; + width: calc((100% - 60upx)/4); +} + +.grid.col-5.grid-square>view { + padding-bottom: calc((100% - 80upx)/5); + height: 0; + width: calc((100% - 80upx)/5); +} + +.grid.col-2.grid-square>view:nth-child(2n), +.grid.col-3.grid-square>view:nth-child(3n), +.grid.col-4.grid-square>view:nth-child(4n), +.grid.col-5.grid-square>view:nth-child(5n) { + margin-right: 0; +} + +.grid.col-1>view { + width: 100%; +} + +.grid.col-2>view { + width: 50%; +} + +.grid.col-3>view { + width: 33.33%; +} + +.grid.col-4>view { + width: 25%; +} + +.grid.col-5>view { + width: 20%; +} + +/* -- 内外边距 -- */ + +.margin-0 { + margin: 0; +} + +.margin-xs { + margin: 10upx; +} + +.margin-sm { + margin: 20upx; +} + +.margin { + margin: 30upx; +} + +.margin-lg { + margin: 40upx; +} + +.margin-xl { + margin: 50upx; +} + +.margin-top-xs { + margin-top: 10upx; +} + +.margin-top-sm { + margin-top: 20upx; +} + +.margin-top { + margin-top: 30upx; +} + +.margin-top-lg { + margin-top: 40upx; +} + +.margin-top-xl { + margin-top: 50upx; +} + +.margin-right-xs { + margin-right: 10upx; +} + +.margin-right-sm { + margin-right: 20upx; +} + +.margin-right { + margin-right: 30upx; +} + +.margin-right-lg { + margin-right: 40upx; +} + +.margin-right-xl { + margin-right: 50upx; +} + +.margin-bottom-xs { + margin-bottom: 10upx; +} + +.margin-bottom-sm { + margin-bottom: 20upx; +} + +.margin-bottom { + margin-bottom: 30upx; +} + +.margin-bottom-lg { + margin-bottom: 40upx; +} + +.margin-bottom-xl { + margin-bottom: 50upx; +} + +.margin-left-xs { + margin-left: 10upx; +} + +.margin-left-sm { + margin-left: 20upx; +} + +.margin-left { + margin-left: 30upx; +} + +.margin-left-lg { + margin-left: 40upx; +} + +.margin-left-xl { + margin-left: 50upx; +} + +.margin-lr-xs { + margin-left: 10upx; + margin-right: 10upx; +} + +.margin-lr-sm { + margin-left: 20upx; + margin-right: 20upx; +} + +.margin-lr { + margin-left: 30upx; + margin-right: 30upx; +} + +.margin-lr-lg { + margin-left: 40upx; + margin-right: 40upx; +} + +.margin-lr-xl { + margin-left: 50upx; + margin-right: 50upx; +} + +.margin-tb-xs { + margin-top: 10upx; + margin-bottom: 10upx; +} + +.margin-tb-sm { + margin-top: 20upx; + margin-bottom: 20upx; +} + +.margin-tb { + margin-top: 30upx; + margin-bottom: 30upx; +} + +.margin-tb-lg { + margin-top: 40upx; + margin-bottom: 40upx; +} + +.margin-tb-xl { + margin-top: 50upx; + margin-bottom: 50upx; +} + +.padding-0 { + padding: 0; +} + +.padding-xs { + padding: 10upx; +} + +.padding-sm { + padding: 20upx; +} + +.padding { + padding: 30upx; +} + +.padding-lg { + padding: 40upx; +} + +.padding-xl { + padding: 50upx; +} + +.padding-top-xs { + padding-top: 10upx; +} + +.padding-top-sm { + padding-top: 20upx; +} + +.padding-top { + padding-top: 30upx; +} + +.padding-top-lg { + padding-top: 40upx; +} + +.padding-top-xl { + padding-top: 50upx; +} + +.padding-right-xs { + padding-right: 10upx; +} + +.padding-right-sm { + padding-right: 20upx; +} + +.padding-right { + padding-right: 30upx; +} + +.padding-right-lg { + padding-right: 40upx; +} + +.padding-right-xl { + padding-right: 50upx; +} + +.padding-bottom-xs { + padding-bottom: 10upx; +} + +.padding-bottom-sm { + padding-bottom: 20upx; +} + +.padding-bottom { + padding-bottom: 30upx; +} + +.padding-bottom-lg { + padding-bottom: 40upx; +} + +.padding-bottom-xl { + padding-bottom: 50upx; +} + +.padding-left-xs { + padding-left: 10upx; +} + +.padding-left-sm { + padding-left: 20upx; +} + +.padding-left { + padding-left: 30upx; +} + +.padding-left-lg { + padding-left: 40upx; +} + +.padding-left-xl { + padding-left: 50upx; +} + +.padding-lr-xs { + padding-left: 10upx; + padding-right: 10upx; +} + +.padding-lr-sm { + padding-left: 20upx; + padding-right: 20upx; +} + +.padding-lr { + padding-left: 30upx; + padding-right: 30upx; +} + +.padding-lr-lg { + padding-left: 40upx; + padding-right: 40upx; +} + +.padding-lr-xl { + padding-left: 50upx; + padding-right: 50upx; +} + +.padding-tb-xs { + padding-top: 10upx; + padding-bottom: 10upx; +} + +.padding-tb-sm { + padding-top: 20upx; + padding-bottom: 20upx; +} + +.padding-tb { + padding-top: 30upx; + padding-bottom: 30upx; +} + +.padding-tb-lg { + padding-top: 40upx; + padding-bottom: 40upx; +} + +.padding-tb-xl { + padding-top: 50upx; + padding-bottom: 50upx; +} + +/* -- 浮动 -- */ + +.cf::after, +.cf::before { + content: " "; + display: table; +} + +.cf::after { + clear: both; +} + +.fl { + float: left; +} + +.fr { + float: right; +} + +/* ================== + 背景 + ==================== */ + +.line-red::after, +.lines-red::after { + border-color: #e54d42; +} + +.line-orange::after, +.lines-orange::after { + border-color: #f37b1d; +} + +.line-yellow::after, +.lines-yellow::after { + border-color: #fbbd08; +} + +.line-olive::after, +.lines-olive::after { + border-color: #8dc63f; +} + +.line-green::after, +.lines-green::after { + border-color: #39b54a; +} + +.line-cyan::after, +.lines-cyan::after { + border-color: #1cbbb4; +} + +.line-blue::after, +.lines-blue::after { + border-color: #0081ff; +} + +.line-purple::after, +.lines-purple::after { + border-color: #6739b6; +} + +.line-mauve::after, +.lines-mauve::after { + border-color: #9c26b0; +} + +.line-pink::after, +.lines-pink::after { + border-color: #e03997; +} + +.line-brown::after, +.lines-brown::after { + border-color: #a5673f; +} + +.line-grey::after, +.lines-grey::after { + border-color: #8799a3; +} + +.line-gray::after, +.lines-gray::after { + border-color: #aaaaaa; +} + +.line-black::after, +.lines-black::after { + border-color: #333333; +} + +.line-white::after, +.lines-white::after { + border-color: #ffffff; +} + +.bg-red { + background-color: #e54d42; + color: #ffffff; +} + +.bg-orange { + background-color: #f37b1d; + color: #ffffff; +} + +.bg-yellow { + background-color: #fbbd08; + color: #333333; +} + +.bg-olive { + background-color: #8dc63f; + color: #ffffff; +} + +.bg-green { + background-color: #39b54a; + color: #ffffff; +} + +.bg-cyan { + background-color: #1cbbb4; + color: #ffffff; +} + +.bg-blue { + background-color: #0081ff; + color: #ffffff; +} + +.bg-purple { + background-color: #6739b6; + color: #ffffff; +} + +.bg-mauve { + background-color: #9c26b0; + color: #ffffff; +} + +.bg-pink { + background-color: #e03997; + color: #ffffff; +} + +.bg-brown { + background-color: #a5673f; + color: #ffffff; +} + +.bg-grey { + background-color: #8799a3; + color: #ffffff; +} + +.bg-gray { + background-color: #f0f0f0; + color: #333333; +} + +.bg-black { + background-color: #333333; + color: #ffffff; +} + +.bg-white { + background-color: #ffffff; + color: #666666; +} + +.bg-shadeTop { + background-image: linear-gradient(rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.01)); + color: #ffffff; +} + +.bg-shadeBottom { + background-image: linear-gradient(rgba(0, 0, 0, 0.01), rgba(0, 0, 0, 1)); + color: #ffffff; +} + +.bg-red.light { + color: #e54d42; + background-color: #fadbd9; +} + +.bg-orange.light { + color: #f37b1d; + background-color: #fde6d2; +} + +.bg-yellow.light { + color: #fbbd08; + background-color: #fef2ced2; +} + +.bg-olive.light { + color: #8dc63f; + background-color: #e8f4d9; +} + +.bg-green.light { + color: #39b54a; + background-color: #d7f0dbff; +} + +.bg-cyan.light { + color: #1cbbb4; + background-color: #d2f1f0; +} + +.bg-blue.light { + color: #0081ff; + background-color: #cce6ff; +} + +.bg-purple.light { + color: #6739b6; + background-color: #e1d7f0; +} + +.bg-mauve.light { + color: #9c26b0; + background-color: #ebd4ef; +} + +.bg-pink.light { + color: #e03997; + background-color: #f9d7ea; +} + +.bg-brown.light { + color: #a5673f; + background-color: #ede1d9; +} + +.bg-grey.light { + color: #8799a3; + background-color: #e7ebed; +} + +.bg-gradual-red { + background-image: linear-gradient(45deg, #f43f3b, #ec008c); + color: #ffffff; +} + +.bg-gradual-orange { + background-image: linear-gradient(45deg, #ff9700, #ed1c24); + color: #ffffff; +} + +.bg-gradual-green { + background-image: linear-gradient(45deg, #39b54a, #8dc63f); + color: #ffffff; +} + +.bg-gradual-purple { + background-image: linear-gradient(45deg, #9000ff, #5e00ff); + color: #ffffff; +} + +.bg-gradual-pink { + background-image: linear-gradient(45deg, #ec008c, #6739b6); + color: #ffffff; +} + +.bg-gradual-blue { + background-image: linear-gradient(45deg, #0081ff, #1cbbb4); + color: #ffffff; +} + +.shadow[class*="-red"] { + box-shadow: 6upx 6upx 8upx rgba(204, 69, 59, 0.2); +} + +.shadow[class*="-orange"] { + box-shadow: 6upx 6upx 8upx rgba(217, 109, 26, 0.2); +} + +.shadow[class*="-yellow"] { + box-shadow: 6upx 6upx 8upx rgba(224, 170, 7, 0.2); +} + +.shadow[class*="-olive"] { + box-shadow: 6upx 6upx 8upx rgba(124, 173, 55, 0.2); +} + +.shadow[class*="-green"] { + box-shadow: 6upx 6upx 8upx rgba(48, 156, 63, 0.2); +} + +.shadow[class*="-cyan"] { + box-shadow: 6upx 6upx 8upx rgba(28, 187, 180, 0.2); +} + +.shadow[class*="-blue"] { + box-shadow: 6upx 6upx 8upx rgba(0, 102, 204, 0.2); +} + +.shadow[class*="-purple"] { + box-shadow: 6upx 6upx 8upx rgba(88, 48, 156, 0.2); +} + +.shadow[class*="-mauve"] { + box-shadow: 6upx 6upx 8upx rgba(133, 33, 150, 0.2); +} + +.shadow[class*="-pink"] { + box-shadow: 6upx 6upx 8upx rgba(199, 50, 134, 0.2); +} + +.shadow[class*="-brown"] { + box-shadow: 6upx 6upx 8upx rgba(140, 88, 53, 0.2); +} + +.shadow[class*="-grey"] { + box-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2); +} + +.shadow[class*="-gray"] { + box-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2); +} + +.shadow[class*="-black"] { + box-shadow: 6upx 6upx 8upx rgba(26, 26, 26, 0.2); +} + +.shadow[class*="-white"] { + box-shadow: 6upx 6upx 8upx rgba(26, 26, 26, 0.2); +} + +.text-shadow[class*="-red"] { + text-shadow: 6upx 6upx 8upx rgba(204, 69, 59, 0.2); +} + +.text-shadow[class*="-orange"] { + text-shadow: 6upx 6upx 8upx rgba(217, 109, 26, 0.2); +} + +.text-shadow[class*="-yellow"] { + text-shadow: 6upx 6upx 8upx rgba(224, 170, 7, 0.2); +} + +.text-shadow[class*="-olive"] { + text-shadow: 6upx 6upx 8upx rgba(124, 173, 55, 0.2); +} + +.text-shadow[class*="-green"] { + text-shadow: 6upx 6upx 8upx rgba(48, 156, 63, 0.2); +} + +.text-shadow[class*="-cyan"] { + text-shadow: 6upx 6upx 8upx rgba(28, 187, 180, 0.2); +} + +.text-shadow[class*="-blue"] { + text-shadow: 6upx 6upx 8upx rgba(0, 102, 204, 0.2); +} + +.text-shadow[class*="-purple"] { + text-shadow: 6upx 6upx 8upx rgba(88, 48, 156, 0.2); +} + +.text-shadow[class*="-mauve"] { + text-shadow: 6upx 6upx 8upx rgba(133, 33, 150, 0.2); +} + +.text-shadow[class*="-pink"] { + text-shadow: 6upx 6upx 8upx rgba(199, 50, 134, 0.2); +} + +.text-shadow[class*="-brown"] { + text-shadow: 6upx 6upx 8upx rgba(140, 88, 53, 0.2); +} + +.text-shadow[class*="-grey"] { + text-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2); +} + +.text-shadow[class*="-gray"] { + text-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2); +} + +.text-shadow[class*="-black"] { + text-shadow: 6upx 6upx 8upx rgba(26, 26, 26, 0.2); +} + +.bg-img { + background-size: cover; + background-position: center; + background-repeat: no-repeat; +} + +.bg-mask { + background-color: #333333; + position: relative; +} + +.bg-mask::after { + content: ""; + border-radius: inherit; + width: 100%; + height: 100%; + display: block; + background-color: rgba(0, 0, 0, 0.4); + position: absolute; + left: 0; + right: 0; + bottom: 0; + top: 0; +} + +.bg-mask view, +.bg-mask cover-view { + z-index: 5; + position: relative; +} + +.bg-video { + position: relative; +} + +.bg-video video { + display: block; + height: 100%; + width: 100%; + -o-object-fit: cover; + object-fit: cover; + position: absolute; + top: 0; + z-index: 0; + pointer-events: none; +} + +/* ================== + 文本 + ==================== */ + +.text-xs { + font-size: 20upx; +} + +.text-sm { + font-size: 24upx; +} + +.text-df { + font-size: 28upx; +} + +.text-lg { + font-size: 32upx; +} + +.text-xl { + font-size: 36upx; +} + +.text-xxl { + font-size: 44upx; +} + +.text-sl { + font-size: 80upx; +} + +.text-xsl { + font-size: 120upx; +} + +.text-Abc { + text-transform: Capitalize; +} + +.text-ABC { + text-transform: Uppercase; +} + +.text-abc { + text-transform: Lowercase; +} + +.text-price::before { + content: "¥"; + font-size: 80%; + margin-right: 4upx; +} + +.text-cut { + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; +} + +.text-bold { + font-weight: bold; +} + +.text-center { + text-align: center; +} + +.text-content { + line-height: 1.6; +} + +.text-left { + text-align: left; +} + +.text-right { + text-align: right; +} + +.text-red, +.line-red, +.lines-red { + color: #e54d42; +} + +.text-orange, +.line-orange, +.lines-orange { + color: #f37b1d; +} + +.text-yellow, +.line-yellow, +.lines-yellow { + color: #fbbd08; +} + +.text-olive, +.line-olive, +.lines-olive { + color: #8dc63f; +} + +.text-green, +.line-green, +.lines-green { + color: #39b54a; +} + +.text-cyan, +.line-cyan, +.lines-cyan { + color: #1cbbb4; +} + +.text-blue, +.line-blue, +.lines-blue { + color: #0081ff; +} + +.text-purple, +.line-purple, +.lines-purple { + color: #6739b6; +} + +.text-mauve, +.line-mauve, +.lines-mauve { + color: #9c26b0; +} + +.text-pink, +.line-pink, +.lines-pink { + color: #e03997; +} + +.text-brown, +.line-brown, +.lines-brown { + color: #a5673f; +} + +.text-grey, +.line-grey, +.lines-grey { + color: #8799a3; +} + +.text-gray, +.line-gray, +.lines-gray { + color: #aaaaaa; +} + +.text-black, +.line-black, +.lines-black { + color: #333333; +} + +.text-white, +.line-white, +.lines-white { + color: #ffffff; +} diff --git a/.svn/pristine/14/14a11b3f1ba4a494dd6d6c5dcc912484322fa129.svn-base b/.svn/pristine/14/14a11b3f1ba4a494dd6d6c5dcc912484322fa129.svn-base new file mode 100644 index 0000000..e672153 --- /dev/null +++ b/.svn/pristine/14/14a11b3f1ba4a494dd6d6c5dcc912484322fa129.svn-base @@ -0,0 +1,380 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/15/15136c2129037012583da60bb0aae9aa0b0ac61c.svn-base b/.svn/pristine/15/15136c2129037012583da60bb0aae9aa0b0ac61c.svn-base new file mode 100644 index 0000000..f341bf0 --- /dev/null +++ b/.svn/pristine/15/15136c2129037012583da60bb0aae9aa0b0ac61c.svn-base @@ -0,0 +1,703 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/15/15d3b0179a5cfd146207d9f18a46a9cb0c47115a.svn-base b/.svn/pristine/15/15d3b0179a5cfd146207d9f18a46a9cb0c47115a.svn-base new file mode 100644 index 0000000..8ab276a --- /dev/null +++ b/.svn/pristine/15/15d3b0179a5cfd146207d9f18a46a9cb0c47115a.svn-base @@ -0,0 +1,506 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/16/1675f04207c6a03e2b4369cafcbb8cc9baf32511.svn-base b/.svn/pristine/16/1675f04207c6a03e2b4369cafcbb8cc9baf32511.svn-base new file mode 100644 index 0000000..8e9b9b4 --- /dev/null +++ b/.svn/pristine/16/1675f04207c6a03e2b4369cafcbb8cc9baf32511.svn-base @@ -0,0 +1,13 @@ +// import { createPinia, defineStore } from "pinia"; +// import piniaPluginPersistedstate from "pinia-plugin-persistedstate"; +// export class StoreAssist{ +// private pinia:any=createPinia(); +// constructor() { +// this.pinia.use(piniaPluginPersistedstate); +// } + + + +// } + + diff --git a/.svn/pristine/17/170698abbbc39ae1dc9916b328c9dcf9c710e0ce.svn-base b/.svn/pristine/17/170698abbbc39ae1dc9916b328c9dcf9c710e0ce.svn-base new file mode 100644 index 0000000..b4b7c01 --- /dev/null +++ b/.svn/pristine/17/170698abbbc39ae1dc9916b328c9dcf9c710e0ce.svn-base @@ -0,0 +1,421 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/19/1951d3cfd654cf78e7218300b3d76d316579ccee.svn-base b/.svn/pristine/19/1951d3cfd654cf78e7218300b3d76d316579ccee.svn-base new file mode 100644 index 0000000..cb6b0c9 --- /dev/null +++ b/.svn/pristine/19/1951d3cfd654cf78e7218300b3d76d316579ccee.svn-base @@ -0,0 +1,261 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [ + { + "root": "pages/order", + "pages": [ + { + "path": "orderDetail", + "style": { + "navigationBarTitleText": "项目中心", + "navigationStyle": "custom" + } + }, + { + "path" : "navigation", + "style" : + { + "navigationBarTitleText" : "导航", + "navigationStyle": "custom" + } + }, + { + "path" : "abnormal", + "style" : + { + "navigationBarTitleText" : "上报异常", + "navigationStyle": "custom" + } + }, + { + "path" : "grabOrder", + "style" : + { + "navigationBarTitleText" : "订单详情" + } + }, + { + "path" : "incomeDetail", + "style" : + { + "navigationBarTitleText" : "收入详情", + "navigationStyle": "custom" + } + }, + { + "path" : "withdraw", + "style" : + { + "navigationBarTitleText" : "提现申请" + } + }, + { + "path" : "finish", + "style" : + { + "navigationBarTitleText" : "订单完成" + } + }, + { + "path" : "upAbnormal", + "style" : + { + "navigationBarTitleText" : "异常上报" + } + }, + { + "path": "orderMap", + "style": { + "navigationBarTitleText": "订单地图" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path" : "edit", + "style" : + { + "navigationBarTitleText" : "编辑资料" + } + }, + { + "path" : "statusContro", + "style" : + { + "navigationBarTitleText" : "上线管理" + } + }, + { + "path" : "myKF", + "style" : + { + "navigationBarTitleText" : "联系客服", + "navigationStyle": "custom" + } + }, + { + "path" : "AbnormalList", + "style" : + { + "navigationBarTitleText" : "异常订单" + } + }, + { + "path" : "check", + "style" : + { + "navigationBarTitleText" : "签到奖励" + } + }, + { + "path" : "abnormalDetail", + "style" : + { + "navigationBarTitleText" : "异常详情" + } + }, + { + "path" : "security", + "style" : + { + "navigationBarTitleText" : "账号与安全" + } + }, + { + "path" : "authentication", + "style" : + { + "navigationBarTitleText" : "实名认证" + } + }, + { + "path" : "login", + "style" : + { + "navigationBarTitleText" : "登录", + "navigationStyle": "custom" + } + }, + { + "path" : "noticeList", + "style" : + { + "navigationBarTitleText" : "消息通知", + "navigationStyle": "custom" + } + }, + { + "path" : "setConnect", + "style" : + { + "navigationBarTitleText" : "紧急联系人" + } + }, + { + "path" : "evaluate", + "style" : + { + "navigationBarTitleText" : "评价中心" + } + }, + { + "path" : "completeData", + "style" : + { + "navigationBarTitleText" : "完善信息" + } + }, + { + "path" : "withDrowList", + "style" : + { + "navigationBarTitleText" : "提现列表" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/19/19606b6d1588158aadde45ed00d1d0ae9e6800ac.svn-base b/.svn/pristine/19/19606b6d1588158aadde45ed00d1d0ae9e6800ac.svn-base new file mode 100644 index 0000000..5a7f66e --- /dev/null +++ b/.svn/pristine/19/19606b6d1588158aadde45ed00d1d0ae9e6800ac.svn-base @@ -0,0 +1,19 @@ +export class UploadAssist { + static Upload(url: string, path: string, fromData: any) { + return new Promise(function(resolve, reject) { + uni.uploadFile({ + url: url, //仅为示例,非真实的接口地址 + filePath: path, + name: 'file', + formData: fromData, + success: (uploadFileRes) => { + resolve(uploadFileRes); + }, + fail: (err) => { + reject(err); + + }, + }); + }) + } +} \ No newline at end of file diff --git a/.svn/pristine/19/198cfc9e31e11e0980337a2ab71a180baacabe3a.svn-base b/.svn/pristine/19/198cfc9e31e11e0980337a2ab71a180baacabe3a.svn-base new file mode 100644 index 0000000..22ded76 --- /dev/null +++ b/.svn/pristine/19/198cfc9e31e11e0980337a2ab71a180baacabe3a.svn-base @@ -0,0 +1,22 @@ +import { Service } from '@/Service/Service'; +/*****腾讯云存储*****/ +class NvpTencentCosService { + private static GetAuthorizationPath: string = '/TencentCos/GetAuthorization'; + /*****获取云存储配置*****/ + static GetAuthorization() { + var result = Service.Request(this.GetAuthorizationPath, "GET", ""); + return result; + } + + private static GetUpLoadInfoPath: string = '/TencentCos/GetUpLoadInfo'; + /*****获取上传地址*****/ + static GetUpLoadInfo(code: string, fileName: string, desire: string) { + var result = Service.Request(this.GetUpLoadInfoPath, "GET", { code, fileName, desire }); + return result; + } + +} +export { + Service, + NvpTencentCosService +} diff --git a/.svn/pristine/19/19e57e9c88c66aa9fdb41418b6259fa3f77ba83d.svn-base b/.svn/pristine/19/19e57e9c88c66aa9fdb41418b6259fa3f77ba83d.svn-base new file mode 100644 index 0000000..b368262 --- /dev/null +++ b/.svn/pristine/19/19e57e9c88c66aa9fdb41418b6259fa3f77ba83d.svn-base @@ -0,0 +1,63 @@ +import {Service} from "@/Service/Service" +export class EventHandler { + //处理事件 + static Events(data: any) { + var result = JSON.parse(data.data); + if (result.code == 'msg') { + this.ChatEnent(result); + } else if (result.code == 'order') { + uni.$emit('newOrder', data); + } + } + + static ChatEnent(data: any) { + console.log(data,'xxx') + var eventName = `chat_${data.chanId}`; + uni.$emit(eventName, data); + } + + static ChatUserEnent(data: any) { + var eventUserName = `chatUser_${data.sendId}`; + uni.$emit('UpdatePrivateMsg', data); + uni.$emit(eventUserName, data); + this.plusPush(); + } + + static plusPush() { + //#ifdef APP-PLUS + if(!Service.getIsHede()){ + return + } + + let content = '您有一条新的消息~'; + let options = { + cover: false, + when: new Date(), + title: '通知消息' + }; + let body = { + id: 'id', + key: 'key' + }; + let payload = JSON.stringify(body); + plus.push.createMessage(content, payload, options); + //#endif + } + + static SystemEnent(data: any) { + let obj = JSON.parse(data.data); + if (obj.code == 'Like' || obj.code == 'Aite' || obj.code == 'Comment' || obj.code == 'Notice') { + uni.$emit('MegEvent', obj); + } else if (obj.code == 'Off') { + uni.$emit('ImComOff', 'user'); + } else if (obj.code == 'UpdateUserInfo') { + uni.$emit('UpdateUserInfo'); + } else if (obj.code == 'Friend') { + uni.$emit('Friend'); + } + } + + static ConnectBus() { + uni.$emit('UpdateChat'); + } +} diff --git a/.svn/pristine/19/19f16508cf1144513459d4b24925e0f8ca2e7201.svn-base b/.svn/pristine/19/19f16508cf1144513459d4b24925e0f8ca2e7201.svn-base new file mode 100644 index 0000000..1b3d44e --- /dev/null +++ b/.svn/pristine/19/19f16508cf1144513459d4b24925e0f8ca2e7201.svn-base @@ -0,0 +1,75 @@ + + \ No newline at end of file diff --git a/.svn/pristine/1a/1a4253c24bc0f4113df9bcac07adfc7bfcfa4bd8.svn-base b/.svn/pristine/1a/1a4253c24bc0f4113df9bcac07adfc7bfcfa4bd8.svn-base new file mode 100644 index 0000000..fa16318 --- /dev/null +++ b/.svn/pristine/1a/1a4253c24bc0f4113df9bcac07adfc7bfcfa4bd8.svn-base @@ -0,0 +1,511 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/1a/1ab988c68337d80e4fac1e3809dcfe7c8ca8edbc.svn-base b/.svn/pristine/1a/1ab988c68337d80e4fac1e3809dcfe7c8ca8edbc.svn-base new file mode 100644 index 0000000..0c54580 --- /dev/null +++ b/.svn/pristine/1a/1ab988c68337d80e4fac1e3809dcfe7c8ca8edbc.svn-base @@ -0,0 +1,335 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/1b/1b108bccc8d2746c4c2467a7c3e51570356556a9.svn-base b/.svn/pristine/1b/1b108bccc8d2746c4c2467a7c3e51570356556a9.svn-base new file mode 100644 index 0000000..f101c5b --- /dev/null +++ b/.svn/pristine/1b/1b108bccc8d2746c4c2467a7c3e51570356556a9.svn-base @@ -0,0 +1,81 @@ +{ + "id": "qf-image-cropper", + "displayName": "图片裁剪插件", + "version": "2.2.5", + "description": "图片裁剪插件,支持自定义尺寸、定点等比例缩放、拖动、图片翻转、剪切圆形/圆角图片、定制样式,功能多性能高体验好注释全。", + "keywords": [ + "qf-image-cropper", + "图片裁剪", + "图片编辑", + "头像裁剪", + "小程序" +], + "repository": "", + "engines": { + "HBuilderX": "^3.1.0" + }, +"dcloudext": { + "type": "component-vue", + "sale": { + "regular": { + "price": "0.00" + }, + "sourcecode": { + "price": "0.00" + } + }, + "contact": { + "qq": "" + }, + "declaration": { + "ads": "无", + "data": "插件不采集任何数据", + "permissions": "无" + }, + "npmurl": "" + }, + "uni_modules": { + "dependencies": [], + "encrypt": [], + "platforms": { + "client": { + "Vue": { + "vue2": "y", + "vue3": "y" + }, + "App": { + "app-vue": "y", + "app-nvue": "n" + }, + "H5-mobile": { + "Safari": "y", + "Android Browser": "y", + "微信浏览器(Android)": "y", + "QQ浏览器(Android)": "u" + }, + "H5-pc": { + "Chrome": "u", + "IE": "u", + "Edge": "u", + "Firefox": "u", + "Safari": "u" + }, + "小程序": { + "微信": "y", + "阿里": "n", + "百度": "n", + "字节跳动": "n", + "QQ": "u", + "钉钉": "n", + "快手": "n", + "飞书": "n", + "京东": "n" + }, + "快应用": { + "华为": "n", + "联盟": "n" + } + } + } + } +} \ No newline at end of file diff --git a/.svn/pristine/1b/1ba2ef9a72dd98d50ef9b5126847cba897b5bd14.svn-base b/.svn/pristine/1b/1ba2ef9a72dd98d50ef9b5126847cba897b5bd14.svn-base new file mode 100644 index 0000000..1cc68b9 --- /dev/null +++ b/.svn/pristine/1b/1ba2ef9a72dd98d50ef9b5126847cba897b5bd14.svn-base @@ -0,0 +1,544 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/1c/1c6826d4892d499a19746d845d36640020983c7b.svn-base b/.svn/pristine/1c/1c6826d4892d499a19746d845d36640020983c7b.svn-base new file mode 100644 index 0000000..bae73dc --- /dev/null +++ b/.svn/pristine/1c/1c6826d4892d499a19746d845d36640020983c7b.svn-base @@ -0,0 +1,355 @@ +import { HttpRequest, StoreAssist, UploadAssist, ResultData } from '@/common/Common'; +import { BaseConfig } from './BaseConfig'; +export class Service extends BaseConfig { + + + // 获取是否后台 + static getIsHede () { + let isHede = this.GetStorageCache('isHede') + if (isHede == null || isHede == '') { + return false; + } else { + return isHede; + } + } + + + //获取API地址 + static ApiUrl(path : string) { + return `${this.servesUrl}${path}`; + } + + //获取图片地址 + static GetpayImg(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.payuploadUrl}${path}`; + } + } + + //获取图标地址 + static GetIconImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + + //获取图片地址 + static GetMateUrlByImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + //获取音视频地址 + static GetMateUrlByMedia(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.mediaUrl}${path}`; + } + } + //获取登录账号token + static GetUserToken() { + return Service.GetStorageCache('token'); + } + // 获取登录状态 + static GetUserIsLogin() { + var token = this.GetUserToken(); + if (token == null || token == '') { + return false; + } else { + return true; + } + } + //设置登录账户Token + static SetUserToken(token : string) { + this.SetStorageCache('token', token); + } + //清理登录账户Token + static OffUserToken() { + Service.DelStorageCache('token'); + uni.$emit('ImComOff', 'user'); + this.ClearUserStateData(); + } + //获取登录账号状态信息 + static GetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //设置当前登录账号状态信息 + static SetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //清理当前登录账号状态信息 + static ClearUserStateData() { + Service.DelStorageCache('StateDomain'); + } + + + //获取当前客户端ID + static GetUserClientId() { + return this.GetStorageCache('ClientId'); + } + //保存当前客户端ID + static SetUserClientId(clientId: string) { + this.SetStorageCache('ClientId', clientId); + } + + + //获取缓存 + static GetStorageCache(key : string) { + return StoreAssist.Get(key); + } + //删除缓存 + static DelStorageCache(key : string) { + StoreAssist.Delete(key); + } + //设置缓存 + static SetStorageCache(key : string, data : any) { + StoreAssist.Set(key, data); + } + + /*****以下是基础方法调用与拦截器*****/ + + static Request(url : string, method : 'GET' | 'POST' | 'PUT' | undefined, data : object | any) { + const token = Service.GetUserToken(); + + const _url = Service.ApiUrl(url); + var result = HttpRequest.RequestWithToken(_url, method, token, data).then((retResult : any) => { + if (retResult.statusCode == '200') { + var obj = retResult.data; + if (obj.code == 401) { + //过期 + this.OffUserToken(); + this.Msg('登录过期,请重新登录') + this.GoPage('/pages/my/login') + return Promise.reject(); + } else if (obj.code == 40101) { + //失效 + this.OffUserToken(); + this.GoPageDelse('/pages/mine/login/login'); + return Promise.reject(); + } else if (obj.code == 1004) { + //资源不存在 + this.GoPageDelse('/pages/AppSet/404/404'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 40188) { + //无权限 + + this.GoPageDelse('/pages/AppSet/40188/40188'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 1008) { + //业务提示 + return new ResultData(obj.code, obj.msg, obj.data); + } else { + return new ResultData(obj.code, obj.msg, obj.data); + } + } else { + return new ResultData(-1, '', ''); + } + }); + return result; + } + /*****以下是腾讯云oss上传*****/ + static UpLoadMedia(code : string, fileName : string, desire : string, path : string) { + var result = this.Request(this.uploadUrl, 'GET', { code, fileName, desire }).then((retResult) => { + if (retResult.code == 0) { + var upOk = UploadAssist.Upload(retResult.data.url, path, retResult.data.cosData).then((upRet : any) => { + if (upRet.statusCode == 200) { + const retData : any = { code: retResult.data.code, file: retResult.data.file, cache: retResult.data.cache }; + return new ResultData(0, '上传成功!', retData); + } else { + this.Msg('上传失败!'); + return new ResultData(-1, '', ''); + } + }); + return upOk; + } else { + this.Msg('上传失败!'); + return new ResultData(-1, retResult.msg,retResult.data); + } + }); + return result; + } + + /***********消息操作**************/ + static Msg(message : any, icon ?: any) : void { + if (icon != null) { + uni.showToast({ + title: message, + icon: icon + }); + } else { + uni.showToast({ + title: message, + icon: 'none' + }); + } + } + + static Alert(msg : string, cb ?: any) { + uni.showModal({ + title: '提示', + content: msg, + showCancel: false, + cancelText: '取消', + confirmText: '确定', + success: res => { + if (res.confirm) { + cb && cb(); + } + } + }) + } + + static LoadIng(text : any) : void { + uni.showLoading({ + title: text, + icon: 'none' + }); + } + + static LoadClose() : void { + uni.hideLoading(); + } + + /**********跳转操作*********/ + + + static GoPageTab(path : string) : void { + uni.switchTab({ + url: path + }); + } + + /**********跳转操作*********/ + static GoPage(path : string) : void { + uni.navigateTo({ + url: path, //跳转的页面 + success: function (res) { + // 通过eventChannel向被打开页面传送数据 + } + }); + } + /**********跳转并删除当前页面操作*********/ + static GoPageDelse(path : string) : void { + uni.redirectTo({ + url: path //跳转的页面 + }); + } + + /**********返回上一页*********/ + static GoPageBack() : void { + uni.navigateBack({ delta: 1 }); + } + + /*****获取图片base64*****/ + static UpLoadMediaBase64(path : string) { + return new Promise(function (resolve, reject) { + uni.uploadFile({ + url: 'http://cloud.pccsh.com/DefUp/UploadFileImgBase64', //仅为示例,非真实的接口地址 + filePath: path, + name: 'file', + success: (uploadFileRes) => { + resolve(uploadFileRes); + }, + fail: (err) => { + reject(err); + } + }); + }); + } + /*****获取图片位置信息*****/ + //获取时间戳 + static GetTimeSpan(milliSecond : number) { + return Date.now() + milliSecond; + } + + // 时间戳处理 + static formatDate(time : any, type : number) : string { + const date = new Date(time); + const year = date.getFullYear(); + const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以加1,并用0填充 + const day = String(date.getDate()).padStart(2, '0'); // 用0填充 + const hours = String(date.getHours()).padStart(2, '0'); // 用0填充 + const minutes = String(date.getMinutes()).padStart(2, '0'); // 用0填充 + const seconds = String(date.getSeconds()).padStart(2, '0'); // 用0填充 + if (type == 0) { + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } + else if (type == 1) { + return `${year}-${month}-${day} ${hours}:${minutes}`; + } else if (type == 2) { + return `${year}-${month}-${day}`; + } else if (type == 3) { + return `${hours}:${minutes}`; + } else if (type == 4) { + return `${year}${month}${day}`; + } + + else { + return `${hours}:${minutes}`; + } + } + + /*****节流*****/ + static throttle(fn: () => void, time: number) { + let canRun: boolean = true; + return function () { + if (!canRun) return; + canRun = false; + setTimeout(() => { + fn(); //可以不执行 + canRun = true; + }, time); + }; + } + /*****防抖*****/ + static debounce void>(fn: T, time: number): (...args: Parameters) => void { + let timerId: NodeJS.Timeout | null = null; + + return (...args: Parameters) => { + if (timerId) { + clearTimeout(timerId); + } + + timerId = setTimeout(() => { + fn(...args); // 执行传入的函数 + timerId = null; // 清除定时器ID + }, time); + }; + } + + + + + + // 普通图片上传 + static uploadH5(path, dic, callback) { + console.log(this.payuploadUrl,'xxx') + uni.uploadFile({ + url: this.payuploadUrl+'/Upload/Upload', + method: "POST", + header: { + 'Authorization': 'Bearer ' + Service.GetUserToken(), + }, + formData: { + "path": dic, + }, + filePath: path, + name: 'file', + success: (data) => { + let info = data.data + callback(info) + } + }) + } +} \ No newline at end of file diff --git a/.svn/pristine/1c/1c7b87b064d97bab2cc2c4331d4624361cc002a5.svn-base b/.svn/pristine/1c/1c7b87b064d97bab2cc2c4331d4624361cc002a5.svn-base new file mode 100644 index 0000000..83d5ba9 --- /dev/null +++ b/.svn/pristine/1c/1c7b87b064d97bab2cc2c4331d4624361cc002a5.svn-base @@ -0,0 +1,242 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/1c/1c832497c83890a604b88566a85304efacb9aa7b.svn-base b/.svn/pristine/1c/1c832497c83890a604b88566a85304efacb9aa7b.svn-base new file mode 100644 index 0000000..7554b0a --- /dev/null +++ b/.svn/pristine/1c/1c832497c83890a604b88566a85304efacb9aa7b.svn-base @@ -0,0 +1,22 @@ +## 1.1.7(2024-10-29) +修复底部露出部分组件bug +## 1.1.6(2024-08-20) +更新本地数据源为最新数据源 +## 1.1.5(2024-06-12) +使用说明文档优化 +## 1.1.4(2024-06-12) +增加问题反馈描述 +## 1.1.3(2024-02-29) +更新使用文档 +## 1.1.2(2024-01-16) +解决Vue3项目导入导出报错问题 +## 1.1.1(2023-12-06) +defaultValue可以传入defaultValue:['河北省','唐山市','丰南区']数组类型以及defaultValue: '420103'地区编码字符串类型 +## 1.1.0(2023-12-05) +即默认值传入地区编码,也支持传入中文省市区数组 +## 1.0.9(2023-12-04) +优化 +## 1.0.8(2023-10-24) +修复东菀市和中山市下各镇的行政编码错误问题 +## 1.0.4(2023-09-15) +改为uni_modules规范 \ No newline at end of file diff --git a/.svn/pristine/1c/1cfbf89b475242d7cf6d7d15bf9027d44fb0d937.svn-base b/.svn/pristine/1c/1cfbf89b475242d7cf6d7d15bf9027d44fb0d937.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..168c0d1f078945517447a6634985feaf71b74ef3 GIT binary patch literal 594 zcmV-Y0(4Hzzb|%V19sanBw9iR8ci_ zi?!G_-nB5Owo4;v)UB09qaG5=ZsFNp;lmmRDN~aKNM6G5kN7LN;gFd23-50d=@bxw z$c=>N_&?9=yKs})jsg9ThVhre_q#+o1wI)HGyEaJr~<3%GYkRDdWKUig!bC6A@EiE zT>8~s1qb%wxR_^lFwbpe}J~GF$chebH1S}b%Cnuxw;32+@`bV zo)^}P3;NB)G`6qq)hV#ZZNZ4i!x`ut)*-h^op9Ce6j*iMru{Ag3e&dx@MZx;AMeXl z_u+HlKUV+pO#&ik#EeO*2prw!c1gSOZ7r}$u0UuoSB+MI-O^7P`&WUea$Z)Uk9mmg zu<|x?j-yqe=eVH503-^8Z0HL%`)Ch{Q5QMK+Xb$3Q;OD=A1p;)OWrA!rHBJ%>dG}wND`2vM3k3gzXr(ysiaKtJ9XbE za0gr(9~eG5(-8lq*I%h*+w{a5Vup0RR6L?28=$ g000I_L_t&o0P9p9Y)tGqmjD0&07*qoM6N<$f*@=YB>(^b literal 0 HcmV?d00001 diff --git a/.svn/pristine/1c/1cff3a60584d435d828ef5de4f77674a83263bb8.svn-base b/.svn/pristine/1c/1cff3a60584d435d828ef5de4f77674a83263bb8.svn-base new file mode 100644 index 0000000..aba3dd7 --- /dev/null +++ b/.svn/pristine/1c/1cff3a60584d435d828ef5de4f77674a83263bb8.svn-base @@ -0,0 +1,125 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/1d/1d56e2f77b1ce9e62cd1da95f4bf4b4ed541c6bc.svn-base b/.svn/pristine/1d/1d56e2f77b1ce9e62cd1da95f4bf4b4ed541c6bc.svn-base new file mode 100644 index 0000000..3eb7ff2 --- /dev/null +++ b/.svn/pristine/1d/1d56e2f77b1ce9e62cd1da95f4bf4b4ed541c6bc.svn-base @@ -0,0 +1,68 @@ +import { Service } from '@/Service/Service'; +/*****订单接口*****/ +class CNRiderOrderService { + private static GetRiderOrderListPath : string = '/Rider/GetRiderOrderList'; + /*****首页新订单*****/ + static GetRiderOrderList(page : number) { + var result = Service.Request(this.GetRiderOrderListPath, "GET", {page}); + return result; + } + + private static RiderTakeOrderPath : string = '/Rider/RiderTakeOrder'; + /*****骑手接单*****/ + static RiderTakeOrder(orderId : string) { + var result = Service.Request(this.RiderTakeOrderPath, "POST", {orderId}); + return result; + } + + private static GetRiderTakeOrderListPath : string = '/Rider/GetRiderTakeOrderList'; + /*****首页 待取餐/配送中*****/ + static GetRiderTakeOrderList(status: number,page : number) { + var result = Service.Request(this.GetRiderTakeOrderListPath, "GET", {status,page}); + return result; + } + + + private static GetUnitOrderInfoPath : string = '/Order/GetUnitOrderInfo'; + /*****获取订单详情*****/ + static GetUnitOrderInfo(orderId: string) { + var result = Service.Request(this.GetUnitOrderInfoPath, "GET", {orderId}); + return result; + } + + private static UpdateRiderOrderTakePath : string = '/Rider/UpdateRiderOrderTake'; + /*****取餐*****/ + static UpdateRiderOrderTake(orderId: string,status:number) { + var result = Service.Request(this.UpdateRiderOrderTakePath, "POST", {orderId,status}); + return result; + } + + private static GetRiderAccLogPath : string = '/Rider/GetRiderAccLog'; + /*****收入列表*****/ + static GetRiderAccLog(time: string,page:number) { + var result = Service.Request(this.GetRiderAccLogPath, "GET", {time,page}); + return result; + } + + private static AddRiderWithPath : string = '/Rider/AddRiderWith'; + /*****骑手提现*****/ + static AddRiderWith(amount: number,payway:string,name:string,account:string) { + var result = Service.Request(this.AddRiderWithPath, "POST", {amount,payway,name,account}); + return result; + } + + + private static GetRiderWithListPath : string = '/Rider/GetRiderWithList'; + /*****骑手提现列表*****/ + static GetRiderWithList(page:number) { + var result = Service.Request(this.GetRiderWithListPath, "GET", {page}); + return result; + } + + + +} +export { + Service, + CNRiderOrderService +} \ No newline at end of file diff --git a/.svn/pristine/1e/1e2334252bcb0bc748b05a1cc61ee30866daafd7.svn-base b/.svn/pristine/1e/1e2334252bcb0bc748b05a1cc61ee30866daafd7.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..e20b70445435d1151880ba40cbfdd4d211e5650a GIT binary patch literal 632 zcmV-;0*C#HP)aKvh4>>{22}1U%>+afs6e<;(9pnV`2F(#z zRNa6*oo^NMaWOF@qyOwb_RKub|1_p8au1qQS*9zf4*29VB%tQfsZh zOK^zfX7J-{&}CvD2Fb3$A(BfV?=ZR!Iwr~bhHhSS?Pp>ufi^TrAlYzIEyaRE=vEwP?FdC`6zgbtc2>;9SplL1BWTK^ZtQZBv5Zi-qpOnUv+!mipfp1e{1= zq<`3yK>wPfdGwMQm+9%GPpBOsMbOmCxy<4(00030|4ifFA^-pY21!IgR09B+sYJPk SD + + + + + + + + + + + + + + + + + + + {{ satisfaction }} + 满意度 + + + {{total}} + 总评价数 + + + + + + + + + + + + + {{ review.nick }} + + {{ Service.formatDate(review.addTime,1) }} + + {{ review.sign }} + + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/1e/1e8ba5b5ab4064f04519ae106ca466582d2ac7e5.svn-base b/.svn/pristine/1e/1e8ba5b5ab4064f04519ae106ca466582d2ac7e5.svn-base new file mode 100644 index 0000000..73d0685 --- /dev/null +++ b/.svn/pristine/1e/1e8ba5b5ab4064f04519ae106ca466582d2ac7e5.svn-base @@ -0,0 +1,423 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/1e/1e9622b15d1207571d9e353dc2c5df1680519705.svn-base b/.svn/pristine/1e/1e9622b15d1207571d9e353dc2c5df1680519705.svn-base new file mode 100644 index 0000000..9546e27 --- /dev/null +++ b/.svn/pristine/1e/1e9622b15d1207571d9e353dc2c5df1680519705.svn-base @@ -0,0 +1,494 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/1e/1ee11f3a75caa89bf75c31b5f7e161d0902d4df0.svn-base b/.svn/pristine/1e/1ee11f3a75caa89bf75c31b5f7e161d0902d4df0.svn-base new file mode 100644 index 0000000..1ac314d --- /dev/null +++ b/.svn/pristine/1e/1ee11f3a75caa89bf75c31b5f7e161d0902d4df0.svn-base @@ -0,0 +1,476 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/1f/1f597ce8e73a3382a8b99b0c7f9415c61d4969e2.svn-base b/.svn/pristine/1f/1f597ce8e73a3382a8b99b0c7f9415c61d4969e2.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..afb2f24dbf30d37ec838a0f127b80a63bf7ea7ed GIT binary patch literal 2680 zcma);X*d*$8pmhG%wWd8bx$!gj6KE@#x_GZj-8UMLyRSZ46>v!wz4lr7`rSvvPPVU zL9%Z(LlG&Itt{E6n%jNued@WN?)~sS@ALlt@BjVye_k{h77PNipvf=vZ3(*xHw=yP$?OL`vJAlo;giS82Wf@viD;>o8uS;)h@|crtaVEs*7oP5GT1WqzLc)u)DGs|CI0HEM3( zEKk`RRNXnbADZv{=-a#k_@;Zt#>`+%Vp#u9a0p^7?cM9@x_rs^eq7^++xA$#!DOu? zby8%1sI-$y6cG)dsmf0!6~+v>YP|EIstO(7ZA^-JwJ3NLE^&hq&qw*Ig)yPa@+_RI zC;Tn7Fv)Pa_>UEqE-fwf3K2v0pd=TQz$&l16;zHp{LJ*YSD%WXg{cl-`Kpl_M2ccb@{iC6`ILYOb{i~WjACf7-tbjH|pTdQqUF~3_cggkvtL6 zx6_knsgo&rd-1j@a?ZmXb5dOVUWtKj{f)*YaM-Sekr7A0UCU;@Q{Lo7PT-&D-LJKy z0Zm@?`(Jn80vSk_O=(|+rcyyROqJ~?-%ZKals;MvlZ`B-96 zB5u*IdRbcJ)G2{$x{WU0d`KBuRu)(eX7{4|lq*}Gs4*zsqU z$RK*(P=lBl!>~A{9ETDey2E_jUk|iBSOdUs+42Vx?v>cb%%X2-t zl_|7m9m^#&pqbO;8iY^vMdXBp-Ii<2F-i6N?GNovNXpD`Kt%} zY&i@MrVEhXs(DZ1Z%ok5GUDd8OzLdsK1{_^IaHR|+L3d4G&K#jmEFKN`B=jid}-O! z_S&Ktzy}eB7+WvMp}AQ`$jK_4_AU*16VyPUMDIJJ7)ed9MG4zd8=LQO6l`vwz==A< zUx==p6vjz4GO$0W5rVcgG7*pG@5pX=hs+;Ep6HhuF~tIG;|GLHqRs`$OcQ(H+1VDS z8x|Pm&?IFZ_Cw2WQDd!-24A=;`;^)D@Ucbcj-$Ei&1{5?Pwqif!e~*r>p}Ad*J_#q zuQYthN_ z-jS%MG9Se;Zj?mPfu}P@2>;RNv|~b}FRqy39a>Qx1%2;)T5HLb8+otOt_Zg3RPDx@ z^CaCmkpETy{{&G*-MEmB0%E1r&xRP}jb`AEg_oA}Up$Yul%<$@$A^!Jco#@o>+{g{)c(Ixs98cD8QEQTd$>)1M;A+a6 zX2tOdTPWesXMV;dyMPiGf&<_O2nLV4JcOA5Hz20{mYwt?s=ZNO9oB-Z;&u9_@x~;9e*${Xa2n zn=n&5PVcH|+O!@|{1kkK6?UPpe z;)KqhoxZ$lF=DS9ZpZ2hJlZwv61m|=yFgwv8KjaO4cd9c3|po z`Q5NfT0ue&;1jOh+pE=|zh%H48#>8rovh#b=usc~K+lZGvVG2x7%SP(1A%4R^C5C( z1;tu|_p-QCf-_yscusPXTR&S1#el-Pi02p8811au-s^_MHG1ug2%t&fH~?kp;C3S^ zlQ23NKS91#JSSCyx?g@Q_BwBDk9a!t8M9As^m)3Nd?P~PNW$AUCV9$Lb$4o~a0n-bk2O&h%UX}%T9{0D)jrhAd^?4l072Ghuj-;Xq%M!IBlyb zs14eA`$0Abu?j;C+E%TPCMEc>H#d`l1Uq)t?XLLx-hcKd@C(44(OXHz=SS$!m1E9V zdaD)eDx5j+rIg?#H57xpW51a)*szWHfbl3sQ2gsdATqQ|EOFjut+X%B z(-)4Q_irXwyzjnX literal 0 HcmV?d00001 diff --git a/.svn/pristine/1f/1ffed74b02329a3cddec4cb05b3f8203ebe54f3b.svn-base b/.svn/pristine/1f/1ffed74b02329a3cddec4cb05b3f8203ebe54f3b.svn-base new file mode 100644 index 0000000..969899d --- /dev/null +++ b/.svn/pristine/1f/1ffed74b02329a3cddec4cb05b3f8203ebe54f3b.svn-base @@ -0,0 +1,13938 @@ +{ + "name": "uni-preset-vue", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "uni-preset-vue", + "version": "0.0.0", + "dependencies": { + "@climblee/uv-ui": "^1.1.20", + "@dcloudio/uni-app": "3.0.0-4080420251103001", + "@dcloudio/uni-app-harmony": "3.0.0-4080420251103001", + "@dcloudio/uni-app-plus": "3.0.0-4080420251103001", + "@dcloudio/uni-components": "3.0.0-4080420251103001", + "@dcloudio/uni-h5": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-alipay": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-baidu": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-harmony": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-jd": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-kuaishou": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-lark": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-qq": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-xhs": "3.0.0-4080420251103001", + "@dcloudio/uni-quickapp-webview": "3.0.0-4080420251103001", + "clipboard": "^2.0.11", + "dayjs": "^1.11.13", + "echarts": "^5.5.1", + "uview-plus": "^3.3.54", + "vue": "3.4.21", + "vue-i18n": "9.14.5" + }, + "devDependencies": { + "@dcloudio/types": "3.4.19", + "@dcloudio/uni-automator": "3.0.0-4080420251103001", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-stacktracey": "3.0.0-4080420251103001", + "@dcloudio/vite-plugin-uni": "3.0.0-4080420251103001", + "@vue/runtime-core": "3.5.23", + "@vue/tsconfig": "^0.1.3", + "sass": "1.63.2", + "sass-loader": "10.4.1", + "typescript": "^4.9.4", + "vite": "5.2.8", + "vue-tsc": "^1.0.24" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.5.tgz", + "integrity": "sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", + "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-module-transforms": "^7.25.2", + "@babel/helpers": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.2", + "@babel/types": "^7.25.2", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", + "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.6", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.3" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.28.5.tgz", + "integrity": "sha512-q3WC4JfdODypvxArsJQROfupPBq9+lMwjKq7C33GhbFYJsufD0yd/ziwD+hJucLeWsnFPWZjsU2DNFqBPE7jwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-member-expression-to-functions": "^7.28.5", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/traverse": "^7.28.5", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.28.5.tgz", + "integrity": "sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.3", + "regexpu-core": "^6.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.5.tgz", + "integrity": "sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "debug": "^4.4.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.22.10" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.28.5.tgz", + "integrity": "sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.28.5", + "@babel/types": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.3.tgz", + "integrity": "sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.28.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz", + "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz", + "integrity": "sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-wrap-function": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz", + "integrity": "sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz", + "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.28.3.tgz", + "integrity": "sha512-zdf983tNfLZFletc0RRXYrHrucBEg95NIFMkn6K9dbeMYnsgHaSBGcQqdsCSStG2PYwRre0Qc2NNSCXbG+xc6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.28.3", + "@babel/types": "^7.28.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.4.tgz", + "integrity": "sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==", + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.7", + "resolved": "https://registry.npmmirror.com/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", + "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.6" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.28.5.tgz", + "integrity": "sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.27.1.tgz", + "integrity": "sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.27.1.tgz", + "integrity": "sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz", + "integrity": "sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.28.3.tgz", + "integrity": "sha512-b6YTX108evsvE4YgWyQ921ZAFFQm3Bn+CA3+ZXlNVnPhx+UfsVURoPjfGAPCjBgrqo30yX/C2nZGX96DxvR9Iw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.28.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.27.1.tgz", + "integrity": "sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz", + "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.24.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.7.tgz", + "integrity": "sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.24.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.7.tgz", + "integrity": "sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz", + "integrity": "sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.28.0.tgz", + "integrity": "sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-remap-async-to-generator": "^7.27.1", + "@babel/traverse": "^7.28.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.27.1.tgz", + "integrity": "sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-remap-async-to-generator": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz", + "integrity": "sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.5.tgz", + "integrity": "sha512-45DmULpySVvmq9Pj3X9B+62Xe+DJGov27QravQJU1LLcapR6/10i+gYVAucGGJpHBp5mYxIMK4nDAT/QDLr47g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.27.1.tgz", + "integrity": "sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.28.3.tgz", + "integrity": "sha512-LtPXlBbRoc4Njl/oh1CeD/3jC+atytbnf/UqLoqTDcEYGUPj022+rvfkbDYieUrSj3CaV4yHDByPE+T2HwfsJg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.28.3", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.4.tgz", + "integrity": "sha512-cFOlhIYPBv/iBoc+KS3M6et2XPtbT2HiCRfBXWtfpc9OAyostldxIf9YAYB6ypURBBbx+Qv6nyrLzASfJe+hBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-globals": "^7.28.0", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/traverse": "^7.28.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.27.1.tgz", + "integrity": "sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/template": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.5.tgz", + "integrity": "sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.27.1.tgz", + "integrity": "sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz", + "integrity": "sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.27.1.tgz", + "integrity": "sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.27.1.tgz", + "integrity": "sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-explicit-resource-management": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.28.0.tgz", + "integrity": "sha512-K8nhUcn3f6iB+P3gwCv/no7OdzOZQcKchW6N389V6PD8NUWKZHzndOd9sPDVbMoBsbmjMqlB4L9fm+fEFNVlwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.28.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.28.5.tgz", + "integrity": "sha512-D4WIMaFtwa2NizOp+dnoFjRez/ClKiC2BqqImwKd1X28nqBtZEyCYJ2ozQrrzlxAFrcrjxo39S6khe9RNDlGzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz", + "integrity": "sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz", + "integrity": "sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz", + "integrity": "sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.27.1.tgz", + "integrity": "sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz", + "integrity": "sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.28.5.tgz", + "integrity": "sha512-axUuqnUTBuXyHGcJEVVh9pORaN6wC5bYfE7FGzPiaWa3syib9m7g+/IT/4VgCOe2Upef43PHzeAvcrVek6QuuA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz", + "integrity": "sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz", + "integrity": "sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz", + "integrity": "sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.28.5.tgz", + "integrity": "sha512-vn5Jma98LCOeBy/KpeQhXcV2WZgaRUtjwQmjoBuLNlOmkg0fB5pdvYVeWRYI69wWKwK2cD1QbMiUQnoujWvrew==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.28.3", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz", + "integrity": "sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.27.1.tgz", + "integrity": "sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz", + "integrity": "sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.27.1.tgz", + "integrity": "sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.27.1.tgz", + "integrity": "sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.28.4.tgz", + "integrity": "sha512-373KA2HQzKhQCYiRVIRr+3MjpCObqzDlyrM6u4I201wL8Mp2wHf7uB8GhDwis03k2ti8Zr65Zyyqs1xOxUF/Ew==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.28.0", + "@babel/plugin-transform-parameters": "^7.27.7", + "@babel/traverse": "^7.28.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz", + "integrity": "sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.27.1.tgz", + "integrity": "sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.28.5.tgz", + "integrity": "sha512-N6fut9IZlPnjPwgiQkXNhb+cT8wQKFlJNqcZkWlcTqkcqx6/kU4ynGmLFoa4LViBSirn05YAwk+sQBbPfxtYzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.27.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.7.tgz", + "integrity": "sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.27.1.tgz", + "integrity": "sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.27.1.tgz", + "integrity": "sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz", + "integrity": "sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.28.4.tgz", + "integrity": "sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regexp-modifiers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.27.1.tgz", + "integrity": "sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz", + "integrity": "sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz", + "integrity": "sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.27.1.tgz", + "integrity": "sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz", + "integrity": "sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz", + "integrity": "sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz", + "integrity": "sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.24.8", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.8.tgz", + "integrity": "sha512-CgFgtN61BbdOGCP4fLaAMOPkzWUh6yQZNMr5YSt8uz2cZSSiQONCQFWqsE4NeVfOIhqDOlS9CR3WD91FzMeB2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-create-class-features-plugin": "^7.24.8", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/plugin-syntax-typescript": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz", + "integrity": "sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.27.1.tgz", + "integrity": "sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz", + "integrity": "sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.27.1.tgz", + "integrity": "sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.28.5.tgz", + "integrity": "sha512-S36mOoi1Sb6Fz98fBfE+UZSpYw5mJm0NUHtIKrOuNcqeFauy1J6dIvXm2KRVKobOSaGq4t/hBXdN4HGU3wL9Wg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.28.5", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.28.5", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.27.1", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.27.1", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.27.1", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.28.3", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-import-assertions": "^7.27.1", + "@babel/plugin-syntax-import-attributes": "^7.27.1", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.27.1", + "@babel/plugin-transform-async-generator-functions": "^7.28.0", + "@babel/plugin-transform-async-to-generator": "^7.27.1", + "@babel/plugin-transform-block-scoped-functions": "^7.27.1", + "@babel/plugin-transform-block-scoping": "^7.28.5", + "@babel/plugin-transform-class-properties": "^7.27.1", + "@babel/plugin-transform-class-static-block": "^7.28.3", + "@babel/plugin-transform-classes": "^7.28.4", + "@babel/plugin-transform-computed-properties": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.28.5", + "@babel/plugin-transform-dotall-regex": "^7.27.1", + "@babel/plugin-transform-duplicate-keys": "^7.27.1", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-dynamic-import": "^7.27.1", + "@babel/plugin-transform-explicit-resource-management": "^7.28.0", + "@babel/plugin-transform-exponentiation-operator": "^7.28.5", + "@babel/plugin-transform-export-namespace-from": "^7.27.1", + "@babel/plugin-transform-for-of": "^7.27.1", + "@babel/plugin-transform-function-name": "^7.27.1", + "@babel/plugin-transform-json-strings": "^7.27.1", + "@babel/plugin-transform-literals": "^7.27.1", + "@babel/plugin-transform-logical-assignment-operators": "^7.28.5", + "@babel/plugin-transform-member-expression-literals": "^7.27.1", + "@babel/plugin-transform-modules-amd": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.27.1", + "@babel/plugin-transform-modules-systemjs": "^7.28.5", + "@babel/plugin-transform-modules-umd": "^7.27.1", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-new-target": "^7.27.1", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.27.1", + "@babel/plugin-transform-numeric-separator": "^7.27.1", + "@babel/plugin-transform-object-rest-spread": "^7.28.4", + "@babel/plugin-transform-object-super": "^7.27.1", + "@babel/plugin-transform-optional-catch-binding": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.28.5", + "@babel/plugin-transform-parameters": "^7.27.7", + "@babel/plugin-transform-private-methods": "^7.27.1", + "@babel/plugin-transform-private-property-in-object": "^7.27.1", + "@babel/plugin-transform-property-literals": "^7.27.1", + "@babel/plugin-transform-regenerator": "^7.28.4", + "@babel/plugin-transform-regexp-modifiers": "^7.27.1", + "@babel/plugin-transform-reserved-words": "^7.27.1", + "@babel/plugin-transform-shorthand-properties": "^7.27.1", + "@babel/plugin-transform-spread": "^7.27.1", + "@babel/plugin-transform-sticky-regex": "^7.27.1", + "@babel/plugin-transform-template-literals": "^7.27.1", + "@babel/plugin-transform-typeof-symbol": "^7.27.1", + "@babel/plugin-transform-unicode-escapes": "^7.27.1", + "@babel/plugin-transform-unicode-property-regex": "^7.27.1", + "@babel/plugin-transform-unicode-regex": "^7.27.1", + "@babel/plugin-transform-unicode-sets-regex": "^7.27.1", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.14", + "babel-plugin-polyfill-corejs3": "^0.13.0", + "babel-plugin-polyfill-regenerator": "^0.6.5", + "core-js-compat": "^3.43.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.24.8", + "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.24.8.tgz", + "integrity": "sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA==", + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/parser": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.5.tgz", + "integrity": "sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.5" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.5.tgz", + "integrity": "sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.5", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.5", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.5", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.5.tgz", + "integrity": "sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.5", + "@babel/types": "^7.28.5", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/parser": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.5.tgz", + "integrity": "sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.5" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@babel/types": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", + "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmmirror.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@climblee/uv-ui": { + "version": "1.1.20", + "resolved": "https://registry.npmmirror.com/@climblee/uv-ui/-/uv-ui-1.1.20.tgz", + "integrity": "sha512-jkyesHJsPJkF4Nap9ZmG1/ibKlxXA5M8+ntqKXwwloIsYSYL5SOKb0gyPj17aBOU1PkJpmeiZ8PwnTolhK2/HA==", + "license": "ISC" + }, + "node_modules/@dcloudio/types": { + "version": "3.4.19", + "resolved": "https://registry.npmjs.org/@dcloudio/types/-/types-3.4.19.tgz", + "integrity": "sha512-1foayOFEAQ+jnQLt3ACsovCNjer3/fXn1I2VBpmDOzs2nk/n4UHwRLAxZV/RpxRqaGOPEvKrO/Pq+VI6sAmuRw==", + "license": "Apache-2.0" + }, + "node_modules/@dcloudio/uni-app": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app/-/uni-app-3.0.0-4080420251103001.tgz", + "integrity": "sha512-pzBWZiICfMmAxzBvAoXlTcDYoVNrV+ztsUyDouUxZJShpquQdVqHJqHxAlvGLR7c5gHCVtnKilCKwmu6zjNGrA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cloud": "3.0.0-4080420251103001", + "@dcloudio/uni-components": "3.0.0-4080420251103001", + "@dcloudio/uni-console": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-push": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-stat": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "@dcloudio/types": "3.4.19" + } + }, + "node_modules/@dcloudio/uni-app-harmony": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app-harmony/-/uni-app-harmony-3.0.0-4080420251103001.tgz", + "integrity": "sha512-WjCLttxacAoRywMl3hhA2LGAso8NqqgupXbTvoWRyYF11tuSw2duUM7n58mZ3A/cI4SQk/y/x9MzoFXlDiYzAw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-app-uts": "3.0.0-4080420251103001", + "@dcloudio/uni-app-vite": "3.0.0-4080420251103001", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "licia": "1.41.1", + "postcss-selector-parser": "6.1.2" + } + }, + "node_modules/@dcloudio/uni-app-plus": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app-plus/-/uni-app-plus-3.0.0-4080420251103001.tgz", + "integrity": "sha512-HbEpRIyJ4q6A+s+2WJsBvW/AlStyzBUHFkZbs/1vnTV5jjjvlT8e9Zb+2HptC95olZmD97QWcu31M5U/a6Z0PA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-app-uts": "3.0.0-4080420251103001", + "@dcloudio/uni-app-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-app-vue": "3.0.0-4080420251103001", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "licia": "1.41.1", + "postcss-selector-parser": "6.1.2" + } + }, + "node_modules/@dcloudio/uni-app-uts": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app-uts/-/uni-app-uts-3.0.0-4080420251103001.tgz", + "integrity": "sha512-YdKLXUY4Ix64ajRAv6JKiiSL5FZViDYuP83TXI5zaBSbw/fofzO1ZYRZKrQ2bZi51yH0Huq8u6MPvDIUQTLjJw==", + "license": "Apache-2.0", + "dependencies": { + "@babel/parser": "7.25.6", + "@babel/types": "7.25.6", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-console": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-nvue-styler": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@jridgewell/gen-mapping": "^0.3.3", + "@jridgewell/trace-mapping": "^0.3.19", + "@rollup/pluginutils": "5.1.0", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/consolidate": "1.0.0", + "@vue/shared": "3.4.21", + "debug": "4.3.7", + "es-module-lexer": "1.5.4", + "estree-walker": "2.0.2", + "fast-glob": "3.3.3", + "fs-extra": "10.1.0", + "magic-string": "0.30.11", + "picocolors": "1.1.0", + "source-map-js": "1.2.1", + "unimport": "4.1.1" + } + }, + "node_modules/@dcloudio/uni-app-uts/node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "license": "ISC" + }, + "node_modules/@dcloudio/uni-app-vite": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app-vite/-/uni-app-vite-3.0.0-4080420251103001.tgz", + "integrity": "sha512-hti+d0OoT/B69ApgKj8SEgi2rGownaHSxgfZQx1AYmWiRXsc/uWEzC7lakvsRLV3aPiUPD0aJNuI97IgMGBvnw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-nvue-styler": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@rollup/pluginutils": "5.1.0", + "@vitejs/plugin-vue": "5.2.4", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "picocolors": "1.1.0" + } + }, + "node_modules/@dcloudio/uni-app-vite/node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "license": "ISC" + }, + "node_modules/@dcloudio/uni-app-vue": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app-vue/-/uni-app-vue-3.0.0-4080420251103001.tgz", + "integrity": "sha512-nK3ORcnBUQQ4BwqCvAMNHOVtBevfs+iwT31SZDtV0HikWq2fF1O6ae1bmMQJ3de3/fCLvu+3ZYCE773+D3S9aQ==", + "license": "Apache-2.0" + }, + "node_modules/@dcloudio/uni-automator": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-automator/-/uni-automator-3.0.0-4080420251103001.tgz", + "integrity": "sha512-zAHmFiZxbP3PmuTh5lz16NDThfrm4MTkwN80ZLn+xlJl5vNqX5yMfqfDwJrEBNY7Wycfh+qB3EvwWQ8CFMpAxw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "address": "^1.1.2", + "cross-env": "^7.0.3", + "debug": "4.3.7", + "default-gateway": "^6.0.3", + "fs-extra": "10.1.0", + "jsonc-parser": "3.3.1", + "licia": "1.41.1", + "merge": "2.1.1", + "qrcode-reader": "1.0.4", + "qrcode-terminal": "0.12.0", + "ws": "8.18.0" + }, + "peerDependencies": { + "jest": "27.0.4", + "jest-environment-node": "27.5.1" + } + }, + "node_modules/@dcloudio/uni-cli-shared": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-cli-shared/-/uni-cli-shared-3.0.0-4080420251103001.tgz", + "integrity": "sha512-CI9gfUSrneTJFp52CBpAwDE9vsaxdwg4uA7n2ehKB+WLXgP2zmLp+0QoSQoFYISYll6MnfQK6Pcl8Oj1c7mKUA==", + "license": "Apache-2.0", + "dependencies": { + "@ampproject/remapping": "^2.1.2", + "@babel/code-frame": "7.24.7", + "@babel/core": "7.25.2", + "@babel/parser": "7.25.6", + "@babel/types": "7.25.6", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@intlify/core-base": "9.1.9", + "@intlify/shared": "9.1.9", + "@intlify/vue-devtools": "9.1.9", + "@rollup/pluginutils": "5.1.0", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/compiler-ssr": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21", + "adm-zip": "0.5.16", + "autoprefixer": "10.4.20", + "base64url": "^3.0.1", + "chokidar": "3.6.0", + "compare-versions": "^3.6.0", + "debug": "4.3.7", + "entities": "^4.5.0", + "es-module-lexer": "1.5.4", + "esbuild": "0.20.2", + "estree-walker": "2.0.2", + "fast-glob": "3.3.3", + "fs-extra": "10.1.0", + "hash-sum": "2.0.0", + "isbinaryfile": "5.0.2", + "jsonc-parser": "3.3.1", + "lines-and-columns": "^2.0.4", + "magic-string": "0.30.11", + "merge": "2.1.1", + "mime": "3.0.0", + "module-alias": "2.2.3", + "os-locale-s-fix": "^1.0.8-fix-1", + "picocolors": "1.1.0", + "postcss-import": "^14.0.2", + "postcss-load-config": "^3.1.1", + "postcss-modules": "^4.3.0", + "postcss-selector-parser": "6.1.2", + "resolve": "1.22.8", + "source-map-js": "1.2.1", + "tapable": "^2.2.0", + "unimport": "4.1.1", + "unplugin-auto-import": "19.1.0", + "xregexp": "3.1.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + } + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "license": "ISC" + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/unplugin-auto-import": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/unplugin-auto-import/-/unplugin-auto-import-19.1.0.tgz", + "integrity": "sha512-B+TGBEBHqY9aR+7YfShfLujETOHstzpV+yaqgy5PkfV0QG7Py+TYMX7vJ9W4SrysHR+UzR+gzcx/nuZjmPeclA==", + "license": "MIT", + "dependencies": { + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "picomatch": "^4.0.2", + "unimport": "^4.1.1", + "unplugin": "^2.2.0", + "unplugin-utils": "^0.2.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@nuxt/kit": "^3.2.2", + "@vueuse/core": "*" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + }, + "@vueuse/core": { + "optional": true + } + } + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/unplugin-auto-import/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/@dcloudio/uni-cloud": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-cloud/-/uni-cloud-3.0.0-4080420251103001.tgz", + "integrity": "sha512-RQp+MkmrW/OxfaTbN1ohNnCcj7q55ub2F0pMAr5OCKHOV/sB4NhnwTKzB7C4B1Ha1oR8ulTAfmwUiBP89dSEmg==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21", + "fast-glob": "3.3.3" + } + }, + "node_modules/@dcloudio/uni-components": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-components/-/uni-components-3.0.0-4080420251103001.tgz", + "integrity": "sha512-YBsUWVx6OrJVR/59QU9H6QX+ulEB5GK+Fp3xZPU3NiVKczSAEsE2eBU3+xSYSyndUrP4BDqV1qhjt5cgpFJcsA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cloud": "3.0.0-4080420251103001", + "@dcloudio/uni-h5": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001" + } + }, + "node_modules/@dcloudio/uni-console": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-console/-/uni-console-3.0.0-4080420251103001.tgz", + "integrity": "sha512-bVdk8iVfld8mTUX8tB6keRm54htGMLOeJhuG1Cx8R8aOJfqTU8yuowf8ZIxIRsqs2dXV/5fHNGcbd/uFosDwDA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "fs-extra": "10.1.0" + } + }, + "node_modules/@dcloudio/uni-h5": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-h5/-/uni-h5-3.0.0-4080420251103001.tgz", + "integrity": "sha512-Xl4bR2znjF6QJ2IHPen5eQiISpSWFZZaXXpFa0IyTf93xSBcSvsg9Nq5izBYPxkH4YXD/hiVHdbgwyHciq/cog==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-h5-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-h5-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21", + "debug": "4.3.7", + "localstorage-polyfill": "^1.0.1", + "postcss-selector-parser": "6.1.2", + "safe-area-insets": "1.4.1", + "vue-router": "4.4.4", + "xmlhttprequest": "^1.8.0" + } + }, + "node_modules/@dcloudio/uni-h5-vite": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-h5-vite/-/uni-h5-vite-3.0.0-4080420251103001.tgz", + "integrity": "sha512-Z9wMRSI+v9aDVlvQYHPnv1gggYJk6WVMINvty/tg01bFXMkBs99TyjaT4XShPM46q8TVySd3lDRQOcY6cfUY1A==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@rollup/pluginutils": "5.1.0", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "mime": "3.0.0", + "module-alias": "2.2.3" + } + }, + "node_modules/@dcloudio/uni-h5-vue": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-h5-vue/-/uni-h5-vue-3.0.0-4080420251103001.tgz", + "integrity": "sha512-NbQCQFbnXIOKdek/ntwh1NslnmrZbuYRrfbe2ZVZOz8gXKfaR7GEO/GPPbTpI7mw3+iM906msksBh9HBzsD5TA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/server-renderer": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-i18n": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-i18n/-/uni-i18n-3.0.0-4080420251103001.tgz", + "integrity": "sha512-FHUQ8Ex0GbJsYxVZR1CrUoRc9Rm2OnfudCxpXIJSxpd1tp4sje8QhIeXwRIMEXcATc00hngTSgQrnuMuu5g72Q==", + "license": "Apache-2.0" + }, + "node_modules/@dcloudio/uni-mp-alipay": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-alipay/-/uni-mp-alipay-3.0.0-4080420251103001.tgz", + "integrity": "sha512-cAfDeDAHEMVjwa3YgiREEewbx5iSkEu2qS7aueCvWNwKaz9u9vw7OnE+D31lNTzcW/jD+ESTgeKEL0tSH+1nyg==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-baidu": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-baidu/-/uni-mp-baidu-3.0.0-4080420251103001.tgz", + "integrity": "sha512-n/BzswNgJpD+XvMTHd8N7SosmIm2UPkvbV3ncPzGOcoW6kiF3OOh6jxYCf4fgPzj6RNf/avOyQv2QS0RgdYy1w==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-app": "3.0.0-4080420251103001", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21", + "jimp": "0.10.3", + "licia": "1.41.1", + "qrcode-reader": "1.0.4", + "qrcode-terminal": "0.12.0", + "ws": "8.18.0" + } + }, + "node_modules/@dcloudio/uni-mp-compiler": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-compiler/-/uni-mp-compiler-3.0.0-4080420251103001.tgz", + "integrity": "sha512-tMyKHyUyNl/yy/6D7M66IVxJhkaieimL2F/ZprNP8fl1QWBZqBBxokxAVeFeGbX7f9Sd1Vi+HdAowQkMCNfdDw==", + "license": "Apache-2.0", + "dependencies": { + "@babel/generator": "7.25.6", + "@babel/parser": "7.25.6", + "@babel/types": "7.25.6", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/shared": "3.4.21", + "estree-walker": "2.0.2" + } + }, + "node_modules/@dcloudio/uni-mp-harmony": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-harmony/-/uni-mp-harmony-3.0.0-4080420251103001.tgz", + "integrity": "sha512-/TYd3wijGxRktHWLPFguDQvsIC+tvqzKK1rcQoo3hgnSbjJiKUXBMLbnH1RH9fZNqVDqVMX/t07KrlnLE7K6IA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-quickapp-webview": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-jd": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-jd/-/uni-mp-jd-3.0.0-4080420251103001.tgz", + "integrity": "sha512-jkLglxCUX45juoZGfeejYs3Don1TdUqpZ1Jdm9DEjJ9QV0vS48fyVdnWzl423bJ5IvIDYTh5DTfGh0epRgxw6Q==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-kuaishou": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-kuaishou/-/uni-mp-kuaishou-3.0.0-4080420251103001.tgz", + "integrity": "sha512-7XH9qlfGlrPJr5nLReCVtVilH/W3dXxXUNwk2ISH8udTjRT1NB/LaBD9/TxvoY7k8+LplEFOpIq+PBKWImABPw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-lark": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-lark/-/uni-mp-lark-3.0.0-4080420251103001.tgz", + "integrity": "sha512-VFj/IWul1aaDZaZig+9IooPg3v3Cu+jaBvklfkP58c6wQa0PvnzE3j9j6WhfbhZ7CUW/rTmC7cxqNjTe2hwPcQ==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-qq": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-qq/-/uni-mp-qq-3.0.0-4080420251103001.tgz", + "integrity": "sha512-BBWL2wVTG1tv8PPmnaA/7Aae4grbPevEkapsYl6WAEkJDBv5AIissq/ltusEnXnYNKtU/ZB8GVnb//lLW3xa/A==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21", + "fs-extra": "10.1.0" + } + }, + "node_modules/@dcloudio/uni-mp-toutiao": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-toutiao/-/uni-mp-toutiao-3.0.0-4080420251103001.tgz", + "integrity": "sha512-iuEfUje5sEn72kFiyhb1tqu1Qx8iuC4cbGTbtyD7P6MSozwzURJgISoZiFsx1EKYIgn3w8ZHL+oh6hXgysP+Lw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-vite": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-vite/-/uni-mp-vite-3.0.0-4080420251103001.tgz", + "integrity": "sha512-/MQElW4cWS0nL1gofvpY0xV1XjAcF7zVrjYIFoiht1rEwW6ec64umKOI9YGMUKi+Gx8o2Qa4XTsqChlE/MzSFg==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/shared": "3.4.21", + "debug": "4.3.7" + } + }, + "node_modules/@dcloudio/uni-mp-vue": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-vue/-/uni-mp-vue-3.0.0-4080420251103001.tgz", + "integrity": "sha512-H1xF0jLrN3WnN/xCWKy+74bSt7AHa8grz3Nw75u+77vmkuIzxiGpauUQ4FG6l2zBtiW3EM+gfcfFUMunTlHM4A==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-weixin": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-weixin/-/uni-mp-weixin-3.0.0-4080420251103001.tgz", + "integrity": "sha512-AoaXYxNngQBjNQ6hJJ4Jzz6KDDEjYeEUs8idhX+dujUO1JgBGpWbE9gP66VdaPNmD7+aZ/1tK1fZG6JjuHW+8w==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21", + "jimp": "0.10.3", + "licia": "1.41.1", + "qrcode-reader": "1.0.4", + "qrcode-terminal": "0.12.0", + "ws": "8.18.0" + } + }, + "node_modules/@dcloudio/uni-mp-xhs": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-xhs/-/uni-mp-xhs-3.0.0-4080420251103001.tgz", + "integrity": "sha512-Fl+gUYLhDOllrDkwkaR1rnGs+rwIbHzSJUZ/s6epocNhod1QetpzS5FBXwDryf898czjA9FcHteJotALXNkBjQ==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-nvue-styler": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-nvue-styler/-/uni-nvue-styler-3.0.0-4080420251103001.tgz", + "integrity": "sha512-LXwlJyfusm/bIC2qceJuJm72XNQtRXt5REG/6p+mtEYum8l4qloFJ5za1TdQXRsECXPGz6rS8YqU8iDTe70vdw==", + "license": "Apache-2.0", + "dependencies": { + "parse-css-font": "^4.0.0", + "postcss": "8.4.45" + } + }, + "node_modules/@dcloudio/uni-push": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-push/-/uni-push-3.0.0-4080420251103001.tgz", + "integrity": "sha512-PZ766hB4OBRuHLNJ6umNNGo8WljC67LMFgpD7ORHa6+SmS+JfncMqXufWGsuh/Q/1/QPqe4Pcm8w1zG5Bke1vw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001" + } + }, + "node_modules/@dcloudio/uni-quickapp-webview": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-quickapp-webview/-/uni-quickapp-webview-3.0.0-4080420251103001.tgz", + "integrity": "sha512-/hn2zxUnUQOkkj37QqsQL5f7ffQ8EBm/27FrO8lYx7wGyRaehcuXhJ/vHWPRpJv9tq4Cl8w0iidrVsYPchu2pw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-shared": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-shared/-/uni-shared-3.0.0-4080420251103001.tgz", + "integrity": "sha512-+EfZmMVToYOaKBkzXix/LMGosZaFiFUyZ1vnGg3giLEcr5r8EYQ/NQ3GfthcD6pC9A114imv5Az+4HeKhcKZiw==", + "license": "Apache-2.0", + "dependencies": { + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-stacktracey": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-stacktracey/-/uni-stacktracey-3.0.0-4080420251103001.tgz", + "integrity": "sha512-coPXA+6PbbSWZx8NDCyNnkSfUx9FusVB6lhxZ+aYKYJkbl/28pRJAM9oCeGV3sZHpjCYyOZaBzxv0kQ0/O7W8A==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/@dcloudio/uni-stat": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-stat/-/uni-stat-3.0.0-4080420251103001.tgz", + "integrity": "sha512-CCADC5plW/etPbhORExii2pJ6m337YeHB+V1R7w6JBmFdGqqYj7+3Vq24wWSSECc4hpiZFLk3dNzu5/NNw2p1Q==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "debug": "4.3.7" + } + }, + "node_modules/@dcloudio/vite-plugin-uni": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/vite-plugin-uni/-/vite-plugin-uni-3.0.0-4080420251103001.tgz", + "integrity": "sha512-r9UOGDrHqvOV2p9IW+4wql8BJJjKgPRWH9Y0rkztp7GjvtUqCkkoVwlh5sJXYwqPNZL5JWPuj0Cl+ZtTg1njyw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@babel/core": "7.25.2", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-transform-typescript": "^7.23.3", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-nvue-styler": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@rollup/pluginutils": "5.1.0", + "@vitejs/plugin-legacy": "5.3.2", + "@vitejs/plugin-vue": "5.2.4", + "@vitejs/plugin-vue-jsx": "3.1.0", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/shared": "3.4.21", + "cac": "6.7.9", + "debug": "4.3.7", + "estree-walker": "2.0.2", + "express": "4.20.0", + "fast-glob": "3.3.3", + "fs-extra": "10.1.0", + "hash-sum": "2.0.0", + "jsonc-parser": "3.3.1", + "magic-string": "0.30.11", + "picocolors": "1.1.0", + "terser": "^5.4.0", + "unplugin-auto-import": "19.1.0" + }, + "bin": { + "uni": "bin/uni.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "5.2.8" + } + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "dev": true, + "license": "ISC" + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/unplugin-auto-import": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/unplugin-auto-import/-/unplugin-auto-import-19.1.0.tgz", + "integrity": "sha512-B+TGBEBHqY9aR+7YfShfLujETOHstzpV+yaqgy5PkfV0QG7Py+TYMX7vJ9W4SrysHR+UzR+gzcx/nuZjmPeclA==", + "dev": true, + "license": "MIT", + "dependencies": { + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "picomatch": "^4.0.2", + "unimport": "^4.1.1", + "unplugin": "^2.2.0", + "unplugin-utils": "^0.2.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@nuxt/kit": "^3.2.2", + "@vueuse/core": "*" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + }, + "@vueuse/core": { + "optional": true + } + } + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/unplugin-auto-import/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@intlify/core-base": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/core-base/-/core-base-9.1.9.tgz", + "integrity": "sha512-x5T0p/Ja0S8hs5xs+ImKyYckVkL4CzcEXykVYYV6rcbXxJTe2o58IquSqX9bdncVKbRZP7GlBU1EcRaQEEJ+vw==", + "license": "MIT", + "dependencies": { + "@intlify/devtools-if": "9.1.9", + "@intlify/message-compiler": "9.1.9", + "@intlify/message-resolver": "9.1.9", + "@intlify/runtime": "9.1.9", + "@intlify/shared": "9.1.9", + "@intlify/vue-devtools": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/devtools-if": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/devtools-if/-/devtools-if-9.1.9.tgz", + "integrity": "sha512-oKSMKjttG3Ut/1UGEZjSdghuP3fwA15zpDPcjkf/1FjlOIm6uIBGMNS5jXzsZy593u+P/YcnrZD6cD3IVFz9vQ==", + "license": "MIT", + "dependencies": { + "@intlify/shared": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/message-compiler": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/message-compiler/-/message-compiler-9.1.9.tgz", + "integrity": "sha512-6YgCMF46Xd0IH2hMRLCssZI3gFG4aywidoWQ3QP4RGYQXQYYfFC54DxhSgfIPpVoPLQ+4AD29eoYmhiHZ+qLFQ==", + "license": "MIT", + "dependencies": { + "@intlify/message-resolver": "9.1.9", + "@intlify/shared": "9.1.9", + "source-map": "0.6.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/message-resolver": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/message-resolver/-/message-resolver-9.1.9.tgz", + "integrity": "sha512-Lx/DBpigeK0sz2BBbzv5mu9/dAlt98HxwbG7xLawC3O2xMF9MNWU5FtOziwYG6TDIjNq0O/3ZbOJAxwITIWXEA==", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/runtime": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/runtime/-/runtime-9.1.9.tgz", + "integrity": "sha512-XgPw8+UlHCiie3fI41HPVa/VDJb3/aSH7bLhY1hJvlvNV713PFtb4p4Jo+rlE0gAoMsMCGcsiT982fImolSltg==", + "license": "MIT", + "dependencies": { + "@intlify/message-compiler": "9.1.9", + "@intlify/message-resolver": "9.1.9", + "@intlify/shared": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/shared": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/shared/-/shared-9.1.9.tgz", + "integrity": "sha512-xKGM1d0EAxdDFCWedcYXOm6V5Pfw/TMudd6/qCdEb4tv0hk9EKeg7lwQF1azE0dP2phvx0yXxrt7UQK+IZjNdw==", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/vue-devtools": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/vue-devtools/-/vue-devtools-9.1.9.tgz", + "integrity": "sha512-YPehH9uL4vZcGXky4Ev5qQIITnHKIvsD2GKGXgqf+05osMUI6WSEQHaN9USRa318Rs8RyyPCiDfmA0hRu3k7og==", + "license": "MIT", + "dependencies": { + "@intlify/message-resolver": "9.1.9", + "@intlify/runtime": "9.1.9", + "@intlify/shared": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmmirror.com/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/console/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/console/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/console/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/core/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/core/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/reporters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/transform/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/transform/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/transform/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/types/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jimp/bmp": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/bmp/-/bmp-0.10.3.tgz", + "integrity": "sha512-keMOc5woiDmONXsB/6aXLR4Z5Q+v8lFq3EY2rcj2FmstbDMhRuGbmcBxlEgOqfRjwvtf/wOtJ3Of37oAWtVfLg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "bmp-js": "^0.1.0", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/core": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/core/-/core-0.10.3.tgz", + "integrity": "sha512-Gd5IpL3U2bFIO57Fh/OA3HCpWm4uW/pU01E75rI03BXfTdz3T+J7TwvyG1XaqsQ7/DSlS99GXtLQPlfFIe28UA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "any-base": "^1.1.0", + "buffer": "^5.2.0", + "core-js": "^3.4.1", + "exif-parser": "^0.1.12", + "file-type": "^9.0.0", + "load-bmfont": "^1.3.1", + "mkdirp": "^0.5.1", + "phin": "^2.9.1", + "pixelmatch": "^4.0.2", + "tinycolor2": "^1.4.1" + } + }, + "node_modules/@jimp/custom": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/custom/-/custom-0.10.3.tgz", + "integrity": "sha512-nZmSI+jwTi5IRyNLbKSXQovoeqsw+D0Jn0SxW08wYQvdkiWA8bTlDQFgQ7HVwCAKBm8oKkDB/ZEo9qvHJ+1gAQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/core": "^0.10.3", + "core-js": "^3.4.1" + } + }, + "node_modules/@jimp/gif": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/gif/-/gif-0.10.3.tgz", + "integrity": "sha512-vjlRodSfz1CrUvvrnUuD/DsLK1GHB/yDZXHthVdZu23zYJIW7/WrIiD1IgQ5wOMV7NocfrvPn2iqUfBP81/WWA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "omggif": "^1.0.9" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/jpeg": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/jpeg/-/jpeg-0.10.3.tgz", + "integrity": "sha512-AAANwgUZOt6f6P7LZxY9lyJ9xclqutYJlsxt3JbriXUGJgrrFAIkcKcqv1nObgmQASSAQKYaMV9KdHjMlWFKlQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "jpeg-js": "^0.3.4" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-blit": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-blit/-/plugin-blit-0.10.3.tgz", + "integrity": "sha512-5zlKlCfx4JWw9qUVC7GI4DzXyxDWyFvgZLaoGFoT00mlXlN75SarlDwc9iZ/2e2kp4bJWxz3cGgG4G/WXrbg3Q==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-blur": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-blur/-/plugin-blur-0.10.3.tgz", + "integrity": "sha512-cTOK3rjh1Yjh23jSfA6EHCHjsPJDEGLC8K2y9gM7dnTUK1y9NNmkFS23uHpyjgsWFIoH9oRh2SpEs3INjCpZhQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-circle": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-circle/-/plugin-circle-0.10.3.tgz", + "integrity": "sha512-51GAPIVelqAcfuUpaM5JWJ0iWl4vEjNXB7p4P7SX5udugK5bxXUjO6KA2qgWmdpHuCKtoNgkzWU9fNSuYp7tCA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-color": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-color/-/plugin-color-0.10.3.tgz", + "integrity": "sha512-RgeHUElmlTH7vpI4WyQrz6u59spiKfVQbsG/XUzfWGamFSixa24ZDwX/yV/Ts+eNaz7pZeIuv533qmKPvw2ujg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "tinycolor2": "^1.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-contain": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-contain/-/plugin-contain-0.10.3.tgz", + "integrity": "sha512-bYJKW9dqzcB0Ihc6u7jSyKa3juStzbLs2LFr6fu8TzA2WkMS/R8h+ddkiO36+F9ILTWHP0CIA3HFe5OdOGcigw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5", + "@jimp/plugin-scale": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-cover": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-cover/-/plugin-cover-0.10.3.tgz", + "integrity": "sha512-pOxu0cM0BRPzdV468n4dMocJXoMbTnARDY/EpC3ZW15SpMuc/dr1KhWQHgoQX5kVW1Wt8zgqREAJJCQ5KuPKDA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-crop": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5", + "@jimp/plugin-scale": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-crop": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-crop/-/plugin-crop-0.10.3.tgz", + "integrity": "sha512-nB7HgOjjl9PgdHr076xZ3Sr6qHYzeBYBs9qvs3tfEEUeYMNnvzgCCGtUl6eMakazZFCMk3mhKmcB9zQuHFOvkg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-displace": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-displace/-/plugin-displace-0.10.3.tgz", + "integrity": "sha512-8t3fVKCH5IVqI4lewe4lFFjpxxr69SQCz5/tlpDLQZsrNScNJivHdQ09zljTrVTCSgeCqQJIKgH2Q7Sk/pAZ0w==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-dither": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-dither/-/plugin-dither-0.10.3.tgz", + "integrity": "sha512-JCX/oNSnEg1kGQ8ffZ66bEgQOLCY3Rn+lrd6v1jjLy/mn9YVZTMsxLtGCXpiCDC2wG/KTmi4862ysmP9do9dAQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-fisheye": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-fisheye/-/plugin-fisheye-0.10.3.tgz", + "integrity": "sha512-RRZb1wqe+xdocGcFtj2xHU7sF7xmEZmIa6BmrfSchjyA2b32TGPWKnP3qyj7p6LWEsXn+19hRYbjfyzyebPElQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-flip": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-flip/-/plugin-flip-0.10.3.tgz", + "integrity": "sha512-0epbi8XEzp0wmSjoW9IB0iMu0yNF17aZOxLdURCN3Zr+8nWPs5VNIMqSVa1Y62GSyiMDpVpKF/ITiXre+EqrPg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-rotate": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-gaussian": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-gaussian/-/plugin-gaussian-0.10.3.tgz", + "integrity": "sha512-25eHlFbHUDnMMGpgRBBeQ2AMI4wsqCg46sue0KklI+c2BaZ+dGXmJA5uT8RTOrt64/K9Wz5E+2n7eBnny4dfpQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-invert": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-invert/-/plugin-invert-0.10.3.tgz", + "integrity": "sha512-effYSApWY/FbtlzqsKXlTLkgloKUiHBKjkQnqh5RL4oQxh/33j6aX+HFdDyQKtsXb8CMd4xd7wyiD2YYabTa0g==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-mask": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-mask/-/plugin-mask-0.10.3.tgz", + "integrity": "sha512-twrg8q8TIhM9Z6Jcu9/5f+OCAPaECb0eKrrbbIajJqJ3bCUlj5zbfgIhiQIzjPJ6KjpnFPSqHQfHkU1Vvk/nVw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-normalize": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-normalize/-/plugin-normalize-0.10.3.tgz", + "integrity": "sha512-xkb5eZI/mMlbwKkDN79+1/t/+DBo8bBXZUMsT4gkFgMRKNRZ6NQPxlv1d3QpRzlocsl6UMxrHnhgnXdLAcgrXw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-print": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-print/-/plugin-print-0.10.3.tgz", + "integrity": "sha512-wjRiI6yjXsAgMe6kVjizP+RgleUCLkH256dskjoNvJzmzbEfO7xQw9g6M02VET+emnbY0CO83IkrGm2q43VRyg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "load-bmfont": "^1.4.0" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-resize": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-resize/-/plugin-resize-0.10.3.tgz", + "integrity": "sha512-rf8YmEB1d7Sg+g4LpqF0Mp+dfXfb6JFJkwlAIWPUOR7lGsPWALavEwTW91c0etEdnp0+JB9AFpy6zqq7Lwkq6w==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-rotate": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-rotate/-/plugin-rotate-0.10.3.tgz", + "integrity": "sha512-YXLlRjm18fkW9MOHUaVAxWjvgZM851ofOipytz5FyKp4KZWDLk+dZK1JNmVmK7MyVmAzZ5jsgSLhIgj+GgN0Eg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5", + "@jimp/plugin-crop": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-scale": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-scale/-/plugin-scale-0.10.3.tgz", + "integrity": "sha512-5DXD7x7WVcX1gUgnlFXQa8F+Q3ThRYwJm+aesgrYvDOY+xzRoRSdQvhmdd4JEEue3lyX44DvBSgCIHPtGcEPaw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-shadow": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-shadow/-/plugin-shadow-0.10.3.tgz", + "integrity": "sha512-/nkFXpt2zVcdP4ETdkAUL0fSzyrC5ZFxdcphbYBodqD7fXNqChS/Un1eD4xCXWEpW8cnG9dixZgQgStjywH0Mg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blur": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-threshold": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-threshold/-/plugin-threshold-0.10.3.tgz", + "integrity": "sha512-Dzh0Yq2wXP2SOnxcbbiyA4LJ2luwrdf1MghNIt9H+NX7B+IWw/N8qA2GuSm9n4BPGSLluuhdAWJqHcTiREriVA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-color": ">=0.8.0", + "@jimp/plugin-resize": ">=0.8.0" + } + }, + "node_modules/@jimp/plugins": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugins/-/plugins-0.10.3.tgz", + "integrity": "sha512-jTT3/7hOScf0EIKiAXmxwayHhryhc1wWuIe3FrchjDjr9wgIGNN2a7XwCgPl3fML17DXK1x8EzDneCdh261bkw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/plugin-blit": "^0.10.3", + "@jimp/plugin-blur": "^0.10.3", + "@jimp/plugin-circle": "^0.10.3", + "@jimp/plugin-color": "^0.10.3", + "@jimp/plugin-contain": "^0.10.3", + "@jimp/plugin-cover": "^0.10.3", + "@jimp/plugin-crop": "^0.10.3", + "@jimp/plugin-displace": "^0.10.3", + "@jimp/plugin-dither": "^0.10.3", + "@jimp/plugin-fisheye": "^0.10.3", + "@jimp/plugin-flip": "^0.10.3", + "@jimp/plugin-gaussian": "^0.10.3", + "@jimp/plugin-invert": "^0.10.3", + "@jimp/plugin-mask": "^0.10.3", + "@jimp/plugin-normalize": "^0.10.3", + "@jimp/plugin-print": "^0.10.3", + "@jimp/plugin-resize": "^0.10.3", + "@jimp/plugin-rotate": "^0.10.3", + "@jimp/plugin-scale": "^0.10.3", + "@jimp/plugin-shadow": "^0.10.3", + "@jimp/plugin-threshold": "^0.10.3", + "core-js": "^3.4.1", + "timm": "^1.6.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/png": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/png/-/png-0.10.3.tgz", + "integrity": "sha512-YKqk/dkl+nGZxSYIDQrqhmaP8tC3IK8H7dFPnnzFVvbhDnyYunqBZZO3SaZUKTichClRw8k/CjBhbc+hifSGWg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "pngjs": "^3.3.3" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/tiff": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/tiff/-/tiff-0.10.3.tgz", + "integrity": "sha512-7EsJzZ5Y/EtinkBGuwX3Bi4S+zgbKouxjt9c82VJTRJOQgLWsE/RHqcyRCOQBhHAZ9QexYmDz34medfLKdoX0g==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "core-js": "^3.4.1", + "utif": "^2.0.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/types": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/types/-/types-0.10.3.tgz", + "integrity": "sha512-XGmBakiHZqseSWr/puGN+CHzx0IKBSpsKlmEmsNV96HKDiP6eu8NSnwdGCEq2mmIHe0JNcg1hqg59hpwtQ7Tiw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/bmp": "^0.10.3", + "@jimp/gif": "^0.10.3", + "@jimp/jpeg": "^0.10.3", + "@jimp/png": "^0.10.3", + "@jimp/tiff": "^0.10.3", + "core-js": "^3.4.1", + "timm": "^1.6.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/utils": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/utils/-/utils-0.10.3.tgz", + "integrity": "sha512-VcSlQhkil4ReYmg1KkN+WqHyYfZ2XfZxDsKAHSfST1GEz/RQHxKZbX+KhFKtKflnL0F4e6DlNQj3vznMNXCR2w==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "core-js": "^3.4.1", + "regenerator-runtime": "^0.13.3" + } + }, + "node_modules/@jimp/utils/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "license": "MIT" + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.1.0.tgz", + "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.19.0.tgz", + "integrity": "sha512-JlPfZ/C7yn5S5p0yKk7uhHTTnFlvTgLetl2VxqE518QgyM7C9bSfFTYvB/Q/ftkq0RIPY4ySxTz+/wKJ/dXC0w==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.19.0.tgz", + "integrity": "sha512-RDxUSY8D1tWYfn00DDi5myxKgOk6RvWPxhmWexcICt/MEC6yEMr4HNCu1sXXYLw8iAsg0D44NuU+qNq7zVWCrw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.19.0.tgz", + "integrity": "sha512-emvKHL4B15x6nlNTBMtIaC9tLPRpeA5jMvRLXVbl/W9Ie7HhkrE7KQjvgS9uxgatL1HmHWDXk5TTS4IaNJxbAA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.19.0.tgz", + "integrity": "sha512-fO28cWA1dC57qCd+D0rfLC4VPbh6EOJXrreBmFLWPGI9dpMlER2YwSPZzSGfq11XgcEpPukPTfEVFtw2q2nYJg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.19.0.tgz", + "integrity": "sha512-2Rn36Ubxdv32NUcfm0wB1tgKqkQuft00PtM23VqLuCUR4N5jcNWDoV5iBC9jeGdgS38WK66ElncprqgMUOyomw==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.19.0.tgz", + "integrity": "sha512-gJuzIVdq/X1ZA2bHeCGCISe0VWqCoNT8BvkQ+BfsixXwTOndhtLUpOg0A1Fcx/+eA6ei6rMBzlOz4JzmiDw7JQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.19.0.tgz", + "integrity": "sha512-0EkX2HYPkSADo9cfeGFoQ7R0/wTKb7q6DdwI4Yn/ULFE1wuRRCHybxpl2goQrx4c/yzK3I8OlgtBu4xvted0ug==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.19.0.tgz", + "integrity": "sha512-GlIQRj9px52ISomIOEUq/IojLZqzkvRpdP3cLgIE1wUWaiU5Takwlzpz002q0Nxxr1y2ZgxC2obWxjr13lvxNQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.19.0.tgz", + "integrity": "sha512-N6cFJzssruDLUOKfEKeovCKiHcdwVYOT1Hs6dovDQ61+Y9n3Ek4zXvtghPPelt6U0AH4aDGnDLb83uiJMkWYzQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.19.0.tgz", + "integrity": "sha512-2DnD3mkS2uuam/alF+I7M84koGwvn3ZVD7uG+LEWpyzo/bq8+kKnus2EVCkcvh6PlNB8QPNFOz6fWd5N8o1CYg==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.19.0.tgz", + "integrity": "sha512-D6pkaF7OpE7lzlTOFCB2m3Ngzu2ykw40Nka9WmKGUOTS3xcIieHe82slQlNq69sVB04ch73thKYIWz/Ian8DUA==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.19.0.tgz", + "integrity": "sha512-HBndjQLP8OsdJNSxpNIN0einbDmRFg9+UQeZV1eiYupIRuZsDEoeGU43NQsS34Pp166DtwQOnpcbV/zQxM+rWA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.19.0.tgz", + "integrity": "sha512-HxfbvfCKJe/RMYJJn0a12eiOI9OOtAUF4G6ozrFUK95BNyoJaSiBjIOHjZskTUffUrB84IPKkFG9H9nEvJGW6A==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.19.0.tgz", + "integrity": "sha512-HxDMKIhmcguGTiP5TsLNolwBUK3nGGUEoV/BO9ldUBoMLBssvh4J0X8pf11i1fTV7WShWItB1bKAKjX4RQeYmg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.19.0.tgz", + "integrity": "sha512-xItlIAZZaiG/u0wooGzRsx11rokP4qyc/79LkAOdznGRAbOFc+SfEdfUOszG1odsHNgwippUJavag/+W/Etc6Q==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.19.0.tgz", + "integrity": "sha512-xNo5fV5ycvCCKqiZcpB65VMR11NJB+StnxHz20jdqRAktfdfzhgjTiJ2doTDQE/7dqGaV5I7ZGqKpgph6lCIag==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmmirror.com/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmmirror.com/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmmirror.com/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmmirror.com/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmmirror.com/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmmirror.com/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "dev": true, + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmmirror.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "license": "MIT" + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmmirror.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.14.11", + "resolved": "https://registry.npmmirror.com/@types/node/-/node-20.14.11.tgz", + "integrity": "sha512-kprQpL8MMeszbz6ojB5/tU8PLN4kesnN8Gjzw349rDlNgsSzg90lAVj3llK99Dh7JON+t9AuscPPFW6mPbTnSA==", + "devOptional": true, + "license": "MIT", + "peer": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmmirror.com/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/yargs": { + "version": "16.0.9", + "resolved": "https://registry.npmmirror.com/@types/yargs/-/yargs-16.0.9.tgz", + "integrity": "sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmmirror.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@vitejs/plugin-legacy": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-legacy/-/plugin-legacy-5.3.2.tgz", + "integrity": "sha512-8moCOrIMaZ/Rjln0Q6GsH6s8fAt1JOI3k8nmfX4tXUxE5KAExVctSyOBk+A25GClsdSWqIk2yaUthH3KJ2X4tg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/preset-env": "^7.23.9", + "browserslist": "^4.23.0", + "browserslist-to-esbuild": "^2.1.1", + "core-js": "^3.36.0", + "magic-string": "^0.30.7", + "regenerator-runtime": "^0.14.1", + "systemjs": "^6.14.3" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "peerDependencies": { + "terser": "^5.4.0", + "vite": "^5.0.0" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.4.tgz", + "integrity": "sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA==", + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vitejs/plugin-vue-jsx": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-3.1.0.tgz", + "integrity": "sha512-w9M6F3LSEU5kszVb9An2/MmXNxocAnUb3WhRr8bHlimhDrXNt6n6D2nJQR3UXpGlZHh/EsgouOHCsM8V3Ln+WA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.23.3", + "@babel/plugin-transform-typescript": "^7.23.3", + "@vue/babel-plugin-jsx": "^1.1.5" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0 || ^5.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@volar/language-core": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/language-core/-/language-core-1.11.1.tgz", + "integrity": "sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/source-map": "1.11.1" + } + }, + "node_modules/@volar/source-map": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/source-map/-/source-map-1.11.1.tgz", + "integrity": "sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "muggle-string": "^0.3.1" + } + }, + "node_modules/@volar/typescript": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/typescript/-/typescript-1.11.1.tgz", + "integrity": "sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "1.11.1", + "path-browserify": "^1.0.1" + } + }, + "node_modules/@vue/babel-helper-vue-transform-on": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.2.2.tgz", + "integrity": "sha512-nOttamHUR3YzdEqdM/XXDyCSdxMA9VizUKoroLX6yTyRtggzQMHXcmwh8a7ZErcJttIBIc9s68a1B8GZ+Dmvsw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@vue/babel-plugin-jsx": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.2.2.tgz", + "integrity": "sha512-nYTkZUVTu4nhP199UoORePsql0l+wj7v/oyQjtThUVhJl1U+6qHuoVhIvR3bf7eVKjbCK+Cs2AWd7mi9Mpz9rA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "~7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.23.3", + "@babel/template": "^7.23.9", + "@babel/traverse": "^7.23.9", + "@babel/types": "^7.23.9", + "@vue/babel-helper-vue-transform-on": "1.2.2", + "@vue/babel-plugin-resolve-type": "1.2.2", + "camelcase": "^6.3.0", + "html-tags": "^3.3.1", + "svg-tags": "^1.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + } + } + }, + "node_modules/@vue/babel-plugin-jsx/node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@vue/babel-plugin-resolve-type": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-resolve-type/-/babel-plugin-resolve-type-1.2.2.tgz", + "integrity": "sha512-EntyroPwNg5IPVdUJupqs0CFzuf6lUrVvCspmv2J1FITLeGnUCuoGNNk78dgCusxEiYj6RMkTJflGSxk5aIC4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/helper-module-imports": "~7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/parser": "^7.23.9", + "@vue/compiler-sfc": "^3.4.15" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.4.21.tgz", + "integrity": "sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.23.9", + "@vue/shared": "3.4.21", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.4.21.tgz", + "integrity": "sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==", + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.4.21.tgz", + "integrity": "sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.23.9", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.7", + "postcss": "^8.4.35", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.4.21.tgz", + "integrity": "sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/consolidate": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@vue/consolidate/-/consolidate-1.0.0.tgz", + "integrity": "sha512-oTyUE+QHIzLw2PpV14GD/c7EohDyP64xCniWTcqcEmTd699eFqTIwOmtDYjcO1j3QgdXoJEoWv1/cCdLrRoOfg==", + "license": "MIT", + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", + "license": "MIT" + }, + "node_modules/@vue/language-core": { + "version": "1.8.27", + "resolved": "https://registry.npmmirror.com/@vue/language-core/-/language-core-1.8.27.tgz", + "integrity": "sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "~1.11.1", + "@volar/source-map": "~1.11.1", + "@vue/compiler-dom": "^3.3.0", + "@vue/shared": "^3.3.0", + "computeds": "^0.0.1", + "minimatch": "^9.0.3", + "muggle-string": "^0.3.1", + "path-browserify": "^1.0.1", + "vue-template-compiler": "^2.7.14" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/language-core/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@vue/language-core/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.23", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.23.tgz", + "integrity": "sha512-ji5w0qvrPyBmBx5Ldv4QGNsw0phgRreEvjt0iUf1lei2Sm8//9ZAi78uM2ZjsT5gk0YZilLuoRCIMvtuZlHMJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/shared": "3.5.23" + } + }, + "node_modules/@vue/reactivity/node_modules/@vue/shared": { + "version": "3.5.23", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.23.tgz", + "integrity": "sha512-0YZ1DYuC5o/YJPf6pFdt2KYxVGDxkDbH/1NYJnVJWUkzr8ituBEmFVQRNX2gCaAsFEjEDnLkWpgqlZA7htgS/g==", + "dev": true, + "license": "MIT" + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.23", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.23.tgz", + "integrity": "sha512-LMB0S6/G7mFJcpQeQaZrbsthFbWrIX8FVTzu5x9U3Ec8YW5MY1CGAnBBHNj+TPOBu3pIbtPpjrXtcaN04X+aBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.23", + "@vue/shared": "3.5.23" + } + }, + "node_modules/@vue/runtime-core/node_modules/@vue/shared": { + "version": "3.5.23", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.23.tgz", + "integrity": "sha512-0YZ1DYuC5o/YJPf6pFdt2KYxVGDxkDbH/1NYJnVJWUkzr8ituBEmFVQRNX2gCaAsFEjEDnLkWpgqlZA7htgS/g==", + "dev": true, + "license": "MIT" + }, + "node_modules/@vue/runtime-dom": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.21.tgz", + "integrity": "sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==", + "license": "MIT", + "dependencies": { + "@vue/runtime-core": "3.4.21", + "@vue/shared": "3.4.21", + "csstype": "^3.1.3" + } + }, + "node_modules/@vue/runtime-dom/node_modules/@vue/reactivity": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.21.tgz", + "integrity": "sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==", + "license": "MIT", + "dependencies": { + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/runtime-dom/node_modules/@vue/runtime-core": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.21.tgz", + "integrity": "sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.21.tgz", + "integrity": "sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==", + "license": "MIT", + "dependencies": { + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "vue": "3.4.21" + } + }, + "node_modules/@vue/shared": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.4.21.tgz", + "integrity": "sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==", + "license": "MIT" + }, + "node_modules/@vue/tsconfig": { + "version": "0.1.3", + "resolved": "https://registry.npmmirror.com/@vue/tsconfig/-/tsconfig-0.1.3.tgz", + "integrity": "sha512-kQVsh8yyWPvHpb8gIc9l/HIDiiVUy1amynLNpCy8p+FoCiZXCo6fQos5/097MmnNZc9AtseDsCrfkhqCrJ8Olg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true, + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmmirror.com/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true, + "peer": true + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true, + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmmirror.com/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/address": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/address/-/address-1.2.2.tgz", + "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", + "license": "MIT", + "engines": { + "node": ">=12.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmmirror.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/any-base": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/any-base/-/any-base-1.1.0.tgz", + "integrity": "sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==", + "license": "MIT" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmmirror.com/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/autoprefixer": { + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/babel-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/babel-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmmirror.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.14.tgz", + "integrity": "sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.7", + "@babel/helper-define-polyfill-provider": "^0.6.5", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.13.0.tgz", + "integrity": "sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.5", + "core-js-compat": "^3.43.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.5.tgz", + "integrity": "sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.5" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.8.25", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.25.tgz", + "integrity": "sha512-2NovHVesVF5TXefsGX1yzx1xgr7+m9JQenvz6FQY3qd+YXkKkYiv+vTCc7OriP9mcDZpTC5mAOYN4ocd29+erA==", + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.js" + } + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmmirror.com/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bmp-js": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/bmp-js/-/bmp-js-0.1.0.tgz", + "integrity": "sha512-vHdS19CnY3hwiNdkaqk93DvjVLfbEcI8mys4UjuWrlX1haDmroo8o4xCzh4wD6DGV6HxRCyauwhHRqMTfERtjw==", + "license": "MIT" + }, + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "dev": true, + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/body-parser/node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true + }, + "node_modules/browserslist": { + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.27.0.tgz", + "integrity": "sha512-AXVQwdhot1eqLihwasPElhX2tAZiBjWdJ9i/Zcj2S6QYIjkx62OKSfnobkriB81C3l4w0rVy3Nt4jaTBltYEpw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.8.19", + "caniuse-lite": "^1.0.30001751", + "electron-to-chromium": "^1.5.238", + "node-releases": "^2.0.26", + "update-browserslist-db": "^1.1.4" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/browserslist-to-esbuild": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/browserslist-to-esbuild/-/browserslist-to-esbuild-2.1.1.tgz", + "integrity": "sha512-KN+mty6C3e9AN8Z5dI1xeN15ExcRNeISoC3g7V0Kax/MMF9MSoYA2G7lkTTcVUFntiEjkpI0HNgqJC1NjdyNUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "meow": "^13.0.0" + }, + "bin": { + "browserslist-to-esbuild": "cli/index.js" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "browserslist": "*" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-equal": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/buffer-equal/-/buffer-equal-0.0.1.tgz", + "integrity": "sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cac": { + "version": "6.7.9", + "resolved": "https://registry.npmmirror.com/cac/-/cac-6.7.9.tgz", + "integrity": "sha512-XN5qEpfNQCJ8jRaZgitSkkukjMRCGio+X3Ks5KUbGGlPbV+pSem1l9VuzooCBXOiMFshUZgyYqg6rgN8rjkb/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001753", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001753.tgz", + "integrity": "sha512-Bj5H35MD/ebaOV4iDLqPEtiliTN29qkGtEHCwawWn4cYm+bPJM2NsaP30vtZcnERClMzp52J4+aw2UNbK4o+zw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/centra": { + "version": "2.7.0", + "resolved": "https://registry.npmmirror.com/centra/-/centra-2.7.0.tgz", + "integrity": "sha512-PbFMgMSrmgx6uxCdm57RUos9Tc3fclMvhLSATYN39XsDV29B89zZ3KA89jmY0vwSGazyU+uerqwa6t+KaodPcg==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6" + } + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmmirror.com/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/cjs-module-lexer/-/cjs-module-lexer-1.3.1.tgz", + "integrity": "sha512-a3KdPAANPbNE4ZUv9h6LckSl9zLsYOP4MBmhIPkRaeyybt+r4UghLvq+xw/YwUcC1gqylCkL4rdVs3Lwupjm4Q==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/clipboard": { + "version": "2.0.11", + "resolved": "https://registry.npmmirror.com/clipboard/-/clipboard-2.0.11.tgz", + "integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==", + "dependencies": { + "good-listener": "^1.2.2", + "select": "^1.1.2", + "tiny-emitter": "^2.0.0" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmmirror.com/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmmirror.com/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/compare-versions": { + "version": "3.6.0", + "resolved": "https://registry.npmmirror.com/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", + "license": "MIT" + }, + "node_modules/computeds": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/computeds/-/computeds-0.0.1.tgz", + "integrity": "sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", + "license": "MIT" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "license": "MIT" + }, + "node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/core-js": { + "version": "3.37.1", + "resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.37.1.tgz", + "integrity": "sha512-Xn6qmxrQZyB0FFY8E3bgRXei3lWDJHhvI+u0q9TKIYM49G8pAr0FgnnrFRAmsbptZL1yxRADVXn+x5AGsbBfyw==", + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.46.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.46.0.tgz", + "integrity": "sha512-p9hObIIEENxSV8xIu+V68JjSeARg6UVMG5mR+JEUguG3sI6MsiS1njz2jHmyJDvA+8jX/sytkBHup6kxhM9law==", + "dev": true, + "license": "MIT", + "dependencies": { + "browserslist": "^4.26.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmmirror.com/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "bin": { + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-font-size-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-font-size-keywords/-/css-font-size-keywords-1.0.0.tgz", + "integrity": "sha512-Q+svMDbMlelgCfH/RVDKtTDaf5021O486ZThQPIpahnIjUkMUslC+WuOQSWTgGSrNCH08Y7tYNEmmy0hkfMI8Q==", + "license": "MIT" + }, + "node_modules/css-font-stretch-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/css-font-stretch-keywords/-/css-font-stretch-keywords-1.0.1.tgz", + "integrity": "sha512-KmugPO2BNqoyp9zmBIUGwt58UQSfyk1X5DbOlkb2pckDXFSAfjsD5wenb88fNrD6fvS+vu90a/tsPpb9vb0SLg==", + "license": "MIT" + }, + "node_modules/css-font-style-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/css-font-style-keywords/-/css-font-style-keywords-1.0.1.tgz", + "integrity": "sha512-0Fn0aTpcDktnR1RzaBYorIxQily85M2KXRpzmxQPgh8pxUN9Fcn00I8u9I3grNr1QXVgCl9T5Imx0ZwKU973Vg==", + "license": "MIT" + }, + "node_modules/css-font-weight-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-font-weight-keywords/-/css-font-weight-keywords-1.0.0.tgz", + "integrity": "sha512-5So8/NH+oDD+EzsnF4iaG4ZFHQ3vaViePkL1ZbZ5iC/KrsCY+WHq/lvOgrtmuOQ9pBBZ1ADGpaf+A4lj1Z9eYA==", + "license": "MIT" + }, + "node_modules/css-list-helpers": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-list-helpers/-/css-list-helpers-2.0.0.tgz", + "integrity": "sha512-9Bj8tZ0jWbAM3u/U6m/boAzAwLPwtjzFvwivr2piSvyVa3K3rChJzQy4RIHkNkKiZCHrEMWDJWtTR8UyVhdDnQ==", + "license": "MIT" + }, + "node_modules/css-system-font-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-system-font-keywords/-/css-system-font-keywords-1.0.0.tgz", + "integrity": "sha512-1umTtVd/fXS25ftfjB71eASCrYhilmEsvDEI6wG/QplnmlfmVM5HkZ/ZX46DT5K3eblFPgLUHt5BRCb0YXkSFA==", + "license": "MIT" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmmirror.com/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmmirror.com/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "license": "MIT" + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==" + }, + "node_modules/de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmmirror.com/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmmirror.com/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmmirror.com/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmmirror.com/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegate": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/delegate/-/delegate-3.2.0.tgz", + "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==" + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/dom-walk": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/dom-walk/-/dom-walk-0.1.2.tgz", + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" + }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "deprecated": "Use your platform's native DOMException instead", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/echarts": { + "version": "5.5.1", + "resolved": "https://registry.npmmirror.com/echarts/-/echarts-5.5.1.tgz", + "integrity": "sha512-Fce8upazaAXUVUVsjgV6mBnGuqgO+JNDlcgF79Dksy4+wgGpQB2lmYoO4TSweFg/mZITdpGHomw/cNBJZj1icA==", + "dependencies": { + "tslib": "2.3.0", + "zrender": "5.6.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true, + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.245", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.245.tgz", + "integrity": "sha512-rdmGfW47ZhL/oWEJAY4qxRtdly2B98ooTJ0pdEI4jhVLZ6tNf8fPtov2wS1IRKwFJT92le3x4Knxiwzl7cPPpQ==", + "license": "ISC" + }, + "node_modules/emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmmirror.com/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.17.1", + "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "dev": true, + "peer": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmmirror.com/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.5.4", + "resolved": "https://registry.npmmirror.com/es-module-lexer/-/es-module-lexer-1.5.4.tgz", + "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "license": "MIT" + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true, + "license": "MIT" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "peer": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "license": "MIT" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exif-parser": { + "version": "0.1.12", + "resolved": "https://registry.npmmirror.com/exif-parser/-/exif-parser-0.1.12.tgz", + "integrity": "sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw==" + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/express": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.20.0.tgz", + "integrity": "sha512-pLdae7I6QqShF5PnNTCVn4hI91Dx0Grkn2+IAsMTgMIKuQVte2dN9PeGSSAME2FR8anOhVA62QDIUaWVfEXVLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.10", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/exsolve": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.7.tgz", + "integrity": "sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==", + "license": "MIT" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmmirror.com/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/file-type": { + "version": "9.0.0", + "resolved": "https://registry.npmmirror.com/file-type/-/file-type-9.0.0.tgz", + "integrity": "sha512-Qe/5NJrgIOlwijpq3B7BEpzPFcgzggOTagZmkXQY4LA6bsXKTUstK7Wp12lEJ/mLKTpvIZxmIuRcLYWT6ov9lw==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmmirror.com/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/generic-names": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/generic-names/-/generic-names-4.0.0.tgz", + "integrity": "sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==", + "license": "MIT", + "dependencies": { + "loader-utils": "^3.2.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmmirror.com/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "peer": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true, + "peer": true + }, + "node_modules/global": { + "version": "4.4.0", + "resolved": "https://registry.npmmirror.com/global/-/global-4.4.0.tgz", + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "license": "MIT", + "dependencies": { + "min-document": "^2.19.0", + "process": "^0.11.10" + } + }, + "node_modules/good-listener": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/good-listener/-/good-listener-1.2.2.tgz", + "integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==", + "dependencies": { + "delegate": "^3.1.2" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", + "license": "MIT" + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/html-tags": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-replace-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", + "integrity": "sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg==", + "license": "ISC" + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmmirror.com/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/invert-kv": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/invert-kv/-/invert-kv-3.0.1.tgz", + "integrity": "sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sindresorhus/invert-kv?sponsor=1" + } + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-function": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/is-function/-/is-function-1.0.2.tgz", + "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==", + "license": "MIT" + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/isbinaryfile": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.2.tgz", + "integrity": "sha512-GvcjojwonMjWbTkfMpnVHVqXW/wKMYDfEpY94/8zy8HFMOqb/VL6oeONq9v87q4ttVlaTLnGXnJD4B5B1OTGIg==", + "license": "MIT", + "engines": { + "node": ">= 18.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmmirror.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmmirror.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "27.0.4", + "resolved": "https://registry.npmmirror.com/jest/-/jest-27.0.4.tgz", + "integrity": "sha512-Px1iKFooXgGSkk1H8dJxxBIrM3tsc5SIuI4kfKYK2J+4rvCvPGr/cXktxh0e9zIPQ5g09kOMNfHQEmusBUf/ZA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/core": "^27.0.4", + "import-local": "^3.0.2", + "jest-cli": "^27.0.4" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-circus/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-cli/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-cli/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-config/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-config/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-diff/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-each/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-jasmine2/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-jasmine2/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-jasmine2/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-matcher-utils/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-message-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-message-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-resolve/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-resolve/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-runner/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runtime/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runtime/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-runtime/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-snapshot/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-validate/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-watcher/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-watcher/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jimp": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/jimp/-/jimp-0.10.3.tgz", + "integrity": "sha512-meVWmDMtyUG5uYjFkmzu0zBgnCvvxwWNi27c4cg55vWNVC9ES4Lcwb+ogx+uBBQE3Q+dLKjXaLl0JVW+nUNwbQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/custom": "^0.10.3", + "@jimp/plugins": "^0.10.3", + "@jimp/types": "^0.10.3", + "core-js": "^3.4.1", + "regenerator-runtime": "^0.13.3" + } + }, + "node_modules/jimp/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "license": "MIT" + }, + "node_modules/jpeg-js": { + "version": "0.3.7", + "resolved": "https://registry.npmmirror.com/jpeg-js/-/jpeg-js-0.3.7.tgz", + "integrity": "sha512-9IXdWudL61npZjvLuVe/ktHiA41iE8qFyLB+4VDTblEsWBzeg8WQTlktdUK4CdncUqtUgUg0bbOmTE2bKBKaBQ==", + "license": "BSD-3-Clause" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmmirror.com/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsdom/node_modules/ws": { + "version": "7.5.10", + "resolved": "https://registry.npmmirror.com/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/jsonc-parser/-/jsonc-parser-3.3.1.tgz", + "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", + "license": "MIT" + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/lcid": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/lcid/-/lcid-3.1.1.tgz", + "integrity": "sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg==", + "license": "MIT", + "dependencies": { + "invert-kv": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/licia": { + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/licia/-/licia-1.41.1.tgz", + "integrity": "sha512-XqObV8u1KEMdYWaNK0leRrTwhzKnLQEkhbnuUu7qGNH3zJoN7l9sfvF6PfHstSCuUOmpEP+0SBjRrk0I9uZs8g==", + "license": "MIT" + }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-2.0.4.tgz", + "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/load-bmfont": { + "version": "1.4.2", + "resolved": "https://registry.npmmirror.com/load-bmfont/-/load-bmfont-1.4.2.tgz", + "integrity": "sha512-qElWkmjW9Oq1F9EI5Gt7aD9zcdHb9spJCW1L/dmPf7KzCCEJxq8nhHz5eCgI9aMf7vrG/wyaCqdsI+Iy9ZTlog==", + "license": "MIT", + "dependencies": { + "buffer-equal": "0.0.1", + "mime": "^1.3.4", + "parse-bmfont-ascii": "^1.0.3", + "parse-bmfont-binary": "^1.0.5", + "parse-bmfont-xml": "^1.1.4", + "phin": "^3.7.1", + "xhr": "^2.0.1", + "xtend": "^4.0.0" + } + }, + "node_modules/load-bmfont/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-bmfont/node_modules/phin": { + "version": "3.7.1", + "resolved": "https://registry.npmmirror.com/phin/-/phin-3.7.1.tgz", + "integrity": "sha512-GEazpTWwTZaEQ9RhL7Nyz0WwqilbqgLahDM3D0hxWwmVDI52nXEybHqiN6/elwpkJBhcuj+WbBu+QfT0uhPGfQ==", + "license": "MIT", + "dependencies": { + "centra": "^2.7.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-3.3.1.tgz", + "integrity": "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==", + "license": "MIT", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/local-pkg": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.1.2.tgz", + "integrity": "sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==", + "license": "MIT", + "dependencies": { + "mlly": "^1.7.4", + "pkg-types": "^2.3.0", + "quansync": "^0.2.11" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/local-pkg/node_modules/confbox": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz", + "integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==", + "license": "MIT" + }, + "node_modules/local-pkg/node_modules/pkg-types": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.3.0.tgz", + "integrity": "sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==", + "license": "MIT", + "dependencies": { + "confbox": "^0.2.2", + "exsolve": "^1.0.7", + "pathe": "^2.0.3" + } + }, + "node_modules/localstorage-polyfill": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/localstorage-polyfill/-/localstorage-polyfill-1.0.1.tgz", + "integrity": "sha512-m4iHVZxFH5734oQcPKU08025gIz2+4bjWR9lulP8ZYxEJR0BpA0w32oJmkzh8y3UI9ci7xCBehQDc3oA1X+VHw==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "license": "MIT" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.11", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", + "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmmirror.com/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/meow": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz", + "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/merge/-/merge-2.1.1.tgz", + "integrity": "sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==", + "license": "MIT" + }, + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/min-document": { + "version": "2.19.0", + "resolved": "https://registry.npmmirror.com/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==", + "dependencies": { + "dom-walk": "^0.1.0" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mlly": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.8.0.tgz", + "integrity": "sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==", + "license": "MIT", + "dependencies": { + "acorn": "^8.15.0", + "pathe": "^2.0.3", + "pkg-types": "^1.3.1", + "ufo": "^1.6.1" + } + }, + "node_modules/module-alias": { + "version": "2.2.3", + "resolved": "https://registry.npmmirror.com/module-alias/-/module-alias-2.2.3.tgz", + "integrity": "sha512-23g5BFj4zdQL/b6tor7Ji+QY4pEfNH784BMslY9Qb0UnJWRAt+lQGLYmRaM0KDBwIG23ffEBELhZDP2rhi9f/Q==", + "license": "MIT" + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/muggle-string": { + "version": "0.3.1", + "resolved": "https://registry.npmmirror.com/muggle-string/-/muggle-string-0.3.1.tgz", + "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/node-releases": { + "version": "2.0.27", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", + "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nwsapi": { + "version": "2.2.12", + "resolved": "https://registry.npmmirror.com/nwsapi/-/nwsapi-2.2.12.tgz", + "integrity": "sha512-qXDmcVlZV4XRtKFzddidpfVP4oMSGhga+xdMc25mv8kaLUHtgzCDhUxkrN8exkGdTlLNaXj7CV3GtON7zuGZ+w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/omggif": { + "version": "1.0.10", + "resolved": "https://registry.npmmirror.com/omggif/-/omggif-1.0.10.tgz", + "integrity": "sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==", + "license": "MIT" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/os-locale-s-fix": { + "version": "1.0.8-fix-1", + "resolved": "https://registry.npmmirror.com/os-locale-s-fix/-/os-locale-s-fix-1.0.8-fix-1.tgz", + "integrity": "sha512-Sv0OvhPiMutICiwORAUefv02DCPb62IelBmo8ZsSrRHyI3FStqIWZvjqDkvtjU+lcujo7UNir+dCwKSqlEQ/5w==", + "license": "MIT", + "dependencies": { + "lcid": "^3.0.0" + }, + "engines": { + "node": ">=10", + "yarn": "^1.22.4" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmmirror.com/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "license": "(MIT AND Zlib)" + }, + "node_modules/parse-bmfont-ascii": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/parse-bmfont-ascii/-/parse-bmfont-ascii-1.0.6.tgz", + "integrity": "sha512-U4RrVsUFCleIOBsIGYOMKjn9PavsGOXxbvYGtMOEfnId0SVNsgehXh1DxUdVPLoxd5mvcEtvmKs2Mmf0Mpa1ZA==", + "license": "MIT" + }, + "node_modules/parse-bmfont-binary": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/parse-bmfont-binary/-/parse-bmfont-binary-1.0.6.tgz", + "integrity": "sha512-GxmsRea0wdGdYthjuUeWTMWPqm2+FAd4GI8vCvhgJsFnoGhTrLhXDDupwTo7rXVAgaLIGoVHDZS9p/5XbSqeWA==", + "license": "MIT" + }, + "node_modules/parse-bmfont-xml": { + "version": "1.1.6", + "resolved": "https://registry.npmmirror.com/parse-bmfont-xml/-/parse-bmfont-xml-1.1.6.tgz", + "integrity": "sha512-0cEliVMZEhrFDwMh4SxIyVJpqYoOWDJ9P895tFuS+XuNzI5UBmBk5U5O4KuJdTnZpSBI4LFA2+ZiJaiwfSwlMA==", + "license": "MIT", + "dependencies": { + "xml-parse-from-string": "^1.0.0", + "xml2js": "^0.5.0" + } + }, + "node_modules/parse-css-font": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-css-font/-/parse-css-font-4.0.0.tgz", + "integrity": "sha512-lnY7dTUfjRXsSo5G5C639L8RaBBaVSgL+5hacIFKsNHzeCJQ5SFSZv1DZmc7+wZv/22PFGOq2YbaEHLdaCS/mQ==", + "license": "MIT", + "dependencies": { + "css-font-size-keywords": "^1.0.0", + "css-font-stretch-keywords": "^1.0.1", + "css-font-style-keywords": "^1.0.1", + "css-font-weight-keywords": "^1.0.0", + "css-list-helpers": "^2.0.0", + "css-system-font-keywords": "^1.0.0", + "unquote": "^1.1.1" + } + }, + "node_modules/parse-headers": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/parse-headers/-/parse-headers-2.0.5.tgz", + "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==", + "license": "MIT" + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmmirror.com/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-json/node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "license": "MIT" + }, + "node_modules/path-to-regexp": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", + "dev": true, + "license": "MIT" + }, + "node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", + "license": "MIT" + }, + "node_modules/phin": { + "version": "2.9.3", + "resolved": "https://registry.npmmirror.com/phin/-/phin-2.9.3.tgz", + "integrity": "sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmmirror.com/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pixelmatch": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/pixelmatch/-/pixelmatch-4.0.2.tgz", + "integrity": "sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==", + "license": "ISC", + "dependencies": { + "pngjs": "^3.0.0" + }, + "bin": { + "pixelmatch": "bin/pixelmatch" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-types": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", + "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", + "license": "MIT", + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + }, + "node_modules/pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmmirror.com/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss": { + "version": "8.4.45", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.45.tgz", + "integrity": "sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.1", + "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmmirror.com/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmmirror.com/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "license": "MIT", + "dependencies": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + }, + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-modules": { + "version": "4.3.1", + "resolved": "https://registry.npmmirror.com/postcss-modules/-/postcss-modules-4.3.1.tgz", + "integrity": "sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q==", + "license": "MIT", + "dependencies": { + "generic-names": "^4.0.0", + "icss-replace-symbols": "^1.1.0", + "lodash.camelcase": "^4.3.0", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "string-hash": "^1.1.1" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.5", + "resolved": "https://registry.npmmirror.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", + "license": "MIT", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", + "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", + "license": "ISC", + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "license": "ISC", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "license": "MIT" + }, + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmmirror.com/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmmirror.com/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/qrcode-reader": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/qrcode-reader/-/qrcode-reader-1.0.4.tgz", + "integrity": "sha512-rRjALGNh9zVqvweg1j5OKIQKNsw3bLC+7qwlnead5K/9cb1cEIAGkwikt/09U0K+2IDWGD9CC6SP7tHAjUeqvQ==", + "license": "Apache-2.0" + }, + "node_modules/qrcode-terminal": { + "version": "0.12.0", + "resolved": "https://registry.npmmirror.com/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz", + "integrity": "sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==", + "bin": { + "qrcode-terminal": "bin/qrcode-terminal.js" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/quansync": { + "version": "0.2.11", + "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.11.tgz", + "integrity": "sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ], + "license": "MIT" + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "peer": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "license": "MIT", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true, + "license": "MIT" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.2.tgz", + "integrity": "sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "license": "MIT" + }, + "node_modules/regexpu-core": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.4.0.tgz", + "integrity": "sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.2.2", + "regjsgen": "^0.8.0", + "regjsparser": "^0.13.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.2.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/regjsparser": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.0.tgz", + "integrity": "sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "jsesc": "~3.1.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.19.0.tgz", + "integrity": "sha512-5r7EYSQIowHsK4eTZ0Y81qpZuJz+MUuYeqmmYmRMl1nwhdmbiYqt5jwzf6u7wyOzJgYqtCRMtVRKOtHANBz7rA==", + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.19.0", + "@rollup/rollup-android-arm64": "4.19.0", + "@rollup/rollup-darwin-arm64": "4.19.0", + "@rollup/rollup-darwin-x64": "4.19.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.19.0", + "@rollup/rollup-linux-arm-musleabihf": "4.19.0", + "@rollup/rollup-linux-arm64-gnu": "4.19.0", + "@rollup/rollup-linux-arm64-musl": "4.19.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.19.0", + "@rollup/rollup-linux-riscv64-gnu": "4.19.0", + "@rollup/rollup-linux-s390x-gnu": "4.19.0", + "@rollup/rollup-linux-x64-gnu": "4.19.0", + "@rollup/rollup-linux-x64-musl": "4.19.0", + "@rollup/rollup-win32-arm64-msvc": "4.19.0", + "@rollup/rollup-win32-ia32-msvc": "4.19.0", + "@rollup/rollup-win32-x64-msvc": "4.19.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-area-insets": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/safe-area-insets/-/safe-area-insets-1.4.1.tgz", + "integrity": "sha512-r/nRWTjFGhhm3w1Z6Kd/jY11srN+lHt2mNl1E/emQGW8ic7n3Avu4noibklfSM+Y34peNphHD/BSZecav0sXYQ==", + "license": "ISC" + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "license": "MIT" + }, + "node_modules/sass": { + "version": "1.63.2", + "resolved": "https://registry.npmmirror.com/sass/-/sass-1.63.2.tgz", + "integrity": "sha512-u56TU0AIFqMtauKl/OJ1AeFsXqRHkgO7nCWmHaDwfxDo9GUMSqBA4NEh6GMuh1CYVM7zuROYtZrHzPc2ixK+ww==", + "devOptional": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sass-loader": { + "version": "10.4.1", + "resolved": "https://registry.npmmirror.com/sass-loader/-/sass-loader-10.4.1.tgz", + "integrity": "sha512-aX/iJZTTpNUNx/OSYzo2KsjIUQHqvWsAhhUijFjAPdZTEhstjZI9zTNvkTTwsx+uNUJqUwOw5gacxQMx4hJxGQ==", + "dev": true, + "dependencies": { + "klona": "^2.0.4", + "loader-utils": "^2.0.0", + "neo-async": "^2.6.2", + "schema-utils": "^3.0.0", + "semver": "^7.3.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "sass": "^1.3.0", + "webpack": "^4.36.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/sass-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/sass-loader/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "license": "ISC" + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/scule": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/scule/-/scule-1.3.0.tgz", + "integrity": "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==", + "license": "MIT" + }, + "node_modules/select": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/select/-/select-1.1.2.tgz", + "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "peer": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-static": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.0.tgz", + "integrity": "sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-static/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-static/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/serve-static/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serve-static/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/serve-static/node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true, + "license": "ISC" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmmirror.com/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/string-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/string-hash/-/string-hash-1.1.3.tgz", + "integrity": "sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==", + "license": "CC0-1.0" + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-literal": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-3.1.0.tgz", + "integrity": "sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==", + "license": "MIT", + "dependencies": { + "js-tokens": "^9.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/strip-literal/node_modules/js-tokens": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", + "license": "MIT" + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", + "dev": true + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmmirror.com/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/systemjs": { + "version": "6.15.1", + "resolved": "https://registry.npmjs.org/systemjs/-/systemjs-6.15.1.tgz", + "integrity": "sha512-Nk8c4lXvMB98MtbmjX7JwJRgJOL8fluecYCfCeYBznwmpOs8Bf15hLM6z4z71EDAhQVrQrI+wt1aLWSXZq+hXA==", + "dev": true, + "license": "MIT" + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terser": { + "version": "5.31.3", + "resolved": "https://registry.npmmirror.com/terser/-/terser-5.31.3.tgz", + "integrity": "sha512-pAfYn3NIZLyZpa83ZKigvj6Rn9c/vd5KfYGX7cN1mnzqgDcxWvrU5ZtAfIKhEXz9nRecw4z3LXkjaq96/qZqAA==", + "devOptional": true, + "license": "BSD-2-Clause", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.10", + "resolved": "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/throat": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/timm": { + "version": "1.7.1", + "resolved": "https://registry.npmmirror.com/timm/-/timm-1.7.1.tgz", + "integrity": "sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw==", + "license": "MIT" + }, + "node_modules/tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz", + "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" + }, + "node_modules/tinycolor2": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/tinycolor2/-/tinycolor2-1.6.0.tgz", + "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==", + "license": "MIT" + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.4", + "resolved": "https://registry.npmmirror.com/tough-cookie/-/tough-cookie-4.1.4.tgz", + "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmmirror.com/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmmirror.com/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/ufo": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz", + "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==", + "license": "MIT" + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmmirror.com/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "devOptional": true, + "license": "MIT", + "peer": true + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.1.tgz", + "integrity": "sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz", + "integrity": "sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unimport": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unimport/-/unimport-4.1.1.tgz", + "integrity": "sha512-j9+fijH6aDd05yv1fXlyt7HSxtOWtGtrZeYTVBsSUg57Iuf+Ps2itIZjeyu7bEQ4k0WOgYhHrdW8m/pJgOpl5g==", + "license": "MIT", + "dependencies": { + "acorn": "^8.14.0", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "fast-glob": "^3.3.3", + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "pathe": "^2.0.2", + "picomatch": "^4.0.2", + "pkg-types": "^1.3.1", + "scule": "^1.3.0", + "strip-literal": "^3.0.0", + "unplugin": "^2.1.2", + "unplugin-utils": "^0.2.3" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/unimport/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unimport/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/unimport/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/unimport/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unplugin": { + "version": "2.3.10", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.3.10.tgz", + "integrity": "sha512-6NCPkv1ClwH+/BGE9QeoTIl09nuiAt0gS28nn1PvYXsGKRwM2TCbFA2QiilmehPDTXIe684k4rZI1yl3A1PCUw==", + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "acorn": "^8.15.0", + "picomatch": "^4.0.3", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/unplugin-utils": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/unplugin-utils/-/unplugin-utils-0.2.5.tgz", + "integrity": "sha512-gwXJnPRewT4rT7sBi/IvxKTjsms7jX7QIDLOClApuZwR49SXbrB1z2NLUZ+vDHyqCj/n58OzRRqaW+B8OZi8vg==", + "license": "MIT", + "dependencies": { + "pathe": "^2.0.3", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=18.12.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/unplugin-utils/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/unplugin/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==", + "license": "MIT" + }, + "node_modules/update-browserslist-db": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.4.tgz", + "integrity": "sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmmirror.com/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/utif": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/utif/-/utif-2.0.1.tgz", + "integrity": "sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg==", + "license": "MIT", + "dependencies": { + "pako": "^1.0.5" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uview-plus": { + "version": "3.3.54", + "resolved": "https://registry.npmmirror.com/uview-plus/-/uview-plus-3.3.54.tgz", + "integrity": "sha512-c/KcwTkbJed6ZZqxh7mreDFjtkq5ebNkMHsvgFn53xKVEbjWuGJ/zz4jOXWoO+n0r5hxH1LzrDXXDDiBDvqORA==", + "dependencies": { + "clipboard": "^2.0.11", + "dayjs": "^1.11.3" + }, + "engines": { + "HBuilderX": "^3.1.0" + } + }, + "node_modules/v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmmirror.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vite": { + "version": "5.2.8", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.8.tgz", + "integrity": "sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==", + "license": "MIT", + "dependencies": { + "esbuild": "^0.20.1", + "postcss": "^8.4.38", + "rollup": "^4.13.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vue": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.21.tgz", + "integrity": "sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/runtime-dom": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-i18n": { + "version": "9.14.5", + "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.14.5.tgz", + "integrity": "sha512-0jQ9Em3ymWngyiIkj0+c/k7WgaPO+TNzjKSNq9BvBQaKJECqn9cd9fL4tkDhB5G1QBskGl9YxxbDAhgbFtpe2g==", + "license": "MIT", + "dependencies": { + "@intlify/core-base": "9.14.5", + "@intlify/shared": "9.14.5", + "@vue/devtools-api": "^6.5.0" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + }, + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/vue-i18n/node_modules/@intlify/core-base": { + "version": "9.14.5", + "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.14.5.tgz", + "integrity": "sha512-5ah5FqZG4pOoHjkvs8mjtv+gPKYU0zCISaYNjBNNqYiaITxW8ZtVih3GS/oTOqN8d9/mDLyrjD46GBApNxmlsA==", + "license": "MIT", + "dependencies": { + "@intlify/message-compiler": "9.14.5", + "@intlify/shared": "9.14.5" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/vue-i18n/node_modules/@intlify/message-compiler": { + "version": "9.14.5", + "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.14.5.tgz", + "integrity": "sha512-IHzgEu61/YIpQV5Pc3aRWScDcnFKWvQA9kigcINcCBXN8mbW+vk9SK+lDxA6STzKQsVJxUPg9ACC52pKKo3SVQ==", + "license": "MIT", + "dependencies": { + "@intlify/shared": "9.14.5", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/vue-i18n/node_modules/@intlify/shared": { + "version": "9.14.5", + "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.14.5.tgz", + "integrity": "sha512-9gB+E53BYuAEMhbCAxVgG38EZrk59sxBtv3jSizNL2hEWlgjBjAw1AwpLHtNaeda12pe6W20OGEa0TwuMSRbyQ==", + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/vue-router": { + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.4.4.tgz", + "integrity": "sha512-3MlnDqwRwZwCQVbtVfpsU+nrNymNjnXSsQtXName5925NVC1+326VVfYH9vSrA0N13teGEo8z5x7gbRnGjCDiQ==", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue-template-compiler": { + "version": "2.7.16", + "resolved": "https://registry.npmmirror.com/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz", + "integrity": "sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "node_modules/vue-tsc": { + "version": "1.8.27", + "resolved": "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-1.8.27.tgz", + "integrity": "sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/typescript": "~1.11.1", + "@vue/language-core": "1.8.27", + "semver": "^7.5.4" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": "*" + } + }, + "node_modules/vue-tsc/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "dev": true, + "peer": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/webpack": { + "version": "5.97.1", + "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.97.1.tgz", + "integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.17.1", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-virtual-modules": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz", + "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==", + "license": "MIT" + }, + "node_modules/webpack/node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, + "peer": true + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmmirror.com/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "8.18.0", + "resolved": "https://registry.npmmirror.com/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xhr": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/xhr/-/xhr-2.6.0.tgz", + "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", + "license": "MIT", + "dependencies": { + "global": "~4.4.0", + "is-function": "^1.0.1", + "parse-headers": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true, + "license": "Apache-2.0", + "peer": true + }, + "node_modules/xml-parse-from-string": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/xml-parse-from-string/-/xml-parse-from-string-1.0.1.tgz", + "integrity": "sha512-ErcKwJTF54uRzzNMXq2X5sMIy88zJvfN2DmdoQvy7PAFJ+tPRU6ydWuOKNMyfmOjdyBQTFREi60s0Y0SyI0G0g==", + "license": "MIT" + }, + "node_modules/xml2js": { + "version": "0.5.0", + "resolved": "https://registry.npmmirror.com/xml2js/-/xml2js-0.5.0.tgz", + "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", + "license": "MIT", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmmirror.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "license": "MIT", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/xmlhttprequest": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", + "integrity": "sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/xregexp": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/xregexp/-/xregexp-3.1.0.tgz", + "integrity": "sha512-4Y1x6DyB8xRoxosooa6PlGWqmmSKatbzhrftZ7Purmm4B8R4qIEJG1A2hZsdz5DhmIqS0msC0I7KEq93GphEVg==", + "license": "MIT" + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "license": "MIT", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "license": "ISC" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmmirror.com/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmmirror.com/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "license": "ISC", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/zrender": { + "version": "5.6.0", + "resolved": "https://registry.npmmirror.com/zrender/-/zrender-5.6.0.tgz", + "integrity": "sha512-uzgraf4njmmHAbEUxMJ8Oxg+P3fT04O+9p7gY+wJRVxo8Ge+KmYv0WJev945EH4wFuc4OY2NLXz46FZrWS9xJg==", + "dependencies": { + "tslib": "2.3.0" + } + } + } +} diff --git a/.svn/pristine/21/21484cfa648487333bc78b4c538dab35560a599e.svn-base b/.svn/pristine/21/21484cfa648487333bc78b4c538dab35560a599e.svn-base new file mode 100644 index 0000000..7215030 --- /dev/null +++ b/.svn/pristine/21/21484cfa648487333bc78b4c538dab35560a599e.svn-base @@ -0,0 +1,808 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/21/21606d92814fec1e6efe8d3dd50d254be6c2d2cf.svn-base b/.svn/pristine/21/21606d92814fec1e6efe8d3dd50d254be6c2d2cf.svn-base new file mode 100644 index 0000000..627c92f --- /dev/null +++ b/.svn/pristine/21/21606d92814fec1e6efe8d3dd50d254be6c2d2cf.svn-base @@ -0,0 +1,799 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/23/237368bab3fb03c49fb89ace99c827577ac1b51e.svn-base b/.svn/pristine/23/237368bab3fb03c49fb89ace99c827577ac1b51e.svn-base new file mode 100644 index 0000000..048d96f --- /dev/null +++ b/.svn/pristine/23/237368bab3fb03c49fb89ace99c827577ac1b51e.svn-base @@ -0,0 +1,78 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ + +@import 'uview-plus/theme.scss'; + +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ + +/* 颜色变量 */ + +/* 行为相关颜色 */ +$uni-color-primary: #007aff; +$uni-color-success: #4cd964; +$uni-color-warning: #f0ad4e; +$uni-color-error: #dd524d; + +/* 文字基本颜色 */ +$uni-text-color: #333; // 基本色 +$uni-text-color-inverse: #fff; // 反色 +$uni-text-color-grey: #999; // 辅助灰色,如加载更多的提示信息 +$uni-text-color-placeholder: #808080; +$uni-text-color-disable: #c0c0c0; + +/* 背景颜色 */ +$uni-bg-color: #fff; +$uni-bg-color-grey: #f8f8f8; +$uni-bg-color-hover: #f1f1f1; // 点击状态颜色 +$uni-bg-color-mask: rgba(0, 0, 0, 0.4); // 遮罩颜色 + +/* 边框颜色 */ +$uni-border-color: #c8c7cc; + +/* 尺寸变量 */ + +/* 文字尺寸 */ +$uni-font-size-sm: 12px; +$uni-font-size-base: 14px; +$uni-font-size-lg: 16; + +/* 图片尺寸 */ +$uni-img-size-sm: 20px; +$uni-img-size-base: 26px; +$uni-img-size-lg: 40px; + +/* Border Radius */ +$uni-border-radius-sm: 2px; +$uni-border-radius-base: 3px; +$uni-border-radius-lg: 6px; +$uni-border-radius-circle: 50%; + +/* 水平间距 */ +$uni-spacing-row-sm: 5px; +$uni-spacing-row-base: 10px; +$uni-spacing-row-lg: 15px; + +/* 垂直间距 */ +$uni-spacing-col-sm: 4px; +$uni-spacing-col-base: 8px; +$uni-spacing-col-lg: 12px; + +/* 透明度 */ +$uni-opacity-disabled: 0.3; // 组件禁用态的透明度 + +/* 文章场景相关 */ +$uni-color-title: #2c405a; // 文章标题颜色 +$uni-font-size-title: 20px; +$uni-color-subtitle: #555; // 二级标题颜色 +$uni-font-size-subtitle: 18px; +$uni-color-paragraph: #3f536e; // 文章段落颜色 +$uni-font-size-paragraph: 15px; \ No newline at end of file diff --git a/.svn/pristine/23/23bbf81139e2f124eecaa0c0ed989eb491d47103.svn-base b/.svn/pristine/23/23bbf81139e2f124eecaa0c0ed989eb491d47103.svn-base new file mode 100644 index 0000000..813a191 --- /dev/null +++ b/.svn/pristine/23/23bbf81139e2f124eecaa0c0ed989eb491d47103.svn-base @@ -0,0 +1,119 @@ + + \ No newline at end of file diff --git a/.svn/pristine/24/24364fa18b6afa6132691fa024942e9ba90a47ea.svn-base b/.svn/pristine/24/24364fa18b6afa6132691fa024942e9ba90a47ea.svn-base new file mode 100644 index 0000000..1531af3 --- /dev/null +++ b/.svn/pristine/24/24364fa18b6afa6132691fa024942e9ba90a47ea.svn-base @@ -0,0 +1,22 @@ +import { Service } from '@/Service/Service'; +/*****登录接口*****/ +class CNRiderLoginService { + private static RiderLoginPath : string = '/Login/RiderLogin'; + /*****登录注册*****/ + static RiderLogin(login : any) { + var result = Service.Request(this.RiderLoginPath, "POST", login); + return result; + } + + private static GetKefuInfoPath: string = '/Home/GetKefuInfo'; + /*****获取客服电话*****/ + static GetKefuInfo() { + var result = Service.Request(this.GetKefuInfoPath, "GET", {}); + return result; + } + +} +export { + Service, + CNRiderLoginService +} \ No newline at end of file diff --git a/.svn/pristine/24/24f12ce214a578a0166bb3fb818c40bcb9b64551.svn-base b/.svn/pristine/24/24f12ce214a578a0166bb3fb818c40bcb9b64551.svn-base new file mode 100644 index 0000000..fded171 --- /dev/null +++ b/.svn/pristine/24/24f12ce214a578a0166bb3fb818c40bcb9b64551.svn-base @@ -0,0 +1,36 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/25/25ecf98404bbc6d31345b21e5f9f925cfbc89bfd.svn-base b/.svn/pristine/25/25ecf98404bbc6d31345b21e5f9f925cfbc89bfd.svn-base new file mode 100644 index 0000000..d5d51e4 --- /dev/null +++ b/.svn/pristine/25/25ecf98404bbc6d31345b21e5f9f925cfbc89bfd.svn-base @@ -0,0 +1,494 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/26/26636bbe8b43209b06066f2ecaf3f998b7df8873.svn-base b/.svn/pristine/26/26636bbe8b43209b06066f2ecaf3f998b7df8873.svn-base new file mode 100644 index 0000000..fba64ad --- /dev/null +++ b/.svn/pristine/26/26636bbe8b43209b06066f2ecaf3f998b7df8873.svn-base @@ -0,0 +1,443 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/27/274b17a23cab0e900000339a9533c3432fefb453.svn-base b/.svn/pristine/27/274b17a23cab0e900000339a9533c3432fefb453.svn-base new file mode 100644 index 0000000..38c30e0 --- /dev/null +++ b/.svn/pristine/27/274b17a23cab0e900000339a9533c3432fefb453.svn-base @@ -0,0 +1,146 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__06C2D6A", + "description" : "", + "versionName" : "1.0.2", + "versionCode" : 102, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 25, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/2c/2c5ebc61ca0cdc5df30fb3078709f101aae52814.svn-base b/.svn/pristine/2c/2c5ebc61ca0cdc5df30fb3078709f101aae52814.svn-base new file mode 100644 index 0000000..ba1fa5c --- /dev/null +++ b/.svn/pristine/2c/2c5ebc61ca0cdc5df30fb3078709f101aae52814.svn-base @@ -0,0 +1,146 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__06C2D6A", + "description" : "", + "versionName" : "1.0.6", + "versionCode" : 106, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 25, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/2d/2dc87d14d0f5cec97678e6318cfd58a52dd91ac5.svn-base b/.svn/pristine/2d/2dc87d14d0f5cec97678e6318cfd58a52dd91ac5.svn-base new file mode 100644 index 0000000..3e58196 --- /dev/null +++ b/.svn/pristine/2d/2dc87d14d0f5cec97678e6318cfd58a52dd91ac5.svn-base @@ -0,0 +1,196 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/2e/2ecb431fa8b2f935befbab2f140f7811c2f328f3.svn-base b/.svn/pristine/2e/2ecb431fa8b2f935befbab2f140f7811c2f328f3.svn-base new file mode 100644 index 0000000..bfb34fb --- /dev/null +++ b/.svn/pristine/2e/2ecb431fa8b2f935befbab2f140f7811c2f328f3.svn-base @@ -0,0 +1,743 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/2e/2ed776efc19f1229a7adb125494f762b3af3c433.svn-base b/.svn/pristine/2e/2ed776efc19f1229a7adb125494f762b3af3c433.svn-base new file mode 100644 index 0000000..631cba3 --- /dev/null +++ b/.svn/pristine/2e/2ed776efc19f1229a7adb125494f762b3af3c433.svn-base @@ -0,0 +1,180 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/31/316095a24dad3494ea7dda51fa45861ce620fbfe.svn-base b/.svn/pristine/31/316095a24dad3494ea7dda51fa45861ce620fbfe.svn-base new file mode 100644 index 0000000..4e1748c --- /dev/null +++ b/.svn/pristine/31/316095a24dad3494ea7dda51fa45861ce620fbfe.svn-base @@ -0,0 +1,103 @@ + + +## Calendar 日历 +> **组件名:uni-calendar** +> 代码块: `uCalendar` + + +日历组件 + +> **注意事项** +> 为了避免错误使用,给大家带来不好的开发体验,请在使用组件前仔细阅读下面的注意事项,可以帮你避免一些错误。 +> - 本组件农历转换使用的js是 [@1900-2100区间内的公历、农历互转](https://github.com/jjonline/calendar.js) +> - 仅支持自定义组件模式 +> - `date`属性传入的应该是一个 String ,如: 2019-06-27 ,而不是 new Date() +> - 通过 `insert` 属性来确定当前的事件是 @change 还是 @confirm 。理应合并为一个事件,但是为了区分模式,现使用两个事件,这里需要注意 +> - 弹窗模式下无法阻止后面的元素滚动,如有需要阻止,请在弹窗弹出后,手动设置滚动元素为不可滚动 + + +### 安装方式 + +本组件符合[easycom](https://uniapp.dcloud.io/collocation/pages?id=easycom)规范,`HBuilderX 2.5.5`起,只需将本组件导入项目,在页面`template`中即可直接使用,无需在页面中`import`和注册`components`。 + +如需通过`npm`方式使用`uni-ui`组件,另见文档:[https://ext.dcloud.net.cn/plugin?id=55](https://ext.dcloud.net.cn/plugin?id=55) + +### 基本用法 + +在 ``template`` 中使用组件 + +```html + + + +``` + +### 通过方法打开日历 + +需要设置 `insert` 为 `false` + +```html + + + + +``` + +```javascript + +export default { + data() { + return {}; + }, + methods: { + open(){ + this.$refs.calendar.open(); + }, + confirm(e) { + console.log(e); + } + } +}; + +``` + + +## API + +### Calendar Props + +| 属性名 | 类型 | 默认值| 说明 | +| - | - | - | - | +| date | String |- | 自定义当前时间,默认为今天 | +| lunar | Boolean | false | 显示农历 | +| startDate | String |- | 日期选择范围-开始日期 | +| endDate | String |- | 日期选择范围-结束日期 | +| range | Boolean | false | 范围选择 | +| insert | Boolean | false | 插入模式,可选值,ture:插入模式;false:弹窗模式;默认为插入模式 | +|clearDate |Boolean |true |弹窗模式是否清空上次选择内容 | +| selected | Array |- | 打点,期待格式[{date: '2019-06-27', info: '签到', data: { custom: '自定义信息', name: '自定义消息头',xxx:xxx... }}] | +|showMonth | Boolean | true | 是否显示月份为背景 | + +### Calendar Events + +| 事件名 | 说明 |返回值| +| - | - | - | +| open | 弹出日历组件,`insert :false` 时生效|- | + + + + + +## 组件示例 + +点击查看:[https://hellouniapp.dcloud.net.cn/pages/extUI/calendar/calendar](https://hellouniapp.dcloud.net.cn/pages/extUI/calendar/calendar) diff --git a/.svn/pristine/31/319c5340770cb6b47ec46c007fe2f801e6bea20a.svn-base b/.svn/pristine/31/319c5340770cb6b47ec46c007fe2f801e6bea20a.svn-base new file mode 100644 index 0000000..c1b6152 --- /dev/null +++ b/.svn/pristine/31/319c5340770cb6b47ec46c007fe2f801e6bea20a.svn-base @@ -0,0 +1,588 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/32/32212e03ef92b403036152dbf0630993b60b935a.svn-base b/.svn/pristine/32/32212e03ef92b403036152dbf0630993b60b935a.svn-base new file mode 100644 index 0000000..4312e52 --- /dev/null +++ b/.svn/pristine/32/32212e03ef92b403036152dbf0630993b60b935a.svn-base @@ -0,0 +1,112 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/32/32316c6d60f4de756c31308bcb3bfd73bc326343.svn-base b/.svn/pristine/32/32316c6d60f4de756c31308bcb3bfd73bc326343.svn-base new file mode 100644 index 0000000..c1ef9bf --- /dev/null +++ b/.svn/pristine/32/32316c6d60f4de756c31308bcb3bfd73bc326343.svn-base @@ -0,0 +1,807 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/32/324fe6f94782b2632e1b467b7d0bab246120d6a6.svn-base b/.svn/pristine/32/324fe6f94782b2632e1b467b7d0bab246120d6a6.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..ff2e0f876e25f8b9c8b040151fd53ed9702ec1cf GIT binary patch literal 566 zcmV-60?GY}P)N}vR8f?jg;psepLn|w*g2Jpk1 z`S!6tGxOeLcC$3(kDs#y?qV}&#-?{pPA3b1c&;k3sLVK~2>S4TVqTgPvmkC`)8cv_ zCkcRP4&p8_a_HJMk0v5$KGO2wi3K z3XuFpWx))M%D@sk3XT<|upN}dxny0XK#sg6D!pxAr&)v>yhS>pjZ-8Lv#-K|0BRe$ z%q=;xeXa`RnzbPT6={j*DF~1pSuJ)Vp&02{0;zwj4}2k#AeNgS<|8tJlpJ*pb_m!+ zy39M)jp_S^80BfgzF968U~3|I@XdDD+bR~Vnw7=zQqy$bOr3(EGQzSuIR;>BO=us|mUW){cB+_I%&?nS!?GwOT_JC0d-aCn0DW}~7A2HWSiki-V zVF|pGM)aw}Q2~%XfMB^9sOG^EI2+9Vc3i*{tJph_sj&QOfdWg-=_HkHITKU0KPzc(c?0{@#m67xB)K2Y1z-sJI=*+1p$76z^Dvf zWY# + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 可提现金额 + ¥{{ riderAcc.account }} + 当前钱包余额 + + + + + + + + + 支付宝账号信息 + + + + + + + + + + + + + + + + + + + + + 预计 T+1 工作日到账 + 无手续费 + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/35/356e12f79dd330c2701b8530cc7b83de4cc6e436.svn-base b/.svn/pristine/35/356e12f79dd330c2701b8530cc7b83de4cc6e436.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..2f3286c244100f1bdc2bc7b18adc854dba53d0b0 GIT binary patch literal 6941 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 请完成实名认证,保障您的接单权益 + + + + + + + + 点击更换头像 + + + + + + + + 身份信息 + + + + 姓名 + + + + + 身份证号 + + + + + 年龄 + + + + 性别 + + + + + + + + + + + + + + 身份证照片 + + + + + + + + 上传身份证正面 + + + + + + + + + + + + + + + 上传身份证反面 + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/37/376c5da6ac0f7de4a04810fdd21dc58507e75b7a.svn-base b/.svn/pristine/37/376c5da6ac0f7de4a04810fdd21dc58507e75b7a.svn-base new file mode 100644 index 0000000..98e334e --- /dev/null +++ b/.svn/pristine/37/376c5da6ac0f7de4a04810fdd21dc58507e75b7a.svn-base @@ -0,0 +1,770 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/38/38be20acd5e15994d16ad1953379ae83b5586f4d.svn-base b/.svn/pristine/38/38be20acd5e15994d16ad1953379ae83b5586f4d.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..5ee2003a9cf51be99eb003786ba4a99e2c2f166b GIT binary patch literal 690 zcmV;j0!{siP)Px%Y)M2xR7gv;R>5)GFc92R9?4UFB;qf02TBJ~1$HV(T!G07WLE&P0x1<(sX$5v zP6t+gR6gd@`FO*F01Zfi8tM_wa7KcF-NW79o&^8-k#q19!*2l6=3Q2~Y=@jZNst(R z2B7bT0^`6HI3;l-BYad6dBu-D!d`+&!AB1$z!bn1#7u#bl5-Gu1Zn|lyKn#7rhBU> z!KCCBh@}vp6mV=f)`N8}3T7W&^WT$#3j*U^CSL{-Xlf{U@C2uFtwe7H3jxMeCbK~V zx@l6-G}q5aK7E4-d{kOsE#{wGRxyH!VI~4YqTJ<@#r7Q4z=5yz z%6(CVKuO83BnlAUV(jb{5UUsBBD4er z)`lAGbFU)!t>za?kxgeohJ`*5xKup%nU*`eXny}0s;6^XtE4c2Z|dq+EAPB#Bz3VZ40laD9CoV zQVw!cpKq0|8<}Y^y;QDa?Py(7lWRT~XOGM<63wpwsg)`KmFNigHDvIg^{=9@z^B&# Y0Ve2IDD({eAOHXW07*qoM6N<$f*!ClKmY&$ literal 0 HcmV?d00001 diff --git a/.svn/pristine/38/38c74715a02b05827170f777199e487814832d0b.svn-base b/.svn/pristine/38/38c74715a02b05827170f777199e487814832d0b.svn-base new file mode 100644 index 0000000..5b5070c --- /dev/null +++ b/.svn/pristine/38/38c74715a02b05827170f777199e487814832d0b.svn-base @@ -0,0 +1,46 @@ +import { Service } from '@/Service/Service'; +/*****连接*****/ +class ImConnectService { + private static GetConnectPath: string = '/Im/GetConnect'; + /*****获取连接*****/ + static GetConnect() { + var result = Service.Request(this.GetConnectPath, 'POST', {type:3}); + return result; + } + + private static IsOnlinePath: string = '/Im/IsOnline'; + /*****判断是否在线*****/ + static IsOnline(id:number) { + var result = Service.Request(this.IsOnlinePath, 'POST', id); + return result; + } + + private static JoinChatPath: string = '/Im/JoinChat'; + /*****加入聊天室*****/ + static JoinChat(id: number,chan:number) { + var result = Service.Request(this.JoinChatPath, 'POST', { id,chan }); + return result; + } + + private static SendChanMsgPath: string = '/Im/SendChanMsg'; + /*****发送聊天室消息*****/ + static SendChanMsg(id: number, user: string, chan: string, type: string,msg:string,media:string) { + var result = Service.Request(this.SendChanMsgPath, 'POST', { id, user, chan, type , msg , media }); + return result; + } + + private static ExitChatPath: string = '/Im/ExitChat'; + /*****离开聊天室*****/ + static ExitChat(id:number, chan: string) { + var result = Service.Request(this.ExitChatPath, 'POST', {id, chan }); + return result; + } + + private static GetOrderMessagePath: string = '/Order/GetOrderMessage'; + /*****聊天记录*****/ + static GetOrderMessage(orderId:string) { + var result = Service.Request(this.GetOrderMessagePath, 'GET', {orderId }); + return result; + } +} +export { Service, ImConnectService }; diff --git a/.svn/pristine/39/3954ce2088e227c12dc7c6f5e769b8dab293e443.svn-base b/.svn/pristine/39/3954ce2088e227c12dc7c6f5e769b8dab293e443.svn-base new file mode 100644 index 0000000..c4e856e --- /dev/null +++ b/.svn/pristine/39/3954ce2088e227c12dc7c6f5e769b8dab293e443.svn-base @@ -0,0 +1,186 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/39/39a85dd4529c94983f8c09df2d7008599211a197.svn-base b/.svn/pristine/39/39a85dd4529c94983f8c09df2d7008599211a197.svn-base new file mode 100644 index 0000000..57271c4 --- /dev/null +++ b/.svn/pristine/39/39a85dd4529c94983f8c09df2d7008599211a197.svn-base @@ -0,0 +1,123 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/39/39b8e7d2b5fa559692b43fcaf6bcae3ac88317ea.svn-base b/.svn/pristine/39/39b8e7d2b5fa559692b43fcaf6bcae3ac88317ea.svn-base new file mode 100644 index 0000000..cc05c11 --- /dev/null +++ b/.svn/pristine/39/39b8e7d2b5fa559692b43fcaf6bcae3ac88317ea.svn-base @@ -0,0 +1,10661 @@ +export const addressList = [{ + "code": "11", + "name": "北京市", + "children": [{ + "code": "1101", + "name": "市辖区", + "children": [{ + "code": "110101", + "name": "东城区" + }, { + "code": "110102", + "name": "西城区" + }, { + "code": "110105", + "name": "朝阳区" + }, { + "code": "110106", + "name": "丰台区" + }, { + "code": "110107", + "name": "石景山区" + }, { + "code": "110108", + "name": "海淀区" + }, { + "code": "110109", + "name": "门头沟区" + }, { + "code": "110111", + "name": "房山区" + }, { + "code": "110112", + "name": "通州区" + }, { + "code": "110113", + "name": "顺义区" + }, { + "code": "110114", + "name": "昌平区" + }, { + "code": "110115", + "name": "大兴区" + }, { + "code": "110116", + "name": "怀柔区" + }, { + "code": "110117", + "name": "平谷区" + }, { + "code": "110118", + "name": "密云区" + }, { + "code": "110119", + "name": "延庆区" + }] + }] +}, { + "code": "12", + "name": "天津市", + "children": [{ + "code": "1201", + "name": "市辖区", + "children": [{ + "code": "120101", + "name": "和平区" + }, { + "code": "120102", + "name": "河东区" + }, { + "code": "120103", + "name": "河西区" + }, { + "code": "120104", + "name": "南开区" + }, { + "code": "120105", + "name": "河北区" + }, { + "code": "120106", + "name": "红桥区" + }, { + "code": "120110", + "name": "东丽区" + }, { + "code": "120111", + "name": "西青区" + }, { + "code": "120112", + "name": "津南区" + }, { + "code": "120113", + "name": "北辰区" + }, { + "code": "120114", + "name": "武清区" + }, { + "code": "120115", + "name": "宝坻区" + }, { + "code": "120116", + "name": "滨海新区" + }, { + "code": "120117", + "name": "宁河区" + }, { + "code": "120118", + "name": "静海区" + }, { + "code": "120119", + "name": "蓟州区" + }] + }] +}, { + "code": "13", + "name": "河北省", + "children": [{ + "code": "1301", + "name": "石家庄市", + "children": [{ + "code": "130102", + "name": "长安区" + }, { + "code": "130104", + "name": "桥西区" + }, { + "code": "130105", + "name": "新华区" + }, { + "code": "130107", + "name": "井陉矿区" + }, { + "code": "130108", + "name": "裕华区" + }, { + "code": "130109", + "name": "藁城区" + }, { + "code": "130110", + "name": "鹿泉区" + }, { + "code": "130111", + "name": "栾城区" + }, { + "code": "130121", + "name": "井陉县" + }, { + "code": "130123", + "name": "正定县" + }, { + "code": "130125", + "name": "行唐县" + }, { + "code": "130126", + "name": "灵寿县" + }, { + "code": "130127", + "name": "高邑县" + }, { + "code": "130128", + "name": "深泽县" + }, { + "code": "130129", + "name": "赞皇县" + }, { + "code": "130130", + "name": "无极县" + }, { + "code": "130131", + "name": "平山县" + }, { + "code": "130132", + "name": "元氏县" + }, { + "code": "130133", + "name": "赵县" + }, { + "code": "130171", + "name": "石家庄高新技术产业开发区" + }, { + "code": "130172", + "name": "石家庄循环化工园区" + }, { + "code": "130181", + "name": "辛集市" + }, { + "code": "130183", + "name": "晋州市" + }, { + "code": "130184", + "name": "新乐市" + }] + }, { + "code": "1302", + "name": "唐山市", + "children": [{ + "code": "130202", + "name": "路南区" + }, { + "code": "130203", + "name": "路北区" + }, { + "code": "130204", + "name": "古冶区" + }, { + "code": "130205", + "name": "开平区" + }, { + "code": "130207", + "name": "丰南区" + }, { + "code": "130208", + "name": "丰润区" + }, { + "code": "130209", + "name": "曹妃甸区" + }, { + "code": "130224", + "name": "滦南县" + }, { + "code": "130225", + "name": "乐亭县" + }, { + "code": "130227", + "name": "迁西县" + }, { + "code": "130229", + "name": "玉田县" + }, { + "code": "130271", + "name": "河北唐山芦台经济开发区" + }, { + "code": "130272", + "name": "唐山市汉沽管理区" + }, { + "code": "130273", + "name": "唐山高新技术产业开发区" + }, { + "code": "130274", + "name": "河北唐山海港经济开发区" + }, { + "code": "130281", + "name": "遵化市" + }, { + "code": "130283", + "name": "迁安市" + }, { + "code": "130284", + "name": "滦州市" + }] + }, { + "code": "1303", + "name": "秦皇岛市", + "children": [{ + "code": "130302", + "name": "海港区" + }, { + "code": "130303", + "name": "山海关区" + }, { + "code": "130304", + "name": "北戴河区" + }, { + "code": "130306", + "name": "抚宁区" + }, { + "code": "130321", + "name": "青龙满族自治县" + }, { + "code": "130322", + "name": "昌黎县" + }, { + "code": "130324", + "name": "卢龙县" + }, { + "code": "130371", + "name": "秦皇岛市经济技术开发区" + }, { + "code": "130372", + "name": "北戴河新区" + }] + }, { + "code": "1304", + "name": "邯郸市", + "children": [{ + "code": "130402", + "name": "邯山区" + }, { + "code": "130403", + "name": "丛台区" + }, { + "code": "130404", + "name": "复兴区" + }, { + "code": "130406", + "name": "峰峰矿区" + }, { + "code": "130407", + "name": "肥乡区" + }, { + "code": "130408", + "name": "永年区" + }, { + "code": "130423", + "name": "临漳县" + }, { + "code": "130424", + "name": "成安县" + }, { + "code": "130425", + "name": "大名县" + }, { + "code": "130426", + "name": "涉县" + }, { + "code": "130427", + "name": "磁县" + }, { + "code": "130430", + "name": "邱县" + }, { + "code": "130431", + "name": "鸡泽县" + }, { + "code": "130432", + "name": "广平县" + }, { + "code": "130433", + "name": "馆陶县" + }, { + "code": "130434", + "name": "魏县" + }, { + "code": "130435", + "name": "曲周县" + }, { + "code": "130471", + "name": "邯郸经济技术开发区" + }, { + "code": "130473", + "name": "邯郸冀南新区" + }, { + "code": "130481", + "name": "武安市" + }] + }, { + "code": "1305", + "name": "邢台市", + "children": [{ + "code": "130502", + "name": "襄都区" + }, { + "code": "130503", + "name": "信都区" + }, { + "code": "130505", + "name": "任泽区" + }, { + "code": "130506", + "name": "南和区" + }, { + "code": "130522", + "name": "临城县" + }, { + "code": "130523", + "name": "内丘县" + }, { + "code": "130524", + "name": "柏乡县" + }, { + "code": "130525", + "name": "隆尧县" + }, { + "code": "130528", + "name": "宁晋县" + }, { + "code": "130529", + "name": "巨鹿县" + }, { + "code": "130530", + "name": "新河县" + }, { + "code": "130531", + "name": "广宗县" + }, { + "code": "130532", + "name": "平乡县" + }, { + "code": "130533", + "name": "威县" + }, { + "code": "130534", + "name": "清河县" + }, { + "code": "130535", + "name": "临西县" + }, { + "code": "130571", + "name": "河北邢台经济开发区" + }, { + "code": "130581", + "name": "南宫市" + }, { + "code": "130582", + "name": "沙河市" + }] + }, { + "code": "1306", + "name": "保定市", + "children": [{ + "code": "130602", + "name": "竞秀区" + }, { + "code": "130606", + "name": "莲池区" + }, { + "code": "130607", + "name": "满城区" + }, { + "code": "130608", + "name": "清苑区" + }, { + "code": "130609", + "name": "徐水区" + }, { + "code": "130623", + "name": "涞水县" + }, { + "code": "130624", + "name": "阜平县" + }, { + "code": "130626", + "name": "定兴县" + }, { + "code": "130627", + "name": "唐县" + }, { + "code": "130628", + "name": "高阳县" + }, { + "code": "130629", + "name": "容城县" + }, { + "code": "130630", + "name": "涞源县" + }, { + "code": "130631", + "name": "望都县" + }, { + "code": "130632", + "name": "安新县" + }, { + "code": "130633", + "name": "易县" + }, { + "code": "130634", + "name": "曲阳县" + }, { + "code": "130635", + "name": "蠡县" + }, { + "code": "130636", + "name": "顺平县" + }, { + "code": "130637", + "name": "博野县" + }, { + "code": "130638", + "name": "雄县" + }, { + "code": "130671", + "name": "保定高新技术产业开发区" + }, { + "code": "130672", + "name": "保定白沟新城" + }, { + "code": "130681", + "name": "涿州市" + }, { + "code": "130682", + "name": "定州市" + }, { + "code": "130683", + "name": "安国市" + }, { + "code": "130684", + "name": "高碑店市" + }] + }, { + "code": "1307", + "name": "张家口市", + "children": [{ + "code": "130702", + "name": "桥东区" + }, { + "code": "130703", + "name": "桥西区" + }, { + "code": "130705", + "name": "宣化区" + }, { + "code": "130706", + "name": "下花园区" + }, { + "code": "130708", + "name": "万全区" + }, { + "code": "130709", + "name": "崇礼区" + }, { + "code": "130722", + "name": "张北县" + }, { + "code": "130723", + "name": "康保县" + }, { + "code": "130724", + "name": "沽源县" + }, { + "code": "130725", + "name": "尚义县" + }, { + "code": "130726", + "name": "蔚县" + }, { + "code": "130727", + "name": "阳原县" + }, { + "code": "130728", + "name": "怀安县" + }, { + "code": "130730", + "name": "怀来县" + }, { + "code": "130731", + "name": "涿鹿县" + }, { + "code": "130732", + "name": "赤城县" + }, { + "code": "130771", + "name": "张家口经济开发区" + }, { + "code": "130772", + "name": "张家口市察北管理区" + }, { + "code": "130773", + "name": "张家口市塞北管理区" + }] + }, { + "code": "1308", + "name": "承德市", + "children": [{ + "code": "130802", + "name": "双桥区" + }, { + "code": "130803", + "name": "双滦区" + }, { + "code": "130804", + "name": "鹰手营子矿区" + }, { + "code": "130821", + "name": "承德县" + }, { + "code": "130822", + "name": "兴隆县" + }, { + "code": "130824", + "name": "滦平县" + }, { + "code": "130825", + "name": "隆化县" + }, { + "code": "130826", + "name": "丰宁满族自治县" + }, { + "code": "130827", + "name": "宽城满族自治县" + }, { + "code": "130828", + "name": "围场满族蒙古族自治县" + }, { + "code": "130871", + "name": "承德高新技术产业开发区" + }, { + "code": "130881", + "name": "平泉市" + }] + }, { + "code": "1309", + "name": "沧州市", + "children": [{ + "code": "130902", + "name": "新华区" + }, { + "code": "130903", + "name": "运河区" + }, { + "code": "130921", + "name": "沧县" + }, { + "code": "130922", + "name": "青县" + }, { + "code": "130923", + "name": "东光县" + }, { + "code": "130924", + "name": "海兴县" + }, { + "code": "130925", + "name": "盐山县" + }, { + "code": "130926", + "name": "肃宁县" + }, { + "code": "130927", + "name": "南皮县" + }, { + "code": "130928", + "name": "吴桥县" + }, { + "code": "130929", + "name": "献县" + }, { + "code": "130930", + "name": "孟村回族自治县" + }, { + "code": "130971", + "name": "河北沧州经济开发区" + }, { + "code": "130972", + "name": "沧州高新技术产业开发区" + }, { + "code": "130973", + "name": "沧州渤海新区" + }, { + "code": "130981", + "name": "泊头市" + }, { + "code": "130982", + "name": "任丘市" + }, { + "code": "130983", + "name": "黄骅市" + }, { + "code": "130984", + "name": "河间市" + }] + }, { + "code": "1310", + "name": "廊坊市", + "children": [{ + "code": "131002", + "name": "安次区" + }, { + "code": "131003", + "name": "广阳区" + }, { + "code": "131022", + "name": "固安县" + }, { + "code": "131023", + "name": "永清县" + }, { + "code": "131024", + "name": "香河县" + }, { + "code": "131025", + "name": "大城县" + }, { + "code": "131026", + "name": "文安县" + }, { + "code": "131028", + "name": "大厂回族自治县" + }, { + "code": "131071", + "name": "廊坊经济技术开发区" + }, { + "code": "131081", + "name": "霸州市" + }, { + "code": "131082", + "name": "三河市" + }] + }, { + "code": "1311", + "name": "衡水市", + "children": [{ + "code": "131102", + "name": "桃城区" + }, { + "code": "131103", + "name": "冀州区" + }, { + "code": "131121", + "name": "枣强县" + }, { + "code": "131122", + "name": "武邑县" + }, { + "code": "131123", + "name": "武强县" + }, { + "code": "131124", + "name": "饶阳县" + }, { + "code": "131125", + "name": "安平县" + }, { + "code": "131126", + "name": "故城县" + }, { + "code": "131127", + "name": "景县" + }, { + "code": "131128", + "name": "阜城县" + }, { + "code": "131171", + "name": "河北衡水高新技术产业开发区" + }, { + "code": "131172", + "name": "衡水滨湖新区" + }, { + "code": "131182", + "name": "深州市" + }] + }] +}, { + "code": "14", + "name": "山西省", + "children": [{ + "code": "1401", + "name": "太原市", + "children": [{ + "code": "140105", + "name": "小店区" + }, { + "code": "140106", + "name": "迎泽区" + }, { + "code": "140107", + "name": "杏花岭区" + }, { + "code": "140108", + "name": "尖草坪区" + }, { + "code": "140109", + "name": "万柏林区" + }, { + "code": "140110", + "name": "晋源区" + }, { + "code": "140121", + "name": "清徐县" + }, { + "code": "140122", + "name": "阳曲县" + }, { + "code": "140123", + "name": "娄烦县" + }, { + "code": "140171", + "name": "山西转型综合改革示范区" + }, { + "code": "140181", + "name": "古交市" + }] + }, { + "code": "1402", + "name": "大同市", + "children": [{ + "code": "140212", + "name": "新荣区" + }, { + "code": "140213", + "name": "平城区" + }, { + "code": "140214", + "name": "云冈区" + }, { + "code": "140215", + "name": "云州区" + }, { + "code": "140221", + "name": "阳高县" + }, { + "code": "140222", + "name": "天镇县" + }, { + "code": "140223", + "name": "广灵县" + }, { + "code": "140224", + "name": "灵丘县" + }, { + "code": "140225", + "name": "浑源县" + }, { + "code": "140226", + "name": "左云县" + }, { + "code": "140271", + "name": "山西大同经济开发区" + }] + }, { + "code": "1403", + "name": "阳泉市", + "children": [{ + "code": "140302", + "name": "城区" + }, { + "code": "140303", + "name": "矿区" + }, { + "code": "140311", + "name": "郊区" + }, { + "code": "140321", + "name": "平定县" + }, { + "code": "140322", + "name": "盂县" + }] + }, { + "code": "1404", + "name": "长治市", + "children": [{ + "code": "140403", + "name": "潞州区" + }, { + "code": "140404", + "name": "上党区" + }, { + "code": "140405", + "name": "屯留区" + }, { + "code": "140406", + "name": "潞城区" + }, { + "code": "140423", + "name": "襄垣县" + }, { + "code": "140425", + "name": "平顺县" + }, { + "code": "140426", + "name": "黎城县" + }, { + "code": "140427", + "name": "壶关县" + }, { + "code": "140428", + "name": "长子县" + }, { + "code": "140429", + "name": "武乡县" + }, { + "code": "140430", + "name": "沁县" + }, { + "code": "140431", + "name": "沁源县" + }] + }, { + "code": "1405", + "name": "晋城市", + "children": [{ + "code": "140502", + "name": "城区" + }, { + "code": "140521", + "name": "沁水县" + }, { + "code": "140522", + "name": "阳城县" + }, { + "code": "140524", + "name": "陵川县" + }, { + "code": "140525", + "name": "泽州县" + }, { + "code": "140581", + "name": "高平市" + }] + }, { + "code": "1406", + "name": "朔州市", + "children": [{ + "code": "140602", + "name": "朔城区" + }, { + "code": "140603", + "name": "平鲁区" + }, { + "code": "140621", + "name": "山阴县" + }, { + "code": "140622", + "name": "应县" + }, { + "code": "140623", + "name": "右玉县" + }, { + "code": "140671", + "name": "山西朔州经济开发区" + }, { + "code": "140681", + "name": "怀仁市" + }] + }, { + "code": "1407", + "name": "晋中市", + "children": [{ + "code": "140702", + "name": "榆次区" + }, { + "code": "140703", + "name": "太谷区" + }, { + "code": "140721", + "name": "榆社县" + }, { + "code": "140722", + "name": "左权县" + }, { + "code": "140723", + "name": "和顺县" + }, { + "code": "140724", + "name": "昔阳县" + }, { + "code": "140725", + "name": "寿阳县" + }, { + "code": "140727", + "name": "祁县" + }, { + "code": "140728", + "name": "平遥县" + }, { + "code": "140729", + "name": "灵石县" + }, { + "code": "140781", + "name": "介休市" + }] + }, { + "code": "1408", + "name": "运城市", + "children": [{ + "code": "140802", + "name": "盐湖区" + }, { + "code": "140821", + "name": "临猗县" + }, { + "code": "140822", + "name": "万荣县" + }, { + "code": "140823", + "name": "闻喜县" + }, { + "code": "140824", + "name": "稷山县" + }, { + "code": "140825", + "name": "新绛县" + }, { + "code": "140826", + "name": "绛县" + }, { + "code": "140827", + "name": "垣曲县" + }, { + "code": "140828", + "name": "夏县" + }, { + "code": "140829", + "name": "平陆县" + }, { + "code": "140830", + "name": "芮城县" + }, { + "code": "140881", + "name": "永济市" + }, { + "code": "140882", + "name": "河津市" + }] + }, { + "code": "1409", + "name": "忻州市", + "children": [{ + "code": "140902", + "name": "忻府区" + }, { + "code": "140921", + "name": "定襄县" + }, { + "code": "140922", + "name": "五台县" + }, { + "code": "140923", + "name": "代县" + }, { + "code": "140924", + "name": "繁峙县" + }, { + "code": "140925", + "name": "宁武县" + }, { + "code": "140926", + "name": "静乐县" + }, { + "code": "140927", + "name": "神池县" + }, { + "code": "140928", + "name": "五寨县" + }, { + "code": "140929", + "name": "岢岚县" + }, { + "code": "140930", + "name": "河曲县" + }, { + "code": "140931", + "name": "保德县" + }, { + "code": "140932", + "name": "偏关县" + }, { + "code": "140971", + "name": "五台山风景名胜区" + }, { + "code": "140981", + "name": "原平市" + }] + }, { + "code": "1410", + "name": "临汾市", + "children": [{ + "code": "141002", + "name": "尧都区" + }, { + "code": "141021", + "name": "曲沃县" + }, { + "code": "141022", + "name": "翼城县" + }, { + "code": "141023", + "name": "襄汾县" + }, { + "code": "141024", + "name": "洪洞县" + }, { + "code": "141025", + "name": "古县" + }, { + "code": "141026", + "name": "安泽县" + }, { + "code": "141027", + "name": "浮山县" + }, { + "code": "141028", + "name": "吉县" + }, { + "code": "141029", + "name": "乡宁县" + }, { + "code": "141030", + "name": "大宁县" + }, { + "code": "141031", + "name": "隰县" + }, { + "code": "141032", + "name": "永和县" + }, { + "code": "141033", + "name": "蒲县" + }, { + "code": "141034", + "name": "汾西县" + }, { + "code": "141081", + "name": "侯马市" + }, { + "code": "141082", + "name": "霍州市" + }] + }, { + "code": "1411", + "name": "吕梁市", + "children": [{ + "code": "141102", + "name": "离石区" + }, { + "code": "141121", + "name": "文水县" + }, { + "code": "141122", + "name": "交城县" + }, { + "code": "141123", + "name": "兴县" + }, { + "code": "141124", + "name": "临县" + }, { + "code": "141125", + "name": "柳林县" + }, { + "code": "141126", + "name": "石楼县" + }, { + "code": "141127", + "name": "岚县" + }, { + "code": "141128", + "name": "方山县" + }, { + "code": "141129", + "name": "中阳县" + }, { + "code": "141130", + "name": "交口县" + }, { + "code": "141181", + "name": "孝义市" + }, { + "code": "141182", + "name": "汾阳市" + }] + }] +}, { + "code": "15", + "name": "内蒙古自治区", + "children": [{ + "code": "1501", + "name": "呼和浩特市", + "children": [{ + "code": "150102", + "name": "新城区" + }, { + "code": "150103", + "name": "回民区" + }, { + "code": "150104", + "name": "玉泉区" + }, { + "code": "150105", + "name": "赛罕区" + }, { + "code": "150121", + "name": "土默特左旗" + }, { + "code": "150122", + "name": "托克托县" + }, { + "code": "150123", + "name": "和林格尔县" + }, { + "code": "150124", + "name": "清水河县" + }, { + "code": "150125", + "name": "武川县" + }, { + "code": "150172", + "name": "呼和浩特经济技术开发区" + }] + }, { + "code": "1502", + "name": "包头市", + "children": [{ + "code": "150202", + "name": "东河区" + }, { + "code": "150203", + "name": "昆都仑区" + }, { + "code": "150204", + "name": "青山区" + }, { + "code": "150205", + "name": "石拐区" + }, { + "code": "150206", + "name": "白云鄂博矿区" + }, { + "code": "150207", + "name": "九原区" + }, { + "code": "150221", + "name": "土默特右旗" + }, { + "code": "150222", + "name": "固阳县" + }, { + "code": "150223", + "name": "达尔罕茂明安联合旗" + }, { + "code": "150271", + "name": "包头稀土高新技术产业开发区" + }] + }, { + "code": "1503", + "name": "乌海市", + "children": [{ + "code": "150302", + "name": "海勃湾区" + }, { + "code": "150303", + "name": "海南区" + }, { + "code": "150304", + "name": "乌达区" + }] + }, { + "code": "1504", + "name": "赤峰市", + "children": [{ + "code": "150402", + "name": "红山区" + }, { + "code": "150403", + "name": "元宝山区" + }, { + "code": "150404", + "name": "松山区" + }, { + "code": "150421", + "name": "阿鲁科尔沁旗" + }, { + "code": "150422", + "name": "巴林左旗" + }, { + "code": "150423", + "name": "巴林右旗" + }, { + "code": "150424", + "name": "林西县" + }, { + "code": "150425", + "name": "克什克腾旗" + }, { + "code": "150426", + "name": "翁牛特旗" + }, { + "code": "150428", + "name": "喀喇沁旗" + }, { + "code": "150429", + "name": "宁城县" + }, { + "code": "150430", + "name": "敖汉旗" + }] + }, { + "code": "1505", + "name": "通辽市", + "children": [{ + "code": "150502", + "name": "科尔沁区" + }, { + "code": "150521", + "name": "科尔沁左翼中旗" + }, { + "code": "150522", + "name": "科尔沁左翼后旗" + }, { + "code": "150523", + "name": "开鲁县" + }, { + "code": "150524", + "name": "库伦旗" + }, { + "code": "150525", + "name": "奈曼旗" + }, { + "code": "150526", + "name": "扎鲁特旗" + }, { + "code": "150571", + "name": "通辽经济技术开发区" + }, { + "code": "150581", + "name": "霍林郭勒市" + }] + }, { + "code": "1506", + "name": "鄂尔多斯市", + "children": [{ + "code": "150602", + "name": "东胜区" + }, { + "code": "150603", + "name": "康巴什区" + }, { + "code": "150621", + "name": "达拉特旗" + }, { + "code": "150622", + "name": "准格尔旗" + }, { + "code": "150623", + "name": "鄂托克前旗" + }, { + "code": "150624", + "name": "鄂托克旗" + }, { + "code": "150625", + "name": "杭锦旗" + }, { + "code": "150626", + "name": "乌审旗" + }, { + "code": "150627", + "name": "伊金霍洛旗" + }] + }, { + "code": "1507", + "name": "呼伦贝尔市", + "children": [{ + "code": "150702", + "name": "海拉尔区" + }, { + "code": "150703", + "name": "扎赉诺尔区" + }, { + "code": "150721", + "name": "阿荣旗" + }, { + "code": "150722", + "name": "莫力达瓦达斡尔族自治旗" + }, { + "code": "150723", + "name": "鄂伦春自治旗" + }, { + "code": "150724", + "name": "鄂温克族自治旗" + }, { + "code": "150725", + "name": "陈巴尔虎旗" + }, { + "code": "150726", + "name": "新巴尔虎左旗" + }, { + "code": "150727", + "name": "新巴尔虎右旗" + }, { + "code": "150781", + "name": "满洲里市" + }, { + "code": "150782", + "name": "牙克石市" + }, { + "code": "150783", + "name": "扎兰屯市" + }, { + "code": "150784", + "name": "额尔古纳市" + }, { + "code": "150785", + "name": "根河市" + }] + }, { + "code": "1508", + "name": "巴彦淖尔市", + "children": [{ + "code": "150802", + "name": "临河区" + }, { + "code": "150821", + "name": "五原县" + }, { + "code": "150822", + "name": "磴口县" + }, { + "code": "150823", + "name": "乌拉特前旗" + }, { + "code": "150824", + "name": "乌拉特中旗" + }, { + "code": "150825", + "name": "乌拉特后旗" + }, { + "code": "150826", + "name": "杭锦后旗" + }] + }, { + "code": "1509", + "name": "乌兰察布市", + "children": [{ + "code": "150902", + "name": "集宁区" + }, { + "code": "150921", + "name": "卓资县" + }, { + "code": "150922", + "name": "化德县" + }, { + "code": "150923", + "name": "商都县" + }, { + "code": "150924", + "name": "兴和县" + }, { + "code": "150925", + "name": "凉城县" + }, { + "code": "150926", + "name": "察哈尔右翼前旗" + }, { + "code": "150927", + "name": "察哈尔右翼中旗" + }, { + "code": "150928", + "name": "察哈尔右翼后旗" + }, { + "code": "150929", + "name": "四子王旗" + }, { + "code": "150981", + "name": "丰镇市" + }] + }, { + "code": "1522", + "name": "兴安盟", + "children": [{ + "code": "152201", + "name": "乌兰浩特市" + }, { + "code": "152202", + "name": "阿尔山市" + }, { + "code": "152221", + "name": "科尔沁右翼前旗" + }, { + "code": "152222", + "name": "科尔沁右翼中旗" + }, { + "code": "152223", + "name": "扎赉特旗" + }, { + "code": "152224", + "name": "突泉县" + }] + }, { + "code": "1525", + "name": "锡林郭勒盟", + "children": [{ + "code": "152501", + "name": "二连浩特市" + }, { + "code": "152502", + "name": "锡林浩特市" + }, { + "code": "152522", + "name": "阿巴嘎旗" + }, { + "code": "152523", + "name": "苏尼特左旗" + }, { + "code": "152524", + "name": "苏尼特右旗" + }, { + "code": "152525", + "name": "东乌珠穆沁旗" + }, { + "code": "152526", + "name": "西乌珠穆沁旗" + }, { + "code": "152527", + "name": "太仆寺旗" + }, { + "code": "152528", + "name": "镶黄旗" + }, { + "code": "152529", + "name": "正镶白旗" + }, { + "code": "152530", + "name": "正蓝旗" + }, { + "code": "152531", + "name": "多伦县" + }, { + "code": "152571", + "name": "乌拉盖管理区管委会" + }] + }, { + "code": "1529", + "name": "阿拉善盟", + "children": [{ + "code": "152921", + "name": "阿拉善左旗" + }, { + "code": "152922", + "name": "阿拉善右旗" + }, { + "code": "152923", + "name": "额济纳旗" + }, { + "code": "152971", + "name": "内蒙古阿拉善高新技术产业开发区" + }] + }] +}, { + "code": "21", + "name": "辽宁省", + "children": [{ + "code": "2101", + "name": "沈阳市", + "children": [{ + "code": "210102", + "name": "和平区" + }, { + "code": "210103", + "name": "沈河区" + }, { + "code": "210104", + "name": "大东区" + }, { + "code": "210105", + "name": "皇姑区" + }, { + "code": "210106", + "name": "铁西区" + }, { + "code": "210111", + "name": "苏家屯区" + }, { + "code": "210112", + "name": "浑南区" + }, { + "code": "210113", + "name": "沈北新区" + }, { + "code": "210114", + "name": "于洪区" + }, { + "code": "210115", + "name": "辽中区" + }, { + "code": "210123", + "name": "康平县" + }, { + "code": "210124", + "name": "法库县" + }, { + "code": "210181", + "name": "新民市" + }] + }, { + "code": "2102", + "name": "大连市", + "children": [{ + "code": "210202", + "name": "中山区" + }, { + "code": "210203", + "name": "西岗区" + }, { + "code": "210204", + "name": "沙河口区" + }, { + "code": "210211", + "name": "甘井子区" + }, { + "code": "210212", + "name": "旅顺口区" + }, { + "code": "210213", + "name": "金州区" + }, { + "code": "210214", + "name": "普兰店区" + }, { + "code": "210224", + "name": "长海县" + }, { + "code": "210281", + "name": "瓦房店市" + }, { + "code": "210283", + "name": "庄河市" + }] + }, { + "code": "2103", + "name": "鞍山市", + "children": [{ + "code": "210302", + "name": "铁东区" + }, { + "code": "210303", + "name": "铁西区" + }, { + "code": "210304", + "name": "立山区" + }, { + "code": "210311", + "name": "千山区" + }, { + "code": "210321", + "name": "台安县" + }, { + "code": "210323", + "name": "岫岩满族自治县" + }, { + "code": "210381", + "name": "海城市" + }] + }, { + "code": "2104", + "name": "抚顺市", + "children": [{ + "code": "210402", + "name": "新抚区" + }, { + "code": "210403", + "name": "东洲区" + }, { + "code": "210404", + "name": "望花区" + }, { + "code": "210411", + "name": "顺城区" + }, { + "code": "210421", + "name": "抚顺县" + }, { + "code": "210422", + "name": "新宾满族自治县" + }, { + "code": "210423", + "name": "清原满族自治县" + }] + }, { + "code": "2105", + "name": "本溪市", + "children": [{ + "code": "210502", + "name": "平山区" + }, { + "code": "210503", + "name": "溪湖区" + }, { + "code": "210504", + "name": "明山区" + }, { + "code": "210505", + "name": "南芬区" + }, { + "code": "210521", + "name": "本溪满族自治县" + }, { + "code": "210522", + "name": "桓仁满族自治县" + }] + }, { + "code": "2106", + "name": "丹东市", + "children": [{ + "code": "210602", + "name": "元宝区" + }, { + "code": "210603", + "name": "振兴区" + }, { + "code": "210604", + "name": "振安区" + }, { + "code": "210624", + "name": "宽甸满族自治县" + }, { + "code": "210681", + "name": "东港市" + }, { + "code": "210682", + "name": "凤城市" + }] + }, { + "code": "2107", + "name": "锦州市", + "children": [{ + "code": "210702", + "name": "古塔区" + }, { + "code": "210703", + "name": "凌河区" + }, { + "code": "210711", + "name": "太和区" + }, { + "code": "210726", + "name": "黑山县" + }, { + "code": "210727", + "name": "义县" + }, { + "code": "210781", + "name": "凌海市" + }, { + "code": "210782", + "name": "北镇市" + }] + }, { + "code": "2108", + "name": "营口市", + "children": [{ + "code": "210802", + "name": "站前区" + }, { + "code": "210803", + "name": "西市区" + }, { + "code": "210804", + "name": "鲅鱼圈区" + }, { + "code": "210811", + "name": "老边区" + }, { + "code": "210881", + "name": "盖州市" + }, { + "code": "210882", + "name": "大石桥市" + }] + }, { + "code": "2109", + "name": "阜新市", + "children": [{ + "code": "210902", + "name": "海州区" + }, { + "code": "210903", + "name": "新邱区" + }, { + "code": "210904", + "name": "太平区" + }, { + "code": "210905", + "name": "清河门区" + }, { + "code": "210911", + "name": "细河区" + }, { + "code": "210921", + "name": "阜新蒙古族自治县" + }, { + "code": "210922", + "name": "彰武县" + }] + }, { + "code": "2110", + "name": "辽阳市", + "children": [{ + "code": "211002", + "name": "白塔区" + }, { + "code": "211003", + "name": "文圣区" + }, { + "code": "211004", + "name": "宏伟区" + }, { + "code": "211005", + "name": "弓长岭区" + }, { + "code": "211011", + "name": "太子河区" + }, { + "code": "211021", + "name": "辽阳县" + }, { + "code": "211081", + "name": "灯塔市" + }] + }, { + "code": "2111", + "name": "盘锦市", + "children": [{ + "code": "211102", + "name": "双台子区" + }, { + "code": "211103", + "name": "兴隆台区" + }, { + "code": "211104", + "name": "大洼区" + }, { + "code": "211122", + "name": "盘山县" + }] + }, { + "code": "2112", + "name": "铁岭市", + "children": [{ + "code": "211202", + "name": "银州区" + }, { + "code": "211204", + "name": "清河区" + }, { + "code": "211221", + "name": "铁岭县" + }, { + "code": "211223", + "name": "西丰县" + }, { + "code": "211224", + "name": "昌图县" + }, { + "code": "211281", + "name": "调兵山市" + }, { + "code": "211282", + "name": "开原市" + }] + }, { + "code": "2113", + "name": "朝阳市", + "children": [{ + "code": "211302", + "name": "双塔区" + }, { + "code": "211303", + "name": "龙城区" + }, { + "code": "211321", + "name": "朝阳县" + }, { + "code": "211322", + "name": "建平县" + }, { + "code": "211324", + "name": "喀喇沁左翼蒙古族自治县" + }, { + "code": "211381", + "name": "北票市" + }, { + "code": "211382", + "name": "凌源市" + }] + }, { + "code": "2114", + "name": "葫芦岛市", + "children": [{ + "code": "211402", + "name": "连山区" + }, { + "code": "211403", + "name": "龙港区" + }, { + "code": "211404", + "name": "南票区" + }, { + "code": "211421", + "name": "绥中县" + }, { + "code": "211422", + "name": "建昌县" + }, { + "code": "211481", + "name": "兴城市" + }] + }] +}, { + "code": "22", + "name": "吉林省", + "children": [{ + "code": "2201", + "name": "长春市", + "children": [{ + "code": "220102", + "name": "南关区" + }, { + "code": "220103", + "name": "宽城区" + }, { + "code": "220104", + "name": "朝阳区" + }, { + "code": "220105", + "name": "二道区" + }, { + "code": "220106", + "name": "绿园区" + }, { + "code": "220112", + "name": "双阳区" + }, { + "code": "220113", + "name": "九台区" + }, { + "code": "220122", + "name": "农安县" + }, { + "code": "220171", + "name": "长春经济技术开发区" + }, { + "code": "220172", + "name": "长春净月高新技术产业开发区" + }, { + "code": "220173", + "name": "长春高新技术产业开发区" + }, { + "code": "220174", + "name": "长春汽车经济技术开发区" + }, { + "code": "220182", + "name": "榆树市" + }, { + "code": "220183", + "name": "德惠市" + }, { + "code": "220184", + "name": "公主岭市" + }] + }, { + "code": "2202", + "name": "吉林市", + "children": [{ + "code": "220202", + "name": "昌邑区" + }, { + "code": "220203", + "name": "龙潭区" + }, { + "code": "220204", + "name": "船营区" + }, { + "code": "220211", + "name": "丰满区" + }, { + "code": "220221", + "name": "永吉县" + }, { + "code": "220271", + "name": "吉林经济开发区" + }, { + "code": "220272", + "name": "吉林高新技术产业开发区" + }, { + "code": "220273", + "name": "吉林中国新加坡食品区" + }, { + "code": "220281", + "name": "蛟河市" + }, { + "code": "220282", + "name": "桦甸市" + }, { + "code": "220283", + "name": "舒兰市" + }, { + "code": "220284", + "name": "磐石市" + }] + }, { + "code": "2203", + "name": "四平市", + "children": [{ + "code": "220302", + "name": "铁西区" + }, { + "code": "220303", + "name": "铁东区" + }, { + "code": "220322", + "name": "梨树县" + }, { + "code": "220323", + "name": "伊通满族自治县" + }, { + "code": "220382", + "name": "双辽市" + }] + }, { + "code": "2204", + "name": "辽源市", + "children": [{ + "code": "220402", + "name": "龙山区" + }, { + "code": "220403", + "name": "西安区" + }, { + "code": "220421", + "name": "东丰县" + }, { + "code": "220422", + "name": "东辽县" + }] + }, { + "code": "2205", + "name": "通化市", + "children": [{ + "code": "220502", + "name": "东昌区" + }, { + "code": "220503", + "name": "二道江区" + }, { + "code": "220521", + "name": "通化县" + }, { + "code": "220523", + "name": "辉南县" + }, { + "code": "220524", + "name": "柳河县" + }, { + "code": "220581", + "name": "梅河口市" + }, { + "code": "220582", + "name": "集安市" + }] + }, { + "code": "2206", + "name": "白山市", + "children": [{ + "code": "220602", + "name": "浑江区" + }, { + "code": "220605", + "name": "江源区" + }, { + "code": "220621", + "name": "抚松县" + }, { + "code": "220622", + "name": "靖宇县" + }, { + "code": "220623", + "name": "长白朝鲜族自治县" + }, { + "code": "220681", + "name": "临江市" + }] + }, { + "code": "2207", + "name": "松原市", + "children": [{ + "code": "220702", + "name": "宁江区" + }, { + "code": "220721", + "name": "前郭尔罗斯蒙古族自治县" + }, { + "code": "220722", + "name": "长岭县" + }, { + "code": "220723", + "name": "乾安县" + }, { + "code": "220771", + "name": "吉林松原经济开发区" + }, { + "code": "220781", + "name": "扶余市" + }] + }, { + "code": "2208", + "name": "白城市", + "children": [{ + "code": "220802", + "name": "洮北区" + }, { + "code": "220821", + "name": "镇赉县" + }, { + "code": "220822", + "name": "通榆县" + }, { + "code": "220871", + "name": "吉林白城经济开发区" + }, { + "code": "220881", + "name": "洮南市" + }, { + "code": "220882", + "name": "大安市" + }] + }, { + "code": "2224", + "name": "延边朝鲜族自治州", + "children": [{ + "code": "222401", + "name": "延吉市" + }, { + "code": "222402", + "name": "图们市" + }, { + "code": "222403", + "name": "敦化市" + }, { + "code": "222404", + "name": "珲春市" + }, { + "code": "222405", + "name": "龙井市" + }, { + "code": "222406", + "name": "和龙市" + }, { + "code": "222424", + "name": "汪清县" + }, { + "code": "222426", + "name": "安图县" + }] + }] +}, { + "code": "23", + "name": "黑龙江省", + "children": [{ + "code": "2301", + "name": "哈尔滨市", + "children": [{ + "code": "230102", + "name": "道里区" + }, { + "code": "230103", + "name": "南岗区" + }, { + "code": "230104", + "name": "道外区" + }, { + "code": "230108", + "name": "平房区" + }, { + "code": "230109", + "name": "松北区" + }, { + "code": "230110", + "name": "香坊区" + }, { + "code": "230111", + "name": "呼兰区" + }, { + "code": "230112", + "name": "阿城区" + }, { + "code": "230113", + "name": "双城区" + }, { + "code": "230123", + "name": "依兰县" + }, { + "code": "230124", + "name": "方正县" + }, { + "code": "230125", + "name": "宾县" + }, { + "code": "230126", + "name": "巴彦县" + }, { + "code": "230127", + "name": "木兰县" + }, { + "code": "230128", + "name": "通河县" + }, { + "code": "230129", + "name": "延寿县" + }, { + "code": "230183", + "name": "尚志市" + }, { + "code": "230184", + "name": "五常市" + }] + }, { + "code": "2302", + "name": "齐齐哈尔市", + "children": [{ + "code": "230202", + "name": "龙沙区" + }, { + "code": "230203", + "name": "建华区" + }, { + "code": "230204", + "name": "铁锋区" + }, { + "code": "230205", + "name": "昂昂溪区" + }, { + "code": "230206", + "name": "富拉尔基区" + }, { + "code": "230207", + "name": "碾子山区" + }, { + "code": "230208", + "name": "梅里斯达斡尔族区" + }, { + "code": "230221", + "name": "龙江县" + }, { + "code": "230223", + "name": "依安县" + }, { + "code": "230224", + "name": "泰来县" + }, { + "code": "230225", + "name": "甘南县" + }, { + "code": "230227", + "name": "富裕县" + }, { + "code": "230229", + "name": "克山县" + }, { + "code": "230230", + "name": "克东县" + }, { + "code": "230231", + "name": "拜泉县" + }, { + "code": "230281", + "name": "讷河市" + }] + }, { + "code": "2303", + "name": "鸡西市", + "children": [{ + "code": "230302", + "name": "鸡冠区" + }, { + "code": "230303", + "name": "恒山区" + }, { + "code": "230304", + "name": "滴道区" + }, { + "code": "230305", + "name": "梨树区" + }, { + "code": "230306", + "name": "城子河区" + }, { + "code": "230307", + "name": "麻山区" + }, { + "code": "230321", + "name": "鸡东县" + }, { + "code": "230381", + "name": "虎林市" + }, { + "code": "230382", + "name": "密山市" + }] + }, { + "code": "2304", + "name": "鹤岗市", + "children": [{ + "code": "230402", + "name": "向阳区" + }, { + "code": "230403", + "name": "工农区" + }, { + "code": "230404", + "name": "南山区" + }, { + "code": "230405", + "name": "兴安区" + }, { + "code": "230406", + "name": "东山区" + }, { + "code": "230407", + "name": "兴山区" + }, { + "code": "230421", + "name": "萝北县" + }, { + "code": "230422", + "name": "绥滨县" + }] + }, { + "code": "2305", + "name": "双鸭山市", + "children": [{ + "code": "230502", + "name": "尖山区" + }, { + "code": "230503", + "name": "岭东区" + }, { + "code": "230505", + "name": "四方台区" + }, { + "code": "230506", + "name": "宝山区" + }, { + "code": "230521", + "name": "集贤县" + }, { + "code": "230522", + "name": "友谊县" + }, { + "code": "230523", + "name": "宝清县" + }, { + "code": "230524", + "name": "饶河县" + }] + }, { + "code": "2306", + "name": "大庆市", + "children": [{ + "code": "230602", + "name": "萨尔图区" + }, { + "code": "230603", + "name": "龙凤区" + }, { + "code": "230604", + "name": "让胡路区" + }, { + "code": "230605", + "name": "红岗区" + }, { + "code": "230606", + "name": "大同区" + }, { + "code": "230621", + "name": "肇州县" + }, { + "code": "230622", + "name": "肇源县" + }, { + "code": "230623", + "name": "林甸县" + }, { + "code": "230624", + "name": "杜尔伯特蒙古族自治县" + }, { + "code": "230671", + "name": "大庆高新技术产业开发区" + }] + }, { + "code": "2307", + "name": "伊春市", + "children": [{ + "code": "230717", + "name": "伊美区" + }, { + "code": "230718", + "name": "乌翠区" + }, { + "code": "230719", + "name": "友好区" + }, { + "code": "230722", + "name": "嘉荫县" + }, { + "code": "230723", + "name": "汤旺县" + }, { + "code": "230724", + "name": "丰林县" + }, { + "code": "230725", + "name": "大箐山县" + }, { + "code": "230726", + "name": "南岔县" + }, { + "code": "230751", + "name": "金林区" + }, { + "code": "230781", + "name": "铁力市" + }] + }, { + "code": "2308", + "name": "佳木斯市", + "children": [{ + "code": "230803", + "name": "向阳区" + }, { + "code": "230804", + "name": "前进区" + }, { + "code": "230805", + "name": "东风区" + }, { + "code": "230811", + "name": "郊区" + }, { + "code": "230822", + "name": "桦南县" + }, { + "code": "230826", + "name": "桦川县" + }, { + "code": "230828", + "name": "汤原县" + }, { + "code": "230881", + "name": "同江市" + }, { + "code": "230882", + "name": "富锦市" + }, { + "code": "230883", + "name": "抚远市" + }] + }, { + "code": "2309", + "name": "七台河市", + "children": [{ + "code": "230902", + "name": "新兴区" + }, { + "code": "230903", + "name": "桃山区" + }, { + "code": "230904", + "name": "茄子河区" + }, { + "code": "230921", + "name": "勃利县" + }] + }, { + "code": "2310", + "name": "牡丹江市", + "children": [{ + "code": "231002", + "name": "东安区" + }, { + "code": "231003", + "name": "阳明区" + }, { + "code": "231004", + "name": "爱民区" + }, { + "code": "231005", + "name": "西安区" + }, { + "code": "231025", + "name": "林口县" + }, { + "code": "231081", + "name": "绥芬河市" + }, { + "code": "231083", + "name": "海林市" + }, { + "code": "231084", + "name": "宁安市" + }, { + "code": "231085", + "name": "穆棱市" + }, { + "code": "231086", + "name": "东宁市" + }] + }, { + "code": "2311", + "name": "黑河市", + "children": [{ + "code": "231102", + "name": "爱辉区" + }, { + "code": "231123", + "name": "逊克县" + }, { + "code": "231124", + "name": "孙吴县" + }, { + "code": "231181", + "name": "北安市" + }, { + "code": "231182", + "name": "五大连池市" + }, { + "code": "231183", + "name": "嫩江市" + }] + }, { + "code": "2312", + "name": "绥化市", + "children": [{ + "code": "231202", + "name": "北林区" + }, { + "code": "231221", + "name": "望奎县" + }, { + "code": "231222", + "name": "兰西县" + }, { + "code": "231223", + "name": "青冈县" + }, { + "code": "231224", + "name": "庆安县" + }, { + "code": "231225", + "name": "明水县" + }, { + "code": "231226", + "name": "绥棱县" + }, { + "code": "231281", + "name": "安达市" + }, { + "code": "231282", + "name": "肇东市" + }, { + "code": "231283", + "name": "海伦市" + }] + }, { + "code": "2327", + "name": "大兴安岭地区", + "children": [{ + "code": "232701", + "name": "漠河市" + }, { + "code": "232721", + "name": "呼玛县" + }, { + "code": "232722", + "name": "塔河县" + }, { + "code": "232761", + "name": "加格达奇区" + }, { + "code": "232762", + "name": "松岭区" + }, { + "code": "232763", + "name": "新林区" + }, { + "code": "232764", + "name": "呼中区" + }] + }] +}, { + "code": "31", + "name": "上海市", + "children": [{ + "code": "3101", + "name": "市辖区", + "children": [{ + "code": "310101", + "name": "黄浦区" + }, { + "code": "310104", + "name": "徐汇区" + }, { + "code": "310105", + "name": "长宁区" + }, { + "code": "310106", + "name": "静安区" + }, { + "code": "310107", + "name": "普陀区" + }, { + "code": "310109", + "name": "虹口区" + }, { + "code": "310110", + "name": "杨浦区" + }, { + "code": "310112", + "name": "闵行区" + }, { + "code": "310113", + "name": "宝山区" + }, { + "code": "310114", + "name": "嘉定区" + }, { + "code": "310115", + "name": "浦东新区" + }, { + "code": "310116", + "name": "金山区" + }, { + "code": "310117", + "name": "松江区" + }, { + "code": "310118", + "name": "青浦区" + }, { + "code": "310120", + "name": "奉贤区" + }, { + "code": "310151", + "name": "崇明区" + }] + }] +}, { + "code": "32", + "name": "江苏省", + "children": [{ + "code": "3201", + "name": "南京市", + "children": [{ + "code": "320102", + "name": "玄武区" + }, { + "code": "320104", + "name": "秦淮区" + }, { + "code": "320105", + "name": "建邺区" + }, { + "code": "320106", + "name": "鼓楼区" + }, { + "code": "320111", + "name": "浦口区" + }, { + "code": "320113", + "name": "栖霞区" + }, { + "code": "320114", + "name": "雨花台区" + }, { + "code": "320115", + "name": "江宁区" + }, { + "code": "320116", + "name": "六合区" + }, { + "code": "320117", + "name": "溧水区" + }, { + "code": "320118", + "name": "高淳区" + }] + }, { + "code": "3202", + "name": "无锡市", + "children": [{ + "code": "320205", + "name": "锡山区" + }, { + "code": "320206", + "name": "惠山区" + }, { + "code": "320211", + "name": "滨湖区" + }, { + "code": "320213", + "name": "梁溪区" + }, { + "code": "320214", + "name": "新吴区" + }, { + "code": "320281", + "name": "江阴市" + }, { + "code": "320282", + "name": "宜兴市" + }] + }, { + "code": "3203", + "name": "徐州市", + "children": [{ + "code": "320302", + "name": "鼓楼区" + }, { + "code": "320303", + "name": "云龙区" + }, { + "code": "320305", + "name": "贾汪区" + }, { + "code": "320311", + "name": "泉山区" + }, { + "code": "320312", + "name": "铜山区" + }, { + "code": "320321", + "name": "丰县" + }, { + "code": "320322", + "name": "沛县" + }, { + "code": "320324", + "name": "睢宁县" + }, { + "code": "320371", + "name": "徐州经济技术开发区" + }, { + "code": "320381", + "name": "新沂市" + }, { + "code": "320382", + "name": "邳州市" + }] + }, { + "code": "3204", + "name": "常州市", + "children": [{ + "code": "320402", + "name": "天宁区" + }, { + "code": "320404", + "name": "钟楼区" + }, { + "code": "320411", + "name": "新北区" + }, { + "code": "320412", + "name": "武进区" + }, { + "code": "320413", + "name": "金坛区" + }, { + "code": "320481", + "name": "溧阳市" + }] + }, { + "code": "3205", + "name": "苏州市", + "children": [{ + "code": "320505", + "name": "虎丘区" + }, { + "code": "320506", + "name": "吴中区" + }, { + "code": "320507", + "name": "相城区" + }, { + "code": "320508", + "name": "姑苏区" + }, { + "code": "320509", + "name": "吴江区" + }, { + "code": "320576", + "name": "苏州工业园区" + }, { + "code": "320581", + "name": "常熟市" + }, { + "code": "320582", + "name": "张家港市" + }, { + "code": "320583", + "name": "昆山市" + }, { + "code": "320585", + "name": "太仓市" + }] + }, { + "code": "3206", + "name": "南通市", + "children": [{ + "code": "320612", + "name": "通州区" + }, { + "code": "320613", + "name": "崇川区" + }, { + "code": "320614", + "name": "海门区" + }, { + "code": "320623", + "name": "如东县" + }, { + "code": "320671", + "name": "南通经济技术开发区" + }, { + "code": "320681", + "name": "启东市" + }, { + "code": "320682", + "name": "如皋市" + }, { + "code": "320685", + "name": "海安市" + }] + }, { + "code": "3207", + "name": "连云港市", + "children": [{ + "code": "320703", + "name": "连云区" + }, { + "code": "320706", + "name": "海州区" + }, { + "code": "320707", + "name": "赣榆区" + }, { + "code": "320722", + "name": "东海县" + }, { + "code": "320723", + "name": "灌云县" + }, { + "code": "320724", + "name": "灌南县" + }, { + "code": "320771", + "name": "连云港经济技术开发区" + }] + }, { + "code": "3208", + "name": "淮安市", + "children": [{ + "code": "320803", + "name": "淮安区" + }, { + "code": "320804", + "name": "淮阴区" + }, { + "code": "320812", + "name": "清江浦区" + }, { + "code": "320813", + "name": "洪泽区" + }, { + "code": "320826", + "name": "涟水县" + }, { + "code": "320830", + "name": "盱眙县" + }, { + "code": "320831", + "name": "金湖县" + }, { + "code": "320871", + "name": "淮安经济技术开发区" + }] + }, { + "code": "3209", + "name": "盐城市", + "children": [{ + "code": "320902", + "name": "亭湖区" + }, { + "code": "320903", + "name": "盐都区" + }, { + "code": "320904", + "name": "大丰区" + }, { + "code": "320921", + "name": "响水县" + }, { + "code": "320922", + "name": "滨海县" + }, { + "code": "320923", + "name": "阜宁县" + }, { + "code": "320924", + "name": "射阳县" + }, { + "code": "320925", + "name": "建湖县" + }, { + "code": "320971", + "name": "盐城经济技术开发区" + }, { + "code": "320981", + "name": "东台市" + }] + }, { + "code": "3210", + "name": "扬州市", + "children": [{ + "code": "321002", + "name": "广陵区" + }, { + "code": "321003", + "name": "邗江区" + }, { + "code": "321012", + "name": "江都区" + }, { + "code": "321023", + "name": "宝应县" + }, { + "code": "321071", + "name": "扬州经济技术开发区" + }, { + "code": "321081", + "name": "仪征市" + }, { + "code": "321084", + "name": "高邮市" + }] + }, { + "code": "3211", + "name": "镇江市", + "children": [{ + "code": "321102", + "name": "京口区" + }, { + "code": "321111", + "name": "润州区" + }, { + "code": "321112", + "name": "丹徒区" + }, { + "code": "321171", + "name": "镇江新区" + }, { + "code": "321181", + "name": "丹阳市" + }, { + "code": "321182", + "name": "扬中市" + }, { + "code": "321183", + "name": "句容市" + }] + }, { + "code": "3212", + "name": "泰州市", + "children": [{ + "code": "321202", + "name": "海陵区" + }, { + "code": "321203", + "name": "高港区" + }, { + "code": "321204", + "name": "姜堰区" + }, { + "code": "321281", + "name": "兴化市" + }, { + "code": "321282", + "name": "靖江市" + }, { + "code": "321283", + "name": "泰兴市" + }] + }, { + "code": "3213", + "name": "宿迁市", + "children": [{ + "code": "321302", + "name": "宿城区" + }, { + "code": "321311", + "name": "宿豫区" + }, { + "code": "321322", + "name": "沭阳县" + }, { + "code": "321323", + "name": "泗阳县" + }, { + "code": "321324", + "name": "泗洪县" + }, { + "code": "321371", + "name": "宿迁经济技术开发区" + }] + }] +}, { + "code": "33", + "name": "浙江省", + "children": [{ + "code": "3301", + "name": "杭州市", + "children": [{ + "code": "330102", + "name": "上城区" + }, { + "code": "330105", + "name": "拱墅区" + }, { + "code": "330106", + "name": "西湖区" + }, { + "code": "330108", + "name": "滨江区" + }, { + "code": "330109", + "name": "萧山区" + }, { + "code": "330110", + "name": "余杭区" + }, { + "code": "330111", + "name": "富阳区" + }, { + "code": "330112", + "name": "临安区" + }, { + "code": "330113", + "name": "临平区" + }, { + "code": "330114", + "name": "钱塘区" + }, { + "code": "330122", + "name": "桐庐县" + }, { + "code": "330127", + "name": "淳安县" + }, { + "code": "330182", + "name": "建德市" + }] + }, { + "code": "3302", + "name": "宁波市", + "children": [{ + "code": "330203", + "name": "海曙区" + }, { + "code": "330205", + "name": "江北区" + }, { + "code": "330206", + "name": "北仑区" + }, { + "code": "330211", + "name": "镇海区" + }, { + "code": "330212", + "name": "鄞州区" + }, { + "code": "330213", + "name": "奉化区" + }, { + "code": "330225", + "name": "象山县" + }, { + "code": "330226", + "name": "宁海县" + }, { + "code": "330281", + "name": "余姚市" + }, { + "code": "330282", + "name": "慈溪市" + }] + }, { + "code": "3303", + "name": "温州市", + "children": [{ + "code": "330302", + "name": "鹿城区" + }, { + "code": "330303", + "name": "龙湾区" + }, { + "code": "330304", + "name": "瓯海区" + }, { + "code": "330305", + "name": "洞头区" + }, { + "code": "330324", + "name": "永嘉县" + }, { + "code": "330326", + "name": "平阳县" + }, { + "code": "330327", + "name": "苍南县" + }, { + "code": "330328", + "name": "文成县" + }, { + "code": "330329", + "name": "泰顺县" + }, { + "code": "330381", + "name": "瑞安市" + }, { + "code": "330382", + "name": "乐清市" + }, { + "code": "330383", + "name": "龙港市" + }] + }, { + "code": "3304", + "name": "嘉兴市", + "children": [{ + "code": "330402", + "name": "南湖区" + }, { + "code": "330411", + "name": "秀洲区" + }, { + "code": "330421", + "name": "嘉善县" + }, { + "code": "330424", + "name": "海盐县" + }, { + "code": "330481", + "name": "海宁市" + }, { + "code": "330482", + "name": "平湖市" + }, { + "code": "330483", + "name": "桐乡市" + }] + }, { + "code": "3305", + "name": "湖州市", + "children": [{ + "code": "330502", + "name": "吴兴区" + }, { + "code": "330503", + "name": "南浔区" + }, { + "code": "330521", + "name": "德清县" + }, { + "code": "330522", + "name": "长兴县" + }, { + "code": "330523", + "name": "安吉县" + }] + }, { + "code": "3306", + "name": "绍兴市", + "children": [{ + "code": "330602", + "name": "越城区" + }, { + "code": "330603", + "name": "柯桥区" + }, { + "code": "330604", + "name": "上虞区" + }, { + "code": "330624", + "name": "新昌县" + }, { + "code": "330681", + "name": "诸暨市" + }, { + "code": "330683", + "name": "嵊州市" + }] + }, { + "code": "3307", + "name": "金华市", + "children": [{ + "code": "330702", + "name": "婺城区" + }, { + "code": "330703", + "name": "金东区" + }, { + "code": "330723", + "name": "武义县" + }, { + "code": "330726", + "name": "浦江县" + }, { + "code": "330727", + "name": "磐安县" + }, { + "code": "330781", + "name": "兰溪市" + }, { + "code": "330782", + "name": "义乌市" + }, { + "code": "330783", + "name": "东阳市" + }, { + "code": "330784", + "name": "永康市" + }] + }, { + "code": "3308", + "name": "衢州市", + "children": [{ + "code": "330802", + "name": "柯城区" + }, { + "code": "330803", + "name": "衢江区" + }, { + "code": "330822", + "name": "常山县" + }, { + "code": "330824", + "name": "开化县" + }, { + "code": "330825", + "name": "龙游县" + }, { + "code": "330881", + "name": "江山市" + }] + }, { + "code": "3309", + "name": "舟山市", + "children": [{ + "code": "330902", + "name": "定海区" + }, { + "code": "330903", + "name": "普陀区" + }, { + "code": "330921", + "name": "岱山县" + }, { + "code": "330922", + "name": "嵊泗县" + }] + }, { + "code": "3310", + "name": "台州市", + "children": [{ + "code": "331002", + "name": "椒江区" + }, { + "code": "331003", + "name": "黄岩区" + }, { + "code": "331004", + "name": "路桥区" + }, { + "code": "331022", + "name": "三门县" + }, { + "code": "331023", + "name": "天台县" + }, { + "code": "331024", + "name": "仙居县" + }, { + "code": "331081", + "name": "温岭市" + }, { + "code": "331082", + "name": "临海市" + }, { + "code": "331083", + "name": "玉环市" + }] + }, { + "code": "3311", + "name": "丽水市", + "children": [{ + "code": "331102", + "name": "莲都区" + }, { + "code": "331121", + "name": "青田县" + }, { + "code": "331122", + "name": "缙云县" + }, { + "code": "331123", + "name": "遂昌县" + }, { + "code": "331124", + "name": "松阳县" + }, { + "code": "331125", + "name": "云和县" + }, { + "code": "331126", + "name": "庆元县" + }, { + "code": "331127", + "name": "景宁畲族自治县" + }, { + "code": "331181", + "name": "龙泉市" + }] + }] +}, { + "code": "34", + "name": "安徽省", + "children": [{ + "code": "3401", + "name": "合肥市", + "children": [{ + "code": "340102", + "name": "瑶海区" + }, { + "code": "340103", + "name": "庐阳区" + }, { + "code": "340104", + "name": "蜀山区" + }, { + "code": "340111", + "name": "包河区" + }, { + "code": "340121", + "name": "长丰县" + }, { + "code": "340122", + "name": "肥东县" + }, { + "code": "340123", + "name": "肥西县" + }, { + "code": "340124", + "name": "庐江县" + }, { + "code": "340176", + "name": "合肥高新技术产业开发区" + }, { + "code": "340177", + "name": "合肥经济技术开发区" + }, { + "code": "340178", + "name": "合肥新站高新技术产业开发区" + }, { + "code": "340181", + "name": "巢湖市" + }] + }, { + "code": "3402", + "name": "芜湖市", + "children": [{ + "code": "340202", + "name": "镜湖区" + }, { + "code": "340207", + "name": "鸠江区" + }, { + "code": "340209", + "name": "弋江区" + }, { + "code": "340210", + "name": "湾沚区" + }, { + "code": "340212", + "name": "繁昌区" + }, { + "code": "340223", + "name": "南陵县" + }, { + "code": "340271", + "name": "芜湖经济技术开发区" + }, { + "code": "340272", + "name": "安徽芜湖三山经济开发区" + }, { + "code": "340281", + "name": "无为市" + }] + }, { + "code": "3403", + "name": "蚌埠市", + "children": [{ + "code": "340302", + "name": "龙子湖区" + }, { + "code": "340303", + "name": "蚌山区" + }, { + "code": "340304", + "name": "禹会区" + }, { + "code": "340311", + "name": "淮上区" + }, { + "code": "340321", + "name": "怀远县" + }, { + "code": "340322", + "name": "五河县" + }, { + "code": "340323", + "name": "固镇县" + }, { + "code": "340371", + "name": "蚌埠市高新技术开发区" + }, { + "code": "340372", + "name": "蚌埠市经济开发区" + }] + }, { + "code": "3404", + "name": "淮南市", + "children": [{ + "code": "340402", + "name": "大通区" + }, { + "code": "340403", + "name": "田家庵区" + }, { + "code": "340404", + "name": "谢家集区" + }, { + "code": "340405", + "name": "八公山区" + }, { + "code": "340406", + "name": "潘集区" + }, { + "code": "340421", + "name": "凤台县" + }, { + "code": "340422", + "name": "寿县" + }] + }, { + "code": "3405", + "name": "马鞍山市", + "children": [{ + "code": "340503", + "name": "花山区" + }, { + "code": "340504", + "name": "雨山区" + }, { + "code": "340506", + "name": "博望区" + }, { + "code": "340521", + "name": "当涂县" + }, { + "code": "340522", + "name": "含山县" + }, { + "code": "340523", + "name": "和县" + }] + }, { + "code": "3406", + "name": "淮北市", + "children": [{ + "code": "340602", + "name": "杜集区" + }, { + "code": "340603", + "name": "相山区" + }, { + "code": "340604", + "name": "烈山区" + }, { + "code": "340621", + "name": "濉溪县" + }] + }, { + "code": "3407", + "name": "铜陵市", + "children": [{ + "code": "340705", + "name": "铜官区" + }, { + "code": "340706", + "name": "义安区" + }, { + "code": "340711", + "name": "郊区" + }, { + "code": "340722", + "name": "枞阳县" + }] + }, { + "code": "3408", + "name": "安庆市", + "children": [{ + "code": "340802", + "name": "迎江区" + }, { + "code": "340803", + "name": "大观区" + }, { + "code": "340811", + "name": "宜秀区" + }, { + "code": "340822", + "name": "怀宁县" + }, { + "code": "340825", + "name": "太湖县" + }, { + "code": "340826", + "name": "宿松县" + }, { + "code": "340827", + "name": "望江县" + }, { + "code": "340828", + "name": "岳西县" + }, { + "code": "340871", + "name": "安徽安庆经济开发区" + }, { + "code": "340881", + "name": "桐城市" + }, { + "code": "340882", + "name": "潜山市" + }] + }, { + "code": "3410", + "name": "黄山市", + "children": [{ + "code": "341002", + "name": "屯溪区" + }, { + "code": "341003", + "name": "黄山区" + }, { + "code": "341004", + "name": "徽州区" + }, { + "code": "341021", + "name": "歙县" + }, { + "code": "341022", + "name": "休宁县" + }, { + "code": "341023", + "name": "黟县" + }, { + "code": "341024", + "name": "祁门县" + }] + }, { + "code": "3411", + "name": "滁州市", + "children": [{ + "code": "341102", + "name": "琅琊区" + }, { + "code": "341103", + "name": "南谯区" + }, { + "code": "341122", + "name": "来安县" + }, { + "code": "341124", + "name": "全椒县" + }, { + "code": "341125", + "name": "定远县" + }, { + "code": "341126", + "name": "凤阳县" + }, { + "code": "341171", + "name": "中新苏滁高新技术产业开发区" + }, { + "code": "341172", + "name": "滁州经济技术开发区" + }, { + "code": "341181", + "name": "天长市" + }, { + "code": "341182", + "name": "明光市" + }] + }, { + "code": "3412", + "name": "阜阳市", + "children": [{ + "code": "341202", + "name": "颍州区" + }, { + "code": "341203", + "name": "颍东区" + }, { + "code": "341204", + "name": "颍泉区" + }, { + "code": "341221", + "name": "临泉县" + }, { + "code": "341222", + "name": "太和县" + }, { + "code": "341225", + "name": "阜南县" + }, { + "code": "341226", + "name": "颍上县" + }, { + "code": "341271", + "name": "阜阳合肥现代产业园区" + }, { + "code": "341272", + "name": "阜阳经济技术开发区" + }, { + "code": "341282", + "name": "界首市" + }] + }, { + "code": "3413", + "name": "宿州市", + "children": [{ + "code": "341302", + "name": "埇桥区" + }, { + "code": "341321", + "name": "砀山县" + }, { + "code": "341322", + "name": "萧县" + }, { + "code": "341323", + "name": "灵璧县" + }, { + "code": "341324", + "name": "泗县" + }, { + "code": "341371", + "name": "宿州马鞍山现代产业园区" + }, { + "code": "341372", + "name": "宿州经济技术开发区" + }] + }, { + "code": "3415", + "name": "六安市", + "children": [{ + "code": "341502", + "name": "金安区" + }, { + "code": "341503", + "name": "裕安区" + }, { + "code": "341504", + "name": "叶集区" + }, { + "code": "341522", + "name": "霍邱县" + }, { + "code": "341523", + "name": "舒城县" + }, { + "code": "341524", + "name": "金寨县" + }, { + "code": "341525", + "name": "霍山县" + }] + }, { + "code": "3416", + "name": "亳州市", + "children": [{ + "code": "341602", + "name": "谯城区" + }, { + "code": "341621", + "name": "涡阳县" + }, { + "code": "341622", + "name": "蒙城县" + }, { + "code": "341623", + "name": "利辛县" + }] + }, { + "code": "3417", + "name": "池州市", + "children": [{ + "code": "341702", + "name": "贵池区" + }, { + "code": "341721", + "name": "东至县" + }, { + "code": "341722", + "name": "石台县" + }, { + "code": "341723", + "name": "青阳县" + }] + }, { + "code": "3418", + "name": "宣城市", + "children": [{ + "code": "341802", + "name": "宣州区" + }, { + "code": "341821", + "name": "郎溪县" + }, { + "code": "341823", + "name": "泾县" + }, { + "code": "341824", + "name": "绩溪县" + }, { + "code": "341825", + "name": "旌德县" + }, { + "code": "341871", + "name": "宣城市经济开发区" + }, { + "code": "341881", + "name": "宁国市" + }, { + "code": "341882", + "name": "广德市" + }] + }] +}, { + "code": "35", + "name": "福建省", + "children": [{ + "code": "3501", + "name": "福州市", + "children": [{ + "code": "350102", + "name": "鼓楼区" + }, { + "code": "350103", + "name": "台江区" + }, { + "code": "350104", + "name": "仓山区" + }, { + "code": "350105", + "name": "马尾区" + }, { + "code": "350111", + "name": "晋安区" + }, { + "code": "350112", + "name": "长乐区" + }, { + "code": "350121", + "name": "闽侯县" + }, { + "code": "350122", + "name": "连江县" + }, { + "code": "350123", + "name": "罗源县" + }, { + "code": "350124", + "name": "闽清县" + }, { + "code": "350125", + "name": "永泰县" + }, { + "code": "350128", + "name": "平潭县" + }, { + "code": "350181", + "name": "福清市" + }] + }, { + "code": "3502", + "name": "厦门市", + "children": [{ + "code": "350203", + "name": "思明区" + }, { + "code": "350205", + "name": "海沧区" + }, { + "code": "350206", + "name": "湖里区" + }, { + "code": "350211", + "name": "集美区" + }, { + "code": "350212", + "name": "同安区" + }, { + "code": "350213", + "name": "翔安区" + }] + }, { + "code": "3503", + "name": "莆田市", + "children": [{ + "code": "350302", + "name": "城厢区" + }, { + "code": "350303", + "name": "涵江区" + }, { + "code": "350304", + "name": "荔城区" + }, { + "code": "350305", + "name": "秀屿区" + }, { + "code": "350322", + "name": "仙游县" + }] + }, { + "code": "3504", + "name": "三明市", + "children": [{ + "code": "350404", + "name": "三元区" + }, { + "code": "350405", + "name": "沙县区" + }, { + "code": "350421", + "name": "明溪县" + }, { + "code": "350423", + "name": "清流县" + }, { + "code": "350424", + "name": "宁化县" + }, { + "code": "350425", + "name": "大田县" + }, { + "code": "350426", + "name": "尤溪县" + }, { + "code": "350428", + "name": "将乐县" + }, { + "code": "350429", + "name": "泰宁县" + }, { + "code": "350430", + "name": "建宁县" + }, { + "code": "350481", + "name": "永安市" + }] + }, { + "code": "3505", + "name": "泉州市", + "children": [{ + "code": "350502", + "name": "鲤城区" + }, { + "code": "350503", + "name": "丰泽区" + }, { + "code": "350504", + "name": "洛江区" + }, { + "code": "350505", + "name": "泉港区" + }, { + "code": "350521", + "name": "惠安县" + }, { + "code": "350524", + "name": "安溪县" + }, { + "code": "350525", + "name": "永春县" + }, { + "code": "350526", + "name": "德化县" + }, { + "code": "350527", + "name": "金门县" + }, { + "code": "350581", + "name": "石狮市" + }, { + "code": "350582", + "name": "晋江市" + }, { + "code": "350583", + "name": "南安市" + }] + }, { + "code": "3506", + "name": "漳州市", + "children": [{ + "code": "350602", + "name": "芗城区" + }, { + "code": "350603", + "name": "龙文区" + }, { + "code": "350604", + "name": "龙海区" + }, { + "code": "350605", + "name": "长泰区" + }, { + "code": "350622", + "name": "云霄县" + }, { + "code": "350623", + "name": "漳浦县" + }, { + "code": "350624", + "name": "诏安县" + }, { + "code": "350626", + "name": "东山县" + }, { + "code": "350627", + "name": "南靖县" + }, { + "code": "350628", + "name": "平和县" + }, { + "code": "350629", + "name": "华安县" + }] + }, { + "code": "3507", + "name": "南平市", + "children": [{ + "code": "350702", + "name": "延平区" + }, { + "code": "350703", + "name": "建阳区" + }, { + "code": "350721", + "name": "顺昌县" + }, { + "code": "350722", + "name": "浦城县" + }, { + "code": "350723", + "name": "光泽县" + }, { + "code": "350724", + "name": "松溪县" + }, { + "code": "350725", + "name": "政和县" + }, { + "code": "350781", + "name": "邵武市" + }, { + "code": "350782", + "name": "武夷山市" + }, { + "code": "350783", + "name": "建瓯市" + }] + }, { + "code": "3508", + "name": "龙岩市", + "children": [{ + "code": "350802", + "name": "新罗区" + }, { + "code": "350803", + "name": "永定区" + }, { + "code": "350821", + "name": "长汀县" + }, { + "code": "350823", + "name": "上杭县" + }, { + "code": "350824", + "name": "武平县" + }, { + "code": "350825", + "name": "连城县" + }, { + "code": "350881", + "name": "漳平市" + }] + }, { + "code": "3509", + "name": "宁德市", + "children": [{ + "code": "350902", + "name": "蕉城区" + }, { + "code": "350921", + "name": "霞浦县" + }, { + "code": "350922", + "name": "古田县" + }, { + "code": "350923", + "name": "屏南县" + }, { + "code": "350924", + "name": "寿宁县" + }, { + "code": "350925", + "name": "周宁县" + }, { + "code": "350926", + "name": "柘荣县" + }, { + "code": "350981", + "name": "福安市" + }, { + "code": "350982", + "name": "福鼎市" + }] + }] +}, { + "code": "36", + "name": "江西省", + "children": [{ + "code": "3601", + "name": "南昌市", + "children": [{ + "code": "360102", + "name": "东湖区" + }, { + "code": "360103", + "name": "西湖区" + }, { + "code": "360104", + "name": "青云谱区" + }, { + "code": "360111", + "name": "青山湖区" + }, { + "code": "360112", + "name": "新建区" + }, { + "code": "360113", + "name": "红谷滩区" + }, { + "code": "360121", + "name": "南昌县" + }, { + "code": "360123", + "name": "安义县" + }, { + "code": "360124", + "name": "进贤县" + }] + }, { + "code": "3602", + "name": "景德镇市", + "children": [{ + "code": "360202", + "name": "昌江区" + }, { + "code": "360203", + "name": "珠山区" + }, { + "code": "360222", + "name": "浮梁县" + }, { + "code": "360281", + "name": "乐平市" + }] + }, { + "code": "3603", + "name": "萍乡市", + "children": [{ + "code": "360302", + "name": "安源区" + }, { + "code": "360313", + "name": "湘东区" + }, { + "code": "360321", + "name": "莲花县" + }, { + "code": "360322", + "name": "上栗县" + }, { + "code": "360323", + "name": "芦溪县" + }] + }, { + "code": "3604", + "name": "九江市", + "children": [{ + "code": "360402", + "name": "濂溪区" + }, { + "code": "360403", + "name": "浔阳区" + }, { + "code": "360404", + "name": "柴桑区" + }, { + "code": "360423", + "name": "武宁县" + }, { + "code": "360424", + "name": "修水县" + }, { + "code": "360425", + "name": "永修县" + }, { + "code": "360426", + "name": "德安县" + }, { + "code": "360428", + "name": "都昌县" + }, { + "code": "360429", + "name": "湖口县" + }, { + "code": "360430", + "name": "彭泽县" + }, { + "code": "360481", + "name": "瑞昌市" + }, { + "code": "360482", + "name": "共青城市" + }, { + "code": "360483", + "name": "庐山市" + }] + }, { + "code": "3605", + "name": "新余市", + "children": [{ + "code": "360502", + "name": "渝水区" + }, { + "code": "360521", + "name": "分宜县" + }] + }, { + "code": "3606", + "name": "鹰潭市", + "children": [{ + "code": "360602", + "name": "月湖区" + }, { + "code": "360603", + "name": "余江区" + }, { + "code": "360681", + "name": "贵溪市" + }] + }, { + "code": "3607", + "name": "赣州市", + "children": [{ + "code": "360702", + "name": "章贡区" + }, { + "code": "360703", + "name": "南康区" + }, { + "code": "360704", + "name": "赣县区" + }, { + "code": "360722", + "name": "信丰县" + }, { + "code": "360723", + "name": "大余县" + }, { + "code": "360724", + "name": "上犹县" + }, { + "code": "360725", + "name": "崇义县" + }, { + "code": "360726", + "name": "安远县" + }, { + "code": "360728", + "name": "定南县" + }, { + "code": "360729", + "name": "全南县" + }, { + "code": "360730", + "name": "宁都县" + }, { + "code": "360731", + "name": "于都县" + }, { + "code": "360732", + "name": "兴国县" + }, { + "code": "360733", + "name": "会昌县" + }, { + "code": "360734", + "name": "寻乌县" + }, { + "code": "360735", + "name": "石城县" + }, { + "code": "360781", + "name": "瑞金市" + }, { + "code": "360783", + "name": "龙南市" + }] + }, { + "code": "3608", + "name": "吉安市", + "children": [{ + "code": "360802", + "name": "吉州区" + }, { + "code": "360803", + "name": "青原区" + }, { + "code": "360821", + "name": "吉安县" + }, { + "code": "360822", + "name": "吉水县" + }, { + "code": "360823", + "name": "峡江县" + }, { + "code": "360824", + "name": "新干县" + }, { + "code": "360825", + "name": "永丰县" + }, { + "code": "360826", + "name": "泰和县" + }, { + "code": "360827", + "name": "遂川县" + }, { + "code": "360828", + "name": "万安县" + }, { + "code": "360829", + "name": "安福县" + }, { + "code": "360830", + "name": "永新县" + }, { + "code": "360881", + "name": "井冈山市" + }] + }, { + "code": "3609", + "name": "宜春市", + "children": [{ + "code": "360902", + "name": "袁州区" + }, { + "code": "360921", + "name": "奉新县" + }, { + "code": "360922", + "name": "万载县" + }, { + "code": "360923", + "name": "上高县" + }, { + "code": "360924", + "name": "宜丰县" + }, { + "code": "360925", + "name": "靖安县" + }, { + "code": "360926", + "name": "铜鼓县" + }, { + "code": "360981", + "name": "丰城市" + }, { + "code": "360982", + "name": "樟树市" + }, { + "code": "360983", + "name": "高安市" + }] + }, { + "code": "3610", + "name": "抚州市", + "children": [{ + "code": "361002", + "name": "临川区" + }, { + "code": "361003", + "name": "东乡区" + }, { + "code": "361021", + "name": "南城县" + }, { + "code": "361022", + "name": "黎川县" + }, { + "code": "361023", + "name": "南丰县" + }, { + "code": "361024", + "name": "崇仁县" + }, { + "code": "361025", + "name": "乐安县" + }, { + "code": "361026", + "name": "宜黄县" + }, { + "code": "361027", + "name": "金溪县" + }, { + "code": "361028", + "name": "资溪县" + }, { + "code": "361030", + "name": "广昌县" + }] + }, { + "code": "3611", + "name": "上饶市", + "children": [{ + "code": "361102", + "name": "信州区" + }, { + "code": "361103", + "name": "广丰区" + }, { + "code": "361104", + "name": "广信区" + }, { + "code": "361123", + "name": "玉山县" + }, { + "code": "361124", + "name": "铅山县" + }, { + "code": "361125", + "name": "横峰县" + }, { + "code": "361126", + "name": "弋阳县" + }, { + "code": "361127", + "name": "余干县" + }, { + "code": "361128", + "name": "鄱阳县" + }, { + "code": "361129", + "name": "万年县" + }, { + "code": "361130", + "name": "婺源县" + }, { + "code": "361181", + "name": "德兴市" + }] + }] +}, { + "code": "37", + "name": "山东省", + "children": [{ + "code": "3701", + "name": "济南市", + "children": [{ + "code": "370102", + "name": "历下区" + }, { + "code": "370103", + "name": "市中区" + }, { + "code": "370104", + "name": "槐荫区" + }, { + "code": "370105", + "name": "天桥区" + }, { + "code": "370112", + "name": "历城区" + }, { + "code": "370113", + "name": "长清区" + }, { + "code": "370114", + "name": "章丘区" + }, { + "code": "370115", + "name": "济阳区" + }, { + "code": "370116", + "name": "莱芜区" + }, { + "code": "370117", + "name": "钢城区" + }, { + "code": "370124", + "name": "平阴县" + }, { + "code": "370126", + "name": "商河县" + }, { + "code": "370176", + "name": "济南高新技术产业开发区" + }] + }, { + "code": "3702", + "name": "青岛市", + "children": [{ + "code": "370202", + "name": "市南区" + }, { + "code": "370203", + "name": "市北区" + }, { + "code": "370211", + "name": "黄岛区" + }, { + "code": "370212", + "name": "崂山区" + }, { + "code": "370213", + "name": "李沧区" + }, { + "code": "370214", + "name": "城阳区" + }, { + "code": "370215", + "name": "即墨区" + }, { + "code": "370281", + "name": "胶州市" + }, { + "code": "370283", + "name": "平度市" + }, { + "code": "370285", + "name": "莱西市" + }] + }, { + "code": "3703", + "name": "淄博市", + "children": [{ + "code": "370302", + "name": "淄川区" + }, { + "code": "370303", + "name": "张店区" + }, { + "code": "370304", + "name": "博山区" + }, { + "code": "370305", + "name": "临淄区" + }, { + "code": "370306", + "name": "周村区" + }, { + "code": "370321", + "name": "桓台县" + }, { + "code": "370322", + "name": "高青县" + }, { + "code": "370323", + "name": "沂源县" + }] + }, { + "code": "3704", + "name": "枣庄市", + "children": [{ + "code": "370402", + "name": "市中区" + }, { + "code": "370403", + "name": "薛城区" + }, { + "code": "370404", + "name": "峄城区" + }, { + "code": "370405", + "name": "台儿庄区" + }, { + "code": "370406", + "name": "山亭区" + }, { + "code": "370481", + "name": "滕州市" + }] + }, { + "code": "3705", + "name": "东营市", + "children": [{ + "code": "370502", + "name": "东营区" + }, { + "code": "370503", + "name": "河口区" + }, { + "code": "370505", + "name": "垦利区" + }, { + "code": "370522", + "name": "利津县" + }, { + "code": "370523", + "name": "广饶县" + }, { + "code": "370571", + "name": "东营经济技术开发区" + }, { + "code": "370572", + "name": "东营港经济开发区" + }] + }, { + "code": "3706", + "name": "烟台市", + "children": [{ + "code": "370602", + "name": "芝罘区" + }, { + "code": "370611", + "name": "福山区" + }, { + "code": "370612", + "name": "牟平区" + }, { + "code": "370613", + "name": "莱山区" + }, { + "code": "370614", + "name": "蓬莱区" + }, { + "code": "370671", + "name": "烟台高新技术产业开发区" + }, { + "code": "370676", + "name": "烟台经济技术开发区" + }, { + "code": "370681", + "name": "龙口市" + }, { + "code": "370682", + "name": "莱阳市" + }, { + "code": "370683", + "name": "莱州市" + }, { + "code": "370685", + "name": "招远市" + }, { + "code": "370686", + "name": "栖霞市" + }, { + "code": "370687", + "name": "海阳市" + }] + }, { + "code": "3707", + "name": "潍坊市", + "children": [{ + "code": "370702", + "name": "潍城区" + }, { + "code": "370703", + "name": "寒亭区" + }, { + "code": "370704", + "name": "坊子区" + }, { + "code": "370705", + "name": "奎文区" + }, { + "code": "370724", + "name": "临朐县" + }, { + "code": "370725", + "name": "昌乐县" + }, { + "code": "370772", + "name": "潍坊滨海经济技术开发区" + }, { + "code": "370781", + "name": "青州市" + }, { + "code": "370782", + "name": "诸城市" + }, { + "code": "370783", + "name": "寿光市" + }, { + "code": "370784", + "name": "安丘市" + }, { + "code": "370785", + "name": "高密市" + }, { + "code": "370786", + "name": "昌邑市" + }] + }, { + "code": "3708", + "name": "济宁市", + "children": [{ + "code": "370811", + "name": "任城区" + }, { + "code": "370812", + "name": "兖州区" + }, { + "code": "370826", + "name": "微山县" + }, { + "code": "370827", + "name": "鱼台县" + }, { + "code": "370828", + "name": "金乡县" + }, { + "code": "370829", + "name": "嘉祥县" + }, { + "code": "370830", + "name": "汶上县" + }, { + "code": "370831", + "name": "泗水县" + }, { + "code": "370832", + "name": "梁山县" + }, { + "code": "370871", + "name": "济宁高新技术产业开发区" + }, { + "code": "370881", + "name": "曲阜市" + }, { + "code": "370883", + "name": "邹城市" + }] + }, { + "code": "3709", + "name": "泰安市", + "children": [{ + "code": "370902", + "name": "泰山区" + }, { + "code": "370911", + "name": "岱岳区" + }, { + "code": "370921", + "name": "宁阳县" + }, { + "code": "370923", + "name": "东平县" + }, { + "code": "370982", + "name": "新泰市" + }, { + "code": "370983", + "name": "肥城市" + }] + }, { + "code": "3710", + "name": "威海市", + "children": [{ + "code": "371002", + "name": "环翠区" + }, { + "code": "371003", + "name": "文登区" + }, { + "code": "371071", + "name": "威海火炬高技术产业开发区" + }, { + "code": "371072", + "name": "威海经济技术开发区" + }, { + "code": "371073", + "name": "威海临港经济技术开发区" + }, { + "code": "371082", + "name": "荣成市" + }, { + "code": "371083", + "name": "乳山市" + }] + }, { + "code": "3711", + "name": "日照市", + "children": [{ + "code": "371102", + "name": "东港区" + }, { + "code": "371103", + "name": "岚山区" + }, { + "code": "371121", + "name": "五莲县" + }, { + "code": "371122", + "name": "莒县" + }, { + "code": "371171", + "name": "日照经济技术开发区" + }] + }, { + "code": "3713", + "name": "临沂市", + "children": [{ + "code": "371302", + "name": "兰山区" + }, { + "code": "371311", + "name": "罗庄区" + }, { + "code": "371312", + "name": "河东区" + }, { + "code": "371321", + "name": "沂南县" + }, { + "code": "371322", + "name": "郯城县" + }, { + "code": "371323", + "name": "沂水县" + }, { + "code": "371324", + "name": "兰陵县" + }, { + "code": "371325", + "name": "费县" + }, { + "code": "371326", + "name": "平邑县" + }, { + "code": "371327", + "name": "莒南县" + }, { + "code": "371328", + "name": "蒙阴县" + }, { + "code": "371329", + "name": "临沭县" + }, { + "code": "371371", + "name": "临沂高新技术产业开发区" + }] + }, { + "code": "3714", + "name": "德州市", + "children": [{ + "code": "371402", + "name": "德城区" + }, { + "code": "371403", + "name": "陵城区" + }, { + "code": "371422", + "name": "宁津县" + }, { + "code": "371423", + "name": "庆云县" + }, { + "code": "371424", + "name": "临邑县" + }, { + "code": "371425", + "name": "齐河县" + }, { + "code": "371426", + "name": "平原县" + }, { + "code": "371427", + "name": "夏津县" + }, { + "code": "371428", + "name": "武城县" + }, { + "code": "371471", + "name": "德州天衢新区" + }, { + "code": "371481", + "name": "乐陵市" + }, { + "code": "371482", + "name": "禹城市" + }] + }, { + "code": "3715", + "name": "聊城市", + "children": [{ + "code": "371502", + "name": "东昌府区" + }, { + "code": "371503", + "name": "茌平区" + }, { + "code": "371521", + "name": "阳谷县" + }, { + "code": "371522", + "name": "莘县" + }, { + "code": "371524", + "name": "东阿县" + }, { + "code": "371525", + "name": "冠县" + }, { + "code": "371526", + "name": "高唐县" + }, { + "code": "371581", + "name": "临清市" + }] + }, { + "code": "3716", + "name": "滨州市", + "children": [{ + "code": "371602", + "name": "滨城区" + }, { + "code": "371603", + "name": "沾化区" + }, { + "code": "371621", + "name": "惠民县" + }, { + "code": "371622", + "name": "阳信县" + }, { + "code": "371623", + "name": "无棣县" + }, { + "code": "371625", + "name": "博兴县" + }, { + "code": "371681", + "name": "邹平市" + }] + }, { + "code": "3717", + "name": "菏泽市", + "children": [{ + "code": "371702", + "name": "牡丹区" + }, { + "code": "371703", + "name": "定陶区" + }, { + "code": "371721", + "name": "曹县" + }, { + "code": "371722", + "name": "单县" + }, { + "code": "371723", + "name": "成武县" + }, { + "code": "371724", + "name": "巨野县" + }, { + "code": "371725", + "name": "郓城县" + }, { + "code": "371726", + "name": "鄄城县" + }, { + "code": "371728", + "name": "东明县" + }, { + "code": "371771", + "name": "菏泽经济技术开发区" + }, { + "code": "371772", + "name": "菏泽高新技术开发区" + }] + }] +}, { + "code": "41", + "name": "河南省", + "children": [{ + "code": "4101", + "name": "郑州市", + "children": [{ + "code": "410102", + "name": "中原区" + }, { + "code": "410103", + "name": "二七区" + }, { + "code": "410104", + "name": "管城回族区" + }, { + "code": "410105", + "name": "金水区" + }, { + "code": "410106", + "name": "上街区" + }, { + "code": "410108", + "name": "惠济区" + }, { + "code": "410122", + "name": "中牟县" + }, { + "code": "410171", + "name": "郑州经济技术开发区" + }, { + "code": "410172", + "name": "郑州高新技术产业开发区" + }, { + "code": "410173", + "name": "郑州航空港经济综合实验区" + }, { + "code": "410181", + "name": "巩义市" + }, { + "code": "410182", + "name": "荥阳市" + }, { + "code": "410183", + "name": "新密市" + }, { + "code": "410184", + "name": "新郑市" + }, { + "code": "410185", + "name": "登封市" + }] + }, { + "code": "4102", + "name": "开封市", + "children": [{ + "code": "410202", + "name": "龙亭区" + }, { + "code": "410203", + "name": "顺河回族区" + }, { + "code": "410204", + "name": "鼓楼区" + }, { + "code": "410205", + "name": "禹王台区" + }, { + "code": "410212", + "name": "祥符区" + }, { + "code": "410221", + "name": "杞县" + }, { + "code": "410222", + "name": "通许县" + }, { + "code": "410223", + "name": "尉氏县" + }, { + "code": "410225", + "name": "兰考县" + }] + }, { + "code": "4103", + "name": "洛阳市", + "children": [{ + "code": "410302", + "name": "老城区" + }, { + "code": "410303", + "name": "西工区" + }, { + "code": "410304", + "name": "瀍河回族区" + }, { + "code": "410305", + "name": "涧西区" + }, { + "code": "410307", + "name": "偃师区" + }, { + "code": "410308", + "name": "孟津区" + }, { + "code": "410311", + "name": "洛龙区" + }, { + "code": "410323", + "name": "新安县" + }, { + "code": "410324", + "name": "栾川县" + }, { + "code": "410325", + "name": "嵩县" + }, { + "code": "410326", + "name": "汝阳县" + }, { + "code": "410327", + "name": "宜阳县" + }, { + "code": "410328", + "name": "洛宁县" + }, { + "code": "410329", + "name": "伊川县" + }, { + "code": "410371", + "name": "洛阳高新技术产业开发区" + }] + }, { + "code": "4104", + "name": "平顶山市", + "children": [{ + "code": "410402", + "name": "新华区" + }, { + "code": "410403", + "name": "卫东区" + }, { + "code": "410404", + "name": "石龙区" + }, { + "code": "410411", + "name": "湛河区" + }, { + "code": "410421", + "name": "宝丰县" + }, { + "code": "410422", + "name": "叶县" + }, { + "code": "410423", + "name": "鲁山县" + }, { + "code": "410425", + "name": "郏县" + }, { + "code": "410471", + "name": "平顶山高新技术产业开发区" + }, { + "code": "410472", + "name": "平顶山市城乡一体化示范区" + }, { + "code": "410481", + "name": "舞钢市" + }, { + "code": "410482", + "name": "汝州市" + }] + }, { + "code": "4105", + "name": "安阳市", + "children": [{ + "code": "410502", + "name": "文峰区" + }, { + "code": "410503", + "name": "北关区" + }, { + "code": "410505", + "name": "殷都区" + }, { + "code": "410506", + "name": "龙安区" + }, { + "code": "410522", + "name": "安阳县" + }, { + "code": "410523", + "name": "汤阴县" + }, { + "code": "410526", + "name": "滑县" + }, { + "code": "410527", + "name": "内黄县" + }, { + "code": "410571", + "name": "安阳高新技术产业开发区" + }, { + "code": "410581", + "name": "林州市" + }] + }, { + "code": "4106", + "name": "鹤壁市", + "children": [{ + "code": "410602", + "name": "鹤山区" + }, { + "code": "410603", + "name": "山城区" + }, { + "code": "410611", + "name": "淇滨区" + }, { + "code": "410621", + "name": "浚县" + }, { + "code": "410622", + "name": "淇县" + }, { + "code": "410671", + "name": "鹤壁经济技术开发区" + }] + }, { + "code": "4107", + "name": "新乡市", + "children": [{ + "code": "410702", + "name": "红旗区" + }, { + "code": "410703", + "name": "卫滨区" + }, { + "code": "410704", + "name": "凤泉区" + }, { + "code": "410711", + "name": "牧野区" + }, { + "code": "410721", + "name": "新乡县" + }, { + "code": "410724", + "name": "获嘉县" + }, { + "code": "410725", + "name": "原阳县" + }, { + "code": "410726", + "name": "延津县" + }, { + "code": "410727", + "name": "封丘县" + }, { + "code": "410771", + "name": "新乡高新技术产业开发区" + }, { + "code": "410772", + "name": "新乡经济技术开发区" + }, { + "code": "410773", + "name": "新乡市平原城乡一体化示范区" + }, { + "code": "410781", + "name": "卫辉市" + }, { + "code": "410782", + "name": "辉县市" + }, { + "code": "410783", + "name": "长垣市" + }] + }, { + "code": "4108", + "name": "焦作市", + "children": [{ + "code": "410802", + "name": "解放区" + }, { + "code": "410803", + "name": "中站区" + }, { + "code": "410804", + "name": "马村区" + }, { + "code": "410811", + "name": "山阳区" + }, { + "code": "410821", + "name": "修武县" + }, { + "code": "410822", + "name": "博爱县" + }, { + "code": "410823", + "name": "武陟县" + }, { + "code": "410825", + "name": "温县" + }, { + "code": "410871", + "name": "焦作城乡一体化示范区" + }, { + "code": "410882", + "name": "沁阳市" + }, { + "code": "410883", + "name": "孟州市" + }] + }, { + "code": "4109", + "name": "濮阳市", + "children": [{ + "code": "410902", + "name": "华龙区" + }, { + "code": "410922", + "name": "清丰县" + }, { + "code": "410923", + "name": "南乐县" + }, { + "code": "410926", + "name": "范县" + }, { + "code": "410927", + "name": "台前县" + }, { + "code": "410928", + "name": "濮阳县" + }, { + "code": "410971", + "name": "河南濮阳工业园区" + }, { + "code": "410972", + "name": "濮阳经济技术开发区" + }] + }, { + "code": "4110", + "name": "许昌市", + "children": [{ + "code": "411002", + "name": "魏都区" + }, { + "code": "411003", + "name": "建安区" + }, { + "code": "411024", + "name": "鄢陵县" + }, { + "code": "411025", + "name": "襄城县" + }, { + "code": "411071", + "name": "许昌经济技术开发区" + }, { + "code": "411081", + "name": "禹州市" + }, { + "code": "411082", + "name": "长葛市" + }] + }, { + "code": "4111", + "name": "漯河市", + "children": [{ + "code": "411102", + "name": "源汇区" + }, { + "code": "411103", + "name": "郾城区" + }, { + "code": "411104", + "name": "召陵区" + }, { + "code": "411121", + "name": "舞阳县" + }, { + "code": "411122", + "name": "临颍县" + }, { + "code": "411171", + "name": "漯河经济技术开发区" + }] + }, { + "code": "4112", + "name": "三门峡市", + "children": [{ + "code": "411202", + "name": "湖滨区" + }, { + "code": "411203", + "name": "陕州区" + }, { + "code": "411221", + "name": "渑池县" + }, { + "code": "411224", + "name": "卢氏县" + }, { + "code": "411271", + "name": "河南三门峡经济开发区" + }, { + "code": "411281", + "name": "义马市" + }, { + "code": "411282", + "name": "灵宝市" + }] + }, { + "code": "4113", + "name": "南阳市", + "children": [{ + "code": "411302", + "name": "宛城区" + }, { + "code": "411303", + "name": "卧龙区" + }, { + "code": "411321", + "name": "南召县" + }, { + "code": "411322", + "name": "方城县" + }, { + "code": "411323", + "name": "西峡县" + }, { + "code": "411324", + "name": "镇平县" + }, { + "code": "411325", + "name": "内乡县" + }, { + "code": "411326", + "name": "淅川县" + }, { + "code": "411327", + "name": "社旗县" + }, { + "code": "411328", + "name": "唐河县" + }, { + "code": "411329", + "name": "新野县" + }, { + "code": "411330", + "name": "桐柏县" + }, { + "code": "411371", + "name": "南阳高新技术产业开发区" + }, { + "code": "411372", + "name": "南阳市城乡一体化示范区" + }, { + "code": "411381", + "name": "邓州市" + }] + }, { + "code": "4114", + "name": "商丘市", + "children": [{ + "code": "411402", + "name": "梁园区" + }, { + "code": "411403", + "name": "睢阳区" + }, { + "code": "411421", + "name": "民权县" + }, { + "code": "411422", + "name": "睢县" + }, { + "code": "411423", + "name": "宁陵县" + }, { + "code": "411424", + "name": "柘城县" + }, { + "code": "411425", + "name": "虞城县" + }, { + "code": "411426", + "name": "夏邑县" + }, { + "code": "411471", + "name": "豫东综合物流产业聚集区" + }, { + "code": "411472", + "name": "河南商丘经济开发区" + }, { + "code": "411481", + "name": "永城市" + }] + }, { + "code": "4115", + "name": "信阳市", + "children": [{ + "code": "411502", + "name": "浉河区" + }, { + "code": "411503", + "name": "平桥区" + }, { + "code": "411521", + "name": "罗山县" + }, { + "code": "411522", + "name": "光山县" + }, { + "code": "411523", + "name": "新县" + }, { + "code": "411524", + "name": "商城县" + }, { + "code": "411525", + "name": "固始县" + }, { + "code": "411526", + "name": "潢川县" + }, { + "code": "411527", + "name": "淮滨县" + }, { + "code": "411528", + "name": "息县" + }, { + "code": "411571", + "name": "信阳高新技术产业开发区" + }] + }, { + "code": "4116", + "name": "周口市", + "children": [{ + "code": "411602", + "name": "川汇区" + }, { + "code": "411603", + "name": "淮阳区" + }, { + "code": "411621", + "name": "扶沟县" + }, { + "code": "411622", + "name": "西华县" + }, { + "code": "411623", + "name": "商水县" + }, { + "code": "411624", + "name": "沈丘县" + }, { + "code": "411625", + "name": "郸城县" + }, { + "code": "411627", + "name": "太康县" + }, { + "code": "411628", + "name": "鹿邑县" + }, { + "code": "411671", + "name": "周口临港开发区" + }, { + "code": "411681", + "name": "项城市" + }] + }, { + "code": "4117", + "name": "驻马店市", + "children": [{ + "code": "411702", + "name": "驿城区" + }, { + "code": "411721", + "name": "西平县" + }, { + "code": "411722", + "name": "上蔡县" + }, { + "code": "411723", + "name": "平舆县" + }, { + "code": "411724", + "name": "正阳县" + }, { + "code": "411725", + "name": "确山县" + }, { + "code": "411726", + "name": "泌阳县" + }, { + "code": "411727", + "name": "汝南县" + }, { + "code": "411728", + "name": "遂平县" + }, { + "code": "411729", + "name": "新蔡县" + }, { + "code": "411771", + "name": "河南驻马店经济开发区" + }] + }, { + "code": "4190", + "name": "省直辖县级行政区划", + "children": [{ + "code": "419001", + "name": "济源市" + }] + }] +}, { + "code": "42", + "name": "湖北省", + "children": [{ + "code": "4201", + "name": "武汉市", + "children": [{ + "code": "420102", + "name": "江岸区" + }, { + "code": "420103", + "name": "江汉区" + }, { + "code": "420104", + "name": "硚口区" + }, { + "code": "420105", + "name": "汉阳区" + }, { + "code": "420106", + "name": "武昌区" + }, { + "code": "420107", + "name": "青山区" + }, { + "code": "420111", + "name": "洪山区" + }, { + "code": "420112", + "name": "东西湖区" + }, { + "code": "420113", + "name": "汉南区" + }, { + "code": "420114", + "name": "蔡甸区" + }, { + "code": "420115", + "name": "江夏区" + }, { + "code": "420116", + "name": "黄陂区" + }, { + "code": "420117", + "name": "新洲区" + }] + }, { + "code": "4202", + "name": "黄石市", + "children": [{ + "code": "420202", + "name": "黄石港区" + }, { + "code": "420203", + "name": "西塞山区" + }, { + "code": "420204", + "name": "下陆区" + }, { + "code": "420205", + "name": "铁山区" + }, { + "code": "420222", + "name": "阳新县" + }, { + "code": "420281", + "name": "大冶市" + }] + }, { + "code": "4203", + "name": "十堰市", + "children": [{ + "code": "420302", + "name": "茅箭区" + }, { + "code": "420303", + "name": "张湾区" + }, { + "code": "420304", + "name": "郧阳区" + }, { + "code": "420322", + "name": "郧西县" + }, { + "code": "420323", + "name": "竹山县" + }, { + "code": "420324", + "name": "竹溪县" + }, { + "code": "420325", + "name": "房县" + }, { + "code": "420381", + "name": "丹江口市" + }] + }, { + "code": "4205", + "name": "宜昌市", + "children": [{ + "code": "420502", + "name": "西陵区" + }, { + "code": "420503", + "name": "伍家岗区" + }, { + "code": "420504", + "name": "点军区" + }, { + "code": "420505", + "name": "猇亭区" + }, { + "code": "420506", + "name": "夷陵区" + }, { + "code": "420525", + "name": "远安县" + }, { + "code": "420526", + "name": "兴山县" + }, { + "code": "420527", + "name": "秭归县" + }, { + "code": "420528", + "name": "长阳土家族自治县" + }, { + "code": "420529", + "name": "五峰土家族自治县" + }, { + "code": "420581", + "name": "宜都市" + }, { + "code": "420582", + "name": "当阳市" + }, { + "code": "420583", + "name": "枝江市" + }] + }, { + "code": "4206", + "name": "襄阳市", + "children": [{ + "code": "420602", + "name": "襄城区" + }, { + "code": "420606", + "name": "樊城区" + }, { + "code": "420607", + "name": "襄州区" + }, { + "code": "420624", + "name": "南漳县" + }, { + "code": "420625", + "name": "谷城县" + }, { + "code": "420626", + "name": "保康县" + }, { + "code": "420682", + "name": "老河口市" + }, { + "code": "420683", + "name": "枣阳市" + }, { + "code": "420684", + "name": "宜城市" + }] + }, { + "code": "4207", + "name": "鄂州市", + "children": [{ + "code": "420702", + "name": "梁子湖区" + }, { + "code": "420703", + "name": "华容区" + }, { + "code": "420704", + "name": "鄂城区" + }] + }, { + "code": "4208", + "name": "荆门市", + "children": [{ + "code": "420802", + "name": "东宝区" + }, { + "code": "420804", + "name": "掇刀区" + }, { + "code": "420822", + "name": "沙洋县" + }, { + "code": "420881", + "name": "钟祥市" + }, { + "code": "420882", + "name": "京山市" + }] + }, { + "code": "4209", + "name": "孝感市", + "children": [{ + "code": "420902", + "name": "孝南区" + }, { + "code": "420921", + "name": "孝昌县" + }, { + "code": "420922", + "name": "大悟县" + }, { + "code": "420923", + "name": "云梦县" + }, { + "code": "420981", + "name": "应城市" + }, { + "code": "420982", + "name": "安陆市" + }, { + "code": "420984", + "name": "汉川市" + }] + }, { + "code": "4210", + "name": "荆州市", + "children": [{ + "code": "421002", + "name": "沙市区" + }, { + "code": "421003", + "name": "荆州区" + }, { + "code": "421022", + "name": "公安县" + }, { + "code": "421024", + "name": "江陵县" + }, { + "code": "421071", + "name": "荆州经济技术开发区" + }, { + "code": "421081", + "name": "石首市" + }, { + "code": "421083", + "name": "洪湖市" + }, { + "code": "421087", + "name": "松滋市" + }, { + "code": "421088", + "name": "监利市" + }] + }, { + "code": "4211", + "name": "黄冈市", + "children": [{ + "code": "421102", + "name": "黄州区" + }, { + "code": "421121", + "name": "团风县" + }, { + "code": "421122", + "name": "红安县" + }, { + "code": "421123", + "name": "罗田县" + }, { + "code": "421124", + "name": "英山县" + }, { + "code": "421125", + "name": "浠水县" + }, { + "code": "421126", + "name": "蕲春县" + }, { + "code": "421127", + "name": "黄梅县" + }, { + "code": "421171", + "name": "龙感湖管理区" + }, { + "code": "421181", + "name": "麻城市" + }, { + "code": "421182", + "name": "武穴市" + }] + }, { + "code": "4212", + "name": "咸宁市", + "children": [{ + "code": "421202", + "name": "咸安区" + }, { + "code": "421221", + "name": "嘉鱼县" + }, { + "code": "421222", + "name": "通城县" + }, { + "code": "421223", + "name": "崇阳县" + }, { + "code": "421224", + "name": "通山县" + }, { + "code": "421281", + "name": "赤壁市" + }] + }, { + "code": "4213", + "name": "随州市", + "children": [{ + "code": "421303", + "name": "曾都区" + }, { + "code": "421321", + "name": "随县" + }, { + "code": "421381", + "name": "广水市" + }] + }, { + "code": "4228", + "name": "恩施土家族苗族自治州", + "children": [{ + "code": "422801", + "name": "恩施市" + }, { + "code": "422802", + "name": "利川市" + }, { + "code": "422822", + "name": "建始县" + }, { + "code": "422823", + "name": "巴东县" + }, { + "code": "422825", + "name": "宣恩县" + }, { + "code": "422826", + "name": "咸丰县" + }, { + "code": "422827", + "name": "来凤县" + }, { + "code": "422828", + "name": "鹤峰县" + }] + }, { + "code": "4290", + "name": "省直辖县级行政区划", + "children": [{ + "code": "429004", + "name": "仙桃市" + }, { + "code": "429005", + "name": "潜江市" + }, { + "code": "429006", + "name": "天门市" + }, { + "code": "429021", + "name": "神农架林区" + }] + }] +}, { + "code": "43", + "name": "湖南省", + "children": [{ + "code": "4301", + "name": "长沙市", + "children": [{ + "code": "430102", + "name": "芙蓉区" + }, { + "code": "430103", + "name": "天心区" + }, { + "code": "430104", + "name": "岳麓区" + }, { + "code": "430105", + "name": "开福区" + }, { + "code": "430111", + "name": "雨花区" + }, { + "code": "430112", + "name": "望城区" + }, { + "code": "430121", + "name": "长沙县" + }, { + "code": "430181", + "name": "浏阳市" + }, { + "code": "430182", + "name": "宁乡市" + }] + }, { + "code": "4302", + "name": "株洲市", + "children": [{ + "code": "430202", + "name": "荷塘区" + }, { + "code": "430203", + "name": "芦淞区" + }, { + "code": "430204", + "name": "石峰区" + }, { + "code": "430211", + "name": "天元区" + }, { + "code": "430212", + "name": "渌口区" + }, { + "code": "430223", + "name": "攸县" + }, { + "code": "430224", + "name": "茶陵县" + }, { + "code": "430225", + "name": "炎陵县" + }, { + "code": "430281", + "name": "醴陵市" + }] + }, { + "code": "4303", + "name": "湘潭市", + "children": [{ + "code": "430302", + "name": "雨湖区" + }, { + "code": "430304", + "name": "岳塘区" + }, { + "code": "430321", + "name": "湘潭县" + }, { + "code": "430371", + "name": "湖南湘潭高新技术产业园区" + }, { + "code": "430372", + "name": "湘潭昭山示范区" + }, { + "code": "430373", + "name": "湘潭九华示范区" + }, { + "code": "430381", + "name": "湘乡市" + }, { + "code": "430382", + "name": "韶山市" + }] + }, { + "code": "4304", + "name": "衡阳市", + "children": [{ + "code": "430405", + "name": "珠晖区" + }, { + "code": "430406", + "name": "雁峰区" + }, { + "code": "430407", + "name": "石鼓区" + }, { + "code": "430408", + "name": "蒸湘区" + }, { + "code": "430412", + "name": "南岳区" + }, { + "code": "430421", + "name": "衡阳县" + }, { + "code": "430422", + "name": "衡南县" + }, { + "code": "430423", + "name": "衡山县" + }, { + "code": "430424", + "name": "衡东县" + }, { + "code": "430426", + "name": "祁东县" + }, { + "code": "430473", + "name": "湖南衡阳松木经济开发区" + }, { + "code": "430476", + "name": "湖南衡阳高新技术产业园区" + }, { + "code": "430481", + "name": "耒阳市" + }, { + "code": "430482", + "name": "常宁市" + }] + }, { + "code": "4305", + "name": "邵阳市", + "children": [{ + "code": "430502", + "name": "双清区" + }, { + "code": "430503", + "name": "大祥区" + }, { + "code": "430511", + "name": "北塔区" + }, { + "code": "430522", + "name": "新邵县" + }, { + "code": "430523", + "name": "邵阳县" + }, { + "code": "430524", + "name": "隆回县" + }, { + "code": "430525", + "name": "洞口县" + }, { + "code": "430527", + "name": "绥宁县" + }, { + "code": "430528", + "name": "新宁县" + }, { + "code": "430529", + "name": "城步苗族自治县" + }, { + "code": "430581", + "name": "武冈市" + }, { + "code": "430582", + "name": "邵东市" + }] + }, { + "code": "4306", + "name": "岳阳市", + "children": [{ + "code": "430602", + "name": "岳阳楼区" + }, { + "code": "430603", + "name": "云溪区" + }, { + "code": "430611", + "name": "君山区" + }, { + "code": "430621", + "name": "岳阳县" + }, { + "code": "430623", + "name": "华容县" + }, { + "code": "430624", + "name": "湘阴县" + }, { + "code": "430626", + "name": "平江县" + }, { + "code": "430671", + "name": "岳阳市屈原管理区" + }, { + "code": "430681", + "name": "汨罗市" + }, { + "code": "430682", + "name": "临湘市" + }] + }, { + "code": "4307", + "name": "常德市", + "children": [{ + "code": "430702", + "name": "武陵区" + }, { + "code": "430703", + "name": "鼎城区" + }, { + "code": "430721", + "name": "安乡县" + }, { + "code": "430722", + "name": "汉寿县" + }, { + "code": "430723", + "name": "澧县" + }, { + "code": "430724", + "name": "临澧县" + }, { + "code": "430725", + "name": "桃源县" + }, { + "code": "430726", + "name": "石门县" + }, { + "code": "430771", + "name": "常德市西洞庭管理区" + }, { + "code": "430781", + "name": "津市市" + }] + }, { + "code": "4308", + "name": "张家界市", + "children": [{ + "code": "430802", + "name": "永定区" + }, { + "code": "430811", + "name": "武陵源区" + }, { + "code": "430821", + "name": "慈利县" + }, { + "code": "430822", + "name": "桑植县" + }] + }, { + "code": "4309", + "name": "益阳市", + "children": [{ + "code": "430902", + "name": "资阳区" + }, { + "code": "430903", + "name": "赫山区" + }, { + "code": "430921", + "name": "南县" + }, { + "code": "430922", + "name": "桃江县" + }, { + "code": "430923", + "name": "安化县" + }, { + "code": "430971", + "name": "益阳市大通湖管理区" + }, { + "code": "430972", + "name": "湖南益阳高新技术产业园区" + }, { + "code": "430981", + "name": "沅江市" + }] + }, { + "code": "4310", + "name": "郴州市", + "children": [{ + "code": "431002", + "name": "北湖区" + }, { + "code": "431003", + "name": "苏仙区" + }, { + "code": "431021", + "name": "桂阳县" + }, { + "code": "431022", + "name": "宜章县" + }, { + "code": "431023", + "name": "永兴县" + }, { + "code": "431024", + "name": "嘉禾县" + }, { + "code": "431025", + "name": "临武县" + }, { + "code": "431026", + "name": "汝城县" + }, { + "code": "431027", + "name": "桂东县" + }, { + "code": "431028", + "name": "安仁县" + }, { + "code": "431081", + "name": "资兴市" + }] + }, { + "code": "4311", + "name": "永州市", + "children": [{ + "code": "431102", + "name": "零陵区" + }, { + "code": "431103", + "name": "冷水滩区" + }, { + "code": "431122", + "name": "东安县" + }, { + "code": "431123", + "name": "双牌县" + }, { + "code": "431124", + "name": "道县" + }, { + "code": "431125", + "name": "江永县" + }, { + "code": "431126", + "name": "宁远县" + }, { + "code": "431127", + "name": "蓝山县" + }, { + "code": "431128", + "name": "新田县" + }, { + "code": "431129", + "name": "江华瑶族自治县" + }, { + "code": "431171", + "name": "永州经济技术开发区" + }, { + "code": "431173", + "name": "永州市回龙圩管理区" + }, { + "code": "431181", + "name": "祁阳市" + }] + }, { + "code": "4312", + "name": "怀化市", + "children": [{ + "code": "431202", + "name": "鹤城区" + }, { + "code": "431221", + "name": "中方县" + }, { + "code": "431222", + "name": "沅陵县" + }, { + "code": "431223", + "name": "辰溪县" + }, { + "code": "431224", + "name": "溆浦县" + }, { + "code": "431225", + "name": "会同县" + }, { + "code": "431226", + "name": "麻阳苗族自治县" + }, { + "code": "431227", + "name": "新晃侗族自治县" + }, { + "code": "431228", + "name": "芷江侗族自治县" + }, { + "code": "431229", + "name": "靖州苗族侗族自治县" + }, { + "code": "431230", + "name": "通道侗族自治县" + }, { + "code": "431271", + "name": "怀化市洪江管理区" + }, { + "code": "431281", + "name": "洪江市" + }] + }, { + "code": "4313", + "name": "娄底市", + "children": [{ + "code": "431302", + "name": "娄星区" + }, { + "code": "431321", + "name": "双峰县" + }, { + "code": "431322", + "name": "新化县" + }, { + "code": "431381", + "name": "冷水江市" + }, { + "code": "431382", + "name": "涟源市" + }] + }, { + "code": "4331", + "name": "湘西土家族苗族自治州", + "children": [{ + "code": "433101", + "name": "吉首市" + }, { + "code": "433122", + "name": "泸溪县" + }, { + "code": "433123", + "name": "凤凰县" + }, { + "code": "433124", + "name": "花垣县" + }, { + "code": "433125", + "name": "保靖县" + }, { + "code": "433126", + "name": "古丈县" + }, { + "code": "433127", + "name": "永顺县" + }, { + "code": "433130", + "name": "龙山县" + }] + }] +}, { + "code": "44", + "name": "广东省", + "children": [{ + "code": "4401", + "name": "广州市", + "children": [{ + "code": "440103", + "name": "荔湾区" + }, { + "code": "440104", + "name": "越秀区" + }, { + "code": "440105", + "name": "海珠区" + }, { + "code": "440106", + "name": "天河区" + }, { + "code": "440111", + "name": "白云区" + }, { + "code": "440112", + "name": "黄埔区" + }, { + "code": "440113", + "name": "番禺区" + }, { + "code": "440114", + "name": "花都区" + }, { + "code": "440115", + "name": "南沙区" + }, { + "code": "440117", + "name": "从化区" + }, { + "code": "440118", + "name": "增城区" + }] + }, { + "code": "4402", + "name": "韶关市", + "children": [{ + "code": "440203", + "name": "武江区" + }, { + "code": "440204", + "name": "浈江区" + }, { + "code": "440205", + "name": "曲江区" + }, { + "code": "440222", + "name": "始兴县" + }, { + "code": "440224", + "name": "仁化县" + }, { + "code": "440229", + "name": "翁源县" + }, { + "code": "440232", + "name": "乳源瑶族自治县" + }, { + "code": "440233", + "name": "新丰县" + }, { + "code": "440281", + "name": "乐昌市" + }, { + "code": "440282", + "name": "南雄市" + }] + }, { + "code": "4403", + "name": "深圳市", + "children": [{ + "code": "440303", + "name": "罗湖区" + }, { + "code": "440304", + "name": "福田区" + }, { + "code": "440305", + "name": "南山区" + }, { + "code": "440306", + "name": "宝安区" + }, { + "code": "440307", + "name": "龙岗区" + }, { + "code": "440308", + "name": "盐田区" + }, { + "code": "440309", + "name": "龙华区" + }, { + "code": "440310", + "name": "坪山区" + }, { + "code": "440311", + "name": "光明区" + }] + }, { + "code": "4404", + "name": "珠海市", + "children": [{ + "code": "440402", + "name": "香洲区" + }, { + "code": "440403", + "name": "斗门区" + }, { + "code": "440404", + "name": "金湾区" + }] + }, { + "code": "4405", + "name": "汕头市", + "children": [{ + "code": "440507", + "name": "龙湖区" + }, { + "code": "440511", + "name": "金平区" + }, { + "code": "440512", + "name": "濠江区" + }, { + "code": "440513", + "name": "潮阳区" + }, { + "code": "440514", + "name": "潮南区" + }, { + "code": "440515", + "name": "澄海区" + }, { + "code": "440523", + "name": "南澳县" + }] + }, { + "code": "4406", + "name": "佛山市", + "children": [{ + "code": "440604", + "name": "禅城区" + }, { + "code": "440605", + "name": "南海区" + }, { + "code": "440606", + "name": "顺德区" + }, { + "code": "440607", + "name": "三水区" + }, { + "code": "440608", + "name": "高明区" + }] + }, { + "code": "4407", + "name": "江门市", + "children": [{ + "code": "440703", + "name": "蓬江区" + }, { + "code": "440704", + "name": "江海区" + }, { + "code": "440705", + "name": "新会区" + }, { + "code": "440781", + "name": "台山市" + }, { + "code": "440783", + "name": "开平市" + }, { + "code": "440784", + "name": "鹤山市" + }, { + "code": "440785", + "name": "恩平市" + }] + }, { + "code": "4408", + "name": "湛江市", + "children": [{ + "code": "440802", + "name": "赤坎区" + }, { + "code": "440803", + "name": "霞山区" + }, { + "code": "440804", + "name": "坡头区" + }, { + "code": "440811", + "name": "麻章区" + }, { + "code": "440823", + "name": "遂溪县" + }, { + "code": "440825", + "name": "徐闻县" + }, { + "code": "440881", + "name": "廉江市" + }, { + "code": "440882", + "name": "雷州市" + }, { + "code": "440883", + "name": "吴川市" + }] + }, { + "code": "4409", + "name": "茂名市", + "children": [{ + "code": "440902", + "name": "茂南区" + }, { + "code": "440904", + "name": "电白区" + }, { + "code": "440981", + "name": "高州市" + }, { + "code": "440982", + "name": "化州市" + }, { + "code": "440983", + "name": "信宜市" + }] + }, { + "code": "4412", + "name": "肇庆市", + "children": [{ + "code": "441202", + "name": "端州区" + }, { + "code": "441203", + "name": "鼎湖区" + }, { + "code": "441204", + "name": "高要区" + }, { + "code": "441223", + "name": "广宁县" + }, { + "code": "441224", + "name": "怀集县" + }, { + "code": "441225", + "name": "封开县" + }, { + "code": "441226", + "name": "德庆县" + }, { + "code": "441284", + "name": "四会市" + }] + }, { + "code": "4413", + "name": "惠州市", + "children": [{ + "code": "441302", + "name": "惠城区" + }, { + "code": "441303", + "name": "惠阳区" + }, { + "code": "441322", + "name": "博罗县" + }, { + "code": "441323", + "name": "惠东县" + }, { + "code": "441324", + "name": "龙门县" + }] + }, { + "code": "4414", + "name": "梅州市", + "children": [{ + "code": "441402", + "name": "梅江区" + }, { + "code": "441403", + "name": "梅县区" + }, { + "code": "441422", + "name": "大埔县" + }, { + "code": "441423", + "name": "丰顺县" + }, { + "code": "441424", + "name": "五华县" + }, { + "code": "441426", + "name": "平远县" + }, { + "code": "441427", + "name": "蕉岭县" + }, { + "code": "441481", + "name": "兴宁市" + }] + }, { + "code": "4415", + "name": "汕尾市", + "children": [{ + "code": "441502", + "name": "城区" + }, { + "code": "441521", + "name": "海丰县" + }, { + "code": "441523", + "name": "陆河县" + }, { + "code": "441581", + "name": "陆丰市" + }] + }, { + "code": "4416", + "name": "河源市", + "children": [{ + "code": "441602", + "name": "源城区" + }, { + "code": "441621", + "name": "紫金县" + }, { + "code": "441622", + "name": "龙川县" + }, { + "code": "441623", + "name": "连平县" + }, { + "code": "441624", + "name": "和平县" + }, { + "code": "441625", + "name": "东源县" + }] + }, { + "code": "4417", + "name": "阳江市", + "children": [{ + "code": "441702", + "name": "江城区" + }, { + "code": "441704", + "name": "阳东区" + }, { + "code": "441721", + "name": "阳西县" + }, { + "code": "441781", + "name": "阳春市" + }] + }, { + "code": "4418", + "name": "清远市", + "children": [{ + "code": "441802", + "name": "清城区" + }, { + "code": "441803", + "name": "清新区" + }, { + "code": "441821", + "name": "佛冈县" + }, { + "code": "441823", + "name": "阳山县" + }, { + "code": "441825", + "name": "连山壮族瑶族自治县" + }, { + "code": "441826", + "name": "连南瑶族自治县" + }, { + "code": "441881", + "name": "英德市" + }, { + "code": "441882", + "name": "连州市" + }] + }, { + "code": "4419", + "name": "东莞市", + "children": [{ + "code": "441900003", + "name": "东城街道" + }, { + "code": "441900004", + "name": "南城街道" + }, { + "code": "441900005", + "name": "万江街道" + }, { + "code": "441900006", + "name": "莞城街道" + }, { + "code": "441900101", + "name": "石碣镇" + }, { + "code": "441900102", + "name": "石龙镇" + }, { + "code": "441900103", + "name": "茶山镇" + }, { + "code": "441900104", + "name": "石排镇" + }, { + "code": "441900105", + "name": "企石镇" + }, { + "code": "441900106", + "name": "横沥镇" + }, { + "code": "441900107", + "name": "桥头镇" + }, { + "code": "441900108", + "name": "谢岗镇" + }, { + "code": "441900109", + "name": "东坑镇" + }, { + "code": "441900110", + "name": "常平镇" + }, { + "code": "441900111", + "name": "寮步镇" + }, { + "code": "441900112", + "name": "樟木头镇" + }, { + "code": "441900113", + "name": "大朗镇" + }, { + "code": "441900114", + "name": "黄江镇" + }, { + "code": "441900115", + "name": "清溪镇" + }, { + "code": "441900116", + "name": "塘厦镇" + }, { + "code": "441900117", + "name": "凤岗镇" + }, { + "code": "441900118", + "name": "大岭山镇" + }, { + "code": "441900119", + "name": "长安镇" + }, { + "code": "441900121", + "name": "虎门镇" + }, { + "code": "441900122", + "name": "厚街镇" + }, { + "code": "441900123", + "name": "沙田镇" + }, { + "code": "441900124", + "name": "道滘镇" + }, { + "code": "441900125", + "name": "洪梅镇" + }, { + "code": "441900126", + "name": "麻涌镇" + }, { + "code": "441900127", + "name": "望牛墩镇" + }, { + "code": "441900128", + "name": "中堂镇" + }, { + "code": "441900129", + "name": "高埗镇" + }, { + "code": "441900401", + "name": "松山湖" + }, { + "code": "441900402", + "name": "东莞港" + }, { + "code": "441900403", + "name": "东莞生态园" + }, { + "code": "441900404", + "name": "东莞滨海湾新区" + }] + }, { + "code": "4420", + "name": "中山市", + "children": [{ + "code": "442000001", + "name": "石岐街道" + }, { + "code": "442000002", + "name": "东区街道" + }, { + "code": "442000003", + "name": "中山港街道" + }, { + "code": "442000004", + "name": "西区街道" + }, { + "code": "442000005", + "name": "南区街道" + }, { + "code": "442000006", + "name": "五桂山街道" + }, { + "code": "442000007", + "name": "民众街道" + }, { + "code": "442000008", + "name": "南朗街道" + }, { + "code": "442000101", + "name": "黄圃镇" + }, { + "code": "442000103", + "name": "东凤镇" + }, { + "code": "442000105", + "name": "古镇镇" + }, { + "code": "442000106", + "name": "沙溪镇" + }, { + "code": "442000107", + "name": "坦洲镇" + }, { + "code": "442000108", + "name": "港口镇" + }, { + "code": "442000109", + "name": "三角镇" + }, { + "code": "442000110", + "name": "横栏镇" + }, { + "code": "442000111", + "name": "南头镇" + }, { + "code": "442000112", + "name": "阜沙镇" + }, { + "code": "442000114", + "name": "三乡镇" + }, { + "code": "442000115", + "name": "板芙镇" + }, { + "code": "442000116", + "name": "大涌镇" + }, { + "code": "442000117", + "name": "神湾镇" + }, { + "code": "442000118", + "name": "小榄镇" + }] + }, { + "code": "4451", + "name": "潮州市", + "children": [{ + "code": "445102", + "name": "湘桥区" + }, { + "code": "445103", + "name": "潮安区" + }, { + "code": "445122", + "name": "饶平县" + }] + }, { + "code": "4452", + "name": "揭阳市", + "children": [{ + "code": "445202", + "name": "榕城区" + }, { + "code": "445203", + "name": "揭东区" + }, { + "code": "445222", + "name": "揭西县" + }, { + "code": "445224", + "name": "惠来县" + }, { + "code": "445281", + "name": "普宁市" + }] + }, { + "code": "4453", + "name": "云浮市", + "children": [{ + "code": "445302", + "name": "云城区" + }, { + "code": "445303", + "name": "云安区" + }, { + "code": "445321", + "name": "新兴县" + }, { + "code": "445322", + "name": "郁南县" + }, { + "code": "445381", + "name": "罗定市" + }] + }] +}, { + "code": "45", + "name": "广西壮族自治区", + "children": [{ + "code": "4501", + "name": "南宁市", + "children": [{ + "code": "450102", + "name": "兴宁区" + }, { + "code": "450103", + "name": "青秀区" + }, { + "code": "450105", + "name": "江南区" + }, { + "code": "450107", + "name": "西乡塘区" + }, { + "code": "450108", + "name": "良庆区" + }, { + "code": "450109", + "name": "邕宁区" + }, { + "code": "450110", + "name": "武鸣区" + }, { + "code": "450123", + "name": "隆安县" + }, { + "code": "450124", + "name": "马山县" + }, { + "code": "450125", + "name": "上林县" + }, { + "code": "450126", + "name": "宾阳县" + }, { + "code": "450181", + "name": "横州市" + }] + }, { + "code": "4502", + "name": "柳州市", + "children": [{ + "code": "450202", + "name": "城中区" + }, { + "code": "450203", + "name": "鱼峰区" + }, { + "code": "450204", + "name": "柳南区" + }, { + "code": "450205", + "name": "柳北区" + }, { + "code": "450206", + "name": "柳江区" + }, { + "code": "450222", + "name": "柳城县" + }, { + "code": "450223", + "name": "鹿寨县" + }, { + "code": "450224", + "name": "融安县" + }, { + "code": "450225", + "name": "融水苗族自治县" + }, { + "code": "450226", + "name": "三江侗族自治县" + }] + }, { + "code": "4503", + "name": "桂林市", + "children": [{ + "code": "450302", + "name": "秀峰区" + }, { + "code": "450303", + "name": "叠彩区" + }, { + "code": "450304", + "name": "象山区" + }, { + "code": "450305", + "name": "七星区" + }, { + "code": "450311", + "name": "雁山区" + }, { + "code": "450312", + "name": "临桂区" + }, { + "code": "450321", + "name": "阳朔县" + }, { + "code": "450323", + "name": "灵川县" + }, { + "code": "450324", + "name": "全州县" + }, { + "code": "450325", + "name": "兴安县" + }, { + "code": "450326", + "name": "永福县" + }, { + "code": "450327", + "name": "灌阳县" + }, { + "code": "450328", + "name": "龙胜各族自治县" + }, { + "code": "450329", + "name": "资源县" + }, { + "code": "450330", + "name": "平乐县" + }, { + "code": "450332", + "name": "恭城瑶族自治县" + }, { + "code": "450381", + "name": "荔浦市" + }] + }, { + "code": "4504", + "name": "梧州市", + "children": [{ + "code": "450403", + "name": "万秀区" + }, { + "code": "450405", + "name": "长洲区" + }, { + "code": "450406", + "name": "龙圩区" + }, { + "code": "450421", + "name": "苍梧县" + }, { + "code": "450422", + "name": "藤县" + }, { + "code": "450423", + "name": "蒙山县" + }, { + "code": "450481", + "name": "岑溪市" + }] + }, { + "code": "4505", + "name": "北海市", + "children": [{ + "code": "450502", + "name": "海城区" + }, { + "code": "450503", + "name": "银海区" + }, { + "code": "450512", + "name": "铁山港区" + }, { + "code": "450521", + "name": "合浦县" + }] + }, { + "code": "4506", + "name": "防城港市", + "children": [{ + "code": "450602", + "name": "港口区" + }, { + "code": "450603", + "name": "防城区" + }, { + "code": "450621", + "name": "上思县" + }, { + "code": "450681", + "name": "东兴市" + }] + }, { + "code": "4507", + "name": "钦州市", + "children": [{ + "code": "450702", + "name": "钦南区" + }, { + "code": "450703", + "name": "钦北区" + }, { + "code": "450721", + "name": "灵山县" + }, { + "code": "450722", + "name": "浦北县" + }] + }, { + "code": "4508", + "name": "贵港市", + "children": [{ + "code": "450802", + "name": "港北区" + }, { + "code": "450803", + "name": "港南区" + }, { + "code": "450804", + "name": "覃塘区" + }, { + "code": "450821", + "name": "平南县" + }, { + "code": "450881", + "name": "桂平市" + }] + }, { + "code": "4509", + "name": "玉林市", + "children": [{ + "code": "450902", + "name": "玉州区" + }, { + "code": "450903", + "name": "福绵区" + }, { + "code": "450921", + "name": "容县" + }, { + "code": "450922", + "name": "陆川县" + }, { + "code": "450923", + "name": "博白县" + }, { + "code": "450924", + "name": "兴业县" + }, { + "code": "450981", + "name": "北流市" + }] + }, { + "code": "4510", + "name": "百色市", + "children": [{ + "code": "451002", + "name": "右江区" + }, { + "code": "451003", + "name": "田阳区" + }, { + "code": "451022", + "name": "田东县" + }, { + "code": "451024", + "name": "德保县" + }, { + "code": "451026", + "name": "那坡县" + }, { + "code": "451027", + "name": "凌云县" + }, { + "code": "451028", + "name": "乐业县" + }, { + "code": "451029", + "name": "田林县" + }, { + "code": "451030", + "name": "西林县" + }, { + "code": "451031", + "name": "隆林各族自治县" + }, { + "code": "451081", + "name": "靖西市" + }, { + "code": "451082", + "name": "平果市" + }] + }, { + "code": "4511", + "name": "贺州市", + "children": [{ + "code": "451102", + "name": "八步区" + }, { + "code": "451103", + "name": "平桂区" + }, { + "code": "451121", + "name": "昭平县" + }, { + "code": "451122", + "name": "钟山县" + }, { + "code": "451123", + "name": "富川瑶族自治县" + }] + }, { + "code": "4512", + "name": "河池市", + "children": [{ + "code": "451202", + "name": "金城江区" + }, { + "code": "451203", + "name": "宜州区" + }, { + "code": "451221", + "name": "南丹县" + }, { + "code": "451222", + "name": "天峨县" + }, { + "code": "451223", + "name": "凤山县" + }, { + "code": "451224", + "name": "东兰县" + }, { + "code": "451225", + "name": "罗城仫佬族自治县" + }, { + "code": "451226", + "name": "环江毛南族自治县" + }, { + "code": "451227", + "name": "巴马瑶族自治县" + }, { + "code": "451228", + "name": "都安瑶族自治县" + }, { + "code": "451229", + "name": "大化瑶族自治县" + }] + }, { + "code": "4513", + "name": "来宾市", + "children": [{ + "code": "451302", + "name": "兴宾区" + }, { + "code": "451321", + "name": "忻城县" + }, { + "code": "451322", + "name": "象州县" + }, { + "code": "451323", + "name": "武宣县" + }, { + "code": "451324", + "name": "金秀瑶族自治县" + }, { + "code": "451381", + "name": "合山市" + }] + }, { + "code": "4514", + "name": "崇左市", + "children": [{ + "code": "451402", + "name": "江州区" + }, { + "code": "451421", + "name": "扶绥县" + }, { + "code": "451422", + "name": "宁明县" + }, { + "code": "451423", + "name": "龙州县" + }, { + "code": "451424", + "name": "大新县" + }, { + "code": "451425", + "name": "天等县" + }, { + "code": "451481", + "name": "凭祥市" + }] + }] +}, { + "code": "46", + "name": "海南省", + "children": [{ + "code": "4601", + "name": "海口市", + "children": [{ + "code": "460105", + "name": "秀英区" + }, { + "code": "460106", + "name": "龙华区" + }, { + "code": "460107", + "name": "琼山区" + }, { + "code": "460108", + "name": "美兰区" + }] + }, { + "code": "4602", + "name": "三亚市", + "children": [{ + "code": "460202", + "name": "海棠区" + }, { + "code": "460203", + "name": "吉阳区" + }, { + "code": "460204", + "name": "天涯区" + }, { + "code": "460205", + "name": "崖州区" + }] + }, { + "code": "4603", + "name": "三沙市", + "children": [{ + "code": "460321", + "name": "西沙群岛" + }, { + "code": "460322", + "name": "南沙群岛" + }, { + "code": "460323", + "name": "中沙群岛的岛礁及其海域" + }] + }, { + "code": "4604", + "name": "儋州市", + "children": [{ + "code": "460400100", + "name": "那大镇" + }, { + "code": "460400101", + "name": "和庆镇" + }, { + "code": "460400102", + "name": "南丰镇" + }, { + "code": "460400103", + "name": "大成镇" + }, { + "code": "460400104", + "name": "雅星镇" + }, { + "code": "460400105", + "name": "兰洋镇" + }, { + "code": "460400106", + "name": "光村镇" + }, { + "code": "460400107", + "name": "木棠镇" + }, { + "code": "460400108", + "name": "海头镇" + }, { + "code": "460400109", + "name": "峨蔓镇" + }, { + "code": "460400111", + "name": "王五镇" + }, { + "code": "460400112", + "name": "白马井镇" + }, { + "code": "460400113", + "name": "中和镇" + }, { + "code": "460400114", + "name": "排浦镇" + }, { + "code": "460400115", + "name": "东成镇" + }, { + "code": "460400116", + "name": "新州镇" + }, { + "code": "460400499", + "name": "洋浦经济开发区" + }, { + "code": "460400500", + "name": "华南热作学院" + }] + }, { + "code": "4690", + "name": "省直辖县级行政区划", + "children": [{ + "code": "469001", + "name": "五指山市" + }, { + "code": "469002", + "name": "琼海市" + }, { + "code": "469005", + "name": "文昌市" + }, { + "code": "469006", + "name": "万宁市" + }, { + "code": "469007", + "name": "东方市" + }, { + "code": "469021", + "name": "定安县" + }, { + "code": "469022", + "name": "屯昌县" + }, { + "code": "469023", + "name": "澄迈县" + }, { + "code": "469024", + "name": "临高县" + }, { + "code": "469025", + "name": "白沙黎族自治县" + }, { + "code": "469026", + "name": "昌江黎族自治县" + }, { + "code": "469027", + "name": "乐东黎族自治县" + }, { + "code": "469028", + "name": "陵水黎族自治县" + }, { + "code": "469029", + "name": "保亭黎族苗族自治县" + }, { + "code": "469030", + "name": "琼中黎族苗族自治县" + }] + }] +}, { + "code": "50", + "name": "重庆市", + "children": [{ + "code": "5001", + "name": "市辖区", + "children": [{ + "code": "500101", + "name": "万州区" + }, { + "code": "500102", + "name": "涪陵区" + }, { + "code": "500103", + "name": "渝中区" + }, { + "code": "500104", + "name": "大渡口区" + }, { + "code": "500105", + "name": "江北区" + }, { + "code": "500106", + "name": "沙坪坝区" + }, { + "code": "500107", + "name": "九龙坡区" + }, { + "code": "500108", + "name": "南岸区" + }, { + "code": "500109", + "name": "北碚区" + }, { + "code": "500110", + "name": "綦江区" + }, { + "code": "500111", + "name": "大足区" + }, { + "code": "500112", + "name": "渝北区" + }, { + "code": "500113", + "name": "巴南区" + }, { + "code": "500114", + "name": "黔江区" + }, { + "code": "500115", + "name": "长寿区" + }, { + "code": "500116", + "name": "江津区" + }, { + "code": "500117", + "name": "合川区" + }, { + "code": "500118", + "name": "永川区" + }, { + "code": "500119", + "name": "南川区" + }, { + "code": "500120", + "name": "璧山区" + }, { + "code": "500151", + "name": "铜梁区" + }, { + "code": "500152", + "name": "潼南区" + }, { + "code": "500153", + "name": "荣昌区" + }, { + "code": "500154", + "name": "开州区" + }, { + "code": "500155", + "name": "梁平区" + }, { + "code": "500156", + "name": "武隆区" + }] + }, { + "code": "5002", + "name": "县", + "children": [{ + "code": "500229", + "name": "城口县" + }, { + "code": "500230", + "name": "丰都县" + }, { + "code": "500231", + "name": "垫江县" + }, { + "code": "500233", + "name": "忠县" + }, { + "code": "500235", + "name": "云阳县" + }, { + "code": "500236", + "name": "奉节县" + }, { + "code": "500237", + "name": "巫山县" + }, { + "code": "500238", + "name": "巫溪县" + }, { + "code": "500240", + "name": "石柱土家族自治县" + }, { + "code": "500241", + "name": "秀山土家族苗族自治县" + }, { + "code": "500242", + "name": "酉阳土家族苗族自治县" + }, { + "code": "500243", + "name": "彭水苗族土家族自治县" + }] + }] +}, { + "code": "51", + "name": "四川省", + "children": [{ + "code": "5101", + "name": "成都市", + "children": [{ + "code": "510104", + "name": "锦江区" + }, { + "code": "510105", + "name": "青羊区" + }, { + "code": "510106", + "name": "金牛区" + }, { + "code": "510107", + "name": "武侯区" + }, { + "code": "510108", + "name": "成华区" + }, { + "code": "510112", + "name": "龙泉驿区" + }, { + "code": "510113", + "name": "青白江区" + }, { + "code": "510114", + "name": "新都区" + }, { + "code": "510115", + "name": "温江区" + }, { + "code": "510116", + "name": "双流区" + }, { + "code": "510117", + "name": "郫都区" + }, { + "code": "510118", + "name": "新津区" + }, { + "code": "510121", + "name": "金堂县" + }, { + "code": "510129", + "name": "大邑县" + }, { + "code": "510131", + "name": "蒲江县" + }, { + "code": "510181", + "name": "都江堰市" + }, { + "code": "510182", + "name": "彭州市" + }, { + "code": "510183", + "name": "邛崃市" + }, { + "code": "510184", + "name": "崇州市" + }, { + "code": "510185", + "name": "简阳市" + }] + }, { + "code": "5103", + "name": "自贡市", + "children": [{ + "code": "510302", + "name": "自流井区" + }, { + "code": "510303", + "name": "贡井区" + }, { + "code": "510304", + "name": "大安区" + }, { + "code": "510311", + "name": "沿滩区" + }, { + "code": "510321", + "name": "荣县" + }, { + "code": "510322", + "name": "富顺县" + }] + }, { + "code": "5104", + "name": "攀枝花市", + "children": [{ + "code": "510402", + "name": "东区" + }, { + "code": "510403", + "name": "西区" + }, { + "code": "510411", + "name": "仁和区" + }, { + "code": "510421", + "name": "米易县" + }, { + "code": "510422", + "name": "盐边县" + }] + }, { + "code": "5105", + "name": "泸州市", + "children": [{ + "code": "510502", + "name": "江阳区" + }, { + "code": "510503", + "name": "纳溪区" + }, { + "code": "510504", + "name": "龙马潭区" + }, { + "code": "510521", + "name": "泸县" + }, { + "code": "510522", + "name": "合江县" + }, { + "code": "510524", + "name": "叙永县" + }, { + "code": "510525", + "name": "古蔺县" + }] + }, { + "code": "5106", + "name": "德阳市", + "children": [{ + "code": "510603", + "name": "旌阳区" + }, { + "code": "510604", + "name": "罗江区" + }, { + "code": "510623", + "name": "中江县" + }, { + "code": "510681", + "name": "广汉市" + }, { + "code": "510682", + "name": "什邡市" + }, { + "code": "510683", + "name": "绵竹市" + }] + }, { + "code": "5107", + "name": "绵阳市", + "children": [{ + "code": "510703", + "name": "涪城区" + }, { + "code": "510704", + "name": "游仙区" + }, { + "code": "510705", + "name": "安州区" + }, { + "code": "510722", + "name": "三台县" + }, { + "code": "510723", + "name": "盐亭县" + }, { + "code": "510725", + "name": "梓潼县" + }, { + "code": "510726", + "name": "北川羌族自治县" + }, { + "code": "510727", + "name": "平武县" + }, { + "code": "510781", + "name": "江油市" + }] + }, { + "code": "5108", + "name": "广元市", + "children": [{ + "code": "510802", + "name": "利州区" + }, { + "code": "510811", + "name": "昭化区" + }, { + "code": "510812", + "name": "朝天区" + }, { + "code": "510821", + "name": "旺苍县" + }, { + "code": "510822", + "name": "青川县" + }, { + "code": "510823", + "name": "剑阁县" + }, { + "code": "510824", + "name": "苍溪县" + }] + }, { + "code": "5109", + "name": "遂宁市", + "children": [{ + "code": "510903", + "name": "船山区" + }, { + "code": "510904", + "name": "安居区" + }, { + "code": "510921", + "name": "蓬溪县" + }, { + "code": "510923", + "name": "大英县" + }, { + "code": "510981", + "name": "射洪市" + }] + }, { + "code": "5110", + "name": "内江市", + "children": [{ + "code": "511002", + "name": "市中区" + }, { + "code": "511011", + "name": "东兴区" + }, { + "code": "511024", + "name": "威远县" + }, { + "code": "511025", + "name": "资中县" + }, { + "code": "511083", + "name": "隆昌市" + }] + }, { + "code": "5111", + "name": "乐山市", + "children": [{ + "code": "511102", + "name": "市中区" + }, { + "code": "511111", + "name": "沙湾区" + }, { + "code": "511112", + "name": "五通桥区" + }, { + "code": "511113", + "name": "金口河区" + }, { + "code": "511123", + "name": "犍为县" + }, { + "code": "511124", + "name": "井研县" + }, { + "code": "511126", + "name": "夹江县" + }, { + "code": "511129", + "name": "沐川县" + }, { + "code": "511132", + "name": "峨边彝族自治县" + }, { + "code": "511133", + "name": "马边彝族自治县" + }, { + "code": "511181", + "name": "峨眉山市" + }] + }, { + "code": "5113", + "name": "南充市", + "children": [{ + "code": "511302", + "name": "顺庆区" + }, { + "code": "511303", + "name": "高坪区" + }, { + "code": "511304", + "name": "嘉陵区" + }, { + "code": "511321", + "name": "南部县" + }, { + "code": "511322", + "name": "营山县" + }, { + "code": "511323", + "name": "蓬安县" + }, { + "code": "511324", + "name": "仪陇县" + }, { + "code": "511325", + "name": "西充县" + }, { + "code": "511381", + "name": "阆中市" + }] + }, { + "code": "5114", + "name": "眉山市", + "children": [{ + "code": "511402", + "name": "东坡区" + }, { + "code": "511403", + "name": "彭山区" + }, { + "code": "511421", + "name": "仁寿县" + }, { + "code": "511423", + "name": "洪雅县" + }, { + "code": "511424", + "name": "丹棱县" + }, { + "code": "511425", + "name": "青神县" + }] + }, { + "code": "5115", + "name": "宜宾市", + "children": [{ + "code": "511502", + "name": "翠屏区" + }, { + "code": "511503", + "name": "南溪区" + }, { + "code": "511504", + "name": "叙州区" + }, { + "code": "511523", + "name": "江安县" + }, { + "code": "511524", + "name": "长宁县" + }, { + "code": "511525", + "name": "高县" + }, { + "code": "511526", + "name": "珙县" + }, { + "code": "511527", + "name": "筠连县" + }, { + "code": "511528", + "name": "兴文县" + }, { + "code": "511529", + "name": "屏山县" + }] + }, { + "code": "5116", + "name": "广安市", + "children": [{ + "code": "511602", + "name": "广安区" + }, { + "code": "511603", + "name": "前锋区" + }, { + "code": "511621", + "name": "岳池县" + }, { + "code": "511622", + "name": "武胜县" + }, { + "code": "511623", + "name": "邻水县" + }, { + "code": "511681", + "name": "华蓥市" + }] + }, { + "code": "5117", + "name": "达州市", + "children": [{ + "code": "511702", + "name": "通川区" + }, { + "code": "511703", + "name": "达川区" + }, { + "code": "511722", + "name": "宣汉县" + }, { + "code": "511723", + "name": "开江县" + }, { + "code": "511724", + "name": "大竹县" + }, { + "code": "511725", + "name": "渠县" + }, { + "code": "511781", + "name": "万源市" + }] + }, { + "code": "5118", + "name": "雅安市", + "children": [{ + "code": "511802", + "name": "雨城区" + }, { + "code": "511803", + "name": "名山区" + }, { + "code": "511822", + "name": "荥经县" + }, { + "code": "511823", + "name": "汉源县" + }, { + "code": "511824", + "name": "石棉县" + }, { + "code": "511825", + "name": "天全县" + }, { + "code": "511826", + "name": "芦山县" + }, { + "code": "511827", + "name": "宝兴县" + }] + }, { + "code": "5119", + "name": "巴中市", + "children": [{ + "code": "511902", + "name": "巴州区" + }, { + "code": "511903", + "name": "恩阳区" + }, { + "code": "511921", + "name": "通江县" + }, { + "code": "511922", + "name": "南江县" + }, { + "code": "511923", + "name": "平昌县" + }] + }, { + "code": "5120", + "name": "资阳市", + "children": [{ + "code": "512002", + "name": "雁江区" + }, { + "code": "512021", + "name": "安岳县" + }, { + "code": "512022", + "name": "乐至县" + }] + }, { + "code": "5132", + "name": "阿坝藏族羌族自治州", + "children": [{ + "code": "513201", + "name": "马尔康市" + }, { + "code": "513221", + "name": "汶川县" + }, { + "code": "513222", + "name": "理县" + }, { + "code": "513223", + "name": "茂县" + }, { + "code": "513224", + "name": "松潘县" + }, { + "code": "513225", + "name": "九寨沟县" + }, { + "code": "513226", + "name": "金川县" + }, { + "code": "513227", + "name": "小金县" + }, { + "code": "513228", + "name": "黑水县" + }, { + "code": "513230", + "name": "壤塘县" + }, { + "code": "513231", + "name": "阿坝县" + }, { + "code": "513232", + "name": "若尔盖县" + }, { + "code": "513233", + "name": "红原县" + }] + }, { + "code": "5133", + "name": "甘孜藏族自治州", + "children": [{ + "code": "513301", + "name": "康定市" + }, { + "code": "513322", + "name": "泸定县" + }, { + "code": "513323", + "name": "丹巴县" + }, { + "code": "513324", + "name": "九龙县" + }, { + "code": "513325", + "name": "雅江县" + }, { + "code": "513326", + "name": "道孚县" + }, { + "code": "513327", + "name": "炉霍县" + }, { + "code": "513328", + "name": "甘孜县" + }, { + "code": "513329", + "name": "新龙县" + }, { + "code": "513330", + "name": "德格县" + }, { + "code": "513331", + "name": "白玉县" + }, { + "code": "513332", + "name": "石渠县" + }, { + "code": "513333", + "name": "色达县" + }, { + "code": "513334", + "name": "理塘县" + }, { + "code": "513335", + "name": "巴塘县" + }, { + "code": "513336", + "name": "乡城县" + }, { + "code": "513337", + "name": "稻城县" + }, { + "code": "513338", + "name": "得荣县" + }] + }, { + "code": "5134", + "name": "凉山彝族自治州", + "children": [{ + "code": "513401", + "name": "西昌市" + }, { + "code": "513402", + "name": "会理市" + }, { + "code": "513422", + "name": "木里藏族自治县" + }, { + "code": "513423", + "name": "盐源县" + }, { + "code": "513424", + "name": "德昌县" + }, { + "code": "513426", + "name": "会东县" + }, { + "code": "513427", + "name": "宁南县" + }, { + "code": "513428", + "name": "普格县" + }, { + "code": "513429", + "name": "布拖县" + }, { + "code": "513430", + "name": "金阳县" + }, { + "code": "513431", + "name": "昭觉县" + }, { + "code": "513432", + "name": "喜德县" + }, { + "code": "513433", + "name": "冕宁县" + }, { + "code": "513434", + "name": "越西县" + }, { + "code": "513435", + "name": "甘洛县" + }, { + "code": "513436", + "name": "美姑县" + }, { + "code": "513437", + "name": "雷波县" + }] + }] +}, { + "code": "52", + "name": "贵州省", + "children": [{ + "code": "5201", + "name": "贵阳市", + "children": [{ + "code": "520102", + "name": "南明区" + }, { + "code": "520103", + "name": "云岩区" + }, { + "code": "520111", + "name": "花溪区" + }, { + "code": "520112", + "name": "乌当区" + }, { + "code": "520113", + "name": "白云区" + }, { + "code": "520115", + "name": "观山湖区" + }, { + "code": "520121", + "name": "开阳县" + }, { + "code": "520122", + "name": "息烽县" + }, { + "code": "520123", + "name": "修文县" + }, { + "code": "520181", + "name": "清镇市" + }] + }, { + "code": "5202", + "name": "六盘水市", + "children": [{ + "code": "520201", + "name": "钟山区" + }, { + "code": "520203", + "name": "六枝特区" + }, { + "code": "520204", + "name": "水城区" + }, { + "code": "520281", + "name": "盘州市" + }] + }, { + "code": "5203", + "name": "遵义市", + "children": [{ + "code": "520302", + "name": "红花岗区" + }, { + "code": "520303", + "name": "汇川区" + }, { + "code": "520304", + "name": "播州区" + }, { + "code": "520322", + "name": "桐梓县" + }, { + "code": "520323", + "name": "绥阳县" + }, { + "code": "520324", + "name": "正安县" + }, { + "code": "520325", + "name": "道真仡佬族苗族自治县" + }, { + "code": "520326", + "name": "务川仡佬族苗族自治县" + }, { + "code": "520327", + "name": "凤冈县" + }, { + "code": "520328", + "name": "湄潭县" + }, { + "code": "520329", + "name": "余庆县" + }, { + "code": "520330", + "name": "习水县" + }, { + "code": "520381", + "name": "赤水市" + }, { + "code": "520382", + "name": "仁怀市" + }] + }, { + "code": "5204", + "name": "安顺市", + "children": [{ + "code": "520402", + "name": "西秀区" + }, { + "code": "520403", + "name": "平坝区" + }, { + "code": "520422", + "name": "普定县" + }, { + "code": "520423", + "name": "镇宁布依族苗族自治县" + }, { + "code": "520424", + "name": "关岭布依族苗族自治县" + }, { + "code": "520425", + "name": "紫云苗族布依族自治县" + }] + }, { + "code": "5205", + "name": "毕节市", + "children": [{ + "code": "520502", + "name": "七星关区" + }, { + "code": "520521", + "name": "大方县" + }, { + "code": "520523", + "name": "金沙县" + }, { + "code": "520524", + "name": "织金县" + }, { + "code": "520525", + "name": "纳雍县" + }, { + "code": "520526", + "name": "威宁彝族回族苗族自治县" + }, { + "code": "520527", + "name": "赫章县" + }, { + "code": "520581", + "name": "黔西市" + }] + }, { + "code": "5206", + "name": "铜仁市", + "children": [{ + "code": "520602", + "name": "碧江区" + }, { + "code": "520603", + "name": "万山区" + }, { + "code": "520621", + "name": "江口县" + }, { + "code": "520622", + "name": "玉屏侗族自治县" + }, { + "code": "520623", + "name": "石阡县" + }, { + "code": "520624", + "name": "思南县" + }, { + "code": "520625", + "name": "印江土家族苗族自治县" + }, { + "code": "520626", + "name": "德江县" + }, { + "code": "520627", + "name": "沿河土家族自治县" + }, { + "code": "520628", + "name": "松桃苗族自治县" + }] + }, { + "code": "5223", + "name": "黔西南布依族苗族自治州", + "children": [{ + "code": "522301", + "name": "兴义市" + }, { + "code": "522302", + "name": "兴仁市" + }, { + "code": "522323", + "name": "普安县" + }, { + "code": "522324", + "name": "晴隆县" + }, { + "code": "522325", + "name": "贞丰县" + }, { + "code": "522326", + "name": "望谟县" + }, { + "code": "522327", + "name": "册亨县" + }, { + "code": "522328", + "name": "安龙县" + }] + }, { + "code": "5226", + "name": "黔东南苗族侗族自治州", + "children": [{ + "code": "522601", + "name": "凯里市" + }, { + "code": "522622", + "name": "黄平县" + }, { + "code": "522623", + "name": "施秉县" + }, { + "code": "522624", + "name": "三穗县" + }, { + "code": "522625", + "name": "镇远县" + }, { + "code": "522626", + "name": "岑巩县" + }, { + "code": "522627", + "name": "天柱县" + }, { + "code": "522628", + "name": "锦屏县" + }, { + "code": "522629", + "name": "剑河县" + }, { + "code": "522630", + "name": "台江县" + }, { + "code": "522631", + "name": "黎平县" + }, { + "code": "522632", + "name": "榕江县" + }, { + "code": "522633", + "name": "从江县" + }, { + "code": "522634", + "name": "雷山县" + }, { + "code": "522635", + "name": "麻江县" + }, { + "code": "522636", + "name": "丹寨县" + }] + }, { + "code": "5227", + "name": "黔南布依族苗族自治州", + "children": [{ + "code": "522701", + "name": "都匀市" + }, { + "code": "522702", + "name": "福泉市" + }, { + "code": "522722", + "name": "荔波县" + }, { + "code": "522723", + "name": "贵定县" + }, { + "code": "522725", + "name": "瓮安县" + }, { + "code": "522726", + "name": "独山县" + }, { + "code": "522727", + "name": "平塘县" + }, { + "code": "522728", + "name": "罗甸县" + }, { + "code": "522729", + "name": "长顺县" + }, { + "code": "522730", + "name": "龙里县" + }, { + "code": "522731", + "name": "惠水县" + }, { + "code": "522732", + "name": "三都水族自治县" + }] + }] +}, { + "code": "53", + "name": "云南省", + "children": [{ + "code": "5301", + "name": "昆明市", + "children": [{ + "code": "530102", + "name": "五华区" + }, { + "code": "530103", + "name": "盘龙区" + }, { + "code": "530111", + "name": "官渡区" + }, { + "code": "530112", + "name": "西山区" + }, { + "code": "530113", + "name": "东川区" + }, { + "code": "530114", + "name": "呈贡区" + }, { + "code": "530115", + "name": "晋宁区" + }, { + "code": "530124", + "name": "富民县" + }, { + "code": "530125", + "name": "宜良县" + }, { + "code": "530126", + "name": "石林彝族自治县" + }, { + "code": "530127", + "name": "嵩明县" + }, { + "code": "530128", + "name": "禄劝彝族苗族自治县" + }, { + "code": "530129", + "name": "寻甸回族彝族自治县" + }, { + "code": "530181", + "name": "安宁市" + }] + }, { + "code": "5303", + "name": "曲靖市", + "children": [{ + "code": "530302", + "name": "麒麟区" + }, { + "code": "530303", + "name": "沾益区" + }, { + "code": "530304", + "name": "马龙区" + }, { + "code": "530322", + "name": "陆良县" + }, { + "code": "530323", + "name": "师宗县" + }, { + "code": "530324", + "name": "罗平县" + }, { + "code": "530325", + "name": "富源县" + }, { + "code": "530326", + "name": "会泽县" + }, { + "code": "530381", + "name": "宣威市" + }] + }, { + "code": "5304", + "name": "玉溪市", + "children": [{ + "code": "530402", + "name": "红塔区" + }, { + "code": "530403", + "name": "江川区" + }, { + "code": "530423", + "name": "通海县" + }, { + "code": "530424", + "name": "华宁县" + }, { + "code": "530425", + "name": "易门县" + }, { + "code": "530426", + "name": "峨山彝族自治县" + }, { + "code": "530427", + "name": "新平彝族傣族自治县" + }, { + "code": "530428", + "name": "元江哈尼族彝族傣族自治县" + }, { + "code": "530481", + "name": "澄江市" + }] + }, { + "code": "5305", + "name": "保山市", + "children": [{ + "code": "530502", + "name": "隆阳区" + }, { + "code": "530521", + "name": "施甸县" + }, { + "code": "530523", + "name": "龙陵县" + }, { + "code": "530524", + "name": "昌宁县" + }, { + "code": "530581", + "name": "腾冲市" + }] + }, { + "code": "5306", + "name": "昭通市", + "children": [{ + "code": "530602", + "name": "昭阳区" + }, { + "code": "530621", + "name": "鲁甸县" + }, { + "code": "530622", + "name": "巧家县" + }, { + "code": "530623", + "name": "盐津县" + }, { + "code": "530624", + "name": "大关县" + }, { + "code": "530625", + "name": "永善县" + }, { + "code": "530626", + "name": "绥江县" + }, { + "code": "530627", + "name": "镇雄县" + }, { + "code": "530628", + "name": "彝良县" + }, { + "code": "530629", + "name": "威信县" + }, { + "code": "530681", + "name": "水富市" + }] + }, { + "code": "5307", + "name": "丽江市", + "children": [{ + "code": "530702", + "name": "古城区" + }, { + "code": "530721", + "name": "玉龙纳西族自治县" + }, { + "code": "530722", + "name": "永胜县" + }, { + "code": "530723", + "name": "华坪县" + }, { + "code": "530724", + "name": "宁蒗彝族自治县" + }] + }, { + "code": "5308", + "name": "普洱市", + "children": [{ + "code": "530802", + "name": "思茅区" + }, { + "code": "530821", + "name": "宁洱哈尼族彝族自治县" + }, { + "code": "530822", + "name": "墨江哈尼族自治县" + }, { + "code": "530823", + "name": "景东彝族自治县" + }, { + "code": "530824", + "name": "景谷傣族彝族自治县" + }, { + "code": "530825", + "name": "镇沅彝族哈尼族拉祜族自治县" + }, { + "code": "530826", + "name": "江城哈尼族彝族自治县" + }, { + "code": "530827", + "name": "孟连傣族拉祜族佤族自治县" + }, { + "code": "530828", + "name": "澜沧拉祜族自治县" + }, { + "code": "530829", + "name": "西盟佤族自治县" + }] + }, { + "code": "5309", + "name": "临沧市", + "children": [{ + "code": "530902", + "name": "临翔区" + }, { + "code": "530921", + "name": "凤庆县" + }, { + "code": "530922", + "name": "云县" + }, { + "code": "530923", + "name": "永德县" + }, { + "code": "530924", + "name": "镇康县" + }, { + "code": "530925", + "name": "双江拉祜族佤族布朗族傣族自治县" + }, { + "code": "530926", + "name": "耿马傣族佤族自治县" + }, { + "code": "530927", + "name": "沧源佤族自治县" + }] + }, { + "code": "5323", + "name": "楚雄彝族自治州", + "children": [{ + "code": "532301", + "name": "楚雄市" + }, { + "code": "532302", + "name": "禄丰市" + }, { + "code": "532322", + "name": "双柏县" + }, { + "code": "532323", + "name": "牟定县" + }, { + "code": "532324", + "name": "南华县" + }, { + "code": "532325", + "name": "姚安县" + }, { + "code": "532326", + "name": "大姚县" + }, { + "code": "532327", + "name": "永仁县" + }, { + "code": "532328", + "name": "元谋县" + }, { + "code": "532329", + "name": "武定县" + }] + }, { + "code": "5325", + "name": "红河哈尼族彝族自治州", + "children": [{ + "code": "532501", + "name": "个旧市" + }, { + "code": "532502", + "name": "开远市" + }, { + "code": "532503", + "name": "蒙自市" + }, { + "code": "532504", + "name": "弥勒市" + }, { + "code": "532523", + "name": "屏边苗族自治县" + }, { + "code": "532524", + "name": "建水县" + }, { + "code": "532525", + "name": "石屏县" + }, { + "code": "532527", + "name": "泸西县" + }, { + "code": "532528", + "name": "元阳县" + }, { + "code": "532529", + "name": "红河县" + }, { + "code": "532530", + "name": "金平苗族瑶族傣族自治县" + }, { + "code": "532531", + "name": "绿春县" + }, { + "code": "532532", + "name": "河口瑶族自治县" + }] + }, { + "code": "5326", + "name": "文山壮族苗族自治州", + "children": [{ + "code": "532601", + "name": "文山市" + }, { + "code": "532622", + "name": "砚山县" + }, { + "code": "532623", + "name": "西畴县" + }, { + "code": "532624", + "name": "麻栗坡县" + }, { + "code": "532625", + "name": "马关县" + }, { + "code": "532626", + "name": "丘北县" + }, { + "code": "532627", + "name": "广南县" + }, { + "code": "532628", + "name": "富宁县" + }] + }, { + "code": "5328", + "name": "西双版纳傣族自治州", + "children": [{ + "code": "532801", + "name": "景洪市" + }, { + "code": "532822", + "name": "勐海县" + }, { + "code": "532823", + "name": "勐腊县" + }] + }, { + "code": "5329", + "name": "大理白族自治州", + "children": [{ + "code": "532901", + "name": "大理市" + }, { + "code": "532922", + "name": "漾濞彝族自治县" + }, { + "code": "532923", + "name": "祥云县" + }, { + "code": "532924", + "name": "宾川县" + }, { + "code": "532925", + "name": "弥渡县" + }, { + "code": "532926", + "name": "南涧彝族自治县" + }, { + "code": "532927", + "name": "巍山彝族回族自治县" + }, { + "code": "532928", + "name": "永平县" + }, { + "code": "532929", + "name": "云龙县" + }, { + "code": "532930", + "name": "洱源县" + }, { + "code": "532931", + "name": "剑川县" + }, { + "code": "532932", + "name": "鹤庆县" + }] + }, { + "code": "5331", + "name": "德宏傣族景颇族自治州", + "children": [{ + "code": "533102", + "name": "瑞丽市" + }, { + "code": "533103", + "name": "芒市" + }, { + "code": "533122", + "name": "梁河县" + }, { + "code": "533123", + "name": "盈江县" + }, { + "code": "533124", + "name": "陇川县" + }] + }, { + "code": "5333", + "name": "怒江傈僳族自治州", + "children": [{ + "code": "533301", + "name": "泸水市" + }, { + "code": "533323", + "name": "福贡县" + }, { + "code": "533324", + "name": "贡山独龙族怒族自治县" + }, { + "code": "533325", + "name": "兰坪白族普米族自治县" + }] + }, { + "code": "5334", + "name": "迪庆藏族自治州", + "children": [{ + "code": "533401", + "name": "香格里拉市" + }, { + "code": "533422", + "name": "德钦县" + }, { + "code": "533423", + "name": "维西傈僳族自治县" + }] + }] +}, { + "code": "54", + "name": "西藏自治区", + "children": [{ + "code": "5401", + "name": "拉萨市", + "children": [{ + "code": "540102", + "name": "城关区" + }, { + "code": "540103", + "name": "堆龙德庆区" + }, { + "code": "540104", + "name": "达孜区" + }, { + "code": "540121", + "name": "林周县" + }, { + "code": "540122", + "name": "当雄县" + }, { + "code": "540123", + "name": "尼木县" + }, { + "code": "540124", + "name": "曲水县" + }, { + "code": "540127", + "name": "墨竹工卡县" + }, { + "code": "540171", + "name": "格尔木藏青工业园区" + }, { + "code": "540172", + "name": "拉萨经济技术开发区" + }, { + "code": "540173", + "name": "西藏文化旅游创意园区" + }, { + "code": "540174", + "name": "达孜工业园区" + }] + }, { + "code": "5402", + "name": "日喀则市", + "children": [{ + "code": "540202", + "name": "桑珠孜区" + }, { + "code": "540221", + "name": "南木林县" + }, { + "code": "540222", + "name": "江孜县" + }, { + "code": "540223", + "name": "定日县" + }, { + "code": "540224", + "name": "萨迦县" + }, { + "code": "540225", + "name": "拉孜县" + }, { + "code": "540226", + "name": "昂仁县" + }, { + "code": "540227", + "name": "谢通门县" + }, { + "code": "540228", + "name": "白朗县" + }, { + "code": "540229", + "name": "仁布县" + }, { + "code": "540230", + "name": "康马县" + }, { + "code": "540231", + "name": "定结县" + }, { + "code": "540232", + "name": "仲巴县" + }, { + "code": "540233", + "name": "亚东县" + }, { + "code": "540234", + "name": "吉隆县" + }, { + "code": "540235", + "name": "聂拉木县" + }, { + "code": "540236", + "name": "萨嘎县" + }, { + "code": "540237", + "name": "岗巴县" + }] + }, { + "code": "5403", + "name": "昌都市", + "children": [{ + "code": "540302", + "name": "卡若区" + }, { + "code": "540321", + "name": "江达县" + }, { + "code": "540322", + "name": "贡觉县" + }, { + "code": "540323", + "name": "类乌齐县" + }, { + "code": "540324", + "name": "丁青县" + }, { + "code": "540325", + "name": "察雅县" + }, { + "code": "540326", + "name": "八宿县" + }, { + "code": "540327", + "name": "左贡县" + }, { + "code": "540328", + "name": "芒康县" + }, { + "code": "540329", + "name": "洛隆县" + }, { + "code": "540330", + "name": "边坝县" + }] + }, { + "code": "5404", + "name": "林芝市", + "children": [{ + "code": "540402", + "name": "巴宜区" + }, { + "code": "540421", + "name": "工布江达县" + }, { + "code": "540423", + "name": "墨脱县" + }, { + "code": "540424", + "name": "波密县" + }, { + "code": "540425", + "name": "察隅县" + }, { + "code": "540426", + "name": "朗县" + }, { + "code": "540481", + "name": "米林市" + }] + }, { + "code": "5405", + "name": "山南市", + "children": [{ + "code": "540502", + "name": "乃东区" + }, { + "code": "540521", + "name": "扎囊县" + }, { + "code": "540522", + "name": "贡嘎县" + }, { + "code": "540523", + "name": "桑日县" + }, { + "code": "540524", + "name": "琼结县" + }, { + "code": "540525", + "name": "曲松县" + }, { + "code": "540526", + "name": "措美县" + }, { + "code": "540527", + "name": "洛扎县" + }, { + "code": "540528", + "name": "加查县" + }, { + "code": "540529", + "name": "隆子县" + }, { + "code": "540531", + "name": "浪卡子县" + }, { + "code": "540581", + "name": "错那市" + }] + }, { + "code": "5406", + "name": "那曲市", + "children": [{ + "code": "540602", + "name": "色尼区" + }, { + "code": "540621", + "name": "嘉黎县" + }, { + "code": "540622", + "name": "比如县" + }, { + "code": "540623", + "name": "聂荣县" + }, { + "code": "540624", + "name": "安多县" + }, { + "code": "540625", + "name": "申扎县" + }, { + "code": "540626", + "name": "索县" + }, { + "code": "540627", + "name": "班戈县" + }, { + "code": "540628", + "name": "巴青县" + }, { + "code": "540629", + "name": "尼玛县" + }, { + "code": "540630", + "name": "双湖县" + }] + }, { + "code": "5425", + "name": "阿里地区", + "children": [{ + "code": "542521", + "name": "普兰县" + }, { + "code": "542522", + "name": "札达县" + }, { + "code": "542523", + "name": "噶尔县" + }, { + "code": "542524", + "name": "日土县" + }, { + "code": "542525", + "name": "革吉县" + }, { + "code": "542526", + "name": "改则县" + }, { + "code": "542527", + "name": "措勤县" + }] + }] +}, { + "code": "61", + "name": "陕西省", + "children": [{ + "code": "6101", + "name": "西安市", + "children": [{ + "code": "610102", + "name": "新城区" + }, { + "code": "610103", + "name": "碑林区" + }, { + "code": "610104", + "name": "莲湖区" + }, { + "code": "610111", + "name": "灞桥区" + }, { + "code": "610112", + "name": "未央区" + }, { + "code": "610113", + "name": "雁塔区" + }, { + "code": "610114", + "name": "阎良区" + }, { + "code": "610115", + "name": "临潼区" + }, { + "code": "610116", + "name": "长安区" + }, { + "code": "610117", + "name": "高陵区" + }, { + "code": "610118", + "name": "鄠邑区" + }, { + "code": "610122", + "name": "蓝田县" + }, { + "code": "610124", + "name": "周至县" + }] + }, { + "code": "6102", + "name": "铜川市", + "children": [{ + "code": "610202", + "name": "王益区" + }, { + "code": "610203", + "name": "印台区" + }, { + "code": "610204", + "name": "耀州区" + }, { + "code": "610222", + "name": "宜君县" + }] + }, { + "code": "6103", + "name": "宝鸡市", + "children": [{ + "code": "610302", + "name": "渭滨区" + }, { + "code": "610303", + "name": "金台区" + }, { + "code": "610304", + "name": "陈仓区" + }, { + "code": "610305", + "name": "凤翔区" + }, { + "code": "610323", + "name": "岐山县" + }, { + "code": "610324", + "name": "扶风县" + }, { + "code": "610326", + "name": "眉县" + }, { + "code": "610327", + "name": "陇县" + }, { + "code": "610328", + "name": "千阳县" + }, { + "code": "610329", + "name": "麟游县" + }, { + "code": "610330", + "name": "凤县" + }, { + "code": "610331", + "name": "太白县" + }] + }, { + "code": "6104", + "name": "咸阳市", + "children": [{ + "code": "610402", + "name": "秦都区" + }, { + "code": "610403", + "name": "杨陵区" + }, { + "code": "610404", + "name": "渭城区" + }, { + "code": "610422", + "name": "三原县" + }, { + "code": "610423", + "name": "泾阳县" + }, { + "code": "610424", + "name": "乾县" + }, { + "code": "610425", + "name": "礼泉县" + }, { + "code": "610426", + "name": "永寿县" + }, { + "code": "610428", + "name": "长武县" + }, { + "code": "610429", + "name": "旬邑县" + }, { + "code": "610430", + "name": "淳化县" + }, { + "code": "610431", + "name": "武功县" + }, { + "code": "610481", + "name": "兴平市" + }, { + "code": "610482", + "name": "彬州市" + }] + }, { + "code": "6105", + "name": "渭南市", + "children": [{ + "code": "610502", + "name": "临渭区" + }, { + "code": "610503", + "name": "华州区" + }, { + "code": "610522", + "name": "潼关县" + }, { + "code": "610523", + "name": "大荔县" + }, { + "code": "610524", + "name": "合阳县" + }, { + "code": "610525", + "name": "澄城县" + }, { + "code": "610526", + "name": "蒲城县" + }, { + "code": "610527", + "name": "白水县" + }, { + "code": "610528", + "name": "富平县" + }, { + "code": "610581", + "name": "韩城市" + }, { + "code": "610582", + "name": "华阴市" + }] + }, { + "code": "6106", + "name": "延安市", + "children": [{ + "code": "610602", + "name": "宝塔区" + }, { + "code": "610603", + "name": "安塞区" + }, { + "code": "610621", + "name": "延长县" + }, { + "code": "610622", + "name": "延川县" + }, { + "code": "610625", + "name": "志丹县" + }, { + "code": "610626", + "name": "吴起县" + }, { + "code": "610627", + "name": "甘泉县" + }, { + "code": "610628", + "name": "富县" + }, { + "code": "610629", + "name": "洛川县" + }, { + "code": "610630", + "name": "宜川县" + }, { + "code": "610631", + "name": "黄龙县" + }, { + "code": "610632", + "name": "黄陵县" + }, { + "code": "610681", + "name": "子长市" + }] + }, { + "code": "6107", + "name": "汉中市", + "children": [{ + "code": "610702", + "name": "汉台区" + }, { + "code": "610703", + "name": "南郑区" + }, { + "code": "610722", + "name": "城固县" + }, { + "code": "610723", + "name": "洋县" + }, { + "code": "610724", + "name": "西乡县" + }, { + "code": "610725", + "name": "勉县" + }, { + "code": "610726", + "name": "宁强县" + }, { + "code": "610727", + "name": "略阳县" + }, { + "code": "610728", + "name": "镇巴县" + }, { + "code": "610729", + "name": "留坝县" + }, { + "code": "610730", + "name": "佛坪县" + }] + }, { + "code": "6108", + "name": "榆林市", + "children": [{ + "code": "610802", + "name": "榆阳区" + }, { + "code": "610803", + "name": "横山区" + }, { + "code": "610822", + "name": "府谷县" + }, { + "code": "610824", + "name": "靖边县" + }, { + "code": "610825", + "name": "定边县" + }, { + "code": "610826", + "name": "绥德县" + }, { + "code": "610827", + "name": "米脂县" + }, { + "code": "610828", + "name": "佳县" + }, { + "code": "610829", + "name": "吴堡县" + }, { + "code": "610830", + "name": "清涧县" + }, { + "code": "610831", + "name": "子洲县" + }, { + "code": "610881", + "name": "神木市" + }] + }, { + "code": "6109", + "name": "安康市", + "children": [{ + "code": "610902", + "name": "汉滨区" + }, { + "code": "610921", + "name": "汉阴县" + }, { + "code": "610922", + "name": "石泉县" + }, { + "code": "610923", + "name": "宁陕县" + }, { + "code": "610924", + "name": "紫阳县" + }, { + "code": "610925", + "name": "岚皋县" + }, { + "code": "610926", + "name": "平利县" + }, { + "code": "610927", + "name": "镇坪县" + }, { + "code": "610929", + "name": "白河县" + }, { + "code": "610981", + "name": "旬阳市" + }] + }, { + "code": "6110", + "name": "商洛市", + "children": [{ + "code": "611002", + "name": "商州区" + }, { + "code": "611021", + "name": "洛南县" + }, { + "code": "611022", + "name": "丹凤县" + }, { + "code": "611023", + "name": "商南县" + }, { + "code": "611024", + "name": "山阳县" + }, { + "code": "611025", + "name": "镇安县" + }, { + "code": "611026", + "name": "柞水县" + }] + }] +}, { + "code": "62", + "name": "甘肃省", + "children": [{ + "code": "6201", + "name": "兰州市", + "children": [{ + "code": "620102", + "name": "城关区" + }, { + "code": "620103", + "name": "七里河区" + }, { + "code": "620104", + "name": "西固区" + }, { + "code": "620105", + "name": "安宁区" + }, { + "code": "620111", + "name": "红古区" + }, { + "code": "620121", + "name": "永登县" + }, { + "code": "620122", + "name": "皋兰县" + }, { + "code": "620123", + "name": "榆中县" + }, { + "code": "620171", + "name": "兰州新区" + }] + }, { + "code": "6202", + "name": "嘉峪关市", + "children": [{ + "code": "620201001", + "name": "雄关街道" + }, { + "code": "620201002", + "name": "钢城街道" + }, { + "code": "620201100", + "name": "新城镇" + }, { + "code": "620201101", + "name": "峪泉镇" + }, { + "code": "620201102", + "name": "文殊镇" + }] + }, { + "code": "6203", + "name": "金昌市", + "children": [{ + "code": "620302", + "name": "金川区" + }, { + "code": "620321", + "name": "永昌县" + }] + }, { + "code": "6204", + "name": "白银市", + "children": [{ + "code": "620402", + "name": "白银区" + }, { + "code": "620403", + "name": "平川区" + }, { + "code": "620421", + "name": "靖远县" + }, { + "code": "620422", + "name": "会宁县" + }, { + "code": "620423", + "name": "景泰县" + }] + }, { + "code": "6205", + "name": "天水市", + "children": [{ + "code": "620502", + "name": "秦州区" + }, { + "code": "620503", + "name": "麦积区" + }, { + "code": "620521", + "name": "清水县" + }, { + "code": "620522", + "name": "秦安县" + }, { + "code": "620523", + "name": "甘谷县" + }, { + "code": "620524", + "name": "武山县" + }, { + "code": "620525", + "name": "张家川回族自治县" + }] + }, { + "code": "6206", + "name": "武威市", + "children": [{ + "code": "620602", + "name": "凉州区" + }, { + "code": "620621", + "name": "民勤县" + }, { + "code": "620622", + "name": "古浪县" + }, { + "code": "620623", + "name": "天祝藏族自治县" + }] + }, { + "code": "6207", + "name": "张掖市", + "children": [{ + "code": "620702", + "name": "甘州区" + }, { + "code": "620721", + "name": "肃南裕固族自治县" + }, { + "code": "620722", + "name": "民乐县" + }, { + "code": "620723", + "name": "临泽县" + }, { + "code": "620724", + "name": "高台县" + }, { + "code": "620725", + "name": "山丹县" + }] + }, { + "code": "6208", + "name": "平凉市", + "children": [{ + "code": "620802", + "name": "崆峒区" + }, { + "code": "620821", + "name": "泾川县" + }, { + "code": "620822", + "name": "灵台县" + }, { + "code": "620823", + "name": "崇信县" + }, { + "code": "620825", + "name": "庄浪县" + }, { + "code": "620826", + "name": "静宁县" + }, { + "code": "620881", + "name": "华亭市" + }] + }, { + "code": "6209", + "name": "酒泉市", + "children": [{ + "code": "620902", + "name": "肃州区" + }, { + "code": "620921", + "name": "金塔县" + }, { + "code": "620922", + "name": "瓜州县" + }, { + "code": "620923", + "name": "肃北蒙古族自治县" + }, { + "code": "620924", + "name": "阿克塞哈萨克族自治县" + }, { + "code": "620981", + "name": "玉门市" + }, { + "code": "620982", + "name": "敦煌市" + }] + }, { + "code": "6210", + "name": "庆阳市", + "children": [{ + "code": "621002", + "name": "西峰区" + }, { + "code": "621021", + "name": "庆城县" + }, { + "code": "621022", + "name": "环县" + }, { + "code": "621023", + "name": "华池县" + }, { + "code": "621024", + "name": "合水县" + }, { + "code": "621025", + "name": "正宁县" + }, { + "code": "621026", + "name": "宁县" + }, { + "code": "621027", + "name": "镇原县" + }] + }, { + "code": "6211", + "name": "定西市", + "children": [{ + "code": "621102", + "name": "安定区" + }, { + "code": "621121", + "name": "通渭县" + }, { + "code": "621122", + "name": "陇西县" + }, { + "code": "621123", + "name": "渭源县" + }, { + "code": "621124", + "name": "临洮县" + }, { + "code": "621125", + "name": "漳县" + }, { + "code": "621126", + "name": "岷县" + }] + }, { + "code": "6212", + "name": "陇南市", + "children": [{ + "code": "621202", + "name": "武都区" + }, { + "code": "621221", + "name": "成县" + }, { + "code": "621222", + "name": "文县" + }, { + "code": "621223", + "name": "宕昌县" + }, { + "code": "621224", + "name": "康县" + }, { + "code": "621225", + "name": "西和县" + }, { + "code": "621226", + "name": "礼县" + }, { + "code": "621227", + "name": "徽县" + }, { + "code": "621228", + "name": "两当县" + }] + }, { + "code": "6229", + "name": "临夏回族自治州", + "children": [{ + "code": "622901", + "name": "临夏市" + }, { + "code": "622921", + "name": "临夏县" + }, { + "code": "622922", + "name": "康乐县" + }, { + "code": "622923", + "name": "永靖县" + }, { + "code": "622924", + "name": "广河县" + }, { + "code": "622925", + "name": "和政县" + }, { + "code": "622926", + "name": "东乡族自治县" + }, { + "code": "622927", + "name": "积石山保安族东乡族撒拉族自治县" + }] + }, { + "code": "6230", + "name": "甘南藏族自治州", + "children": [{ + "code": "623001", + "name": "合作市" + }, { + "code": "623021", + "name": "临潭县" + }, { + "code": "623022", + "name": "卓尼县" + }, { + "code": "623023", + "name": "舟曲县" + }, { + "code": "623024", + "name": "迭部县" + }, { + "code": "623025", + "name": "玛曲县" + }, { + "code": "623026", + "name": "碌曲县" + }, { + "code": "623027", + "name": "夏河县" + }] + }] +}, { + "code": "63", + "name": "青海省", + "children": [{ + "code": "6301", + "name": "西宁市", + "children": [{ + "code": "630102", + "name": "城东区" + }, { + "code": "630103", + "name": "城中区" + }, { + "code": "630104", + "name": "城西区" + }, { + "code": "630105", + "name": "城北区" + }, { + "code": "630106", + "name": "湟中区" + }, { + "code": "630121", + "name": "大通回族土族自治县" + }, { + "code": "630123", + "name": "湟源县" + }] + }, { + "code": "6302", + "name": "海东市", + "children": [{ + "code": "630202", + "name": "乐都区" + }, { + "code": "630203", + "name": "平安区" + }, { + "code": "630222", + "name": "民和回族土族自治县" + }, { + "code": "630223", + "name": "互助土族自治县" + }, { + "code": "630224", + "name": "化隆回族自治县" + }, { + "code": "630225", + "name": "循化撒拉族自治县" + }] + }, { + "code": "6322", + "name": "海北藏族自治州", + "children": [{ + "code": "632221", + "name": "门源回族自治县" + }, { + "code": "632222", + "name": "祁连县" + }, { + "code": "632223", + "name": "海晏县" + }, { + "code": "632224", + "name": "刚察县" + }] + }, { + "code": "6323", + "name": "黄南藏族自治州", + "children": [{ + "code": "632301", + "name": "同仁市" + }, { + "code": "632322", + "name": "尖扎县" + }, { + "code": "632323", + "name": "泽库县" + }, { + "code": "632324", + "name": "河南蒙古族自治县" + }] + }, { + "code": "6325", + "name": "海南藏族自治州", + "children": [{ + "code": "632521", + "name": "共和县" + }, { + "code": "632522", + "name": "同德县" + }, { + "code": "632523", + "name": "贵德县" + }, { + "code": "632524", + "name": "兴海县" + }, { + "code": "632525", + "name": "贵南县" + }] + }, { + "code": "6326", + "name": "果洛藏族自治州", + "children": [{ + "code": "632621", + "name": "玛沁县" + }, { + "code": "632622", + "name": "班玛县" + }, { + "code": "632623", + "name": "甘德县" + }, { + "code": "632624", + "name": "达日县" + }, { + "code": "632625", + "name": "久治县" + }, { + "code": "632626", + "name": "玛多县" + }] + }, { + "code": "6327", + "name": "玉树藏族自治州", + "children": [{ + "code": "632701", + "name": "玉树市" + }, { + "code": "632722", + "name": "杂多县" + }, { + "code": "632723", + "name": "称多县" + }, { + "code": "632724", + "name": "治多县" + }, { + "code": "632725", + "name": "囊谦县" + }, { + "code": "632726", + "name": "曲麻莱县" + }] + }, { + "code": "6328", + "name": "海西蒙古族藏族自治州", + "children": [{ + "code": "632801", + "name": "格尔木市" + }, { + "code": "632802", + "name": "德令哈市" + }, { + "code": "632803", + "name": "茫崖市" + }, { + "code": "632821", + "name": "乌兰县" + }, { + "code": "632822", + "name": "都兰县" + }, { + "code": "632823", + "name": "天峻县" + }, { + "code": "632857", + "name": "大柴旦行政委员会" + }] + }] +}, { + "code": "64", + "name": "宁夏回族自治区", + "children": [{ + "code": "6401", + "name": "银川市", + "children": [{ + "code": "640104", + "name": "兴庆区" + }, { + "code": "640105", + "name": "西夏区" + }, { + "code": "640106", + "name": "金凤区" + }, { + "code": "640121", + "name": "永宁县" + }, { + "code": "640122", + "name": "贺兰县" + }, { + "code": "640181", + "name": "灵武市" + }] + }, { + "code": "6402", + "name": "石嘴山市", + "children": [{ + "code": "640202", + "name": "大武口区" + }, { + "code": "640205", + "name": "惠农区" + }, { + "code": "640221", + "name": "平罗县" + }] + }, { + "code": "6403", + "name": "吴忠市", + "children": [{ + "code": "640302", + "name": "利通区" + }, { + "code": "640303", + "name": "红寺堡区" + }, { + "code": "640323", + "name": "盐池县" + }, { + "code": "640324", + "name": "同心县" + }, { + "code": "640381", + "name": "青铜峡市" + }] + }, { + "code": "6404", + "name": "固原市", + "children": [{ + "code": "640402", + "name": "原州区" + }, { + "code": "640422", + "name": "西吉县" + }, { + "code": "640423", + "name": "隆德县" + }, { + "code": "640424", + "name": "泾源县" + }, { + "code": "640425", + "name": "彭阳县" + }] + }, { + "code": "6405", + "name": "中卫市", + "children": [{ + "code": "640502", + "name": "沙坡头区" + }, { + "code": "640521", + "name": "中宁县" + }, { + "code": "640522", + "name": "海原县" + }] + }] +}, { + "code": "65", + "name": "新疆维吾尔自治区", + "children": [{ + "code": "6501", + "name": "乌鲁木齐市", + "children": [{ + "code": "650102", + "name": "天山区" + }, { + "code": "650103", + "name": "沙依巴克区" + }, { + "code": "650104", + "name": "新市区" + }, { + "code": "650105", + "name": "水磨沟区" + }, { + "code": "650106", + "name": "头屯河区" + }, { + "code": "650107", + "name": "达坂城区" + }, { + "code": "650109", + "name": "米东区" + }, { + "code": "650121", + "name": "乌鲁木齐县" + }] + }, { + "code": "6502", + "name": "克拉玛依市", + "children": [{ + "code": "650202", + "name": "独山子区" + }, { + "code": "650203", + "name": "克拉玛依区" + }, { + "code": "650204", + "name": "白碱滩区" + }, { + "code": "650205", + "name": "乌尔禾区" + }] + }, { + "code": "6504", + "name": "吐鲁番市", + "children": [{ + "code": "650402", + "name": "高昌区" + }, { + "code": "650421", + "name": "鄯善县" + }, { + "code": "650422", + "name": "托克逊县" + }] + }, { + "code": "6505", + "name": "哈密市", + "children": [{ + "code": "650502", + "name": "伊州区" + }, { + "code": "650521", + "name": "巴里坤哈萨克自治县" + }, { + "code": "650522", + "name": "伊吾县" + }] + }, { + "code": "6523", + "name": "昌吉回族自治州", + "children": [{ + "code": "652301", + "name": "昌吉市" + }, { + "code": "652302", + "name": "阜康市" + }, { + "code": "652323", + "name": "呼图壁县" + }, { + "code": "652324", + "name": "玛纳斯县" + }, { + "code": "652325", + "name": "奇台县" + }, { + "code": "652327", + "name": "吉木萨尔县" + }, { + "code": "652328", + "name": "木垒哈萨克自治县" + }] + }, { + "code": "6527", + "name": "博尔塔拉蒙古自治州", + "children": [{ + "code": "652701", + "name": "博乐市" + }, { + "code": "652702", + "name": "阿拉山口市" + }, { + "code": "652722", + "name": "精河县" + }, { + "code": "652723", + "name": "温泉县" + }] + }, { + "code": "6528", + "name": "巴音郭楞蒙古自治州", + "children": [{ + "code": "652801", + "name": "库尔勒市" + }, { + "code": "652822", + "name": "轮台县" + }, { + "code": "652823", + "name": "尉犁县" + }, { + "code": "652824", + "name": "若羌县" + }, { + "code": "652825", + "name": "且末县" + }, { + "code": "652826", + "name": "焉耆回族自治县" + }, { + "code": "652827", + "name": "和静县" + }, { + "code": "652828", + "name": "和硕县" + }, { + "code": "652829", + "name": "博湖县" + }] + }, { + "code": "6529", + "name": "阿克苏地区", + "children": [{ + "code": "652901", + "name": "阿克苏市" + }, { + "code": "652902", + "name": "库车市" + }, { + "code": "652922", + "name": "温宿县" + }, { + "code": "652924", + "name": "沙雅县" + }, { + "code": "652925", + "name": "新和县" + }, { + "code": "652926", + "name": "拜城县" + }, { + "code": "652927", + "name": "乌什县" + }, { + "code": "652928", + "name": "阿瓦提县" + }, { + "code": "652929", + "name": "柯坪县" + }] + }, { + "code": "6530", + "name": "克孜勒苏柯尔克孜自治州", + "children": [{ + "code": "653001", + "name": "阿图什市" + }, { + "code": "653022", + "name": "阿克陶县" + }, { + "code": "653023", + "name": "阿合奇县" + }, { + "code": "653024", + "name": "乌恰县" + }] + }, { + "code": "6531", + "name": "喀什地区", + "children": [{ + "code": "653101", + "name": "喀什市" + }, { + "code": "653121", + "name": "疏附县" + }, { + "code": "653122", + "name": "疏勒县" + }, { + "code": "653123", + "name": "英吉沙县" + }, { + "code": "653124", + "name": "泽普县" + }, { + "code": "653125", + "name": "莎车县" + }, { + "code": "653126", + "name": "叶城县" + }, { + "code": "653127", + "name": "麦盖提县" + }, { + "code": "653128", + "name": "岳普湖县" + }, { + "code": "653129", + "name": "伽师县" + }, { + "code": "653130", + "name": "巴楚县" + }, { + "code": "653131", + "name": "塔什库尔干塔吉克自治县" + }] + }, { + "code": "6532", + "name": "和田地区", + "children": [{ + "code": "653201", + "name": "和田市" + }, { + "code": "653221", + "name": "和田县" + }, { + "code": "653222", + "name": "墨玉县" + }, { + "code": "653223", + "name": "皮山县" + }, { + "code": "653224", + "name": "洛浦县" + }, { + "code": "653225", + "name": "策勒县" + }, { + "code": "653226", + "name": "于田县" + }, { + "code": "653227", + "name": "民丰县" + }] + }, { + "code": "6540", + "name": "伊犁哈萨克自治州", + "children": [{ + "code": "654002", + "name": "伊宁市" + }, { + "code": "654003", + "name": "奎屯市" + }, { + "code": "654004", + "name": "霍尔果斯市" + }, { + "code": "654021", + "name": "伊宁县" + }, { + "code": "654022", + "name": "察布查尔锡伯自治县" + }, { + "code": "654023", + "name": "霍城县" + }, { + "code": "654024", + "name": "巩留县" + }, { + "code": "654025", + "name": "新源县" + }, { + "code": "654026", + "name": "昭苏县" + }, { + "code": "654027", + "name": "特克斯县" + }, { + "code": "654028", + "name": "尼勒克县" + }] + }, { + "code": "6542", + "name": "塔城地区", + "children": [{ + "code": "654201", + "name": "塔城市" + }, { + "code": "654202", + "name": "乌苏市" + }, { + "code": "654203", + "name": "沙湾市" + }, { + "code": "654221", + "name": "额敏县" + }, { + "code": "654224", + "name": "托里县" + }, { + "code": "654225", + "name": "裕民县" + }, { + "code": "654226", + "name": "和布克赛尔蒙古自治县" + }] + }, { + "code": "6543", + "name": "阿勒泰地区", + "children": [{ + "code": "654301", + "name": "阿勒泰市" + }, { + "code": "654321", + "name": "布尔津县" + }, { + "code": "654322", + "name": "富蕴县" + }, { + "code": "654323", + "name": "福海县" + }, { + "code": "654324", + "name": "哈巴河县" + }, { + "code": "654325", + "name": "青河县" + }, { + "code": "654326", + "name": "吉木乃县" + }] + }, { + "code": "6590", + "name": "自治区直辖县级行政区划", + "children": [{ + "code": "659001", + "name": "石河子市" + }, { + "code": "659002", + "name": "阿拉尔市" + }, { + "code": "659003", + "name": "图木舒克市" + }, { + "code": "659004", + "name": "五家渠市" + }, { + "code": "659005", + "name": "北屯市" + }, { + "code": "659006", + "name": "铁门关市" + }, { + "code": "659007", + "name": "双河市" + }, { + "code": "659008", + "name": "可克达拉市" + }, { + "code": "659009", + "name": "昆玉市" + }, { + "code": "659010", + "name": "胡杨河市" + }, { + "code": "659011", + "name": "新星市" + }, { + "code": "659012", + "name": "白杨市" + }] + }] +}] \ No newline at end of file diff --git a/.svn/pristine/39/39db0aa64a7b26e1a5d20c3ef0be7a34de8425bd.svn-base b/.svn/pristine/39/39db0aa64a7b26e1a5d20c3ef0be7a34de8425bd.svn-base new file mode 100644 index 0000000..ab396e9 --- /dev/null +++ b/.svn/pristine/39/39db0aa64a7b26e1a5d20c3ef0be7a34de8425bd.svn-base @@ -0,0 +1,331 @@ +import { HttpRequest, StoreAssist, UploadAssist, ResultData } from '@/common/Common'; +import { BaseConfig } from './BaseConfig'; +export class Service extends BaseConfig { + //获取API地址 + static ApiUrl(path : string) { + return `${this.servesUrl}${path}`; + } + + //获取图片地址 + static GetpayImg(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.payuploadUrl}${path}`; + } + } + + //获取图标地址 + static GetIconImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + + //获取图片地址 + static GetMateUrlByImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + //获取音视频地址 + static GetMateUrlByMedia(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.mediaUrl}${path}`; + } + } + //获取登录账号token + static GetUserToken() { + return Service.GetStorageCache('token'); + } + // 获取登录状态 + static GetUserIsLogin() { + var token = this.GetUserToken(); + if (token == null || token == '') { + return false; + } else { + return true; + } + } + //设置登录账户Token + static SetUserToken(token : string) { + this.SetStorageCache('token', token); + } + //清理登录账户Token + static OffUserToken() { + Service.DelStorageCache('token'); + uni.$emit('ImComOff', 'user'); + this.ClearUserStateData(); + } + //获取登录账号状态信息 + static GetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //设置当前登录账号状态信息 + static SetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //清理当前登录账号状态信息 + static ClearUserStateData() { + Service.DelStorageCache('StateDomain'); + } + + //获取缓存 + static GetStorageCache(key : string) { + return StoreAssist.Get(key); + } + //删除缓存 + static DelStorageCache(key : string) { + StoreAssist.Delete(key); + } + //设置缓存 + static SetStorageCache(key : string, data : any) { + StoreAssist.Set(key, data); + } + + /*****以下是基础方法调用与拦截器*****/ + + static Request(url : string, method : 'GET' | 'POST' | 'PUT' | undefined, data : object | any) { + const token = Service.GetUserToken(); + + const _url = Service.ApiUrl(url); + var result = HttpRequest.RequestWithToken(_url, method, token, data).then((retResult : any) => { + if (retResult.statusCode == '200') { + var obj = retResult.data; + if (obj.code == 401) { + //过期 + this.OffUserToken(); + this.Msg('登录过期,请重新登录') + this.GoPage('/pages/login/login') + return Promise.reject(); + } else if (obj.code == 40101) { + //失效 + this.OffUserToken(); + this.GoPageDelse('/pages/mine/login/login'); + return Promise.reject(); + } else if (obj.code == 1004) { + //资源不存在 + this.GoPageDelse('/pages/AppSet/404/404'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 40188) { + //无权限 + + this.GoPageDelse('/pages/AppSet/40188/40188'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 1008) { + //业务提示 + return new ResultData(obj.code, obj.msg, obj.data); + } else { + return new ResultData(obj.code, obj.msg, obj.data); + } + } else { + return new ResultData(-1, '', ''); + } + }); + return result; + } + /*****以下是腾讯云oss上传*****/ + static UpLoadMedia(code : string, fileName : string, desire : string, path : string) { + var result = this.Request(this.uploadUrl, 'GET', { code, fileName, desire }).then((retResult) => { + if (retResult.code == 0) { + var upOk = UploadAssist.Upload(retResult.data.url, path, retResult.data.cosData).then((upRet : any) => { + if (upRet.statusCode == 200) { + const retData : any = { code: retResult.data.code, file: retResult.data.file, cache: retResult.data.cache }; + return new ResultData(0, '上传成功!', retData); + } else { + this.Msg('上传失败!'); + return new ResultData(-1, '', ''); + } + }); + return upOk; + } else { + this.Msg('上传失败!'); + return new ResultData(-1, retResult.msg,retResult.data); + } + }); + return result; + } + + /***********消息操作**************/ + static Msg(message : any, icon ?: any) : void { + if (icon != null) { + uni.showToast({ + title: message, + icon: icon + }); + } else { + uni.showToast({ + title: message, + icon: 'none' + }); + } + } + + static Alert(msg : string, cb ?: any) { + uni.showModal({ + title: '提示', + content: msg, + showCancel: false, + cancelText: '取消', + confirmText: '确定', + success: res => { + if (res.confirm) { + cb && cb(); + } + } + }) + } + + static LoadIng(text : any) : void { + uni.showLoading({ + title: text, + icon: 'none' + }); + } + + static LoadClose() : void { + uni.hideLoading(); + } + + /**********跳转操作*********/ + + + static GoPageTab(path : string) : void { + uni.switchTab({ + url: path + }); + } + + /**********跳转操作*********/ + static GoPage(path : string) : void { + uni.navigateTo({ + url: path, //跳转的页面 + success: function (res) { + // 通过eventChannel向被打开页面传送数据 + } + }); + } + /**********跳转并删除当前页面操作*********/ + static GoPageDelse(path : string) : void { + uni.redirectTo({ + url: path //跳转的页面 + }); + } + + /**********返回上一页*********/ + static GoPageBack() : void { + uni.navigateBack({ delta: 1 }); + } + + /*****获取图片base64*****/ + static UpLoadMediaBase64(path : string) { + return new Promise(function (resolve, reject) { + uni.uploadFile({ + url: 'http://cloud.pccsh.com/DefUp/UploadFileImgBase64', //仅为示例,非真实的接口地址 + filePath: path, + name: 'file', + success: (uploadFileRes) => { + resolve(uploadFileRes); + }, + fail: (err) => { + reject(err); + } + }); + }); + } + /*****获取图片位置信息*****/ + //获取时间戳 + static GetTimeSpan(milliSecond : number) { + return Date.now() + milliSecond; + } + + // 时间戳处理 + static formatDate(time : any, type : number) : string { + const date = new Date(time); + const year = date.getFullYear(); + const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以加1,并用0填充 + const day = String(date.getDate()).padStart(2, '0'); // 用0填充 + const hours = String(date.getHours()).padStart(2, '0'); // 用0填充 + const minutes = String(date.getMinutes()).padStart(2, '0'); // 用0填充 + const seconds = String(date.getSeconds()).padStart(2, '0'); // 用0填充 + if (type == 0) { + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } + else if (type == 1) { + return `${year}-${month}-${day} ${hours}:${minutes}`; + } else if (type == 2) { + return `${year}-${month}-${day}`; + } else if (type == 3) { + return `${hours}:${minutes}`; + } else if (type == 4) { + return `${year}${month}${day}`; + } + + else { + return `${hours}:${minutes}`; + } + } + + /*****节流*****/ + static throttle(fn: () => void, time: number) { + let canRun: boolean = true; + return function () { + if (!canRun) return; + canRun = false; + setTimeout(() => { + fn(); //可以不执行 + canRun = true; + }, time); + }; + } + /*****防抖*****/ + static debounce void>(fn: T, time: number): (...args: Parameters) => void { + let timerId: NodeJS.Timeout | null = null; + + return (...args: Parameters) => { + if (timerId) { + clearTimeout(timerId); + } + + timerId = setTimeout(() => { + fn(...args); // 执行传入的函数 + timerId = null; // 清除定时器ID + }, time); + }; + } + + + + + + // 普通图片上传 + static uploadH5(path, dic, callback) { + console.log(this.payuploadUrl,'xxx') + uni.uploadFile({ + url: this.payuploadUrl+'/Upload/UploadFile', + method: "POST", + header: { + 'Authorization': 'Bearer ' + Service.GetUserToken(), + }, + formData: { + "path": dic, + }, + filePath: path, + name: 'file', + success: (data) => { + let info = data.data + callback(info) + } + }) + } +} \ No newline at end of file diff --git a/.svn/pristine/3a/3a3c5362c598986d1f196eb3dce7621e46811fbf.svn-base b/.svn/pristine/3a/3a3c5362c598986d1f196eb3dce7621e46811fbf.svn-base new file mode 100644 index 0000000..786b904 --- /dev/null +++ b/.svn/pristine/3a/3a3c5362c598986d1f196eb3dce7621e46811fbf.svn-base @@ -0,0 +1,372 @@ + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/3a/3a6dbb4fa1015f9389e1b76a509a716f53458390.svn-base b/.svn/pristine/3a/3a6dbb4fa1015f9389e1b76a509a716f53458390.svn-base new file mode 100644 index 0000000..eceabc1 --- /dev/null +++ b/.svn/pristine/3a/3a6dbb4fa1015f9389e1b76a509a716f53458390.svn-base @@ -0,0 +1,76 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/3a/3a8b641f06dd599b65006ec78ed8def8509fcb59.svn-base b/.svn/pristine/3a/3a8b641f06dd599b65006ec78ed8def8509fcb59.svn-base new file mode 100644 index 0000000..108ed16 --- /dev/null +++ b/.svn/pristine/3a/3a8b641f06dd599b65006ec78ed8def8509fcb59.svn-base @@ -0,0 +1,680 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/3b/3b59f0aabf1d93f4409d3be7e42e06780fae5444.svn-base b/.svn/pristine/3b/3b59f0aabf1d93f4409d3be7e42e06780fae5444.svn-base new file mode 100644 index 0000000..ee48a32 --- /dev/null +++ b/.svn/pristine/3b/3b59f0aabf1d93f4409d3be7e42e06780fae5444.svn-base @@ -0,0 +1,14 @@ +export class StoreAssist{ + static Get(key:string):any + { + return uni.getStorageSync(key); + } + static Set(key:string,value:any):void + { + uni.setStorageSync(key, value); + } + static Delete(key:string):void + { + uni.removeStorageSync(key); + } +} \ No newline at end of file diff --git a/.svn/pristine/3b/3bf9c56c52a1d4abf961ed668a307fd6c844989b.svn-base b/.svn/pristine/3b/3bf9c56c52a1d4abf961ed668a307fd6c844989b.svn-base new file mode 100644 index 0000000..2fd7d9a --- /dev/null +++ b/.svn/pristine/3b/3bf9c56c52a1d4abf961ed668a307fd6c844989b.svn-base @@ -0,0 +1,274 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/3c/3cf0b677488634ff81dce36e8e504ebde3ca6645.svn-base b/.svn/pristine/3c/3cf0b677488634ff81dce36e8e504ebde3ca6645.svn-base new file mode 100644 index 0000000..5ed55ec --- /dev/null +++ b/.svn/pristine/3c/3cf0b677488634ff81dce36e8e504ebde3ca6645.svn-base @@ -0,0 +1,361 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/3d/3d6ab2f5554eeb3708a2c657c06325e72b5ed69a.svn-base b/.svn/pristine/3d/3d6ab2f5554eeb3708a2c657c06325e72b5ed69a.svn-base new file mode 100644 index 0000000..34b1a9a --- /dev/null +++ b/.svn/pristine/3d/3d6ab2f5554eeb3708a2c657c06325e72b5ed69a.svn-base @@ -0,0 +1,600 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/3e/3e1bcc346b17a341e058f3f7b037abeeab54451f.svn-base b/.svn/pristine/3e/3e1bcc346b17a341e058f3f7b037abeeab54451f.svn-base new file mode 100644 index 0000000..c6941c9 --- /dev/null +++ b/.svn/pristine/3e/3e1bcc346b17a341e058f3f7b037abeeab54451f.svn-base @@ -0,0 +1,451 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/3f/3f083655df500aa57a6d67f16b943d6310677541.svn-base b/.svn/pristine/3f/3f083655df500aa57a6d67f16b943d6310677541.svn-base new file mode 100644 index 0000000..63818ca --- /dev/null +++ b/.svn/pristine/3f/3f083655df500aa57a6d67f16b943d6310677541.svn-base @@ -0,0 +1,131 @@ + + \ No newline at end of file diff --git a/.svn/pristine/3f/3f1979f7fe43ac27a1e092aadf5be141358fdcad.svn-base b/.svn/pristine/3f/3f1979f7fe43ac27a1e092aadf5be141358fdcad.svn-base new file mode 100644 index 0000000..ed9300c --- /dev/null +++ b/.svn/pristine/3f/3f1979f7fe43ac27a1e092aadf5be141358fdcad.svn-base @@ -0,0 +1,357 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/3f/3f4d0b19969318906c774fb4b8ed48f57b26bd2e.svn-base b/.svn/pristine/3f/3f4d0b19969318906c774fb4b8ed48f57b26bd2e.svn-base new file mode 100644 index 0000000..32c2ca3 --- /dev/null +++ b/.svn/pristine/3f/3f4d0b19969318906c774fb4b8ed48f57b26bd2e.svn-base @@ -0,0 +1,246 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/3f/3fe5b4942a5e7905879e908ff41b3d349ba16259.svn-base b/.svn/pristine/3f/3fe5b4942a5e7905879e908ff41b3d349ba16259.svn-base new file mode 100644 index 0000000..07d9281 --- /dev/null +++ b/.svn/pristine/3f/3fe5b4942a5e7905879e908ff41b3d349ba16259.svn-base @@ -0,0 +1,23 @@ +{ + // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/ + // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数 + "version" : "0.0", + "configurations" : [ + { + "app-plus" : { + "launchtype" : "local" + }, + "default" : { + "launchtype" : "local" + }, + "mp-weixin" : { + "launchtype" : "local" + }, + "type" : "uniCloud" + }, + { + "playground" : "standard", + "type" : "uni-app:app-android" + } + ] +} diff --git a/.svn/pristine/40/40bd542b50295bc6da8a585dbe0854e75110d73f.svn-base b/.svn/pristine/40/40bd542b50295bc6da8a585dbe0854e75110d73f.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..24d44e3c62defc04ce4c06b38bd8e966967df32b GIT binary patch literal 7616 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 今日已赚 + + ¥86.50 + + + 立即提现 + + + + + {{item}} + + 本月共30单累计¥1,240.00 + + + + + 收入明细 + + + + + + + + 订单 MT20251020123456 + 10-20 18:35 + + +¥5.50 + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/42/426321a8c51b70771a15c7d88886bc004de7bf3c.svn-base b/.svn/pristine/42/426321a8c51b70771a15c7d88886bc004de7bf3c.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..89a1e5af48991ffff69e195ec73009cb0e7c7b9c GIT binary patch literal 531 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 + import { onLaunch, onShow, onHide } from "@dcloudio/uni-app"; + import { onMounted, ref } from "vue"; + import { WebSocket } from '@/Service/Comm/TwWebSocket'; + import { Service } from "@/Service/Service" + import { CNRiderOrderService } from '@/Service/CN/CNRiderOrderService' + + import { CNRiderLoginService } from "@/Service/CN/CNRiderLoginService"; + let isios = ref(false) + + const currentLatitude = ref(0); + const currentLongitude = ref(0); + + let locationTimer : ReturnType | null = null; + + + onLaunch(() => { + isios.value = uni.getSystemInfoSync().platform != 'ios'//是否为ios + //#ifdef APP-PLUS//app + if (isios.value) { + getUpData()//更新 + } + //#endif + // 在 App 启动时,立即初始化并建立 WebSocket 连接 + WebSocket.ConnectSocketInit(); + // 打开调用 + uni.$on("ImCom", () => { + WebSocket.ConnectSocketInit(); + }) + // 关闭调用 + uni.$on("ImComOff", () => { + WebSocket.CloseSocket(); + }) + + }); + onShow(() => { + WebSocket.ConnectSocketInit(); + + }); + onHide(() => { + + }); + + + const startFetchingLocation = () => { + // 安全检查:如果定时器已存在,先清除,防止重复启动 + if (locationTimer) { + clearInterval(locationTimer); + } + + console.log("开始定时获取位置,间隔1分钟..."); + + // 1. 立即执行第一次获取 + getLocationNow(); + + // 2. 设置定时器,每 60000 毫秒 (1分钟) 执行一次 + locationTimer = setInterval(() => { + getLocationNow(); + }, 60000); + }; + + const getLocationNow = () => { + uni.getLocation({ + type: 'wgs84', + isHighAccuracy: true, + success: (res) => { + + if (Service.GetUserIsLogin()) { + CNRiderOrderService.UpdateRiderLocation(res.longitude, res.latitude).then(res => { }) + } + + }, + fail: (err) => { + // console.error('获取经纬度失败:', err); + } + }); + }; + + /** + * 停止定时获取位置 + */ + const stopFetchingLocation = () => { + if (locationTimer) { + clearInterval(locationTimer); + locationTimer = null; // 清理 ID + } + }; + + const getUpData = () => { + plus.runtime.getProperty(plus.runtime.appid, (wgtinfo) => { + CNRiderLoginService.GetAppVersion(wgtinfo.versionCode, 'Rider').then(res => { + if (res.data.url !== '') { + setTimeout(function () { + Service.GoPage('/pages/index/upApp?url=' + res.data.url) + }, 1000) + } + }) + }) + + } + + \ No newline at end of file diff --git a/.svn/pristine/47/474f472c2e82a4659297aec1bbe3510d788d0abc.svn-base b/.svn/pristine/47/474f472c2e82a4659297aec1bbe3510d788d0abc.svn-base new file mode 100644 index 0000000..ddb156b --- /dev/null +++ b/.svn/pristine/47/474f472c2e82a4659297aec1bbe3510d788d0abc.svn-base @@ -0,0 +1,332 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/48/487ecf7a46b124aedee39242167086d7d413688d.svn-base b/.svn/pristine/48/487ecf7a46b124aedee39242167086d7d413688d.svn-base new file mode 100644 index 0000000..934825b --- /dev/null +++ b/.svn/pristine/48/487ecf7a46b124aedee39242167086d7d413688d.svn-base @@ -0,0 +1,13 @@ +import {ResultData} from "./Domain/ResultData"; +import {StoreAssist} from "./Unit/StorageAssist"; +import {HttpRequest} from "./Unit/HttpRequest"; +import { StringAssist } from "./Unit/StringAssist"; +import { UploadAssist } from "./Unit/UploadAssist"; + +export { + ResultData, + HttpRequest, + StoreAssist, + StringAssist, + UploadAssist +} \ No newline at end of file diff --git a/.svn/pristine/48/48c6a4808d9e38936e7db7be49d21d84bbd6993b.svn-base b/.svn/pristine/48/48c6a4808d9e38936e7db7be49d21d84bbd6993b.svn-base new file mode 100644 index 0000000..f696981 --- /dev/null +++ b/.svn/pristine/48/48c6a4808d9e38936e7db7be49d21d84bbd6993b.svn-base @@ -0,0 +1,548 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/49/495fa74927a8a586286f44884071823b4e7157f2.svn-base b/.svn/pristine/49/495fa74927a8a586286f44884071823b4e7157f2.svn-base new file mode 100644 index 0000000..6c79565 --- /dev/null +++ b/.svn/pristine/49/495fa74927a8a586286f44884071823b4e7157f2.svn-base @@ -0,0 +1,699 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/4a/4a12f9b6bfd424b1ebef1a3cb7bb5fbd5adae709.svn-base b/.svn/pristine/4a/4a12f9b6bfd424b1ebef1a3cb7bb5fbd5adae709.svn-base new file mode 100644 index 0000000..49d1141 --- /dev/null +++ b/.svn/pristine/4a/4a12f9b6bfd424b1ebef1a3cb7bb5fbd5adae709.svn-base @@ -0,0 +1,58 @@ +import { Service } from '@/Service/Service'; +/*****登录接口*****/ +class CNRiderLoginService { + private static RiderLoginPath : string = '/Login/RiderLogin'; + /*****登录注册*****/ + static RiderLogin(login : any) { + var result = Service.Request(this.RiderLoginPath, "POST", login); + return result; + } + + private static GetKefuInfoPath : string = '/Home/GetKefuInfo'; + /*****获取客服电话*****/ + static GetKefuInfo() { + var result = Service.Request(this.GetKefuInfoPath, "GET", {}); + return result; + } + + + private static GetPrivacyPath : string = '/Home/GetPrivacy'; + /*****用户协议*****/ + static GetPrivacy(type : number) { + var result = Service.Request(this.GetPrivacyPath, "GET", { type }); + return result; + } + + private static SendUserSmsPath : string = '/Login/SendUserSms'; + /*****发送验证码*****/ + static SendUserSms(phone : string, code : string) { + var result = Service.Request(this.SendUserSmsPath, "POST", { phone, code }); + return result; + } + + private static UpdateRiderPhonePath : string = '/Rider/UpdateRiderPhone'; + /*****修改手机号*****/ + static UpdateRiderPhone(phone : string, code : string) { + var result = Service.Request(this.UpdateRiderPhonePath, "POST", { phone, code }); + return result; + } + + + private static UpdateRiderPasswordPath : string = '/Rider/UpdateRiderPassword'; + /*****修改密码*****/ + static UpdateRiderPassword( code:string, password : string, confimPwd : string) { + var result = Service.Request(this.UpdateRiderPasswordPath, "POST", { code, password, confimPwd }); + return result; + } + + private static GetAppVersionPath : string = '/Login/GetAppVersion'; + /*****版本更新*****/ + static GetAppVersion(version : number, type : string) { + var result = Service.Request(this.GetAppVersionPath, "GET", { version, type }); + return result; + } +} +export { + Service, + CNRiderLoginService +} \ No newline at end of file diff --git a/.svn/pristine/4a/4ac36dba692270a63da1fa79e34d5dbd8c997da1.svn-base b/.svn/pristine/4a/4ac36dba692270a63da1fa79e34d5dbd8c997da1.svn-base new file mode 100644 index 0000000..ee35486 --- /dev/null +++ b/.svn/pristine/4a/4ac36dba692270a63da1fa79e34d5dbd8c997da1.svn-base @@ -0,0 +1,239 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/4a/4ae3b267617b0f84d69a2cd21edd0351a6b612b6.svn-base b/.svn/pristine/4a/4ae3b267617b0f84d69a2cd21edd0351a6b612b6.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..acf428962aadbdeeb3a67b2f082910b2c588ae9a GIT binary patch literal 8650 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 异常已上报 · 处理中 + + + + + 关联订单 + + + 订单号: + MT20251017123456 + + + 酸菜鱼x1 + + + 2025-10-17 18:30 + + + + + + + 异常详情 + + + + 骑手上报 + + + 餐品盖子没封好洒漏 + + + + + + + + + + 2025-10-25 19:25 + + + + + + + + 处理结果 + + + 同意调换菜品 + + + 2025-10-25 20:10 + + + 已联系用户解决 + + + + + + + 请补充说明(选填) + + + + + + + + + + + 提交补充说明 + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/4c/4c97a03f53fd29097e3fb434b72b48dd3e8261d6.svn-base b/.svn/pristine/4c/4c97a03f53fd29097e3fb434b72b48dd3e8261d6.svn-base new file mode 100644 index 0000000..267a5a5 --- /dev/null +++ b/.svn/pristine/4c/4c97a03f53fd29097e3fb434b72b48dd3e8261d6.svn-base @@ -0,0 +1,136 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/4d/4d4b9a37b4cb14c9ba2aa16accc9931395661634.svn-base b/.svn/pristine/4d/4d4b9a37b4cb14c9ba2aa16accc9931395661634.svn-base new file mode 100644 index 0000000..cd79a6b --- /dev/null +++ b/.svn/pristine/4d/4d4b9a37b4cb14c9ba2aa16accc9931395661634.svn-base @@ -0,0 +1,248 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [ + { + "root": "pages/order", + "pages": [ + { + "path": "orderDetail", + "style": { + "navigationBarTitleText": "项目中心", + "navigationStyle": "custom" + } + }, + { + "path" : "navigation", + "style" : + { + "navigationBarTitleText" : "导航", + "navigationStyle": "custom" + } + }, + { + "path" : "abnormal", + "style" : + { + "navigationBarTitleText" : "上报异常", + "navigationStyle": "custom" + } + }, + { + "path" : "grabOrder", + "style" : + { + "navigationBarTitleText" : "订单详情" + } + }, + { + "path" : "incomeDetail", + "style" : + { + "navigationBarTitleText" : "收入详情", + "navigationStyle": "custom" + } + }, + { + "path" : "withdraw", + "style" : + { + "navigationBarTitleText" : "提现申请" + } + }, + { + "path" : "finish", + "style" : + { + "navigationBarTitleText" : "订单完成" + } + }, + { + "path" : "upAbnormal", + "style" : + { + "navigationBarTitleText" : "异常上报" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path" : "edit", + "style" : + { + "navigationBarTitleText" : "编辑资料" + } + }, + { + "path" : "statusContro", + "style" : + { + "navigationBarTitleText" : "上线管理" + } + }, + { + "path" : "myKF", + "style" : + { + "navigationBarTitleText" : "联系客服", + "navigationStyle": "custom" + } + }, + { + "path" : "AbnormalList", + "style" : + { + "navigationBarTitleText" : "异常订单" + } + }, + { + "path" : "check", + "style" : + { + "navigationBarTitleText" : "签到奖励" + } + }, + { + "path" : "abnormalDetail", + "style" : + { + "navigationBarTitleText" : "异常详情" + } + }, + { + "path" : "security", + "style" : + { + "navigationBarTitleText" : "账号与安全" + } + }, + { + "path" : "authentication", + "style" : + { + "navigationBarTitleText" : "实名认证" + } + }, + { + "path" : "login", + "style" : + { + "navigationBarTitleText" : "登录", + "navigationStyle": "custom" + } + }, + { + "path" : "noticeList", + "style" : + { + "navigationBarTitleText" : "消息通知", + "navigationStyle": "custom" + } + }, + { + "path" : "setConnect", + "style" : + { + "navigationBarTitleText" : "紧急联系人" + } + }, + { + "path" : "evaluate", + "style" : + { + "navigationBarTitleText" : "评价中心" + } + }, + { + "path" : "completeData", + "style" : + { + "navigationBarTitleText" : "完善信息" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/4e/4e3eaba39f11c238f525577b2e57f3a4243092f3.svn-base b/.svn/pristine/4e/4e3eaba39f11c238f525577b2e57f3a4243092f3.svn-base new file mode 100644 index 0000000..6656e87 --- /dev/null +++ b/.svn/pristine/4e/4e3eaba39f11c238f525577b2e57f3a4243092f3.svn-base @@ -0,0 +1,361 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/4f/4f10145e3e18b6e9191e687d42afac2af7ccde5d.svn-base b/.svn/pristine/4f/4f10145e3e18b6e9191e687d42afac2af7ccde5d.svn-base new file mode 100644 index 0000000..aae5004 --- /dev/null +++ b/.svn/pristine/4f/4f10145e3e18b6e9191e687d42afac2af7ccde5d.svn-base @@ -0,0 +1,291 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/4f/4f52bf6c55573dbccefca22627683254c6a9558e.svn-base b/.svn/pristine/4f/4f52bf6c55573dbccefca22627683254c6a9558e.svn-base new file mode 100644 index 0000000..23b085e --- /dev/null +++ b/.svn/pristine/4f/4f52bf6c55573dbccefca22627683254c6a9558e.svn-base @@ -0,0 +1,13 @@ +import { createSSRApp } from "vue"; +import App from "./App.vue"; + +import uviewPlus from 'uview-plus' + +export function createApp() { + const app = createSSRApp(App); + + app.use(uviewPlus) + return { + app, + }; +} diff --git a/.svn/pristine/50/503f3354f2394cc9a55bad4dcb8373a4773a9e8d.svn-base b/.svn/pristine/50/503f3354f2394cc9a55bad4dcb8373a4773a9e8d.svn-base new file mode 100644 index 0000000..dff1f57 --- /dev/null +++ b/.svn/pristine/50/503f3354f2394cc9a55bad4dcb8373a4773a9e8d.svn-base @@ -0,0 +1,543 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/50/507186555322b26e2b3aabe8d7aea1306799358b.svn-base b/.svn/pristine/50/507186555322b26e2b3aabe8d7aea1306799358b.svn-base new file mode 100644 index 0000000..d0867fa --- /dev/null +++ b/.svn/pristine/50/507186555322b26e2b3aabe8d7aea1306799358b.svn-base @@ -0,0 +1,123 @@ + + \ No newline at end of file diff --git a/.svn/pristine/50/50c609aefd7031da7a487467371dd43bc53d16fb.svn-base b/.svn/pristine/50/50c609aefd7031da7a487467371dd43bc53d16fb.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..7db51fc5dc2a4414eb3c7b3d5f9352980c3eb551 GIT binary patch literal 1851 zcmV-B2gLY^P)ybZJu(5G^G z3hIAN%!I^}Em?{^@%8aNHkNcHf4{D*5Zie}vb2hT2+}G!h(r((q-6wJ)*Oit5u{}V zTGkwi5D}zh1X|V{i4YN_WdxR*vp3N_*x>y{kFXstY=CWlDO=RtI1v)H$@QHBaPOCi z{+NMJ_4IwJKf~@w(KT$U6iu)_UDy=c%e_=zqudPEtKR~%hpiTb;hDg{QFNYxCmJZC z1K1APmmY*UhOsbXdshF{tq^2qqIUql&pjTNqPM^Fcn|R9G!>m9VlKJf^2}~IzAHf( zz|RwX0Qfx4rwj$~@7^im;pUQiJnRI$y-JUFBekBp|D&SdqO?+wRq!8DeGd574F0X6 z&lom%oIe4hKH!%PHOLlcMcoHz(|JhmjS5l~ye9fcL_LbUpq_hFafNM4n$9vKx+43M z4VCsR)l)Yn2!@$#N{Q_ly?qK>>+t}wG4SZ!Uw~<*H6>4)J^}vz?MUt3jMNdf$xWih znc;6vLte8mxTbLDLY~@da6tgvI;A8u9<3h0Hqzrw;J=R4A>a>h6P5m%s0+ZKqfLb? zry=hVe5FMhaD3+-(TD;pwFKb{EM_$$^!8VC`6x4+@{?ttGxX-OzN`xPN|2{G zQWX7)wA!neAc%tT2Yi^~3oK?e6SSi0Tpn3#uX7A-7cd^@hoosAy;s3_J4A0Dm-YBs zE#PZQv4ehyVarJnjtE4u6IAokQYZ%0?QJr>4xvPMBrs1K7hJb^wsyOFI?5R8)& z9pS~uJYwW2yasWiQ4n0Hf8q>VZw;IvI(y+Yh?`;*gcFMl7y1!C)a{E=DT9nv5k$)| zXF=2x{f!TGb1_xQfLU4C7bZCiQs_kv1|uMX1Vb6dkq8ooV=ylwNHCOP9El)dI0o|~ zf&@bu#*qjThGQ@~s|ezaE>1xaBo0?^uOf&yx;ON=M?d^Yp)<{@IxZV5>f`A-$YJ|rm*Zu+&7BOv46dn zYQCK(sxTtRLJ&m2jKSmURolG;{Y;pNmZxwR+@fp{6&wM_m7Oa(g@92+u|`Pc27bpG z8LWPOhSBXTo<-@q6)Ml&X+a=H4@1ytIVM96h+;_bKHOm_vd2yf0+_W0S%w*6zte&sLijPeS{xy2 zZ6C`G=(HfD>Gx$AKKqYE{8TQ5S~@KVdiO;rxuO5(>gN`#aE+H|rAvT5Qa^@$)QfHs{hf^3?2 zNqr(n37}0UZ;c?E1{bS75hNB_Pro9FC%9O}M37iyJ^hLxp5S5?6G38;_4F%(c!G;n zOazHV*3+*D;t4KRF%cvdSx>+2f+#xPOEtgpv;$V}JPE8^b#WJjh;L9H5Rq6p17<}o zi%}4zsqhy7T%1c@BLU+#k48cMA)0yK9z(L23E=yB{;u9#kn9#0O=o7;lHx@`5&zhj z@$MF5gm7hF6UBF046$!?fHYYv5a7t*Uy!&xQP!L5tb%Yod>6*e^X)N5q=|p?Nz9!C z{}kUY|27sgwOOekd0_~11>@g*5=)dT1LHL#=bLXU3z8R*ZCnB(NL;?o-bD~+Wc3T! zJcuARIt`?WAPqpbRVjkl=roWff;0f#R;37Hqtif|2+{y_Ta_Y+jZOn;B1i+!ZB_mc p00960qfMq100006Nkl`2(002ovPDHLkV1l|2O4$Ga literal 0 HcmV?d00001 diff --git a/.svn/pristine/51/515440b676b5a6b1918fe109ad96c0b450f5e41e.svn-base b/.svn/pristine/51/515440b676b5a6b1918fe109ad96c0b450f5e41e.svn-base new file mode 100644 index 0000000..be7aebd --- /dev/null +++ b/.svn/pristine/51/515440b676b5a6b1918fe109ad96c0b450f5e41e.svn-base @@ -0,0 +1,544 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/52/52232a5fa2f3fff9c6d2c2212f7268048f3800c8.svn-base b/.svn/pristine/52/52232a5fa2f3fff9c6d2c2212f7268048f3800c8.svn-base new file mode 100644 index 0000000..f1ae1c3 --- /dev/null +++ b/.svn/pristine/52/52232a5fa2f3fff9c6d2c2212f7268048f3800c8.svn-base @@ -0,0 +1,248 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path" : "pages/index/upApp", + "style" : + { + "navigationBarTitleText" : "版本更新" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [{ + "root": "pages/order", + "pages": [{ + "path": "orderDetail", + "style": { + "navigationBarTitleText": "订单详情" + } + }, + { + "path": "navigation", + "style": { + "navigationBarTitleText": "导航", + "navigationStyle": "custom" + } + }, + { + "path": "abnormal", + "style": { + "navigationBarTitleText": "上报异常" + } + }, + { + "path": "grabOrder", + "style": { + "navigationBarTitleText": "订单详情" + } + }, + { + "path": "incomeDetail", + "style": { + "navigationBarTitleText": "收入详情", + "navigationStyle": "custom" + } + }, + { + "path": "withdraw", + "style": { + "navigationBarTitleText": "提现申请" + } + }, + { + "path": "finish", + "style": { + "navigationBarTitleText": "订单完成" + } + }, + { + "path": "upAbnormal", + "style": { + "navigationBarTitleText": "异常上报" + } + }, + { + "path": "orderMap", + "style": { + "navigationBarTitleText": "订单地图" + } + }, + { + "path": "orderChat", + "style": { + "navigationBarTitleText": "联系客户" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path": "edit", + "style": { + "navigationBarTitleText": "编辑资料" + } + }, + { + "path": "statusContro", + "style": { + "navigationBarTitleText": "上线管理" + } + }, + { + "path": "myKF", + "style": { + "navigationBarTitleText": "联系客服" + } + }, + { + "path": "AbnormalList", + "style": { + "navigationBarTitleText": "异常订单" + } + }, + { + "path": "check", + "style": { + "navigationBarTitleText": "签到奖励" + } + }, + { + "path": "abnormalDetail", + "style": { + "navigationBarTitleText": "异常详情" + } + }, + { + "path": "security", + "style": { + "navigationBarTitleText": "账号与安全" + } + }, + { + "path": "authentication", + "style": { + "navigationBarTitleText": "实名认证" + } + }, + { + "path": "login", + "style": { + "navigationBarTitleText": "登录", + "navigationStyle": "custom" + } + }, + { + "path": "noticeList", + "style": { + "navigationBarTitleText": "消息通知", + "navigationStyle": "custom" + } + }, + { + "path": "setConnect", + "style": { + "navigationBarTitleText": "紧急联系人" + } + }, + { + "path": "evaluate", + "style": { + "navigationBarTitleText": "评价中心" + } + }, + { + "path": "completeData", + "style": { + "navigationBarTitleText": "完善信息" + } + }, + { + "path": "withDrowList", + "style": { + "navigationBarTitleText": "提现列表" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/52/522f8e2965a4f1de7ee94506003f00d6fd1a1b52.svn-base b/.svn/pristine/52/522f8e2965a4f1de7ee94506003f00d6fd1a1b52.svn-base new file mode 100644 index 0000000..b09f70d --- /dev/null +++ b/.svn/pristine/52/522f8e2965a4f1de7ee94506003f00d6fd1a1b52.svn-base @@ -0,0 +1,65 @@ + + + + + diff --git a/.svn/pristine/52/52bd68a841e3ebbede64ae9c2c0607e51788fce5.svn-base b/.svn/pristine/52/52bd68a841e3ebbede64ae9c2c0607e51788fce5.svn-base new file mode 100644 index 0000000..1930158 --- /dev/null +++ b/.svn/pristine/52/52bd68a841e3ebbede64ae9c2c0607e51788fce5.svn-base @@ -0,0 +1,341 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/55/55347ec2198c24ab5a44ad5f9bf919ff85e5a8de.svn-base b/.svn/pristine/55/55347ec2198c24ab5a44ad5f9bf919ff85e5a8de.svn-base new file mode 100644 index 0000000..27f8692 --- /dev/null +++ b/.svn/pristine/55/55347ec2198c24ab5a44ad5f9bf919ff85e5a8de.svn-base @@ -0,0 +1,488 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/55/555bb6e9e62d44eaa0a39e2726a1d64f965076c2.svn-base b/.svn/pristine/55/555bb6e9e62d44eaa0a39e2726a1d64f965076c2.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..5a0a6bac63eb95274249cb8592ddb94894ce081f GIT binary patch literal 604 zcmV-i0;BzjP)vK^>+^Q^S=IseT>cNi$;f3Vg_|6YT%mqjVqUvt9qjg4Ok^_#%I`#!ih)f!L0Kk|_;6|aQ}@0+Jx zpcslJH*Dbv^hfe6pL1Y!+yMW<@Q0S_XCW51V@04I8LQWUg)?& q00030|8s1co&W#<21!IgR09A{S`$D64Txa?0000 + + + + + + + + + + + + + + + diff --git a/.svn/pristine/56/566d116287a22b7dfb6c009541eb3f2394694324.svn-base b/.svn/pristine/56/566d116287a22b7dfb6c009541eb3f2394694324.svn-base new file mode 100644 index 0000000..1ac092b --- /dev/null +++ b/.svn/pristine/56/566d116287a22b7dfb6c009541eb3f2394694324.svn-base @@ -0,0 +1,206 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/56/56fe667d4dcabe630cfce5020cf6665647d37cf8.svn-base b/.svn/pristine/56/56fe667d4dcabe630cfce5020cf6665647d37cf8.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..45bb05f498e744734a10e3aa730f6e0fb8a00454 GIT binary patch literal 722 zcmV;@0xkWCP)F#1?Y8r$8EIR|dDPQDI%C)wd&UgJ?TLF$s)m*Vsn_IC{ z5oxLETz$vytGR7JsQ_Bs$(Si1@U36?vGiY#`dzWG=jwBOGcA>>S)@oRfRk}rfaH9~ zFH8om=MCLQP{#e9Yhg~owOU2uG&MF>zk?3b z9v$EL5(mkXIZntfEP{i;Wz0rR1@Ooku|l@s$RQ<9-qky5FEVBhNHz%2Od16CU+b~C9gYUq&HGz- zsQ0kS*SY!#cCKLbyWCML%;lH3J^|1G4Wza2c&SR$cyQ8O!4ybyXssgeCmy#3&@;CZ zkb-c>H@(Yv&@S^R#{=)F#D}=bSp%4i$%E~et@*EuBNDNqx!L7`sYWiC)dY|dEM}90 z){GrRA0R_b;iW7V7m!apWZ)&OKolb!K$UxT$xt;O1*t^t%W z<3X>zuZ;%1j@AmR1NZ{~0RR8X8k`jX000I_L_t&o03`*YK+ULWasU7T07*qoM6N<$ Ef { + if (retResult.statusCode == '200') { + var obj = retResult.data; + if (obj.code == 401) { + //过期 + this.OffUserToken(); + // this.Msg('登录过期,请重新登录') + this.GoPage('/pages/my/login') + return Promise.reject(); + } else if (obj.code == 40101) { + //失效 + this.OffUserToken(); + this.GoPageDelse('/pages/mine/login/login'); + return Promise.reject(); + } else if (obj.code == 1004) { + //资源不存在 + this.GoPageDelse('/pages/AppSet/404/404'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 40188) { + //无权限 + + this.GoPageDelse('/pages/AppSet/40188/40188'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 1008) { + //业务提示 + return new ResultData(obj.code, obj.msg, obj.data); + } else { + return new ResultData(obj.code, obj.msg, obj.data); + } + } else { + return new ResultData(-1, '', ''); + } + }); + return result; + } + /*****以下是腾讯云oss上传*****/ + static UpLoadMedia(code : string, fileName : string, desire : string, path : string) { + var result = this.Request(this.uploadUrl, 'GET', { code, fileName, desire }).then((retResult) => { + if (retResult.code == 0) { + var upOk = UploadAssist.Upload(retResult.data.url, path, retResult.data.cosData).then((upRet : any) => { + if (upRet.statusCode == 200) { + const retData : any = { code: retResult.data.code, file: retResult.data.file, cache: retResult.data.cache }; + return new ResultData(0, '上传成功!', retData); + } else { + this.Msg('上传失败!'); + return new ResultData(-1, '', ''); + } + }); + return upOk; + } else { + this.Msg('上传失败!'); + return new ResultData(-1, retResult.msg,retResult.data); + } + }); + return result; + } + + /***********消息操作**************/ + static Msg(message : any, icon ?: any) : void { + if (icon != null) { + uni.showToast({ + title: message, + icon: icon + }); + } else { + uni.showToast({ + title: message, + icon: 'none' + }); + } + } + + static Alert(msg : string, cb ?: any) { + uni.showModal({ + title: '提示', + content: msg, + showCancel: false, + cancelText: '取消', + confirmText: '确定', + success: res => { + if (res.confirm) { + cb && cb(); + } + } + }) + } + + static LoadIng(text : any) : void { + uni.showLoading({ + title: text, + icon: 'none' + }); + } + + static LoadClose() : void { + uni.hideLoading(); + } + + /**********跳转操作*********/ + + + static GoPageTab(path : string) : void { + uni.switchTab({ + url: path + }); + } + + /**********跳转操作*********/ + static GoPage(path : string) : void { + uni.navigateTo({ + url: path, //跳转的页面 + success: function (res) { + // 通过eventChannel向被打开页面传送数据 + } + }); + } + /**********跳转并删除当前页面操作*********/ + static GoPageDelse(path : string) : void { + uni.redirectTo({ + url: path //跳转的页面 + }); + } + + /**********返回上一页*********/ + static GoPageBack() : void { + uni.navigateBack({ delta: 1 }); + } + + /*****获取图片base64*****/ + static UpLoadMediaBase64(path : string) { + return new Promise(function (resolve, reject) { + uni.uploadFile({ + url: 'http://cloud.pccsh.com/DefUp/UploadFileImgBase64', //仅为示例,非真实的接口地址 + filePath: path, + name: 'file', + success: (uploadFileRes) => { + resolve(uploadFileRes); + }, + fail: (err) => { + reject(err); + } + }); + }); + } + /*****获取图片位置信息*****/ + //获取时间戳 + static GetTimeSpan(milliSecond : number) { + return Date.now() + milliSecond; + } + + // 时间戳处理 + static formatDate(time : any, type : number) : string { + const date = new Date(time); + const year = date.getFullYear(); + const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以加1,并用0填充 + const day = String(date.getDate()).padStart(2, '0'); // 用0填充 + const hours = String(date.getHours()).padStart(2, '0'); // 用0填充 + const minutes = String(date.getMinutes()).padStart(2, '0'); // 用0填充 + const seconds = String(date.getSeconds()).padStart(2, '0'); // 用0填充 + if (type == 0) { + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } + else if (type == 1) { + return `${year}-${month}-${day} ${hours}:${minutes}`; + } else if (type == 2) { + return `${year}-${month}-${day}`; + } else if (type == 3) { + return `${hours}:${minutes}`; + } else if (type == 4) { + return `${year}${month}${day}`; + } + + else { + return `${hours}:${minutes}`; + } + } + + /*****节流*****/ + static throttle(fn: () => void, time: number) { + let canRun: boolean = true; + return function () { + if (!canRun) return; + canRun = false; + setTimeout(() => { + fn(); //可以不执行 + canRun = true; + }, time); + }; + } + /*****防抖*****/ + static debounce void>(fn: T, time: number): (...args: Parameters) => void { + let timerId: NodeJS.Timeout | null = null; + + return (...args: Parameters) => { + if (timerId) { + clearTimeout(timerId); + } + + timerId = setTimeout(() => { + fn(...args); // 执行传入的函数 + timerId = null; // 清除定时器ID + }, time); + }; + } + + + + + + // 普通图片上传 + static uploadH5(path, dic, callback) { + console.log(this.payuploadUrl,'xxx') + uni.uploadFile({ + url: this.payuploadUrl+'/Upload/Upload', + method: "POST", + header: { + 'Authorization': 'Bearer ' + Service.GetUserToken(), + }, + formData: { + "path": dic, + }, + filePath: path, + name: 'file', + success: (data) => { + let info = data.data + callback(info) + } + }) + } +} \ No newline at end of file diff --git a/.svn/pristine/57/577920d4df1687a6c22606513720c37d02ffdca2.svn-base b/.svn/pristine/57/577920d4df1687a6c22606513720c37d02ffdca2.svn-base new file mode 100644 index 0000000..27c4f15 --- /dev/null +++ b/.svn/pristine/57/577920d4df1687a6c22606513720c37d02ffdca2.svn-base @@ -0,0 +1,626 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/57/579dfcca82ef079712f7c61e3d23a3db3af2bb63.svn-base b/.svn/pristine/57/579dfcca82ef079712f7c61e3d23a3db3af2bb63.svn-base new file mode 100644 index 0000000..a9886de --- /dev/null +++ b/.svn/pristine/57/579dfcca82ef079712f7c61e3d23a3db3af2bb63.svn-base @@ -0,0 +1,10 @@ +export class ResultData { + public code: number=-1; + public msg: string=""; + public data: any; + constructor(code:number,msg:string,data:any) { + this.code=code; + this.msg = msg; + this.data = data; + } +} \ No newline at end of file diff --git a/.svn/pristine/57/57a7eb2fec70d95f486859ae5e4eb069531ffb8f.svn-base b/.svn/pristine/57/57a7eb2fec70d95f486859ae5e4eb069531ffb8f.svn-base new file mode 100644 index 0000000..763b958 --- /dev/null +++ b/.svn/pristine/57/57a7eb2fec70d95f486859ae5e4eb069531ffb8f.svn-base @@ -0,0 +1,10 @@ +export class BaseConfig { + protected static servesUrl: string = "http://192.168.0.142:5085";//线下 + protected static imgUrl: string = "http://192.168.0.142:5085"; + // protected static servesUrl: string = "https://cnapi.hnzchl.cn"; + // protected static imgUrl: string = "https://cnapi.hnzchl.cn"; + protected static mediaUrl: string = "http://byc1.xypays.cn/"; + protected static uploadUrl: string = "/TencentCos/GetUpLoadInfo"; + // protected static payuploadUrl: string = "http://192.168.0.142:5085"; + protected static payuploadUrl: string = "https://cnapi.hnzchl.cn"; +} \ No newline at end of file diff --git a/.svn/pristine/57/57a9190f1aa17b5a49b1a7c627351960f034c692.svn-base b/.svn/pristine/57/57a9190f1aa17b5a49b1a7c627351960f034c692.svn-base new file mode 100644 index 0000000..b9eda26 --- /dev/null +++ b/.svn/pristine/57/57a9190f1aa17b5a49b1a7c627351960f034c692.svn-base @@ -0,0 +1,685 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/57/57bc40c66fa06087905add48cb81aa2d9026e292.svn-base b/.svn/pristine/57/57bc40c66fa06087905add48cb81aa2d9026e292.svn-base new file mode 100644 index 0000000..b308e07 --- /dev/null +++ b/.svn/pristine/57/57bc40c66fa06087905add48cb81aa2d9026e292.svn-base @@ -0,0 +1,562 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/58/583b89735614977de712deec6093c3cdab3376cc.svn-base b/.svn/pristine/58/583b89735614977de712deec6093c3cdab3376cc.svn-base new file mode 100644 index 0000000..0b02249 --- /dev/null +++ b/.svn/pristine/58/583b89735614977de712deec6093c3cdab3376cc.svn-base @@ -0,0 +1,557 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/58/585a82e00465583defcdb4d8d8d0aaced7ccb105.svn-base b/.svn/pristine/58/585a82e00465583defcdb4d8d8d0aaced7ccb105.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..408b8663ecc1d653782de665a1d6eb4269b147a3 GIT binary patch literal 714 zcmV;*0yX`KP)}U|K#l-qAo&E856CC`V#ePa zNn2LQKS;pV^z=;cbibbd+1=19KT7~RWom4fsbl^U*fl^=rUJv2LZb+k@avZVsR1@a zml$q`RQ*ia&)$cw4V>3&P8r~RnU2suOrg$gC%Rv|F;vnivc{Iw*E60Bz_e!@_wD#( zZo2EnAh->nZ9;Wu**b)62}2X{V5kAB$M>W&zk__kTE5C61L&&ZdIZ=NiCC zMcudP%}X;SeM?d?-}8RuQ3GU6N|S^ZTcLCBSyxc;oKjr?;1=UZ>f-egUEN{-d#NrI zfE{=WEdW^Iwi^{Zhw5FK_GYCzq#w#zL-P9RV+p{jKa!3^nr!f?*pv!#am>Ln`%5aT z?rg8OtMmZBfEIelc1-A*Et2bBNzDL6fcPz+kbU+Q``%8KMkcS34dDmS2#_V9KLXew z@gEz+Yr=EmZ~@Xqwu@{)o`$TOcb#aO1JH*~poOpSUjZ6m%g_q!#UcE80Jo}L8YgC>`7N^-KNx2Z^WnOfYcQSe8E8?>cR4yAQg0", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 25, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/5a/5a56d454c6a354b7b0e038f47c15645341b21da5.svn-base b/.svn/pristine/5a/5a56d454c6a354b7b0e038f47c15645341b21da5.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..df76c3619401634720d19b4c1a4f5baae785a9db GIT binary patch literal 744 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 literal 0 HcmV?d00001 diff --git a/.svn/pristine/5c/5c235cac0935e97cbc3e7bd09f0cfefe45e24c25.svn-base b/.svn/pristine/5c/5c235cac0935e97cbc3e7bd09f0cfefe45e24c25.svn-base new file mode 100644 index 0000000..9f4645d --- /dev/null +++ b/.svn/pristine/5c/5c235cac0935e97cbc3e7bd09f0cfefe45e24c25.svn-base @@ -0,0 +1,341 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/5e/5e39abfb44e0d45779295c279537b263c2dc97cf.svn-base b/.svn/pristine/5e/5e39abfb44e0d45779295c279537b263c2dc97cf.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..fb2b472a46184943714fc5db5c00356cc6a6857e GIT binary patch literal 87713 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 余额提现-{{ item.payway}} + + {{ item.status==0?'待审核':(item.status==1?'已通过':'已拒绝') }} + + + + + 提现金额 {{ item.withAmount}} 元 + + + 实际到账 {{item.amount}} 元 + + + + + 收款人 + + + {{ item.name }} + + + + + 提现账号 + + + {{ item.account }} + + + + + 提现时间 + + + {{ Service.formatDate(item.addTime,1) }} + + + + + 拒绝通知 + + + {{ item.reply }} + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/5f/5fdc9c9e59cbee7cb55d34cb15069f10a371cecb.svn-base b/.svn/pristine/5f/5fdc9c9e59cbee7cb55d34cb15069f10a371cecb.svn-base new file mode 100644 index 0000000..ee5be77 --- /dev/null +++ b/.svn/pristine/5f/5fdc9c9e59cbee7cb55d34cb15069f10a371cecb.svn-base @@ -0,0 +1,20 @@ +{ // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/ + // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数 + "version": "0.0", + "configurations": [{ + "app-plus" : + { + "launchtype" : "local" + }, + "default" : + { + "launchtype" : "local" + }, + "mp-weixin" : + { + "launchtype" : "local" + }, + "type" : "uniCloud" + } + ] +} diff --git a/.svn/pristine/60/600b2f38eeee98f5b7f6cfe439ab1ecd95b570ff.svn-base b/.svn/pristine/60/600b2f38eeee98f5b7f6cfe439ab1ecd95b570ff.svn-base new file mode 100644 index 0000000..f286dfa --- /dev/null +++ b/.svn/pristine/60/600b2f38eeee98f5b7f6cfe439ab1ecd95b570ff.svn-base @@ -0,0 +1,320 @@ +import { HttpRequest, StoreAssist, UploadAssist, ResultData } from '@/common/Common'; +import { BaseConfig } from './BaseConfig'; +export class Service extends BaseConfig { + //获取API地址 + static ApiUrl(path : string) { + return `${this.servesUrl}${path}`; + } + + //获取图片地址 + static GetpayImg(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.payuploadUrl}${path}`; + } + } + + //获取图片地址 + static GetMateUrlByImg(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + //获取音视频地址 + static GetMateUrlByMedia(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.mediaUrl}${path}`; + } + } + //获取登录账号token + static GetUserToken() { + return Service.GetStorageCache('token'); + } + // 获取登录状态 + static GetUserIsLogin() { + var token = this.GetUserToken(); + if (token == null || token == '') { + return false; + } else { + return true; + } + } + //设置登录账户Token + static SetUserToken(token : string) { + this.SetStorageCache('token', token); + } + //清理登录账户Token + static OffUserToken() { + Service.DelStorageCache('token'); + uni.$emit('ImComOff', 'user'); + this.ClearUserStateData(); + } + //获取登录账号状态信息 + static GetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //设置当前登录账号状态信息 + static SetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //清理当前登录账号状态信息 + static ClearUserStateData() { + Service.DelStorageCache('StateDomain'); + } + + //获取缓存 + static GetStorageCache(key : string) { + return StoreAssist.Get(key); + } + //删除缓存 + static DelStorageCache(key : string) { + StoreAssist.Delete(key); + } + //设置缓存 + static SetStorageCache(key : string, data : any) { + StoreAssist.Set(key, data); + } + + /*****以下是基础方法调用与拦截器*****/ + + static Request(url : string, method : 'GET' | 'POST' | 'PUT' | undefined, data : object | any) { + const token = Service.GetUserToken(); + + const _url = Service.ApiUrl(url); + var result = HttpRequest.RequestWithToken(_url, method, token, data).then((retResult : any) => { + if (retResult.statusCode == '200') { + var obj = retResult.data; + if (obj.code == 401) { + //过期 + this.OffUserToken(); + this.Msg('登录过期,请重新登录') + this.GoPage('/pages/login/login') + return Promise.reject(); + } else if (obj.code == 40101) { + //失效 + this.OffUserToken(); + this.GoPageDelse('/pages/mine/login/login'); + return Promise.reject(); + } else if (obj.code == 1004) { + //资源不存在 + this.GoPageDelse('/pages/AppSet/404/404'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 40188) { + //无权限 + + this.GoPageDelse('/pages/AppSet/40188/40188'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 1008) { + //业务提示 + return new ResultData(obj.code, obj.msg, obj.data); + } else { + return new ResultData(obj.code, obj.msg, obj.data); + } + } else { + return new ResultData(-1, '', ''); + } + }); + return result; + } + /*****以下是腾讯云oss上传*****/ + static UpLoadMedia(code : string, fileName : string, desire : string, path : string) { + var result = this.Request(this.uploadUrl, 'GET', { code, fileName, desire }).then((retResult) => { + if (retResult.code == 0) { + var upOk = UploadAssist.Upload(retResult.data.url, path, retResult.data.cosData).then((upRet : any) => { + if (upRet.statusCode == 200) { + const retData : any = { code: retResult.data.code, file: retResult.data.file, cache: retResult.data.cache }; + return new ResultData(0, '上传成功!', retData); + } else { + this.Msg('上传失败!'); + return new ResultData(-1, '', ''); + } + }); + return upOk; + } else { + this.Msg('上传失败!'); + return new ResultData(-1, retResult.msg,retResult.data); + } + }); + return result; + } + + /***********消息操作**************/ + static Msg(message : any, icon ?: any) : void { + if (icon != null) { + uni.showToast({ + title: message, + icon: icon + }); + } else { + uni.showToast({ + title: message, + icon: 'none' + }); + } + } + + static Alert(msg : string, cb ?: any) { + uni.showModal({ + title: '提示', + content: msg, + showCancel: false, + cancelText: '取消', + confirmText: '确定', + success: res => { + if (res.confirm) { + cb && cb(); + } + } + }) + } + + static LoadIng(text : any) : void { + uni.showLoading({ + title: text, + icon: 'none' + }); + } + + static LoadClose() : void { + uni.hideLoading(); + } + + /**********跳转操作*********/ + + + static GoPageTab(path : string) : void { + uni.switchTab({ + url: path + }); + } + + /**********跳转操作*********/ + static GoPage(path : string) : void { + uni.navigateTo({ + url: path, //跳转的页面 + success: function (res) { + // 通过eventChannel向被打开页面传送数据 + } + }); + } + /**********跳转并删除当前页面操作*********/ + static GoPageDelse(path : string) : void { + uni.redirectTo({ + url: path //跳转的页面 + }); + } + + /**********返回上一页*********/ + static GoPageBack() : void { + uni.navigateBack({ delta: 1 }); + } + + /*****获取图片base64*****/ + static UpLoadMediaBase64(path : string) { + return new Promise(function (resolve, reject) { + uni.uploadFile({ + url: 'http://cloud.pccsh.com/DefUp/UploadFileImgBase64', //仅为示例,非真实的接口地址 + filePath: path, + name: 'file', + success: (uploadFileRes) => { + resolve(uploadFileRes); + }, + fail: (err) => { + reject(err); + } + }); + }); + } + /*****获取图片位置信息*****/ + //获取时间戳 + static GetTimeSpan(milliSecond : number) { + return Date.now() + milliSecond; + } + + // 时间戳处理 + static formatDate(time : any, type : number) : string { + const date = new Date(time); + const year = date.getFullYear(); + const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以加1,并用0填充 + const day = String(date.getDate()).padStart(2, '0'); // 用0填充 + const hours = String(date.getHours()).padStart(2, '0'); // 用0填充 + const minutes = String(date.getMinutes()).padStart(2, '0'); // 用0填充 + const seconds = String(date.getSeconds()).padStart(2, '0'); // 用0填充 + if (type == 0) { + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } + else if (type == 1) { + return `${year}-${month}-${day} ${hours}:${minutes}`; + } else if (type == 2) { + return `${year}-${month}-${day}`; + } else if (type == 3) { + return `${hours}:${minutes}`; + } else if (type == 4) { + return `${year}${month}${day}`; + } + + else { + return `${hours}:${minutes}`; + } + } + + /*****节流*****/ + static throttle(fn: () => void, time: number) { + let canRun: boolean = true; + return function () { + if (!canRun) return; + canRun = false; + setTimeout(() => { + fn(); //可以不执行 + canRun = true; + }, time); + }; + } + /*****防抖*****/ + static debounce void>(fn: T, time: number): (...args: Parameters) => void { + let timerId: NodeJS.Timeout | null = null; + + return (...args: Parameters) => { + if (timerId) { + clearTimeout(timerId); + } + + timerId = setTimeout(() => { + fn(...args); // 执行传入的函数 + timerId = null; // 清除定时器ID + }, time); + }; + } + + + + + + // 普通图片上传 + static uploadH5(path, dic, callback) { + console.log(this.payuploadUrl,'xxx') + uni.uploadFile({ + url: this.payuploadUrl+'/Upload/UploadFile', + method: "POST", + header: { + 'Authorization': 'Bearer ' + Service.GetUserToken(), + }, + formData: { + "path": dic, + }, + filePath: path, + name: 'file', + success: (data) => { + let info = data.data + callback(info) + } + }) + } +} \ No newline at end of file diff --git a/.svn/pristine/60/6094c8ea63c851a0a294afee120d787e09b5e8bd.svn-base b/.svn/pristine/60/6094c8ea63c851a0a294afee120d787e09b5e8bd.svn-base new file mode 100644 index 0000000..3a482e8 --- /dev/null +++ b/.svn/pristine/60/6094c8ea63c851a0a294afee120d787e09b5e8bd.svn-base @@ -0,0 +1,299 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/60/60e0264a782c22da4a9968bee74b032989ff4971.svn-base b/.svn/pristine/60/60e0264a782c22da4a9968bee74b032989ff4971.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..82eae9bcfe1ac45a92d93c0864a411d1e3ee0e7f GIT binary patch literal 325 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjzdT(WLn;{Ggq`L+WWZCK#^hI% zC)+4`gF%hKEJK|^EyKNm_r?P466T^c4;bz^K64cfTD^?-(IM4oy34Hv(62uZw=A(vaY~L^FBj z^v*Z)x-9qemsV>|GfOw@i5A-3etOw1POYAmG6lX%9yre4b@PV0e}2Vj#ai#*98nMA znHmq=-g;rt1*LrUJq;haoVxeOeqj3dxhv#jLZ;x`=(k6#@)tDx{qHtMt%#3dcid?c zb^*u27UwxE(_Q=)d35wE-1sKhJ+qLh(~{xFq8&?D<^w(d|G&A&W`4HOE@4AFjt VD?MEV{s2W7JYD@<);T3K0RYHmf|LLN literal 0 HcmV?d00001 diff --git a/.svn/pristine/61/610b70719a4233bb3e70ed4b0a0ee7e6deb18db3.svn-base b/.svn/pristine/61/610b70719a4233bb3e70ed4b0a0ee7e6deb18db3.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..8d8ab05543617fcd4dcaba4093deb28bb9b27d45 GIT binary patch literal 53985 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 ALjV8( literal 0 HcmV?d00001 diff --git a/.svn/pristine/61/613643d1441d7b8898128f16a90239d1db2d8809.svn-base b/.svn/pristine/61/613643d1441d7b8898128f16a90239d1db2d8809.svn-base new file mode 100644 index 0000000..0fa6898 --- /dev/null +++ b/.svn/pristine/61/613643d1441d7b8898128f16a90239d1db2d8809.svn-base @@ -0,0 +1,72 @@ +## 2.2.5(2024-07-30) +* 修复 当 checkRange=true 时,拖动四个伸缩角放大图片时还可能会超出或未到边界的问题 +* 修复 当 checkRange=false 时,图片旋转时会放大图片适应裁剪尺寸的问题 +* 修复 当 checkRange=true 时,图片旋转 90° 或 270° 进行缩放可能会无法拖动图片的问题 +## 2.2.4(2024-06-21) +* 新增 reverseRotatable 属性,是否支持逆向翻转 +* 修复 `2.1.7` 版本导致旋转后图片没有自动适配裁剪框的问题 + +## 2.2.3(2024-06-21) +* 新增 gpu 属性,是否开启硬件加速,图片缩放过程中如果出现元素的“留影”或“重影”效果,可通过该方式解决或减轻这一问题 +* 修复 组件使用 `v-if` 并设置 `src` 属性时可能会出现图片渲染位置存在偏差的问题 + +## 2.2.2(2024-06-21) +* 优化 组件实例 chooseImage 方法支持传参 +* 修复 组件使用 `v-if` 时组件无非正常渲染的问题 + +## 2.2.1(2024-06-15) +* 修复 H5平台不支持手势拖动图片的问题 + +## 2.2.0(2024-05-31) +* 修复 APP平台 `vue2` 项目因 `2.1.9` 版本修复 `vue3` 项目bug而引发的问题 + +## 2.1.9(2024-05-29) +* 修复 APP平台 `vue3` 项目因 uniapp `renderjs` 中未支持条件编译,导致运行了H5平台代码报错的问题 + +## 2.1.8(2024-05-29) +* 新增 zIndex 属性,调整组件层级 +* 新增 组件内容插槽 +* 优化 微信小程序平台动态修改元素style时的多余内容 + +## 2.1.7(2024-05-28) +* 新增 checkRange 属性,当 checkRange=false 时允许图片位置超出裁剪边界 +* 新增 minScale 属性,图片最小缩放倍数,当 minScale<0 时可使图片宽高不再受裁剪区域宽高限制 +* 新增 backgroundColor 属性,生成图片背景色,如果裁剪区域没有完全包含在图片中时,不设置该属性生成图片存在一定的透明块 +* 优化 动态修改图片宽高但没有传入src时,尺寸适应问题 +* 修复 APP平台通过 `this.$ownerInstance` 获取组件实例时机过早,其值为 `undefined` 导致报错界面没有正常渲染的问题 + +## 2.1.6(2023-04-16) +* 修复 组件使用 v-show 指令会导致选择图片后初始位置严重偏位的问题 + +## 2.1.5(2023-04-15) +* 新增 兼容APP平台 + +## 2.1.4(2023-03-13) +* 新增 fileType 属性,用于指定生成文件的类型,只支持 'jpg' 或 'png',默认为 'png' +* 新增 delay 属性,微信小程序平台使用 `Canvas 2D` 绘制时控制图片从绘制到生成所需时间 +* 优化 当生成图片的尺寸宽/高超过 Canvas 2D 最大限制(1365*1365)则将画布尺寸缩放在限制范围内绘制完成后输出目标尺寸 +* 优化 旋转图标指示方向与实际旋转方向不符 + +## 2.1.3(2023-02-06) +* 优化 vue3支持 + +## 2.1.2(2023-02-03) +* 新增 navigation 属性,H5平台当 showAngle 为 true 时,使用插件的页面在 `page.json` 中配置了 "navigationStyle": "custom" 时,必须将此值设为 false ,否则四个可拉伸角的触发位置会有偏差 +* 修复 H5平台部分设备(已知iPhone11以下机型)拍照的图片缩放时会闪动的问题 + +## 2.1.1(2022-12-06) +* 修复 横屏适配问题 + +## 2.1.0(2022-12-06) +* 新增 兼容H5平台,使用 renderjs 响应手势事件 + +## 2.0.0(2022-12-05) +* 重构 插件,使用 WXS 响应手势事件 +* 新增 图片翻转 +* 新增 拉伸裁剪框放大图片 +* 新增 监听PC鼠标滚轮触发缩放 +* 新增 圆形、圆角矩形的图片裁剪 +* 优化 图片缩放,移动端以双指触摸中心点为缩放中心点,PC端以鼠标所在点为缩放中心点 +* 优化 裁剪框样式 +* 优化 图片位置拖动 支持边界回弹效果(滑动时可滑出边界,释放时回弹到边界) +* 优化 生成图片使用新版 Canvas 2D 接口 diff --git a/.svn/pristine/61/61c87aaaca0a8a1c7800bfffeafe3d88117a7271.svn-base b/.svn/pristine/61/61c87aaaca0a8a1c7800bfffeafe3d88117a7271.svn-base new file mode 100644 index 0000000..959c359 --- /dev/null +++ b/.svn/pristine/61/61c87aaaca0a8a1c7800bfffeafe3d88117a7271.svn-base @@ -0,0 +1,323 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/62/62eb723d1a7b9e93f5f782f381e801cbc95d71aa.svn-base b/.svn/pristine/62/62eb723d1a7b9e93f5f782f381e801cbc95d71aa.svn-base new file mode 100644 index 0000000..79082b7 --- /dev/null +++ b/.svn/pristine/62/62eb723d1a7b9e93f5f782f381e801cbc95d71aa.svn-base @@ -0,0 +1,543 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/65/651a12271ccea6811a94479532405b8f63bf95a1.svn-base b/.svn/pristine/65/651a12271ccea6811a94479532405b8f63bf95a1.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..c09fd6d5d2e87aa0961d1258e095cce2b6ddcf8d GIT binary patch literal 417 zcmV;S0bc%zP)H+2k`voV}JUe*!g?3$~@gfX09 literal 0 HcmV?d00001 diff --git a/.svn/pristine/66/6694a14e19dd77b689d05c0f64754172fb577dce.svn-base b/.svn/pristine/66/6694a14e19dd77b689d05c0f64754172fb577dce.svn-base new file mode 100644 index 0000000..6f7be07 --- /dev/null +++ b/.svn/pristine/66/6694a14e19dd77b689d05c0f64754172fb577dce.svn-base @@ -0,0 +1,94 @@ +import { Service } from '@/Service/Service'; +/*****订单接口*****/ +class CNRiderOrderService { + private static GetRiderOrderListPath : string = '/Rider/GetRiderOrderList'; + /*****首页新订单*****/ + static GetRiderOrderList(page : number) { + var result = Service.Request(this.GetRiderOrderListPath, "GET", {page}); + return result; + } + + private static RiderTakeOrderPath : string = '/Rider/RiderTakeOrder'; + /*****骑手接单*****/ + static RiderTakeOrder(orderId : string) { + var result = Service.Request(this.RiderTakeOrderPath, "POST", {orderId}); + return result; + } + + private static GetRiderTakeOrderListPath : string = '/Rider/GetRiderTakeOrderList'; + /*****首页 待取餐/配送中*****/ + static GetRiderTakeOrderList(status: number,page : number) { + var result = Service.Request(this.GetRiderTakeOrderListPath, "GET", {status,page}); + return result; + } + + + private static GetUnitOrderInfoPath : string = '/Order/GetUnitOrderInfo'; + /*****获取订单详情*****/ + static GetUnitOrderInfo(orderId: string) { + var result = Service.Request(this.GetUnitOrderInfoPath, "GET", {orderId}); + return result; + } + + private static UpdateRiderOrderTakePath : string = '/Rider/UpdateRiderOrderTake'; + /*****取餐*****/ + static UpdateRiderOrderTake(orderId: string,status:number) { + var result = Service.Request(this.UpdateRiderOrderTakePath, "POST", {orderId,status}); + return result; + } + + private static GetRiderAccLogPath : string = '/Rider/GetRiderAccLog'; + /*****收入列表*****/ + static GetRiderAccLog(time: string,page:number) { + var result = Service.Request(this.GetRiderAccLogPath, "GET", {time,page}); + return result; + } + + private static AddRiderWithPath : string = '/Rider/AddRiderWith'; + /*****骑手提现*****/ + static AddRiderWith(amount: number,payway:string,name:string,account:string) { + var result = Service.Request(this.AddRiderWithPath, "POST", {amount,payway,name,account}); + return result; + } + + + private static GetRiderWithListPath : string = '/Rider/GetRiderWithList'; + /*****骑手提现列表*****/ + static GetRiderWithList(page:number) { + var result = Service.Request(this.GetRiderWithListPath, "GET", {page}); + return result; + } + + private static ApplyOrderServicePath : string = '/Rider/ApplyOrderService'; + /*****上报异常订单*****/ + static ApplyOrderService(orderId:string,type:string,remark:string,img:string) { + var result = Service.Request(this.ApplyOrderServicePath, "POST", {orderId,type,remark,img}); + return result; + } + + + private static GetRiderOrderServiceListPath : string = '/Rider/GetRiderOrderServiceList'; + /*****上报异常订单列表*****/ + static GetRiderOrderServiceList(type:number,page:number) { + var result = Service.Request(this.GetRiderOrderServiceListPath, "GET", {type,page}); + return result; + } + + + private static GetOrderServiceInfoPath : string = '/Order/GetOrderServiceInfo'; + /*****上报异常订单详情*****/ + static GetOrderServiceInfo(orderId:string) { + var result = Service.Request(this.GetOrderServiceInfoPath, "GET", {orderId}); + return result; + } + + + + + + +} +export { + Service, + CNRiderOrderService +} \ No newline at end of file diff --git a/.svn/pristine/67/6727f30ba2910f3b8a12a698618971a19587643c.svn-base b/.svn/pristine/67/6727f30ba2910f3b8a12a698618971a19587643c.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..5bc90962c1b7d6bac2d83df7c547e51cf30dfc02 GIT binary patch literal 34093 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 + import { onLaunch, onShow, onHide } from "@dcloudio/uni-app"; + onLaunch(() => { + console.log("App Launch"); + }); + onShow(() => { + console.log("App Show"); + }); + onHide(() => { + console.log("App Hide"); + }); + + const getUpData=()=>{ + // #ifdef APP + // plus.runtime.getProperty(plus.runtime.appid, (wgtinfo) => { + // NvpMerchService.GetAppVersion().then(res=>{ + // console.log('wgtinfo.versionCode',wgtinfo.versionCode); + // if (res.data.version > wgtinfo.versionCode) { + // setTimeout(function() { + // uni.navigateTo({ + // url: "/pages/upData/upData?info=" + + // encodeURIComponent( + // JSON.stringify(res.data)) + // }) + // }, 1000) + // } + // }) + // }) + // #endif + + } + + + \ No newline at end of file diff --git a/.svn/pristine/6a/6a1b251ab7abc0eee826752a40f1b9890b4a2317.svn-base b/.svn/pristine/6a/6a1b251ab7abc0eee826752a40f1b9890b4a2317.svn-base new file mode 100644 index 0000000..a7aa0b7 --- /dev/null +++ b/.svn/pristine/6a/6a1b251ab7abc0eee826752a40f1b9890b4a2317.svn-base @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/6a/6a321758ad51bbe230fe1773c99246c19cee8053.svn-base b/.svn/pristine/6a/6a321758ad51bbe230fe1773c99246c19cee8053.svn-base new file mode 100644 index 0000000..c10c16b --- /dev/null +++ b/.svn/pristine/6a/6a321758ad51bbe230fe1773c99246c19cee8053.svn-base @@ -0,0 +1,11 @@ +证书名称:mtRide +证书别名 : mtRide.keystore +密码:mtride123 + +Android包名: uni.app.mtRide + + +公钥: 23435172021720380296490271990846239523088929679377835616301524017081159158577836162239381151243298901437095797013081178084484892892282290047113348240657346956713787714933303422589001907866881902732510923086940980581545841757511067550808944197841667280168896693187717619066714045065554845389736630938506286493905689600193070592687026511430452365865642865545372189037121494085492908628863153027560970849723281130967310912385133250501495484257588011871904030061857722775337559368709705749873676799326594015907798061990721957932319586602834507269616033727425161286295674390689849811675448907045862979284056273143790164007 + + +MD5:01 0A B9 8B 87 80 DD 78 BA 41 05 45 07 E9 4D AF \ No newline at end of file diff --git a/.svn/pristine/6b/6b00584b800504f56ffbac3f3e169458a47836c4.svn-base b/.svn/pristine/6b/6b00584b800504f56ffbac3f3e169458a47836c4.svn-base new file mode 100644 index 0000000..4e8ce10 --- /dev/null +++ b/.svn/pristine/6b/6b00584b800504f56ffbac3f3e169458a47836c4.svn-base @@ -0,0 +1,124 @@ + + \ No newline at end of file diff --git a/.svn/pristine/6c/6cd54d70ca0a52fe79b0f66ebacf9a963c3e6da9.svn-base b/.svn/pristine/6c/6cd54d70ca0a52fe79b0f66ebacf9a963c3e6da9.svn-base new file mode 100644 index 0000000..81415da --- /dev/null +++ b/.svn/pristine/6c/6cd54d70ca0a52fe79b0f66ebacf9a963c3e6da9.svn-base @@ -0,0 +1,464 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/6d/6dc4977d514cb6350db7b53fd7613427f6fd7a8b.svn-base b/.svn/pristine/6d/6dc4977d514cb6350db7b53fd7613427f6fd7a8b.svn-base new file mode 100644 index 0000000..fe1c116 --- /dev/null +++ b/.svn/pristine/6d/6dc4977d514cb6350db7b53fd7613427f6fd7a8b.svn-base @@ -0,0 +1,218 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/6d/6dc812e22c098f845b4e4d70614d8d69d134227b.svn-base b/.svn/pristine/6d/6dc812e22c098f845b4e4d70614d8d69d134227b.svn-base new file mode 100644 index 0000000..f07227e --- /dev/null +++ b/.svn/pristine/6d/6dc812e22c098f845b4e4d70614d8d69d134227b.svn-base @@ -0,0 +1,50 @@ +import { Service } from '@/Service/Service'; +/*****登录接口*****/ +class NvpBankService { + private static GetPageBankListPath: string = '/Bank/GetPageBankList'; + /*****用户银行卡列表*****/ + static GetPageBankList(page: number) { + var result = Service.Request(this.GetPageBankListPath, "GET", { page }); + return result; + } + + private static GetBankListPath: string = '/Bank/GetBankList'; + /*****用户银行卡列表*****/ + static GetBankList() { + var result = Service.Request(this.GetBankListPath, "GET", ""); + return result; + } + + private static GetUnitBankListPath: string = '/Bank/GetUnitBankList'; + /*****银行卡列表*****/ + static GetUnitBankList() { + var result = Service.Request(this.GetUnitBankListPath, "GET", ""); + return result; + } + + private static AddUserBankPath: string = '/Bank/AddUserBank'; + /*****添加银行卡*****/ + static AddUserBank(account: string, bank: string, name: string) { + var result = Service.Request(this.AddUserBankPath, "POST", { account, bank, name }); + return result; + } + + private static UpdateBankPath: string = '/Bank/UpdateBank'; + /*****修改银行卡*****/ + static UpdateBank(ubId: string, bank: string, name: string, account: string) { + var result = Service.Request(this.UpdateBankPath, "POST", { ubId, bank, name, account }); + return result; + } + + private static DelUserBankPath: string = '/Bank/DelUserBank'; + /*****删除银行卡*****/ + static DelUserBank(ubId: string) { + var result = Service.Request(this.DelUserBankPath, "POST", { ubId }); + return result; + } + +} +export { + Service, + NvpBankService +} diff --git a/.svn/pristine/6e/6e573c01753e413ef430a8a8244b797bbea61b71.svn-base b/.svn/pristine/6e/6e573c01753e413ef430a8a8244b797bbea61b71.svn-base new file mode 100644 index 0000000..a916816 --- /dev/null +++ b/.svn/pristine/6e/6e573c01753e413ef430a8a8244b797bbea61b71.svn-base @@ -0,0 +1,600 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/6f/6f92b8fb6f411d8de0386d4a60671460294cf04f.svn-base b/.svn/pristine/6f/6f92b8fb6f411d8de0386d4a60671460294cf04f.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..a33812812cab5caa833d407d673befa13fdaf5d9 GIT binary patch literal 6994 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 TMr*b%LNY*IMF&%k#s>cz#c$4p literal 0 HcmV?d00001 diff --git a/.svn/pristine/6f/6fb8a00a2162c483073f884c54975954e78b80d3.svn-base b/.svn/pristine/6f/6fb8a00a2162c483073f884c54975954e78b80d3.svn-base new file mode 100644 index 0000000..cb72bc5 --- /dev/null +++ b/.svn/pristine/6f/6fb8a00a2162c483073f884c54975954e78b80d3.svn-base @@ -0,0 +1,122 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/6f/6fc132d859e15980c1ae681ea143ed24743fecfe.svn-base b/.svn/pristine/6f/6fc132d859e15980c1ae681ea143ed24743fecfe.svn-base new file mode 100644 index 0000000..e92ab1a --- /dev/null +++ b/.svn/pristine/6f/6fc132d859e15980c1ae681ea143ed24743fecfe.svn-base @@ -0,0 +1,811 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/6f/6fced0dce3775822d12cc0dba581f644d51af6b9.svn-base b/.svn/pristine/6f/6fced0dce3775822d12cc0dba581f644d51af6b9.svn-base new file mode 100644 index 0000000..5ff66c5 --- /dev/null +++ b/.svn/pristine/6f/6fced0dce3775822d12cc0dba581f644d51af6b9.svn-base @@ -0,0 +1,74 @@ +// #ifndef APP-NVUE +// 计算版本 +export function compareVersion(v1, v2) { + v1 = v1.split('.') + v2 = v2.split('.') + const len = Math.max(v1.length, v2.length) + while (v1.length < len) { + v1.push('0') + } + while (v2.length < len) { + v2.push('0') + } + for (let i = 0; i < len; i++) { + const num1 = parseInt(v1[i], 10) + const num2 = parseInt(v2[i], 10) + + if (num1 > num2) { + return 1 + } else if (num1 < num2) { + return -1 + } + } + return 0 +} + +export function wrapTouch(event) { + for (let i = 0; i < event.touches.length; ++i) { + const touch = event.touches[i]; + touch.offsetX = touch.x; + touch.offsetY = touch.y; + } + return event; +} +export const devicePixelRatio = wx.getSystemInfoSync().pixelRatio +// #endif +// #ifdef APP-NVUE +export function base64ToPath(base64) { + return new Promise((resolve, reject) => { + const [, format, bodyData] = /data:image\/(\w+);base64,(.*)/.exec(base64) || []; + const bitmap = new plus.nativeObj.Bitmap('bitmap' + Date.now()) + bitmap.loadBase64Data(base64, () => { + if (!format) { + reject(new Error('ERROR_BASE64SRC_PARSE')) + } + const time = new Date().getTime(); + const filePath = `_doc/uniapp_temp/${time}.${format}` + + bitmap.save(filePath, {}, + () => { + bitmap.clear() + resolve(filePath) + }, + (error) => { + bitmap.clear() + console.error(`${JSON.stringify(error)}`) + reject(error) + }) + }, (error) => { + bitmap.clear() + console.error(`${JSON.stringify(error)}`) + reject(error) + }) + }) +} +// #endif + + +export function sleep(time) { + return new Promise((resolve) => { + setTimeout(() => { + resolve(true) + },time) + }) +} \ No newline at end of file diff --git a/.svn/pristine/70/7016112443641cdd80b80d305266bf8f428d0724.svn-base b/.svn/pristine/70/7016112443641cdd80b80d305266bf8f428d0724.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..b77c133f1cfa01ec2ada92de272b749773deb532 GIT binary patch literal 54491 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
  • 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 literal 0 HcmV?d00001 diff --git a/.svn/pristine/72/72d947cfc87a97229a66bf21f9845700b76eacfe.svn-base b/.svn/pristine/72/72d947cfc87a97229a66bf21f9845700b76eacfe.svn-base new file mode 100644 index 0000000..2140936 --- /dev/null +++ b/.svn/pristine/72/72d947cfc87a97229a66bf21f9845700b76eacfe.svn-base @@ -0,0 +1,9 @@ +export class BaseConfig { + // protected static servesUrl: string = "http://192.168.0.190:8806";//线下 + + protected static servesUrl: string = "http://vp.xypays.cn"; + protected static imgUrl: string = "http://vp.cloud.xypays.cn"; + protected static mediaUrl: string = "http://byc1.xypays.cn/"; + protected static uploadUrl: string = "/TencentCos/GetUpLoadInfo"; + protected static payuploadUrl: string = "http://pay.xypays.cn"; +} \ No newline at end of file diff --git a/.svn/pristine/72/72fc59a45126280b0428a576850a52c893f09b6e.svn-base b/.svn/pristine/72/72fc59a45126280b0428a576850a52c893f09b6e.svn-base new file mode 100644 index 0000000..4d6a73e --- /dev/null +++ b/.svn/pristine/72/72fc59a45126280b0428a576850a52c893f09b6e.svn-base @@ -0,0 +1,139 @@ +// src/Service/Im/WebSocket.ts + +import { EventHandler } from '@/Service/Comm/EventHandler'; +import { Service, ImConnectService } from '@/Service/Im/ImConnectService'; + +class WebSocketManager { + private socketTask: UniApp.SocketTask | null = null; + private heartbeatInterval: ReturnType | null = null; + private readonly heartbeat: number = 30000; // 建议心跳30秒 + private isConnecting: boolean = false; // 连接状态锁 + private isUserClose: boolean = false; // 是否是用户主动关闭 + + public ConnectSocketInit(): void { + if (this.isConnecting || this.socketTask) { + console.warn('WebSocket 正在连接或已连接,请勿重复调用。'); + return; + } + this.isConnecting = true; + this.isUserClose = false; + + ImConnectService.GetConnect().then((res: any) => { + if (res.code !== 0) { + this.isConnecting = false; + // Service.Msg('获取连接地址失败'); + return; + } + + Service.SetUserClientId(res.data.websocketId); + + this.socketTask = uni.connectSocket({ + url: res.data.server, + header: { 'content-type': 'application/json' }, + // 推荐在小程序端开启 BSON + // #ifdef MP-WEIXIN + // protocols: ['bson'], + // #endif + success: () => {}, // success回调仅表示任务创建成功 + }); + + // ✅ 绑定事件监听 (在 onOpen 外部) + this.socketTask.onOpen(() => { + console.log('==============WebSocket连接正常============='); + this.isConnecting = false; + this.startHeartbeat(); + EventHandler.ConnectBus(); + }); + + this.socketTask.onMessage((data: any) => { + console.log('接收到消息'); + EventHandler.Events(data); + }); + + this.socketTask.onClose((e: any) => { + console.log('========WebSocket连接已被关闭========', e); + this.isConnecting = false; + this.stopHeartbeat(); + this.socketTask = null; // 清理实例 + // 如果不是用户主动关闭,则触发重连 + if (!this.isUserClose) { + this.reconnect(); + } + }); + + this.socketTask.onError((err: any) => { + console.error('========WebSocket连接发生错误========', err); + this.isConnecting = false; + // 错误发生时,通常也会触发 onClose,由 onClose 统一处理重连 + }); + }).catch(err => { + this.isConnecting = false; + console.error('GetConnect API 请求失败:', err); + }); + } + + private startHeartbeat(): void { + this.stopHeartbeat(); // 先停止旧的,确保只有一个 + const heartbeatData = JSON.stringify({ code: 'Heart', method: 'Heart' }); + + this.heartbeatInterval = setInterval(() => { + console.log('======发送心跳检测======'); + this.send(heartbeatData); + }, this.heartbeat); + } + + private stopHeartbeat(): void { + if (this.heartbeatInterval) { + clearInterval(this.heartbeatInterval); + this.heartbeatInterval = null; + } + } + + // 重新连接 (带延迟和重试次数) + public reconnect(): void { + console.log('准备在3秒后尝试重连...'); + setTimeout(() => { + console.log('正在尝试重连...'); + this.ConnectSocketInit(); + // 在您的 EventHandler 或全局事件总线中可以增加重试次数限制 + uni.$emit('ImReconnecting'); + }, 3000); // 延迟3秒重连,避免频繁请求 + } + + public CloseSocket(reason: string = 'user close'): void { + if (!this.socketTask) return; + + this.isUserClose = true; + this.stopHeartbeat(); // ✅ 立即停止心跳 + + this.socketTask.close({ + code: 1000, + reason: reason, + success: () => { // ✅ 使用箭头函数 + console.log('===============关闭 WebSocket 成功==================='); + }, + fail: (err) => { // ✅ 使用箭头函数 + console.log('===================关闭 WebSocket 失败=====================', err); + } + }); + } + + public send(value: any): void { + if (this.socketTask && this.socketTask.readyState === 1) { // 检查连接状态 + this.socketTask.send({ + data: value, + success: () => {}, // ✅ 使用箭头函数 + fail: (err) => { // ✅ 使用箭头函数 + console.error('发送消息失败:', err); + // 发送失败通常意味着连接已断开,onClose会处理重连 + } + }); + } else { + console.error('WebSocket 未连接,无法发送消息。'); + // 可以考虑将消息放入一个队列,等重连成功后再发送 + } + } +} + +// 导出单例模式 +export const WebSocket = new WebSocketManager(); \ No newline at end of file diff --git a/.svn/pristine/76/768678988ce1f2a8594c5e42dc0f3f0a873f154e.svn-base b/.svn/pristine/76/768678988ce1f2a8594c5e42dc0f3f0a873f154e.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..7a08443ea0c2aefa842cd715e2758c9b39ef9d8b GIT binary patch literal 127984 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�O~bWm)WG%JLg`JFVvyf zpVu)z``?i&pc7nL8VKl|cM1W=<_IeBr!{66j&kAUqYCSm>hFc;pO@%(GXOV4{90M!sp>|lL z`1iM3@H5}KX8&>km$)34?(`NtjBWV+OY<3Sblf5!b$W#OXC^>guLZnzMj*$@U26EZ z*+5{Zka8*UKNCYmq6@N<`H2ub(EgZX@DLCiQRUpW`X{FNC_Vre#sAYFU|8M&&)1k6 zeS82DFMUWjaQ#S%$btW8B?$s)&i|42*P8qv*Zxn|{;Jjg4;nggbehrN>Z3fq^yjC* OKjm8*H$N%dfBHX&n_H3q literal 0 HcmV?d00001 diff --git a/.svn/pristine/9d/9d53ac2f42396ec051973fe53074a4f6c751186f.svn-base b/.svn/pristine/9d/9d53ac2f42396ec051973fe53074a4f6c751186f.svn-base new file mode 100644 index 0000000..cd7097b --- /dev/null +++ b/.svn/pristine/9d/9d53ac2f42396ec051973fe53074a4f6c751186f.svn-base @@ -0,0 +1,323 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/9d/9d93df6f9266b1ee43e218ddd34645a3804453c8.svn-base b/.svn/pristine/9d/9d93df6f9266b1ee43e218ddd34645a3804453c8.svn-base new file mode 100644 index 0000000..56352eb --- /dev/null +++ b/.svn/pristine/9d/9d93df6f9266b1ee43e218ddd34645a3804453c8.svn-base @@ -0,0 +1,487 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/9f/9fc89bdf4405d6388b9685256903c40ba932bb37.svn-base b/.svn/pristine/9f/9fc89bdf4405d6388b9685256903c40ba932bb37.svn-base new file mode 100644 index 0000000..0a441a0 --- /dev/null +++ b/.svn/pristine/9f/9fc89bdf4405d6388b9685256903c40ba932bb37.svn-base @@ -0,0 +1,685 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/a0/a023913b13453ddaf54ad975a0cb00df5dca5452.svn-base b/.svn/pristine/a0/a023913b13453ddaf54ad975a0cb00df5dca5452.svn-base new file mode 100644 index 0000000..ad89ac2 --- /dev/null +++ b/.svn/pristine/a0/a023913b13453ddaf54ad975a0cb00df5dca5452.svn-base @@ -0,0 +1,354 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/a1/a130821f06f1f617dd5d71d3e371f4e4baf50352.svn-base b/.svn/pristine/a1/a130821f06f1f617dd5d71d3e371f4e4baf50352.svn-base new file mode 100644 index 0000000..55eed81 --- /dev/null +++ b/.svn/pristine/a1/a130821f06f1f617dd5d71d3e371f4e4baf50352.svn-base @@ -0,0 +1,544 @@ +/** +* @1900-2100区间内的公历、农历互转 +* @charset UTF-8 +* @github https://github.com/jjonline/calendar.js +* @Author Jea杨(JJonline@JJonline.Cn) +* @Time 2014-7-21 +* @Time 2016-8-13 Fixed 2033hex、Attribution Annals +* @Time 2016-9-25 Fixed lunar LeapMonth Param Bug +* @Time 2017-7-24 Fixed use getTerm Func Param Error.use solar year,NOT lunar year +* @Version 1.0.3 +* @公历转农历:calendar.solar2lunar(1987,11,01); //[you can ignore params of prefix 0] +* @农历转公历:calendar.lunar2solar(1987,09,10); //[you can ignore params of prefix 0] +*/ +/* eslint-disable */ +var calendar = { + + /** + * 农历1900-2100的润大小信息表 + * @Array Of Property + * @return Hex + */ + lunarInfo: [0x04bd8, 0x04ae0, 0x0a570, 0x054d5, 0x0d260, 0x0d950, 0x16554, 0x056a0, 0x09ad0, 0x055d2, // 1900-1909 + 0x04ae0, 0x0a5b6, 0x0a4d0, 0x0d250, 0x1d255, 0x0b540, 0x0d6a0, 0x0ada2, 0x095b0, 0x14977, // 1910-1919 + 0x04970, 0x0a4b0, 0x0b4b5, 0x06a50, 0x06d40, 0x1ab54, 0x02b60, 0x09570, 0x052f2, 0x04970, // 1920-1929 + 0x06566, 0x0d4a0, 0x0ea50, 0x06e95, 0x05ad0, 0x02b60, 0x186e3, 0x092e0, 0x1c8d7, 0x0c950, // 1930-1939 + 0x0d4a0, 0x1d8a6, 0x0b550, 0x056a0, 0x1a5b4, 0x025d0, 0x092d0, 0x0d2b2, 0x0a950, 0x0b557, // 1940-1949 + 0x06ca0, 0x0b550, 0x15355, 0x04da0, 0x0a5b0, 0x14573, 0x052b0, 0x0a9a8, 0x0e950, 0x06aa0, // 1950-1959 + 0x0aea6, 0x0ab50, 0x04b60, 0x0aae4, 0x0a570, 0x05260, 0x0f263, 0x0d950, 0x05b57, 0x056a0, // 1960-1969 + 0x096d0, 0x04dd5, 0x04ad0, 0x0a4d0, 0x0d4d4, 0x0d250, 0x0d558, 0x0b540, 0x0b6a0, 0x195a6, // 1970-1979 + 0x095b0, 0x049b0, 0x0a974, 0x0a4b0, 0x0b27a, 0x06a50, 0x06d40, 0x0af46, 0x0ab60, 0x09570, // 1980-1989 + 0x04af5, 0x04970, 0x064b0, 0x074a3, 0x0ea50, 0x06b58, 0x05ac0, 0x0ab60, 0x096d5, 0x092e0, // 1990-1999 + 0x0c960, 0x0d954, 0x0d4a0, 0x0da50, 0x07552, 0x056a0, 0x0abb7, 0x025d0, 0x092d0, 0x0cab5, // 2000-2009 + 0x0a950, 0x0b4a0, 0x0baa4, 0x0ad50, 0x055d9, 0x04ba0, 0x0a5b0, 0x15176, 0x052b0, 0x0a930, // 2010-2019 + 0x07954, 0x06aa0, 0x0ad50, 0x05b52, 0x04b60, 0x0a6e6, 0x0a4e0, 0x0d260, 0x0ea65, 0x0d530, // 2020-2029 + 0x05aa0, 0x076a3, 0x096d0, 0x04afb, 0x04ad0, 0x0a4d0, 0x1d0b6, 0x0d250, 0x0d520, 0x0dd45, // 2030-2039 + 0x0b5a0, 0x056d0, 0x055b2, 0x049b0, 0x0a577, 0x0a4b0, 0x0aa50, 0x1b255, 0x06d20, 0x0ada0, // 2040-2049 + /** Add By JJonline@JJonline.Cn**/ + 0x14b63, 0x09370, 0x049f8, 0x04970, 0x064b0, 0x168a6, 0x0ea50, 0x06b20, 0x1a6c4, 0x0aae0, // 2050-2059 + 0x0a2e0, 0x0d2e3, 0x0c960, 0x0d557, 0x0d4a0, 0x0da50, 0x05d55, 0x056a0, 0x0a6d0, 0x055d4, // 2060-2069 + 0x052d0, 0x0a9b8, 0x0a950, 0x0b4a0, 0x0b6a6, 0x0ad50, 0x055a0, 0x0aba4, 0x0a5b0, 0x052b0, // 2070-2079 + 0x0b273, 0x06930, 0x07337, 0x06aa0, 0x0ad50, 0x14b55, 0x04b60, 0x0a570, 0x054e4, 0x0d160, // 2080-2089 + 0x0e968, 0x0d520, 0x0daa0, 0x16aa6, 0x056d0, 0x04ae0, 0x0a9d4, 0x0a2d0, 0x0d150, 0x0f252, // 2090-2099 + 0x0d520], // 2100 + + /** + * 公历每个月份的天数普通表 + * @Array Of Property + * @return Number + */ + solarMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31], + + /** + * 天干地支之天干速查表 + * @Array Of Property trans["甲","乙","丙","丁","戊","己","庚","辛","壬","癸"] + * @return Cn string + */ + Gan: ['\u7532', '\u4e59', '\u4e19', '\u4e01', '\u620a', '\u5df1', '\u5e9a', '\u8f9b', '\u58ec', '\u7678'], + + /** + * 天干地支之地支速查表 + * @Array Of Property + * @trans["子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"] + * @return Cn string + */ + Zhi: ['\u5b50', '\u4e11', '\u5bc5', '\u536f', '\u8fb0', '\u5df3', '\u5348', '\u672a', '\u7533', '\u9149', '\u620c', '\u4ea5'], + + /** + * 天干地支之地支速查表<=>生肖 + * @Array Of Property + * @trans["鼠","牛","虎","兔","龙","蛇","马","羊","猴","鸡","狗","猪"] + * @return Cn string + */ + Animals: ['\u9f20', '\u725b', '\u864e', '\u5154', '\u9f99', '\u86c7', '\u9a6c', '\u7f8a', '\u7334', '\u9e21', '\u72d7', '\u732a'], + + /** + * 24节气速查表 + * @Array Of Property + * @trans["小寒","大寒","立春","雨水","惊蛰","春分","清明","谷雨","立夏","小满","芒种","夏至","小暑","大暑","立秋","处暑","白露","秋分","寒露","霜降","立冬","小雪","大雪","冬至"] + * @return Cn string + */ + solarTerm: ['\u5c0f\u5bd2', '\u5927\u5bd2', '\u7acb\u6625', '\u96e8\u6c34', '\u60ca\u86f0', '\u6625\u5206', '\u6e05\u660e', '\u8c37\u96e8', '\u7acb\u590f', '\u5c0f\u6ee1', '\u8292\u79cd', '\u590f\u81f3', '\u5c0f\u6691', '\u5927\u6691', '\u7acb\u79cb', '\u5904\u6691', '\u767d\u9732', '\u79cb\u5206', '\u5bd2\u9732', '\u971c\u964d', '\u7acb\u51ac', '\u5c0f\u96ea', '\u5927\u96ea', '\u51ac\u81f3'], + + /** + * 1900-2100各年的24节气日期速查表 + * @Array Of Property + * @return 0x string For splice + */ + sTermInfo: ['9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf97c3598082c95f8c965cc920f', + '97bd0b06bdb0722c965ce1cfcc920f', 'b027097bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', + '97bcf97c359801ec95f8c965cc920f', '97bd0b06bdb0722c965ce1cfcc920f', 'b027097bd097c36b0b6fc9274c91aa', + '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f', '97bd0b06bdb0722c965ce1cfcc920f', + 'b027097bd097c36b0b6fc9274c91aa', '9778397bd19801ec9210c965cc920e', '97b6b97bd19801ec95f8c965cc920f', + '97bd09801d98082c95f8e1cfcc920f', '97bd097bd097c36b0b6fc9210c8dc2', '9778397bd197c36c9210c9274c91aa', + '97b6b97bd19801ec95f8c965cc920e', '97bd09801d98082c95f8e1cfcc920f', '97bd097bd097c36b0b6fc9210c8dc2', + '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec95f8c965cc920e', '97bcf97c3598082c95f8e1cfcc920f', + '97bd097bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec9210c965cc920e', + '97bcf97c3598082c95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b97bd19801ec9210c965cc920e', '97bcf97c3598082c95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722', + '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f', + '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', + '97bcf97c359801ec95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f', '97bd097bd07f595b0b6fc920fb0722', + '9778397bd097c36b0b6fc9210c8dc2', '9778397bd19801ec9210c9274c920e', '97b6b97bd19801ec95f8c965cc920f', + '97bd07f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c920e', + '97b6b97bd19801ec95f8c965cc920f', '97bd07f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2', + '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bd07f1487f595b0b0bc920fb0722', + '7f0e397bd097c36b0b6fc9210c8dc2', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', + '97bcf7f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b97bd19801ec9210c965cc920e', '97bcf7f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', + '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf7f1487f531b0b0bb0b6fb0722', + '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', + '97bcf7f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b97bd19801ec9210c9274c920e', '97bcf7f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', + '9778397bd097c36b0b6fc9210c91aa', '97b6b97bd197c36c9210c9274c920e', '97bcf7f0e47f531b0b0bb0b6fb0722', + '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c920e', + '97b6b7f0e47f531b0723b0b6fb0722', '7f0e37f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2', + '9778397bd097c36b0b70c9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', '7f0e37f1487f595b0b0bb0b6fb0722', + '7f0e397bd097c35b0b6fc9210c8dc2', '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', + '7f0e27f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', + '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', + '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', + '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b7f0e47f531b0723b0787b0721', '7f0e27f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', + '9778397bd097c36b0b6fc9210c91aa', '97b6b7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722', + '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9210c8dc2', '977837f0e37f149b0723b0787b0721', + '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f5307f595b0b0bc920fb0722', '7f0e397bd097c35b0b6fc9210c8dc2', + '977837f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e37f1487f595b0b0bb0b6fb0722', + '7f0e397bd097c35b0b6fc9210c8dc2', '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', + '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '977837f0e37f14998082b0787b06bd', + '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', + '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', + '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', + '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14998082b0787b06bd', + '7f07e7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', + '977837f0e37f14998082b0723b06bd', '7f07e7f0e37f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722', + '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b0721', + '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f1487f595b0b0bb0b6fb0722', '7f0e37f0e37f14898082b0723b02d5', + '7ec967f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f1487f531b0b0bb0b6fb0722', + '7f0e37f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', + '7f0e37f1487f531b0b0bb0b6fb0722', '7f0e37f0e37f14898082b072297c35', '7ec967f0e37f14998082b0787b06bd', + '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e37f0e37f14898082b072297c35', + '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', + '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f149b0723b0787b0721', + '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14998082b0723b06bd', + '7f07e7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722', '7f0e37f0e366aa89801eb072297c35', + '7ec967f0e37f14998082b0723b06bd', '7f07e7f0e37f14998083b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722', + '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14898082b0723b02d5', '7f07e7f0e37f14998082b0787b0721', + '7f07e7f0e47f531b0723b0b6fb0722', '7f0e36665b66aa89801e9808297c35', '665f67f0e37f14898082b0723b02d5', + '7ec967f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0722', '7f0e36665b66a449801e9808297c35', + '665f67f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', + '7f0e36665b66a449801e9808297c35', '665f67f0e37f14898082b072297c35', '7ec967f0e37f14998082b0787b06bd', + '7f07e7f0e47f531b0723b0b6fb0721', '7f0e26665b66a449801e9808297c35', '665f67f0e37f1489801eb072297c35', + '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722'], + + /** + * 数字转中文速查表 + * @Array Of Property + * @trans ['日','一','二','三','四','五','六','七','八','九','十'] + * @return Cn string + */ + nStr1: ['\u65e5', '\u4e00', '\u4e8c', '\u4e09', '\u56db', '\u4e94', '\u516d', '\u4e03', '\u516b', '\u4e5d', '\u5341'], + + /** + * 日期转农历称呼速查表 + * @Array Of Property + * @trans ['初','十','廿','卅'] + * @return Cn string + */ + nStr2: ['\u521d', '\u5341', '\u5eff', '\u5345'], + + /** + * 月份转农历称呼速查表 + * @Array Of Property + * @trans ['正','一','二','三','四','五','六','七','八','九','十','冬','腊'] + * @return Cn string + */ + nStr3: ['\u6b63', '\u4e8c', '\u4e09', '\u56db', '\u4e94', '\u516d', '\u4e03', '\u516b', '\u4e5d', '\u5341', '\u51ac', '\u814a'], + + /** + * 返回农历y年一整年的总天数 + * @param lunar Year + * @return Number + * @eg:var count = calendar.lYearDays(1987) ;//count=387 + */ + lYearDays: function (y) { + var i; var sum = 348 + for (i = 0x8000; i > 0x8; i >>= 1) { sum += (this.lunarInfo[y - 1900] & i) ? 1 : 0 } + return (sum + this.leapDays(y)) + }, + + /** + * 返回农历y年闰月是哪个月;若y年没有闰月 则返回0 + * @param lunar Year + * @return Number (0-12) + * @eg:var leapMonth = calendar.leapMonth(1987) ;//leapMonth=6 + */ + leapMonth: function (y) { // 闰字编码 \u95f0 + return (this.lunarInfo[y - 1900] & 0xf) + }, + + /** + * 返回农历y年闰月的天数 若该年没有闰月则返回0 + * @param lunar Year + * @return Number (0、29、30) + * @eg:var leapMonthDay = calendar.leapDays(1987) ;//leapMonthDay=29 + */ + leapDays: function (y) { + if (this.leapMonth(y)) { + return ((this.lunarInfo[y - 1900] & 0x10000) ? 30 : 29) + } + return (0) + }, + + /** + * 返回农历y年m月(非闰月)的总天数,计算m为闰月时的天数请使用leapDays方法 + * @param lunar Year + * @return Number (-1、29、30) + * @eg:var MonthDay = calendar.monthDays(1987,9) ;//MonthDay=29 + */ + monthDays: function (y, m) { + if (m > 12 || m < 1) { return -1 }// 月份参数从1至12,参数错误返回-1 + return ((this.lunarInfo[y - 1900] & (0x10000 >> m)) ? 30 : 29) + }, + + /** + * 返回公历(!)y年m月的天数 + * @param solar Year + * @return Number (-1、28、29、30、31) + * @eg:var solarMonthDay = calendar.leapDays(1987) ;//solarMonthDay=30 + */ + solarDays: function (y, m) { + if (m > 12 || m < 1) { return -1 } // 若参数错误 返回-1 + var ms = m - 1 + if (ms == 1) { // 2月份的闰平规律测算后确认返回28或29 + return (((y % 4 == 0) && (y % 100 != 0) || (y % 400 == 0)) ? 29 : 28) + } else { + return (this.solarMonth[ms]) + } + }, + + /** + * 农历年份转换为干支纪年 + * @param lYear 农历年的年份数 + * @return Cn string + */ + toGanZhiYear: function (lYear) { + var ganKey = (lYear - 3) % 10 + var zhiKey = (lYear - 3) % 12 + if (ganKey == 0) ganKey = 10// 如果余数为0则为最后一个天干 + if (zhiKey == 0) zhiKey = 12// 如果余数为0则为最后一个地支 + return this.Gan[ganKey - 1] + this.Zhi[zhiKey - 1] + }, + + /** + * 公历月、日判断所属星座 + * @param cMonth [description] + * @param cDay [description] + * @return Cn string + */ + toAstro: function (cMonth, cDay) { + var s = '\u9b54\u7faf\u6c34\u74f6\u53cc\u9c7c\u767d\u7f8a\u91d1\u725b\u53cc\u5b50\u5de8\u87f9\u72ee\u5b50\u5904\u5973\u5929\u79e4\u5929\u874e\u5c04\u624b\u9b54\u7faf' + var arr = [20, 19, 21, 21, 21, 22, 23, 23, 23, 23, 22, 22] + return s.substr(cMonth * 2 - (cDay < arr[cMonth - 1] ? 2 : 0), 2) + '\u5ea7'// 座 + }, + + /** + * 传入offset偏移量返回干支 + * @param offset 相对甲子的偏移量 + * @return Cn string + */ + toGanZhi: function (offset) { + return this.Gan[offset % 10] + this.Zhi[offset % 12] + }, + + /** + * 传入公历(!)y年获得该年第n个节气的公历日期 + * @param y公历年(1900-2100);n二十四节气中的第几个节气(1~24);从n=1(小寒)算起 + * @return day Number + * @eg:var _24 = calendar.getTerm(1987,3) ;//_24=4;意即1987年2月4日立春 + */ + getTerm: function (y, n) { + if (y < 1900 || y > 2100) { return -1 } + if (n < 1 || n > 24) { return -1 } + var _table = this.sTermInfo[y - 1900] + var _info = [ + parseInt('0x' + _table.substr(0, 5)).toString(), + parseInt('0x' + _table.substr(5, 5)).toString(), + parseInt('0x' + _table.substr(10, 5)).toString(), + parseInt('0x' + _table.substr(15, 5)).toString(), + parseInt('0x' + _table.substr(20, 5)).toString(), + parseInt('0x' + _table.substr(25, 5)).toString() + ] + var _calday = [ + _info[0].substr(0, 1), + _info[0].substr(1, 2), + _info[0].substr(3, 1), + _info[0].substr(4, 2), + + _info[1].substr(0, 1), + _info[1].substr(1, 2), + _info[1].substr(3, 1), + _info[1].substr(4, 2), + + _info[2].substr(0, 1), + _info[2].substr(1, 2), + _info[2].substr(3, 1), + _info[2].substr(4, 2), + + _info[3].substr(0, 1), + _info[3].substr(1, 2), + _info[3].substr(3, 1), + _info[3].substr(4, 2), + + _info[4].substr(0, 1), + _info[4].substr(1, 2), + _info[4].substr(3, 1), + _info[4].substr(4, 2), + + _info[5].substr(0, 1), + _info[5].substr(1, 2), + _info[5].substr(3, 1), + _info[5].substr(4, 2) + ] + return parseInt(_calday[n - 1]) + }, + + /** + * 传入农历数字月份返回汉语通俗表示法 + * @param lunar month + * @return Cn string + * @eg:var cnMonth = calendar.toChinaMonth(12) ;//cnMonth='腊月' + */ + toChinaMonth: function (m) { // 月 => \u6708 + if (m > 12 || m < 1) { return -1 } // 若参数错误 返回-1 + var s = this.nStr3[m - 1] + s += '\u6708'// 加上月字 + return s + }, + + /** + * 传入农历日期数字返回汉字表示法 + * @param lunar day + * @return Cn string + * @eg:var cnDay = calendar.toChinaDay(21) ;//cnMonth='廿一' + */ + toChinaDay: function (d) { // 日 => \u65e5 + var s + switch (d) { + case 10: + s = '\u521d\u5341'; break + case 20: + s = '\u4e8c\u5341'; break + case 30: + s = '\u4e09\u5341'; break + default : + s = this.nStr2[Math.floor(d / 10)] + s += this.nStr1[d % 10] + } + return (s) + }, + + /** + * 年份转生肖[!仅能大致转换] => 精确划分生肖分界线是“立春” + * @param y year + * @return Cn string + * @eg:var animal = calendar.getAnimal(1987) ;//animal='兔' + */ + getAnimal: function (y) { + return this.Animals[(y - 4) % 12] + }, + + /** + * 传入阳历年月日获得详细的公历、农历object信息 <=>JSON + * @param y solar year + * @param m solar month + * @param d solar day + * @return JSON object + * @eg:console.log(calendar.solar2lunar(1987,11,01)); + */ + solar2lunar: function (y, m, d) { // 参数区间1900.1.31~2100.12.31 + // 年份限定、上限 + if (y < 1900 || y > 2100) { + return -1// undefined转换为数字变为NaN + } + // 公历传参最下限 + if (y == 1900 && m == 1 && d < 31) { + return -1 + } + // 未传参 获得当天 + if (!y) { + var objDate = new Date() + } else { + var objDate = new Date(y, parseInt(m) - 1, d) + } + var i; var leap = 0; var temp = 0 + // 修正ymd参数 + var y = objDate.getFullYear() + var m = objDate.getMonth() + 1 + var d = objDate.getDate() + var offset = (Date.UTC(objDate.getFullYear(), objDate.getMonth(), objDate.getDate()) - Date.UTC(1900, 0, 31)) / 86400000 + for (i = 1900; i < 2101 && offset > 0; i++) { + temp = this.lYearDays(i) + offset -= temp + } + if (offset < 0) { + offset += temp; i-- + } + + // 是否今天 + var isTodayObj = new Date() + var isToday = false + if (isTodayObj.getFullYear() == y && isTodayObj.getMonth() + 1 == m && isTodayObj.getDate() == d) { + isToday = true + } + // 星期几 + var nWeek = objDate.getDay() + var cWeek = this.nStr1[nWeek] + // 数字表示周几顺应天朝周一开始的惯例 + if (nWeek == 0) { + nWeek = 7 + } + // 农历年 + var year = i + var leap = this.leapMonth(i) // 闰哪个月 + var isLeap = false + + // 效验闰月 + for (i = 1; i < 13 && offset > 0; i++) { + // 闰月 + if (leap > 0 && i == (leap + 1) && isLeap == false) { + --i + isLeap = true; temp = this.leapDays(year) // 计算农历闰月天数 + } else { + temp = this.monthDays(year, i)// 计算农历普通月天数 + } + // 解除闰月 + if (isLeap == true && i == (leap + 1)) { isLeap = false } + offset -= temp + } + // 闰月导致数组下标重叠取反 + if (offset == 0 && leap > 0 && i == leap + 1) { + if (isLeap) { + isLeap = false + } else { + isLeap = true; --i + } + } + if (offset < 0) { + offset += temp; --i + } + // 农历月 + var month = i + // 农历日 + var day = offset + 1 + // 天干地支处理 + var sm = m - 1 + var gzY = this.toGanZhiYear(year) + + // 当月的两个节气 + // bugfix-2017-7-24 11:03:38 use lunar Year Param `y` Not `year` + var firstNode = this.getTerm(y, (m * 2 - 1))// 返回当月「节」为几日开始 + var secondNode = this.getTerm(y, (m * 2))// 返回当月「节」为几日开始 + + // 依据12节气修正干支月 + var gzM = this.toGanZhi((y - 1900) * 12 + m + 11) + if (d >= firstNode) { + gzM = this.toGanZhi((y - 1900) * 12 + m + 12) + } + + // 传入的日期的节气与否 + var isTerm = false + var Term = null + if (firstNode == d) { + isTerm = true + Term = this.solarTerm[m * 2 - 2] + } + if (secondNode == d) { + isTerm = true + Term = this.solarTerm[m * 2 - 1] + } + // 日柱 当月一日与 1900/1/1 相差天数 + var dayCyclical = Date.UTC(y, sm, 1, 0, 0, 0, 0) / 86400000 + 25567 + 10 + var gzD = this.toGanZhi(dayCyclical + d - 1) + // 该日期所属的星座 + var astro = this.toAstro(m, d) + + return { 'lYear': year, 'lMonth': month, 'lDay': day, 'Animal': this.getAnimal(year), 'IMonthCn': (isLeap ? '\u95f0' : '') + this.toChinaMonth(month), 'IDayCn': this.toChinaDay(day), 'cYear': y, 'cMonth': m, 'cDay': d, 'gzYear': gzY, 'gzMonth': gzM, 'gzDay': gzD, 'isToday': isToday, 'isLeap': isLeap, 'nWeek': nWeek, 'ncWeek': '\u661f\u671f' + cWeek, 'isTerm': isTerm, 'Term': Term, 'astro': astro } + }, + + /** + * 传入农历年月日以及传入的月份是否闰月获得详细的公历、农历object信息 <=>JSON + * @param y lunar year + * @param m lunar month + * @param d lunar day + * @param isLeapMonth lunar month is leap or not.[如果是农历闰月第四个参数赋值true即可] + * @return JSON object + * @eg:console.log(calendar.lunar2solar(1987,9,10)); + */ + lunar2solar: function (y, m, d, isLeapMonth) { // 参数区间1900.1.31~2100.12.1 + var isLeapMonth = !!isLeapMonth + var leapOffset = 0 + var leapMonth = this.leapMonth(y) + var leapDay = this.leapDays(y) + if (isLeapMonth && (leapMonth != m)) { return -1 }// 传参要求计算该闰月公历 但该年得出的闰月与传参的月份并不同 + if (y == 2100 && m == 12 && d > 1 || y == 1900 && m == 1 && d < 31) { return -1 }// 超出了最大极限值 + var day = this.monthDays(y, m) + var _day = day + // bugFix 2016-9-25 + // if month is leap, _day use leapDays method + if (isLeapMonth) { + _day = this.leapDays(y, m) + } + if (y < 1900 || y > 2100 || d > _day) { return -1 }// 参数合法性效验 + + // 计算农历的时间差 + var offset = 0 + for (var i = 1900; i < y; i++) { + offset += this.lYearDays(i) + } + var leap = 0; var isAdd = false + for (var i = 1; i < m; i++) { + leap = this.leapMonth(y) + if (!isAdd) { // 处理闰月 + if (leap <= i && leap > 0) { + offset += this.leapDays(y); isAdd = true + } + } + offset += this.monthDays(y, i) + } + // 转换闰月农历 需补充该年闰月的前一个月的时差 + if (isLeapMonth) { offset += day } + // 1900年农历正月一日的公历时间为1900年1月30日0时0分0秒(该时间也是本农历的最开始起始点) + var stmap = Date.UTC(1900, 1, 30, 0, 0, 0) + var calObj = new Date((offset + d - 31) * 86400000 + stmap) + var cY = calObj.getUTCFullYear() + var cM = calObj.getUTCMonth() + 1 + var cD = calObj.getUTCDate() + + return this.solar2lunar(cY, cM, cD) + } +} + +export default calendar diff --git a/.svn/pristine/a1/a1438cc2cbcdaae8f0b4a0e167b5568a8ef977fb.svn-base b/.svn/pristine/a1/a1438cc2cbcdaae8f0b4a0e167b5568a8ef977fb.svn-base new file mode 100644 index 0000000..8e75dc4 --- /dev/null +++ b/.svn/pristine/a1/a1438cc2cbcdaae8f0b4a0e167b5568a8ef977fb.svn-base @@ -0,0 +1,650 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/a1/a1ddd4dbec270cca82dd0f96e263920a0f2c38cc.svn-base b/.svn/pristine/a1/a1ddd4dbec270cca82dd0f96e263920a0f2c38cc.svn-base new file mode 100644 index 0000000..33ba66f --- /dev/null +++ b/.svn/pristine/a1/a1ddd4dbec270cca82dd0f96e263920a0f2c38cc.svn-base @@ -0,0 +1,119 @@ + + \ No newline at end of file diff --git a/.svn/pristine/a2/a20b86fb68f2fea7a729525ab3185fe6b10bff5e.svn-base b/.svn/pristine/a2/a20b86fb68f2fea7a729525ab3185fe6b10bff5e.svn-base new file mode 100644 index 0000000..9435f16 --- /dev/null +++ b/.svn/pristine/a2/a20b86fb68f2fea7a729525ab3185fe6b10bff5e.svn-base @@ -0,0 +1,249 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/a2/a22ce39e7f24712061e6297ea88fec97089b86d7.svn-base b/.svn/pristine/a2/a22ce39e7f24712061e6297ea88fec97089b86d7.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..5da2084e28d796ed2a8e16837959b3991c137d86 GIT binary patch literal 558 zcmV+}0@3}6P)8 z%TWSB5Phu&uU!1y)(kKLAp$i6i~xuLh+x+UFayW{GC(7Mn^0c3X;~%h>$bLPL1tD9 zIXN|Nrg!@DdV4+x*mL_Q1jngX&r+>z;wRNDEzxsmzXY zLPR_NqT+sq5?ZWEsugo|0tz)E7)*gBgLGGlTPW%fbOFo|ZpjhQ09#HF3{IPwC@$ws z>5<5Tn(Rao68|$g=L8f3-7==?Jkv>jnyds|f{`%L(&fMqC1A$Gd0S@64X0c!#7J1C zzUfxL7?BnwU}>JrmsxH*sP;sk)71QKj3gYO6b%xw^8QG%7=%Ka2Qp9=%a zmf5EWu5At>O2EwR4eCC(C4=IQLB`B@xZ-hLH07T6$Bt{l^%HuiW12-|5rD>X~3{D_+Q%fvqW1CsyTqR5{@qix! zCwK)O5V@7q{kB_hzaLJpY|E1Mz2HXHcg2T2D=oROOK4d+fe8jKj(5dNTOKV|jx~aO w@h|7S6MO;y0RR7pi-G9?000I_L_t&o0BDulF@QSKcK`qY07*qoM6N<$f}uI?NdN!< literal 0 HcmV?d00001 diff --git a/.svn/pristine/a3/a393967c1bfe8ecfedfa78521dd0313fb3b3e2b5.svn-base b/.svn/pristine/a3/a393967c1bfe8ecfedfa78521dd0313fb3b3e2b5.svn-base new file mode 100644 index 0000000..aff366e --- /dev/null +++ b/.svn/pristine/a3/a393967c1bfe8ecfedfa78521dd0313fb3b3e2b5.svn-base @@ -0,0 +1,662 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/a5/a53204d39f47cc530432bf139009e22fb7a136be.svn-base b/.svn/pristine/a5/a53204d39f47cc530432bf139009e22fb7a136be.svn-base new file mode 100644 index 0000000..6320671 --- /dev/null +++ b/.svn/pristine/a5/a53204d39f47cc530432bf139009e22fb7a136be.svn-base @@ -0,0 +1,10 @@ +export class BaseConfig { + // protected static servesUrl: string = "http://192.168.0.142:5085";//线下 + // protected static imgUrl: string = "http://192.168.0.142:5085"; + protected static servesUrl: string = "https://cnapi.twbar.cn"; + protected static imgUrl: string = "https://cnapi.twbar.cn"; + protected static mediaUrl: string = "http://byc1.xypays.cn/"; + protected static uploadUrl: string = "/TencentCos/GetUpLoadInfo"; + // protected static payuploadUrl: string = "http://192.168.0.142:5085"; + protected static payuploadUrl: string = "https://cnapi.twbar.cn"; +} \ No newline at end of file diff --git a/.svn/pristine/a5/a5755a73070597b0bd9cb08f5dcbf7da71386d55.svn-base b/.svn/pristine/a5/a5755a73070597b0bd9cb08f5dcbf7da71386d55.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..21fefa91b402dc3559167e4c126e933364721e25 GIT binary patch literal 6769 zcmdUU`9D-|`1irYDAkO8H->DJwL?DdZ);>kn?AZ&6v1S=d);<^#gE00jl%2*h zVl0vDA|tYY=kvUt-=60Wc%C25xzBySUgvec&vjkz>%QLCiMe}6_wq&VivR#z*4IOs zQODl@E-*dyj(=E@M;&N<%ycz@iecV00N_UGqmcIlY`1JKC-Ir5sg>A?=oEY*oY2gq zbvXJV;{|%1Hgq9OBT;*_fFc-La(>zp8*geCsgG)gc!>g=sP1TtQ^`u;)rk$i zv-Z)tQD`LNLf~8sP?dv87g`j=X`Ap4TnxtpJBQDkLwk01cJ|BT9Uqmjf{5sLEXMW? zMil5Mqp^p@eec#Wf$#94PPn1&_Y6Wy$xz=kn2?Z=q3Vco^h=DM9&u~xZrhoMX18(M z_Dh^qh2Lw~kRydFjzikfEQb!*l_cVc+qp05fesPeczx{iM$ZT*{0ImT`SPze1LE|L zJT1!i0@P;4>ESr`yf*3qC$d27$hW%IUk8fR z7YKc$VT9Vg6!AT)MQA7&#v|_*KpGz(mj?p8=00Ig`vpDg%v>JlnXVWl5sAdEMa46( zJQ~cFi;xCtBLc?Rcj@&Em|2^+fZFS7;pJ$K=(tIRVF3YU?`jBhMEKg4@zVg(S4%z@ z!>SZ$y?FD-oo+rG;C^cjE+Dk2|8SU*2WGAS%73q$@b)NURu{@YL4pqj@0LxlLy2Z; zhS3?tYN3@dnfd2>9ggg&UoYp|mh z_zqxTwWJG7mdr~M@SsZEy-8{722ZDhfx zo%a(icJ)ll|KP^C4Q)&}9)k+Rn!+$y>4MKp4RW8AHtR~V{I{eKM4EJJrv1QeQfd>EQHLznEhcS8H_;wYQBo=!`q#)l) z@zer0p1>YdVD^ZLYue=_lS(o61G#hAAPEU?8mywYri%7RXz@WgKw%kSw;NvxvfioO zy#r$G+F?hjOmr;R0G{P$>&Ns;a0&1xvSV3X6BT^{xf6Cdow5;UD-oiSiKVerG$vSsB`RrVEQL_@iH}Q>XyNVJEEX%@zf}qR)Gm zxFzAXOUGw-&#&gAG8JfZoMfiZ4dfz$5lZ@W(QQ9LaDJ_E?wCZQO#m7K3SqU)f_;w< z`lF1P+!=xUG$>8p&wG_YQ1oJR~;Qt_KzGu_t&f>62Uo>n{7s3OfU(u9m_w~)# zI>S~A6G+^#fWH{7p*;L162=0G&3dH?=~@^?pI?KYRc;@jJHMZ1`|ViM=-Ga{AKXU` z-(NhuyqnqG9GXcLMkQ0qTfAkKlebCjwL%0osK$pWpAu+ywjm0ukot?uZ7@?`XUMEt99f@oJW}V_x{R$8!%xO z)Qg1_K``;eF!8^%kpQq}mUF90Xjf97X(?v%`8JRp;S!nubEQpbP zG9@AW`9)qH>#=OsCTj1saG8MJx_FDW>7Eq4X}IbKn?b1+lb?a06liT%<{?u@ZO*S+{IE6XPe--GfZ~eOd5+W9mtF#E zcnjBCZ~43K$hAuX z0s`vx-rgy126vd77{&KHo&^6SyRgLtPoRCmhr9UbW6eE;3lfl!Z;ny^n`*5`tE;Ph zUc5K-9aY%V%45djJ=dZ6M<>Dr7u4Qc7`P!~G>_y$xbsJ4T|xkdADrx2;ruoWzLyHee{# zxFr7aZ`Q3LRsAI#;hKk44GC= z-YeNu7ODxJ{_2(QjPeX0rL4Iq_ z9~^cyU?rKl)EUAyAio0`7;barZ|#cEbdcR2xblX`Tlk5cC_S)iUxw$SYOgg`eLKwj;Z&F@$tMr z1Lx|N5{JgzuEQ7EQPxlIt#lQulf<#Gu{%n(sOj7sdbMh!!1s=H>ahi5O8TsMF3O7H zdukQfCfI9haa5;F3nz4h;9HDfkZjh3(CfK|iU4lapfb^4H=OYEbU@2VuCC9A^W11H z$`mgT&vD%I<{{CJ^TApVc#|+V;%fG~gW&wF2w%N_l*3;TpVhzNf41oC=W8UyH}r7>D`-tc z`>!<9IZoEO(Ie3r9~j-V&8>c!O38XmM=dGDDaBBs#9e(uMfD7U*R=J<3I10e4pUk@ zIO&7Z%+{H-a>p0Zu4)42Cit&b5q1^^t!f?_hu|x4?pa;&u>%KZ@MvJ{2?A&#+JAj6 zhPxu4q`*9ZrgZFbm9@F`B_9=T{0XYiT`Uv}Qh?f|vTMMDs18^uP8+eRa04xr;X*#& z^vll73^1sfn#n~A;@)Xro5!XbUP}*7fW#R(SR9t^Y7*Q)f$D(uBj!!2!l;?VTRpvB zqnZ#}p$!JeW4-%TM$marE2Cfi5MnV5JS=gk7zfwmjM5bwo$&sHn1P5?fA`zM}iHh#ABdS>b$6^)3#k%G!NHZOC)9YiN64V%Y}nB$Q^N za-fAOSw@|1dbbC@CoD_Yl)7dZ85^tm&o=qJ*>tszJ!*wK5zu>+n8?rGBfCv(X?Tz9 zYZib9nLt3L57Mnqpb-u4>NB2A*?x3v>d`e0ph)Pu^=PZ+CqMe8{dV!^Otb0;Ip<*X zmu*8I!ootxy6(+h`QkJ=aV^?)YHq;TQ#Qd|ZFB|sz||(p!8TRjUcyz$IVcBKJ?N^0 zTuzxpXE+whlw~^B+>?#Sbj-&lbOwUWJ`{=sCKnlik_$z+h6?2PEe6GEMc=5TLkj++Q$8q zL6W#W@6#}AX&gVn+UABvp>lyiY3J1s2J6Joc)!YPl_Ye#l(-1m=}IZ>+9CoMkkMQv z(pR<;*7RUNKp1o=|9~v%M$a}w?C9tS*V58zm#DT9eSz-iQZ&mY4A$ zbpG75I7%|XZ~d}2+;zC_+XfzsBfA+07x98iL~#hD+{++gORZ;Asb7Ts#3Ax!pv{Z7 zeUPH^0$n^zxtaZ{`02+0Lf@^sBa|0C>0@w~)I5 zK@j305@PMdq9?tU*=DxqJxV|3#l^>`s+Ra;2-tz&n+;srHgfr36)I%KA{<*#hFNX3 z1chTB2rYgIYJG;yP>5@5exwDKQ(vcAm|=6SH5dY|QGo?v&0;r%xo`ca>l%x;7j#-x zE&uAkr#V4LJCEKizB-8TYdf1jDQCa#xhi!pQO_r7cws(H$i}7KFh}2(RSeI=;*AXqM}|rTYu8tcL}+v z>-%SYf^HyPQkf6<+Y@=+;;=3jj!E;`mr1v}2VPWDV}DtMUw#Ma4lR$D1S8`GgHs|P z-F#i6Xh=lE)r9}!5mVrlgCQ09Rb?~Cj~zX%&4Cm-bzj<)X6iD>{2dW*Uiu-ZTZF~O zXF`hJLOJrSAMJ@19rk6 zlGgCfLsN722}*Id+NigvKcgXK6a zfL>kMHZ|aLfJqlbbd*!&eQh2l%J}=oAz^3ZB#W|JtATS4B6s@zF^p)qG6yZ%_0Cm4 zUv#8fMu1H|?3gah*{>kotRHhoMbzj5OInIp9u&z}h+&6Dhs?M4qMo8jM~t2H)MDoX z)a2G`00+QZhCONvPsCiL4Tex71p&p&ghyhoP?<@?l56x|I}HZqYIVHEMXog7?W(Bu zvhe+o5H>VM2jsMc=H|gnS^11m@_`j|AFxdyr@JJH*>HQxo*r|8vO|qO9L$h;z0ut` zeI}ki5ZD1{D2VwKdyRc!ISiq84}8ohZ_s<*)rRyYPa_mrpZEstSpwH2RAa+PN4Y@N z=g!k?teHpMS90N^5u}b)oA@*a<5QAVM=hbAW=X_^_)!6`-a_q}XJepVjoZg|ABjUt zLZQ=`&r>IF)$Gc#2D!97*B%nLBte}rZt%qm>9!uG23}{jCFy-EMHE)AQV#Fa&exZs zo6O6{7?GyK7s8n&zVnx0kJ8J0sBJVhlyAl>tpgEfPkCv}>ZSfqpFS}%C>Kn3fp^TL z;1%+-8<|{kP#Y-d6GL^F;Ejl?8|V!PfQ@^M+PeodT!dEMH~1a%$eB$8cIh8q`yiRb zAN4o669k^pSQUfTk|N*Kwu{rPyf8%73oYWw^&aidD9b~sT;Et(u4&r)`tDT;#|`j6 zy)Hm4Cm=Hj-nK$tBM8XaT0S-XHd0AgR<*3X(taB7R0cMIuv{&yOx#57R*zEmxr>QK`}kK&_=i==saVzV8SZCFcVg9`_tBX2? zpFT%lbbieeS?D64J@T+6;P-7*H%dR(stkfEN|l3m=*}uQc-8gaY^Z=dneIzYPR3C+ za+f;lru}+L?|~|WI*QE-l$xZXf?n)?8 zJ|jEK5_$Jx#2{1ggp1^Fm2DL8@D6Gq)uk%>30wI$aY@<`_hZV|^W(&Yg@rAL-D+RZ z6c4Y65#B->gRupGki@4)^SfJS#cyk`+NBs_njy*eUjCxC?^CY5v`q-=72$JAew2|1 z(~b}fWuy%jf`O863xWq + + + + {{str}} + + + + + + + +``` + +### 注:近期收到使用用户反馈,存在以下一个问题(如有好的建议,期待私信,谢谢) + +1、之前只支持默认值传入地区编码,已更新可以支持传入中文省市区数组 + +defaultValue可以传入defaultValue:['河北省','唐山市','丰南区']数组类型以及defaultValue: '420103'地区编码字符串类型 + +可以使用const reg =/([\u4e00-\u9fa5]+省|自治区|[\u4e00-\u9fa5]+市|[\u4e00-\u9fa5]+区)/g;将自己的省市区数据进行处理为数组再传入 + +2、有些用户反馈vue3下watch监听有问题 + +我自己创建一个vue项目,导入插件后,按照示例原封不动进行测试,没有发现问题; 发现有问题的朋友可以提供一下可以复现的demo给我,我这边看看具体什么情况 + +3、有些用户返回无法关闭弹框 + +不要把插件放到scroll-view里面,请务必放到最外层进行使用 + +#### 事件说明 + +| 事件名 | 返回值 | 描述 | +| :---------: | :----: | :------------: | +| @confirm | 对象(code,完整地区名称) | 点击确定的回调 | +| @cancel | 无 | 点击取消的回调 | + +#### Prop + +| 参数名称 | 描述 | +| -------- | ------------------------------ | +| visible | 控制选择器显示和隐藏 | +| column | 可选值2和3,2是省市两列选择;3是省市区三列选择 | +| maskCloseAble | 点击模态框是否关闭弹框 | +| defaultValue | 初始地区编码(例:420102或者['河北省','唐山市','丰南区']) | + +### 数据来源:[点击查看省市区数据来源](https://github.com/modood/Administrative-divisions-of-China/blob/master/dist/pca-code.json) +### 可接定制化组件开发 +### 右侧有本人代表作小程序二维码,可以扫码体验 +### 如使用过程中有问题或有一些好的建议,欢迎加QQ群互相学习交流:120594820 \ No newline at end of file diff --git a/.svn/pristine/a6/a6317bb9f5dab3c32423b6992ccb7f087a9a1a91.svn-base b/.svn/pristine/a6/a6317bb9f5dab3c32423b6992ccb7f087a9a1a91.svn-base new file mode 100644 index 0000000..67e6393 --- /dev/null +++ b/.svn/pristine/a6/a6317bb9f5dab3c32423b6992ccb7f087a9a1a91.svn-base @@ -0,0 +1,267 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [ + { + "root": "pages/order", + "pages": [ + { + "path": "orderDetail", + "style": { + "navigationBarTitleText": "项目中心", + "navigationStyle": "custom" + } + }, + { + "path" : "navigation", + "style" : + { + "navigationBarTitleText" : "导航", + "navigationStyle": "custom" + } + }, + { + "path" : "abnormal", + "style" : + { + "navigationBarTitleText" : "上报异常", + "navigationStyle": "custom" + } + }, + { + "path" : "grabOrder", + "style" : + { + "navigationBarTitleText" : "订单详情" + } + }, + { + "path" : "incomeDetail", + "style" : + { + "navigationBarTitleText" : "收入详情", + "navigationStyle": "custom" + } + }, + { + "path" : "withdraw", + "style" : + { + "navigationBarTitleText" : "提现申请" + } + }, + { + "path" : "finish", + "style" : + { + "navigationBarTitleText" : "订单完成" + } + }, + { + "path" : "upAbnormal", + "style" : + { + "navigationBarTitleText" : "异常上报" + } + }, + { + "path": "orderMap", + "style": { + "navigationBarTitleText": "订单地图" + } + }, + { + "path": "orderChat", + "style": { + "navigationBarTitleText": "联系客户" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path" : "edit", + "style" : + { + "navigationBarTitleText" : "编辑资料" + } + }, + { + "path" : "statusContro", + "style" : + { + "navigationBarTitleText" : "上线管理" + } + }, + { + "path" : "myKF", + "style" : + { + "navigationBarTitleText" : "联系客服", + "navigationStyle": "custom" + } + }, + { + "path" : "AbnormalList", + "style" : + { + "navigationBarTitleText" : "异常订单" + } + }, + { + "path" : "check", + "style" : + { + "navigationBarTitleText" : "签到奖励" + } + }, + { + "path" : "abnormalDetail", + "style" : + { + "navigationBarTitleText" : "异常详情" + } + }, + { + "path" : "security", + "style" : + { + "navigationBarTitleText" : "账号与安全" + } + }, + { + "path" : "authentication", + "style" : + { + "navigationBarTitleText" : "实名认证" + } + }, + { + "path" : "login", + "style" : + { + "navigationBarTitleText" : "登录", + "navigationStyle": "custom" + } + }, + { + "path" : "noticeList", + "style" : + { + "navigationBarTitleText" : "消息通知", + "navigationStyle": "custom" + } + }, + { + "path" : "setConnect", + "style" : + { + "navigationBarTitleText" : "紧急联系人" + } + }, + { + "path" : "evaluate", + "style" : + { + "navigationBarTitleText" : "评价中心" + } + }, + { + "path" : "completeData", + "style" : + { + "navigationBarTitleText" : "完善信息" + } + }, + { + "path" : "withDrowList", + "style" : + { + "navigationBarTitleText" : "提现列表" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/a7/a7419f7f804b4da0115e2b647e72bc3aa7cb02ca.svn-base b/.svn/pristine/a7/a7419f7f804b4da0115e2b647e72bc3aa7cb02ca.svn-base new file mode 100644 index 0000000..d27eb5a --- /dev/null +++ b/.svn/pristine/a7/a7419f7f804b4da0115e2b647e72bc3aa7cb02ca.svn-base @@ -0,0 +1,8 @@ +/// + +declare module '*.vue' { + import { DefineComponent } from 'vue' + // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/ban-types + const component: DefineComponent<{}, {}, any> + export default component +} diff --git a/.svn/pristine/a8/a8768c38b01d4eb19700014134fc7b3c51dead7a.svn-base b/.svn/pristine/a8/a8768c38b01d4eb19700014134fc7b3c51dead7a.svn-base new file mode 100644 index 0000000..c16fa04 --- /dev/null +++ b/.svn/pristine/a8/a8768c38b01d4eb19700014134fc7b3c51dead7a.svn-base @@ -0,0 +1,341 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/a8/a8bf4493f6fbeefe04200dd44ad065d7ebf0cac6.svn-base b/.svn/pristine/a8/a8bf4493f6fbeefe04200dd44ad065d7ebf0cac6.svn-base new file mode 100644 index 0000000..a272503 --- /dev/null +++ b/.svn/pristine/a8/a8bf4493f6fbeefe04200dd44ad065d7ebf0cac6.svn-base @@ -0,0 +1,255 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [ + { + "root": "pages/order", + "pages": [ + { + "path": "orderDetail", + "style": { + "navigationBarTitleText": "项目中心", + "navigationStyle": "custom" + } + }, + { + "path" : "navigation", + "style" : + { + "navigationBarTitleText" : "导航", + "navigationStyle": "custom" + } + }, + { + "path" : "abnormal", + "style" : + { + "navigationBarTitleText" : "上报异常", + "navigationStyle": "custom" + } + }, + { + "path" : "grabOrder", + "style" : + { + "navigationBarTitleText" : "订单详情" + } + }, + { + "path" : "incomeDetail", + "style" : + { + "navigationBarTitleText" : "收入详情", + "navigationStyle": "custom" + } + }, + { + "path" : "withdraw", + "style" : + { + "navigationBarTitleText" : "提现申请" + } + }, + { + "path" : "finish", + "style" : + { + "navigationBarTitleText" : "订单完成" + } + }, + { + "path" : "upAbnormal", + "style" : + { + "navigationBarTitleText" : "异常上报" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path" : "edit", + "style" : + { + "navigationBarTitleText" : "编辑资料" + } + }, + { + "path" : "statusContro", + "style" : + { + "navigationBarTitleText" : "上线管理" + } + }, + { + "path" : "myKF", + "style" : + { + "navigationBarTitleText" : "联系客服", + "navigationStyle": "custom" + } + }, + { + "path" : "AbnormalList", + "style" : + { + "navigationBarTitleText" : "异常订单" + } + }, + { + "path" : "check", + "style" : + { + "navigationBarTitleText" : "签到奖励" + } + }, + { + "path" : "abnormalDetail", + "style" : + { + "navigationBarTitleText" : "异常详情" + } + }, + { + "path" : "security", + "style" : + { + "navigationBarTitleText" : "账号与安全" + } + }, + { + "path" : "authentication", + "style" : + { + "navigationBarTitleText" : "实名认证" + } + }, + { + "path" : "login", + "style" : + { + "navigationBarTitleText" : "登录", + "navigationStyle": "custom" + } + }, + { + "path" : "noticeList", + "style" : + { + "navigationBarTitleText" : "消息通知", + "navigationStyle": "custom" + } + }, + { + "path" : "setConnect", + "style" : + { + "navigationBarTitleText" : "紧急联系人" + } + }, + { + "path" : "evaluate", + "style" : + { + "navigationBarTitleText" : "评价中心" + } + }, + { + "path" : "completeData", + "style" : + { + "navigationBarTitleText" : "完善信息" + } + }, + { + "path" : "withDrowList", + "style" : + { + "navigationBarTitleText" : "提现列表" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/a9/a96729cb014adbd7941acec984b8eb2cfd3ca6d0.svn-base b/.svn/pristine/a9/a96729cb014adbd7941acec984b8eb2cfd3ca6d0.svn-base new file mode 100644 index 0000000..bd29371 --- /dev/null +++ b/.svn/pristine/a9/a96729cb014adbd7941acec984b8eb2cfd3ca6d0.svn-base @@ -0,0 +1,22 @@ +import { Service } from '@/Service/Service'; +/*****用户接口*****/ +class NvpWithService { + private static WithDrawPath: string = '/With/WithDraw'; + /*****佣金提现*****/ + static WithDraw(money: number, name: string, account: string) { + var result = Service.Request(this.WithDrawPath, "POST", { money, name, account }); + return result; + } + + private static GetUserWithLogPath: string = '/With/GetUserWithLog'; + /*****用户提现记录*****/ + static GetUserWithLog(page: number) { + var result = Service.Request(this.GetUserWithLogPath, "GET", { page }); + return result; + } + +} +export { + Service, + NvpWithService +} diff --git a/.svn/pristine/a9/a9e51e7d3e526d5e8537be9f114be2ce378bd2ae.svn-base b/.svn/pristine/a9/a9e51e7d3e526d5e8537be9f114be2ce378bd2ae.svn-base new file mode 100644 index 0000000..a145c67 --- /dev/null +++ b/.svn/pristine/a9/a9e51e7d3e526d5e8537be9f114be2ce378bd2ae.svn-base @@ -0,0 +1,36 @@ +import { Service } from '@/Service/Service'; +/*****登录接口*****/ +class NvpLoginService { + private static GetWxLoginOpenIdPath: string = '/Login/GetWxLoginOpenId'; + /*****小程序根据code获取openId*****/ + static GetWxLoginOpenId(code: string, type: number) { + var result = Service.Request(this.GetWxLoginOpenIdPath, "GET", { code, type }); + return result; + } + + private static AppletLoginPath: string = '/Login/AppletLogin'; + /*****普通登陆接口(小程序)*****/ + static AppletLogin(openId: string, channel: string) { + var result = Service.Request(this.AppletLoginPath, "POST", { openId, channel }); + return result; + } + + private static RegistPath: string = '/Login/Regist'; + /*****注册接口*****/ + static Regist(remNo: string, openId: string, uniopenId: string, channel: string, type: number) { + var result = Service.Request(this.RegistPath, "POST", { remNo, openId, uniopenId, channel, type }); + return result; + } + + private static GetNumberPhonePath: string = '/Login/GetNumberPhone'; + /*****获取手机号*****/ + static GetNumberPhone(code: string) { + var result = Service.Request(this.GetNumberPhonePath, "GET", { code }); + return result; + } + +} +export { + Service, + NvpLoginService +} diff --git a/.svn/pristine/aa/aaa0f7f65de113e9d4f7a59e265cf70c33831658.svn-base b/.svn/pristine/aa/aaa0f7f65de113e9d4f7a59e265cf70c33831658.svn-base new file mode 100644 index 0000000..10cb6bc --- /dev/null +++ b/.svn/pristine/aa/aaa0f7f65de113e9d4f7a59e265cf70c33831658.svn-base @@ -0,0 +1,152 @@ +{ + "name" : "确菜农骑手端", + "appid" : "__UNI__6EE9F39", + "description" : "", + "versionName" : "1.1.2", + "versionCode" : 112, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {}, + "Push" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 30, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "push" : { + "unipush" : { + "offline" : false + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/ab/ab9f1255f6f2a35e2982a7d514e3e3b633ba56bb.svn-base b/.svn/pristine/ab/ab9f1255f6f2a35e2982a7d514e3e3b633ba56bb.svn-base new file mode 100644 index 0000000..bcd97e6 --- /dev/null +++ b/.svn/pristine/ab/ab9f1255f6f2a35e2982a7d514e3e3b633ba56bb.svn-base @@ -0,0 +1,152 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__6EE9F39", + "description" : "", + "versionName" : "1.0.6", + "versionCode" : 106, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {}, + "Push" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 25, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "push" : { + "unipush" : { + "offline" : false + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/ac/ac1a104a610cf87eabf48d3a66160870b924fc09.svn-base b/.svn/pristine/ac/ac1a104a610cf87eabf48d3a66160870b924fc09.svn-base new file mode 100644 index 0000000..59520ac --- /dev/null +++ b/.svn/pristine/ac/ac1a104a610cf87eabf48d3a66160870b924fc09.svn-base @@ -0,0 +1,37 @@ +import { Service } from '@/Service/Service'; +/*****登录接口*****/ +class CNRiderLoginService { + private static RiderLoginPath : string = '/Login/RiderLogin'; + /*****登录注册*****/ + static RiderLogin(login : any) { + var result = Service.Request(this.RiderLoginPath, "POST", login); + return result; + } + + private static GetKefuInfoPath : string = '/Home/GetKefuInfo'; + /*****获取客服电话*****/ + static GetKefuInfo() { + var result = Service.Request(this.GetKefuInfoPath, "GET", {}); + return result; + } + + + private static GetPrivacyPath : string = '/Home/GetPrivacy'; + /*****用户协议*****/ + static GetPrivacy(type : number) { + var result = Service.Request(this.GetPrivacyPath, "GET", { type }); + return result; + } + + private static SendUserSmsPath : string = '/Login/SendUserSms'; + /*****发送验证码*****/ + static SendUserSms(phone : string, code : string) { + var result = Service.Request(this.SendUserSmsPath, "POST", { phone, code }); + return result; + } + +} +export { + Service, + CNRiderLoginService +} \ No newline at end of file diff --git a/.svn/pristine/ad/ad9c374b91f656390dedb0bd65d14307217a0133.svn-base b/.svn/pristine/ad/ad9c374b91f656390dedb0bd65d14307217a0133.svn-base new file mode 100644 index 0000000..3ee4d46 --- /dev/null +++ b/.svn/pristine/ad/ad9c374b91f656390dedb0bd65d14307217a0133.svn-base @@ -0,0 +1,249 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/af/af19ea7a0f0e6d0f39c42106627ece57d554301a.svn-base b/.svn/pristine/af/af19ea7a0f0e6d0f39c42106627ece57d554301a.svn-base new file mode 100644 index 0000000..c017b6c --- /dev/null +++ b/.svn/pristine/af/af19ea7a0f0e6d0f39c42106627ece57d554301a.svn-base @@ -0,0 +1,840 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/af/afc197297eefc8797d9752aa5bd71eecbbae833d.svn-base b/.svn/pristine/af/afc197297eefc8797d9752aa5bd71eecbbae833d.svn-base new file mode 100644 index 0000000..cd76378 --- /dev/null +++ b/.svn/pristine/af/afc197297eefc8797d9752aa5bd71eecbbae833d.svn-base @@ -0,0 +1,392 @@ +import { HttpRequest, StoreAssist, UploadAssist, ResultData } from '@/common/Common'; +import { BaseConfig } from './BaseConfig'; +export class Service extends BaseConfig { + + + // 获取是否后台 + static getIsHede () { + let isHede = this.GetStorageCache('isHede') + if (isHede == null || isHede == '') { + return false; + } else { + return isHede; + } + } + + + //获取API地址 + static ApiUrl(path : string) { + return `${this.servesUrl}${path}`; + } + + //获取图片地址 + static GetpayImg(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.payuploadUrl}${path}`; + } + } + + //获取图标地址 + static GetIconImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + + //获取图片地址 + static GetMateUrlByImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + //获取音视频地址 + static GetMateUrlByMedia(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.mediaUrl}${path}`; + } + } + //获取登录账号token + static GetUserToken() { + return Service.GetStorageCache('token'); + } + // 获取登录状态 + static GetUserIsLogin() { + var token = this.GetUserToken(); + if (token == null || token == '') { + return false; + } else { + return true; + } + } + //设置登录账户Token + static SetUserToken(token : string) { + this.SetStorageCache('token', token); + } + //清理登录账户Token + static OffUserToken() { + Service.DelStorageCache('token'); + uni.$emit('ImComOff', 'user'); + this.ClearUserStateData(); + } + //获取登录账号状态信息 + static GetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //设置当前登录账号状态信息 + static SetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //清理当前登录账号状态信息 + static ClearUserStateData() { + Service.DelStorageCache('StateDomain'); + } + + + //获取当前客户端ID + static GetUserClientId() { + return this.GetStorageCache('ClientId'); + } + //保存当前客户端ID + static SetUserClientId(clientId: string) { + this.SetStorageCache('ClientId', clientId); + } + + + //获取缓存 + static GetStorageCache(key : string) { + return StoreAssist.Get(key); + } + //删除缓存 + static DelStorageCache(key : string) { + StoreAssist.Delete(key); + } + //设置缓存 + static SetStorageCache(key : string, data : any) { + StoreAssist.Set(key, data); + } + + /*****以下是基础方法调用与拦截器*****/ + + static Request(url : string, method : 'GET' | 'POST' | 'PUT' | undefined, data : object | any) { + const token = Service.GetUserToken(); + + const _url = Service.ApiUrl(url); + var result = HttpRequest.RequestWithToken(_url, method, token, data).then((retResult : any) => { + if (retResult.statusCode == '200') { + var obj = retResult.data; + if (obj.code == 401) { + //过期 + this.OffUserToken(); + // this.Msg('登录过期,请重新登录') + this.GoPage('/pages/my/login') + return Promise.reject(); + } else if (obj.code == 40101) { + //失效 + this.OffUserToken(); + this.GoPageDelse('/pages/mine/login/login'); + return Promise.reject(); + } else if (obj.code == 1004) { + //资源不存在 + this.GoPageDelse('/pages/AppSet/404/404'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 40188) { + //无权限 + + this.GoPageDelse('/pages/AppSet/40188/40188'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 1008) { + //业务提示 + return new ResultData(obj.code, obj.msg, obj.data); + } else { + return new ResultData(obj.code, obj.msg, obj.data); + } + } else { + return new ResultData(-1, '', ''); + } + }); + return result; + } + /*****以下是腾讯云oss上传*****/ + static UpLoadMedia(code : string, fileName : string, desire : string, path : string) { + var result = this.Request(this.uploadUrl, 'GET', { code, fileName, desire }).then((retResult) => { + if (retResult.code == 0) { + var upOk = UploadAssist.Upload(retResult.data.url, path, retResult.data.cosData).then((upRet : any) => { + if (upRet.statusCode == 200) { + const retData : any = { code: retResult.data.code, file: retResult.data.file, cache: retResult.data.cache }; + return new ResultData(0, '上传成功!', retData); + } else { + this.Msg('上传失败!'); + return new ResultData(-1, '', ''); + } + }); + return upOk; + } else { + this.Msg('上传失败!'); + return new ResultData(-1, retResult.msg,retResult.data); + } + }); + return result; + } + + /***********消息操作**************/ + static Msg(message : any, icon ?: any) : void { + if (icon != null) { + uni.showToast({ + title: message, + icon: icon + }); + } else { + uni.showToast({ + title: message, + icon: 'none' + }); + } + } + + static Alert(msg : string, cb ?: any) { + uni.showModal({ + title: '提示', + content: msg, + showCancel: false, + cancelText: '取消', + confirmText: '确定', + success: res => { + if (res.confirm) { + cb && cb(); + } + } + }) + } + + static LoadIng(text : any) : void { + uni.showLoading({ + title: text, + icon: 'none' + }); + } + + static LoadClose() : void { + uni.hideLoading(); + } + + /**********跳转操作*********/ + + + static GoPageTab(path : string) : void { + uni.switchTab({ + url: path + }); + } + + /**********跳转操作*********/ + static GoPage(path : string) : void { + uni.navigateTo({ + url: path, //跳转的页面 + success: function (res) { + // 通过eventChannel向被打开页面传送数据 + } + }); + } + /**********跳转并删除当前页面操作*********/ + static GoPageDelse(path : string) : void { + uni.redirectTo({ + url: path //跳转的页面 + }); + } + + /**********返回上一页*********/ + static GoPageBack() : void { + uni.navigateBack({ delta: 1 }); + } + + /*****获取图片base64*****/ + static UpLoadMediaBase64(path : string) { + return new Promise(function (resolve, reject) { + uni.uploadFile({ + url: 'http://cloud.pccsh.com/DefUp/UploadFileImgBase64', //仅为示例,非真实的接口地址 + filePath: path, + name: 'file', + success: (uploadFileRes) => { + resolve(uploadFileRes); + }, + fail: (err) => { + reject(err); + } + }); + }); + } + /*****获取图片位置信息*****/ + //获取时间戳 + static GetTimeSpan(milliSecond : number) { + return Date.now() + milliSecond; + } + + // 时间戳处理 + static formatDate(time : any, type : number) : string { + const date = new Date(time); + const year = date.getFullYear(); + const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以加1,并用0填充 + const day = String(date.getDate()).padStart(2, '0'); // 用0填充 + const hours = String(date.getHours()).padStart(2, '0'); // 用0填充 + const minutes = String(date.getMinutes()).padStart(2, '0'); // 用0填充 + const seconds = String(date.getSeconds()).padStart(2, '0'); // 用0填充 + if (type == 0) { + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } + else if (type == 1) { + return `${year}-${month}-${day} ${hours}:${minutes}`; + } else if (type == 2) { + return `${year}-${month}-${day}`; + } else if (type == 3) { + return `${hours}:${minutes}`; + } else if (type == 4) { + return `${year}${month}${day}`; + } + + else { + return `${hours}:${minutes}`; + } + } + + /*****节流*****/ + static throttle(fn: () => void, time: number) { + let canRun: boolean = true; + return function () { + if (!canRun) return; + canRun = false; + setTimeout(() => { + fn(); //可以不执行 + canRun = true; + }, time); + }; + } + /*****防抖*****/ + static debounce void>(fn: T, time: number): (...args: Parameters) => void { + let timerId: NodeJS.Timeout | null = null; + + return (...args: Parameters) => { + if (timerId) { + clearTimeout(timerId); + } + + timerId = setTimeout(() => { + fn(...args); // 执行传入的函数 + timerId = null; // 清除定时器ID + }, time); + }; + } + + + + + + // 普通图片上传 + static uploadH5(path, dic, callback) { + console.log(this.payuploadUrl,'xxx') + uni.uploadFile({ + url: this.payuploadUrl+'/Upload/Upload', + method: "POST", + header: { + 'Authorization': 'Bearer ' + Service.GetUserToken(), + }, + formData: { + "path": dic, + }, + filePath: path, + name: 'file', + success: (data) => { + let info = data.data + callback(info) + } + }) + } + + /** + * 创建并显示一条本地推送通知 (手机顶部栏消息) + * + * @param {string} title - 通知的标题 + * @param {string} content - 通知的主要内容 + * @param {Record} [payload] - (可选) 附带的业务数据。用户点击通知时,可以在 App 启动时获取到。 + */ + + + public static createLocalPush( + title: string, + content: string, + payload?: string, + ): void { + + // #ifdef APP-PLUS + console.log('准备创建本地推送:', { title, content, payload }); + + // 消息的配置对象 + const options = { + cover: false, // 是否覆盖上一次的通知。设为 false 则不覆盖,多条通知会并列显示。 + title: title, + vibrate:['100', '200', '300'] + }; + + // 调用 plus.push.createMessage API + plus.push.createMessage(content, payload, options); + + // #endif + + // #ifndef APP-PLUS + console.warn('本地推送功能仅在 App 端支持。'); + // #endif + } + + +} \ No newline at end of file diff --git a/.svn/pristine/b0/b0512fe6134d1022de69b8af3f2d025cc459256f.svn-base b/.svn/pristine/b0/b0512fe6134d1022de69b8af3f2d025cc459256f.svn-base new file mode 100644 index 0000000..8e33e2f --- /dev/null +++ b/.svn/pristine/b0/b0512fe6134d1022de69b8af3f2d025cc459256f.svn-base @@ -0,0 +1,808 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/b0/b0a6fc286a77846d1830d4067baa1f1c4fc8096f.svn-base b/.svn/pristine/b0/b0a6fc286a77846d1830d4067baa1f1c4fc8096f.svn-base new file mode 100644 index 0000000..ed4adcf --- /dev/null +++ b/.svn/pristine/b0/b0a6fc286a77846d1830d4067baa1f1c4fc8096f.svn-base @@ -0,0 +1,10 @@ +/// +import 'vue' + +declare module '@vue/runtime-core' { + type Hooks = App.AppInstance & Page.PageInstance; + + interface ComponentCustomOptions extends Hooks { + + } +} diff --git a/.svn/pristine/b1/b1276cd79568a2db18ff9cf1af70acda5b689039.svn-base b/.svn/pristine/b1/b1276cd79568a2db18ff9cf1af70acda5b689039.svn-base new file mode 100644 index 0000000..3cf945d --- /dev/null +++ b/.svn/pristine/b1/b1276cd79568a2db18ff9cf1af70acda5b689039.svn-base @@ -0,0 +1,75 @@ +import { Service } from "@/Service/Service" +export class EventHandler { + //处理事件 + static Events(data : any) { + var result = JSON.parse(data.data); + if (result.code == 'msg') { + this.ChatEnent(result); + } else if (result.code == 'order') { + uni.$emit('newOrder', data); + this.NewOrder() + } + } + + static NewOrder() { + var innerAudioContext = uni.createInnerAudioContext(); + innerAudioContext.autoplay = true; + innerAudioContext.src = '/static/order.mp3'; + + innerAudioContext.onEnded(() => { + console.log('播放结束'); + }) + } + + + static ChatEnent(data : any) { + console.log(data, 'xxx') + var eventName = `chat_${data.chanId}`; + uni.$emit(eventName, data); + } + + static ChatUserEnent(data : any) { + var eventUserName = `chatUser_${data.sendId}`; + uni.$emit('UpdatePrivateMsg', data); + uni.$emit(eventUserName, data); + this.plusPush(); + } + + static plusPush() { + //#ifdef APP-PLUS + if (!Service.getIsHede()) { + return + } + + let content = '您有一条新的消息~'; + let options = { + cover: false, + when: new Date(), + title: '通知消息' + }; + let body = { + id: 'id', + key: 'key' + }; + let payload = JSON.stringify(body); + plus.push.createMessage(content, payload, options); + //#endif + } + + static SystemEnent(data : any) { + let obj = JSON.parse(data.data); + if (obj.code == 'Like' || obj.code == 'Aite' || obj.code == 'Comment' || obj.code == 'Notice') { + uni.$emit('MegEvent', obj); + } else if (obj.code == 'Off') { + uni.$emit('ImComOff', 'user'); + } else if (obj.code == 'UpdateUserInfo') { + uni.$emit('UpdateUserInfo'); + } else if (obj.code == 'Friend') { + uni.$emit('Friend'); + } + } + + static ConnectBus() { + uni.$emit('UpdateChat'); + } +} \ No newline at end of file diff --git a/.svn/pristine/b1/b16b2944259466ee8af20e153767fe9c6a944a48.svn-base b/.svn/pristine/b1/b16b2944259466ee8af20e153767fe9c6a944a48.svn-base new file mode 100644 index 0000000..d3a063c --- /dev/null +++ b/.svn/pristine/b1/b16b2944259466ee8af20e153767fe9c6a944a48.svn-base @@ -0,0 +1,82 @@ +{ + "name": "uni-preset-vue", + "version": "0.0.0", + "scripts": { + "dev:app": "uni -p app", + "dev:app-android": "uni -p app-android", + "dev:app-ios": "uni -p app-ios", + "dev:custom": "uni -p", + "dev:h5": "uni", + "dev:h5:ssr": "uni --ssr", + "dev:mp-alipay": "uni -p mp-alipay", + "dev:mp-baidu": "uni -p mp-baidu", + "dev:mp-jd": "uni -p mp-jd", + "dev:mp-kuaishou": "uni -p mp-kuaishou", + "dev:mp-lark": "uni -p mp-lark", + "dev:mp-qq": "uni -p mp-qq", + "dev:mp-toutiao": "uni -p mp-toutiao", + "dev:mp-weixin": "uni -p mp-weixin", + "dev:mp-xhs": "uni -p mp-xhs", + "dev:quickapp-webview": "uni -p quickapp-webview", + "dev:quickapp-webview-huawei": "uni -p quickapp-webview-huawei", + "dev:quickapp-webview-union": "uni -p quickapp-webview-union", + "build:app": "uni build -p app", + "build:app-android": "uni build -p app-android", + "build:app-ios": "uni build -p app-ios", + "build:custom": "uni build -p", + "build:h5": "uni build", + "build:h5:ssr": "uni build --ssr", + "build:mp-alipay": "uni build -p mp-alipay", + "build:mp-baidu": "uni build -p mp-baidu", + "build:mp-jd": "uni build -p mp-jd", + "build:mp-kuaishou": "uni build -p mp-kuaishou", + "build:mp-lark": "uni build -p mp-lark", + "build:mp-qq": "uni build -p mp-qq", + "build:mp-toutiao": "uni build -p mp-toutiao", + "build:mp-weixin": "uni build -p mp-weixin", + "build:mp-xhs": "uni build -p mp-xhs", + "build:quickapp-webview": "uni build -p quickapp-webview", + "build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei", + "build:quickapp-webview-union": "uni build -p quickapp-webview-union", + "type-check": "vue-tsc --noEmit" + }, + "dependencies": { + "@climblee/uv-ui": "^1.1.20", + "@dcloudio/uni-app": "3.0.0-4080420251103001", + "@dcloudio/uni-app-harmony": "3.0.0-4080420251103001", + "@dcloudio/uni-app-plus": "3.0.0-4080420251103001", + "@dcloudio/uni-components": "3.0.0-4080420251103001", + "@dcloudio/uni-h5": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-alipay": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-baidu": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-harmony": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-jd": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-kuaishou": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-lark": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-qq": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-xhs": "3.0.0-4080420251103001", + "@dcloudio/uni-quickapp-webview": "3.0.0-4080420251103001", + "clipboard": "^2.0.11", + "dayjs": "^1.11.13", + "echarts": "^5.5.1", + "uview-plus": "^3.3.54", + "vue": "3.4.21", + "vue-i18n": "9.14.5" + }, + "devDependencies": { + "@dcloudio/types": "3.4.19", + "@dcloudio/uni-automator": "3.0.0-4080420251103001", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-stacktracey": "3.0.0-4080420251103001", + "@dcloudio/vite-plugin-uni": "3.0.0-4080420251103001", + "@vue/runtime-core": "3.5.23", + "@vue/tsconfig": "^0.1.3", + "sass": "1.63.2", + "sass-loader": "10.4.1", + "typescript": "^4.9.4", + "vite": "5.2.8", + "vue-tsc": "^1.0.24" + } +} diff --git a/.svn/pristine/b2/b204c3fec6c51dc20bfe5d39854b16dcef41720f.svn-base b/.svn/pristine/b2/b204c3fec6c51dc20bfe5d39854b16dcef41720f.svn-base new file mode 100644 index 0000000..5157848 --- /dev/null +++ b/.svn/pristine/b2/b204c3fec6c51dc20bfe5d39854b16dcef41720f.svn-base @@ -0,0 +1,91 @@ +import { Service } from '@/Service/Service'; +/*****首页接口*****/ +class CNRiderDataService { + private static GetPubRiderInfoPath : string = '/Rider/GetRiderInfo'; + /*****个人信息*****/ + static GetRiderInfo() { + var result = Service.Request(this.GetPubRiderInfoPath, "GET", {}); + return result; + } + + + private static GetRiderHomeInfoPath : string = '/Rider/GetRiderHomeInfo'; + /*****获取首页信息*****/ + static GetRiderHomeInfo() { + var result = Service.Request(this.GetRiderHomeInfoPath, "GET", {}); + return result; + } + + private static CompleteRiderPath : string = '/Rider/CompleteRider'; + /*****完善信息接口*****/ + static CompleteRider(nick:string,headImg:string,idenNumber:string,sex:string,age:number,identityA:string,identityB:string,province:string,city:string,region:string,lat:number,lon:number) { + var result = Service.Request(this.CompleteRiderPath, "POST", {nick,headImg,idenNumber,sex,age,identityA,identityB,province,city,region,lat,lon}); + return result; + } + + private static GetAddressInfoPath : string = '/User/GetAddressInfo'; + /*****根据经纬度获取地址信息*****/ + static GetAddressInfo(lat:number,lon:number) { + var result = Service.Request(this.GetAddressInfoPath, "GET", {lat,lon}); + return result; + } + + private static GetRiderAccInfoPath : string = '/Rider/GetRiderAccInfo'; + /*****获取账户信息*****/ + static GetRiderAccInfo() { + var result = Service.Request(this.GetRiderAccInfoPath, "GET", {}); + return result; + } + + private static UpdateRiderUnitPath : string = '/Rider/UpdateRiderUnit'; + /*****修改基础信息*****/ + static UpdateRiderUnit(headImg:string,sex:string,age:number) { + var result = Service.Request(this.UpdateRiderUnitPath, "POST", {headImg,sex,age}); + return result; + } + + + private static UpdateRiderIdentityPath : string = '/Rider/UpdateRiderIdentity'; + /*****修改实名认证*****/ + static UpdateRiderIdentity(nick:string,idenNumber:string,identityA:string,identityB:string) { + var result = Service.Request(this.UpdateRiderIdentityPath, "POST", {nick,idenNumber,identityA,identityB}); + return result; + } + + private static UpdateRiderOnlinePath : string = '/Rider/UpdateRiderOnline'; + /*****修改上下线*****/ + static UpdateRiderOnline() { + var result = Service.Request(this.UpdateRiderOnlinePath, "GET", {}); + return result; + } + + + private static GetRiderExigencyPath : string = '/Rider/GetRiderExigency'; + /*****紧急联系人详情*****/ + static GetRiderExigency() { + var result = Service.Request(this.GetRiderExigencyPath, "GET", {}); + return result; + } + + private static AddRiderExigencyPath : string = '/Rider/AddRiderExigency'; + /*****添加联系人*****/ + static AddRiderExigency(name:string,phone:string) { + var result = Service.Request(this.AddRiderExigencyPath, "POST", {name,phone}); + return result; + } + + private static GetRiderEvaluatePath : string = '/Rider/GetRiderEvaluate'; + /*****骑手评价列表*****/ + static GetRiderEvaluate(type:number,page:number) { + var result = Service.Request(this.GetRiderEvaluatePath, "GET", {type,page}); + return result; + } + + + + +} +export { + Service, + CNRiderDataService +} \ No newline at end of file diff --git a/.svn/pristine/b2/b23b3fe67488af2f6e78cade0690e283ca8c35c3.svn-base b/.svn/pristine/b2/b23b3fe67488af2f6e78cade0690e283ca8c35c3.svn-base new file mode 100644 index 0000000..6f85426 --- /dev/null +++ b/.svn/pristine/b2/b23b3fe67488af2f6e78cade0690e283ca8c35c3.svn-base @@ -0,0 +1,559 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/b4/b4f6d091380a0842f4984c6c9987c50dcd3cce13.svn-base b/.svn/pristine/b4/b4f6d091380a0842f4984c6c9987c50dcd3cce13.svn-base new file mode 100644 index 0000000..fcbd13c --- /dev/null +++ b/.svn/pristine/b4/b4f6d091380a0842f4984c6c9987c50dcd3cce13.svn-base @@ -0,0 +1,12 @@ +{ + "uni-calender.ok": "ok", + "uni-calender.cancel": "cancel", + "uni-calender.today": "today", + "uni-calender.MON": "MON", + "uni-calender.TUE": "TUE", + "uni-calender.WED": "WED", + "uni-calender.THU": "THU", + "uni-calender.FRI": "FRI", + "uni-calender.SAT": "SAT", + "uni-calender.SUN": "SUN" +} diff --git a/.svn/pristine/b5/b51c8b45aa5d046f4595a5829560b2950584516d.svn-base b/.svn/pristine/b5/b51c8b45aa5d046f4595a5829560b2950584516d.svn-base new file mode 100644 index 0000000..62f288c --- /dev/null +++ b/.svn/pristine/b5/b51c8b45aa5d046f4595a5829560b2950584516d.svn-base @@ -0,0 +1,152 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__6EE9F39", + "description" : "", + "versionName" : "1.0.6", + "versionCode" : 106, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {}, + "Push" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 30, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "push" : { + "unipush" : { + "offline" : false + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/b5/b5becfb9078f2c13b69cfdf2b5bbf8cbcd18b516.svn-base b/.svn/pristine/b5/b5becfb9078f2c13b69cfdf2b5bbf8cbcd18b516.svn-base new file mode 100644 index 0000000..f612740 --- /dev/null +++ b/.svn/pristine/b5/b5becfb9078f2c13b69cfdf2b5bbf8cbcd18b516.svn-base @@ -0,0 +1,595 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/b7/b7438143fc872e7d99f3ea5a7aaa68d350c6be81.svn-base b/.svn/pristine/b7/b7438143fc872e7d99f3ea5a7aaa68d350c6be81.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..46c91f7186beae9babbb6116851b891eb0224b44 GIT binary patch literal 33752 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 literal 0 HcmV?d00001 diff --git a/.svn/pristine/b8/b8e60227bfb4d4d120b4e3a5cda61cb0e600095a.svn-base b/.svn/pristine/b8/b8e60227bfb4d4d120b4e3a5cda61cb0e600095a.svn-base new file mode 100644 index 0000000..210ce63 --- /dev/null +++ b/.svn/pristine/b8/b8e60227bfb4d4d120b4e3a5cda61cb0e600095a.svn-base @@ -0,0 +1,420 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/b9/b92021c3ac13a2cb1d8aba5f50c093d0c9dd4656.svn-base b/.svn/pristine/b9/b92021c3ac13a2cb1d8aba5f50c093d0c9dd4656.svn-base new file mode 100644 index 0000000..ad2b486 --- /dev/null +++ b/.svn/pristine/b9/b92021c3ac13a2cb1d8aba5f50c093d0c9dd4656.svn-base @@ -0,0 +1,784 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/b9/b9ef1f4872a816945da825f33b6421449f04c6a5.svn-base b/.svn/pristine/b9/b9ef1f4872a816945da825f33b6421449f04c6a5.svn-base new file mode 100644 index 0000000..0206368 --- /dev/null +++ b/.svn/pristine/b9/b9ef1f4872a816945da825f33b6421449f04c6a5.svn-base @@ -0,0 +1,124 @@ + + \ No newline at end of file diff --git a/.svn/pristine/ba/ba0fb21793a408f6712daed89aff93fceb307dd4.svn-base b/.svn/pristine/ba/ba0fb21793a408f6712daed89aff93fceb307dd4.svn-base new file mode 100644 index 0000000..37bf161 --- /dev/null +++ b/.svn/pristine/ba/ba0fb21793a408f6712daed89aff93fceb307dd4.svn-base @@ -0,0 +1,131 @@ + + \ No newline at end of file diff --git a/.svn/pristine/ba/ba82e2fc1041e8dfcfdf1772925eafdf6083687b.svn-base b/.svn/pristine/ba/ba82e2fc1041e8dfcfdf1772925eafdf6083687b.svn-base new file mode 100644 index 0000000..5bd3d6a --- /dev/null +++ b/.svn/pristine/ba/ba82e2fc1041e8dfcfdf1772925eafdf6083687b.svn-base @@ -0,0 +1,333 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/bc/bc46c9efa43fd896829fe01826203e4b189f2f97.svn-base b/.svn/pristine/bc/bc46c9efa43fd896829fe01826203e4b189f2f97.svn-base new file mode 100644 index 0000000..d974eb6 --- /dev/null +++ b/.svn/pristine/bc/bc46c9efa43fd896829fe01826203e4b189f2f97.svn-base @@ -0,0 +1,54 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/bc/bc6f7c13f8e7bd504a1031649c77fa5185733cf6.svn-base b/.svn/pristine/bc/bc6f7c13f8e7bd504a1031649c77fa5185733cf6.svn-base new file mode 100644 index 0000000..09c9b35 --- /dev/null +++ b/.svn/pristine/bc/bc6f7c13f8e7bd504a1031649c77fa5185733cf6.svn-base @@ -0,0 +1,210 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/bc/bcf79dc2e5acb8ad4e2ee80a5ff34b87b6b1eeef.svn-base b/.svn/pristine/bc/bcf79dc2e5acb8ad4e2ee80a5ff34b87b6b1eeef.svn-base new file mode 100644 index 0000000..1f31dcb --- /dev/null +++ b/.svn/pristine/bc/bcf79dc2e5acb8ad4e2ee80a5ff34b87b6b1eeef.svn-base @@ -0,0 +1,714 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/bd/bd09f237ecef7aa6a1c51650d6019e06743675d7.svn-base b/.svn/pristine/bd/bd09f237ecef7aa6a1c51650d6019e06743675d7.svn-base new file mode 100644 index 0000000..c0b248d --- /dev/null +++ b/.svn/pristine/bd/bd09f237ecef7aa6a1c51650d6019e06743675d7.svn-base @@ -0,0 +1,10 @@ +export class BaseConfig { + protected static servesUrl: string = "http://192.168.0.142:5085";//线下 + protected static imgUrl: string = "http://192.168.0.142:5085"; + // protected static servesUrl: string = "https://cnapi.twbar.cn"; + // protected static imgUrl: string = "https://cnapi.twbar.cn"; + protected static mediaUrl: string = "http://byc1.xypays.cn/"; + protected static uploadUrl: string = "/TencentCos/GetUpLoadInfo"; + // protected static payuploadUrl: string = "http://192.168.0.142:5085"; + protected static payuploadUrl: string = "https://cnapi.twbar.cn"; +} \ No newline at end of file diff --git a/.svn/pristine/bd/bdcb1af15aca8489d8fa7e63482d6fbfa5102627.svn-base b/.svn/pristine/bd/bdcb1af15aca8489d8fa7e63482d6fbfa5102627.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..25d6672da8b75b6f3bcea9d225c21f4c65d18c85 GIT binary patch literal 28570 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 literal 0 HcmV?d00001 diff --git a/.svn/pristine/be/be83377b1d5e09d0ad685d203ae243422b1e0a9c.svn-base b/.svn/pristine/be/be83377b1d5e09d0ad685d203ae243422b1e0a9c.svn-base new file mode 100644 index 0000000..63052a5 --- /dev/null +++ b/.svn/pristine/be/be83377b1d5e09d0ad685d203ae243422b1e0a9c.svn-base @@ -0,0 +1,392 @@ +import { HttpRequest, StoreAssist, UploadAssist, ResultData } from '@/common/Common'; +import { BaseConfig } from './BaseConfig'; +export class Service extends BaseConfig { + + + // 获取是否后台 + static getIsHede () { + let isHede = this.GetStorageCache('isHede') + if (isHede == null || isHede == '') { + return false; + } else { + return isHede; + } + } + + + //获取API地址 + static ApiUrl(path : string) { + return `${this.servesUrl}${path}`; + } + + //获取图片地址 + static GetpayImg(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.payuploadUrl}${path}`; + } + } + + //获取图标地址 + static GetIconImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + + //获取图片地址 + static GetMateUrlByImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + //获取音视频地址 + static GetMateUrlByMedia(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.mediaUrl}${path}`; + } + } + //获取登录账号token + static GetUserToken() { + return Service.GetStorageCache('token'); + } + // 获取登录状态 + static GetUserIsLogin() { + var token = this.GetUserToken(); + if (token == null || token == '') { + return false; + } else { + return true; + } + } + //设置登录账户Token + static SetUserToken(token : string) { + this.SetStorageCache('token', token); + } + //清理登录账户Token + static OffUserToken() { + Service.DelStorageCache('token'); + uni.$emit('ImComOff', 'user'); + this.ClearUserStateData(); + } + //获取登录账号状态信息 + static GetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //设置当前登录账号状态信息 + static SetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //清理当前登录账号状态信息 + static ClearUserStateData() { + Service.DelStorageCache('StateDomain'); + } + + + //获取当前客户端ID + static GetUserClientId() { + return this.GetStorageCache('ClientId'); + } + //保存当前客户端ID + static SetUserClientId(clientId: string) { + this.SetStorageCache('ClientId', clientId); + } + + + //获取缓存 + static GetStorageCache(key : string) { + return StoreAssist.Get(key); + } + //删除缓存 + static DelStorageCache(key : string) { + StoreAssist.Delete(key); + } + //设置缓存 + static SetStorageCache(key : string, data : any) { + StoreAssist.Set(key, data); + } + + /*****以下是基础方法调用与拦截器*****/ + + static Request(url : string, method : 'GET' | 'POST' | 'PUT' | undefined, data : object | any) { + const token = Service.GetUserToken(); + + const _url = Service.ApiUrl(url); + var result = HttpRequest.RequestWithToken(_url, method, token, data).then((retResult : any) => { + if (retResult.statusCode == '200') { + var obj = retResult.data; + if (obj.code == 401) { + //过期 + this.OffUserToken(); + // this.Msg('登录过期,请重新登录') + this.GoPageDelse('/pages/my/login') + return Promise.reject(); + } else if (obj.code == 40101) { + //失效 + this.OffUserToken(); + this.GoPageDelse('/pages/mine/login/login'); + return Promise.reject(); + } else if (obj.code == 1004) { + //资源不存在 + this.GoPageDelse('/pages/AppSet/404/404'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 40188) { + //无权限 + + this.GoPageDelse('/pages/AppSet/40188/40188'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 1008) { + //业务提示 + return new ResultData(obj.code, obj.msg, obj.data); + } else { + return new ResultData(obj.code, obj.msg, obj.data); + } + } else { + return new ResultData(-1, '', ''); + } + }); + return result; + } + /*****以下是腾讯云oss上传*****/ + static UpLoadMedia(code : string, fileName : string, desire : string, path : string) { + var result = this.Request(this.uploadUrl, 'GET', { code, fileName, desire }).then((retResult) => { + if (retResult.code == 0) { + var upOk = UploadAssist.Upload(retResult.data.url, path, retResult.data.cosData).then((upRet : any) => { + if (upRet.statusCode == 200) { + const retData : any = { code: retResult.data.code, file: retResult.data.file, cache: retResult.data.cache }; + return new ResultData(0, '上传成功!', retData); + } else { + this.Msg('上传失败!'); + return new ResultData(-1, '', ''); + } + }); + return upOk; + } else { + this.Msg('上传失败!'); + return new ResultData(-1, retResult.msg,retResult.data); + } + }); + return result; + } + + /***********消息操作**************/ + static Msg(message : any, icon ?: any) : void { + if (icon != null) { + uni.showToast({ + title: message, + icon: icon + }); + } else { + uni.showToast({ + title: message, + icon: 'none' + }); + } + } + + static Alert(msg : string, cb ?: any) { + uni.showModal({ + title: '提示', + content: msg, + showCancel: false, + cancelText: '取消', + confirmText: '确定', + success: res => { + if (res.confirm) { + cb && cb(); + } + } + }) + } + + static LoadIng(text : any) : void { + uni.showLoading({ + title: text, + icon: 'none' + }); + } + + static LoadClose() : void { + uni.hideLoading(); + } + + /**********跳转操作*********/ + + + static GoPageTab(path : string) : void { + uni.switchTab({ + url: path + }); + } + + /**********跳转操作*********/ + static GoPage(path : string) : void { + uni.navigateTo({ + url: path, //跳转的页面 + success: function (res) { + // 通过eventChannel向被打开页面传送数据 + } + }); + } + /**********跳转并删除当前页面操作*********/ + static GoPageDelse(path : string) : void { + uni.redirectTo({ + url: path //跳转的页面 + }); + } + + /**********返回上一页*********/ + static GoPageBack() : void { + uni.navigateBack({ delta: 1 }); + } + + /*****获取图片base64*****/ + static UpLoadMediaBase64(path : string) { + return new Promise(function (resolve, reject) { + uni.uploadFile({ + url: 'http://cloud.pccsh.com/DefUp/UploadFileImgBase64', //仅为示例,非真实的接口地址 + filePath: path, + name: 'file', + success: (uploadFileRes) => { + resolve(uploadFileRes); + }, + fail: (err) => { + reject(err); + } + }); + }); + } + /*****获取图片位置信息*****/ + //获取时间戳 + static GetTimeSpan(milliSecond : number) { + return Date.now() + milliSecond; + } + + // 时间戳处理 + static formatDate(time : any, type : number) : string { + const date = new Date(time); + const year = date.getFullYear(); + const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以加1,并用0填充 + const day = String(date.getDate()).padStart(2, '0'); // 用0填充 + const hours = String(date.getHours()).padStart(2, '0'); // 用0填充 + const minutes = String(date.getMinutes()).padStart(2, '0'); // 用0填充 + const seconds = String(date.getSeconds()).padStart(2, '0'); // 用0填充 + if (type == 0) { + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } + else if (type == 1) { + return `${year}-${month}-${day} ${hours}:${minutes}`; + } else if (type == 2) { + return `${year}-${month}-${day}`; + } else if (type == 3) { + return `${hours}:${minutes}`; + } else if (type == 4) { + return `${year}${month}${day}`; + } + + else { + return `${hours}:${minutes}`; + } + } + + /*****节流*****/ + static throttle(fn: () => void, time: number) { + let canRun: boolean = true; + return function () { + if (!canRun) return; + canRun = false; + setTimeout(() => { + fn(); //可以不执行 + canRun = true; + }, time); + }; + } + /*****防抖*****/ + static debounce void>(fn: T, time: number): (...args: Parameters) => void { + let timerId: NodeJS.Timeout | null = null; + + return (...args: Parameters) => { + if (timerId) { + clearTimeout(timerId); + } + + timerId = setTimeout(() => { + fn(...args); // 执行传入的函数 + timerId = null; // 清除定时器ID + }, time); + }; + } + + + + + + // 普通图片上传 + static uploadH5(path, dic, callback) { + console.log(this.payuploadUrl,'xxx') + uni.uploadFile({ + url: this.payuploadUrl+'/Upload/Upload', + method: "POST", + header: { + 'Authorization': 'Bearer ' + Service.GetUserToken(), + }, + formData: { + "path": dic, + }, + filePath: path, + name: 'file', + success: (data) => { + let info = data.data + callback(info) + } + }) + } + + /** + * 创建并显示一条本地推送通知 (手机顶部栏消息) + * + * @param {string} title - 通知的标题 + * @param {string} content - 通知的主要内容 + * @param {Record} [payload] - (可选) 附带的业务数据。用户点击通知时,可以在 App 启动时获取到。 + */ + + + public static createLocalPush( + title: string, + content: string, + payload?: string, + ): void { + + // #ifdef APP-PLUS + console.log('准备创建本地推送:', { title, content, payload }); + + // 消息的配置对象 + const options = { + cover: false, // 是否覆盖上一次的通知。设为 false 则不覆盖,多条通知会并列显示。 + title: title, + vibrate:['100', '200', '300'] + }; + + // 调用 plus.push.createMessage API + plus.push.createMessage(content, payload, options); + + // #endif + + // #ifndef APP-PLUS + console.warn('本地推送功能仅在 App 端支持。'); + // #endif + } + + +} \ No newline at end of file diff --git a/.svn/pristine/be/bef11f34b29b2ef7aac423568db85b9483a7832b.svn-base b/.svn/pristine/be/bef11f34b29b2ef7aac423568db85b9483a7832b.svn-base new file mode 100644 index 0000000..a610c4e --- /dev/null +++ b/.svn/pristine/be/bef11f34b29b2ef7aac423568db85b9483a7832b.svn-base @@ -0,0 +1,146 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__06C2D6A", + "description" : "", + "versionName" : "1.0.1", + "versionCode" : 101, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 25, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/bf/bfe7c97ae0202822e765f1b2f49d83d42ceb26c3.svn-base b/.svn/pristine/bf/bfe7c97ae0202822e765f1b2f49d83d42ceb26c3.svn-base new file mode 100644 index 0000000..ef0ec06 --- /dev/null +++ b/.svn/pristine/bf/bfe7c97ae0202822e765f1b2f49d83d42ceb26c3.svn-base @@ -0,0 +1,595 @@ + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/c0/c060359fddfada5462ea8b9721080a173ead7b26.svn-base b/.svn/pristine/c0/c060359fddfada5462ea8b9721080a173ead7b26.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..12762e0445a69c92ebdd2ca6fa2593fb54b5400d GIT binary patch literal 643 zcmV-}0(||6P)e*mIMxyHZY(gu1?`Pkw}Cjs^%v-a zmltqUWvr5LHQhEKNkTv(s=a^$55t^2?cvGl+rEH9il0Eu?eBX6^nTF<&%g%2GK^Io zV%6;1l|6x7>w$p#lknW%L3VN+^S*K(&s(M+%C`lcwogx{C86SLGu$I`eOq9Y+h zIgyG_mN2%}&?d^?BPzgU>$r}?%feho*Pm+JvbsF7v4wrXucJ-K#(BS$^Afu-_{Vv7v>@Wa9 zI~Ljp#YC#UuMh+l8W@&MqUAcbQhuvl{<2M*sT7I{KgTz`xdo0FK!>6JA8ZF#pcVAq zwShPQRC*}ZwSWSigaMD|C6_*FiBw$T6oN&HAyuxX)gO)X_pEyb00960&`Hoi00006 dNkl { + listener.call(this, e); + }); + } + off(type, listener) { + const __events = this.__events; + const events = __events[type]; + if (!events || !events.length) { + return; + } + if (!listener) { + delete __events[type]; + return; + } + for (let i = 0, len = events.length; i < len; i++) { + if (events[i] === listener) { + events.splice(i, 1); + i--; + } + } + } +} +class Image { + constructor() { + this.currentSrc = null + this.naturalHeight = 0 + this.naturalWidth = 0 + this.width = 0 + this.height = 0 + this.tagName = 'IMG' + } + set src(src) { + this.currentSrc = src + uni.getImageInfo({ + src, + success: (res) => { + this.naturalWidth = this.width = res.width + this.naturalHeight = this.height = res.height + this.onload() + }, + fail: () => { + this.onerror() + } + }) + } + get src() { + return this.currentSrc + } +} +class OffscreenCanvas { + constructor(ctx, com, canvasId) { + this.tagName = 'canvas' + this.com = com + this.canvasId = canvasId + this.ctx = ctx + } + set width(w) { + this.com.offscreenWidth = w + } + set height(h) { + this.com.offscreenHeight = h + } + get width() { + return this.com.offscreenWidth || 0 + } + get height() { + return this.com.offscreenHeight || 0 + } + getContext(type) { + return this.ctx + } + getImageData() { + return new Promise((resolve, reject) => { + this.com.$nextTick(() => { + uni.canvasGetImageData({ + x:0, + y:0, + width: this.com.offscreenWidth, + height: this.com.offscreenHeight, + canvasId: this.canvasId, + success: (res) => { + resolve(res) + }, + fail: (err) => { + reject(err) + }, + }, this.com) + }) + }) + } +} +export class Canvas { + constructor(ctx, com, isNew, canvasNode={}) { + cacheChart[com.canvasId] = {ctx} + this.canvasId = com.canvasId; + this.chart = null; + this.isNew = isNew + this.tagName = 'canvas' + this.canvasNode = canvasNode; + this.com = com; + if (!isNew) {this._initStyle(ctx)} + this._initEvent(); + this._ee = new EventEmit() + } + getContext(type) { + if (type === '2d') { + return this.ctx; + } + } + setChart(chart) { + this.chart = chart; + } + createOffscreenCanvas(param){ + if(!this.children) { + this.com.isOffscreenCanvas = true + this.com.offscreenWidth = param.width||300 + this.com.offscreenHeight = param.height||300 + const com = this.com + const canvasId = this.com.offscreenCanvasId + const context = uni.createCanvasContext(canvasId, this.com) + this._initStyle(context) + this.children = new OffscreenCanvas(context, com, canvasId) + } + return this.children + } + appendChild(child) { + console.log('child', child) + } + dispatchEvent(type, e) { + if(typeof type == 'object') { + this._ee.emit(type.type, type); + } else { + this._ee.emit(type, e); + } + return true + } + attachEvent() { + } + detachEvent() { + } + addEventListener(type, listener) { + this._ee.on(type, listener) + } + removeEventListener(type, listener) { + this._ee.off(type, listener) + } + _initCanvas(zrender, ctx) { + zrender.util.getContext = function() { + return ctx; + }; + zrender.util.$override('measureText', function(text, font) { + ctx.font = font || '12px sans-serif'; + return ctx.measureText(text, font); + }); + } + _initStyle(ctx, child) { + const styles = [ + 'fillStyle', + 'strokeStyle', + 'fontSize', + 'globalAlpha', + 'opacity', + 'textAlign', + 'textBaseline', + 'shadow', + 'lineWidth', + 'lineCap', + 'lineJoin', + 'lineDash', + 'miterLimit', + 'font' + ]; + const colorReg = /#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])\b/g; + styles.forEach(style => { + Object.defineProperty(ctx, style, { + set: value => { + if (style === 'font' && fontSizeReg.test(value)) { + const match = fontSizeReg.exec(value); + ctx.setFontSize(match[1]); + return; + } + if (style === 'opacity') { + ctx.setGlobalAlpha(value) + return; + } + if (style !== 'fillStyle' && style !== 'strokeStyle' || value !== 'none' && value !== null) { + // #ifdef H5 || APP-PLUS || MP-BAIDU + if(typeof value == 'object') { + if (value.hasOwnProperty('colorStop') || value.hasOwnProperty('colors')) { + ctx['set' + style.charAt(0).toUpperCase() + style.slice(1)](value); + } + return + } + // #endif + // #ifdef MP-TOUTIAO + if(colorReg.test(value)) { + value = value.replace(colorReg, '#$1$1$2$2$3$3') + } + // #endif + ctx['set' + style.charAt(0).toUpperCase() + style.slice(1)](value); + } + } + }); + }); + if(!this.isNew && !child) { + ctx.uniDrawImage = ctx.drawImage + ctx.drawImage = (...a) => { + a[0] = a[0].src + ctx.uniDrawImage(...a) + } + } + if(!ctx.createRadialGradient) { + ctx.createRadialGradient = function() { + return ctx.createCircularGradient(...[...arguments].slice(-3)) + }; + } + // 字节不支持 + if (!ctx.strokeText) { + ctx.strokeText = (...a) => { + ctx.fillText(...a) + } + } + // 钉钉不支持 + if (!ctx.measureText) { + const strLen = (str) => { + let len = 0; + for (let i = 0; i < str.length; i++) { + if (str.charCodeAt(i) > 0 && str.charCodeAt(i) < 128) { + len++; + } else { + len += 2; + } + } + return len; + } + ctx.measureText = (text, font) => { + let fontSize = 12; + if (font) { + fontSize = parseInt(font.match(/([\d\.]+)px/)[1]) + } + fontSize /= 2; + return { + width: strLen(text) * fontSize + }; + } + } + } + + _initEvent(e) { + this.event = {}; + const eventNames = [{ + wxName: 'touchStart', + ecName: 'mousedown' + }, { + wxName: 'touchMove', + ecName: 'mousemove' + }, { + wxName: 'touchEnd', + ecName: 'mouseup' + }, { + wxName: 'touchEnd', + ecName: 'click' + }]; + + eventNames.forEach(name => { + this.event[name.wxName] = e => { + const touch = e.touches[0]; + this.chart.getZr().handler.dispatch(name.ecName, { + zrX: name.wxName === 'tap' ? touch.clientX : touch.x, + zrY: name.wxName === 'tap' ? touch.clientY : touch.y + }); + }; + }); + } + + set width(w) { + this.canvasNode.width = w + } + set height(h) { + this.canvasNode.height = h + } + + get width() { + return this.canvasNode.width || 0 + } + get height() { + return this.canvasNode.height || 0 + } + get ctx() { + return cacheChart[this.canvasId]['ctx'] || null + } + set chart(chart) { + cacheChart[this.canvasId]['chart'] = chart + } + get chart() { + return cacheChart[this.canvasId]['chart'] || null + } +} + +export function dispatch(name, {x,y, wheelDelta}) { + this.dispatch(name, { + zrX: x, + zrY: y, + zrDelta: wheelDelta, + preventDefault: () => {}, + stopPropagation: () =>{} + }); +} +export function setCanvasCreator(echarts, {canvas, node}) { + // echarts.setCanvasCreator(() => canvas); + echarts.registerPreprocessor(option => { + if (option && option.series) { + if (option.series.length > 0) { + option.series.forEach(series => { + series.progressive = 0; + }); + } else if (typeof option.series === 'object') { + option.series.progressive = 0; + } + } + }); + function loadImage(src, onload, onerror) { + let img = null + if(node && node.createImage) { + img = node.createImage() + img.onload = onload.bind(img); + img.onerror = onerror.bind(img); + img.src = src; + return img + } else { + img = new Image() + img.onload = onload.bind(img) + img.onerror = onerror.bind(img); + img.src = src + return img + } + } + if(echarts.setPlatformAPI) { + echarts.setPlatformAPI({ + loadImage: canvas.setChart ? loadImage : null, + createCanvas(){ + return canvas + } + }) + } +} \ No newline at end of file diff --git a/.svn/pristine/c3/c3554f7eb28bf0d72a7df9682d2c7b16d7f2ec2c.svn-base b/.svn/pristine/c3/c3554f7eb28bf0d72a7df9682d2c7b16d7f2ec2c.svn-base new file mode 100644 index 0000000..d61cc05 --- /dev/null +++ b/.svn/pristine/c3/c3554f7eb28bf0d72a7df9682d2c7b16d7f2ec2c.svn-base @@ -0,0 +1,436 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/c4/c434f6da7640433a6b296869e2909925d7bac269.svn-base b/.svn/pristine/c4/c434f6da7640433a6b296869e2909925d7bac269.svn-base new file mode 100644 index 0000000..f60bf71 --- /dev/null +++ b/.svn/pristine/c4/c434f6da7640433a6b296869e2909925d7bac269.svn-base @@ -0,0 +1,285 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/c4/c4c91b503f040a058a8e4e46f9e17e334f119cc3.svn-base b/.svn/pristine/c4/c4c91b503f040a058a8e4e46f9e17e334f119cc3.svn-base new file mode 100644 index 0000000..7d68ac3 --- /dev/null +++ b/.svn/pristine/c4/c4c91b503f040a058a8e4e46f9e17e334f119cc3.svn-base @@ -0,0 +1 @@ +declare module "uview-plus" \ No newline at end of file diff --git a/.svn/pristine/c5/c558a1eb66ea7fcb99908fb95a7c385f447930f3.svn-base b/.svn/pristine/c5/c558a1eb66ea7fcb99908fb95a7c385f447930f3.svn-base new file mode 100644 index 0000000..b0c6ae3 --- /dev/null +++ b/.svn/pristine/c5/c558a1eb66ea7fcb99908fb95a7c385f447930f3.svn-base @@ -0,0 +1,213 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/c6/c659e0a9cd9301f3f99670a66ef37edc32ce5e2f.svn-base b/.svn/pristine/c6/c659e0a9cd9301f3f99670a66ef37edc32ce5e2f.svn-base new file mode 100644 index 0000000..43b4874 --- /dev/null +++ b/.svn/pristine/c6/c659e0a9cd9301f3f99670a66ef37edc32ce5e2f.svn-base @@ -0,0 +1,40 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "white", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#F84F28", + "backgroundColor": "#F8F8F8" + }, + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [ { + "pagePath": "pages/index/index", + "iconPath": "static/tab/01.png", + "selectedIconPath": "static/tab/02.png", + "text": "主页" + }] + } +} \ No newline at end of file diff --git a/.svn/pristine/c6/c6f08e1d45fdaa316eec73cefdd385dc99fc2917.svn-base b/.svn/pristine/c6/c6f08e1d45fdaa316eec73cefdd385dc99fc2917.svn-base new file mode 100644 index 0000000..20faead --- /dev/null +++ b/.svn/pristine/c6/c6f08e1d45fdaa316eec73cefdd385dc99fc2917.svn-base @@ -0,0 +1,281 @@ + + + + + diff --git a/.svn/pristine/c7/c77baecebb7bbd9ba6c14e57f81bcbf64d9a0104.svn-base b/.svn/pristine/c7/c77baecebb7bbd9ba6c14e57f81bcbf64d9a0104.svn-base new file mode 100644 index 0000000..f92de7f --- /dev/null +++ b/.svn/pristine/c7/c77baecebb7bbd9ba6c14e57f81bcbf64d9a0104.svn-base @@ -0,0 +1,59 @@ +import { Service } from "@/Service/Service" +export class EventHandler { + //处理事件 + static Events(data : any) { + var result = JSON.parse(data.data); + if (result.code == 'msg') { + this.ChatEnent(result); + } else if (result.code == 'order') { + uni.$emit('newOrder', data); + this.NewOrder() + } + } + + static NewOrder() { + var innerAudioContext = uni.createInnerAudioContext(); + innerAudioContext.autoplay = true; + innerAudioContext.src = '/static/order.mp3'; + + innerAudioContext.onEnded(() => { + console.log('播放结束'); + }) + } + + + static ChatEnent(data : any) { + console.log(data, 'xxx') + var eventName = `chat_${data.chanId}`; + uni.$emit(eventName, data); + } + + static ChatUserEnent(data : any) { + var eventUserName = `chatUser_${data.sendId}`; + uni.$emit('UpdatePrivateMsg', data); + uni.$emit(eventUserName, data); + this.plusPush(); + } + + static plusPush() { + + Service.createLocalPush('骑手订单','您有一个新订单','') + } + + static SystemEnent(data : any) { + let obj = JSON.parse(data.data); + if (obj.code == 'Like' || obj.code == 'Aite' || obj.code == 'Comment' || obj.code == 'Notice') { + uni.$emit('MegEvent', obj); + } else if (obj.code == 'Off') { + uni.$emit('ImComOff', 'user'); + } else if (obj.code == 'UpdateUserInfo') { + uni.$emit('UpdateUserInfo'); + } else if (obj.code == 'Friend') { + uni.$emit('Friend'); + } + } + + static ConnectBus() { + uni.$emit('UpdateChat'); + } +} \ No newline at end of file diff --git a/.svn/pristine/c7/c78ffaae8689d7304fdc94b963f2535036ccfb63.svn-base b/.svn/pristine/c7/c78ffaae8689d7304fdc94b963f2535036ccfb63.svn-base new file mode 100644 index 0000000..e89055c --- /dev/null +++ b/.svn/pristine/c7/c78ffaae8689d7304fdc94b963f2535036ccfb63.svn-base @@ -0,0 +1,219 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/c8/c878024ca8060154570f507bd4d8cd06cbd18074.svn-base b/.svn/pristine/c8/c878024ca8060154570f507bd4d8cd06cbd18074.svn-base new file mode 100644 index 0000000..c8e4634 --- /dev/null +++ b/.svn/pristine/c8/c878024ca8060154570f507bd4d8cd06cbd18074.svn-base @@ -0,0 +1,152 @@ +{ + "name" : "确菜农骑手端", + "appid" : "__UNI__6EE9F39", + "description" : "", + "versionName" : "1.1.6", + "versionCode" : 116, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {}, + "Push" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 30, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "push" : { + "unipush" : { + "offline" : false + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/ca/cafbbfe52a74261b72c3b836fa9db6e58e517d81.svn-base b/.svn/pristine/ca/cafbbfe52a74261b72c3b836fa9db6e58e517d81.svn-base new file mode 100644 index 0000000..72971e4 --- /dev/null +++ b/.svn/pristine/ca/cafbbfe52a74261b72c3b836fa9db6e58e517d81.svn-base @@ -0,0 +1,218 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/cb/cbab60ea471e509b7f549cae0dbd267a44b1fcb9.svn-base b/.svn/pristine/cb/cbab60ea471e509b7f549cae0dbd267a44b1fcb9.svn-base new file mode 100644 index 0000000..0cd4477 --- /dev/null +++ b/.svn/pristine/cb/cbab60ea471e509b7f549cae0dbd267a44b1fcb9.svn-base @@ -0,0 +1,154 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/cc/cc5b9b49742f9a90a67d53010ce60ba47c9a33e7.svn-base b/.svn/pristine/cc/cc5b9b49742f9a90a67d53010ce60ba47c9a33e7.svn-base new file mode 100644 index 0000000..becac19 --- /dev/null +++ b/.svn/pristine/cc/cc5b9b49742f9a90a67d53010ce60ba47c9a33e7.svn-base @@ -0,0 +1,855 @@ +/** + * 图片编辑器-手势监听 + * 1. 支持编译到app-vue(uni-app 2.5.5及以上版本)、H5上 + */ +/** 图片偏移量 */ +var offset = { x: 0, y: 0 }; +/** 图片缩放比例 */ +var scale = 1; +/** 图片最小缩放比例 */ +var minScale = 1; +/** 图片旋转角度 */ +var rotate = 0; +/** 触摸点 */ +var touches = []; +/** 图片布局信息 */ +var img = {}; +/** 系统信息 */ +var sys = {}; +/** 裁剪区域布局信息 */ +var area = {}; +/** 触摸行为类型 */ +var touchType = ''; +/** 操作角的位置 */ +var activeAngle = 0; +/** 裁剪区域布局信息偏移量 */ +var areaOffset = { left: 0, right: 0, top: 0, bottom: 0 }; +/** 元素ID */ +var elIds = { + 'imageStyles': 'crop-image', + 'maskStylesList': 'crop-mask-block', + 'borderStyles': 'crop-border', + 'circleBoxStyles': 'crop-circle-box', + 'circleStyles': 'crop-circle', + 'gridStylesList': 'crop-grid', + 'angleStylesList': 'crop-angle', +} +/** 记录上次初始化时间戳,排除APP重复更新 */ +var timestamp = 0; +/** vue3 renderjs 条件编译无效,以此方式区别 APP 和 H5 */ +// #ifdef H5 +var platform = 'H5'; +// #endif +// #ifdef APP +var platform = 'APP'; +// #endif +/** 容错值 */ +var fault = 0.000001; +/** + * 获取a、b两数中的最小正数 + * @param a + * @param b + */ +function minimum(a, b) { + if (a > 0 && b < 0) return a; + if (a < 0 && b > 0) return b; + if (a > 0 && b > 0) return Math.min(a, b); + return 0; +} +/** + * 在容错访问内获取n近似值 + * @param n + */ +function num(n) { + var m = parseFloat((n).toFixed(6)); + return m === fault || m === -fault ? 0 : m; +} +/** + * 比较a值在容错值范围内是否等于b值 + * @param a + * @param b + */ +function equalsByFault(a, b) { + return Math.abs(a - b) <= fault; +} +/** + * 比较a值在容错值范围内是否小于b值 + * @param a + * @param b + */ +function lessThanByFault(a, b) { + var c = a - b; + return c < 0 ? c < -fault : c < fault; +} +/** + * 验证并获取有效最大值 + * @param v + * @param max + * @param isInclude + * @param x + * @param y + * @param rate + * @returns + */ +function validMax(v, max, isInclude, x, y, rate) { + if(typeof max === 'number') { + if(isInclude && equalsByFault(max, y)) { // 宽高不等时,x轴用y轴值要做等比例转换 + var n = num(max * rate); + if (n <= x) return n; // 转化后值在x轴最大值范围内 + return x; // 转化后值超出x轴最大值范围则用最大值 + } + return max; + } + return v; +} +/** + * 样式对象转字符串 + * @param {Object} style 样式对象 + */ +function styleToString(style) { + if(typeof style === 'string') return style; + var str = ''; + for (let k in style) { + str += k + ':' + style[k] + ';'; + } + return str; +} +/** + * + * @param {Object} instance 页面实例对象 + * @param {Object} key 要修改样式的key + * @param {Object|Array} style 样式 + */ +function setStyle(instance, key, style) { + // console.log('setStyle', instance, key, JSON.stringify(style)) + // #ifdef APP-PLUS + if(platform === 'APP') { + if(Object.prototype.toString.call(style) === '[object Array]') { + for (var i = 0, len = style.length; i < len; i++) { + var el = window.document.getElementById(elIds[key] + '-' + (i + 1)); + el && (el.style = styleToString(style[i])); + } + } else { + var el = window.document.getElementById(elIds[key]); + el && (el.style = styleToString(style)); + } + } + // #endif + // #ifdef H5 + if(platform === 'H5') instance[key] = style; + // #endif +} +/** + * 触发页面实例指定方法 + * @param {Object} instance 页面实例对象 + * @param {Object} name 方法名称 + * @param {Object} obj 传递参数 + */ +function callMethod(instance, name, obj) { + // #ifdef APP-PLUS + if(platform === 'APP') instance.callMethod(name, obj); + // #endif + // #ifdef H5 + if(platform === 'H5') instance[name](obj); + // #endif +} +/** + * 计算两点间距 + * @param {Object} touches 触摸点信息 + */ +function getDistanceByTouches(touches) { + // 根据勾股定理求两点间距离 + var a = touches[1].pageX - touches[0].pageX; + var b = touches[1].pageY - touches[0].pageY; + var c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2)); + // 求两点间的中点坐标 + // 1. a、b可能为负值 + // 2. 在求a、b时,如用touches[1]减touches[0],则求中点坐标也得用touches[1]减a/2、b/2 + // 3. 同理,在求a、b时,也可用touches[0]减touches[1],则求中点坐标也得用touches[0]减a/2、b/2 + var x = touches[1].pageX - a / 2; + var y = touches[1].pageY - b / 2; + return { c, x, y }; +}; + +/** + * 修正取值 + * @param {Object} a + * @param {Object} b + * @param {Object} c + * @param {Object} reverse 是否反向 + */ +function correctValue(a, b, c, reverse) { + return num(reverse ? Math.max(Math.min(a, b), c) : Math.min(Math.max(a, b), c)); +} + +/** + * 旋转90°或270°时检查边界:限制 x、y 拖动范围,禁止滑出边界 + * @param {Object} e 点坐标 + * @param {Object} xReverse x是否反向 + * @param {Object} yReverse y是否反向 + */ +function checkRotateRange(e, xReverse, yReverse) { + var o = num((img.height - img.width) / 2); // 宽高差值一半 + return { + x: correctValue(e.x, -img.height + o + area.width + area.left, area.left + o, xReverse), + y: correctValue(e.y, -img.width - o + area.height + area.top, area.top - o, yReverse) + }; +} + +/** + * 检查边界:限制 x、y 拖动范围,禁止滑出边界 + * @param {Object} e 点坐标 + */ +function checkRange(e) { + var r = rotate / 90 % 2; + if(r === 1) { // 因图片宽高可能不等,翻转 90° 或 270° 后图片宽高需反着计算,且左右和上下边界要根据差值做偏移 + if (area.width === area.height) { + return checkRotateRange(e, img.height < area.height, img.width < area.width); + } + var isInclude = img.height < area.width && img.width < area.height; // 图片是否包含在裁剪区域内 + if (img.width < area.height || img.height < area.width) { + if (area.width < area.height && img.width < img.height) { + return isInclude + ? checkRotateRange(e, area.width < area.height, area.width < area.height) + : checkRotateRange(e, false, true); + } + if (area.height < area.width && img.height < img.width) { + return isInclude + ? checkRotateRange(e, area.height < area.width, area.height < area.width) + : checkRotateRange(e, true, false); + } + } + if (img.height >= area.width && img.width >= area.height) { + return checkRotateRange(e, false, false); + } + if (isInclude) { + return area.height < area.width + ? checkRotateRange(e, true, true) + : checkRotateRange(e, area.width < area.height, area.width < area.height); + } + if (img.height < area.width && !img.width < area.height) { + return checkRotateRange(e, true, false); + } + if (!img.height < area.width && img.width < area.height) { + return checkRotateRange(e, false, true); + } + return checkRotateRange(e, img.height < area.height, img.width < area.width); + } + return { + x: correctValue(e.x, -img.width + area.width + area.left, area.left, img.width < area.width), + y: correctValue(e.y, -img.height + area.height + area.top, area.top, img.height < area.height) + } +}; +/** + * 变更图片布局信息 + * @param {Object} e 布局信息 + */ +function changeImageRect(e) { + // console.log('changeImageRect', e) + offset.x += e.x || 0; + offset.y += e.y || 0; + if(e.check && area.checkRange) { // 检查边界 + var point = checkRange(offset); + if(offset.x !== point.x || offset.y !== point.y) { + offset = point; + } + } + + // 因频繁修改 width/height 会造成大量的内存消耗,改为scale + // e.instance.imageStyles = { + // width: img.width + 'px', + // height: img.height + 'px', + // transform: 'translate(' + (offset.x + ox) + 'px, ' + (offset.y + ox) + 'px) rotate(' + rotate +'deg)' + // }; + var ox = (img.width - img.oldWidth) / 2; + var oy = (img.height - img.oldHeight) / 2; + // e.instance.imageStyles = { + // width: img.oldWidth + 'px', + // height: img.oldHeight + 'px', + // transform: 'translate(' + (offset.x + ox) + 'px, ' + (offset.y + oy) + 'px) rotate(' + rotate +'deg) scale(' + scale + ')' + // }; + setStyle(e.instance, 'imageStyles', { + width: img.oldWidth + 'px', + height: img.oldHeight + 'px', + transform: (img.gpu ? 'translateZ(0) ' : '') + 'translate(' + (offset.x + ox) + 'px, ' + (offset.y + oy) + 'px' + ') rotate(' + rotate +'deg) scale(' + scale + ')' + }); + callMethod(e.instance, 'dataChange', { + width: img.width, + height: img.height, + x: offset.x, + y: offset.y, + rotate: rotate + }); +}; +/** + * 变更裁剪区域布局信息 + * @param {Object} e 布局信息 + */ +function changeAreaRect(e) { + // console.log('changeAreaRect', e) + // 变更蒙版样式 + setStyle(e.instance, 'maskStylesList', [ + { + left: 0, + width: (area.left + areaOffset.left) + 'px', + top: 0, + bottom: 0, + 'z-index': area.zIndex + 2 + }, + { + left: (area.right + areaOffset.right) + 'px', + right: 0, + top: 0, + bottom: 0, + 'z-index': area.zIndex + 2 + }, + { + left: (area.left + areaOffset.left) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + top: 0, + height: (area.top + areaOffset.top) + 'px', + 'z-index': area.zIndex + 2 + }, + { + left: (area.left + areaOffset.left) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + top: (area.bottom + areaOffset.bottom) + 'px', + // height: (area.top - areaOffset.bottom + sys.offsetBottom) + 'px', + bottom: 0, + 'z-index': area.zIndex + 2 + } + ]); + // 变更边框样式 + if(area.showBorder) { + setStyle(e.instance, 'borderStyles', { + left: (area.left + areaOffset.left) + 'px', + top: (area.top + areaOffset.top) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + }); + } + + // 变更参考线样式 + if(area.showGrid) { + setStyle(e.instance, 'gridStylesList', [ + { + 'border-width': '1px 0 0 0', + left: (area.left + areaOffset.left) + 'px', + right: (area.right + areaOffset.right) + 'px', + top: (area.top + areaOffset.top + (area.height + areaOffset.bottom - areaOffset.top) / 3 - 0.5) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '1px 0 0 0', + left: (area.left + areaOffset.left) + 'px', + right: (area.right + areaOffset.right) + 'px', + top: (area.top + areaOffset.top + (area.height + areaOffset.bottom - areaOffset.top) * 2 / 3 - 0.5) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 1px 0 0', + top: (area.top + areaOffset.top) + 'px', + bottom: (area.bottom + areaOffset.bottom) + 'px', + left: (area.left + areaOffset.left + (area.width + areaOffset.right - areaOffset.left) / 3 - 0.5) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 1px 0 0', + top: (area.top + areaOffset.top) + 'px', + bottom: (area.bottom + areaOffset.bottom) + 'px', + left: (area.left + areaOffset.left + (area.width + areaOffset.right - areaOffset.left) * 2 / 3 - 0.5) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + } + ]); + } + + // 变更四个伸缩角样式 + if(area.showAngle) { + setStyle(e.instance, 'angleStylesList', [ + { + 'border-width': area.angleBorderWidth + 'px 0 0 ' + area.angleBorderWidth + 'px', + left: (area.left + areaOffset.left - area.angleBorderWidth) + 'px', + top: (area.top + areaOffset.top - area.angleBorderWidth) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px 0 0', + left: (area.right + areaOffset.right - area.angleSize) + 'px', + top: (area.top + areaOffset.top - area.angleBorderWidth) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 0 ' + area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px', + left: (area.left + areaOffset.left - area.angleBorderWidth) + 'px', + top: (area.bottom + areaOffset.bottom - area.angleSize) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 ' + area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px 0', + left: (area.right + areaOffset.right - area.angleSize) + 'px', + top: (area.bottom + areaOffset.bottom - area.angleSize) + 'px', + 'z-index': area.zIndex + 3 + } + ]); + } + + // 变更圆角样式 + if(area.radius > 0) { + var radius = area.radius; + if(area.width === area.height && area.radius >= area.width / 2) { // 圆形 + radius = (area.width / 2); + } else { // 圆角矩形 + if(area.width !== area.height) { // 限制圆角半径不能超过短边的一半 + radius = Math.min(area.width / 2, area.height / 2, radius); + } + } + setStyle(e.instance, 'circleBoxStyles', { + left: (area.left + areaOffset.left) + 'px', + top: (area.top + areaOffset.top) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 2 + }); + setStyle(e.instance, 'circleStyles', { + 'box-shadow': '0 0 0 ' + Math.max(area.width, area.height) + 'px rgba(51, 51, 51, 0.8)', + 'border-radius': radius + 'px' + }); + } +}; +/** + * 缩放图片 + * @param {Object} e 布局信息 + */ +function scaleImage(e) { + // console.log('scaleImage', e) + var last = scale; + scale = Math.min(Math.max(e.scale + scale, minScale), img.maxScale); + if(last !== scale) { + img.width = num(img.oldWidth * scale); + img.height = num(img.oldHeight * scale); + // 参考问题:有一个长4000px、宽4000px的四方形ABCD,A点的坐标固定在(-2000,-2000), + // 该四边形上有一个点E,坐标为(-100,-300),将该四方形复制一份并缩小到90%后, + // 新四边形的A点坐标为多少时可使新四边形的E点与原四边形的E点重合? + // 预期效果:从图中选取某点(参照物)为中心点进行缩放,缩放时无论图像怎么变化,该点位置始终固定不变 + // 计算方法:以相同起点先计算缩放前后两点间的距离,再加上原图像偏移量即可 + e.x = num((e.x - offset.x) * (1 - scale / last)); + e.y = num((e.y - offset.y) * (1 - scale / last)); + changeImageRect(e); + return true; + } + return false; +}; +/** + * 获取触摸点在哪个角 + * @param {number} x 触摸点x轴坐标 + * @param {number} y 触摸点y轴坐标 + * @return {number} 角的位置:0=无;1=左上;2=右上;3=左下;4=右下; + */ +function getToucheAngle(x, y) { + // console.log('getToucheAngle', x, y, JSON.stringify(area)) + var o = area.angleBorderWidth; // 需扩大触发范围则把 o 值加大即可 + var oy = sys.navigation ? 0 : sys.windowTop; + if(y >= area.top - o + oy && y <= area.top + area.angleSize + o + oy) { + if(x >= area.left - o && x <= area.left + area.angleSize + o) { + return 1; // 左上角 + } else if(x >= area.right - area.angleSize - o && x <= area.right + o) { + return 2; // 右上角 + } + } else if(y >= area.bottom - area.angleSize - o + oy && y <= area.bottom + o + oy) { + if(x >= area.left - o && x <= area.left + area.angleSize + o) { + return 3; // 左下角 + } else if(x >= area.right - area.angleSize - o && x <= area.right + o) { + return 4; // 右下角 + } + } + return 0; // 无触摸到角 +}; +/** + * 重置数据 + */ +function resetData() { + offset = { x: 0, y: 0 }; + scale = 1; + minScale = img.minScale; + rotate = 0; +}; +function getTouchs(touches) { + var result = []; + var len = touches ? touches.length : 0 + for (var i = 0; i < len; i++) { + result[i] = { + pageX: touches[i].pageX, + // h5无标题栏时,窗口顶部距离仍为标题栏高度,且触摸点y轴坐标还是有标题栏的值,即减去标题栏高度的值 + pageY: touches[i].pageY + sys.windowTop + }; + } + return result; +}; +var mouseEvent = false; +export default { + data() { + return { + imageStyles: {}, + maskStylesList: [{}, {}, {}, {}], + borderStyles: {}, + gridStylesList: [{}, {}, {}, {}], + angleStylesList: [{}, {}, {}, {}], + circleBoxStyles: {}, + circleStyles: {} + } + }, + created() { + // 监听 PC 端鼠标滚轮 + // #ifdef H5 + platform === 'H5' && window.addEventListener('mousewheel', async (e) => { + var touchs = getTouchs([e]) + img.src && scaleImage({ + instance: await this.getInstance(), + check: true, + // 鼠标向上滚动时,deltaY 固定 -100,鼠标向下滚动时,deltaY 固定 100 + scale: e.deltaY > 0 ? -0.05 : 0.05, + x: touchs[0].pageX, + y: touchs[0].pageY + }); + }); + // #endif + }, + // #ifdef H5 + mounted() { + platform === 'H5' && this.initH5Events(); + }, + // #endif + setPlatform(p) { + platform = p; + }, + methods: { + // #ifdef H5 + getTouchEvent(e) { + e.touches = [ + { pageX: e.pageX, pageY: e.pageY } + ]; + return e; + }, + initH5Events() { + const preview = document.getElementById('pic-preview'); + preview?.addEventListener('mousedown', (e, ev) => { + mouseEvent = true; + this.touchstart(this.getTouchEvent(e)); + }); + preview?.addEventListener('mousemove', (e) => { + if (!mouseEvent) return; + this.touchmove(this.getTouchEvent(e)); + }); + preview?.addEventListener('mouseup', (e) => { + mouseEvent = false; + this.touchend(this.getTouchEvent(e)) + }); + preview?.addEventListener('mouseleave', (e) => { + mouseEvent = false; + this.touchend(this.getTouchEvent(e)) + }); + }, + // #endif + async getInstance() { + // #ifdef APP-PLUS + if(platform === 'APP') + return this.$ownerInstance + ? Promise.resolve(this.$ownerInstance) + : new Promise((resolve) => { + setTimeout(async () => { + resolve(await this.getInstance()); + }); + }); + // #endif + // #ifdef H5 + if(platform === 'H5') + return Promise.resolve(this); + // #endif + }, + /** + * 初始化:观察数据变更 + * @param {Object} newVal 新数据 + * @param {Object} oldVal 旧数据 + * @param {Object} o 组件实例对象 + */ + initObserver: async function(newVal, oldVal, o, i) { + // console.log('initObserver', newVal, oldVal, o, i) + if(newVal && (!img.src || timestamp !== newVal.timestamp)) { + timestamp = newVal.timestamp; + img = newVal.img; + sys = newVal.sys; + area = newVal.area; + minScale = img.minScale; + resetData(); + const instance = await this.getInstance() + img.src && changeImageRect({ + instance, + x: (sys.windowWidth - img.width) / 2, + y: (sys.windowHeight + sys.windowTop - sys.offsetBottom - img.height) / 2 + }); + changeAreaRect({ + instance + }); + } + }, + /** + * 鼠标滚轮滚动 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + mousewheel: function(e, o) { + // h5平台 wheel 事件无法判断滚轮滑动方向,需使用 mousewheel + }, + /** + * 触摸开始 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchstart: function(e, o) { + if(!img.src) return; + touches = getTouchs(e.touches); + activeAngle = area.showAngle ? getToucheAngle(touches[0].pageX, touches[0].pageY) : 0; + if(touches.length === 1 && activeAngle !== 0) { + touchType = 'stretch'; // 伸缩裁剪区域 + } else { + touchType = ''; + } + // console.log('touchstart', e, activeAngle) + }, + /** + * 触摸移动 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchmove: async function(e, o) { + if(!img.src) return; + // console.log('touchmove', e, o) + e.touches = getTouchs(e.touches); + if(touchType === 'stretch') { // 触摸四个角进行拉伸 + var point = e.touches[0]; + var start = touches[0]; + var x = point.pageX - start.pageX; + var y = point.pageY - start.pageY; + if(x !== 0 || y !== 0) { + var maxX = num(area.width * (1 - area.minScale)); + var maxY = num(area.height * (1 - area.minScale)); + // console.log(x, y, maxX, maxY, offset, area) + touches[0] = point; + var r = rotate / 90 % 2; + var m = r === 1 ? num((img.height - img.width) / 2) : 0; // 宽高差值一半 + var xCompare = r === 1 ? lessThanByFault(img.height, area.width) : lessThanByFault(img.width, area.width); + var yCompare = r === 1 ? lessThanByFault(img.width, area.height) : lessThanByFault(img.height, area.height) + var isInclude = xCompare && yCompare; + var isIntersect = area.checkRange && (xCompare || yCompare); // 图片是否包含在裁剪区域内 + var isReverse = !isInclude || num((offset.x - area.left) / area.width) <= num((offset.y - area.top) / area.height) || (area.width > area.height && img.width < img.height && r === 1); + switch(activeAngle) { + case 1: // 左上角 + x = num(x + areaOffset.left); + y = num(y + areaOffset.top); + if(x >= 0 && y >= 0) { // 有效滑动 + var t = num(offset.y + m - area.top); + var l = num(offset.x - m - area.left); + // && (offset.x + img.width < area.right || offset.y + img.height < area.bottom) + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(x > y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(x > maxX) x = maxX; + y = num(x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(y > maxY) y = maxY; + x = num(y * area.width / area.height); + } + areaOffset.left = x; + areaOffset.top = y; + } + break; + case 2: // 右上角 + x = num(x + areaOffset.right); + y = num(y + areaOffset.top); + if(x <= 0 && y >= 0) { // 有效滑动 + var w = (r === 1 ? img.height : img.width); + var t = num(offset.y + m - area.top); + var l = num(area.right + m - offset.x - w); + var max = isIntersect && ((t >= 0) || (l >= 0)) + ? minimum(t, l) + : false; + if(-x > y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(-x > maxX) x = -maxX; + y = num(-x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(y > maxY) y = maxY; + x = num(-y * area.width / area.height); + } + areaOffset.right = x; + areaOffset.top = y; + } + break; + case 3: // 左下角 + x += num(x + areaOffset.left); + y += num(y + areaOffset.bottom); + if(x >= 0 && y <= 0) { // 有效滑动 + var w = (r === 1 ? img.width : img.height); + var t = num(area.bottom - m - offset.y - w); + var l = num(offset.x - m - area.left); + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(x > -y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(x > maxX) x = maxX; + y = num(-x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(-y > maxY) y = -maxY; + x = num(-y * area.width / area.height); + } + areaOffset.left = x; + areaOffset.bottom = y; + } + break; + case 4: // 右下角 + x = num(x + areaOffset.right); + y = num(y + areaOffset.bottom); + if(x <= 0 && y <= 0) { // 有效滑动 + var w = (r === 1 ? img.height : img.width); + var h = (r === 1 ? img.width : img.height); + var t = num(area.bottom - offset.y - h - m); + var l = num(area.right + m - offset.x - w); + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(-x > -y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(-x > maxX) x = -maxX; + y = num(x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(-y > maxY) y = -maxY; + x = num(y * area.width / area.height); + } + areaOffset.right = x; + areaOffset.bottom = y; + } + break; + } + // console.log(x, y, JSON.stringify(areaOffset)) + changeAreaRect({ + instance: await this.getInstance(), + }); + // this.draw(); + } + } else if (e.touches.length == 2) { // 双点触摸缩放 + var start = getDistanceByTouches(touches); + var end = getDistanceByTouches(e.touches); + scaleImage({ + instance: await this.getInstance(), + check: !area.bounce, + scale: (end.c - start.c) / 100, + x: end.x, + y: end.y + }); + touchType = 'scale'; + } else if(touchType === 'scale') {// 从双点触摸变成单点触摸 / 从缩放变成拖动 + touchType = 'move'; + } else { + changeImageRect({ + instance: await this.getInstance(), + check: !area.bounce, + x: e.touches[0].pageX - touches[0].pageX, + y: e.touches[0].pageY - touches[0].pageY + }); + touchType = 'move'; + } + touches = e.touches; + }, + /** + * 触摸结束 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchend: async function(e, o) { + if(!img.src) return; + if(touchType === 'stretch') { // 拉伸裁剪区域的四个角缩放 + // 裁剪区域宽度被缩放到多少 + var left = areaOffset.left; + var right = areaOffset.right; + var top = areaOffset.top; + var bottom = areaOffset.bottom; + var w = area.width + right - left; + var h = area.height + bottom - top; + // 图像放大倍数 + var p = scale * (area.width / w) - scale; + // 复原裁剪区域 + areaOffset = { left: 0, right: 0, top: 0, bottom: 0 }; + changeAreaRect({ + instance: await this.getInstance(), + }); + scaleImage({ + instance: await this.getInstance(), + scale: p, + x: area.left + left + (1 === activeAngle || 3 === activeAngle ? w : 0), + y: area.top + top + (1 === activeAngle || 2 === activeAngle ? h : 0) + }); + } else if (area.bounce) { // 检查边界并矫正,实现拖动到边界时有回弹效果 + changeImageRect({ + instance: await this.getInstance(), + check: true + }); + } + }, + /** + * 顺时针翻转图片90° + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + rotateImage: async function(r) { + rotate = (rotate + (r || 90)) % 360; + + if(img.minScale >= 1 && area.checkRange) { + // 因图片宽高可能不等,翻转后图片宽高需足够填满裁剪区域 + minScale = 1; + if(img.width < area.height) { + minScale = area.height / img.oldWidth; + } else if(img.height < area.width) { + minScale = area.width / img.oldHeight; + } + if(minScale !== 1) { + scaleImage({ + instance: await this.getInstance(), + scale: minScale - scale, + x: sys.windowWidth / 2, + y: (sys.windowHeight - sys.offsetBottom) / 2 + }); + } + } + + // 由于拖动画布后会导致图片位置偏移,翻转时的旋转中心点需是图片区域+偏移区域的中心点 + // 翻转x轴中心点 = (超出裁剪区域右侧的图片宽度 - 超出裁剪区域左侧的图片宽度) / 2 + // 翻转y轴中心点 = (超出裁剪区域下方的图片宽度 - 超出裁剪区域上方的图片宽度) / 2 + var ox = ((offset.x + img.width - area.right) - (area.left - offset.x)) / 2; + var oy = ((offset.y + img.height - area.bottom) - (area.top - offset.y)) / 2; + changeImageRect({ + instance: await this.getInstance(), + check: true, + x: -ox - oy, + y: -oy + ox + }); + }, + rotateImage90: function() { + this.rotateImage(90) + }, + rotateImage270: function() { + this.rotateImage(270) + }, + } +} \ No newline at end of file diff --git a/.svn/pristine/ce/ce8172dd8153b9ad30f7794c1feeed1cd856499d.svn-base b/.svn/pristine/ce/ce8172dd8153b9ad30f7794c1feeed1cd856499d.svn-base new file mode 100644 index 0000000..460a99d --- /dev/null +++ b/.svn/pristine/ce/ce8172dd8153b9ad30f7794c1feeed1cd856499d.svn-base @@ -0,0 +1,659 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/ce/ced31180dbca31d4426fd3d71b45375e543a2974.svn-base b/.svn/pristine/ce/ced31180dbca31d4426fd3d71b45375e543a2974.svn-base new file mode 100644 index 0000000..e1bdda7 --- /dev/null +++ b/.svn/pristine/ce/ced31180dbca31d4426fd3d71b45375e543a2974.svn-base @@ -0,0 +1,400 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/cf/cf1b4c00a808e1cd46b96f74917cde397a04b04f.svn-base b/.svn/pristine/cf/cf1b4c00a808e1cd46b96f74917cde397a04b04f.svn-base new file mode 100644 index 0000000..4de19da --- /dev/null +++ b/.svn/pristine/cf/cf1b4c00a808e1cd46b96f74917cde397a04b04f.svn-base @@ -0,0 +1,19 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/cf/cf30cbdda6b0e9b464d3074c30e75fc33415cf58.svn-base b/.svn/pristine/cf/cf30cbdda6b0e9b464d3074c30e75fc33415cf58.svn-base new file mode 100644 index 0000000..df77894 --- /dev/null +++ b/.svn/pristine/cf/cf30cbdda6b0e9b464d3074c30e75fc33415cf58.svn-base @@ -0,0 +1,447 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/cf/cf7d816fbc4c11ec7247b84389bef1cc79f1baa3.svn-base b/.svn/pristine/cf/cf7d816fbc4c11ec7247b84389bef1cc79f1baa3.svn-base new file mode 100644 index 0000000..0a7c0f2 --- /dev/null +++ b/.svn/pristine/cf/cf7d816fbc4c11ec7247b84389bef1cc79f1baa3.svn-base @@ -0,0 +1,144 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__06C2D6A", + "description" : "", + "versionName" : "1.0.8", + "versionCode" : 108, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 25, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/cf/cfdba8741836a88c776e33f39d64834bc701c58d.svn-base b/.svn/pristine/cf/cfdba8741836a88c776e33f39d64834bc701c58d.svn-base new file mode 100644 index 0000000..545ea4f --- /dev/null +++ b/.svn/pristine/cf/cfdba8741836a88c776e33f39d64834bc701c58d.svn-base @@ -0,0 +1,450 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/d1/d19a38859f51a571122af9be2764ef324fda2118.svn-base b/.svn/pristine/d1/d19a38859f51a571122af9be2764ef324fda2118.svn-base new file mode 100644 index 0000000..cad4c91 --- /dev/null +++ b/.svn/pristine/d1/d19a38859f51a571122af9be2764ef324fda2118.svn-base @@ -0,0 +1,478 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/d2/d28af567b0724ca4fbd3b7f76c6db3bca8740946.svn-base b/.svn/pristine/d2/d28af567b0724ca4fbd3b7f76c6db3bca8740946.svn-base new file mode 100644 index 0000000..3a13bb1 --- /dev/null +++ b/.svn/pristine/d2/d28af567b0724ca4fbd3b7f76c6db3bca8740946.svn-base @@ -0,0 +1,689 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/d4/d46cbb5cf3884465bb40993493e90e1cb3ae1ab9.svn-base b/.svn/pristine/d4/d46cbb5cf3884465bb40993493e90e1cb3ae1ab9.svn-base new file mode 100644 index 0000000..2a610f5 --- /dev/null +++ b/.svn/pristine/d4/d46cbb5cf3884465bb40993493e90e1cb3ae1ab9.svn-base @@ -0,0 +1,177 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/d5/d5365d16f0ede1eee96e768f815e089fe2c98007.svn-base b/.svn/pristine/d5/d5365d16f0ede1eee96e768f815e089fe2c98007.svn-base new file mode 100644 index 0000000..f733c2f --- /dev/null +++ b/.svn/pristine/d5/d5365d16f0ede1eee96e768f815e089fe2c98007.svn-base @@ -0,0 +1,70 @@ + + \ No newline at end of file diff --git a/.svn/pristine/d5/d550ccbf6760c6675eb69043d40d36c87d3e6978.svn-base b/.svn/pristine/d5/d550ccbf6760c6675eb69043d40d36c87d3e6978.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..d8195fb0082e450941d878df84080398b707df20 GIT binary patch literal 1925 zcmV;02YUF4P)Wyp6vyAADxg3XRc@f%z&SzXU0^1Ff=EDjmaPQnF7^rRoWSlrlG$BjIgJ;QW1tJ` z21-xh^aM^8MT@xP^gY=E6p1q=#i2=?Z@{sn`FJz>|7M2I(vWgMLZK88AcevKAV362 z!4xQ1cVvbLkb)^tuhn$4f5Vr@_$SZ0O%~g2cMsfFckH$|FD|Q>=LmQJhZKN2TE-Rf&bLM^dAfdz55hbhexlsPmcP#9QifpQP~m2@Pj-uTjvw&Kv;N_ zOF3~R0XjE0;&sA5B(XP!NB#W|Z@uHwWA77a0_RcLRY2U=6sdjv&e_uBB}#S@m7Xii zCs>y}8}c~5@#VAdZ04F?c&R|KpdK$Xb0a>s@C!!g5{8Gbw<&2vap9nW_Txh05(!HI zAs2JkCD#(^1WTi4kJ|0P&3HDz!YhPhpmp8{e}k738ohWj=<|}Z!OKk4h=&vb6~59` zZ!|5q!HIyZwL2?rd-GhO+PMOt>6(S)dEvi;|M2fi|2_+Ua@c#y>-_1!^LRP2&|GX2 z?~h*d4B^?hQ0HqEQac{8fjnuypmo182Ef#f!c2%O{2v4FSN>|)h%b`xy7z(r7rMN(>5)JlH9Pf$Fj#n< zXESjrhveCu9(kjpjQF%7+N>W5q*8UxA{rd=h|kKiiD>)IWgCIeKW`m~IA_o~piW-T zOLUw)hu~42^Sd4aR1-o1EoFOQ@0~o-GfF2dLn_TB8G#_+%enFkFR4tuY!S4dpJ5FF z7xVyx2GZwm?4d?|pP~iA=MDf!?KOae83nLT-=`RzBP|eGei|Sl3k4eVkF{1?Ef5Hl z%#JK@kj+5(q30mV0xb}9oFBNrosT)ZL2`n$Ul(hE==zBOTm1QvME^mQ2CS7%M_qbi zAOWZ^{P~eY?^Bcpfv>*kgx94f2BI@0>2?$lAa-=LW<`KllhTeM0b)l-YgPn^H7V^F z5+HVTv}Q$sSd-F@Apv4X$9XGDzZM`%OP5VW0g{cbOIsBnOG}qcMFEnHu1i}LAWKV^ zO+^8cjjl^u6(BRxHJY88+uGckULfSQyJ`|!-Lc#1dZw>lXUwE}DnPE~W3lg5oiQNp zsrd_pcq2K&y1Kp^H)`j|waKL(1PIASFm_pN0F1G38F}Z(m@mbE3_|IFxUJ_~1Y;+m zwl##{EQ^_91d_0mx32hP?->S3VNBm=t>Ra#Uhv6=OAVw_tq=^9~sSS8~XDlHH?k@N1sG_zx>u+7p&PTEf7>N1{*=a$772Zqm~xP$?v_th{uRxx&wi)rvzJ} zv_M!u1?pFROcVWz|0+%W`MNm(neRe=uTKVjk6K@Pme5BoyQjZ-pU8%_qtrlHMgP*@ zpvT0b((Lk14*OPT2lWF=4}>o%ASkOOM*MRDs(qSW43etZJxULR=0tM@i%n$)mFa-+Moy0Q)0oUDj_n;gx-TQPZxSo`EVj$E2 z?}_D`0!suiYM=mED@YQwKmw&SzW|WLyp#=701>r2U9>>{`7iLun6)jEWJ``K1wIFr zAUP2J<$}Ob*0;G_^{Kpn(E;OLF6|6q$v(X4@5k7Q!9^uTEATl8;OYA}y`siy?hF3iCy5)0v{3%)aL~K|;cf4jH8sUZAk)gc6JxUbf`9i(qL)aEBTswInCd%y zj16R3K_0VJK!9YcZ({2LB(Y@aE0`<@5R*DNq?F4tWA32hmMU{to~E|Nl1c*GK>W00v1!K~w_(M3o#ecWlza00000 LNkvXXu0mjfvBrIF literal 0 HcmV?d00001 diff --git a/.svn/pristine/d5/d56a09aa2efca8d3d968674059b26209fea247a5.svn-base b/.svn/pristine/d5/d56a09aa2efca8d3d968674059b26209fea247a5.svn-base new file mode 100644 index 0000000..b40355a --- /dev/null +++ b/.svn/pristine/d5/d56a09aa2efca8d3d968674059b26209fea247a5.svn-base @@ -0,0 +1,543 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/d5/d5d046570185317f19d3a42f15987626eefe138a.svn-base b/.svn/pristine/d5/d5d046570185317f19d3a42f15987626eefe138a.svn-base new file mode 100644 index 0000000..04e3569 --- /dev/null +++ b/.svn/pristine/d5/d5d046570185317f19d3a42f15987626eefe138a.svn-base @@ -0,0 +1,106 @@ +import { Service } from '@/Service/Service'; +/*****用户接口*****/ +class NvpMerchService { + + + private static GetMerchInfoPath: string = '/Merch/GetMerchInfo'; + /*****获取商家信息*****/ + static GetMerchInfo(merchId: string,lon:number,lat:number) { + var result = Service.Request(this.GetMerchInfoPath, "GET", { merchId,lon,lat}); + return result; + } + + + private static GetMerchOrderPath: string = '/Merch/GetMerchOrder'; + /*****获取商家营业数据*****/ + static GetMerchOrder(merchId: string) { + var result = Service.Request(this.GetMerchOrderPath, "GET", { merchId }); + return result; + } + + + private static UpdateMerchInfoPath: string = '/Merch/UpdateMerchInfo'; + /*****修改商家信息*****/ + static UpdateMerchInfo(merchId: string, logo: string ,name:string, phone:string,province:string,city:string,county:string,address:string,lon:string,lat:string,sTime:string,eTime:string,showImg:string) { + var result = Service.Request(this.UpdateMerchInfoPath, "POST", { merchId, logo,name ,phone,province,city,county,address,lon,lat,sTime,eTime,showImg}); + return result; + } + + + + private static GetMerchAccPath: string = '/Merch/GetMerchAcc'; + /*****获取商家佣金数据*****/ + static GetMerchAcc(merchId: string) { + var result = Service.Request(this.GetMerchAccPath, "GET", { merchId }); + return result; + } + + private static GetMerchAccLogPath: string = '/Merch/GetMerchAccLog'; + /*****获取商家佣金记录*****/ + static GetMerchAccLog(merchId: string,op:string,page:number) { + var result = Service.Request(this.GetMerchAccLogPath, "GET", { merchId,op,page }); + return result; + } + + + + private static MerchWithDrawPath: string = '/Merch/MerchWithDraw'; + /*****商家佣金提现*****/ + static MerchWithDraw(merchId: string, money: number ,name:string, account:string) { + var result = Service.Request(this.MerchWithDrawPath, "POST", { merchId, money,name,account}); + return result; + } + + + private static GetMerchWithLogPath: string = '/Merch/GetMerchWithLog'; + /*****商家佣金提现记录*****/ + static GetMerchWithLog(merchId: string) { + var result = Service.Request(this.GetMerchWithLogPath, "GET", { merchId }); + return result; + } + + private static GetMerchTicketListPath: string = '/Merch/GetMerchTicketList'; + /*****商家优惠券列表*****/ + static GetMerchTicketList(merchId: string) { + var result = Service.Request(this.GetMerchTicketListPath, "GET", { merchId }); + return result; + } + + + private static AddMerchTicketPath: string = '/Merch/AddMerchTicket'; + /*****商家优惠券修改添加*****/ + static AddMerchTicket(ticketId: string, merchId: string ,code:string, atkAcc:number,redAcc:number,count:number,useTime:Number,state:Number,addTime:string,endTime:string) { + var result = Service.Request(this.AddMerchTicketPath, "POST", { ticketId, merchId,code,atkAcc,redAcc,count,useTime,state,addTime,endTime}); + return result; + } + + + + private static DelMerchTicketPath: string = '/Merch/DelMerchTicket'; + /*****商家删除优惠券*****/ + static DelMerchTicket(ticketId: string) { + var result = Service.Request(this.DelMerchTicketPath, "POST", { ticketId}); + return result; + } + + + private static GetTicketInfoPath: string = '/Merch/GetTicketInfo'; + /*****获取优惠券详情*****/ + static GetTicketInfo(ticketId: string) { + var result = Service.Request(this.GetTicketInfoPath, "GET", { ticketId }); + return result; + } + + + + private static GetAppVersionPath: string = '/Login/GetAppVersion'; + /*****更新*****/ + static GetAppVersion() { + var result = Service.Request(this.GetAppVersionPath, "GET", {type:2}); + return result; + } +} +export { + Service, + NvpMerchService +} diff --git a/.svn/pristine/d7/d75371b1f37bc7de9a20036eca0674fada08b736.svn-base b/.svn/pristine/d7/d75371b1f37bc7de9a20036eca0674fada08b736.svn-base new file mode 100644 index 0000000..58a8bd8 --- /dev/null +++ b/.svn/pristine/d7/d75371b1f37bc7de9a20036eca0674fada08b736.svn-base @@ -0,0 +1,543 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/d7/d755bf85eb7edb60dd61840ac6ad5f666331b47d.svn-base b/.svn/pristine/d7/d755bf85eb7edb60dd61840ac6ad5f666331b47d.svn-base new file mode 100644 index 0000000..cad7fdc --- /dev/null +++ b/.svn/pristine/d7/d755bf85eb7edb60dd61840ac6ad5f666331b47d.svn-base @@ -0,0 +1,784 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/d8/d8742699dc65bfe923c7e4dfcb94d32a38c2520e.svn-base b/.svn/pristine/d8/d8742699dc65bfe923c7e4dfcb94d32a38c2520e.svn-base new file mode 100644 index 0000000..c301cc1 --- /dev/null +++ b/.svn/pristine/d8/d8742699dc65bfe923c7e4dfcb94d32a38c2520e.svn-base @@ -0,0 +1,780 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/d9/d97e2e8dd6992baecd766acbb6911c1a843ec96d.svn-base b/.svn/pristine/d9/d97e2e8dd6992baecd766acbb6911c1a843ec96d.svn-base new file mode 100644 index 0000000..ec78113 --- /dev/null +++ b/.svn/pristine/d9/d97e2e8dd6992baecd766acbb6911c1a843ec96d.svn-base @@ -0,0 +1,89 @@ +import { EventHandler } from '@/Service/Comm/EventHandler'; +import { Service, ImConnectService } from '@/Service/Im/ImConnectService'; +export class WebSocket { + private socketTask: any; + private heartbeat: number = 60000; + private heartbeatInterval: any; + public ConnectSocketInit() { + ImConnectService.GetConnect().then((res: any) => { + Service.SetUserClientId(res.data.websocketId); + this.socketTask = uni.connectSocket({ + url: res.data.server, + header: { + 'content-type': 'application/json' + }, + success: () => { + // console.log('============正准备建立websocket中================'); + } + }); + this.socketTask.onOpen((res: any) => { + console.log('==============WebSocket连接正常============='); + this.start(); + EventHandler.ConnectBus(); + // 只有连接正常打开中 ,才能正常收到消息 + this.socketTask.onMessage((data: any) => { + console.log('接收到消息') + EventHandler.Events(data); + }); + + }); + this.socketTask.onClose((e: any) => { + console.log('========已经被关闭了====================', e); + + // 加了flag判断是否为手动(用户主动关闭) + // e && e.reason == 'user' ? '' : this.reconnect(); + }); + }); + } + + private start() { + var data = { + code: 'Heart', + method: 'Heart' + }; + this.heartbeatInterval = setInterval(() => { + console.log('======start====开启心跳检测====', data); + this.send(JSON.stringify(data)); + }, this.heartbeat); + } + + //重新连接 + public reconnect() { + //停止发送心跳 + clearInterval(this.heartbeatInterval); + //如果不是人为关闭的话,进行重连 + uni.$emit('ImCom'); + } + // 关闭 WebSocket 连接 + public CloseSocket(reason: string) { + if(!this.socketTask){ + return + } + this.socketTask.close({ + code: 1000, + reason: reason, + success() { + clearInterval(this.heartbeatInterval); + console.log('===============关闭 WebSocket 成功==================='); + }, + fail() { + console.log('===================关闭 WebSocket 失败====================='); + } + }); + } + + //发送消息 + public send(value: any) { + if(!this.socketTask){ + return + } + // 连接正常打开时 ,才能正常成功发送消息 + this.socketTask.send({ + data: value, + success() {}, + fail() { + this.reconnect(); + } + }); + } +} diff --git a/.svn/pristine/d9/d9a4849f2690b42ce5bb2204f6737db38a1e8e90.svn-base b/.svn/pristine/d9/d9a4849f2690b42ce5bb2204f6737db38a1e8e90.svn-base new file mode 100644 index 0000000..2dc1a03 --- /dev/null +++ b/.svn/pristine/d9/d9a4849f2690b42ce5bb2204f6737db38a1e8e90.svn-base @@ -0,0 +1,322 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/da/da39a3ee5e6b4b0d3255bfef95601890afd80709.svn-base b/.svn/pristine/da/da39a3ee5e6b4b0d3255bfef95601890afd80709.svn-base new file mode 100644 index 0000000..e69de29 diff --git a/.svn/pristine/da/da3d6a35442f75520c4203b6e2a13592649d8777.svn-base b/.svn/pristine/da/da3d6a35442f75520c4203b6e2a13592649d8777.svn-base new file mode 100644 index 0000000..1ca43de --- /dev/null +++ b/.svn/pristine/da/da3d6a35442f75520c4203b6e2a13592649d8777.svn-base @@ -0,0 +1,12 @@ +{ + "uni-calender.ok": "确定", + "uni-calender.cancel": "取消", + "uni-calender.today": "今日", + "uni-calender.SUN": "日", + "uni-calender.MON": "一", + "uni-calender.TUE": "二", + "uni-calender.WED": "三", + "uni-calender.THU": "四", + "uni-calender.FRI": "五", + "uni-calender.SAT": "六" +} diff --git a/.svn/pristine/dc/dcf9d00ee1d9de28902155b4ede19055d32ebf92.svn-base b/.svn/pristine/dc/dcf9d00ee1d9de28902155b4ede19055d32ebf92.svn-base new file mode 100644 index 0000000..1de64bc --- /dev/null +++ b/.svn/pristine/dc/dcf9d00ee1d9de28902155b4ede19055d32ebf92.svn-base @@ -0,0 +1,32 @@ +import { Service } from '@/Service/Service'; +/*****设备接口*****/ +class NvpMachineService { + + private static GetMerchListPath: string = '/Machine/GetMerchList'; + /*****商户设备*****/ + static GetMerchList(merchId: string) { + var result = Service.Request(this.GetMerchListPath, "GET", { merchId }); + return result; + } + + private static DelMerchMachinePath: string = '/Machine/DelMerchMachine'; + /*****删除设备*****/ + static DelMerchMachine(merchId: string, machineId: string) { + var result = Service.Request(this.DelMerchMachinePath, "POST", { merchId, machineId }); + return result; + } + + private static AddMachinePath: string = '/Machine/AddMachine'; + /*****添加设备*****/ + static AddMachine(merchId: string, payCode: string) { + var result = Service.Request(this.AddMachinePath, "POST", { merchId, payCode }); + return result; + } + + + +} +export { + Service, + NvpMachineService +} diff --git a/.svn/pristine/dd/dd434f59e6d07b6d619bab32ac670d7670539954.svn-base b/.svn/pristine/dd/dd434f59e6d07b6d619bab32ac670d7670539954.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..3fd0cf7342a66703088a3f0dd2312f2f3a145f1a GIT binary patch literal 3068 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 KMNUMnLSTaW;j>8q literal 0 HcmV?d00001 diff --git a/.svn/pristine/dd/dd764fd0f7d14723109172e52179244986d83fdd.svn-base b/.svn/pristine/dd/dd764fd0f7d14723109172e52179244986d83fdd.svn-base new file mode 100644 index 0000000..529860b --- /dev/null +++ b/.svn/pristine/dd/dd764fd0f7d14723109172e52179244986d83fdd.svn-base @@ -0,0 +1,242 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/dd/dde07fab330dcf34eccf0422fb280a8083c63699.svn-base b/.svn/pristine/dd/dde07fab330dcf34eccf0422fb280a8083c63699.svn-base new file mode 100644 index 0000000..61ad035 --- /dev/null +++ b/.svn/pristine/dd/dde07fab330dcf34eccf0422fb280a8083c63699.svn-base @@ -0,0 +1,265 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [ + { + "root": "pages/order", + "pages": [ + { + "path": "orderDetail", + "style": { + "navigationBarTitleText": "订单详情" + } + }, + { + "path" : "navigation", + "style" : + { + "navigationBarTitleText" : "导航", + "navigationStyle": "custom" + } + }, + { + "path" : "abnormal", + "style" : + { + "navigationBarTitleText" : "上报异常" + } + }, + { + "path" : "grabOrder", + "style" : + { + "navigationBarTitleText" : "订单详情" + } + }, + { + "path" : "incomeDetail", + "style" : + { + "navigationBarTitleText" : "收入详情", + "navigationStyle": "custom" + } + }, + { + "path" : "withdraw", + "style" : + { + "navigationBarTitleText" : "提现申请" + } + }, + { + "path" : "finish", + "style" : + { + "navigationBarTitleText" : "订单完成" + } + }, + { + "path" : "upAbnormal", + "style" : + { + "navigationBarTitleText" : "异常上报" + } + }, + { + "path": "orderMap", + "style": { + "navigationBarTitleText": "订单地图" + } + }, + { + "path": "orderChat", + "style": { + "navigationBarTitleText": "联系客户" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path" : "edit", + "style" : + { + "navigationBarTitleText" : "编辑资料" + } + }, + { + "path" : "statusContro", + "style" : + { + "navigationBarTitleText" : "上线管理" + } + }, + { + "path" : "myKF", + "style" : + { + "navigationBarTitleText" : "联系客服", + "navigationStyle": "custom" + } + }, + { + "path" : "AbnormalList", + "style" : + { + "navigationBarTitleText" : "异常订单" + } + }, + { + "path" : "check", + "style" : + { + "navigationBarTitleText" : "签到奖励" + } + }, + { + "path" : "abnormalDetail", + "style" : + { + "navigationBarTitleText" : "异常详情" + } + }, + { + "path" : "security", + "style" : + { + "navigationBarTitleText" : "账号与安全" + } + }, + { + "path" : "authentication", + "style" : + { + "navigationBarTitleText" : "实名认证" + } + }, + { + "path" : "login", + "style" : + { + "navigationBarTitleText" : "登录", + "navigationStyle": "custom" + } + }, + { + "path" : "noticeList", + "style" : + { + "navigationBarTitleText" : "消息通知", + "navigationStyle": "custom" + } + }, + { + "path" : "setConnect", + "style" : + { + "navigationBarTitleText" : "紧急联系人" + } + }, + { + "path" : "evaluate", + "style" : + { + "navigationBarTitleText" : "评价中心" + } + }, + { + "path" : "completeData", + "style" : + { + "navigationBarTitleText" : "完善信息" + } + }, + { + "path" : "withDrowList", + "style" : + { + "navigationBarTitleText" : "提现列表" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/dd/ddf45208a0a4b2416ca3216cdf096abe02af4194.svn-base b/.svn/pristine/dd/ddf45208a0a4b2416ca3216cdf096abe02af4194.svn-base new file mode 100644 index 0000000..f60e149 --- /dev/null +++ b/.svn/pristine/dd/ddf45208a0a4b2416ca3216cdf096abe02af4194.svn-base @@ -0,0 +1,518 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/de/de1810146faa862169651a9847a2a6d6ead0ca25.svn-base b/.svn/pristine/de/de1810146faa862169651a9847a2a6d6ead0ca25.svn-base new file mode 100644 index 0000000..37eea08 --- /dev/null +++ b/.svn/pristine/de/de1810146faa862169651a9847a2a6d6ead0ca25.svn-base @@ -0,0 +1,123 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/de/de717370db9844d0b579dcefa37ea873aa9dc051.svn-base b/.svn/pristine/de/de717370db9844d0b579dcefa37ea873aa9dc051.svn-base new file mode 100644 index 0000000..74fa686 --- /dev/null +++ b/.svn/pristine/de/de717370db9844d0b579dcefa37ea873aa9dc051.svn-base @@ -0,0 +1,103 @@ +import { Service } from '@/Service/Service'; +/*****订单接口*****/ +class CNRiderOrderService { + private static GetRiderOrderListPath : string = '/Rider/GetRiderOrderList'; + /*****首页新订单*****/ + static GetRiderOrderList(page : number) { + var result = Service.Request(this.GetRiderOrderListPath, "GET", {page}); + return result; + } + + private static RiderTakeOrderPath : string = '/Rider/RiderTakeOrder'; + /*****骑手接单*****/ + static RiderTakeOrder(orderId : string) { + var result = Service.Request(this.RiderTakeOrderPath, "POST", {orderId}); + return result; + } + + private static GetRiderTakeOrderListPath : string = '/Rider/GetRiderTakeOrderList'; + /*****首页 待取餐/配送中*****/ + static GetRiderTakeOrderList(status: number,page : number) { + var result = Service.Request(this.GetRiderTakeOrderListPath, "GET", {status,page}); + return result; + } + + + private static GetUnitOrderInfoPath : string = '/Order/GetUnitOrderInfo'; + /*****获取订单详情*****/ + static GetUnitOrderInfo(orderId: string) { + var result = Service.Request(this.GetUnitOrderInfoPath, "GET", {orderId}); + return result; + } + + private static UpdateRiderOrderTakePath : string = '/Rider/UpdateRiderOrderTake'; + /*****取餐*****/ + static UpdateRiderOrderTake(orderId: string,status:number) { + var result = Service.Request(this.UpdateRiderOrderTakePath, "POST", {orderId,status}); + return result; + } + + private static GetRiderAccLogPath : string = '/Rider/GetRiderAccLog'; + /*****收入列表*****/ + static GetRiderAccLog(time: string,page:number) { + var result = Service.Request(this.GetRiderAccLogPath, "GET", {time,page}); + return result; + } + + private static AddRiderWithPath : string = '/Rider/AddRiderWith'; + /*****骑手提现*****/ + static AddRiderWith(amount: number,payway:string,name:string,account:string) { + var result = Service.Request(this.AddRiderWithPath, "POST", {amount,payway,name,account}); + return result; + } + + + private static GetRiderWithListPath : string = '/Rider/GetRiderWithList'; + /*****骑手提现列表*****/ + static GetRiderWithList(page:number) { + var result = Service.Request(this.GetRiderWithListPath, "GET", {page}); + return result; + } + + private static ApplyOrderServicePath : string = '/Rider/ApplyOrderService'; + /*****上报异常订单*****/ + static ApplyOrderService(orderId:string,type:string,remark:string,img:string) { + var result = Service.Request(this.ApplyOrderServicePath, "POST", {orderId,type,remark,img}); + return result; + } + + + private static GetRiderOrderServiceListPath : string = '/Rider/GetRiderOrderServiceList'; + /*****上报异常订单列表*****/ + static GetRiderOrderServiceList(type:number,page:number) { + var result = Service.Request(this.GetRiderOrderServiceListPath, "GET", {type,page}); + return result; + } + + + private static GetOrderServiceInfoPath : string = '/Order/GetOrderServiceInfo'; + /*****上报异常订单详情*****/ + static GetOrderServiceInfo(orderId:string) { + var result = Service.Request(this.GetOrderServiceInfoPath, "GET", {orderId}); + return result; + } + + + + private static UpdateRiderLocationPath : string = '/Rider/UpdateRiderLocation'; + /*****骑手上报位置*****/ + static UpdateRiderLocation(lon:number,lat:number) { + var result = Service.Request(this.UpdateRiderLocationPath, "POST", {lon,lat}); + return result; + } + + + + + + +} +export { + Service, + CNRiderOrderService +} \ No newline at end of file diff --git a/.svn/pristine/de/de8532476791b6ccbb9464cbe3013352828afe98.svn-base b/.svn/pristine/de/de8532476791b6ccbb9464cbe3013352828afe98.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..0200b9118bc88d3541275e30dab3d197be8eff2d GIT binary patch literal 17637 zcmV)GK)%0;P)skEJrHKS*aXZ%66OrX)$_bIJJbUCAwX98Vto=!40pKKXF+ zkq2%~?mf0Qxn=)ka_j!lf3AY@(iC_Her?5$neuBghW55^^9h~qpA7gY;-xK$&#?;eGonB0**Qed> z4~|`3>*=0;NHAEv<6B$uJ$u~u{NIrLLCLat@WumQIez@c8U8yTP5IA%LWC=23%M`b zz`x>I?;m)cEm_~g2p}slMz2bYd4JHZ6?f+Q7Ej`yGuBWkm&xV@V35WWh{lgFL4XZX zcu|@tt$PC2SWCOpqEXwT*{IQMHbF>y=3|d=+f9eCf(~_%=;*{qVMY+(F8+)pKrD1( zz1!EZ+e>H*#FoSz{{+0)Sd8@~I(i<~^YA3T?-QonxKh7i!|at0J#^m})#P9JWB

    @A+5(H4tM!VkPeA#DS9Z`^3FA*7QLDMN-D!__beTxRAr@`}^&qydBL%!%d)v4E1vcAUv}WwJKG zm+2b;(C@VAh>87ngO1F3xRm98{;L8p7g0_H6w@KaOh{hGyuN26pG^3^!qPfMfhQMY z@hlhvH~|tT`jv>CR$v7|Kqv)85_b%JLuic%0D;CM4iI_}T4oZGryu(pzj9nn{Fxv7 zv)?}Z%b%SY8ZLgTR4U927c%S;;~WDgHGy5_3{#~HlkO#T}m;UHWX}^ zoY$iqCX8x=lfy+OCZ`5wYQ%;?UmAQOmi9YM`t>c^)m7THs^+L!YEr#!msWj;dUc(~ z+7j&@-4o*X+X}%mid3k8J3ZbD|Ckl43fbnD!*<(4C8IMLk!L1dA6<>7IPdHDhwFbRz zOivEX7{g~i^Yh$t?1)S(##bM@L{IHC6lHf>J+_-Y>g^8gPM2<9?+L8F#IY`s75s_x zdOg~DuHI;~Rcq+B&^P z9b&^nkA9qe2M%K7r#f;8wRWGaR+p`Imqs@ca7amJAZ}d7vtp*j*BCsbvGT!3fu-B+ zQE#?b+p4i#ZLr>q>6(xzN|Dk$qrk%tEP60F15>u>qYi%C8q|qL zD1aP@p#annu)5*v6ODywi z*Q<0IReH5Gnrm}x&tIm#I7@Bi8Yf zem~M2`~d5D2#LWM5%U~lSF1IyuWz%k)23~_0TyYQbw+{8F*DSAu07AaYwT~KkNx5o zzgUv09!sQ2VMXZqq-B<&Z`HUE*J!M6ctXSfKs-BwDP`@5fo)M$4gjZgV+>Z~v+5W3(V!Be z@dg2@OqP79NWNGkt@b^!-VZ#ig|>Y0%H|eVSF6lzxv}^-YfOg`DG|!|Jw0bI#!2!U z&KKG!vY&MzINxB5(Sx4+SxDsB4<2+6qjThQEDk(_GZ7HkoD$WjE(mD%+dY^q6o^t8 zVrkY$5hjfAf{3KorM11m?3s5s`SwX>m#b2kM=Dp~*q!(A$+;Q7+ z?z{6ge(sSE@hgx06^`Eb0R7wqmzOuWdhr5{trZI80yC52bmSvt5b9nd6KKYBr#i>b zOAM_(l9-;pn;;NyIZ8vrlt)J>RVqa3G}iO5y5AL>SJpPTBGxZ$x0E;f__E4S%nd>x z&o>ArbwH`pv7fd2^56hKX~`M{U_e?A24Y*F3;L0@iix`K0O`s3c4d-I+<7bqjli>N z$V!cl0T}@j>-nAy2}@&msVs>Y*sLzGeC<3Ns~gO(*9cQ-?)vaUeDvoY#&oN^`Ro(C z@PqI0?(@i*}GD){5nUTaU@P_r-c6 zi!m7MODu_XBhkn-jznhd#_5)bt!AB;@=Lsg%5a6Tsa=#tM)2kH^df43cB{ku$|e^V zHdqme@(kz(#-Iizny>qk(uERXzJe#M_ciEkr6mhj=UCim(ZuH$KlgF^&1GKv z(GOU^c#+9$#AG>OVkphXP(dq!G?ikSiF`<og`?T-KDm*O;s%GDN+xMg_F}$6e>d)Utz-NdA-+c zc9~nNvangBBR_9FPc7)C=IXF=NXGsCEf$zD#$W|r7zP3^!1=#a;18IX5*s6(2Qo!> zJ<>4>Ec(IMV6EQujMcftwc&Y|Ouj^r%26nd2vmsc+qAY;scmeswAx^^Z}|lk2^P=1 z&9VZ;P|7ksnj_NDMc;C9h@n!6u}Y5Np`zL;4OTOW{9UN^vR%EvdoTU~8-P)|^@)!> zz@3NptAAfUE<;u>Buu9<*3+aBxMm;*2G$gdQq5YO_0=`%^*W_;g;DwJbUp_fzn&UA zw_R_ru(6FxkBl*R0#P~;XT*3BsUP>17m}0)z37)Q?jeJ35&|_8_#W0U=sfUz0qc

    BlO{iti8i?9>swRbW%|=9qv#q%Mo3Ii= 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 literal 0 HcmV?d00001 diff --git a/.svn/wc.db-journal b/.svn/wc.db-journal new file mode 100644 index 0000000..e69de29 diff --git a/index.html b/index.html new file mode 100644 index 0000000..f8a54cb --- /dev/null +++ b/index.html @@ -0,0 +1,20 @@ + + + + + + + + + + +

    + + + diff --git a/mtRide.keystore b/mtRide.keystore new file mode 100644 index 0000000000000000000000000000000000000000..afb2f24dbf30d37ec838a0f127b80a63bf7ea7ed GIT binary patch literal 2680 zcma);X*d*$8pmhG%wWd8bx$!gj6KE@#x_GZj-8UMLyRSZ46>v!wz4lr7`rSvvPPVU zL9%Z(LlG&Itt{E6n%jNued@WN?)~sS@ALlt@BjVye_k{h77PNipvf=vZ3(*xHw=yP$?OL`vJAlo;giS82Wf@viD;>o8uS;)h@|crtaVEs*7oP5GT1WqzLc)u)DGs|CI0HEM3( zEKk`RRNXnbADZv{=-a#k_@;Zt#>`+%Vp#u9a0p^7?cM9@x_rs^eq7^++xA$#!DOu? zby8%1sI-$y6cG)dsmf0!6~+v>YP|EIstO(7ZA^-JwJ3NLE^&hq&qw*Ig)yPa@+_RI zC;Tn7Fv)Pa_>UEqE-fwf3K2v0pd=TQz$&l16;zHp{LJ*YSD%WXg{cl-`Kpl_M2ccb@{iC6`ILYOb{i~WjACf7-tbjH|pTdQqUF~3_cggkvtL6 zx6_knsgo&rd-1j@a?ZmXb5dOVUWtKj{f)*YaM-Sekr7A0UCU;@Q{Lo7PT-&D-LJKy z0Zm@?`(Jn80vSk_O=(|+rcyyROqJ~?-%ZKals;MvlZ`B-96 zB5u*IdRbcJ)G2{$x{WU0d`KBuRu)(eX7{4|lq*}Gs4*zsqU z$RK*(P=lBl!>~A{9ETDey2E_jUk|iBSOdUs+42Vx?v>cb%%X2-t zl_|7m9m^#&pqbO;8iY^vMdXBp-Ii<2F-i6N?GNovNXpD`Kt%} zY&i@MrVEhXs(DZ1Z%ok5GUDd8OzLdsK1{_^IaHR|+L3d4G&K#jmEFKN`B=jid}-O! z_S&Ktzy}eB7+WvMp}AQ`$jK_4_AU*16VyPUMDIJJ7)ed9MG4zd8=LQO6l`vwz==A< zUx==p6vjz4GO$0W5rVcgG7*pG@5pX=hs+;Ep6HhuF~tIG;|GLHqRs`$OcQ(H+1VDS z8x|Pm&?IFZ_Cw2WQDd!-24A=;`;^)D@Ucbcj-$Ei&1{5?Pwqif!e~*r>p}Ad*J_#q zuQYthN_ z-jS%MG9Se;Zj?mPfu}P@2>;RNv|~b}FRqy39a>Qx1%2;)T5HLb8+otOt_Zg3RPDx@ z^CaCmkpETy{{&G*-MEmB0%E1r&xRP}jb`AEg_oA}Up$Yul%<$@$A^!Jco#@o>+{g{)c(Ixs98cD8QEQTd$>)1M;A+a6 zX2tOdTPWesXMV;dyMPiGf&<_O2nLV4JcOA5Hz20{mYwt?s=ZNO9oB-Z;&u9_@x~;9e*${Xa2n zn=n&5PVcH|+O!@|{1kkK6?UPpe z;)KqhoxZ$lF=DS9ZpZ2hJlZwv61m|=yFgwv8KjaO4cd9c3|po z`Q5NfT0ue&;1jOh+pE=|zh%H48#>8rovh#b=usc~K+lZGvVG2x7%SP(1A%4R^C5C( z1;tu|_p-QCf-_yscusPXTR&S1#el-Pi02p8811au-s^_MHG1ug2%t&fH~?kp;C3S^ zlQ23NKS91#JSSCyx?g@Q_BwBDk9a!t8M9As^m)3Nd?P~PNW$AUCV9$Lb$4o~a0n-bk2O&h%UX}%T9{0D)jrhAd^?4l072Ghuj-;Xq%M!IBlyb zs14eA`$0Abu?j;C+E%TPCMEc>H#d`l1Uq)t?XLLx-hcKd@C(44(OXHz=SS$!m1E9V zdaD)eDx5j+rIg?#H57xpW51a)*szWHfbl3sQ2gsdATqQ|EOFjut+X%B z(-)4Q_irXwyzjnX literal 0 HcmV?d00001 diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..969899d --- /dev/null +++ b/package-lock.json @@ -0,0 +1,13938 @@ +{ + "name": "uni-preset-vue", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "uni-preset-vue", + "version": "0.0.0", + "dependencies": { + "@climblee/uv-ui": "^1.1.20", + "@dcloudio/uni-app": "3.0.0-4080420251103001", + "@dcloudio/uni-app-harmony": "3.0.0-4080420251103001", + "@dcloudio/uni-app-plus": "3.0.0-4080420251103001", + "@dcloudio/uni-components": "3.0.0-4080420251103001", + "@dcloudio/uni-h5": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-alipay": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-baidu": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-harmony": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-jd": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-kuaishou": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-lark": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-qq": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-xhs": "3.0.0-4080420251103001", + "@dcloudio/uni-quickapp-webview": "3.0.0-4080420251103001", + "clipboard": "^2.0.11", + "dayjs": "^1.11.13", + "echarts": "^5.5.1", + "uview-plus": "^3.3.54", + "vue": "3.4.21", + "vue-i18n": "9.14.5" + }, + "devDependencies": { + "@dcloudio/types": "3.4.19", + "@dcloudio/uni-automator": "3.0.0-4080420251103001", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-stacktracey": "3.0.0-4080420251103001", + "@dcloudio/vite-plugin-uni": "3.0.0-4080420251103001", + "@vue/runtime-core": "3.5.23", + "@vue/tsconfig": "^0.1.3", + "sass": "1.63.2", + "sass-loader": "10.4.1", + "typescript": "^4.9.4", + "vite": "5.2.8", + "vue-tsc": "^1.0.24" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.5.tgz", + "integrity": "sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", + "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-module-transforms": "^7.25.2", + "@babel/helpers": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.2", + "@babel/types": "^7.25.2", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", + "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.6", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.3" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.28.5.tgz", + "integrity": "sha512-q3WC4JfdODypvxArsJQROfupPBq9+lMwjKq7C33GhbFYJsufD0yd/ziwD+hJucLeWsnFPWZjsU2DNFqBPE7jwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-member-expression-to-functions": "^7.28.5", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/traverse": "^7.28.5", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.28.5.tgz", + "integrity": "sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.3", + "regexpu-core": "^6.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.5.tgz", + "integrity": "sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "debug": "^4.4.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.22.10" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.28.5.tgz", + "integrity": "sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.28.5", + "@babel/types": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.3.tgz", + "integrity": "sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.28.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz", + "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz", + "integrity": "sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-wrap-function": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz", + "integrity": "sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz", + "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.28.3.tgz", + "integrity": "sha512-zdf983tNfLZFletc0RRXYrHrucBEg95NIFMkn6K9dbeMYnsgHaSBGcQqdsCSStG2PYwRre0Qc2NNSCXbG+xc6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.28.3", + "@babel/types": "^7.28.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.4.tgz", + "integrity": "sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==", + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.24.7", + "resolved": "https://registry.npmmirror.com/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", + "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.6" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.28.5.tgz", + "integrity": "sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.27.1.tgz", + "integrity": "sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.27.1.tgz", + "integrity": "sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz", + "integrity": "sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.28.3.tgz", + "integrity": "sha512-b6YTX108evsvE4YgWyQ921ZAFFQm3Bn+CA3+ZXlNVnPhx+UfsVURoPjfGAPCjBgrqo30yX/C2nZGX96DxvR9Iw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.28.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.27.1.tgz", + "integrity": "sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz", + "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.24.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.7.tgz", + "integrity": "sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.24.7", + "resolved": "https://registry.npmmirror.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.7.tgz", + "integrity": "sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz", + "integrity": "sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.28.0.tgz", + "integrity": "sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-remap-async-to-generator": "^7.27.1", + "@babel/traverse": "^7.28.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.27.1.tgz", + "integrity": "sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-remap-async-to-generator": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz", + "integrity": "sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.5.tgz", + "integrity": "sha512-45DmULpySVvmq9Pj3X9B+62Xe+DJGov27QravQJU1LLcapR6/10i+gYVAucGGJpHBp5mYxIMK4nDAT/QDLr47g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.27.1.tgz", + "integrity": "sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.28.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.28.3.tgz", + "integrity": "sha512-LtPXlBbRoc4Njl/oh1CeD/3jC+atytbnf/UqLoqTDcEYGUPj022+rvfkbDYieUrSj3CaV4yHDByPE+T2HwfsJg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.28.3", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.4.tgz", + "integrity": "sha512-cFOlhIYPBv/iBoc+KS3M6et2XPtbT2HiCRfBXWtfpc9OAyostldxIf9YAYB6ypURBBbx+Qv6nyrLzASfJe+hBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-globals": "^7.28.0", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/traverse": "^7.28.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.27.1.tgz", + "integrity": "sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/template": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.5.tgz", + "integrity": "sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.27.1.tgz", + "integrity": "sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz", + "integrity": "sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.27.1.tgz", + "integrity": "sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.27.1.tgz", + "integrity": "sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-explicit-resource-management": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.28.0.tgz", + "integrity": "sha512-K8nhUcn3f6iB+P3gwCv/no7OdzOZQcKchW6N389V6PD8NUWKZHzndOd9sPDVbMoBsbmjMqlB4L9fm+fEFNVlwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.28.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.28.5.tgz", + "integrity": "sha512-D4WIMaFtwa2NizOp+dnoFjRez/ClKiC2BqqImwKd1X28nqBtZEyCYJ2ozQrrzlxAFrcrjxo39S6khe9RNDlGzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz", + "integrity": "sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz", + "integrity": "sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz", + "integrity": "sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.27.1.tgz", + "integrity": "sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz", + "integrity": "sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.28.5.tgz", + "integrity": "sha512-axUuqnUTBuXyHGcJEVVh9pORaN6wC5bYfE7FGzPiaWa3syib9m7g+/IT/4VgCOe2Upef43PHzeAvcrVek6QuuA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz", + "integrity": "sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz", + "integrity": "sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz", + "integrity": "sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.28.5.tgz", + "integrity": "sha512-vn5Jma98LCOeBy/KpeQhXcV2WZgaRUtjwQmjoBuLNlOmkg0fB5pdvYVeWRYI69wWKwK2cD1QbMiUQnoujWvrew==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.28.3", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz", + "integrity": "sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.27.1.tgz", + "integrity": "sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz", + "integrity": "sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.27.1.tgz", + "integrity": "sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.27.1.tgz", + "integrity": "sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.28.4.tgz", + "integrity": "sha512-373KA2HQzKhQCYiRVIRr+3MjpCObqzDlyrM6u4I201wL8Mp2wHf7uB8GhDwis03k2ti8Zr65Zyyqs1xOxUF/Ew==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.28.0", + "@babel/plugin-transform-parameters": "^7.27.7", + "@babel/traverse": "^7.28.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz", + "integrity": "sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.27.1.tgz", + "integrity": "sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.28.5.tgz", + "integrity": "sha512-N6fut9IZlPnjPwgiQkXNhb+cT8wQKFlJNqcZkWlcTqkcqx6/kU4ynGmLFoa4LViBSirn05YAwk+sQBbPfxtYzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.27.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.7.tgz", + "integrity": "sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.27.1.tgz", + "integrity": "sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.27.1.tgz", + "integrity": "sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz", + "integrity": "sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.28.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.28.4.tgz", + "integrity": "sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regexp-modifiers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.27.1.tgz", + "integrity": "sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz", + "integrity": "sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz", + "integrity": "sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.27.1.tgz", + "integrity": "sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz", + "integrity": "sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz", + "integrity": "sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz", + "integrity": "sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.24.8", + "resolved": "https://registry.npmmirror.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.8.tgz", + "integrity": "sha512-CgFgtN61BbdOGCP4fLaAMOPkzWUh6yQZNMr5YSt8uz2cZSSiQONCQFWqsE4NeVfOIhqDOlS9CR3WD91FzMeB2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-create-class-features-plugin": "^7.24.8", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/plugin-syntax-typescript": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz", + "integrity": "sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.27.1.tgz", + "integrity": "sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz", + "integrity": "sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.27.1.tgz", + "integrity": "sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.28.5.tgz", + "integrity": "sha512-S36mOoi1Sb6Fz98fBfE+UZSpYw5mJm0NUHtIKrOuNcqeFauy1J6dIvXm2KRVKobOSaGq4t/hBXdN4HGU3wL9Wg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.28.5", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.28.5", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.27.1", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.27.1", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.27.1", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.28.3", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-import-assertions": "^7.27.1", + "@babel/plugin-syntax-import-attributes": "^7.27.1", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.27.1", + "@babel/plugin-transform-async-generator-functions": "^7.28.0", + "@babel/plugin-transform-async-to-generator": "^7.27.1", + "@babel/plugin-transform-block-scoped-functions": "^7.27.1", + "@babel/plugin-transform-block-scoping": "^7.28.5", + "@babel/plugin-transform-class-properties": "^7.27.1", + "@babel/plugin-transform-class-static-block": "^7.28.3", + "@babel/plugin-transform-classes": "^7.28.4", + "@babel/plugin-transform-computed-properties": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.28.5", + "@babel/plugin-transform-dotall-regex": "^7.27.1", + "@babel/plugin-transform-duplicate-keys": "^7.27.1", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-dynamic-import": "^7.27.1", + "@babel/plugin-transform-explicit-resource-management": "^7.28.0", + "@babel/plugin-transform-exponentiation-operator": "^7.28.5", + "@babel/plugin-transform-export-namespace-from": "^7.27.1", + "@babel/plugin-transform-for-of": "^7.27.1", + "@babel/plugin-transform-function-name": "^7.27.1", + "@babel/plugin-transform-json-strings": "^7.27.1", + "@babel/plugin-transform-literals": "^7.27.1", + "@babel/plugin-transform-logical-assignment-operators": "^7.28.5", + "@babel/plugin-transform-member-expression-literals": "^7.27.1", + "@babel/plugin-transform-modules-amd": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.27.1", + "@babel/plugin-transform-modules-systemjs": "^7.28.5", + "@babel/plugin-transform-modules-umd": "^7.27.1", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-new-target": "^7.27.1", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.27.1", + "@babel/plugin-transform-numeric-separator": "^7.27.1", + "@babel/plugin-transform-object-rest-spread": "^7.28.4", + "@babel/plugin-transform-object-super": "^7.27.1", + "@babel/plugin-transform-optional-catch-binding": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.28.5", + "@babel/plugin-transform-parameters": "^7.27.7", + "@babel/plugin-transform-private-methods": "^7.27.1", + "@babel/plugin-transform-private-property-in-object": "^7.27.1", + "@babel/plugin-transform-property-literals": "^7.27.1", + "@babel/plugin-transform-regenerator": "^7.28.4", + "@babel/plugin-transform-regexp-modifiers": "^7.27.1", + "@babel/plugin-transform-reserved-words": "^7.27.1", + "@babel/plugin-transform-shorthand-properties": "^7.27.1", + "@babel/plugin-transform-spread": "^7.27.1", + "@babel/plugin-transform-sticky-regex": "^7.27.1", + "@babel/plugin-transform-template-literals": "^7.27.1", + "@babel/plugin-transform-typeof-symbol": "^7.27.1", + "@babel/plugin-transform-unicode-escapes": "^7.27.1", + "@babel/plugin-transform-unicode-property-regex": "^7.27.1", + "@babel/plugin-transform-unicode-regex": "^7.27.1", + "@babel/plugin-transform-unicode-sets-regex": "^7.27.1", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.14", + "babel-plugin-polyfill-corejs3": "^0.13.0", + "babel-plugin-polyfill-regenerator": "^0.6.5", + "core-js-compat": "^3.43.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.24.8", + "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.24.8.tgz", + "integrity": "sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA==", + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/parser": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.5.tgz", + "integrity": "sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.5" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/template/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.5.tgz", + "integrity": "sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.5", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.5", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.5", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.5.tgz", + "integrity": "sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.5", + "@babel/types": "^7.28.5", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/parser": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.5.tgz", + "integrity": "sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.5" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/types": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", + "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@babel/types": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", + "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmmirror.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@climblee/uv-ui": { + "version": "1.1.20", + "resolved": "https://registry.npmmirror.com/@climblee/uv-ui/-/uv-ui-1.1.20.tgz", + "integrity": "sha512-jkyesHJsPJkF4Nap9ZmG1/ibKlxXA5M8+ntqKXwwloIsYSYL5SOKb0gyPj17aBOU1PkJpmeiZ8PwnTolhK2/HA==", + "license": "ISC" + }, + "node_modules/@dcloudio/types": { + "version": "3.4.19", + "resolved": "https://registry.npmjs.org/@dcloudio/types/-/types-3.4.19.tgz", + "integrity": "sha512-1foayOFEAQ+jnQLt3ACsovCNjer3/fXn1I2VBpmDOzs2nk/n4UHwRLAxZV/RpxRqaGOPEvKrO/Pq+VI6sAmuRw==", + "license": "Apache-2.0" + }, + "node_modules/@dcloudio/uni-app": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app/-/uni-app-3.0.0-4080420251103001.tgz", + "integrity": "sha512-pzBWZiICfMmAxzBvAoXlTcDYoVNrV+ztsUyDouUxZJShpquQdVqHJqHxAlvGLR7c5gHCVtnKilCKwmu6zjNGrA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cloud": "3.0.0-4080420251103001", + "@dcloudio/uni-components": "3.0.0-4080420251103001", + "@dcloudio/uni-console": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-push": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-stat": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "@dcloudio/types": "3.4.19" + } + }, + "node_modules/@dcloudio/uni-app-harmony": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app-harmony/-/uni-app-harmony-3.0.0-4080420251103001.tgz", + "integrity": "sha512-WjCLttxacAoRywMl3hhA2LGAso8NqqgupXbTvoWRyYF11tuSw2duUM7n58mZ3A/cI4SQk/y/x9MzoFXlDiYzAw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-app-uts": "3.0.0-4080420251103001", + "@dcloudio/uni-app-vite": "3.0.0-4080420251103001", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "licia": "1.41.1", + "postcss-selector-parser": "6.1.2" + } + }, + "node_modules/@dcloudio/uni-app-plus": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app-plus/-/uni-app-plus-3.0.0-4080420251103001.tgz", + "integrity": "sha512-HbEpRIyJ4q6A+s+2WJsBvW/AlStyzBUHFkZbs/1vnTV5jjjvlT8e9Zb+2HptC95olZmD97QWcu31M5U/a6Z0PA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-app-uts": "3.0.0-4080420251103001", + "@dcloudio/uni-app-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-app-vue": "3.0.0-4080420251103001", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "licia": "1.41.1", + "postcss-selector-parser": "6.1.2" + } + }, + "node_modules/@dcloudio/uni-app-uts": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app-uts/-/uni-app-uts-3.0.0-4080420251103001.tgz", + "integrity": "sha512-YdKLXUY4Ix64ajRAv6JKiiSL5FZViDYuP83TXI5zaBSbw/fofzO1ZYRZKrQ2bZi51yH0Huq8u6MPvDIUQTLjJw==", + "license": "Apache-2.0", + "dependencies": { + "@babel/parser": "7.25.6", + "@babel/types": "7.25.6", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-console": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-nvue-styler": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@jridgewell/gen-mapping": "^0.3.3", + "@jridgewell/trace-mapping": "^0.3.19", + "@rollup/pluginutils": "5.1.0", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/consolidate": "1.0.0", + "@vue/shared": "3.4.21", + "debug": "4.3.7", + "es-module-lexer": "1.5.4", + "estree-walker": "2.0.2", + "fast-glob": "3.3.3", + "fs-extra": "10.1.0", + "magic-string": "0.30.11", + "picocolors": "1.1.0", + "source-map-js": "1.2.1", + "unimport": "4.1.1" + } + }, + "node_modules/@dcloudio/uni-app-uts/node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "license": "ISC" + }, + "node_modules/@dcloudio/uni-app-vite": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app-vite/-/uni-app-vite-3.0.0-4080420251103001.tgz", + "integrity": "sha512-hti+d0OoT/B69ApgKj8SEgi2rGownaHSxgfZQx1AYmWiRXsc/uWEzC7lakvsRLV3aPiUPD0aJNuI97IgMGBvnw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-nvue-styler": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@rollup/pluginutils": "5.1.0", + "@vitejs/plugin-vue": "5.2.4", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "picocolors": "1.1.0" + } + }, + "node_modules/@dcloudio/uni-app-vite/node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "license": "ISC" + }, + "node_modules/@dcloudio/uni-app-vue": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-app-vue/-/uni-app-vue-3.0.0-4080420251103001.tgz", + "integrity": "sha512-nK3ORcnBUQQ4BwqCvAMNHOVtBevfs+iwT31SZDtV0HikWq2fF1O6ae1bmMQJ3de3/fCLvu+3ZYCE773+D3S9aQ==", + "license": "Apache-2.0" + }, + "node_modules/@dcloudio/uni-automator": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-automator/-/uni-automator-3.0.0-4080420251103001.tgz", + "integrity": "sha512-zAHmFiZxbP3PmuTh5lz16NDThfrm4MTkwN80ZLn+xlJl5vNqX5yMfqfDwJrEBNY7Wycfh+qB3EvwWQ8CFMpAxw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "address": "^1.1.2", + "cross-env": "^7.0.3", + "debug": "4.3.7", + "default-gateway": "^6.0.3", + "fs-extra": "10.1.0", + "jsonc-parser": "3.3.1", + "licia": "1.41.1", + "merge": "2.1.1", + "qrcode-reader": "1.0.4", + "qrcode-terminal": "0.12.0", + "ws": "8.18.0" + }, + "peerDependencies": { + "jest": "27.0.4", + "jest-environment-node": "27.5.1" + } + }, + "node_modules/@dcloudio/uni-cli-shared": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-cli-shared/-/uni-cli-shared-3.0.0-4080420251103001.tgz", + "integrity": "sha512-CI9gfUSrneTJFp52CBpAwDE9vsaxdwg4uA7n2ehKB+WLXgP2zmLp+0QoSQoFYISYll6MnfQK6Pcl8Oj1c7mKUA==", + "license": "Apache-2.0", + "dependencies": { + "@ampproject/remapping": "^2.1.2", + "@babel/code-frame": "7.24.7", + "@babel/core": "7.25.2", + "@babel/parser": "7.25.6", + "@babel/types": "7.25.6", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@intlify/core-base": "9.1.9", + "@intlify/shared": "9.1.9", + "@intlify/vue-devtools": "9.1.9", + "@rollup/pluginutils": "5.1.0", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/compiler-ssr": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21", + "adm-zip": "0.5.16", + "autoprefixer": "10.4.20", + "base64url": "^3.0.1", + "chokidar": "3.6.0", + "compare-versions": "^3.6.0", + "debug": "4.3.7", + "entities": "^4.5.0", + "es-module-lexer": "1.5.4", + "esbuild": "0.20.2", + "estree-walker": "2.0.2", + "fast-glob": "3.3.3", + "fs-extra": "10.1.0", + "hash-sum": "2.0.0", + "isbinaryfile": "5.0.2", + "jsonc-parser": "3.3.1", + "lines-and-columns": "^2.0.4", + "magic-string": "0.30.11", + "merge": "2.1.1", + "mime": "3.0.0", + "module-alias": "2.2.3", + "os-locale-s-fix": "^1.0.8-fix-1", + "picocolors": "1.1.0", + "postcss-import": "^14.0.2", + "postcss-load-config": "^3.1.1", + "postcss-modules": "^4.3.0", + "postcss-selector-parser": "6.1.2", + "resolve": "1.22.8", + "source-map-js": "1.2.1", + "tapable": "^2.2.0", + "unimport": "4.1.1", + "unplugin-auto-import": "19.1.0", + "xregexp": "3.1.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + } + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "license": "ISC" + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/unplugin-auto-import": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/unplugin-auto-import/-/unplugin-auto-import-19.1.0.tgz", + "integrity": "sha512-B+TGBEBHqY9aR+7YfShfLujETOHstzpV+yaqgy5PkfV0QG7Py+TYMX7vJ9W4SrysHR+UzR+gzcx/nuZjmPeclA==", + "license": "MIT", + "dependencies": { + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "picomatch": "^4.0.2", + "unimport": "^4.1.1", + "unplugin": "^2.2.0", + "unplugin-utils": "^0.2.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@nuxt/kit": "^3.2.2", + "@vueuse/core": "*" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + }, + "@vueuse/core": { + "optional": true + } + } + }, + "node_modules/@dcloudio/uni-cli-shared/node_modules/unplugin-auto-import/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/@dcloudio/uni-cloud": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-cloud/-/uni-cloud-3.0.0-4080420251103001.tgz", + "integrity": "sha512-RQp+MkmrW/OxfaTbN1ohNnCcj7q55ub2F0pMAr5OCKHOV/sB4NhnwTKzB7C4B1Ha1oR8ulTAfmwUiBP89dSEmg==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21", + "fast-glob": "3.3.3" + } + }, + "node_modules/@dcloudio/uni-components": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-components/-/uni-components-3.0.0-4080420251103001.tgz", + "integrity": "sha512-YBsUWVx6OrJVR/59QU9H6QX+ulEB5GK+Fp3xZPU3NiVKczSAEsE2eBU3+xSYSyndUrP4BDqV1qhjt5cgpFJcsA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cloud": "3.0.0-4080420251103001", + "@dcloudio/uni-h5": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001" + } + }, + "node_modules/@dcloudio/uni-console": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-console/-/uni-console-3.0.0-4080420251103001.tgz", + "integrity": "sha512-bVdk8iVfld8mTUX8tB6keRm54htGMLOeJhuG1Cx8R8aOJfqTU8yuowf8ZIxIRsqs2dXV/5fHNGcbd/uFosDwDA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "fs-extra": "10.1.0" + } + }, + "node_modules/@dcloudio/uni-h5": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-h5/-/uni-h5-3.0.0-4080420251103001.tgz", + "integrity": "sha512-Xl4bR2znjF6QJ2IHPen5eQiISpSWFZZaXXpFa0IyTf93xSBcSvsg9Nq5izBYPxkH4YXD/hiVHdbgwyHciq/cog==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-h5-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-h5-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21", + "debug": "4.3.7", + "localstorage-polyfill": "^1.0.1", + "postcss-selector-parser": "6.1.2", + "safe-area-insets": "1.4.1", + "vue-router": "4.4.4", + "xmlhttprequest": "^1.8.0" + } + }, + "node_modules/@dcloudio/uni-h5-vite": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-h5-vite/-/uni-h5-vite-3.0.0-4080420251103001.tgz", + "integrity": "sha512-Z9wMRSI+v9aDVlvQYHPnv1gggYJk6WVMINvty/tg01bFXMkBs99TyjaT4XShPM46q8TVySd3lDRQOcY6cfUY1A==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@rollup/pluginutils": "5.1.0", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21", + "debug": "4.3.7", + "fs-extra": "10.1.0", + "mime": "3.0.0", + "module-alias": "2.2.3" + } + }, + "node_modules/@dcloudio/uni-h5-vue": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-h5-vue/-/uni-h5-vue-3.0.0-4080420251103001.tgz", + "integrity": "sha512-NbQCQFbnXIOKdek/ntwh1NslnmrZbuYRrfbe2ZVZOz8gXKfaR7GEO/GPPbTpI7mw3+iM906msksBh9HBzsD5TA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/server-renderer": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-i18n": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-i18n/-/uni-i18n-3.0.0-4080420251103001.tgz", + "integrity": "sha512-FHUQ8Ex0GbJsYxVZR1CrUoRc9Rm2OnfudCxpXIJSxpd1tp4sje8QhIeXwRIMEXcATc00hngTSgQrnuMuu5g72Q==", + "license": "Apache-2.0" + }, + "node_modules/@dcloudio/uni-mp-alipay": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-alipay/-/uni-mp-alipay-3.0.0-4080420251103001.tgz", + "integrity": "sha512-cAfDeDAHEMVjwa3YgiREEewbx5iSkEu2qS7aueCvWNwKaz9u9vw7OnE+D31lNTzcW/jD+ESTgeKEL0tSH+1nyg==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-baidu": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-baidu/-/uni-mp-baidu-3.0.0-4080420251103001.tgz", + "integrity": "sha512-n/BzswNgJpD+XvMTHd8N7SosmIm2UPkvbV3ncPzGOcoW6kiF3OOh6jxYCf4fgPzj6RNf/avOyQv2QS0RgdYy1w==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-app": "3.0.0-4080420251103001", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21", + "jimp": "0.10.3", + "licia": "1.41.1", + "qrcode-reader": "1.0.4", + "qrcode-terminal": "0.12.0", + "ws": "8.18.0" + } + }, + "node_modules/@dcloudio/uni-mp-compiler": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-compiler/-/uni-mp-compiler-3.0.0-4080420251103001.tgz", + "integrity": "sha512-tMyKHyUyNl/yy/6D7M66IVxJhkaieimL2F/ZprNP8fl1QWBZqBBxokxAVeFeGbX7f9Sd1Vi+HdAowQkMCNfdDw==", + "license": "Apache-2.0", + "dependencies": { + "@babel/generator": "7.25.6", + "@babel/parser": "7.25.6", + "@babel/types": "7.25.6", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/shared": "3.4.21", + "estree-walker": "2.0.2" + } + }, + "node_modules/@dcloudio/uni-mp-harmony": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-harmony/-/uni-mp-harmony-3.0.0-4080420251103001.tgz", + "integrity": "sha512-/TYd3wijGxRktHWLPFguDQvsIC+tvqzKK1rcQoo3hgnSbjJiKUXBMLbnH1RH9fZNqVDqVMX/t07KrlnLE7K6IA==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-quickapp-webview": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-jd": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-jd/-/uni-mp-jd-3.0.0-4080420251103001.tgz", + "integrity": "sha512-jkLglxCUX45juoZGfeejYs3Don1TdUqpZ1Jdm9DEjJ9QV0vS48fyVdnWzl423bJ5IvIDYTh5DTfGh0epRgxw6Q==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-kuaishou": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-kuaishou/-/uni-mp-kuaishou-3.0.0-4080420251103001.tgz", + "integrity": "sha512-7XH9qlfGlrPJr5nLReCVtVilH/W3dXxXUNwk2ISH8udTjRT1NB/LaBD9/TxvoY7k8+LplEFOpIq+PBKWImABPw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-lark": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-lark/-/uni-mp-lark-3.0.0-4080420251103001.tgz", + "integrity": "sha512-VFj/IWul1aaDZaZig+9IooPg3v3Cu+jaBvklfkP58c6wQa0PvnzE3j9j6WhfbhZ7CUW/rTmC7cxqNjTe2hwPcQ==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-qq": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-qq/-/uni-mp-qq-3.0.0-4080420251103001.tgz", + "integrity": "sha512-BBWL2wVTG1tv8PPmnaA/7Aae4grbPevEkapsYl6WAEkJDBv5AIissq/ltusEnXnYNKtU/ZB8GVnb//lLW3xa/A==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21", + "fs-extra": "10.1.0" + } + }, + "node_modules/@dcloudio/uni-mp-toutiao": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-toutiao/-/uni-mp-toutiao-3.0.0-4080420251103001.tgz", + "integrity": "sha512-iuEfUje5sEn72kFiyhb1tqu1Qx8iuC4cbGTbtyD7P6MSozwzURJgISoZiFsx1EKYIgn3w8ZHL+oh6hXgysP+Lw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-vite": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-vite/-/uni-mp-vite-3.0.0-4080420251103001.tgz", + "integrity": "sha512-/MQElW4cWS0nL1gofvpY0xV1XjAcF7zVrjYIFoiht1rEwW6ec64umKOI9YGMUKi+Gx8o2Qa4XTsqChlE/MzSFg==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-i18n": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/shared": "3.4.21", + "debug": "4.3.7" + } + }, + "node_modules/@dcloudio/uni-mp-vue": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-vue/-/uni-mp-vue-3.0.0-4080420251103001.tgz", + "integrity": "sha512-H1xF0jLrN3WnN/xCWKy+74bSt7AHa8grz3Nw75u+77vmkuIzxiGpauUQ4FG6l2zBtiW3EM+gfcfFUMunTlHM4A==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-mp-weixin": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-weixin/-/uni-mp-weixin-3.0.0-4080420251103001.tgz", + "integrity": "sha512-AoaXYxNngQBjNQ6hJJ4Jzz6KDDEjYeEUs8idhX+dujUO1JgBGpWbE9gP66VdaPNmD7+aZ/1tK1fZG6JjuHW+8w==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21", + "jimp": "0.10.3", + "licia": "1.41.1", + "qrcode-reader": "1.0.4", + "qrcode-terminal": "0.12.0", + "ws": "8.18.0" + } + }, + "node_modules/@dcloudio/uni-mp-xhs": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-mp-xhs/-/uni-mp-xhs-3.0.0-4080420251103001.tgz", + "integrity": "sha512-Fl+gUYLhDOllrDkwkaR1rnGs+rwIbHzSJUZ/s6epocNhod1QetpzS5FBXwDryf898czjA9FcHteJotALXNkBjQ==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-compiler": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-nvue-styler": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-nvue-styler/-/uni-nvue-styler-3.0.0-4080420251103001.tgz", + "integrity": "sha512-LXwlJyfusm/bIC2qceJuJm72XNQtRXt5REG/6p+mtEYum8l4qloFJ5za1TdQXRsECXPGz6rS8YqU8iDTe70vdw==", + "license": "Apache-2.0", + "dependencies": { + "parse-css-font": "^4.0.0", + "postcss": "8.4.45" + } + }, + "node_modules/@dcloudio/uni-push": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-push/-/uni-push-3.0.0-4080420251103001.tgz", + "integrity": "sha512-PZ766hB4OBRuHLNJ6umNNGo8WljC67LMFgpD7ORHa6+SmS+JfncMqXufWGsuh/Q/1/QPqe4Pcm8w1zG5Bke1vw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001" + } + }, + "node_modules/@dcloudio/uni-quickapp-webview": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-quickapp-webview/-/uni-quickapp-webview-3.0.0-4080420251103001.tgz", + "integrity": "sha512-/hn2zxUnUQOkkj37QqsQL5f7ffQ8EBm/27FrO8lYx7wGyRaehcuXhJ/vHWPRpJv9tq4Cl8w0iidrVsYPchu2pw==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vite": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-vue": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-shared": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-shared/-/uni-shared-3.0.0-4080420251103001.tgz", + "integrity": "sha512-+EfZmMVToYOaKBkzXix/LMGosZaFiFUyZ1vnGg3giLEcr5r8EYQ/NQ3GfthcD6pC9A114imv5Az+4HeKhcKZiw==", + "license": "Apache-2.0", + "dependencies": { + "@vue/shared": "3.4.21" + } + }, + "node_modules/@dcloudio/uni-stacktracey": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-stacktracey/-/uni-stacktracey-3.0.0-4080420251103001.tgz", + "integrity": "sha512-coPXA+6PbbSWZx8NDCyNnkSfUx9FusVB6lhxZ+aYKYJkbl/28pRJAM9oCeGV3sZHpjCYyOZaBzxv0kQ0/O7W8A==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/@dcloudio/uni-stat": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/uni-stat/-/uni-stat-3.0.0-4080420251103001.tgz", + "integrity": "sha512-CCADC5plW/etPbhORExii2pJ6m337YeHB+V1R7w6JBmFdGqqYj7+3Vq24wWSSECc4hpiZFLk3dNzu5/NNw2p1Q==", + "license": "Apache-2.0", + "dependencies": { + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "debug": "4.3.7" + } + }, + "node_modules/@dcloudio/vite-plugin-uni": { + "version": "3.0.0-4080420251103001", + "resolved": "https://registry.npmjs.org/@dcloudio/vite-plugin-uni/-/vite-plugin-uni-3.0.0-4080420251103001.tgz", + "integrity": "sha512-r9UOGDrHqvOV2p9IW+4wql8BJJjKgPRWH9Y0rkztp7GjvtUqCkkoVwlh5sJXYwqPNZL5JWPuj0Cl+ZtTg1njyw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@babel/core": "7.25.2", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-transform-typescript": "^7.23.3", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-nvue-styler": "3.0.0-4080420251103001", + "@dcloudio/uni-shared": "3.0.0-4080420251103001", + "@rollup/pluginutils": "5.1.0", + "@vitejs/plugin-legacy": "5.3.2", + "@vitejs/plugin-vue": "5.2.4", + "@vitejs/plugin-vue-jsx": "3.1.0", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/shared": "3.4.21", + "cac": "6.7.9", + "debug": "4.3.7", + "estree-walker": "2.0.2", + "express": "4.20.0", + "fast-glob": "3.3.3", + "fs-extra": "10.1.0", + "hash-sum": "2.0.0", + "jsonc-parser": "3.3.1", + "magic-string": "0.30.11", + "picocolors": "1.1.0", + "terser": "^5.4.0", + "unplugin-auto-import": "19.1.0" + }, + "bin": { + "uni": "bin/uni.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "5.2.8" + } + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "dev": true, + "license": "ISC" + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/unplugin-auto-import": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/unplugin-auto-import/-/unplugin-auto-import-19.1.0.tgz", + "integrity": "sha512-B+TGBEBHqY9aR+7YfShfLujETOHstzpV+yaqgy5PkfV0QG7Py+TYMX7vJ9W4SrysHR+UzR+gzcx/nuZjmPeclA==", + "dev": true, + "license": "MIT", + "dependencies": { + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "picomatch": "^4.0.2", + "unimport": "^4.1.1", + "unplugin": "^2.2.0", + "unplugin-utils": "^0.2.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@nuxt/kit": "^3.2.2", + "@vueuse/core": "*" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + }, + "@vueuse/core": { + "optional": true + } + } + }, + "node_modules/@dcloudio/vite-plugin-uni/node_modules/unplugin-auto-import/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@intlify/core-base": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/core-base/-/core-base-9.1.9.tgz", + "integrity": "sha512-x5T0p/Ja0S8hs5xs+ImKyYckVkL4CzcEXykVYYV6rcbXxJTe2o58IquSqX9bdncVKbRZP7GlBU1EcRaQEEJ+vw==", + "license": "MIT", + "dependencies": { + "@intlify/devtools-if": "9.1.9", + "@intlify/message-compiler": "9.1.9", + "@intlify/message-resolver": "9.1.9", + "@intlify/runtime": "9.1.9", + "@intlify/shared": "9.1.9", + "@intlify/vue-devtools": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/devtools-if": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/devtools-if/-/devtools-if-9.1.9.tgz", + "integrity": "sha512-oKSMKjttG3Ut/1UGEZjSdghuP3fwA15zpDPcjkf/1FjlOIm6uIBGMNS5jXzsZy593u+P/YcnrZD6cD3IVFz9vQ==", + "license": "MIT", + "dependencies": { + "@intlify/shared": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/message-compiler": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/message-compiler/-/message-compiler-9.1.9.tgz", + "integrity": "sha512-6YgCMF46Xd0IH2hMRLCssZI3gFG4aywidoWQ3QP4RGYQXQYYfFC54DxhSgfIPpVoPLQ+4AD29eoYmhiHZ+qLFQ==", + "license": "MIT", + "dependencies": { + "@intlify/message-resolver": "9.1.9", + "@intlify/shared": "9.1.9", + "source-map": "0.6.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/message-resolver": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/message-resolver/-/message-resolver-9.1.9.tgz", + "integrity": "sha512-Lx/DBpigeK0sz2BBbzv5mu9/dAlt98HxwbG7xLawC3O2xMF9MNWU5FtOziwYG6TDIjNq0O/3ZbOJAxwITIWXEA==", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/runtime": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/runtime/-/runtime-9.1.9.tgz", + "integrity": "sha512-XgPw8+UlHCiie3fI41HPVa/VDJb3/aSH7bLhY1hJvlvNV713PFtb4p4Jo+rlE0gAoMsMCGcsiT982fImolSltg==", + "license": "MIT", + "dependencies": { + "@intlify/message-compiler": "9.1.9", + "@intlify/message-resolver": "9.1.9", + "@intlify/shared": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/shared": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/shared/-/shared-9.1.9.tgz", + "integrity": "sha512-xKGM1d0EAxdDFCWedcYXOm6V5Pfw/TMudd6/qCdEb4tv0hk9EKeg7lwQF1azE0dP2phvx0yXxrt7UQK+IZjNdw==", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@intlify/vue-devtools": { + "version": "9.1.9", + "resolved": "https://registry.npmmirror.com/@intlify/vue-devtools/-/vue-devtools-9.1.9.tgz", + "integrity": "sha512-YPehH9uL4vZcGXky4Ev5qQIITnHKIvsD2GKGXgqf+05osMUI6WSEQHaN9USRa318Rs8RyyPCiDfmA0hRu3k7og==", + "license": "MIT", + "dependencies": { + "@intlify/message-resolver": "9.1.9", + "@intlify/runtime": "9.1.9", + "@intlify/shared": "9.1.9" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmmirror.com/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/console/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/console/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/console/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/core/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/core/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/reporters/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/transform/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/transform/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/transform/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/transform/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jest/types/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jimp/bmp": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/bmp/-/bmp-0.10.3.tgz", + "integrity": "sha512-keMOc5woiDmONXsB/6aXLR4Z5Q+v8lFq3EY2rcj2FmstbDMhRuGbmcBxlEgOqfRjwvtf/wOtJ3Of37oAWtVfLg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "bmp-js": "^0.1.0", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/core": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/core/-/core-0.10.3.tgz", + "integrity": "sha512-Gd5IpL3U2bFIO57Fh/OA3HCpWm4uW/pU01E75rI03BXfTdz3T+J7TwvyG1XaqsQ7/DSlS99GXtLQPlfFIe28UA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "any-base": "^1.1.0", + "buffer": "^5.2.0", + "core-js": "^3.4.1", + "exif-parser": "^0.1.12", + "file-type": "^9.0.0", + "load-bmfont": "^1.3.1", + "mkdirp": "^0.5.1", + "phin": "^2.9.1", + "pixelmatch": "^4.0.2", + "tinycolor2": "^1.4.1" + } + }, + "node_modules/@jimp/custom": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/custom/-/custom-0.10.3.tgz", + "integrity": "sha512-nZmSI+jwTi5IRyNLbKSXQovoeqsw+D0Jn0SxW08wYQvdkiWA8bTlDQFgQ7HVwCAKBm8oKkDB/ZEo9qvHJ+1gAQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/core": "^0.10.3", + "core-js": "^3.4.1" + } + }, + "node_modules/@jimp/gif": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/gif/-/gif-0.10.3.tgz", + "integrity": "sha512-vjlRodSfz1CrUvvrnUuD/DsLK1GHB/yDZXHthVdZu23zYJIW7/WrIiD1IgQ5wOMV7NocfrvPn2iqUfBP81/WWA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "omggif": "^1.0.9" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/jpeg": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/jpeg/-/jpeg-0.10.3.tgz", + "integrity": "sha512-AAANwgUZOt6f6P7LZxY9lyJ9xclqutYJlsxt3JbriXUGJgrrFAIkcKcqv1nObgmQASSAQKYaMV9KdHjMlWFKlQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "jpeg-js": "^0.3.4" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-blit": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-blit/-/plugin-blit-0.10.3.tgz", + "integrity": "sha512-5zlKlCfx4JWw9qUVC7GI4DzXyxDWyFvgZLaoGFoT00mlXlN75SarlDwc9iZ/2e2kp4bJWxz3cGgG4G/WXrbg3Q==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-blur": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-blur/-/plugin-blur-0.10.3.tgz", + "integrity": "sha512-cTOK3rjh1Yjh23jSfA6EHCHjsPJDEGLC8K2y9gM7dnTUK1y9NNmkFS23uHpyjgsWFIoH9oRh2SpEs3INjCpZhQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-circle": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-circle/-/plugin-circle-0.10.3.tgz", + "integrity": "sha512-51GAPIVelqAcfuUpaM5JWJ0iWl4vEjNXB7p4P7SX5udugK5bxXUjO6KA2qgWmdpHuCKtoNgkzWU9fNSuYp7tCA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-color": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-color/-/plugin-color-0.10.3.tgz", + "integrity": "sha512-RgeHUElmlTH7vpI4WyQrz6u59spiKfVQbsG/XUzfWGamFSixa24ZDwX/yV/Ts+eNaz7pZeIuv533qmKPvw2ujg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "tinycolor2": "^1.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-contain": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-contain/-/plugin-contain-0.10.3.tgz", + "integrity": "sha512-bYJKW9dqzcB0Ihc6u7jSyKa3juStzbLs2LFr6fu8TzA2WkMS/R8h+ddkiO36+F9ILTWHP0CIA3HFe5OdOGcigw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5", + "@jimp/plugin-scale": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-cover": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-cover/-/plugin-cover-0.10.3.tgz", + "integrity": "sha512-pOxu0cM0BRPzdV468n4dMocJXoMbTnARDY/EpC3ZW15SpMuc/dr1KhWQHgoQX5kVW1Wt8zgqREAJJCQ5KuPKDA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-crop": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5", + "@jimp/plugin-scale": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-crop": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-crop/-/plugin-crop-0.10.3.tgz", + "integrity": "sha512-nB7HgOjjl9PgdHr076xZ3Sr6qHYzeBYBs9qvs3tfEEUeYMNnvzgCCGtUl6eMakazZFCMk3mhKmcB9zQuHFOvkg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-displace": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-displace/-/plugin-displace-0.10.3.tgz", + "integrity": "sha512-8t3fVKCH5IVqI4lewe4lFFjpxxr69SQCz5/tlpDLQZsrNScNJivHdQ09zljTrVTCSgeCqQJIKgH2Q7Sk/pAZ0w==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-dither": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-dither/-/plugin-dither-0.10.3.tgz", + "integrity": "sha512-JCX/oNSnEg1kGQ8ffZ66bEgQOLCY3Rn+lrd6v1jjLy/mn9YVZTMsxLtGCXpiCDC2wG/KTmi4862ysmP9do9dAQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-fisheye": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-fisheye/-/plugin-fisheye-0.10.3.tgz", + "integrity": "sha512-RRZb1wqe+xdocGcFtj2xHU7sF7xmEZmIa6BmrfSchjyA2b32TGPWKnP3qyj7p6LWEsXn+19hRYbjfyzyebPElQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-flip": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-flip/-/plugin-flip-0.10.3.tgz", + "integrity": "sha512-0epbi8XEzp0wmSjoW9IB0iMu0yNF17aZOxLdURCN3Zr+8nWPs5VNIMqSVa1Y62GSyiMDpVpKF/ITiXre+EqrPg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-rotate": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-gaussian": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-gaussian/-/plugin-gaussian-0.10.3.tgz", + "integrity": "sha512-25eHlFbHUDnMMGpgRBBeQ2AMI4wsqCg46sue0KklI+c2BaZ+dGXmJA5uT8RTOrt64/K9Wz5E+2n7eBnny4dfpQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-invert": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-invert/-/plugin-invert-0.10.3.tgz", + "integrity": "sha512-effYSApWY/FbtlzqsKXlTLkgloKUiHBKjkQnqh5RL4oQxh/33j6aX+HFdDyQKtsXb8CMd4xd7wyiD2YYabTa0g==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-mask": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-mask/-/plugin-mask-0.10.3.tgz", + "integrity": "sha512-twrg8q8TIhM9Z6Jcu9/5f+OCAPaECb0eKrrbbIajJqJ3bCUlj5zbfgIhiQIzjPJ6KjpnFPSqHQfHkU1Vvk/nVw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-normalize": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-normalize/-/plugin-normalize-0.10.3.tgz", + "integrity": "sha512-xkb5eZI/mMlbwKkDN79+1/t/+DBo8bBXZUMsT4gkFgMRKNRZ6NQPxlv1d3QpRzlocsl6UMxrHnhgnXdLAcgrXw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-print": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-print/-/plugin-print-0.10.3.tgz", + "integrity": "sha512-wjRiI6yjXsAgMe6kVjizP+RgleUCLkH256dskjoNvJzmzbEfO7xQw9g6M02VET+emnbY0CO83IkrGm2q43VRyg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "load-bmfont": "^1.4.0" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-resize": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-resize/-/plugin-resize-0.10.3.tgz", + "integrity": "sha512-rf8YmEB1d7Sg+g4LpqF0Mp+dfXfb6JFJkwlAIWPUOR7lGsPWALavEwTW91c0etEdnp0+JB9AFpy6zqq7Lwkq6w==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-rotate": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-rotate/-/plugin-rotate-0.10.3.tgz", + "integrity": "sha512-YXLlRjm18fkW9MOHUaVAxWjvgZM851ofOipytz5FyKp4KZWDLk+dZK1JNmVmK7MyVmAzZ5jsgSLhIgj+GgN0Eg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5", + "@jimp/plugin-crop": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-scale": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-scale/-/plugin-scale-0.10.3.tgz", + "integrity": "sha512-5DXD7x7WVcX1gUgnlFXQa8F+Q3ThRYwJm+aesgrYvDOY+xzRoRSdQvhmdd4JEEue3lyX44DvBSgCIHPtGcEPaw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-shadow": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-shadow/-/plugin-shadow-0.10.3.tgz", + "integrity": "sha512-/nkFXpt2zVcdP4ETdkAUL0fSzyrC5ZFxdcphbYBodqD7fXNqChS/Un1eD4xCXWEpW8cnG9dixZgQgStjywH0Mg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blur": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-threshold": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugin-threshold/-/plugin-threshold-0.10.3.tgz", + "integrity": "sha512-Dzh0Yq2wXP2SOnxcbbiyA4LJ2luwrdf1MghNIt9H+NX7B+IWw/N8qA2GuSm9n4BPGSLluuhdAWJqHcTiREriVA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-color": ">=0.8.0", + "@jimp/plugin-resize": ">=0.8.0" + } + }, + "node_modules/@jimp/plugins": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/plugins/-/plugins-0.10.3.tgz", + "integrity": "sha512-jTT3/7hOScf0EIKiAXmxwayHhryhc1wWuIe3FrchjDjr9wgIGNN2a7XwCgPl3fML17DXK1x8EzDneCdh261bkw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/plugin-blit": "^0.10.3", + "@jimp/plugin-blur": "^0.10.3", + "@jimp/plugin-circle": "^0.10.3", + "@jimp/plugin-color": "^0.10.3", + "@jimp/plugin-contain": "^0.10.3", + "@jimp/plugin-cover": "^0.10.3", + "@jimp/plugin-crop": "^0.10.3", + "@jimp/plugin-displace": "^0.10.3", + "@jimp/plugin-dither": "^0.10.3", + "@jimp/plugin-fisheye": "^0.10.3", + "@jimp/plugin-flip": "^0.10.3", + "@jimp/plugin-gaussian": "^0.10.3", + "@jimp/plugin-invert": "^0.10.3", + "@jimp/plugin-mask": "^0.10.3", + "@jimp/plugin-normalize": "^0.10.3", + "@jimp/plugin-print": "^0.10.3", + "@jimp/plugin-resize": "^0.10.3", + "@jimp/plugin-rotate": "^0.10.3", + "@jimp/plugin-scale": "^0.10.3", + "@jimp/plugin-shadow": "^0.10.3", + "@jimp/plugin-threshold": "^0.10.3", + "core-js": "^3.4.1", + "timm": "^1.6.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/png": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/png/-/png-0.10.3.tgz", + "integrity": "sha512-YKqk/dkl+nGZxSYIDQrqhmaP8tC3IK8H7dFPnnzFVvbhDnyYunqBZZO3SaZUKTichClRw8k/CjBhbc+hifSGWg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.10.3", + "core-js": "^3.4.1", + "pngjs": "^3.3.3" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/tiff": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/tiff/-/tiff-0.10.3.tgz", + "integrity": "sha512-7EsJzZ5Y/EtinkBGuwX3Bi4S+zgbKouxjt9c82VJTRJOQgLWsE/RHqcyRCOQBhHAZ9QexYmDz34medfLKdoX0g==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "core-js": "^3.4.1", + "utif": "^2.0.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/types": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/types/-/types-0.10.3.tgz", + "integrity": "sha512-XGmBakiHZqseSWr/puGN+CHzx0IKBSpsKlmEmsNV96HKDiP6eu8NSnwdGCEq2mmIHe0JNcg1hqg59hpwtQ7Tiw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/bmp": "^0.10.3", + "@jimp/gif": "^0.10.3", + "@jimp/jpeg": "^0.10.3", + "@jimp/png": "^0.10.3", + "@jimp/tiff": "^0.10.3", + "core-js": "^3.4.1", + "timm": "^1.6.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/utils": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/@jimp/utils/-/utils-0.10.3.tgz", + "integrity": "sha512-VcSlQhkil4ReYmg1KkN+WqHyYfZ2XfZxDsKAHSfST1GEz/RQHxKZbX+KhFKtKflnL0F4e6DlNQj3vznMNXCR2w==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "core-js": "^3.4.1", + "regenerator-runtime": "^0.13.3" + } + }, + "node_modules/@jimp/utils/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "license": "MIT" + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.1.0.tgz", + "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.19.0.tgz", + "integrity": "sha512-JlPfZ/C7yn5S5p0yKk7uhHTTnFlvTgLetl2VxqE518QgyM7C9bSfFTYvB/Q/ftkq0RIPY4ySxTz+/wKJ/dXC0w==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.19.0.tgz", + "integrity": "sha512-RDxUSY8D1tWYfn00DDi5myxKgOk6RvWPxhmWexcICt/MEC6yEMr4HNCu1sXXYLw8iAsg0D44NuU+qNq7zVWCrw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.19.0.tgz", + "integrity": "sha512-emvKHL4B15x6nlNTBMtIaC9tLPRpeA5jMvRLXVbl/W9Ie7HhkrE7KQjvgS9uxgatL1HmHWDXk5TTS4IaNJxbAA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.19.0.tgz", + "integrity": "sha512-fO28cWA1dC57qCd+D0rfLC4VPbh6EOJXrreBmFLWPGI9dpMlER2YwSPZzSGfq11XgcEpPukPTfEVFtw2q2nYJg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.19.0.tgz", + "integrity": "sha512-2Rn36Ubxdv32NUcfm0wB1tgKqkQuft00PtM23VqLuCUR4N5jcNWDoV5iBC9jeGdgS38WK66ElncprqgMUOyomw==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.19.0.tgz", + "integrity": "sha512-gJuzIVdq/X1ZA2bHeCGCISe0VWqCoNT8BvkQ+BfsixXwTOndhtLUpOg0A1Fcx/+eA6ei6rMBzlOz4JzmiDw7JQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.19.0.tgz", + "integrity": "sha512-0EkX2HYPkSADo9cfeGFoQ7R0/wTKb7q6DdwI4Yn/ULFE1wuRRCHybxpl2goQrx4c/yzK3I8OlgtBu4xvted0ug==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.19.0.tgz", + "integrity": "sha512-GlIQRj9px52ISomIOEUq/IojLZqzkvRpdP3cLgIE1wUWaiU5Takwlzpz002q0Nxxr1y2ZgxC2obWxjr13lvxNQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.19.0.tgz", + "integrity": "sha512-N6cFJzssruDLUOKfEKeovCKiHcdwVYOT1Hs6dovDQ61+Y9n3Ek4zXvtghPPelt6U0AH4aDGnDLb83uiJMkWYzQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.19.0.tgz", + "integrity": "sha512-2DnD3mkS2uuam/alF+I7M84koGwvn3ZVD7uG+LEWpyzo/bq8+kKnus2EVCkcvh6PlNB8QPNFOz6fWd5N8o1CYg==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.19.0.tgz", + "integrity": "sha512-D6pkaF7OpE7lzlTOFCB2m3Ngzu2ykw40Nka9WmKGUOTS3xcIieHe82slQlNq69sVB04ch73thKYIWz/Ian8DUA==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.19.0.tgz", + "integrity": "sha512-HBndjQLP8OsdJNSxpNIN0einbDmRFg9+UQeZV1eiYupIRuZsDEoeGU43NQsS34Pp166DtwQOnpcbV/zQxM+rWA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.19.0.tgz", + "integrity": "sha512-HxfbvfCKJe/RMYJJn0a12eiOI9OOtAUF4G6ozrFUK95BNyoJaSiBjIOHjZskTUffUrB84IPKkFG9H9nEvJGW6A==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.19.0.tgz", + "integrity": "sha512-HxDMKIhmcguGTiP5TsLNolwBUK3nGGUEoV/BO9ldUBoMLBssvh4J0X8pf11i1fTV7WShWItB1bKAKjX4RQeYmg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.19.0.tgz", + "integrity": "sha512-xItlIAZZaiG/u0wooGzRsx11rokP4qyc/79LkAOdznGRAbOFc+SfEdfUOszG1odsHNgwippUJavag/+W/Etc6Q==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.19.0.tgz", + "integrity": "sha512-xNo5fV5ycvCCKqiZcpB65VMR11NJB+StnxHz20jdqRAktfdfzhgjTiJ2doTDQE/7dqGaV5I7ZGqKpgph6lCIag==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmmirror.com/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmmirror.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmmirror.com/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmmirror.com/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmmirror.com/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmmirror.com/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmmirror.com/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "dev": true, + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmmirror.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "license": "MIT" + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmmirror.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.14.11", + "resolved": "https://registry.npmmirror.com/@types/node/-/node-20.14.11.tgz", + "integrity": "sha512-kprQpL8MMeszbz6ojB5/tU8PLN4kesnN8Gjzw349rDlNgsSzg90lAVj3llK99Dh7JON+t9AuscPPFW6mPbTnSA==", + "devOptional": true, + "license": "MIT", + "peer": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmmirror.com/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/yargs": { + "version": "16.0.9", + "resolved": "https://registry.npmmirror.com/@types/yargs/-/yargs-16.0.9.tgz", + "integrity": "sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmmirror.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@vitejs/plugin-legacy": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-legacy/-/plugin-legacy-5.3.2.tgz", + "integrity": "sha512-8moCOrIMaZ/Rjln0Q6GsH6s8fAt1JOI3k8nmfX4tXUxE5KAExVctSyOBk+A25GClsdSWqIk2yaUthH3KJ2X4tg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/preset-env": "^7.23.9", + "browserslist": "^4.23.0", + "browserslist-to-esbuild": "^2.1.1", + "core-js": "^3.36.0", + "magic-string": "^0.30.7", + "regenerator-runtime": "^0.14.1", + "systemjs": "^6.14.3" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "peerDependencies": { + "terser": "^5.4.0", + "vite": "^5.0.0" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.4.tgz", + "integrity": "sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA==", + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vitejs/plugin-vue-jsx": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-3.1.0.tgz", + "integrity": "sha512-w9M6F3LSEU5kszVb9An2/MmXNxocAnUb3WhRr8bHlimhDrXNt6n6D2nJQR3UXpGlZHh/EsgouOHCsM8V3Ln+WA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.23.3", + "@babel/plugin-transform-typescript": "^7.23.3", + "@vue/babel-plugin-jsx": "^1.1.5" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.0.0 || ^5.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@volar/language-core": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/language-core/-/language-core-1.11.1.tgz", + "integrity": "sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/source-map": "1.11.1" + } + }, + "node_modules/@volar/source-map": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/source-map/-/source-map-1.11.1.tgz", + "integrity": "sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "muggle-string": "^0.3.1" + } + }, + "node_modules/@volar/typescript": { + "version": "1.11.1", + "resolved": "https://registry.npmmirror.com/@volar/typescript/-/typescript-1.11.1.tgz", + "integrity": "sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "1.11.1", + "path-browserify": "^1.0.1" + } + }, + "node_modules/@vue/babel-helper-vue-transform-on": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.2.2.tgz", + "integrity": "sha512-nOttamHUR3YzdEqdM/XXDyCSdxMA9VizUKoroLX6yTyRtggzQMHXcmwh8a7ZErcJttIBIc9s68a1B8GZ+Dmvsw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@vue/babel-plugin-jsx": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.2.2.tgz", + "integrity": "sha512-nYTkZUVTu4nhP199UoORePsql0l+wj7v/oyQjtThUVhJl1U+6qHuoVhIvR3bf7eVKjbCK+Cs2AWd7mi9Mpz9rA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "~7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.23.3", + "@babel/template": "^7.23.9", + "@babel/traverse": "^7.23.9", + "@babel/types": "^7.23.9", + "@vue/babel-helper-vue-transform-on": "1.2.2", + "@vue/babel-plugin-resolve-type": "1.2.2", + "camelcase": "^6.3.0", + "html-tags": "^3.3.1", + "svg-tags": "^1.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + } + } + }, + "node_modules/@vue/babel-plugin-jsx/node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@vue/babel-plugin-resolve-type": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/@vue/babel-plugin-resolve-type/-/babel-plugin-resolve-type-1.2.2.tgz", + "integrity": "sha512-EntyroPwNg5IPVdUJupqs0CFzuf6lUrVvCspmv2J1FITLeGnUCuoGNNk78dgCusxEiYj6RMkTJflGSxk5aIC4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/helper-module-imports": "~7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/parser": "^7.23.9", + "@vue/compiler-sfc": "^3.4.15" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@vue/babel-plugin-resolve-type/node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.4.21.tgz", + "integrity": "sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.23.9", + "@vue/shared": "3.4.21", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.4.21.tgz", + "integrity": "sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==", + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.4.21.tgz", + "integrity": "sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.23.9", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.7", + "postcss": "^8.4.35", + "source-map-js": "^1.0.2" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.4.21.tgz", + "integrity": "sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/consolidate": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@vue/consolidate/-/consolidate-1.0.0.tgz", + "integrity": "sha512-oTyUE+QHIzLw2PpV14GD/c7EohDyP64xCniWTcqcEmTd699eFqTIwOmtDYjcO1j3QgdXoJEoWv1/cCdLrRoOfg==", + "license": "MIT", + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", + "license": "MIT" + }, + "node_modules/@vue/language-core": { + "version": "1.8.27", + "resolved": "https://registry.npmmirror.com/@vue/language-core/-/language-core-1.8.27.tgz", + "integrity": "sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "~1.11.1", + "@volar/source-map": "~1.11.1", + "@vue/compiler-dom": "^3.3.0", + "@vue/shared": "^3.3.0", + "computeds": "^0.0.1", + "minimatch": "^9.0.3", + "muggle-string": "^0.3.1", + "path-browserify": "^1.0.1", + "vue-template-compiler": "^2.7.14" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/language-core/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@vue/language-core/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.23", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.23.tgz", + "integrity": "sha512-ji5w0qvrPyBmBx5Ldv4QGNsw0phgRreEvjt0iUf1lei2Sm8//9ZAi78uM2ZjsT5gk0YZilLuoRCIMvtuZlHMJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/shared": "3.5.23" + } + }, + "node_modules/@vue/reactivity/node_modules/@vue/shared": { + "version": "3.5.23", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.23.tgz", + "integrity": "sha512-0YZ1DYuC5o/YJPf6pFdt2KYxVGDxkDbH/1NYJnVJWUkzr8ituBEmFVQRNX2gCaAsFEjEDnLkWpgqlZA7htgS/g==", + "dev": true, + "license": "MIT" + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.23", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.23.tgz", + "integrity": "sha512-LMB0S6/G7mFJcpQeQaZrbsthFbWrIX8FVTzu5x9U3Ec8YW5MY1CGAnBBHNj+TPOBu3pIbtPpjrXtcaN04X+aBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.23", + "@vue/shared": "3.5.23" + } + }, + "node_modules/@vue/runtime-core/node_modules/@vue/shared": { + "version": "3.5.23", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.23.tgz", + "integrity": "sha512-0YZ1DYuC5o/YJPf6pFdt2KYxVGDxkDbH/1NYJnVJWUkzr8ituBEmFVQRNX2gCaAsFEjEDnLkWpgqlZA7htgS/g==", + "dev": true, + "license": "MIT" + }, + "node_modules/@vue/runtime-dom": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.21.tgz", + "integrity": "sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==", + "license": "MIT", + "dependencies": { + "@vue/runtime-core": "3.4.21", + "@vue/shared": "3.4.21", + "csstype": "^3.1.3" + } + }, + "node_modules/@vue/runtime-dom/node_modules/@vue/reactivity": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.21.tgz", + "integrity": "sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==", + "license": "MIT", + "dependencies": { + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/runtime-dom/node_modules/@vue/runtime-core": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.21.tgz", + "integrity": "sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.4.21", + "@vue/shared": "3.4.21" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.21.tgz", + "integrity": "sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==", + "license": "MIT", + "dependencies": { + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "vue": "3.4.21" + } + }, + "node_modules/@vue/shared": { + "version": "3.4.21", + "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.4.21.tgz", + "integrity": "sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==", + "license": "MIT" + }, + "node_modules/@vue/tsconfig": { + "version": "0.1.3", + "resolved": "https://registry.npmmirror.com/@vue/tsconfig/-/tsconfig-0.1.3.tgz", + "integrity": "sha512-kQVsh8yyWPvHpb8gIc9l/HIDiiVUy1amynLNpCy8p+FoCiZXCo6fQos5/097MmnNZc9AtseDsCrfkhqCrJ8Olg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.13.2", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.14.1", + "resolved": "https://registry.npmmirror.com/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true, + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmmirror.com/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true, + "peer": true + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true, + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmmirror.com/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/address": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/address/-/address-1.2.2.tgz", + "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", + "license": "MIT", + "engines": { + "node": ">=12.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmmirror.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/any-base": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/any-base/-/any-base-1.1.0.tgz", + "integrity": "sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==", + "license": "MIT" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmmirror.com/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/autoprefixer": { + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/babel-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/babel-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmmirror.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.14.tgz", + "integrity": "sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.7", + "@babel/helper-define-polyfill-provider": "^0.6.5", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.13.0.tgz", + "integrity": "sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.5", + "core-js-compat": "^3.43.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.5.tgz", + "integrity": "sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.5" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.8.25", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.25.tgz", + "integrity": "sha512-2NovHVesVF5TXefsGX1yzx1xgr7+m9JQenvz6FQY3qd+YXkKkYiv+vTCc7OriP9mcDZpTC5mAOYN4ocd29+erA==", + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.js" + } + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmmirror.com/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bmp-js": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/bmp-js/-/bmp-js-0.1.0.tgz", + "integrity": "sha512-vHdS19CnY3hwiNdkaqk93DvjVLfbEcI8mys4UjuWrlX1haDmroo8o4xCzh4wD6DGV6HxRCyauwhHRqMTfERtjw==", + "license": "MIT" + }, + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "dev": true, + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/body-parser/node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true + }, + "node_modules/browserslist": { + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.27.0.tgz", + "integrity": "sha512-AXVQwdhot1eqLihwasPElhX2tAZiBjWdJ9i/Zcj2S6QYIjkx62OKSfnobkriB81C3l4w0rVy3Nt4jaTBltYEpw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.8.19", + "caniuse-lite": "^1.0.30001751", + "electron-to-chromium": "^1.5.238", + "node-releases": "^2.0.26", + "update-browserslist-db": "^1.1.4" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/browserslist-to-esbuild": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/browserslist-to-esbuild/-/browserslist-to-esbuild-2.1.1.tgz", + "integrity": "sha512-KN+mty6C3e9AN8Z5dI1xeN15ExcRNeISoC3g7V0Kax/MMF9MSoYA2G7lkTTcVUFntiEjkpI0HNgqJC1NjdyNUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "meow": "^13.0.0" + }, + "bin": { + "browserslist-to-esbuild": "cli/index.js" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "browserslist": "*" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-equal": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/buffer-equal/-/buffer-equal-0.0.1.tgz", + "integrity": "sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cac": { + "version": "6.7.9", + "resolved": "https://registry.npmmirror.com/cac/-/cac-6.7.9.tgz", + "integrity": "sha512-XN5qEpfNQCJ8jRaZgitSkkukjMRCGio+X3Ks5KUbGGlPbV+pSem1l9VuzooCBXOiMFshUZgyYqg6rgN8rjkb/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001753", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001753.tgz", + "integrity": "sha512-Bj5H35MD/ebaOV4iDLqPEtiliTN29qkGtEHCwawWn4cYm+bPJM2NsaP30vtZcnERClMzp52J4+aw2UNbK4o+zw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/centra": { + "version": "2.7.0", + "resolved": "https://registry.npmmirror.com/centra/-/centra-2.7.0.tgz", + "integrity": "sha512-PbFMgMSrmgx6uxCdm57RUos9Tc3fclMvhLSATYN39XsDV29B89zZ3KA89jmY0vwSGazyU+uerqwa6t+KaodPcg==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6" + } + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmmirror.com/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/cjs-module-lexer/-/cjs-module-lexer-1.3.1.tgz", + "integrity": "sha512-a3KdPAANPbNE4ZUv9h6LckSl9zLsYOP4MBmhIPkRaeyybt+r4UghLvq+xw/YwUcC1gqylCkL4rdVs3Lwupjm4Q==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/clipboard": { + "version": "2.0.11", + "resolved": "https://registry.npmmirror.com/clipboard/-/clipboard-2.0.11.tgz", + "integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==", + "dependencies": { + "good-listener": "^1.2.2", + "select": "^1.1.2", + "tiny-emitter": "^2.0.0" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmmirror.com/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmmirror.com/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/compare-versions": { + "version": "3.6.0", + "resolved": "https://registry.npmmirror.com/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", + "license": "MIT" + }, + "node_modules/computeds": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/computeds/-/computeds-0.0.1.tgz", + "integrity": "sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", + "license": "MIT" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "license": "MIT" + }, + "node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/core-js": { + "version": "3.37.1", + "resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.37.1.tgz", + "integrity": "sha512-Xn6qmxrQZyB0FFY8E3bgRXei3lWDJHhvI+u0q9TKIYM49G8pAr0FgnnrFRAmsbptZL1yxRADVXn+x5AGsbBfyw==", + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.46.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.46.0.tgz", + "integrity": "sha512-p9hObIIEENxSV8xIu+V68JjSeARg6UVMG5mR+JEUguG3sI6MsiS1njz2jHmyJDvA+8jX/sytkBHup6kxhM9law==", + "dev": true, + "license": "MIT", + "dependencies": { + "browserslist": "^4.26.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmmirror.com/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "bin": { + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-font-size-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-font-size-keywords/-/css-font-size-keywords-1.0.0.tgz", + "integrity": "sha512-Q+svMDbMlelgCfH/RVDKtTDaf5021O486ZThQPIpahnIjUkMUslC+WuOQSWTgGSrNCH08Y7tYNEmmy0hkfMI8Q==", + "license": "MIT" + }, + "node_modules/css-font-stretch-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/css-font-stretch-keywords/-/css-font-stretch-keywords-1.0.1.tgz", + "integrity": "sha512-KmugPO2BNqoyp9zmBIUGwt58UQSfyk1X5DbOlkb2pckDXFSAfjsD5wenb88fNrD6fvS+vu90a/tsPpb9vb0SLg==", + "license": "MIT" + }, + "node_modules/css-font-style-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/css-font-style-keywords/-/css-font-style-keywords-1.0.1.tgz", + "integrity": "sha512-0Fn0aTpcDktnR1RzaBYorIxQily85M2KXRpzmxQPgh8pxUN9Fcn00I8u9I3grNr1QXVgCl9T5Imx0ZwKU973Vg==", + "license": "MIT" + }, + "node_modules/css-font-weight-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-font-weight-keywords/-/css-font-weight-keywords-1.0.0.tgz", + "integrity": "sha512-5So8/NH+oDD+EzsnF4iaG4ZFHQ3vaViePkL1ZbZ5iC/KrsCY+WHq/lvOgrtmuOQ9pBBZ1ADGpaf+A4lj1Z9eYA==", + "license": "MIT" + }, + "node_modules/css-list-helpers": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-list-helpers/-/css-list-helpers-2.0.0.tgz", + "integrity": "sha512-9Bj8tZ0jWbAM3u/U6m/boAzAwLPwtjzFvwivr2piSvyVa3K3rChJzQy4RIHkNkKiZCHrEMWDJWtTR8UyVhdDnQ==", + "license": "MIT" + }, + "node_modules/css-system-font-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-system-font-keywords/-/css-system-font-keywords-1.0.0.tgz", + "integrity": "sha512-1umTtVd/fXS25ftfjB71eASCrYhilmEsvDEI6wG/QplnmlfmVM5HkZ/ZX46DT5K3eblFPgLUHt5BRCb0YXkSFA==", + "license": "MIT" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmmirror.com/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmmirror.com/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "license": "MIT" + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==" + }, + "node_modules/de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmmirror.com/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmmirror.com/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmmirror.com/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmmirror.com/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegate": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/delegate/-/delegate-3.2.0.tgz", + "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==" + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/dom-walk": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/dom-walk/-/dom-walk-0.1.2.tgz", + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" + }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "deprecated": "Use your platform's native DOMException instead", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/echarts": { + "version": "5.5.1", + "resolved": "https://registry.npmmirror.com/echarts/-/echarts-5.5.1.tgz", + "integrity": "sha512-Fce8upazaAXUVUVsjgV6mBnGuqgO+JNDlcgF79Dksy4+wgGpQB2lmYoO4TSweFg/mZITdpGHomw/cNBJZj1icA==", + "dependencies": { + "tslib": "2.3.0", + "zrender": "5.6.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true, + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.245", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.245.tgz", + "integrity": "sha512-rdmGfW47ZhL/oWEJAY4qxRtdly2B98ooTJ0pdEI4jhVLZ6tNf8fPtov2wS1IRKwFJT92le3x4Knxiwzl7cPPpQ==", + "license": "ISC" + }, + "node_modules/emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmmirror.com/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.17.1", + "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "dev": true, + "peer": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmmirror.com/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.5.4", + "resolved": "https://registry.npmmirror.com/es-module-lexer/-/es-module-lexer-1.5.4.tgz", + "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "license": "MIT" + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true, + "license": "MIT" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "peer": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "license": "MIT" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exif-parser": { + "version": "0.1.12", + "resolved": "https://registry.npmmirror.com/exif-parser/-/exif-parser-0.1.12.tgz", + "integrity": "sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw==" + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/express": { + "version": "4.20.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.20.0.tgz", + "integrity": "sha512-pLdae7I6QqShF5PnNTCVn4hI91Dx0Grkn2+IAsMTgMIKuQVte2dN9PeGSSAME2FR8anOhVA62QDIUaWVfEXVLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.10", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/exsolve": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.7.tgz", + "integrity": "sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==", + "license": "MIT" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmmirror.com/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/file-type": { + "version": "9.0.0", + "resolved": "https://registry.npmmirror.com/file-type/-/file-type-9.0.0.tgz", + "integrity": "sha512-Qe/5NJrgIOlwijpq3B7BEpzPFcgzggOTagZmkXQY4LA6bsXKTUstK7Wp12lEJ/mLKTpvIZxmIuRcLYWT6ov9lw==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.6", + "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmmirror.com/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/generic-names": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/generic-names/-/generic-names-4.0.0.tgz", + "integrity": "sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==", + "license": "MIT", + "dependencies": { + "loader-utils": "^3.2.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmmirror.com/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "peer": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true, + "peer": true + }, + "node_modules/global": { + "version": "4.4.0", + "resolved": "https://registry.npmmirror.com/global/-/global-4.4.0.tgz", + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "license": "MIT", + "dependencies": { + "min-document": "^2.19.0", + "process": "^0.11.10" + } + }, + "node_modules/good-listener": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/good-listener/-/good-listener-1.2.2.tgz", + "integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==", + "dependencies": { + "delegate": "^3.1.2" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", + "license": "MIT" + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/html-tags": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-replace-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", + "integrity": "sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg==", + "license": "ISC" + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmmirror.com/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/invert-kv": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/invert-kv/-/invert-kv-3.0.1.tgz", + "integrity": "sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sindresorhus/invert-kv?sponsor=1" + } + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-function": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/is-function/-/is-function-1.0.2.tgz", + "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==", + "license": "MIT" + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/isbinaryfile": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.2.tgz", + "integrity": "sha512-GvcjojwonMjWbTkfMpnVHVqXW/wKMYDfEpY94/8zy8HFMOqb/VL6oeONq9v87q4ttVlaTLnGXnJD4B5B1OTGIg==", + "license": "MIT", + "engines": { + "node": ">= 18.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmmirror.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmmirror.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "27.0.4", + "resolved": "https://registry.npmmirror.com/jest/-/jest-27.0.4.tgz", + "integrity": "sha512-Px1iKFooXgGSkk1H8dJxxBIrM3tsc5SIuI4kfKYK2J+4rvCvPGr/cXktxh0e9zIPQ5g09kOMNfHQEmusBUf/ZA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/core": "^27.0.4", + "import-local": "^3.0.2", + "jest-cli": "^27.0.4" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-circus/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-cli/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-cli/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-config/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-config/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-diff/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-each/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-each/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-jasmine2/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-jasmine2/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-jasmine2/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-jasmine2/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-matcher-utils/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-matcher-utils/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-message-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-message-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-resolve/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-resolve/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-runner/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runtime/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runtime/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-runtime/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-snapshot/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-validate/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-watcher/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/jest-watcher/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jimp": { + "version": "0.10.3", + "resolved": "https://registry.npmmirror.com/jimp/-/jimp-0.10.3.tgz", + "integrity": "sha512-meVWmDMtyUG5uYjFkmzu0zBgnCvvxwWNi27c4cg55vWNVC9ES4Lcwb+ogx+uBBQE3Q+dLKjXaLl0JVW+nUNwbQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.7.2", + "@jimp/custom": "^0.10.3", + "@jimp/plugins": "^0.10.3", + "@jimp/types": "^0.10.3", + "core-js": "^3.4.1", + "regenerator-runtime": "^0.13.3" + } + }, + "node_modules/jimp/node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "license": "MIT" + }, + "node_modules/jpeg-js": { + "version": "0.3.7", + "resolved": "https://registry.npmmirror.com/jpeg-js/-/jpeg-js-0.3.7.tgz", + "integrity": "sha512-9IXdWudL61npZjvLuVe/ktHiA41iE8qFyLB+4VDTblEsWBzeg8WQTlktdUK4CdncUqtUgUg0bbOmTE2bKBKaBQ==", + "license": "BSD-3-Clause" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmmirror.com/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsdom/node_modules/ws": { + "version": "7.5.10", + "resolved": "https://registry.npmmirror.com/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/jsonc-parser/-/jsonc-parser-3.3.1.tgz", + "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", + "license": "MIT" + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/lcid": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/lcid/-/lcid-3.1.1.tgz", + "integrity": "sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg==", + "license": "MIT", + "dependencies": { + "invert-kv": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/licia": { + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/licia/-/licia-1.41.1.tgz", + "integrity": "sha512-XqObV8u1KEMdYWaNK0leRrTwhzKnLQEkhbnuUu7qGNH3zJoN7l9sfvF6PfHstSCuUOmpEP+0SBjRrk0I9uZs8g==", + "license": "MIT" + }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-2.0.4.tgz", + "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/load-bmfont": { + "version": "1.4.2", + "resolved": "https://registry.npmmirror.com/load-bmfont/-/load-bmfont-1.4.2.tgz", + "integrity": "sha512-qElWkmjW9Oq1F9EI5Gt7aD9zcdHb9spJCW1L/dmPf7KzCCEJxq8nhHz5eCgI9aMf7vrG/wyaCqdsI+Iy9ZTlog==", + "license": "MIT", + "dependencies": { + "buffer-equal": "0.0.1", + "mime": "^1.3.4", + "parse-bmfont-ascii": "^1.0.3", + "parse-bmfont-binary": "^1.0.5", + "parse-bmfont-xml": "^1.1.4", + "phin": "^3.7.1", + "xhr": "^2.0.1", + "xtend": "^4.0.0" + } + }, + "node_modules/load-bmfont/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-bmfont/node_modules/phin": { + "version": "3.7.1", + "resolved": "https://registry.npmmirror.com/phin/-/phin-3.7.1.tgz", + "integrity": "sha512-GEazpTWwTZaEQ9RhL7Nyz0WwqilbqgLahDM3D0hxWwmVDI52nXEybHqiN6/elwpkJBhcuj+WbBu+QfT0uhPGfQ==", + "license": "MIT", + "dependencies": { + "centra": "^2.7.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-3.3.1.tgz", + "integrity": "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==", + "license": "MIT", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/local-pkg": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.1.2.tgz", + "integrity": "sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==", + "license": "MIT", + "dependencies": { + "mlly": "^1.7.4", + "pkg-types": "^2.3.0", + "quansync": "^0.2.11" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/local-pkg/node_modules/confbox": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz", + "integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==", + "license": "MIT" + }, + "node_modules/local-pkg/node_modules/pkg-types": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.3.0.tgz", + "integrity": "sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==", + "license": "MIT", + "dependencies": { + "confbox": "^0.2.2", + "exsolve": "^1.0.7", + "pathe": "^2.0.3" + } + }, + "node_modules/localstorage-polyfill": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/localstorage-polyfill/-/localstorage-polyfill-1.0.1.tgz", + "integrity": "sha512-m4iHVZxFH5734oQcPKU08025gIz2+4bjWR9lulP8ZYxEJR0BpA0w32oJmkzh8y3UI9ci7xCBehQDc3oA1X+VHw==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "license": "MIT" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.30.11", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", + "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmmirror.com/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/meow": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz", + "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/merge/-/merge-2.1.1.tgz", + "integrity": "sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==", + "license": "MIT" + }, + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/min-document": { + "version": "2.19.0", + "resolved": "https://registry.npmmirror.com/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==", + "dependencies": { + "dom-walk": "^0.1.0" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mlly": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.8.0.tgz", + "integrity": "sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==", + "license": "MIT", + "dependencies": { + "acorn": "^8.15.0", + "pathe": "^2.0.3", + "pkg-types": "^1.3.1", + "ufo": "^1.6.1" + } + }, + "node_modules/module-alias": { + "version": "2.2.3", + "resolved": "https://registry.npmmirror.com/module-alias/-/module-alias-2.2.3.tgz", + "integrity": "sha512-23g5BFj4zdQL/b6tor7Ji+QY4pEfNH784BMslY9Qb0UnJWRAt+lQGLYmRaM0KDBwIG23ffEBELhZDP2rhi9f/Q==", + "license": "MIT" + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/muggle-string": { + "version": "0.3.1", + "resolved": "https://registry.npmmirror.com/muggle-string/-/muggle-string-0.3.1.tgz", + "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmmirror.com/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/node-releases": { + "version": "2.0.27", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", + "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nwsapi": { + "version": "2.2.12", + "resolved": "https://registry.npmmirror.com/nwsapi/-/nwsapi-2.2.12.tgz", + "integrity": "sha512-qXDmcVlZV4XRtKFzddidpfVP4oMSGhga+xdMc25mv8kaLUHtgzCDhUxkrN8exkGdTlLNaXj7CV3GtON7zuGZ+w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/omggif": { + "version": "1.0.10", + "resolved": "https://registry.npmmirror.com/omggif/-/omggif-1.0.10.tgz", + "integrity": "sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==", + "license": "MIT" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/os-locale-s-fix": { + "version": "1.0.8-fix-1", + "resolved": "https://registry.npmmirror.com/os-locale-s-fix/-/os-locale-s-fix-1.0.8-fix-1.tgz", + "integrity": "sha512-Sv0OvhPiMutICiwORAUefv02DCPb62IelBmo8ZsSrRHyI3FStqIWZvjqDkvtjU+lcujo7UNir+dCwKSqlEQ/5w==", + "license": "MIT", + "dependencies": { + "lcid": "^3.0.0" + }, + "engines": { + "node": ">=10", + "yarn": "^1.22.4" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmmirror.com/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "license": "(MIT AND Zlib)" + }, + "node_modules/parse-bmfont-ascii": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/parse-bmfont-ascii/-/parse-bmfont-ascii-1.0.6.tgz", + "integrity": "sha512-U4RrVsUFCleIOBsIGYOMKjn9PavsGOXxbvYGtMOEfnId0SVNsgehXh1DxUdVPLoxd5mvcEtvmKs2Mmf0Mpa1ZA==", + "license": "MIT" + }, + "node_modules/parse-bmfont-binary": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/parse-bmfont-binary/-/parse-bmfont-binary-1.0.6.tgz", + "integrity": "sha512-GxmsRea0wdGdYthjuUeWTMWPqm2+FAd4GI8vCvhgJsFnoGhTrLhXDDupwTo7rXVAgaLIGoVHDZS9p/5XbSqeWA==", + "license": "MIT" + }, + "node_modules/parse-bmfont-xml": { + "version": "1.1.6", + "resolved": "https://registry.npmmirror.com/parse-bmfont-xml/-/parse-bmfont-xml-1.1.6.tgz", + "integrity": "sha512-0cEliVMZEhrFDwMh4SxIyVJpqYoOWDJ9P895tFuS+XuNzI5UBmBk5U5O4KuJdTnZpSBI4LFA2+ZiJaiwfSwlMA==", + "license": "MIT", + "dependencies": { + "xml-parse-from-string": "^1.0.0", + "xml2js": "^0.5.0" + } + }, + "node_modules/parse-css-font": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-css-font/-/parse-css-font-4.0.0.tgz", + "integrity": "sha512-lnY7dTUfjRXsSo5G5C639L8RaBBaVSgL+5hacIFKsNHzeCJQ5SFSZv1DZmc7+wZv/22PFGOq2YbaEHLdaCS/mQ==", + "license": "MIT", + "dependencies": { + "css-font-size-keywords": "^1.0.0", + "css-font-stretch-keywords": "^1.0.1", + "css-font-style-keywords": "^1.0.1", + "css-font-weight-keywords": "^1.0.0", + "css-list-helpers": "^2.0.0", + "css-system-font-keywords": "^1.0.0", + "unquote": "^1.1.1" + } + }, + "node_modules/parse-headers": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/parse-headers/-/parse-headers-2.0.5.tgz", + "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==", + "license": "MIT" + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmmirror.com/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-json/node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "license": "MIT" + }, + "node_modules/path-to-regexp": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", + "dev": true, + "license": "MIT" + }, + "node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", + "license": "MIT" + }, + "node_modules/phin": { + "version": "2.9.3", + "resolved": "https://registry.npmmirror.com/phin/-/phin-2.9.3.tgz", + "integrity": "sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmmirror.com/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pixelmatch": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/pixelmatch/-/pixelmatch-4.0.2.tgz", + "integrity": "sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==", + "license": "ISC", + "dependencies": { + "pngjs": "^3.0.0" + }, + "bin": { + "pixelmatch": "bin/pixelmatch" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-types": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", + "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", + "license": "MIT", + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + }, + "node_modules/pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmmirror.com/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss": { + "version": "8.4.45", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.45.tgz", + "integrity": "sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.1", + "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmmirror.com/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmmirror.com/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "license": "MIT", + "dependencies": { + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" + }, + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-modules": { + "version": "4.3.1", + "resolved": "https://registry.npmmirror.com/postcss-modules/-/postcss-modules-4.3.1.tgz", + "integrity": "sha512-ItUhSUxBBdNamkT3KzIZwYNNRFKmkJrofvC2nWab3CPKhYBQ1f27XXh1PAPE27Psx58jeelPsxWB/+og+KEH0Q==", + "license": "MIT", + "dependencies": { + "generic-names": "^4.0.0", + "icss-replace-symbols": "^1.1.0", + "lodash.camelcase": "^4.3.0", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "string-hash": "^1.1.1" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.5", + "resolved": "https://registry.npmmirror.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", + "license": "MIT", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", + "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", + "license": "ISC", + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "license": "ISC", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "license": "MIT" + }, + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmmirror.com/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmmirror.com/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmmirror.com/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/qrcode-reader": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/qrcode-reader/-/qrcode-reader-1.0.4.tgz", + "integrity": "sha512-rRjALGNh9zVqvweg1j5OKIQKNsw3bLC+7qwlnead5K/9cb1cEIAGkwikt/09U0K+2IDWGD9CC6SP7tHAjUeqvQ==", + "license": "Apache-2.0" + }, + "node_modules/qrcode-terminal": { + "version": "0.12.0", + "resolved": "https://registry.npmmirror.com/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz", + "integrity": "sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ==", + "bin": { + "qrcode-terminal": "bin/qrcode-terminal.js" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/quansync": { + "version": "0.2.11", + "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.11.tgz", + "integrity": "sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ], + "license": "MIT" + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "peer": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "license": "MIT", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true, + "license": "MIT" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.2.tgz", + "integrity": "sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "license": "MIT" + }, + "node_modules/regexpu-core": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.4.0.tgz", + "integrity": "sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.2.2", + "regjsgen": "^0.8.0", + "regjsparser": "^0.13.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.2.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/regjsparser": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.0.tgz", + "integrity": "sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "jsesc": "~3.1.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "4.19.0", + "resolved": "https://registry.npmmirror.com/rollup/-/rollup-4.19.0.tgz", + "integrity": "sha512-5r7EYSQIowHsK4eTZ0Y81qpZuJz+MUuYeqmmYmRMl1nwhdmbiYqt5jwzf6u7wyOzJgYqtCRMtVRKOtHANBz7rA==", + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.19.0", + "@rollup/rollup-android-arm64": "4.19.0", + "@rollup/rollup-darwin-arm64": "4.19.0", + "@rollup/rollup-darwin-x64": "4.19.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.19.0", + "@rollup/rollup-linux-arm-musleabihf": "4.19.0", + "@rollup/rollup-linux-arm64-gnu": "4.19.0", + "@rollup/rollup-linux-arm64-musl": "4.19.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.19.0", + "@rollup/rollup-linux-riscv64-gnu": "4.19.0", + "@rollup/rollup-linux-s390x-gnu": "4.19.0", + "@rollup/rollup-linux-x64-gnu": "4.19.0", + "@rollup/rollup-linux-x64-musl": "4.19.0", + "@rollup/rollup-win32-arm64-msvc": "4.19.0", + "@rollup/rollup-win32-ia32-msvc": "4.19.0", + "@rollup/rollup-win32-x64-msvc": "4.19.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-area-insets": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/safe-area-insets/-/safe-area-insets-1.4.1.tgz", + "integrity": "sha512-r/nRWTjFGhhm3w1Z6Kd/jY11srN+lHt2mNl1E/emQGW8ic7n3Avu4noibklfSM+Y34peNphHD/BSZecav0sXYQ==", + "license": "ISC" + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "license": "MIT" + }, + "node_modules/sass": { + "version": "1.63.2", + "resolved": "https://registry.npmmirror.com/sass/-/sass-1.63.2.tgz", + "integrity": "sha512-u56TU0AIFqMtauKl/OJ1AeFsXqRHkgO7nCWmHaDwfxDo9GUMSqBA4NEh6GMuh1CYVM7zuROYtZrHzPc2ixK+ww==", + "devOptional": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sass-loader": { + "version": "10.4.1", + "resolved": "https://registry.npmmirror.com/sass-loader/-/sass-loader-10.4.1.tgz", + "integrity": "sha512-aX/iJZTTpNUNx/OSYzo2KsjIUQHqvWsAhhUijFjAPdZTEhstjZI9zTNvkTTwsx+uNUJqUwOw5gacxQMx4hJxGQ==", + "dev": true, + "dependencies": { + "klona": "^2.0.4", + "loader-utils": "^2.0.0", + "neo-async": "^2.6.2", + "schema-utils": "^3.0.0", + "semver": "^7.3.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "sass": "^1.3.0", + "webpack": "^4.36.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/sass-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/sass-loader/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "license": "ISC" + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/scule": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/scule/-/scule-1.3.0.tgz", + "integrity": "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==", + "license": "MIT" + }, + "node_modules/select": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/select/-/select-1.1.2.tgz", + "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==" + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "peer": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-static": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.0.tgz", + "integrity": "sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA==", + "dev": true, + "license": "MIT", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-static/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-static/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/serve-static/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serve-static/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/serve-static/node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true, + "license": "ISC" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmmirror.com/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/string-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/string-hash/-/string-hash-1.1.3.tgz", + "integrity": "sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==", + "license": "CC0-1.0" + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-literal": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-3.1.0.tgz", + "integrity": "sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==", + "license": "MIT", + "dependencies": { + "js-tokens": "^9.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/strip-literal/node_modules/js-tokens": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", + "license": "MIT" + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", + "dev": true + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmmirror.com/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/systemjs": { + "version": "6.15.1", + "resolved": "https://registry.npmjs.org/systemjs/-/systemjs-6.15.1.tgz", + "integrity": "sha512-Nk8c4lXvMB98MtbmjX7JwJRgJOL8fluecYCfCeYBznwmpOs8Bf15hLM6z4z71EDAhQVrQrI+wt1aLWSXZq+hXA==", + "dev": true, + "license": "MIT" + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terser": { + "version": "5.31.3", + "resolved": "https://registry.npmmirror.com/terser/-/terser-5.31.3.tgz", + "integrity": "sha512-pAfYn3NIZLyZpa83ZKigvj6Rn9c/vd5KfYGX7cN1mnzqgDcxWvrU5ZtAfIKhEXz9nRecw4z3LXkjaq96/qZqAA==", + "devOptional": true, + "license": "BSD-2-Clause", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.10", + "resolved": "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/throat": { + "version": "6.0.2", + "resolved": "https://registry.npmmirror.com/throat/-/throat-6.0.2.tgz", + "integrity": "sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/timm": { + "version": "1.7.1", + "resolved": "https://registry.npmmirror.com/timm/-/timm-1.7.1.tgz", + "integrity": "sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw==", + "license": "MIT" + }, + "node_modules/tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz", + "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" + }, + "node_modules/tinycolor2": { + "version": "1.6.0", + "resolved": "https://registry.npmmirror.com/tinycolor2/-/tinycolor2-1.6.0.tgz", + "integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==", + "license": "MIT" + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.4", + "resolved": "https://registry.npmmirror.com/tough-cookie/-/tough-cookie-4.1.4.tgz", + "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmmirror.com/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmmirror.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmmirror.com/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/ufo": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz", + "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==", + "license": "MIT" + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmmirror.com/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "devOptional": true, + "license": "MIT", + "peer": true + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.1.tgz", + "integrity": "sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz", + "integrity": "sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unimport": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/unimport/-/unimport-4.1.1.tgz", + "integrity": "sha512-j9+fijH6aDd05yv1fXlyt7HSxtOWtGtrZeYTVBsSUg57Iuf+Ps2itIZjeyu7bEQ4k0WOgYhHrdW8m/pJgOpl5g==", + "license": "MIT", + "dependencies": { + "acorn": "^8.14.0", + "escape-string-regexp": "^5.0.0", + "estree-walker": "^3.0.3", + "fast-glob": "^3.3.3", + "local-pkg": "^1.0.0", + "magic-string": "^0.30.17", + "mlly": "^1.7.4", + "pathe": "^2.0.2", + "picomatch": "^4.0.2", + "pkg-types": "^1.3.1", + "scule": "^1.3.0", + "strip-literal": "^3.0.0", + "unplugin": "^2.1.2", + "unplugin-utils": "^0.2.3" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/unimport/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unimport/node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/unimport/node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/unimport/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unplugin": { + "version": "2.3.10", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.3.10.tgz", + "integrity": "sha512-6NCPkv1ClwH+/BGE9QeoTIl09nuiAt0gS28nn1PvYXsGKRwM2TCbFA2QiilmehPDTXIe684k4rZI1yl3A1PCUw==", + "license": "MIT", + "dependencies": { + "@jridgewell/remapping": "^2.3.5", + "acorn": "^8.15.0", + "picomatch": "^4.0.3", + "webpack-virtual-modules": "^0.6.2" + }, + "engines": { + "node": ">=18.12.0" + } + }, + "node_modules/unplugin-utils": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/unplugin-utils/-/unplugin-utils-0.2.5.tgz", + "integrity": "sha512-gwXJnPRewT4rT7sBi/IvxKTjsms7jX7QIDLOClApuZwR49SXbrB1z2NLUZ+vDHyqCj/n58OzRRqaW+B8OZi8vg==", + "license": "MIT", + "dependencies": { + "pathe": "^2.0.3", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=18.12.0" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + } + }, + "node_modules/unplugin-utils/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/unplugin/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==", + "license": "MIT" + }, + "node_modules/update-browserslist-db": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.4.tgz", + "integrity": "sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmmirror.com/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/utif": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/utif/-/utif-2.0.1.tgz", + "integrity": "sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg==", + "license": "MIT", + "dependencies": { + "pako": "^1.0.5" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uview-plus": { + "version": "3.3.54", + "resolved": "https://registry.npmmirror.com/uview-plus/-/uview-plus-3.3.54.tgz", + "integrity": "sha512-c/KcwTkbJed6ZZqxh7mreDFjtkq5ebNkMHsvgFn53xKVEbjWuGJ/zz4jOXWoO+n0r5hxH1LzrDXXDDiBDvqORA==", + "dependencies": { + "clipboard": "^2.0.11", + "dayjs": "^1.11.3" + }, + "engines": { + "HBuilderX": "^3.1.0" + } + }, + "node_modules/v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmmirror.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vite": { + "version": "5.2.8", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.8.tgz", + "integrity": "sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==", + "license": "MIT", + "dependencies": { + "esbuild": "^0.20.1", + "postcss": "^8.4.38", + "rollup": "^4.13.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vue": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.21.tgz", + "integrity": "sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/runtime-dom": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-i18n": { + "version": "9.14.5", + "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.14.5.tgz", + "integrity": "sha512-0jQ9Em3ymWngyiIkj0+c/k7WgaPO+TNzjKSNq9BvBQaKJECqn9cd9fL4tkDhB5G1QBskGl9YxxbDAhgbFtpe2g==", + "license": "MIT", + "dependencies": { + "@intlify/core-base": "9.14.5", + "@intlify/shared": "9.14.5", + "@vue/devtools-api": "^6.5.0" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + }, + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/vue-i18n/node_modules/@intlify/core-base": { + "version": "9.14.5", + "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.14.5.tgz", + "integrity": "sha512-5ah5FqZG4pOoHjkvs8mjtv+gPKYU0zCISaYNjBNNqYiaITxW8ZtVih3GS/oTOqN8d9/mDLyrjD46GBApNxmlsA==", + "license": "MIT", + "dependencies": { + "@intlify/message-compiler": "9.14.5", + "@intlify/shared": "9.14.5" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/vue-i18n/node_modules/@intlify/message-compiler": { + "version": "9.14.5", + "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.14.5.tgz", + "integrity": "sha512-IHzgEu61/YIpQV5Pc3aRWScDcnFKWvQA9kigcINcCBXN8mbW+vk9SK+lDxA6STzKQsVJxUPg9ACC52pKKo3SVQ==", + "license": "MIT", + "dependencies": { + "@intlify/shared": "9.14.5", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/vue-i18n/node_modules/@intlify/shared": { + "version": "9.14.5", + "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.14.5.tgz", + "integrity": "sha512-9gB+E53BYuAEMhbCAxVgG38EZrk59sxBtv3jSizNL2hEWlgjBjAw1AwpLHtNaeda12pe6W20OGEa0TwuMSRbyQ==", + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/vue-router": { + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.4.4.tgz", + "integrity": "sha512-3MlnDqwRwZwCQVbtVfpsU+nrNymNjnXSsQtXName5925NVC1+326VVfYH9vSrA0N13teGEo8z5x7gbRnGjCDiQ==", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue-template-compiler": { + "version": "2.7.16", + "resolved": "https://registry.npmmirror.com/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz", + "integrity": "sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "node_modules/vue-tsc": { + "version": "1.8.27", + "resolved": "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-1.8.27.tgz", + "integrity": "sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/typescript": "~1.11.1", + "@vue/language-core": "1.8.27", + "semver": "^7.5.4" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": "*" + } + }, + "node_modules/vue-tsc/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmmirror.com/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "dev": true, + "peer": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/webpack": { + "version": "5.97.1", + "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.97.1.tgz", + "integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.17.1", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-virtual-modules": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz", + "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==", + "license": "MIT" + }, + "node_modules/webpack/node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, + "peer": true + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmmirror.com/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "8.18.0", + "resolved": "https://registry.npmmirror.com/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xhr": { + "version": "2.6.0", + "resolved": "https://registry.npmmirror.com/xhr/-/xhr-2.6.0.tgz", + "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", + "license": "MIT", + "dependencies": { + "global": "~4.4.0", + "is-function": "^1.0.1", + "parse-headers": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true, + "license": "Apache-2.0", + "peer": true + }, + "node_modules/xml-parse-from-string": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/xml-parse-from-string/-/xml-parse-from-string-1.0.1.tgz", + "integrity": "sha512-ErcKwJTF54uRzzNMXq2X5sMIy88zJvfN2DmdoQvy7PAFJ+tPRU6ydWuOKNMyfmOjdyBQTFREi60s0Y0SyI0G0g==", + "license": "MIT" + }, + "node_modules/xml2js": { + "version": "0.5.0", + "resolved": "https://registry.npmmirror.com/xml2js/-/xml2js-0.5.0.tgz", + "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", + "license": "MIT", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmmirror.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "license": "MIT", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/xmlhttprequest": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", + "integrity": "sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/xregexp": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/xregexp/-/xregexp-3.1.0.tgz", + "integrity": "sha512-4Y1x6DyB8xRoxosooa6PlGWqmmSKatbzhrftZ7Purmm4B8R4qIEJG1A2hZsdz5DhmIqS0msC0I7KEq93GphEVg==", + "license": "MIT" + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "license": "MIT", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "license": "ISC" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmmirror.com/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmmirror.com/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "license": "ISC", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/zrender": { + "version": "5.6.0", + "resolved": "https://registry.npmmirror.com/zrender/-/zrender-5.6.0.tgz", + "integrity": "sha512-uzgraf4njmmHAbEUxMJ8Oxg+P3fT04O+9p7gY+wJRVxo8Ge+KmYv0WJev945EH4wFuc4OY2NLXz46FZrWS9xJg==", + "dependencies": { + "tslib": "2.3.0" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..d3a063c --- /dev/null +++ b/package.json @@ -0,0 +1,82 @@ +{ + "name": "uni-preset-vue", + "version": "0.0.0", + "scripts": { + "dev:app": "uni -p app", + "dev:app-android": "uni -p app-android", + "dev:app-ios": "uni -p app-ios", + "dev:custom": "uni -p", + "dev:h5": "uni", + "dev:h5:ssr": "uni --ssr", + "dev:mp-alipay": "uni -p mp-alipay", + "dev:mp-baidu": "uni -p mp-baidu", + "dev:mp-jd": "uni -p mp-jd", + "dev:mp-kuaishou": "uni -p mp-kuaishou", + "dev:mp-lark": "uni -p mp-lark", + "dev:mp-qq": "uni -p mp-qq", + "dev:mp-toutiao": "uni -p mp-toutiao", + "dev:mp-weixin": "uni -p mp-weixin", + "dev:mp-xhs": "uni -p mp-xhs", + "dev:quickapp-webview": "uni -p quickapp-webview", + "dev:quickapp-webview-huawei": "uni -p quickapp-webview-huawei", + "dev:quickapp-webview-union": "uni -p quickapp-webview-union", + "build:app": "uni build -p app", + "build:app-android": "uni build -p app-android", + "build:app-ios": "uni build -p app-ios", + "build:custom": "uni build -p", + "build:h5": "uni build", + "build:h5:ssr": "uni build --ssr", + "build:mp-alipay": "uni build -p mp-alipay", + "build:mp-baidu": "uni build -p mp-baidu", + "build:mp-jd": "uni build -p mp-jd", + "build:mp-kuaishou": "uni build -p mp-kuaishou", + "build:mp-lark": "uni build -p mp-lark", + "build:mp-qq": "uni build -p mp-qq", + "build:mp-toutiao": "uni build -p mp-toutiao", + "build:mp-weixin": "uni build -p mp-weixin", + "build:mp-xhs": "uni build -p mp-xhs", + "build:quickapp-webview": "uni build -p quickapp-webview", + "build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei", + "build:quickapp-webview-union": "uni build -p quickapp-webview-union", + "type-check": "vue-tsc --noEmit" + }, + "dependencies": { + "@climblee/uv-ui": "^1.1.20", + "@dcloudio/uni-app": "3.0.0-4080420251103001", + "@dcloudio/uni-app-harmony": "3.0.0-4080420251103001", + "@dcloudio/uni-app-plus": "3.0.0-4080420251103001", + "@dcloudio/uni-components": "3.0.0-4080420251103001", + "@dcloudio/uni-h5": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-alipay": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-baidu": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-harmony": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-jd": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-kuaishou": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-lark": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-qq": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-toutiao": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-weixin": "3.0.0-4080420251103001", + "@dcloudio/uni-mp-xhs": "3.0.0-4080420251103001", + "@dcloudio/uni-quickapp-webview": "3.0.0-4080420251103001", + "clipboard": "^2.0.11", + "dayjs": "^1.11.13", + "echarts": "^5.5.1", + "uview-plus": "^3.3.54", + "vue": "3.4.21", + "vue-i18n": "9.14.5" + }, + "devDependencies": { + "@dcloudio/types": "3.4.19", + "@dcloudio/uni-automator": "3.0.0-4080420251103001", + "@dcloudio/uni-cli-shared": "3.0.0-4080420251103001", + "@dcloudio/uni-stacktracey": "3.0.0-4080420251103001", + "@dcloudio/vite-plugin-uni": "3.0.0-4080420251103001", + "@vue/runtime-core": "3.5.23", + "@vue/tsconfig": "^0.1.3", + "sass": "1.63.2", + "sass-loader": "10.4.1", + "typescript": "^4.9.4", + "vite": "5.2.8", + "vue-tsc": "^1.0.24" + } +} diff --git a/shims-uni.d.ts b/shims-uni.d.ts new file mode 100644 index 0000000..ed4adcf --- /dev/null +++ b/shims-uni.d.ts @@ -0,0 +1,10 @@ +/// +import 'vue' + +declare module '@vue/runtime-core' { + type Hooks = App.AppInstance & Page.PageInstance; + + interface ComponentCustomOptions extends Hooks { + + } +} diff --git a/sm.txt b/sm.txt new file mode 100644 index 0000000..c10c16b --- /dev/null +++ b/sm.txt @@ -0,0 +1,11 @@ +证书名称:mtRide +证书别名 : mtRide.keystore +密码:mtride123 + +Android包名: uni.app.mtRide + + +公钥: 23435172021720380296490271990846239523088929679377835616301524017081159158577836162239381151243298901437095797013081178084484892892282290047113348240657346956713787714933303422589001907866881902732510923086940980581545841757511067550808944197841667280168896693187717619066714045065554845389736630938506286493905689600193070592687026511430452365865642865545372189037121494085492908628863153027560970849723281130967310912385133250501495484257588011871904030061857722775337559368709705749873676799326594015907798061990721957932319586602834507269616033727425161286295674390689849811675448907045862979284056273143790164007 + + +MD5:01 0A B9 8B 87 80 DD 78 BA 41 05 45 07 E9 4D AF \ No newline at end of file diff --git a/src/App.vue b/src/App.vue new file mode 100644 index 0000000..0206368 --- /dev/null +++ b/src/App.vue @@ -0,0 +1,124 @@ + + \ No newline at end of file diff --git a/src/Service/BaseConfig.ts b/src/Service/BaseConfig.ts new file mode 100644 index 0000000..763b958 --- /dev/null +++ b/src/Service/BaseConfig.ts @@ -0,0 +1,10 @@ +export class BaseConfig { + protected static servesUrl: string = "http://192.168.0.142:5085";//线下 + protected static imgUrl: string = "http://192.168.0.142:5085"; + // protected static servesUrl: string = "https://cnapi.hnzchl.cn"; + // protected static imgUrl: string = "https://cnapi.hnzchl.cn"; + protected static mediaUrl: string = "http://byc1.xypays.cn/"; + protected static uploadUrl: string = "/TencentCos/GetUpLoadInfo"; + // protected static payuploadUrl: string = "http://192.168.0.142:5085"; + protected static payuploadUrl: string = "https://cnapi.hnzchl.cn"; +} \ No newline at end of file diff --git a/src/Service/CN/CNRiderDataService.ts b/src/Service/CN/CNRiderDataService.ts new file mode 100644 index 0000000..5157848 --- /dev/null +++ b/src/Service/CN/CNRiderDataService.ts @@ -0,0 +1,91 @@ +import { Service } from '@/Service/Service'; +/*****首页接口*****/ +class CNRiderDataService { + private static GetPubRiderInfoPath : string = '/Rider/GetRiderInfo'; + /*****个人信息*****/ + static GetRiderInfo() { + var result = Service.Request(this.GetPubRiderInfoPath, "GET", {}); + return result; + } + + + private static GetRiderHomeInfoPath : string = '/Rider/GetRiderHomeInfo'; + /*****获取首页信息*****/ + static GetRiderHomeInfo() { + var result = Service.Request(this.GetRiderHomeInfoPath, "GET", {}); + return result; + } + + private static CompleteRiderPath : string = '/Rider/CompleteRider'; + /*****完善信息接口*****/ + static CompleteRider(nick:string,headImg:string,idenNumber:string,sex:string,age:number,identityA:string,identityB:string,province:string,city:string,region:string,lat:number,lon:number) { + var result = Service.Request(this.CompleteRiderPath, "POST", {nick,headImg,idenNumber,sex,age,identityA,identityB,province,city,region,lat,lon}); + return result; + } + + private static GetAddressInfoPath : string = '/User/GetAddressInfo'; + /*****根据经纬度获取地址信息*****/ + static GetAddressInfo(lat:number,lon:number) { + var result = Service.Request(this.GetAddressInfoPath, "GET", {lat,lon}); + return result; + } + + private static GetRiderAccInfoPath : string = '/Rider/GetRiderAccInfo'; + /*****获取账户信息*****/ + static GetRiderAccInfo() { + var result = Service.Request(this.GetRiderAccInfoPath, "GET", {}); + return result; + } + + private static UpdateRiderUnitPath : string = '/Rider/UpdateRiderUnit'; + /*****修改基础信息*****/ + static UpdateRiderUnit(headImg:string,sex:string,age:number) { + var result = Service.Request(this.UpdateRiderUnitPath, "POST", {headImg,sex,age}); + return result; + } + + + private static UpdateRiderIdentityPath : string = '/Rider/UpdateRiderIdentity'; + /*****修改实名认证*****/ + static UpdateRiderIdentity(nick:string,idenNumber:string,identityA:string,identityB:string) { + var result = Service.Request(this.UpdateRiderIdentityPath, "POST", {nick,idenNumber,identityA,identityB}); + return result; + } + + private static UpdateRiderOnlinePath : string = '/Rider/UpdateRiderOnline'; + /*****修改上下线*****/ + static UpdateRiderOnline() { + var result = Service.Request(this.UpdateRiderOnlinePath, "GET", {}); + return result; + } + + + private static GetRiderExigencyPath : string = '/Rider/GetRiderExigency'; + /*****紧急联系人详情*****/ + static GetRiderExigency() { + var result = Service.Request(this.GetRiderExigencyPath, "GET", {}); + return result; + } + + private static AddRiderExigencyPath : string = '/Rider/AddRiderExigency'; + /*****添加联系人*****/ + static AddRiderExigency(name:string,phone:string) { + var result = Service.Request(this.AddRiderExigencyPath, "POST", {name,phone}); + return result; + } + + private static GetRiderEvaluatePath : string = '/Rider/GetRiderEvaluate'; + /*****骑手评价列表*****/ + static GetRiderEvaluate(type:number,page:number) { + var result = Service.Request(this.GetRiderEvaluatePath, "GET", {type,page}); + return result; + } + + + + +} +export { + Service, + CNRiderDataService +} \ No newline at end of file diff --git a/src/Service/CN/CNRiderLoginService.ts b/src/Service/CN/CNRiderLoginService.ts new file mode 100644 index 0000000..49d1141 --- /dev/null +++ b/src/Service/CN/CNRiderLoginService.ts @@ -0,0 +1,58 @@ +import { Service } from '@/Service/Service'; +/*****登录接口*****/ +class CNRiderLoginService { + private static RiderLoginPath : string = '/Login/RiderLogin'; + /*****登录注册*****/ + static RiderLogin(login : any) { + var result = Service.Request(this.RiderLoginPath, "POST", login); + return result; + } + + private static GetKefuInfoPath : string = '/Home/GetKefuInfo'; + /*****获取客服电话*****/ + static GetKefuInfo() { + var result = Service.Request(this.GetKefuInfoPath, "GET", {}); + return result; + } + + + private static GetPrivacyPath : string = '/Home/GetPrivacy'; + /*****用户协议*****/ + static GetPrivacy(type : number) { + var result = Service.Request(this.GetPrivacyPath, "GET", { type }); + return result; + } + + private static SendUserSmsPath : string = '/Login/SendUserSms'; + /*****发送验证码*****/ + static SendUserSms(phone : string, code : string) { + var result = Service.Request(this.SendUserSmsPath, "POST", { phone, code }); + return result; + } + + private static UpdateRiderPhonePath : string = '/Rider/UpdateRiderPhone'; + /*****修改手机号*****/ + static UpdateRiderPhone(phone : string, code : string) { + var result = Service.Request(this.UpdateRiderPhonePath, "POST", { phone, code }); + return result; + } + + + private static UpdateRiderPasswordPath : string = '/Rider/UpdateRiderPassword'; + /*****修改密码*****/ + static UpdateRiderPassword( code:string, password : string, confimPwd : string) { + var result = Service.Request(this.UpdateRiderPasswordPath, "POST", { code, password, confimPwd }); + return result; + } + + private static GetAppVersionPath : string = '/Login/GetAppVersion'; + /*****版本更新*****/ + static GetAppVersion(version : number, type : string) { + var result = Service.Request(this.GetAppVersionPath, "GET", { version, type }); + return result; + } +} +export { + Service, + CNRiderLoginService +} \ No newline at end of file diff --git a/src/Service/CN/CNRiderOrderService.ts b/src/Service/CN/CNRiderOrderService.ts new file mode 100644 index 0000000..701684e --- /dev/null +++ b/src/Service/CN/CNRiderOrderService.ts @@ -0,0 +1,111 @@ +import { Service } from '@/Service/Service'; +/*****订单接口*****/ +class CNRiderOrderService { + private static GetRiderOrderListPath : string = '/Rider/GetRiderOrderList'; + /*****首页新订单*****/ + static GetRiderOrderList(page : number) { + var result = Service.Request(this.GetRiderOrderListPath, "GET", {page}); + return result; + } + + private static RiderTakeOrderPath : string = '/Rider/RiderTakeOrder'; + /*****骑手接单*****/ + static RiderTakeOrder(orderId : string) { + var result = Service.Request(this.RiderTakeOrderPath, "POST", {orderId}); + return result; + } + + private static GetRiderTakeOrderListPath : string = '/Rider/GetRiderTakeOrderList'; + /*****首页 待取餐/配送中*****/ + static GetRiderTakeOrderList(status: number,page : number) { + var result = Service.Request(this.GetRiderTakeOrderListPath, "GET", {status,page}); + return result; + } + + + private static GetUnitOrderInfoPath : string = '/Order/GetUnitOrderInfo'; + /*****获取订单详情*****/ + static GetUnitOrderInfo(orderId: string) { + var result = Service.Request(this.GetUnitOrderInfoPath, "GET", {orderId}); + return result; + } + + private static UpdateRiderOrderTakePath : string = '/Rider/UpdateRiderOrderTake'; + /*****取餐*****/ + static UpdateRiderOrderTake(orderId: string,status:number) { + var result = Service.Request(this.UpdateRiderOrderTakePath, "POST", {orderId,status}); + return result; + } + + private static GetRiderAccLogPath : string = '/Rider/GetRiderAccLog'; + /*****收入列表*****/ + static GetRiderAccLog(time: string,page:number) { + var result = Service.Request(this.GetRiderAccLogPath, "GET", {time,page}); + return result; + } + + private static AddRiderWithPath : string = '/Rider/AddRiderWith'; + /*****骑手提现*****/ + static AddRiderWith(amount: number,payway:string,name:string,account:string) { + var result = Service.Request(this.AddRiderWithPath, "POST", {amount,payway,name,account}); + return result; + } + + + private static GetRiderWithListPath : string = '/Rider/GetRiderWithList'; + /*****骑手提现列表*****/ + static GetRiderWithList(page:number) { + var result = Service.Request(this.GetRiderWithListPath, "GET", {page}); + return result; + } + + private static ApplyOrderServicePath : string = '/Rider/ApplyOrderService'; + /*****上报异常订单*****/ + static ApplyOrderService(orderId:string,type:string,remark:string,img:string) { + var result = Service.Request(this.ApplyOrderServicePath, "POST", {orderId,type,remark,img}); + return result; + } + + + private static GetRiderOrderServiceListPath : string = '/Rider/GetRiderOrderServiceList'; + /*****上报异常订单列表*****/ + static GetRiderOrderServiceList(type:number,page:number) { + var result = Service.Request(this.GetRiderOrderServiceListPath, "GET", {type,page}); + return result; + } + + + private static GetOrderServiceInfoPath : string = '/Order/GetOrderServiceInfo'; + /*****上报异常订单详情*****/ + static GetOrderServiceInfo(orderId:string) { + var result = Service.Request(this.GetOrderServiceInfoPath, "GET", {orderId}); + return result; + } + + + + private static UpdateRiderLocationPath : string = '/Rider/UpdateRiderLocation'; + /*****骑手上报位置*****/ + static UpdateRiderLocation(lon:number,lat:number) { + var result = Service.Request(this.UpdateRiderLocationPath, "POST", {lon,lat}); + return result; + } + + + private static GetLoginOrderInfoPath : string = '/Login/GetLoginOrderInfo'; + /*****获取信息*****/ + static GetLoginOrderInfo(orderId:string) { + var result = Service.Request(this.GetLoginOrderInfoPath, "GET", {orderId}); + return result; + } + + + + + + +} +export { + Service, + CNRiderOrderService +} \ No newline at end of file diff --git a/src/Service/Comm/EventHandler.ts b/src/Service/Comm/EventHandler.ts new file mode 100644 index 0000000..f92de7f --- /dev/null +++ b/src/Service/Comm/EventHandler.ts @@ -0,0 +1,59 @@ +import { Service } from "@/Service/Service" +export class EventHandler { + //处理事件 + static Events(data : any) { + var result = JSON.parse(data.data); + if (result.code == 'msg') { + this.ChatEnent(result); + } else if (result.code == 'order') { + uni.$emit('newOrder', data); + this.NewOrder() + } + } + + static NewOrder() { + var innerAudioContext = uni.createInnerAudioContext(); + innerAudioContext.autoplay = true; + innerAudioContext.src = '/static/order.mp3'; + + innerAudioContext.onEnded(() => { + console.log('播放结束'); + }) + } + + + static ChatEnent(data : any) { + console.log(data, 'xxx') + var eventName = `chat_${data.chanId}`; + uni.$emit(eventName, data); + } + + static ChatUserEnent(data : any) { + var eventUserName = `chatUser_${data.sendId}`; + uni.$emit('UpdatePrivateMsg', data); + uni.$emit(eventUserName, data); + this.plusPush(); + } + + static plusPush() { + + Service.createLocalPush('骑手订单','您有一个新订单','') + } + + static SystemEnent(data : any) { + let obj = JSON.parse(data.data); + if (obj.code == 'Like' || obj.code == 'Aite' || obj.code == 'Comment' || obj.code == 'Notice') { + uni.$emit('MegEvent', obj); + } else if (obj.code == 'Off') { + uni.$emit('ImComOff', 'user'); + } else if (obj.code == 'UpdateUserInfo') { + uni.$emit('UpdateUserInfo'); + } else if (obj.code == 'Friend') { + uni.$emit('Friend'); + } + } + + static ConnectBus() { + uni.$emit('UpdateChat'); + } +} \ No newline at end of file diff --git a/src/Service/Comm/TwWebSocket.ts b/src/Service/Comm/TwWebSocket.ts new file mode 100644 index 0000000..4d6a73e --- /dev/null +++ b/src/Service/Comm/TwWebSocket.ts @@ -0,0 +1,139 @@ +// src/Service/Im/WebSocket.ts + +import { EventHandler } from '@/Service/Comm/EventHandler'; +import { Service, ImConnectService } from '@/Service/Im/ImConnectService'; + +class WebSocketManager { + private socketTask: UniApp.SocketTask | null = null; + private heartbeatInterval: ReturnType | null = null; + private readonly heartbeat: number = 30000; // 建议心跳30秒 + private isConnecting: boolean = false; // 连接状态锁 + private isUserClose: boolean = false; // 是否是用户主动关闭 + + public ConnectSocketInit(): void { + if (this.isConnecting || this.socketTask) { + console.warn('WebSocket 正在连接或已连接,请勿重复调用。'); + return; + } + this.isConnecting = true; + this.isUserClose = false; + + ImConnectService.GetConnect().then((res: any) => { + if (res.code !== 0) { + this.isConnecting = false; + // Service.Msg('获取连接地址失败'); + return; + } + + Service.SetUserClientId(res.data.websocketId); + + this.socketTask = uni.connectSocket({ + url: res.data.server, + header: { 'content-type': 'application/json' }, + // 推荐在小程序端开启 BSON + // #ifdef MP-WEIXIN + // protocols: ['bson'], + // #endif + success: () => {}, // success回调仅表示任务创建成功 + }); + + // ✅ 绑定事件监听 (在 onOpen 外部) + this.socketTask.onOpen(() => { + console.log('==============WebSocket连接正常============='); + this.isConnecting = false; + this.startHeartbeat(); + EventHandler.ConnectBus(); + }); + + this.socketTask.onMessage((data: any) => { + console.log('接收到消息'); + EventHandler.Events(data); + }); + + this.socketTask.onClose((e: any) => { + console.log('========WebSocket连接已被关闭========', e); + this.isConnecting = false; + this.stopHeartbeat(); + this.socketTask = null; // 清理实例 + // 如果不是用户主动关闭,则触发重连 + if (!this.isUserClose) { + this.reconnect(); + } + }); + + this.socketTask.onError((err: any) => { + console.error('========WebSocket连接发生错误========', err); + this.isConnecting = false; + // 错误发生时,通常也会触发 onClose,由 onClose 统一处理重连 + }); + }).catch(err => { + this.isConnecting = false; + console.error('GetConnect API 请求失败:', err); + }); + } + + private startHeartbeat(): void { + this.stopHeartbeat(); // 先停止旧的,确保只有一个 + const heartbeatData = JSON.stringify({ code: 'Heart', method: 'Heart' }); + + this.heartbeatInterval = setInterval(() => { + console.log('======发送心跳检测======'); + this.send(heartbeatData); + }, this.heartbeat); + } + + private stopHeartbeat(): void { + if (this.heartbeatInterval) { + clearInterval(this.heartbeatInterval); + this.heartbeatInterval = null; + } + } + + // 重新连接 (带延迟和重试次数) + public reconnect(): void { + console.log('准备在3秒后尝试重连...'); + setTimeout(() => { + console.log('正在尝试重连...'); + this.ConnectSocketInit(); + // 在您的 EventHandler 或全局事件总线中可以增加重试次数限制 + uni.$emit('ImReconnecting'); + }, 3000); // 延迟3秒重连,避免频繁请求 + } + + public CloseSocket(reason: string = 'user close'): void { + if (!this.socketTask) return; + + this.isUserClose = true; + this.stopHeartbeat(); // ✅ 立即停止心跳 + + this.socketTask.close({ + code: 1000, + reason: reason, + success: () => { // ✅ 使用箭头函数 + console.log('===============关闭 WebSocket 成功==================='); + }, + fail: (err) => { // ✅ 使用箭头函数 + console.log('===================关闭 WebSocket 失败=====================', err); + } + }); + } + + public send(value: any): void { + if (this.socketTask && this.socketTask.readyState === 1) { // 检查连接状态 + this.socketTask.send({ + data: value, + success: () => {}, // ✅ 使用箭头函数 + fail: (err) => { // ✅ 使用箭头函数 + console.error('发送消息失败:', err); + // 发送失败通常意味着连接已断开,onClose会处理重连 + } + }); + } else { + console.error('WebSocket 未连接,无法发送消息。'); + // 可以考虑将消息放入一个队列,等重连成功后再发送 + } + } +} + +// 导出单例模式 +export const WebSocket = new WebSocketManager(); \ No newline at end of file diff --git a/src/Service/Im/ImConnectService.ts b/src/Service/Im/ImConnectService.ts new file mode 100644 index 0000000..5b5070c --- /dev/null +++ b/src/Service/Im/ImConnectService.ts @@ -0,0 +1,46 @@ +import { Service } from '@/Service/Service'; +/*****连接*****/ +class ImConnectService { + private static GetConnectPath: string = '/Im/GetConnect'; + /*****获取连接*****/ + static GetConnect() { + var result = Service.Request(this.GetConnectPath, 'POST', {type:3}); + return result; + } + + private static IsOnlinePath: string = '/Im/IsOnline'; + /*****判断是否在线*****/ + static IsOnline(id:number) { + var result = Service.Request(this.IsOnlinePath, 'POST', id); + return result; + } + + private static JoinChatPath: string = '/Im/JoinChat'; + /*****加入聊天室*****/ + static JoinChat(id: number,chan:number) { + var result = Service.Request(this.JoinChatPath, 'POST', { id,chan }); + return result; + } + + private static SendChanMsgPath: string = '/Im/SendChanMsg'; + /*****发送聊天室消息*****/ + static SendChanMsg(id: number, user: string, chan: string, type: string,msg:string,media:string) { + var result = Service.Request(this.SendChanMsgPath, 'POST', { id, user, chan, type , msg , media }); + return result; + } + + private static ExitChatPath: string = '/Im/ExitChat'; + /*****离开聊天室*****/ + static ExitChat(id:number, chan: string) { + var result = Service.Request(this.ExitChatPath, 'POST', {id, chan }); + return result; + } + + private static GetOrderMessagePath: string = '/Order/GetOrderMessage'; + /*****聊天记录*****/ + static GetOrderMessage(orderId:string) { + var result = Service.Request(this.GetOrderMessagePath, 'GET', {orderId }); + return result; + } +} +export { Service, ImConnectService }; diff --git a/src/Service/Service.ts b/src/Service/Service.ts new file mode 100644 index 0000000..63052a5 --- /dev/null +++ b/src/Service/Service.ts @@ -0,0 +1,392 @@ +import { HttpRequest, StoreAssist, UploadAssist, ResultData } from '@/common/Common'; +import { BaseConfig } from './BaseConfig'; +export class Service extends BaseConfig { + + + // 获取是否后台 + static getIsHede () { + let isHede = this.GetStorageCache('isHede') + if (isHede == null || isHede == '') { + return false; + } else { + return isHede; + } + } + + + //获取API地址 + static ApiUrl(path : string) { + return `${this.servesUrl}${path}`; + } + + //获取图片地址 + static GetpayImg(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.payuploadUrl}${path}`; + } + } + + //获取图标地址 + static GetIconImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + + //获取图片地址 + static GetMateUrlByImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + //获取音视频地址 + static GetMateUrlByMedia(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.mediaUrl}${path}`; + } + } + //获取登录账号token + static GetUserToken() { + return Service.GetStorageCache('token'); + } + // 获取登录状态 + static GetUserIsLogin() { + var token = this.GetUserToken(); + if (token == null || token == '') { + return false; + } else { + return true; + } + } + //设置登录账户Token + static SetUserToken(token : string) { + this.SetStorageCache('token', token); + } + //清理登录账户Token + static OffUserToken() { + Service.DelStorageCache('token'); + uni.$emit('ImComOff', 'user'); + this.ClearUserStateData(); + } + //获取登录账号状态信息 + static GetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //设置当前登录账号状态信息 + static SetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //清理当前登录账号状态信息 + static ClearUserStateData() { + Service.DelStorageCache('StateDomain'); + } + + + //获取当前客户端ID + static GetUserClientId() { + return this.GetStorageCache('ClientId'); + } + //保存当前客户端ID + static SetUserClientId(clientId: string) { + this.SetStorageCache('ClientId', clientId); + } + + + //获取缓存 + static GetStorageCache(key : string) { + return StoreAssist.Get(key); + } + //删除缓存 + static DelStorageCache(key : string) { + StoreAssist.Delete(key); + } + //设置缓存 + static SetStorageCache(key : string, data : any) { + StoreAssist.Set(key, data); + } + + /*****以下是基础方法调用与拦截器*****/ + + static Request(url : string, method : 'GET' | 'POST' | 'PUT' | undefined, data : object | any) { + const token = Service.GetUserToken(); + + const _url = Service.ApiUrl(url); + var result = HttpRequest.RequestWithToken(_url, method, token, data).then((retResult : any) => { + if (retResult.statusCode == '200') { + var obj = retResult.data; + if (obj.code == 401) { + //过期 + this.OffUserToken(); + // this.Msg('登录过期,请重新登录') + this.GoPageDelse('/pages/my/login') + return Promise.reject(); + } else if (obj.code == 40101) { + //失效 + this.OffUserToken(); + this.GoPageDelse('/pages/mine/login/login'); + return Promise.reject(); + } else if (obj.code == 1004) { + //资源不存在 + this.GoPageDelse('/pages/AppSet/404/404'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 40188) { + //无权限 + + this.GoPageDelse('/pages/AppSet/40188/40188'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 1008) { + //业务提示 + return new ResultData(obj.code, obj.msg, obj.data); + } else { + return new ResultData(obj.code, obj.msg, obj.data); + } + } else { + return new ResultData(-1, '', ''); + } + }); + return result; + } + /*****以下是腾讯云oss上传*****/ + static UpLoadMedia(code : string, fileName : string, desire : string, path : string) { + var result = this.Request(this.uploadUrl, 'GET', { code, fileName, desire }).then((retResult) => { + if (retResult.code == 0) { + var upOk = UploadAssist.Upload(retResult.data.url, path, retResult.data.cosData).then((upRet : any) => { + if (upRet.statusCode == 200) { + const retData : any = { code: retResult.data.code, file: retResult.data.file, cache: retResult.data.cache }; + return new ResultData(0, '上传成功!', retData); + } else { + this.Msg('上传失败!'); + return new ResultData(-1, '', ''); + } + }); + return upOk; + } else { + this.Msg('上传失败!'); + return new ResultData(-1, retResult.msg,retResult.data); + } + }); + return result; + } + + /***********消息操作**************/ + static Msg(message : any, icon ?: any) : void { + if (icon != null) { + uni.showToast({ + title: message, + icon: icon + }); + } else { + uni.showToast({ + title: message, + icon: 'none' + }); + } + } + + static Alert(msg : string, cb ?: any) { + uni.showModal({ + title: '提示', + content: msg, + showCancel: false, + cancelText: '取消', + confirmText: '确定', + success: res => { + if (res.confirm) { + cb && cb(); + } + } + }) + } + + static LoadIng(text : any) : void { + uni.showLoading({ + title: text, + icon: 'none' + }); + } + + static LoadClose() : void { + uni.hideLoading(); + } + + /**********跳转操作*********/ + + + static GoPageTab(path : string) : void { + uni.switchTab({ + url: path + }); + } + + /**********跳转操作*********/ + static GoPage(path : string) : void { + uni.navigateTo({ + url: path, //跳转的页面 + success: function (res) { + // 通过eventChannel向被打开页面传送数据 + } + }); + } + /**********跳转并删除当前页面操作*********/ + static GoPageDelse(path : string) : void { + uni.redirectTo({ + url: path //跳转的页面 + }); + } + + /**********返回上一页*********/ + static GoPageBack() : void { + uni.navigateBack({ delta: 1 }); + } + + /*****获取图片base64*****/ + static UpLoadMediaBase64(path : string) { + return new Promise(function (resolve, reject) { + uni.uploadFile({ + url: 'http://cloud.pccsh.com/DefUp/UploadFileImgBase64', //仅为示例,非真实的接口地址 + filePath: path, + name: 'file', + success: (uploadFileRes) => { + resolve(uploadFileRes); + }, + fail: (err) => { + reject(err); + } + }); + }); + } + /*****获取图片位置信息*****/ + //获取时间戳 + static GetTimeSpan(milliSecond : number) { + return Date.now() + milliSecond; + } + + // 时间戳处理 + static formatDate(time : any, type : number) : string { + const date = new Date(time); + const year = date.getFullYear(); + const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以加1,并用0填充 + const day = String(date.getDate()).padStart(2, '0'); // 用0填充 + const hours = String(date.getHours()).padStart(2, '0'); // 用0填充 + const minutes = String(date.getMinutes()).padStart(2, '0'); // 用0填充 + const seconds = String(date.getSeconds()).padStart(2, '0'); // 用0填充 + if (type == 0) { + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } + else if (type == 1) { + return `${year}-${month}-${day} ${hours}:${minutes}`; + } else if (type == 2) { + return `${year}-${month}-${day}`; + } else if (type == 3) { + return `${hours}:${minutes}`; + } else if (type == 4) { + return `${year}${month}${day}`; + } + + else { + return `${hours}:${minutes}`; + } + } + + /*****节流*****/ + static throttle(fn: () => void, time: number) { + let canRun: boolean = true; + return function () { + if (!canRun) return; + canRun = false; + setTimeout(() => { + fn(); //可以不执行 + canRun = true; + }, time); + }; + } + /*****防抖*****/ + static debounce void>(fn: T, time: number): (...args: Parameters) => void { + let timerId: NodeJS.Timeout | null = null; + + return (...args: Parameters) => { + if (timerId) { + clearTimeout(timerId); + } + + timerId = setTimeout(() => { + fn(...args); // 执行传入的函数 + timerId = null; // 清除定时器ID + }, time); + }; + } + + + + + + // 普通图片上传 + static uploadH5(path, dic, callback) { + console.log(this.payuploadUrl,'xxx') + uni.uploadFile({ + url: this.payuploadUrl+'/Upload/Upload', + method: "POST", + header: { + 'Authorization': 'Bearer ' + Service.GetUserToken(), + }, + formData: { + "path": dic, + }, + filePath: path, + name: 'file', + success: (data) => { + let info = data.data + callback(info) + } + }) + } + + /** + * 创建并显示一条本地推送通知 (手机顶部栏消息) + * + * @param {string} title - 通知的标题 + * @param {string} content - 通知的主要内容 + * @param {Record} [payload] - (可选) 附带的业务数据。用户点击通知时,可以在 App 启动时获取到。 + */ + + + public static createLocalPush( + title: string, + content: string, + payload?: string, + ): void { + + // #ifdef APP-PLUS + console.log('准备创建本地推送:', { title, content, payload }); + + // 消息的配置对象 + const options = { + cover: false, // 是否覆盖上一次的通知。设为 false 则不覆盖,多条通知会并列显示。 + title: title, + vibrate:['100', '200', '300'] + }; + + // 调用 plus.push.createMessage API + plus.push.createMessage(content, payload, options); + + // #endif + + // #ifndef APP-PLUS + console.warn('本地推送功能仅在 App 端支持。'); + // #endif + } + + +} \ No newline at end of file diff --git a/src/colorui/animation.css b/src/colorui/animation.css new file mode 100644 index 0000000..931bb51 --- /dev/null +++ b/src/colorui/animation.css @@ -0,0 +1,184 @@ +/* + Animation 微动画 + 基于ColorUI组建库的动画模块 by 文晓港 2019年3月26日19:52:28 + */ + +/* css 滤镜 控制黑白底色gif的 */ +.gif-black{ + mix-blend-mode: screen; +} +.gif-white{ + mix-blend-mode: multiply; +} + + +/* Animation css */ +[class*=animation-] { + animation-duration: .5s; + animation-timing-function: ease-out; + animation-fill-mode: both +} + +.animation-fade { + animation-name: fade; + animation-duration: .8s; + animation-timing-function: linear +} + +.animation-scale-up { + animation-name: scale-up +} + +.animation-scale-down { + animation-name: scale-down +} + +.animation-slide-top { + animation-name: slide-top +} + +.animation-slide-bottom { + animation-name: slide-bottom +} + +.animation-slide-left { + animation-name: slide-left +} + +.animation-slide-right { + animation-name: slide-right +} + +.animation-shake { + animation-name: shake +} + +.animation-reverse { + animation-direction: reverse +} + +@keyframes fade { + 0% { + opacity: 0 + } + + 100% { + opacity: 1 + } +} + +@keyframes scale-up { + 0% { + opacity: 0; + transform: scale(.2) + } + + 100% { + opacity: 1; + transform: scale(1) + } +} + +@keyframes scale-down { + 0% { + opacity: 0; + transform: scale(1.8) + } + + 100% { + opacity: 1; + transform: scale(1) + } +} + +@keyframes slide-top { + 0% { + opacity: 0; + transform: translateY(-100%) + } + + 100% { + opacity: 1; + transform: translateY(0) + } +} + +@keyframes slide-bottom { + 0% { + opacity: 0; + transform: translateY(100%) + } + + 100% { + opacity: 1; + transform: translateY(0) + } +} + +@keyframes shake { + + 0%, + 100% { + transform: translateX(0) + } + + 10% { + transform: translateX(-9px) + } + + 20% { + transform: translateX(8px) + } + + 30% { + transform: translateX(-7px) + } + + 40% { + transform: translateX(6px) + } + + 50% { + transform: translateX(-5px) + } + + 60% { + transform: translateX(4px) + } + + 70% { + transform: translateX(-3px) + } + + 80% { + transform: translateX(2px) + } + + 90% { + transform: translateX(-1px) + } +} + +@keyframes slide-left { + 0% { + opacity: 0; + transform: translateX(-100%) + } + + 100% { + opacity: 1; + transform: translateX(0) + } +} + +@keyframes slide-right { + 0% { + opacity: 0; + transform: translateX(100%) + } + + 100% { + opacity: 1; + transform: translateX(0) + } +} \ No newline at end of file diff --git a/src/colorui/components/cu-custom.vue b/src/colorui/components/cu-custom.vue new file mode 100644 index 0000000..b09f70d --- /dev/null +++ b/src/colorui/components/cu-custom.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/src/colorui/icon.css b/src/colorui/icon.css new file mode 100644 index 0000000..16ed121 --- /dev/null +++ b/src/colorui/icon.css @@ -0,0 +1,1226 @@ +@keyframes cuIcon-spin { + 0% { + -webkit-transform: rotate(0); + transform: rotate(0); + } + + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} + +.cuIconfont-spin { + -webkit-animation: cuIcon-spin 2s infinite linear; + animation: cuIcon-spin 2s infinite linear; + display: inline-block; +} + +.cuIconfont-pulse { + -webkit-animation: cuIcon-spin 1s infinite steps(8); + animation: cuIcon-spin 1s infinite steps(8); + display: inline-block; +} + +[class*="cuIcon-"] { + font-family: "cuIcon"; + font-size: inherit; + font-style: normal; +} + +@font-face { + font-family: "cuIcon"; + src: url('//at.alicdn.com/t/font_533566_yfq2d9wdij.eot?t=1545239985831'); + /* IE9*/ + src: url('//at.alicdn.com/t/font_533566_yfq2d9wdij.eot?t=1545239985831#iefix') format('embedded-opentype'), + /* IE6-IE8 */ + url('data:application/x-font-woff;charset=utf-8;base64,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') format('woff'), + url('//at.alicdn.com/t/font_533566_yfq2d9wdij.ttf?t=1545239985831') format('truetype'), + /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/ + url('//at.alicdn.com/t/font_533566_yfq2d9wdij.svg?t=1545239985831#cuIconfont') format('svg'); + /* iOS 4.1- */ +} + +.cuIcon-appreciate:before { + content: "\e644"; +} + +.cuIcon-check:before { + content: "\e645"; +} + +.cuIcon-close:before { + content: "\e646"; +} + +.cuIcon-edit:before { + content: "\e649"; +} + +.cuIcon-emoji:before { + content: "\e64a"; +} + +.cuIcon-favorfill:before { + content: "\e64b"; +} + +.cuIcon-favor:before { + content: "\e64c"; +} + +.cuIcon-loading:before { + content: "\e64f"; +} + +.cuIcon-locationfill:before { + content: "\e650"; +} + +.cuIcon-location:before { + content: "\e651"; +} + +.cuIcon-phone:before { + content: "\e652"; +} + +.cuIcon-roundcheckfill:before { + content: "\e656"; +} + +.cuIcon-roundcheck:before { + content: "\e657"; +} + +.cuIcon-roundclosefill:before { + content: "\e658"; +} + +.cuIcon-roundclose:before { + content: "\e659"; +} + +.cuIcon-roundrightfill:before { + content: "\e65a"; +} + +.cuIcon-roundright:before { + content: "\e65b"; +} + +.cuIcon-search:before { + content: "\e65c"; +} + +.cuIcon-taxi:before { + content: "\e65d"; +} + +.cuIcon-timefill:before { + content: "\e65e"; +} + +.cuIcon-time:before { + content: "\e65f"; +} + +.cuIcon-unfold:before { + content: "\e661"; +} + +.cuIcon-warnfill:before { + content: "\e662"; +} + +.cuIcon-warn:before { + content: "\e663"; +} + +.cuIcon-camerafill:before { + content: "\e664"; +} + +.cuIcon-camera:before { + content: "\e665"; +} + +.cuIcon-commentfill:before { + content: "\e666"; +} + +.cuIcon-comment:before { + content: "\e667"; +} + +.cuIcon-likefill:before { + content: "\e668"; +} + +.cuIcon-like:before { + content: "\e669"; +} + +.cuIcon-notificationfill:before { + content: "\e66a"; +} + +.cuIcon-notification:before { + content: "\e66b"; +} + +.cuIcon-order:before { + content: "\e66c"; +} + +.cuIcon-samefill:before { + content: "\e66d"; +} + +.cuIcon-same:before { + content: "\e66e"; +} + +.cuIcon-deliver:before { + content: "\e671"; +} + +.cuIcon-evaluate:before { + content: "\e672"; +} + +.cuIcon-pay:before { + content: "\e673"; +} + +.cuIcon-send:before { + content: "\e675"; +} + +.cuIcon-shop:before { + content: "\e676"; +} + +.cuIcon-ticket:before { + content: "\e677"; +} + +.cuIcon-back:before { + content: "\e679"; +} + +.cuIcon-cascades:before { + content: "\e67c"; +} + +.cuIcon-discover:before { + content: "\e67e"; +} + +.cuIcon-list:before { + content: "\e682"; +} + +.cuIcon-more:before { + content: "\e684"; +} + +.cuIcon-scan:before { + content: "\e689"; +} + +.cuIcon-settings:before { + content: "\e68a"; +} + +.cuIcon-questionfill:before { + content: "\e690"; +} + +.cuIcon-question:before { + content: "\e691"; +} + +.cuIcon-shopfill:before { + content: "\e697"; +} + +.cuIcon-form:before { + content: "\e699"; +} + +.cuIcon-pic:before { + content: "\e69b"; +} + +.cuIcon-filter:before { + content: "\e69c"; +} + +.cuIcon-footprint:before { + content: "\e69d"; +} + +.cuIcon-top:before { + content: "\e69e"; +} + +.cuIcon-pulldown:before { + content: "\e69f"; +} + +.cuIcon-pullup:before { + content: "\e6a0"; +} + +.cuIcon-right:before { + content: "\e6a3"; +} + +.cuIcon-refresh:before { + content: "\e6a4"; +} + +.cuIcon-moreandroid:before { + content: "\e6a5"; +} + +.cuIcon-deletefill:before { + content: "\e6a6"; +} + +.cuIcon-refund:before { + content: "\e6ac"; +} + +.cuIcon-cart:before { + content: "\e6af"; +} + +.cuIcon-qrcode:before { + content: "\e6b0"; +} + +.cuIcon-remind:before { + content: "\e6b2"; +} + +.cuIcon-delete:before { + content: "\e6b4"; +} + +.cuIcon-profile:before { + content: "\e6b7"; +} + +.cuIcon-home:before { + content: "\e6b8"; +} + +.cuIcon-cartfill:before { + content: "\e6b9"; +} + +.cuIcon-discoverfill:before { + content: "\e6ba"; +} + +.cuIcon-homefill:before { + content: "\e6bb"; +} + +.cuIcon-message:before { + content: "\e6bc"; +} + +.cuIcon-addressbook:before { + content: "\e6bd"; +} + +.cuIcon-link:before { + content: "\e6bf"; +} + +.cuIcon-lock:before { + content: "\e6c0"; +} + +.cuIcon-unlock:before { + content: "\e6c2"; +} + +.cuIcon-vip:before { + content: "\e6c3"; +} + +.cuIcon-weibo:before { + content: "\e6c4"; +} + +.cuIcon-activity:before { + content: "\e6c5"; +} + +.cuIcon-friendaddfill:before { + content: "\e6c9"; +} + +.cuIcon-friendadd:before { + content: "\e6ca"; +} + +.cuIcon-friendfamous:before { + content: "\e6cb"; +} + +.cuIcon-friend:before { + content: "\e6cc"; +} + +.cuIcon-goods:before { + content: "\e6cd"; +} + +.cuIcon-selection:before { + content: "\e6ce"; +} + +.cuIcon-explore:before { + content: "\e6d2"; +} + +.cuIcon-present:before { + content: "\e6d3"; +} + +.cuIcon-squarecheckfill:before { + content: "\e6d4"; +} + +.cuIcon-square:before { + content: "\e6d5"; +} + +.cuIcon-squarecheck:before { + content: "\e6d6"; +} + +.cuIcon-round:before { + content: "\e6d7"; +} + +.cuIcon-roundaddfill:before { + content: "\e6d8"; +} + +.cuIcon-roundadd:before { + content: "\e6d9"; +} + +.cuIcon-add:before { + content: "\e6da"; +} + +.cuIcon-notificationforbidfill:before { + content: "\e6db"; +} + +.cuIcon-explorefill:before { + content: "\e6dd"; +} + +.cuIcon-fold:before { + content: "\e6de"; +} + +.cuIcon-game:before { + content: "\e6df"; +} + +.cuIcon-redpacket:before { + content: "\e6e0"; +} + +.cuIcon-selectionfill:before { + content: "\e6e1"; +} + +.cuIcon-similar:before { + content: "\e6e2"; +} + +.cuIcon-appreciatefill:before { + content: "\e6e3"; +} + +.cuIcon-infofill:before { + content: "\e6e4"; +} + +.cuIcon-info:before { + content: "\e6e5"; +} + +.cuIcon-forwardfill:before { + content: "\e6ea"; +} + +.cuIcon-forward:before { + content: "\e6eb"; +} + +.cuIcon-rechargefill:before { + content: "\e6ec"; +} + +.cuIcon-recharge:before { + content: "\e6ed"; +} + +.cuIcon-vipcard:before { + content: "\e6ee"; +} + +.cuIcon-voice:before { + content: "\e6ef"; +} + +.cuIcon-voicefill:before { + content: "\e6f0"; +} + +.cuIcon-friendfavor:before { + content: "\e6f1"; +} + +.cuIcon-wifi:before { + content: "\e6f2"; +} + +.cuIcon-share:before { + content: "\e6f3"; +} + +.cuIcon-wefill:before { + content: "\e6f4"; +} + +.cuIcon-we:before { + content: "\e6f5"; +} + +.cuIcon-lightauto:before { + content: "\e6f6"; +} + +.cuIcon-lightforbid:before { + content: "\e6f7"; +} + +.cuIcon-lightfill:before { + content: "\e6f8"; +} + +.cuIcon-camerarotate:before { + content: "\e6f9"; +} + +.cuIcon-light:before { + content: "\e6fa"; +} + +.cuIcon-barcode:before { + content: "\e6fb"; +} + +.cuIcon-flashlightclose:before { + content: "\e6fc"; +} + +.cuIcon-flashlightopen:before { + content: "\e6fd"; +} + +.cuIcon-searchlist:before { + content: "\e6fe"; +} + +.cuIcon-service:before { + content: "\e6ff"; +} + +.cuIcon-sort:before { + content: "\e700"; +} + +.cuIcon-down:before { + content: "\e703"; +} + +.cuIcon-mobile:before { + content: "\e704"; +} + +.cuIcon-mobilefill:before { + content: "\e705"; +} + +.cuIcon-copy:before { + content: "\e706"; +} + +.cuIcon-countdownfill:before { + content: "\e707"; +} + +.cuIcon-countdown:before { + content: "\e708"; +} + +.cuIcon-noticefill:before { + content: "\e709"; +} + +.cuIcon-notice:before { + content: "\e70a"; +} + +.cuIcon-upstagefill:before { + content: "\e70e"; +} + +.cuIcon-upstage:before { + content: "\e70f"; +} + +.cuIcon-babyfill:before { + content: "\e710"; +} + +.cuIcon-baby:before { + content: "\e711"; +} + +.cuIcon-brandfill:before { + content: "\e712"; +} + +.cuIcon-brand:before { + content: "\e713"; +} + +.cuIcon-choicenessfill:before { + content: "\e714"; +} + +.cuIcon-choiceness:before { + content: "\e715"; +} + +.cuIcon-clothesfill:before { + content: "\e716"; +} + +.cuIcon-clothes:before { + content: "\e717"; +} + +.cuIcon-creativefill:before { + content: "\e718"; +} + +.cuIcon-creative:before { + content: "\e719"; +} + +.cuIcon-female:before { + content: "\e71a"; +} + +.cuIcon-keyboard:before { + content: "\e71b"; +} + +.cuIcon-male:before { + content: "\e71c"; +} + +.cuIcon-newfill:before { + content: "\e71d"; +} + +.cuIcon-new:before { + content: "\e71e"; +} + +.cuIcon-pullleft:before { + content: "\e71f"; +} + +.cuIcon-pullright:before { + content: "\e720"; +} + +.cuIcon-rankfill:before { + content: "\e721"; +} + +.cuIcon-rank:before { + content: "\e722"; +} + +.cuIcon-bad:before { + content: "\e723"; +} + +.cuIcon-cameraadd:before { + content: "\e724"; +} + +.cuIcon-focus:before { + content: "\e725"; +} + +.cuIcon-friendfill:before { + content: "\e726"; +} + +.cuIcon-cameraaddfill:before { + content: "\e727"; +} + +.cuIcon-apps:before { + content: "\e729"; +} + +.cuIcon-paintfill:before { + content: "\e72a"; +} + +.cuIcon-paint:before { + content: "\e72b"; +} + +.cuIcon-picfill:before { + content: "\e72c"; +} + +.cuIcon-refresharrow:before { + content: "\e72d"; +} + +.cuIcon-colorlens:before { + content: "\e6e6"; +} + +.cuIcon-markfill:before { + content: "\e730"; +} + +.cuIcon-mark:before { + content: "\e731"; +} + +.cuIcon-presentfill:before { + content: "\e732"; +} + +.cuIcon-repeal:before { + content: "\e733"; +} + +.cuIcon-album:before { + content: "\e734"; +} + +.cuIcon-peoplefill:before { + content: "\e735"; +} + +.cuIcon-people:before { + content: "\e736"; +} + +.cuIcon-servicefill:before { + content: "\e737"; +} + +.cuIcon-repair:before { + content: "\e738"; +} + +.cuIcon-file:before { + content: "\e739"; +} + +.cuIcon-repairfill:before { + content: "\e73a"; +} + +.cuIcon-taoxiaopu:before { + content: "\e73b"; +} + +.cuIcon-weixin:before { + content: "\e612"; +} + +.cuIcon-attentionfill:before { + content: "\e73c"; +} + +.cuIcon-attention:before { + content: "\e73d"; +} + +.cuIcon-commandfill:before { + content: "\e73e"; +} + +.cuIcon-command:before { + content: "\e73f"; +} + +.cuIcon-communityfill:before { + content: "\e740"; +} + +.cuIcon-community:before { + content: "\e741"; +} + +.cuIcon-read:before { + content: "\e742"; +} + +.cuIcon-calendar:before { + content: "\e74a"; +} + +.cuIcon-cut:before { + content: "\e74b"; +} + +.cuIcon-magic:before { + content: "\e74c"; +} + +.cuIcon-backwardfill:before { + content: "\e74d"; +} + +.cuIcon-playfill:before { + content: "\e74f"; +} + +.cuIcon-stop:before { + content: "\e750"; +} + +.cuIcon-tagfill:before { + content: "\e751"; +} + +.cuIcon-tag:before { + content: "\e752"; +} + +.cuIcon-group:before { + content: "\e753"; +} + +.cuIcon-all:before { + content: "\e755"; +} + +.cuIcon-backdelete:before { + content: "\e756"; +} + +.cuIcon-hotfill:before { + content: "\e757"; +} + +.cuIcon-hot:before { + content: "\e758"; +} + +.cuIcon-post:before { + content: "\e759"; +} + +.cuIcon-radiobox:before { + content: "\e75b"; +} + +.cuIcon-rounddown:before { + content: "\e75c"; +} + +.cuIcon-upload:before { + content: "\e75d"; +} + +.cuIcon-writefill:before { + content: "\e760"; +} + +.cuIcon-write:before { + content: "\e761"; +} + +.cuIcon-radioboxfill:before { + content: "\e763"; +} + +.cuIcon-punch:before { + content: "\e764"; +} + +.cuIcon-shake:before { + content: "\e765"; +} + +.cuIcon-move:before { + content: "\e768"; +} + +.cuIcon-safe:before { + content: "\e769"; +} + +.cuIcon-activityfill:before { + content: "\e775"; +} + +.cuIcon-crownfill:before { + content: "\e776"; +} + +.cuIcon-crown:before { + content: "\e777"; +} + +.cuIcon-goodsfill:before { + content: "\e778"; +} + +.cuIcon-messagefill:before { + content: "\e779"; +} + +.cuIcon-profilefill:before { + content: "\e77a"; +} + +.cuIcon-sound:before { + content: "\e77b"; +} + +.cuIcon-sponsorfill:before { + content: "\e77c"; +} + +.cuIcon-sponsor:before { + content: "\e77d"; +} + +.cuIcon-upblock:before { + content: "\e77e"; +} + +.cuIcon-weblock:before { + content: "\e77f"; +} + +.cuIcon-weunblock:before { + content: "\e780"; +} + +.cuIcon-my:before { + content: "\e78b"; +} + +.cuIcon-myfill:before { + content: "\e78c"; +} + +.cuIcon-emojifill:before { + content: "\e78d"; +} + +.cuIcon-emojiflashfill:before { + content: "\e78e"; +} + +.cuIcon-flashbuyfill:before { + content: "\e78f"; +} + +.cuIcon-text:before { + content: "\e791"; +} + +.cuIcon-goodsfavor:before { + content: "\e794"; +} + +.cuIcon-musicfill:before { + content: "\e795"; +} + +.cuIcon-musicforbidfill:before { + content: "\e796"; +} + +.cuIcon-card:before { + content: "\e624"; +} + +.cuIcon-triangledownfill:before { + content: "\e79b"; +} + +.cuIcon-triangleupfill:before { + content: "\e79c"; +} + +.cuIcon-roundleftfill-copy:before { + content: "\e79e"; +} + +.cuIcon-font:before { + content: "\e76a"; +} + +.cuIcon-title:before { + content: "\e82f"; +} + +.cuIcon-recordfill:before { + content: "\e7a4"; +} + +.cuIcon-record:before { + content: "\e7a6"; +} + +.cuIcon-cardboardfill:before { + content: "\e7a9"; +} + +.cuIcon-cardboard:before { + content: "\e7aa"; +} + +.cuIcon-formfill:before { + content: "\e7ab"; +} + +.cuIcon-coin:before { + content: "\e7ac"; +} + +.cuIcon-cardboardforbid:before { + content: "\e7af"; +} + +.cuIcon-circlefill:before { + content: "\e7b0"; +} + +.cuIcon-circle:before { + content: "\e7b1"; +} + +.cuIcon-attentionforbid:before { + content: "\e7b2"; +} + +.cuIcon-attentionforbidfill:before { + content: "\e7b3"; +} + +.cuIcon-attentionfavorfill:before { + content: "\e7b4"; +} + +.cuIcon-attentionfavor:before { + content: "\e7b5"; +} + +.cuIcon-titles:before { + content: "\e701"; +} + +.cuIcon-icloading:before { + content: "\e67a"; +} + +.cuIcon-full:before { + content: "\e7bc"; +} + +.cuIcon-mail:before { + content: "\e7bd"; +} + +.cuIcon-peoplelist:before { + content: "\e7be"; +} + +.cuIcon-goodsnewfill:before { + content: "\e7bf"; +} + +.cuIcon-goodsnew:before { + content: "\e7c0"; +} + +.cuIcon-medalfill:before { + content: "\e7c1"; +} + +.cuIcon-medal:before { + content: "\e7c2"; +} + +.cuIcon-newsfill:before { + content: "\e7c3"; +} + +.cuIcon-newshotfill:before { + content: "\e7c4"; +} + +.cuIcon-newshot:before { + content: "\e7c5"; +} + +.cuIcon-news:before { + content: "\e7c6"; +} + +.cuIcon-videofill:before { + content: "\e7c7"; +} + +.cuIcon-video:before { + content: "\e7c8"; +} + +.cuIcon-exit:before { + content: "\e7cb"; +} + +.cuIcon-skinfill:before { + content: "\e7cc"; +} + +.cuIcon-skin:before { + content: "\e7cd"; +} + +.cuIcon-moneybagfill:before { + content: "\e7ce"; +} + +.cuIcon-usefullfill:before { + content: "\e7cf"; +} + +.cuIcon-usefull:before { + content: "\e7d0"; +} + +.cuIcon-moneybag:before { + content: "\e7d1"; +} + +.cuIcon-redpacket_fill:before { + content: "\e7d3"; +} + +.cuIcon-subscription:before { + content: "\e7d4"; +} + +.cuIcon-loading1:before { + content: "\e633"; +} + +.cuIcon-github:before { + content: "\e692"; +} + +.cuIcon-global:before { + content: "\e7eb"; +} + +.cuIcon-settingsfill:before { + content: "\e6ab"; +} + +.cuIcon-back_android:before { + content: "\e7ed"; +} + +.cuIcon-expressman:before { + content: "\e7ef"; +} + +.cuIcon-evaluate_fill:before { + content: "\e7f0"; +} + +.cuIcon-group_fill:before { + content: "\e7f5"; +} + +.cuIcon-play_forward_fill:before { + content: "\e7f6"; +} + +.cuIcon-deliver_fill:before { + content: "\e7f7"; +} + +.cuIcon-notice_forbid_fill:before { + content: "\e7f8"; +} + +.cuIcon-fork:before { + content: "\e60c"; +} + +.cuIcon-pick:before { + content: "\e7fa"; +} + +.cuIcon-wenzi:before { + content: "\e6a7"; +} + +.cuIcon-ellipse:before { + content: "\e600"; +} + +.cuIcon-qr_code:before { + content: "\e61b"; +} + +.cuIcon-dianhua:before { + content: "\e64d"; +} + +.cuIcon-cuIcon:before { + content: "\e602"; +} + +.cuIcon-loading2:before { + content: "\e7f1"; +} + +.cuIcon-btn:before { + content: "\e601"; +} diff --git a/src/colorui/main.css b/src/colorui/main.css new file mode 100644 index 0000000..fade3b2 --- /dev/null +++ b/src/colorui/main.css @@ -0,0 +1,3912 @@ +/* + ColorUi for uniApp v2.1.6 | by 文晓港 2019-05-31 10:44:24 + 仅供学习交流,如作它用所承受的法律责任一概与作者无关 + + *使用ColorUi开发扩展与插件时,请注明基于ColorUi开发 + + (QQ交流群:240787041) +*/ + +/* ================== + 初始化 + ==================== */ +body { + background-color: #f1f1f1; + font-size: 28upx; + color: #333333; + font-family: Helvetica Neue, Helvetica, sans-serif; +} + +view, +scroll-view, +swiper, +button, +input, +textarea, +label, +navigator, +image { + box-sizing: border-box; +} + +.round { + border-radius: 5000upx; +} + +.radius { + border-radius: 6upx; +} + +/* ================== + 图片 + ==================== */ + +image { + max-width: 100%; + display: inline-block; + position: relative; + z-index: 0; +} + +image.loading::before { + content: ""; + background-color: #f5f5f5; + display: block; + position: absolute; + width: 100%; + height: 100%; + z-index: -2; +} + +image.loading::after { + content: "\e7f1"; + font-family: "cuIcon"; + position: absolute; + top: 0; + left: 0; + width: 32upx; + height: 32upx; + line-height: 32upx; + right: 0; + bottom: 0; + z-index: -1; + font-size: 32upx; + margin: auto; + color: #ccc; + -webkit-animation: cuIcon-spin 2s infinite linear; + animation: cuIcon-spin 2s infinite linear; + display: block; +} + +.response { + width: 100%; +} + +/* ================== + 开关 + ==================== */ + +switch, +checkbox, +radio { + position: relative; +} + +switch::after, +switch::before { + font-family: "cuIcon"; + content: "\e645"; + position: absolute; + color: #ffffff !important; + top: 0%; + left: 0upx; + font-size: 26upx; + line-height: 26px; + width: 50%; + text-align: center; + pointer-events: none; + transform: scale(0, 0); + transition: all 0.3s ease-in-out 0s; + z-index: 9; + bottom: 0; + height: 26px; + margin: auto; +} + +switch::before { + content: "\e646"; + right: 0; + transform: scale(1, 1); + left: auto; +} + +switch[checked]::after, +switch.checked::after { + transform: scale(1, 1); +} + +switch[checked]::before, +switch.checked::before { + transform: scale(0, 0); +} + +/* #ifndef MP-ALIPAY */ +radio::before, +checkbox::before { + font-family: "cuIcon"; + content: "\e645"; + position: absolute; + color: #ffffff !important; + top: 50%; + margin-top: -8px; + right: 5px; + font-size: 32upx; + line-height: 16px; + pointer-events: none; + transform: scale(1, 1); + transition: all 0.3s ease-in-out 0s; + z-index: 9; +} + +radio .wx-radio-input, +checkbox .wx-checkbox-input, +radio .uni-radio-input, +checkbox .uni-checkbox-input { + margin: 0; + width: 24px; + height: 24px; +} + +checkbox.round .wx-checkbox-input, +checkbox.round .uni-checkbox-input { + border-radius: 100upx; +} + +/* #endif */ + +switch[checked]::before { + transform: scale(0, 0); +} + +switch .wx-switch-input, +switch .uni-switch-input { + border: none; + padding: 0 24px; + width: 48px; + height: 26px; + margin: 0; + border-radius: 100upx; +} + +switch .wx-switch-input:not([class*="bg-"]), +switch .uni-switch-input:not([class*="bg-"]) { + background: #8799a3 !important; +} + +switch .wx-switch-input::after, +switch .uni-switch-input::after { + margin: auto; + width: 26px; + height: 26px; + border-radius: 100upx; + left: 0upx; + top: 0upx; + bottom: 0upx; + position: absolute; + transform: scale(0.9, 0.9); + transition: all 0.1s ease-in-out 0s; +} + +switch .wx-switch-input.wx-switch-input-checked::after, +switch .uni-switch-input.uni-switch-input-checked::after { + margin: auto; + left: 22px; + box-shadow: none; + transform: scale(0.9, 0.9); +} + +radio-group { + display: inline-block; +} + + + +switch.radius .wx-switch-input::after, +switch.radius .wx-switch-input, +switch.radius .wx-switch-input::before, +switch.radius .uni-switch-input::after, +switch.radius .uni-switch-input, +switch.radius .uni-switch-input::before { + border-radius: 10upx; +} + +switch .wx-switch-input::before, +radio.radio::before, +checkbox .wx-checkbox-input::before, +radio .wx-radio-input::before, +switch .uni-switch-input::before, +radio.radio::before, +checkbox .uni-checkbox-input::before, +radio .uni-radio-input::before { + display: none; +} + +radio.radio[checked]::after, +radio.radio .uni-radio-input-checked::after { + content: ""; + background-color: transparent; + display: block; + position: absolute; + width: 8px; + height: 8px; + z-index: 999; + top: 0upx; + left: 0upx; + right: 0; + bottom: 0; + margin: auto; + border-radius: 200upx; + /* #ifndef MP */ + border: 7px solid #ffffff !important; + /* #endif */ + + /* #ifdef MP */ + border: 8px solid #ffffff !important; + /* #endif */ +} + +.switch-sex::after { + content: "\e71c"; +} + +.switch-sex::before { + content: "\e71a"; +} + +.switch-sex .wx-switch-input, +.switch-sex .uni-switch-input { + background: #e54d42 !important; + border-color: #e54d42 !important; +} + +.switch-sex[checked] .wx-switch-input, +.switch-sex.checked .uni-switch-input { + background: #0081ff !important; + border-color: #0081ff !important; +} + +switch.red[checked] .wx-switch-input.wx-switch-input-checked, +checkbox.red[checked] .wx-checkbox-input, +radio.red[checked] .wx-radio-input, +switch.red.checked .uni-switch-input.uni-switch-input-checked, +checkbox.red.checked .uni-checkbox-input, +radio.red.checked .uni-radio-input { + background-color: #e54d42 !important; + border-color: #e54d42 !important; + color: #ffffff !important; +} + +switch.orange[checked] .wx-switch-input, +checkbox.orange[checked] .wx-checkbox-input, +radio.orange[checked] .wx-radio-input, +switch.orange.checked .uni-switch-input, +checkbox.orange.checked .uni-checkbox-input, +radio.orange.checked .uni-radio-input { + background-color: #f37b1d !important; + border-color: #f37b1d !important; + color: #ffffff !important; +} + +switch.yellow[checked] .wx-switch-input, +checkbox.yellow[checked] .wx-checkbox-input, +radio.yellow[checked] .wx-radio-input, +switch.yellow.checked .uni-switch-input, +checkbox.yellow.checked .uni-checkbox-input, +radio.yellow.checked .uni-radio-input { + background-color: #fbbd08 !important; + border-color: #fbbd08 !important; + color: #333333 !important; +} + +switch.olive[checked] .wx-switch-input, +checkbox.olive[checked] .wx-checkbox-input, +radio.olive[checked] .wx-radio-input, +switch.olive.checked .uni-switch-input, +checkbox.olive.checked .uni-checkbox-input, +radio.olive.checked .uni-radio-input { + background-color: #8dc63f !important; + border-color: #8dc63f !important; + color: #ffffff !important; +} + +switch.green[checked] .wx-switch-input, +switch[checked] .wx-switch-input, +checkbox.green[checked] .wx-checkbox-input, +checkbox[checked] .wx-checkbox-input, +radio.green[checked] .wx-radio-input, +radio[checked] .wx-radio-input, +switch.green.checked .uni-switch-input, +switch.checked .uni-switch-input, +checkbox.green.checked .uni-checkbox-input, +checkbox.checked .uni-checkbox-input, +radio.green.checked .uni-radio-input, +radio.checked .uni-radio-input { + background-color: #39b54a !important; + border-color: #39b54a !important; + color: #ffffff !important; + border-color: #39B54A !important; +} + +switch.cyan[checked] .wx-switch-input, +checkbox.cyan[checked] .wx-checkbox-input, +radio.cyan[checked] .wx-radio-input, +switch.cyan.checked .uni-switch-input, +checkbox.cyan.checked .uni-checkbox-input, +radio.cyan.checked .uni-radio-input { + background-color: #1cbbb4 !important; + border-color: #1cbbb4 !important; + color: #ffffff !important; +} + +switch.blue[checked] .wx-switch-input, +checkbox.blue[checked] .wx-checkbox-input, +radio.blue[checked] .wx-radio-input, +switch.blue.checked .uni-switch-input, +checkbox.blue.checked .uni-checkbox-input, +radio.blue.checked .uni-radio-input { + background-color: #0081ff !important; + border-color: #0081ff !important; + color: #ffffff !important; +} + +switch.purple[checked] .wx-switch-input, +checkbox.purple[checked] .wx-checkbox-input, +radio.purple[checked] .wx-radio-input, +switch.purple.checked .uni-switch-input, +checkbox.purple.checked .uni-checkbox-input, +radio.purple.checked .uni-radio-input { + background-color: #6739b6 !important; + border-color: #6739b6 !important; + color: #ffffff !important; +} + +switch.mauve[checked] .wx-switch-input, +checkbox.mauve[checked] .wx-checkbox-input, +radio.mauve[checked] .wx-radio-input, +switch.mauve.checked .uni-switch-input, +checkbox.mauve.checked .uni-checkbox-input, +radio.mauve.checked .uni-radio-input { + background-color: #9c26b0 !important; + border-color: #9c26b0 !important; + color: #ffffff !important; +} + +switch.pink[checked] .wx-switch-input, +checkbox.pink[checked] .wx-checkbox-input, +radio.pink[checked] .wx-radio-input, +switch.pink.checked .uni-switch-input, +checkbox.pink.checked .uni-checkbox-input, +radio.pink.checked .uni-radio-input { + background-color: #e03997 !important; + border-color: #e03997 !important; + color: #ffffff !important; +} + +switch.brown[checked] .wx-switch-input, +checkbox.brown[checked] .wx-checkbox-input, +radio.brown[checked] .wx-radio-input, +switch.brown.checked .uni-switch-input, +checkbox.brown.checked .uni-checkbox-input, +radio.brown.checked .uni-radio-input { + background-color: #a5673f !important; + border-color: #a5673f !important; + color: #ffffff !important; +} + +switch.grey[checked] .wx-switch-input, +checkbox.grey[checked] .wx-checkbox-input, +radio.grey[checked] .wx-radio-input, +switch.grey.checked .uni-switch-input, +checkbox.grey.checked .uni-checkbox-input, +radio.grey.checked .uni-radio-input { + background-color: #8799a3 !important; + border-color: #8799a3 !important; + color: #ffffff !important; +} + +switch.gray[checked] .wx-switch-input, +checkbox.gray[checked] .wx-checkbox-input, +radio.gray[checked] .wx-radio-input, +switch.gray.checked .uni-switch-input, +checkbox.gray.checked .uni-checkbox-input, +radio.gray.checked .uni-radio-input { + background-color: #f0f0f0 !important; + border-color: #f0f0f0 !important; + color: #333333 !important; +} + +switch.black[checked] .wx-switch-input, +checkbox.black[checked] .wx-checkbox-input, +radio.black[checked] .wx-radio-input, +switch.black.checked .uni-switch-input, +checkbox.black.checked .uni-checkbox-input, +radio.black.checked .uni-radio-input { + background-color: #333333 !important; + border-color: #333333 !important; + color: #ffffff !important; +} + +switch.white[checked] .wx-switch-input, +checkbox.white[checked] .wx-checkbox-input, +radio.white[checked] .wx-radio-input, +switch.white.checked .uni-switch-input, +checkbox.white.checked .uni-checkbox-input, +radio.white.checked .uni-radio-input { + background-color: #ffffff !important; + border-color: #ffffff !important; + color: #333333 !important; +} + +/* ================== + 边框 + ==================== */ + +/* -- 实线 -- */ + +.solid, +.solid-top, +.solid-right, +.solid-bottom, +.solid-left, +.solids, +.solids-top, +.solids-right, +.solids-bottom, +.solids-left, +.dashed, +.dashed-top, +.dashed-right, +.dashed-bottom, +.dashed-left { + position: relative; +} + +.solid::after, +.solid-top::after, +.solid-right::after, +.solid-bottom::after, +.solid-left::after, +.solids::after, +.solids-top::after, +.solids-right::after, +.solids-bottom::after, +.solids-left::after, +.dashed::after, +.dashed-top::after, +.dashed-right::after, +.dashed-bottom::after, +.dashed-left::after { + content: " "; + width: 200%; + height: 200%; + position: absolute; + top: 0; + left: 0; + border-radius: inherit; + transform: scale(0.5); + transform-origin: 0 0; + pointer-events: none; + box-sizing: border-box; +} + +.solid::after { + border: 1upx solid rgba(0, 0, 0, 0.1); +} + +.solid-top::after { + border-top: 1upx solid rgba(0, 0, 0, 0.1); +} + +.solid-right::after { + border-right: 1upx solid rgba(0, 0, 0, 0.1); +} + +.solid-bottom::after { + border-bottom: 1upx solid rgba(0, 0, 0, 0.1); +} + +.solid-left::after { + border-left: 1upx solid rgba(0, 0, 0, 0.1); +} + +.solids::after { + border: 8upx solid #eee; +} + +.solids-top::after { + border-top: 8upx solid #eee; +} + +.solids-right::after { + border-right: 8upx solid #eee; +} + +.solids-bottom::after { + border-bottom: 8upx solid #eee; +} + +.solids-left::after { + border-left: 8upx solid #eee; +} + +/* -- 虚线 -- */ + +.dashed::after { + border: 1upx dashed #ddd; +} + +.dashed-top::after { + border-top: 1upx dashed #ddd; +} + +.dashed-right::after { + border-right: 1upx dashed #ddd; +} + +.dashed-bottom::after { + border-bottom: 1upx dashed #ddd; +} + +.dashed-left::after { + border-left: 1upx dashed #ddd; +} + +/* -- 阴影 -- */ + +.shadow[class*='white'] { + --ShadowSize: 0 1upx 6upx; +} + +.shadow-lg { + --ShadowSize: 0upx 40upx 100upx 0upx; +} + +.shadow-warp { + position: relative; + box-shadow: 0 0 10upx rgba(0, 0, 0, 0.1); +} + +.shadow-warp:before, +.shadow-warp:after { + position: absolute; + content: ""; + top: 20upx; + bottom: 30upx; + left: 20upx; + width: 50%; + box-shadow: 0 30upx 20upx rgba(0, 0, 0, 0.2); + transform: rotate(-3deg); + z-index: -1; +} + +.shadow-warp:after { + right: 20upx; + left: auto; + transform: rotate(3deg); +} + +.shadow-blur { + position: relative; +} + +.shadow-blur::before { + content: ""; + display: block; + background: inherit; + filter: blur(10upx); + position: absolute; + width: 100%; + height: 100%; + top: 10upx; + left: 10upx; + z-index: -1; + opacity: 0.4; + transform-origin: 0 0; + border-radius: inherit; + transform: scale(1, 1); +} + +/* ================== + 按钮 + ==================== */ + +.cu-btn { + position: relative; + border: 0upx; + display: inline-flex; + align-items: center; + justify-content: center; + box-sizing: border-box; + padding: 0 30upx; + font-size: 28upx; + height: 64upx; + line-height: 1; + text-align: center; + text-decoration: none; + overflow: visible; + margin-left: initial; + transform: translate(0upx, 0upx); + margin-right: initial; +} + +.cu-btn::after { + display: none; +} + +.cu-btn:not([class*="bg-"]) { + background-color: #f0f0f0; +} + +.cu-btn[class*="line"] { + background-color: transparent; +} + +.cu-btn[class*="line"]::after { + content: " "; + display: block; + width: 200%; + height: 200%; + position: absolute; + top: 0; + left: 0; + border: 1upx solid currentColor; + transform: scale(0.5); + transform-origin: 0 0; + box-sizing: border-box; + border-radius: 12upx; + z-index: 1; + pointer-events: none; +} + +.cu-btn.round[class*="line"]::after { + border-radius: 1000upx; +} + +.cu-btn[class*="lines"]::after { + border: 6upx solid currentColor; +} + +.cu-btn[class*="bg-"]::after { + display: none; +} + +.cu-btn.sm { + padding: 0 20upx; + font-size: 20upx; + height: 48upx; +} + +.cu-btn.lg { + padding: 0 40upx; + font-size: 32upx; + height: 80upx; +} + +.cu-btn.cuIcon.sm { + width: 48upx; + height: 48upx; +} + +.cu-btn.cuIcon { + width: 64upx; + height: 64upx; + border-radius: 500upx; + padding: 0; +} + +button.cuIcon.lg { + width: 80upx; + height: 80upx; +} + +.cu-btn.shadow-blur::before { + top: 4upx; + left: 4upx; + filter: blur(6upx); + opacity: 0.6; +} + +.cu-btn.button-hover { + transform: translate(1upx, 1upx); +} + +.block { + display: block; +} + +.cu-btn.block { + display: flex; +} + +.cu-btn[disabled] { + opacity: 0.6; + color: #ffffff; +} + +/* ================== + 徽章 + ==================== */ + +.cu-tag { + font-size: 24upx; + vertical-align: middle; + position: relative; + display: inline-flex; + align-items: center; + justify-content: center; + box-sizing: border-box; + padding: 0upx 16upx; + height: 48upx; + font-family: Helvetica Neue, Helvetica, sans-serif; + white-space: nowrap; +} + +.cu-tag:not([class*="bg"]):not([class*="line"]) { + background-color: #f1f1f1; +} + +.cu-tag[class*="line-"]::after { + content: " "; + width: 200%; + height: 200%; + position: absolute; + top: 0; + left: 0; + border: 1upx solid currentColor; + transform: scale(0.5); + transform-origin: 0 0; + box-sizing: border-box; + border-radius: inherit; + z-index: 1; + pointer-events: none; +} + +.cu-tag.radius[class*="line"]::after { + border-radius: 12upx; +} + +.cu-tag.round[class*="line"]::after { + border-radius: 1000upx; +} + +.cu-tag[class*="line-"]::after { + border-radius: 0; +} + +.cu-tag+.cu-tag { + margin-left: 10upx; +} + +.cu-tag.sm { + font-size: 20upx; + padding: 0upx 12upx; + height: 32upx; +} + +.cu-capsule { + display: inline-flex; + vertical-align: middle; +} + +.cu-capsule+.cu-capsule { + margin-left: 10upx; +} + +.cu-capsule .cu-tag { + margin: 0; +} + +.cu-capsule .cu-tag[class*="line-"]:last-child::after { + border-left: 0upx solid transparent; +} + +.cu-capsule .cu-tag[class*="line-"]:first-child::after { + border-right: 0upx solid transparent; +} + +.cu-capsule.radius .cu-tag:first-child { + border-top-left-radius: 6upx; + border-bottom-left-radius: 6upx; +} + +.cu-capsule.radius .cu-tag:last-child::after, +.cu-capsule.radius .cu-tag[class*="line-"] { + border-top-right-radius: 12upx; + border-bottom-right-radius: 12upx; +} + +.cu-capsule.round .cu-tag:first-child { + border-top-left-radius: 200upx; + border-bottom-left-radius: 200upx; + text-indent: 4upx; +} + +.cu-capsule.round .cu-tag:last-child::after, +.cu-capsule.round .cu-tag:last-child { + border-top-right-radius: 200upx; + border-bottom-right-radius: 200upx; + text-indent: -4upx; +} + +.cu-tag.badge { + border-radius: 200upx; + position: absolute; + top: -10upx; + right: -10upx; + font-size: 20upx; + padding: 0upx 10upx; + height: 28upx; + color: #ffffff; +} + +.cu-tag.badge:not([class*="bg-"]) { + background-color: #dd514c; +} + +.cu-tag:empty:not([class*="cuIcon-"]) { + padding: 0upx; + width: 16upx; + height: 16upx; + top: -4upx; + right: -4upx; +} + +.cu-tag[class*="cuIcon-"] { + width: 32upx; + height: 32upx; + top: -4upx; + right: -4upx; +} + +/* ================== + 头像 + ==================== */ + +.cu-avatar { + font-variant: small-caps; + margin: 0; + padding: 0; + display: inline-flex; + text-align: center; + justify-content: center; + align-items: center; + background-color: #ccc; + color: #ffffff; + white-space: nowrap; + position: relative; + width: 64upx; + height: 64upx; + background-size: cover; + background-position: center; + vertical-align: middle; + font-size: 1.5em; +} + +.cu-avatar.sm { + width: 48upx; + height: 48upx; + font-size: 1em; +} + +.cu-avatar.lg { + width: 96upx; + height: 96upx; + font-size: 2em; +} + +.cu-avatar.xl { + width: 128upx; + height: 128upx; + font-size: 2.5em; +} + +.cu-avatar .avatar-text { + font-size: 0.4em; +} + +.cu-avatar-group { + direction: rtl; + unicode-bidi: bidi-override; + padding: 0 10upx 0 40upx; + display: inline-block; +} + +.cu-avatar-group .cu-avatar { + margin-left: -30upx; + border: 4upx solid #f1f1f1; + vertical-align: middle; +} + +.cu-avatar-group .cu-avatar.sm { + margin-left: -20upx; + border: 1upx solid #f1f1f1; +} + +/* ================== + 进度条 + ==================== */ + +.cu-progress { + overflow: hidden; + height: 28upx; + background-color: #ebeef5; + display: inline-flex; + align-items: center; + width: 100%; +} + +.cu-progress+view, +.cu-progress+text { + line-height: 1; +} + +.cu-progress.xs { + height: 10upx; +} + +.cu-progress.sm { + height: 20upx; +} + +.cu-progress view { + width: 0; + height: 100%; + align-items: center; + display: flex; + justify-items: flex-end; + justify-content: space-around; + font-size: 20upx; + color: #ffffff; + transition: width 0.6s ease; +} + +.cu-progress text { + align-items: center; + display: flex; + font-size: 20upx; + color: #333333; + text-indent: 10upx; +} + +.cu-progress.text-progress { + padding-right: 60upx; +} + +.cu-progress.striped view { + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 72upx 72upx; +} + +.cu-progress.active view { + animation: progress-stripes 2s linear infinite; +} + +@keyframes progress-stripes { + from { + background-position: 72upx 0; + } + + to { + background-position: 0 0; + } +} + +/* ================== + 加载 + ==================== */ + +.cu-load { + display: block; + line-height: 3em; + text-align: center; +} + +.cu-load::before { + font-family: "cuIcon"; + display: inline-block; + margin-right: 6upx; +} + +.cu-load.loading::before { + content: "\e67a"; + animation: cuIcon-spin 2s infinite linear; +} + +.cu-load.loading::after { + content: "加载中..."; +} + +.cu-load.over::before { + content: "\e64a"; +} + +.cu-load.over::after { + content: "没有更多了"; +} + +.cu-load.erro::before { + content: "\e658"; +} + +.cu-load.erro::after { + content: "加载失败"; +} + +.cu-load.load-cuIcon::before { + font-size: 32upx; +} + +.cu-load.load-cuIcon::after { + display: none; +} + +.cu-load.load-cuIcon.over { + display: none; +} + +.cu-load.load-modal { + position: fixed; + top: 0; + right: 0; + bottom: 140upx; + left: 0; + margin: auto; + width: 260upx; + height: 260upx; + background-color: #ffffff; + border-radius: 10upx; + box-shadow: 0 0 0upx 2000upx rgba(0, 0, 0, 0.5); + display: flex; + align-items: center; + flex-direction: column; + justify-content: center; + font-size: 28upx; + z-index: 9999; + line-height: 2.4em; +} + +.cu-load.load-modal [class*="cuIcon-"] { + font-size: 60upx; +} + +.cu-load.load-modal image { + width: 70upx; + height: 70upx; +} + +.cu-load.load-modal::after { + content: ""; + position: absolute; + background-color: #ffffff; + border-radius: 50%; + width: 200upx; + height: 200upx; + font-size: 10px; + border-top: 6upx solid rgba(0, 0, 0, 0.05); + border-right: 6upx solid rgba(0, 0, 0, 0.05); + border-bottom: 6upx solid rgba(0, 0, 0, 0.05); + border-left: 6upx solid #f37b1d; + animation: cuIcon-spin 1s infinite linear; + z-index: -1; +} + +.load-progress { + pointer-events: none; + top: 0; + position: fixed; + width: 100%; + left: 0; + z-index: 2000; +} + +.load-progress.hide { + display: none; +} + +.load-progress .load-progress-bar { + position: relative; + width: 100%; + height: 4upx; + overflow: hidden; + transition: all 200ms ease 0s; +} + +.load-progress .load-progress-spinner { + position: absolute; + top: 10upx; + right: 10upx; + z-index: 2000; + display: block; +} + +.load-progress .load-progress-spinner::after { + content: ""; + display: block; + width: 24upx; + height: 24upx; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: solid 4upx transparent; + border-top-color: inherit; + border-left-color: inherit; + border-radius: 50%; + -webkit-animation: load-progress-spinner 0.4s linear infinite; + animation: load-progress-spinner 0.4s linear infinite; +} + +@-webkit-keyframes load-progress-spinner { + 0% { + -webkit-transform: rotate(0); + transform: rotate(0); + } + + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@keyframes load-progress-spinner { + 0% { + -webkit-transform: rotate(0); + transform: rotate(0); + } + + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +/* ================== + 列表 + ==================== */ +.grayscale { + filter: grayscale(1); +} + +.cu-list+.cu-list { + margin-top: 30upx +} + +.cu-list>.cu-item { + transition: all .6s ease-in-out 0s; + transform: translateX(0upx) +} + +.cu-list>.cu-item.move-cur { + transform: translateX(-260upx) +} + +.cu-list>.cu-item .move { + position: absolute; + right: 0; + display: flex; + width: 260upx; + height: 100%; + transform: translateX(100%) +} + +.cu-list>.cu-item .move view { + display: flex; + flex: 1; + justify-content: center; + align-items: center +} + +.cu-list.menu-avatar { + overflow: hidden; +} + +.cu-list.menu-avatar>.cu-item { + position: relative; + display: flex; + padding-right: 10upx; + height: 140upx; + background-color: #ffffff; + justify-content: flex-end; + align-items: center +} + +.cu-list.menu-avatar>.cu-item>.cu-avatar { + position: absolute; + left: 30upx +} + +.cu-list.menu-avatar>.cu-item .flex .text-cut { + max-width: 510upx +} + +.cu-list.menu-avatar>.cu-item .content { + position: absolute; + left: 146upx; + width: calc(100% - 96upx - 60upx - 120upx - 20upx); + line-height: 1.6em; +} + +.cu-list.menu-avatar>.cu-item .content.flex-sub { + width: calc(100% - 96upx - 60upx - 20upx); +} + +.cu-list.menu-avatar>.cu-item .content>view:first-child { + font-size: 30upx; + display: flex; + align-items: center +} + +.cu-list.menu-avatar>.cu-item .content .cu-tag.sm { + display: inline-block; + margin-left: 10upx; + height: 28upx; + font-size: 16upx; + line-height: 32upx +} + +.cu-list.menu-avatar>.cu-item .action { + width: 100upx; + text-align: center +} + +.cu-list.menu-avatar>.cu-item .action view+view { + margin-top: 10upx +} + +.cu-list.menu-avatar.comment>.cu-item .content { + position: relative; + left: 0; + width: auto; + flex: 1; +} + +.cu-list.menu-avatar.comment>.cu-item { + padding: 30upx 30upx 30upx 120upx; + height: auto +} + +.cu-list.menu-avatar.comment .cu-avatar { + align-self: flex-start +} + +.cu-list.menu>.cu-item { + position: relative; + display: flex; + padding: 0 30upx; + min-height: 100upx; + background-color: #ffffff; + justify-content: space-between; + align-items: center +} + +.cu-list.menu>.cu-item:last-child:after { + border: none +} + +.cu-list.menu-avatar>.cu-item:after, +.cu-list.menu>.cu-item:after { + position: absolute; + top: 0; + left: 0; + box-sizing: border-box; + width: 200%; + height: 200%; + border-bottom: 1upx solid #ddd; + border-radius: inherit; + content: " "; + transform: scale(.5); + transform-origin: 0 0; + pointer-events: none +} + +.cu-list.menu>.cu-item.grayscale { + background-color: #f5f5f5 +} + +.cu-list.menu>.cu-item.cur { + background-color: #fcf7e9 +} + +.cu-list.menu>.cu-item.arrow { + padding-right: 90upx +} + +.cu-list.menu>.cu-item.arrow:before { + position: absolute; + top: 0; + right: 30upx; + bottom: 0; + display: block; + margin: auto; + width: 30upx; + height: 30upx; + color: #8799a3; + content: "\e6a3"; + text-align: center; + font-size: 34upx; + font-family: cuIcon; + line-height: 30upx +} + +.cu-list.menu>.cu-item button.content { + padding: 0; + background-color: transparent; + justify-content: flex-start +} + +.cu-list.menu>.cu-item button.content:after { + display: none +} + +.cu-list.menu>.cu-item .cu-avatar-group .cu-avatar { + border-color: #ffffff +} + +.cu-list.menu>.cu-item .content>view:first-child { + display: flex; + align-items: center +} + +.cu-list.menu>.cu-item .content>text[class*=cuIcon] { + display: inline-block; + margin-right: 10upx; + width: 1.6em; + text-align: center +} + +.cu-list.menu>.cu-item .content>image { + display: inline-block; + margin-right: 10upx; + width: 1.6em; + height: 1.6em; + vertical-align: middle +} + +.cu-list.menu>.cu-item .content { + font-size: 30upx; + line-height: 1.6em; + flex: 1 +} + +.cu-list.menu>.cu-item .content .cu-tag.sm { + display: inline-block; + margin-left: 10upx; + height: 28upx; + font-size: 16upx; + line-height: 32upx +} + +.cu-list.menu>.cu-item .action .cu-tag:empty { + right: 10upx +} + +.cu-list.menu { + display: block; + overflow: hidden +} + +.cu-list.menu.sm-border>.cu-item:after { + left: 30upx; + width: calc(200% - 120upx) +} + +.cu-list.grid>.cu-item { + position: relative; + display: flex; + padding: 20upx 0 30upx; + transition-duration: 0s; + flex-direction: column +} + +.cu-list.grid>.cu-item:after { + position: absolute; + top: 0; + left: 0; + box-sizing: border-box; + width: 200%; + height: 200%; + border-right: 1px solid rgba(0, 0, 0, .1); + border-bottom: 1px solid rgba(0, 0, 0, .1); + border-radius: inherit; + content: " "; + transform: scale(.5); + transform-origin: 0 0; + pointer-events: none +} + +.cu-list.grid>.cu-item text { + display: block; + margin-top: 10upx; + color: #888; + font-size: 26upx; + line-height: 40upx +} + +.cu-list.grid>.cu-item [class*=cuIcon] { + position: relative; + display: block; + margin-top: 20upx; + width: 100%; + font-size: 48upx +} + +.cu-list.grid>.cu-item .cu-tag { + right: auto; + left: 50%; + margin-left: 20upx +} + +.cu-list.grid { + background-color: #ffffff; + text-align: center +} + +.cu-list.grid.no-border>.cu-item { + padding-top: 10upx; + padding-bottom: 20upx +} + +.cu-list.grid.no-border>.cu-item:after { + border: none +} + +.cu-list.grid.no-border { + padding: 20upx 10upx +} + +.cu-list.grid.col-3>.cu-item:nth-child(3n):after, +.cu-list.grid.col-4>.cu-item:nth-child(4n):after, +.cu-list.grid.col-5>.cu-item:nth-child(5n):after { + border-right-width: 0 +} + +.cu-list.card-menu { + overflow: hidden; + margin-right: 30upx; + margin-left: 30upx; + border-radius: 20upx +} + + +/* ================== + 操作条 + ==================== */ + +.cu-bar { + display: flex; + position: relative; + align-items: center; + min-height: 100upx; + justify-content: space-between; +} + +.cu-bar .action { + display: flex; + align-items: center; + height: 100%; + justify-content: center; + max-width: 100%; +} + +.cu-bar .action.border-title { + position: relative; + top: -10upx; +} + +.cu-bar .action.border-title text[class*="bg-"]:last-child { + position: absolute; + bottom: -0.5rem; + min-width: 2rem; + height: 6upx; + left: 0; +} + +.cu-bar .action.sub-title { + position: relative; + top: -0.2rem; +} + +.cu-bar .action.sub-title text { + position: relative; + z-index: 1; +} + +.cu-bar .action.sub-title text[class*="bg-"]:last-child { + position: absolute; + display: inline-block; + bottom: -0.2rem; + border-radius: 6upx; + width: 100%; + height: 0.6rem; + left: 0.6rem; + opacity: 0.3; + z-index: 0; +} + +.cu-bar .action.sub-title text[class*="text-"]:last-child { + position: absolute; + display: inline-block; + bottom: -0.7rem; + left: 0.5rem; + opacity: 0.2; + z-index: 0; + text-align: right; + font-weight: 900; + font-size: 36upx; +} + +.cu-bar.justify-center .action.border-title text:last-child, +.cu-bar.justify-center .action.sub-title text:last-child { + left: 0; + right: 0; + margin: auto; + text-align: center; +} + +.cu-bar .action:first-child { + margin-left: 30upx; + font-size: 30upx; +} + +.cu-bar .action text.text-cut { + text-align: left; + width: 100%; +} + +.cu-bar .cu-avatar:first-child { + margin-left: 20upx; +} + +.cu-bar .action:first-child>text[class*="cuIcon-"] { + margin-left: -0.3em; + margin-right: 0.3em; +} + +.cu-bar .action:last-child { + margin-right: 30upx; +} + +.cu-bar .action>text[class*="cuIcon-"], +.cu-bar .action>view[class*="cuIcon-"] { + font-size: 36upx; +} + +.cu-bar .action>text[class*="cuIcon-"]+text[class*="cuIcon-"] { + margin-left: 0.5em; +} + +.cu-bar .content { + position: absolute; + text-align: center; + width: calc(100% - 340upx); + left: 0; + right: 0; + bottom: 0; + top: 0; + margin: auto; + height: 60upx; + font-size: 32upx; + line-height: 60upx; + cursor: none; + pointer-events: none; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; +} + +.cu-bar.ios .content { + bottom: 7px; + height: 30px; + font-size: 32upx; + line-height: 30px; +} + +.cu-bar.btn-group { + justify-content: space-around; +} + +.cu-bar.btn-group button { + padding: 20upx 32upx; +} + +.cu-bar.btn-group button { + flex: 1; + margin: 0 20upx; + max-width: 50%; +} + +.cu-bar .search-form { + background-color: #f5f5f5; + line-height: 64upx; + height: 64upx; + font-size: 24upx; + color: #333333; + flex: 1; + display: flex; + align-items: center; + margin: 0 30upx; +} + +.cu-bar .search-form+.action { + margin-right: 30upx; +} + +.cu-bar .search-form input { + flex: 1; + padding-right: 30upx; + height: 64upx; + line-height: 64upx; + font-size: 26upx; + background-color: transparent; +} + +.cu-bar .search-form [class*="cuIcon-"] { + margin: 0 0.5em 0 0.8em; +} + +.cu-bar .search-form [class*="cuIcon-"]::before { + top: 0upx; +} + +.cu-bar.fixed, +.nav.fixed { + position: fixed; + width: 100%; + top: 0; + z-index: 1024; + box-shadow: 0 1upx 6upx rgba(0, 0, 0, 0.1); +} + +.cu-bar.foot { + position: fixed; + width: 100%; + bottom: 0; + z-index: 1024; + box-shadow: 0 -1upx 6upx rgba(0, 0, 0, 0.1); +} + +.cu-bar.tabbar { + padding: 0; + height: calc(100upx + env(safe-area-inset-bottom) / 2); + padding-bottom: calc(env(safe-area-inset-bottom) / 2); +} + +.cu-tabbar-height { + min-height: 100upx; + height: calc(100upx + env(safe-area-inset-bottom) / 2); +} + +.cu-bar.tabbar.shadow { + box-shadow: 0 -1upx 6upx rgba(0, 0, 0, 0.1); +} + +.cu-bar.tabbar .action { + font-size: 22upx; + position: relative; + flex: 1; + text-align: center; + padding: 0; + display: block; + height: auto; + line-height: 1; + margin: 0; + background-color: inherit; + overflow: initial; +} + +.cu-bar.tabbar.shop .action { + width: 140upx; + flex: initial; +} + +.cu-bar.tabbar .action.add-action { + position: relative; + z-index: 2; + padding-top: 50upx; +} + +.cu-bar.tabbar .action.add-action [class*="cuIcon-"] { + position: absolute; + width: 70upx; + z-index: 2; + height: 70upx; + border-radius: 50%; + line-height: 70upx; + font-size: 50upx; + top: -35upx; + left: 0; + right: 0; + margin: auto; + padding: 0; +} + +.cu-bar.tabbar .action.add-action::after { + content: ""; + position: absolute; + width: 100upx; + height: 100upx; + top: -50upx; + left: 0; + right: 0; + margin: auto; + box-shadow: 0 -3upx 8upx rgba(0, 0, 0, 0.08); + border-radius: 50upx; + background-color: inherit; + z-index: 0; +} + +.cu-bar.tabbar .action.add-action::before { + content: ""; + position: absolute; + width: 100upx; + height: 30upx; + bottom: 30upx; + left: 0; + right: 0; + margin: auto; + background-color: inherit; + z-index: 1; +} + +.cu-bar.tabbar .btn-group { + flex: 1; + display: flex; + justify-content: space-around; + align-items: center; + padding: 0 10upx; +} + +.cu-bar.tabbar button.action::after { + border: 0; +} + +.cu-bar.tabbar .action [class*="cuIcon-"] { + width: 100upx; + position: relative; + display: block; + height: auto; + margin: 0 auto 10upx; + text-align: center; + font-size: 40upx; +} + +.cu-bar.tabbar .action .cuIcon-cu-image { + margin: 0 auto; +} + +.cu-bar.tabbar .action .cuIcon-cu-image image { + width: 50upx; + height: 50upx; + display: inline-block; +} + +.cu-bar.tabbar .submit { + align-items: center; + display: flex; + justify-content: center; + text-align: center; + position: relative; + flex: 2; + align-self: stretch; +} + +.cu-bar.tabbar .submit:last-child { + flex: 2.6; +} + +.cu-bar.tabbar .submit+.submit { + flex: 2; +} + +.cu-bar.tabbar.border .action::before { + content: " "; + width: 200%; + height: 200%; + position: absolute; + top: 0; + left: 0; + transform: scale(0.5); + transform-origin: 0 0; + border-right: 1upx solid rgba(0, 0, 0, 0.1); + z-index: 3; +} + +.cu-bar.tabbar.border .action:last-child:before { + display: none; +} + +.cu-bar.input { + padding-right: 20upx; + background-color: #ffffff; +} + +.cu-bar.input input { + overflow: initial; + line-height: 64upx; + height: 64upx; + min-height: 64upx; + flex: 1; + font-size: 30upx; + margin: 0 20upx; +} + +.cu-bar.input .action { + margin-left: 20upx; +} + +.cu-bar.input .action [class*="cuIcon-"] { + font-size: 48upx; +} + +.cu-bar.input input+.action { + margin-right: 20upx; + margin-left: 0upx; +} + +.cu-bar.input .action:first-child [class*="cuIcon-"] { + margin-left: 0upx; +} + +.cu-custom { + display: block; + position: relative; +} + +.cu-custom .cu-bar .content { + width: calc(100% - 440upx); +} + +/* #ifdef MP-ALIPAY */ +.cu-custom .cu-bar .action .cuIcon-back { + opacity: 0; +} + +/* #endif */ + +.cu-custom .cu-bar .content image { + height: 60upx; + width: 240upx; +} + +.cu-custom .cu-bar { + min-height: 0px; + /* #ifdef MP-WEIXIN */ + padding-right: 220upx; + /* #endif */ + /* #ifdef MP-ALIPAY */ + padding-right: 150upx; + /* #endif */ + box-shadow: 0upx 0upx 0upx; + z-index: 9999; +} + +.cu-custom .cu-bar .border-custom { + position: relative; + background: rgba(0, 0, 0, 0.15); + border-radius: 1000upx; + height: 30px; +} + +.cu-custom .cu-bar .border-custom::after { + content: " "; + width: 200%; + height: 200%; + position: absolute; + top: 0; + left: 0; + border-radius: inherit; + transform: scale(0.5); + transform-origin: 0 0; + pointer-events: none; + box-sizing: border-box; + border: 1upx solid #ffffff; + opacity: 0.5; +} + +.cu-custom .cu-bar .border-custom::before { + content: " "; + width: 1upx; + height: 110%; + position: absolute; + top: 22.5%; + left: 0; + right: 0; + margin: auto; + transform: scale(0.5); + transform-origin: 0 0; + pointer-events: none; + box-sizing: border-box; + opacity: 0.6; + background-color: #ffffff; +} + +.cu-custom .cu-bar .border-custom text { + display: block; + flex: 1; + margin: auto !important; + text-align: center; + font-size: 34upx; +} + +/* ================== + 导航栏 + ==================== */ + +.nav { + white-space: nowrap; +} + +::-webkit-scrollbar { + display: none; +} + +.nav .cu-item { + height: 90upx; + display: inline-block; + line-height: 90upx; + margin: 0 10upx; + padding: 0 20upx; +} + +.nav .cu-item.cur { + border-bottom: 4upx solid; +} + +/* ================== + 时间轴 + ==================== */ + +.cu-timeline { + display: block; + background-color: #ffffff; +} + +.cu-timeline .cu-time { + width: 120upx; + text-align: center; + padding: 20upx 0; + font-size: 26upx; + color: #888; + display: block; +} + +.cu-timeline>.cu-item { + padding: 30upx 30upx 30upx 120upx; + position: relative; + display: block; + z-index: 0; +} + +.cu-timeline>.cu-item:not([class*="text-"]) { + color: #ccc; +} + +.cu-timeline>.cu-item::after { + content: ""; + display: block; + position: absolute; + width: 1upx; + background-color: #ddd; + left: 60upx; + height: 100%; + top: 0; + z-index: 8; +} + +.cu-timeline>.cu-item::before { + font-family: "cuIcon"; + display: block; + position: absolute; + top: 36upx; + z-index: 9; + background-color: #ffffff; + width: 50upx; + height: 50upx; + text-align: center; + border: none; + line-height: 50upx; + left: 36upx; +} + +.cu-timeline>.cu-item:not([class*="cuIcon-"])::before { + content: "\e763"; +} + +.cu-timeline>.cu-item[class*="cuIcon-"]::before { + background-color: #ffffff; + width: 50upx; + height: 50upx; + text-align: center; + border: none; + line-height: 50upx; + left: 36upx; +} + +.cu-timeline>.cu-item>.content { + padding: 30upx; + border-radius: 6upx; + display: block; + line-height: 1.6; +} + +.cu-timeline>.cu-item>.content:not([class*="bg-"]) { + background-color: #f1f1f1; + color: #333333; +} + +.cu-timeline>.cu-item>.content+.content { + margin-top: 20upx; +} + +/* ================== + 聊天 + ==================== */ + +.cu-chat { + display: flex; + flex-direction: column; +} + +.cu-chat .cu-item { + display: flex; + padding: 30upx 30upx 70upx; + position: relative; +} + +.cu-chat .cu-item>.cu-avatar { + width: 80upx; + height: 80upx; +} + +.cu-chat .cu-item>.main { + max-width: calc(100% - 260upx); + margin: 0 40upx; + display: flex; + align-items: center; +} + +.cu-chat .cu-item>image { + height: 320upx; +} + +.cu-chat .cu-item>.main .content { + padding: 20upx; + border-radius: 6upx; + display: inline-flex; + max-width: 100%; + align-items: center; + font-size: 30upx; + position: relative; + min-height: 80upx; + line-height: 40upx; + text-align: left; +} + +.cu-chat .cu-item>.main .content:not([class*="bg-"]) { + background-color: #ffffff; + color: #333333; +} + +.cu-chat .cu-item .date { + position: absolute; + font-size: 24upx; + color: #8799a3; + width: calc(100% - 320upx); + bottom: 20upx; + left: 160upx; +} + +.cu-chat .cu-item .action { + padding: 0 30upx; + display: flex; + align-items: center; +} + +.cu-chat .cu-item>.main .content::after { + content: ""; + top: 27upx; + transform: rotate(45deg); + position: absolute; + z-index: 100; + display: inline-block; + overflow: hidden; + width: 24upx; + height: 24upx; + left: -12upx; + right: initial; + background-color: inherit; +} + +.cu-chat .cu-item.self>.main .content::after { + left: auto; + right: -12upx; +} + +.cu-chat .cu-item>.main .content::before { + content: ""; + top: 30upx; + transform: rotate(45deg); + position: absolute; + z-index: -1; + display: inline-block; + overflow: hidden; + width: 24upx; + height: 24upx; + left: -12upx; + right: initial; + background-color: inherit; + filter: blur(5upx); + opacity: 0.3; +} + +.cu-chat .cu-item>.main .content:not([class*="bg-"])::before { + background-color: #333333; + opacity: 0.1; +} + +.cu-chat .cu-item.self>.main .content::before { + left: auto; + right: -12upx; +} + +.cu-chat .cu-item.self { + justify-content: flex-end; + text-align: right; +} + +.cu-chat .cu-info { + display: inline-block; + margin: 20upx auto; + font-size: 24upx; + padding: 8upx 12upx; + background-color: rgba(0, 0, 0, 0.2); + border-radius: 6upx; + color: #ffffff; + max-width: 400upx; + line-height: 1.4; +} + +/* ================== + 卡片 + ==================== */ + +.cu-card { + display: block; + overflow: hidden; +} + +.cu-card>.cu-item { + display: block; + background-color: #ffffff; + overflow: hidden; + border-radius: 10upx; + margin: 30upx; +} + +.cu-card>.cu-item.shadow-blur { + overflow: initial; +} + +.cu-card.no-card>.cu-item { + margin: 0upx; + border-radius: 0upx; +} + +.cu-card .grid.grid-square { + margin-bottom: -20upx; +} + +.cu-card.case .image { + position: relative; +} + +.cu-card.case .image image { + width: 100%; +} + +.cu-card.case .image .cu-tag { + position: absolute; + right: 0; + top: 0; +} + +.cu-card.case .image .cu-bar { + position: absolute; + bottom: 0; + width: 100%; + background-color: transparent; + padding: 0upx 30upx; +} + +.cu-card.case.no-card .image { + margin: 30upx 30upx 0; + overflow: hidden; + border-radius: 10upx; +} + +.cu-card.dynamic { + display: block; +} + +.cu-card.dynamic>.cu-item { + display: block; + background-color: #ffffff; + overflow: hidden; +} + +.cu-card.dynamic>.cu-item>.text-content { + padding: 0 30upx 0; + max-height: 6.4em; + overflow: hidden; + font-size: 30upx; + margin-bottom: 20upx; +} + +.cu-card.dynamic>.cu-item .square-img { + width: 100%; + height: 200upx; + border-radius: 6upx; +} + +.cu-card.dynamic>.cu-item .only-img { + width: 100%; + height: 320upx; + border-radius: 6upx; +} + +/* card.dynamic>.cu-item .comment { + padding: 20upx; + background-color: #f1f1f1; + margin: 0 30upx 30upx; + border-radius: 6upx; +} */ + +.cu-card.article { + display: block; +} + +.cu-card.article>.cu-item { + padding-bottom: 30upx; +} + +.cu-card.article>.cu-item .title { + font-size: 30upx; + font-weight: 900; + color: #333333; + line-height: 100upx; + padding: 0 30upx; +} + +.cu-card.article>.cu-item .content { + display: flex; + padding: 0 30upx; +} + +.cu-card.article>.cu-item .content>image { + width: 240upx; + height: 6.4em; + margin-right: 20upx; + border-radius: 6upx; +} + +.cu-card.article>.cu-item .content .desc { + flex: 1; + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.cu-card.article>.cu-item .content .text-content { + font-size: 28upx; + color: #888; + height: 4.8em; + overflow: hidden; +} + +/* ================== + 表单 + ==================== */ + +.cu-form-group { + background-color: #ffffff; + padding: 1upx 30upx; + display: flex; + align-items: center; + min-height: 100upx; + justify-content: space-between; +} + +.cu-form-group+.cu-form-group { + border-top: 1upx solid #eee; +} + +.cu-form-group .title { + text-align: justify; + padding-right: 30upx; + font-size: 30upx; + position: relative; + height: 60upx; + line-height: 60upx; +} + +.cu-form-group input { + flex: 1; + font-size: 30upx; + color: #555; + padding-right: 20upx; +} + +.cu-form-group>text[class*="cuIcon-"] { + font-size: 36upx; + padding: 0; + box-sizing: border-box; +} + +.cu-form-group textarea { + margin: 32upx 0 30upx; + height: 4.6em; + width: 100%; + line-height: 1.2em; + flex: 1; + font-size: 28upx; + padding: 0; +} + +.cu-form-group.align-start .title { + height: 1em; + margin-top: 32upx; + line-height: 1em; +} + +.cu-form-group picker { + flex: 1; + padding-right: 40upx; + overflow: hidden; + position: relative; +} + +.cu-form-group picker .picker { + line-height: 100upx; + font-size: 28upx; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; + width: 100%; + text-align: right; +} + +.cu-form-group picker::after { + font-family: cuIcon; + display: block; + content: "\e6a3"; + position: absolute; + font-size: 34upx; + color: #8799a3; + line-height: 100upx; + width: 60upx; + text-align: center; + top: 0; + bottom: 0; + right: -20upx; + margin: auto; +} + +.cu-form-group textarea[disabled], +.cu-form-group textarea[disabled] .placeholder { + color: transparent; +} + +/* ================== + 模态窗口 + ==================== */ + +.cu-modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1110; + opacity: 0; + outline: 0; + text-align: center; + -ms-transform: scale(1.185); + transform: scale(1.185); + backface-visibility: hidden; + perspective: 2000upx; + background: rgba(0, 0, 0, 0.6); + transition: all 0.3s ease-in-out 0s; + pointer-events: none; +} + +.cu-modal::before { + content: "\200B"; + display: inline-block; + height: 100%; + vertical-align: middle; +} + +.cu-modal.show { + opacity: 1; + transition-duration: 0.3s; + -ms-transform: scale(1); + transform: scale(1); + overflow-x: hidden; + overflow-y: auto; + pointer-events: auto; +} + +.cu-dialog { + position: relative; + display: inline-block; + vertical-align: middle; + margin-left: auto; + margin-right: auto; + width: 680upx; + max-width: 100%; + background-color: #f8f8f8; + border-radius: 10upx; + overflow: hidden; +} + +.cu-modal.bottom-modal::before { + vertical-align: bottom; +} + +.cu-modal.bottom-modal .cu-dialog { + width: 100%; + border-radius: 0; +} + +.cu-modal.bottom-modal { + margin-bottom: -1000upx; +} + +.cu-modal.bottom-modal.show { + margin-bottom: 0; +} + +.cu-modal.drawer-modal { + transform: scale(1); + display: flex; +} + +.cu-modal.drawer-modal .cu-dialog { + height: 100%; + min-width: 200upx; + border-radius: 0; + margin: initial; + transition-duration: 0.3s; +} + +.cu-modal.drawer-modal.justify-start .cu-dialog { + transform: translateX(-100%); +} + +.cu-modal.drawer-modal.justify-end .cu-dialog { + transform: translateX(100%); +} + +.cu-modal.drawer-modal.show .cu-dialog { + transform: translateX(0%); +} +.cu-modal .cu-dialog>.cu-bar:first-child .action{ + min-width: 100rpx; + margin-right: 0; + min-height: 100rpx; +} +/* ================== + 轮播 + ==================== */ +swiper .a-swiper-dot { + display: inline-block; + width: 16upx; + height: 16upx; + background: rgba(0, 0, 0, .3); + border-radius: 50%; + vertical-align: middle; +} + +swiper[class*="-dot"] .wx-swiper-dots, +swiper[class*="-dot"] .a-swiper-dots, +swiper[class*="-dot"] .uni-swiper-dots { + display: flex; + align-items: center; + width: 100%; + justify-content: center; +} + +swiper.square-dot .wx-swiper-dot, +swiper.square-dot .a-swiper-dot, +swiper.square-dot .uni-swiper-dot { + background-color: #ffffff; + opacity: 0.4; + width: 10upx; + height: 10upx; + border-radius: 20upx; + margin: 0 8upx !important; +} + +swiper.square-dot .wx-swiper-dot.wx-swiper-dot-active, +swiper.square-dot .a-swiper-dot.a-swiper-dot-active, +swiper.square-dot .uni-swiper-dot.uni-swiper-dot-active { + opacity: 1; + width: 30upx; +} + +swiper.round-dot .wx-swiper-dot, +swiper.round-dot .a-swiper-dot, +swiper.round-dot .uni-swiper-dot { + width: 10upx; + height: 10upx; + position: relative; + margin: 4upx 8upx !important; +} + +swiper.round-dot .wx-swiper-dot.wx-swiper-dot-active::after, +swiper.round-dot .a-swiper-dot.a-swiper-dot-active::after, +swiper.round-dot .uni-swiper-dot.uni-swiper-dot-active::after { + content: ""; + position: absolute; + width: 10upx; + height: 10upx; + top: 0upx; + left: 0upx; + right: 0; + bottom: 0; + margin: auto; + background-color: #ffffff; + border-radius: 20upx; +} + +swiper.round-dot .wx-swiper-dot.wx-swiper-dot-active, +swiper.round-dot .a-swiper-dot.a-swiper-dot-active, +swiper.round-dot .uni-swiper-dot.uni-swiper-dot-active { + width: 18upx; + height: 18upx; +} + +.screen-swiper { + min-height: 375upx; +} + +.screen-swiper image, +.screen-swiper video, +.swiper-item image, +.swiper-item video { + width: 100%; + display: block; + height: 100%; + margin: 0; + pointer-events: none; +} + +.card-swiper { + height: 420upx !important; +} + +.card-swiper swiper-item { + width: 610upx !important; + left: 70upx; + box-sizing: border-box; + padding: 40upx 0upx 70upx; + overflow: initial; +} + +.card-swiper swiper-item .swiper-item { + width: 100%; + display: block; + height: 100%; + border-radius: 10upx; + transform: scale(0.9); + transition: all 0.2s ease-in 0s; + overflow: hidden; +} + +.card-swiper swiper-item.cur .swiper-item { + transform: none; + transition: all 0.2s ease-in 0s; +} + + +.tower-swiper { + height: 420upx; + position: relative; + max-width: 750upx; + overflow: hidden; +} + +.tower-swiper .tower-item { + position: absolute; + width: 300upx; + height: 380upx; + top: 0; + bottom: 0; + left: 50%; + margin: auto; + transition: all 0.2s ease-in 0s; + opacity: 1; +} + +.tower-swiper .tower-item.none { + opacity: 0; +} + +.tower-swiper .tower-item .swiper-item { + width: 100%; + height: 100%; + border-radius: 6upx; + overflow: hidden; +} + +/* ================== + 步骤条 + ==================== */ + +.cu-steps { + display: flex; +} + +scroll-view.cu-steps { + display: block; + white-space: nowrap; +} + +scroll-view.cu-steps .cu-item { + display: inline-block; +} + +.cu-steps .cu-item { + flex: 1; + text-align: center; + position: relative; + min-width: 100upx; +} + +.cu-steps .cu-item:not([class*="text-"]) { + color: #8799a3; +} + +.cu-steps .cu-item [class*="cuIcon-"], +.cu-steps .cu-item .num { + display: block; + font-size: 40upx; + line-height: 80upx; +} + +.cu-steps .cu-item::before, +.cu-steps .cu-item::after, +.cu-steps.steps-arrow .cu-item::before, +.cu-steps.steps-arrow .cu-item::after { + content: ""; + display: block; + position: absolute; + height: 0px; + width: calc(100% - 80upx); + border-bottom: 1px solid #ccc; + left: calc(0px - (100% - 80upx) / 2); + top: 40upx; + z-index: 0; +} + +.cu-steps.steps-arrow .cu-item::before, +.cu-steps.steps-arrow .cu-item::after { + content: "\e6a3"; + font-family: 'cuIcon'; + height: 30upx; + border-bottom-width: 0px; + line-height: 30upx; + top: 0; + bottom: 0; + margin: auto; + color: #ccc; +} + +.cu-steps.steps-bottom .cu-item::before, +.cu-steps.steps-bottom .cu-item::after { + bottom: 40upx; + top: initial; +} + +.cu-steps .cu-item::after { + border-bottom: 1px solid currentColor; + width: 0px; + transition: all 0.3s ease-in-out 0s; +} + +.cu-steps .cu-item[class*="text-"]::after { + width: calc(100% - 80upx); + color: currentColor; +} + +.cu-steps .cu-item:first-child::before, +.cu-steps .cu-item:first-child::after { + display: none; +} + +.cu-steps .cu-item .num { + width: 40upx; + height: 40upx; + border-radius: 50%; + line-height: 40upx; + margin: 20upx auto; + font-size: 24upx; + border: 1px solid currentColor; + position: relative; + overflow: hidden; +} + +.cu-steps .cu-item[class*="text-"] .num { + background-color: currentColor; +} + +.cu-steps .cu-item .num::before, +.cu-steps .cu-item .num::after { + content: attr(data-index); + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + margin: auto; + transition: all 0.3s ease-in-out 0s; + transform: translateY(0upx); +} + +.cu-steps .cu-item[class*="text-"] .num::before { + transform: translateY(-40upx); + color: #ffffff; +} + +.cu-steps .cu-item .num::after { + transform: translateY(40upx); + color: #ffffff; + transition: all 0.3s ease-in-out 0s; +} + +.cu-steps .cu-item[class*="text-"] .num::after { + content: "\e645"; + font-family: 'cuIcon'; + color: #ffffff; + transform: translateY(0upx); +} + +.cu-steps .cu-item[class*="text-"] .num.err::after { + content: "\e646"; +} + +/* ================== + 布局 + ==================== */ + +/* -- flex弹性布局 -- */ + +.flex { + display: flex; +} + +.basis-xs { + flex-basis: 20%; +} + +.basis-sm { + flex-basis: 40%; +} + +.basis-df { + flex-basis: 50%; +} + +.basis-lg { + flex-basis: 60%; +} + +.basis-xl { + flex-basis: 80%; +} + +.flex-sub { + flex: 1; +} + +.flex-twice { + flex: 2; +} + +.flex-treble { + flex: 3; +} + +.flex-direction { + flex-direction: column; +} + +.flex-wrap { + flex-wrap: wrap; +} + +.align-start { + align-items: flex-start; +} + +.align-end { + align-items: flex-end; +} + +.align-center { + align-items: center; +} + +.align-stretch { + align-items: stretch; +} + +.self-start { + align-self: flex-start; +} + +.self-center { + align-self: flex-center; +} + +.self-end { + align-self: flex-end; +} + +.self-stretch { + align-self: stretch; +} + +.align-stretch { + align-items: stretch; +} + +.justify-start { + justify-content: flex-start; +} + +.justify-end { + justify-content: flex-end; +} + +.justify-center { + justify-content: center; +} + +.justify-between { + justify-content: space-between; +} + +.justify-around { + justify-content: space-around; +} + +/* grid布局 */ + +.grid { + display: flex; + flex-wrap: wrap; +} + +.grid.grid-square { + overflow: hidden; +} + +.grid.grid-square .cu-tag { + position: absolute; + right: 0; + top: 0; + border-bottom-left-radius: 6upx; + padding: 6upx 12upx; + height: auto; + background-color: rgba(0, 0, 0, 0.5); +} + +.grid.grid-square>view>text[class*="cuIcon-"] { + font-size: 52upx; + position: absolute; + color: #8799a3; + margin: auto; + top: 0; + bottom: 0; + left: 0; + right: 0; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +} + +.grid.grid-square>view { + margin-right: 20upx; + margin-bottom: 20upx; + border-radius: 6upx; + position: relative; + overflow: hidden; +} +.grid.grid-square>view.bg-img image { + width: 100%; + height: 100%; + position: absolute; +} +.grid.col-1.grid-square>view { + padding-bottom: 100%; + height: 0; + margin-right: 0; +} + +.grid.col-2.grid-square>view { + padding-bottom: calc((100% - 20upx)/2); + height: 0; + width: calc((100% - 20upx)/2); +} + +.grid.col-3.grid-square>view { + padding-bottom: calc((100% - 40upx)/3); + height: 0; + width: calc((100% - 40upx)/3); +} + +.grid.col-4.grid-square>view { + padding-bottom: calc((100% - 60upx)/4); + height: 0; + width: calc((100% - 60upx)/4); +} + +.grid.col-5.grid-square>view { + padding-bottom: calc((100% - 80upx)/5); + height: 0; + width: calc((100% - 80upx)/5); +} + +.grid.col-2.grid-square>view:nth-child(2n), +.grid.col-3.grid-square>view:nth-child(3n), +.grid.col-4.grid-square>view:nth-child(4n), +.grid.col-5.grid-square>view:nth-child(5n) { + margin-right: 0; +} + +.grid.col-1>view { + width: 100%; +} + +.grid.col-2>view { + width: 50%; +} + +.grid.col-3>view { + width: 33.33%; +} + +.grid.col-4>view { + width: 25%; +} + +.grid.col-5>view { + width: 20%; +} + +/* -- 内外边距 -- */ + +.margin-0 { + margin: 0; +} + +.margin-xs { + margin: 10upx; +} + +.margin-sm { + margin: 20upx; +} + +.margin { + margin: 30upx; +} + +.margin-lg { + margin: 40upx; +} + +.margin-xl { + margin: 50upx; +} + +.margin-top-xs { + margin-top: 10upx; +} + +.margin-top-sm { + margin-top: 20upx; +} + +.margin-top { + margin-top: 30upx; +} + +.margin-top-lg { + margin-top: 40upx; +} + +.margin-top-xl { + margin-top: 50upx; +} + +.margin-right-xs { + margin-right: 10upx; +} + +.margin-right-sm { + margin-right: 20upx; +} + +.margin-right { + margin-right: 30upx; +} + +.margin-right-lg { + margin-right: 40upx; +} + +.margin-right-xl { + margin-right: 50upx; +} + +.margin-bottom-xs { + margin-bottom: 10upx; +} + +.margin-bottom-sm { + margin-bottom: 20upx; +} + +.margin-bottom { + margin-bottom: 30upx; +} + +.margin-bottom-lg { + margin-bottom: 40upx; +} + +.margin-bottom-xl { + margin-bottom: 50upx; +} + +.margin-left-xs { + margin-left: 10upx; +} + +.margin-left-sm { + margin-left: 20upx; +} + +.margin-left { + margin-left: 30upx; +} + +.margin-left-lg { + margin-left: 40upx; +} + +.margin-left-xl { + margin-left: 50upx; +} + +.margin-lr-xs { + margin-left: 10upx; + margin-right: 10upx; +} + +.margin-lr-sm { + margin-left: 20upx; + margin-right: 20upx; +} + +.margin-lr { + margin-left: 30upx; + margin-right: 30upx; +} + +.margin-lr-lg { + margin-left: 40upx; + margin-right: 40upx; +} + +.margin-lr-xl { + margin-left: 50upx; + margin-right: 50upx; +} + +.margin-tb-xs { + margin-top: 10upx; + margin-bottom: 10upx; +} + +.margin-tb-sm { + margin-top: 20upx; + margin-bottom: 20upx; +} + +.margin-tb { + margin-top: 30upx; + margin-bottom: 30upx; +} + +.margin-tb-lg { + margin-top: 40upx; + margin-bottom: 40upx; +} + +.margin-tb-xl { + margin-top: 50upx; + margin-bottom: 50upx; +} + +.padding-0 { + padding: 0; +} + +.padding-xs { + padding: 10upx; +} + +.padding-sm { + padding: 20upx; +} + +.padding { + padding: 30upx; +} + +.padding-lg { + padding: 40upx; +} + +.padding-xl { + padding: 50upx; +} + +.padding-top-xs { + padding-top: 10upx; +} + +.padding-top-sm { + padding-top: 20upx; +} + +.padding-top { + padding-top: 30upx; +} + +.padding-top-lg { + padding-top: 40upx; +} + +.padding-top-xl { + padding-top: 50upx; +} + +.padding-right-xs { + padding-right: 10upx; +} + +.padding-right-sm { + padding-right: 20upx; +} + +.padding-right { + padding-right: 30upx; +} + +.padding-right-lg { + padding-right: 40upx; +} + +.padding-right-xl { + padding-right: 50upx; +} + +.padding-bottom-xs { + padding-bottom: 10upx; +} + +.padding-bottom-sm { + padding-bottom: 20upx; +} + +.padding-bottom { + padding-bottom: 30upx; +} + +.padding-bottom-lg { + padding-bottom: 40upx; +} + +.padding-bottom-xl { + padding-bottom: 50upx; +} + +.padding-left-xs { + padding-left: 10upx; +} + +.padding-left-sm { + padding-left: 20upx; +} + +.padding-left { + padding-left: 30upx; +} + +.padding-left-lg { + padding-left: 40upx; +} + +.padding-left-xl { + padding-left: 50upx; +} + +.padding-lr-xs { + padding-left: 10upx; + padding-right: 10upx; +} + +.padding-lr-sm { + padding-left: 20upx; + padding-right: 20upx; +} + +.padding-lr { + padding-left: 30upx; + padding-right: 30upx; +} + +.padding-lr-lg { + padding-left: 40upx; + padding-right: 40upx; +} + +.padding-lr-xl { + padding-left: 50upx; + padding-right: 50upx; +} + +.padding-tb-xs { + padding-top: 10upx; + padding-bottom: 10upx; +} + +.padding-tb-sm { + padding-top: 20upx; + padding-bottom: 20upx; +} + +.padding-tb { + padding-top: 30upx; + padding-bottom: 30upx; +} + +.padding-tb-lg { + padding-top: 40upx; + padding-bottom: 40upx; +} + +.padding-tb-xl { + padding-top: 50upx; + padding-bottom: 50upx; +} + +/* -- 浮动 -- */ + +.cf::after, +.cf::before { + content: " "; + display: table; +} + +.cf::after { + clear: both; +} + +.fl { + float: left; +} + +.fr { + float: right; +} + +/* ================== + 背景 + ==================== */ + +.line-red::after, +.lines-red::after { + border-color: #e54d42; +} + +.line-orange::after, +.lines-orange::after { + border-color: #f37b1d; +} + +.line-yellow::after, +.lines-yellow::after { + border-color: #fbbd08; +} + +.line-olive::after, +.lines-olive::after { + border-color: #8dc63f; +} + +.line-green::after, +.lines-green::after { + border-color: #39b54a; +} + +.line-cyan::after, +.lines-cyan::after { + border-color: #1cbbb4; +} + +.line-blue::after, +.lines-blue::after { + border-color: #0081ff; +} + +.line-purple::after, +.lines-purple::after { + border-color: #6739b6; +} + +.line-mauve::after, +.lines-mauve::after { + border-color: #9c26b0; +} + +.line-pink::after, +.lines-pink::after { + border-color: #e03997; +} + +.line-brown::after, +.lines-brown::after { + border-color: #a5673f; +} + +.line-grey::after, +.lines-grey::after { + border-color: #8799a3; +} + +.line-gray::after, +.lines-gray::after { + border-color: #aaaaaa; +} + +.line-black::after, +.lines-black::after { + border-color: #333333; +} + +.line-white::after, +.lines-white::after { + border-color: #ffffff; +} + +.bg-red { + background-color: #e54d42; + color: #ffffff; +} + +.bg-orange { + background-color: #f37b1d; + color: #ffffff; +} + +.bg-yellow { + background-color: #fbbd08; + color: #333333; +} + +.bg-olive { + background-color: #8dc63f; + color: #ffffff; +} + +.bg-green { + background-color: #39b54a; + color: #ffffff; +} + +.bg-cyan { + background-color: #1cbbb4; + color: #ffffff; +} + +.bg-blue { + background-color: #0081ff; + color: #ffffff; +} + +.bg-purple { + background-color: #6739b6; + color: #ffffff; +} + +.bg-mauve { + background-color: #9c26b0; + color: #ffffff; +} + +.bg-pink { + background-color: #e03997; + color: #ffffff; +} + +.bg-brown { + background-color: #a5673f; + color: #ffffff; +} + +.bg-grey { + background-color: #8799a3; + color: #ffffff; +} + +.bg-gray { + background-color: #f0f0f0; + color: #333333; +} + +.bg-black { + background-color: #333333; + color: #ffffff; +} + +.bg-white { + background-color: #ffffff; + color: #666666; +} + +.bg-shadeTop { + background-image: linear-gradient(rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.01)); + color: #ffffff; +} + +.bg-shadeBottom { + background-image: linear-gradient(rgba(0, 0, 0, 0.01), rgba(0, 0, 0, 1)); + color: #ffffff; +} + +.bg-red.light { + color: #e54d42; + background-color: #fadbd9; +} + +.bg-orange.light { + color: #f37b1d; + background-color: #fde6d2; +} + +.bg-yellow.light { + color: #fbbd08; + background-color: #fef2ced2; +} + +.bg-olive.light { + color: #8dc63f; + background-color: #e8f4d9; +} + +.bg-green.light { + color: #39b54a; + background-color: #d7f0dbff; +} + +.bg-cyan.light { + color: #1cbbb4; + background-color: #d2f1f0; +} + +.bg-blue.light { + color: #0081ff; + background-color: #cce6ff; +} + +.bg-purple.light { + color: #6739b6; + background-color: #e1d7f0; +} + +.bg-mauve.light { + color: #9c26b0; + background-color: #ebd4ef; +} + +.bg-pink.light { + color: #e03997; + background-color: #f9d7ea; +} + +.bg-brown.light { + color: #a5673f; + background-color: #ede1d9; +} + +.bg-grey.light { + color: #8799a3; + background-color: #e7ebed; +} + +.bg-gradual-red { + background-image: linear-gradient(45deg, #f43f3b, #ec008c); + color: #ffffff; +} + +.bg-gradual-orange { + background-image: linear-gradient(45deg, #ff9700, #ed1c24); + color: #ffffff; +} + +.bg-gradual-green { + background-image: linear-gradient(45deg, #39b54a, #8dc63f); + color: #ffffff; +} + +.bg-gradual-purple { + background-image: linear-gradient(45deg, #9000ff, #5e00ff); + color: #ffffff; +} + +.bg-gradual-pink { + background-image: linear-gradient(45deg, #ec008c, #6739b6); + color: #ffffff; +} + +.bg-gradual-blue { + background-image: linear-gradient(45deg, #0081ff, #1cbbb4); + color: #ffffff; +} + +.shadow[class*="-red"] { + box-shadow: 6upx 6upx 8upx rgba(204, 69, 59, 0.2); +} + +.shadow[class*="-orange"] { + box-shadow: 6upx 6upx 8upx rgba(217, 109, 26, 0.2); +} + +.shadow[class*="-yellow"] { + box-shadow: 6upx 6upx 8upx rgba(224, 170, 7, 0.2); +} + +.shadow[class*="-olive"] { + box-shadow: 6upx 6upx 8upx rgba(124, 173, 55, 0.2); +} + +.shadow[class*="-green"] { + box-shadow: 6upx 6upx 8upx rgba(48, 156, 63, 0.2); +} + +.shadow[class*="-cyan"] { + box-shadow: 6upx 6upx 8upx rgba(28, 187, 180, 0.2); +} + +.shadow[class*="-blue"] { + box-shadow: 6upx 6upx 8upx rgba(0, 102, 204, 0.2); +} + +.shadow[class*="-purple"] { + box-shadow: 6upx 6upx 8upx rgba(88, 48, 156, 0.2); +} + +.shadow[class*="-mauve"] { + box-shadow: 6upx 6upx 8upx rgba(133, 33, 150, 0.2); +} + +.shadow[class*="-pink"] { + box-shadow: 6upx 6upx 8upx rgba(199, 50, 134, 0.2); +} + +.shadow[class*="-brown"] { + box-shadow: 6upx 6upx 8upx rgba(140, 88, 53, 0.2); +} + +.shadow[class*="-grey"] { + box-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2); +} + +.shadow[class*="-gray"] { + box-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2); +} + +.shadow[class*="-black"] { + box-shadow: 6upx 6upx 8upx rgba(26, 26, 26, 0.2); +} + +.shadow[class*="-white"] { + box-shadow: 6upx 6upx 8upx rgba(26, 26, 26, 0.2); +} + +.text-shadow[class*="-red"] { + text-shadow: 6upx 6upx 8upx rgba(204, 69, 59, 0.2); +} + +.text-shadow[class*="-orange"] { + text-shadow: 6upx 6upx 8upx rgba(217, 109, 26, 0.2); +} + +.text-shadow[class*="-yellow"] { + text-shadow: 6upx 6upx 8upx rgba(224, 170, 7, 0.2); +} + +.text-shadow[class*="-olive"] { + text-shadow: 6upx 6upx 8upx rgba(124, 173, 55, 0.2); +} + +.text-shadow[class*="-green"] { + text-shadow: 6upx 6upx 8upx rgba(48, 156, 63, 0.2); +} + +.text-shadow[class*="-cyan"] { + text-shadow: 6upx 6upx 8upx rgba(28, 187, 180, 0.2); +} + +.text-shadow[class*="-blue"] { + text-shadow: 6upx 6upx 8upx rgba(0, 102, 204, 0.2); +} + +.text-shadow[class*="-purple"] { + text-shadow: 6upx 6upx 8upx rgba(88, 48, 156, 0.2); +} + +.text-shadow[class*="-mauve"] { + text-shadow: 6upx 6upx 8upx rgba(133, 33, 150, 0.2); +} + +.text-shadow[class*="-pink"] { + text-shadow: 6upx 6upx 8upx rgba(199, 50, 134, 0.2); +} + +.text-shadow[class*="-brown"] { + text-shadow: 6upx 6upx 8upx rgba(140, 88, 53, 0.2); +} + +.text-shadow[class*="-grey"] { + text-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2); +} + +.text-shadow[class*="-gray"] { + text-shadow: 6upx 6upx 8upx rgba(114, 130, 138, 0.2); +} + +.text-shadow[class*="-black"] { + text-shadow: 6upx 6upx 8upx rgba(26, 26, 26, 0.2); +} + +.bg-img { + background-size: cover; + background-position: center; + background-repeat: no-repeat; +} + +.bg-mask { + background-color: #333333; + position: relative; +} + +.bg-mask::after { + content: ""; + border-radius: inherit; + width: 100%; + height: 100%; + display: block; + background-color: rgba(0, 0, 0, 0.4); + position: absolute; + left: 0; + right: 0; + bottom: 0; + top: 0; +} + +.bg-mask view, +.bg-mask cover-view { + z-index: 5; + position: relative; +} + +.bg-video { + position: relative; +} + +.bg-video video { + display: block; + height: 100%; + width: 100%; + -o-object-fit: cover; + object-fit: cover; + position: absolute; + top: 0; + z-index: 0; + pointer-events: none; +} + +/* ================== + 文本 + ==================== */ + +.text-xs { + font-size: 20upx; +} + +.text-sm { + font-size: 24upx; +} + +.text-df { + font-size: 28upx; +} + +.text-lg { + font-size: 32upx; +} + +.text-xl { + font-size: 36upx; +} + +.text-xxl { + font-size: 44upx; +} + +.text-sl { + font-size: 80upx; +} + +.text-xsl { + font-size: 120upx; +} + +.text-Abc { + text-transform: Capitalize; +} + +.text-ABC { + text-transform: Uppercase; +} + +.text-abc { + text-transform: Lowercase; +} + +.text-price::before { + content: "¥"; + font-size: 80%; + margin-right: 4upx; +} + +.text-cut { + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; +} + +.text-bold { + font-weight: bold; +} + +.text-center { + text-align: center; +} + +.text-content { + line-height: 1.6; +} + +.text-left { + text-align: left; +} + +.text-right { + text-align: right; +} + +.text-red, +.line-red, +.lines-red { + color: #e54d42; +} + +.text-orange, +.line-orange, +.lines-orange { + color: #f37b1d; +} + +.text-yellow, +.line-yellow, +.lines-yellow { + color: #fbbd08; +} + +.text-olive, +.line-olive, +.lines-olive { + color: #8dc63f; +} + +.text-green, +.line-green, +.lines-green { + color: #39b54a; +} + +.text-cyan, +.line-cyan, +.lines-cyan { + color: #1cbbb4; +} + +.text-blue, +.line-blue, +.lines-blue { + color: #0081ff; +} + +.text-purple, +.line-purple, +.lines-purple { + color: #6739b6; +} + +.text-mauve, +.line-mauve, +.lines-mauve { + color: #9c26b0; +} + +.text-pink, +.line-pink, +.lines-pink { + color: #e03997; +} + +.text-brown, +.line-brown, +.lines-brown { + color: #a5673f; +} + +.text-grey, +.line-grey, +.lines-grey { + color: #8799a3; +} + +.text-gray, +.line-gray, +.lines-gray { + color: #aaaaaa; +} + +.text-black, +.line-black, +.lines-black { + color: #333333; +} + +.text-white, +.line-white, +.lines-white { + color: #ffffff; +} diff --git a/src/common/Common.ts b/src/common/Common.ts new file mode 100644 index 0000000..934825b --- /dev/null +++ b/src/common/Common.ts @@ -0,0 +1,13 @@ +import {ResultData} from "./Domain/ResultData"; +import {StoreAssist} from "./Unit/StorageAssist"; +import {HttpRequest} from "./Unit/HttpRequest"; +import { StringAssist } from "./Unit/StringAssist"; +import { UploadAssist } from "./Unit/UploadAssist"; + +export { + ResultData, + HttpRequest, + StoreAssist, + StringAssist, + UploadAssist +} \ No newline at end of file diff --git a/src/common/Domain/ResultData.ts b/src/common/Domain/ResultData.ts new file mode 100644 index 0000000..a9886de --- /dev/null +++ b/src/common/Domain/ResultData.ts @@ -0,0 +1,10 @@ +export class ResultData { + public code: number=-1; + public msg: string=""; + public data: any; + constructor(code:number,msg:string,data:any) { + this.code=code; + this.msg = msg; + this.data = data; + } +} \ No newline at end of file diff --git a/src/common/Unit/HttpRequest.ts b/src/common/Unit/HttpRequest.ts new file mode 100644 index 0000000..b8e58b4 --- /dev/null +++ b/src/common/Unit/HttpRequest.ts @@ -0,0 +1,64 @@ +export class HttpRequest { + + /***普通请求方法***/ + static Request(url: string, method: "GET" | "POST" | "PUT" | undefined, data: object | any) { + return new Promise(function(resolve, reject) { + let header = { + 'content-type': method == 'POST' || method == 'PUT' ? 'application/x-www-form-urlencoded' : 'application/json; charset=utf-8', + 'Access-Control-Allow-Origin': '*' + }; + uni.request({ + url: url, + method: method, + data: data, + header: header, + success(res: any) { + if (res.statusCode == "200") { + resolve(res.data); + } + else + { + resolve(res); + } + }, + fail(err) { + //请求失败 + uni.showToast({ + title: '无法连接到服务器', + icon: 'none' + }) + reject(err) + } + }) + }) + }; + + /***带Token的请求方法***/ + static RequestWithToken(url: string, method: "GET" | "POST" | "PUT" | undefined, token: string, data: object | any) { + return new Promise(function(resolve, reject) { + let header = { + 'content-type': method == 'POST' || method == 'PUT' ? 'application/x-www-form-urlencoded' : 'application/json; charset=utf-8', + 'Authorization': 'Bearer ' + token,//token获取 + 'Access-Control-Allow-Origin': '*' + }; + uni.request({ + url: url, + method: method, + data: data, + header: header, + success(res: any) { + resolve(res); + }, + fail(err) { + //请求失败 + uni.showToast({ + title: '无法连接到服务器', + icon: 'none' + }) + reject(err) + } + }) + }) + + } +} diff --git a/src/common/Unit/StorageAssist.ts b/src/common/Unit/StorageAssist.ts new file mode 100644 index 0000000..ee48a32 --- /dev/null +++ b/src/common/Unit/StorageAssist.ts @@ -0,0 +1,14 @@ +export class StoreAssist{ + static Get(key:string):any + { + return uni.getStorageSync(key); + } + static Set(key:string,value:any):void + { + uni.setStorageSync(key, value); + } + static Delete(key:string):void + { + uni.removeStorageSync(key); + } +} \ No newline at end of file diff --git a/src/common/Unit/StoreAssist.ts b/src/common/Unit/StoreAssist.ts new file mode 100644 index 0000000..8e9b9b4 --- /dev/null +++ b/src/common/Unit/StoreAssist.ts @@ -0,0 +1,13 @@ +// import { createPinia, defineStore } from "pinia"; +// import piniaPluginPersistedstate from "pinia-plugin-persistedstate"; +// export class StoreAssist{ +// private pinia:any=createPinia(); +// constructor() { +// this.pinia.use(piniaPluginPersistedstate); +// } + + + +// } + + diff --git a/src/common/Unit/StringAssist.ts b/src/common/Unit/StringAssist.ts new file mode 100644 index 0000000..59ab6a4 --- /dev/null +++ b/src/common/Unit/StringAssist.ts @@ -0,0 +1,98 @@ +export class StringAssist { + static NoHtml(html: string): string { + return html; + } + + + static PhoneToStr (e:string) { + return e.substring(0,3)+'****'+e.substring((e.length-2),(e.length)) + } + // 数量过万处理 + static NumToStr (sum:number) { + if(sum>=10000){ + return (sum/10000).toFixed('2')+'w' + }else{ + return sum + } + } + + + // 帖子距离现在多久 + static DiffTimeTostring(dateTime: string): string { + let result = 0; + let time = Date.parse(dateTime); + let timestamp = Date.parse(new Date().toString()); + if ((timestamp - time) / 1000 < 60) { + result = (timestamp - time) / 1000; + result = result < 0 ? 0 : result; + return result.toFixed(0) + '秒前'; + } else if ((timestamp - time) / 1000 / 60 < 60) { + return ((timestamp - time) / 1000 / 60).toFixed(0) + '分钟前'; + } else if ((timestamp - time) / 1000 / 60 / 60 < 24) { + return ((timestamp - time) / 1000 / 60 / 60).toFixed(0) + '小时前'; + } else if ((timestamp - time) / 1000 / 60 / 60 / 24 < 31) { + return ((timestamp - time) / 1000 / 60 / 60 / 24).toFixed(0) + '天前'; + } else { + return this.formatDate(time, 1); + } + } + + private static formatDate(time:any,type:number):string + { + const date = new Date(time); + const year = date.getFullYear(); + const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以加1,并用0填充 + const day = String(date.getDate()).padStart(2, '0'); // 用0填充 + const hours = String(date.getHours()).padStart(2, '0'); // 用0填充 + const minutes = String(date.getMinutes()).padStart(2, '0'); // 用0填充 + const seconds = String(date.getSeconds()).padStart(2, '0'); // 用0填充 + if(type==0) + { + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } + else if(type==1) + { + return `${year}-${month}-${day} ${hours}:${minutes}`; + }else if(type==2) + { + return `${year}-${month}-${day}`; + }else if(type==3){ + return `${month}-${day} ${hours}:${minutes}`; + } + + else{ + return `${hours}:${minutes}`; + } + } + + + + // 聊天时间显示 + static ChatTimeTostring(dateTime: string,upTime:string): string { + let time = Date.parse(dateTime); + let timestamp = Date.parse(upTime); + if (( time - timestamp) / 1000 / 60 < 10) { + return '0'; + } else{ + return this.formatDate(time, 3); + } + } + + + // 去除两侧的空格 + + static trim(str:string){ + const reg = /^\s+|\s+$/g; + return str.replace(reg,''); + } + + // 计算两个时分秒差值 + static timesfm(dateTime: string,upTime:string){ + + let time = Date.parse('2000-01-01 '+dateTime); + let timestamp = Date.parse('2000-01-01 '+upTime); + return ((timestamp - time) / 1000 / 60).toFixed(0) + '分钟'; + } + + +} diff --git a/src/common/Unit/UploadAssist.ts b/src/common/Unit/UploadAssist.ts new file mode 100644 index 0000000..5a7f66e --- /dev/null +++ b/src/common/Unit/UploadAssist.ts @@ -0,0 +1,19 @@ +export class UploadAssist { + static Upload(url: string, path: string, fromData: any) { + return new Promise(function(resolve, reject) { + uni.uploadFile({ + url: url, //仅为示例,非真实的接口地址 + filePath: path, + name: 'file', + formData: fromData, + success: (uploadFileRes) => { + resolve(uploadFileRes); + }, + fail: (err) => { + reject(err); + + }, + }); + }) + } +} \ No newline at end of file diff --git a/src/components/ImageCropper.vue b/src/components/ImageCropper.vue new file mode 100644 index 0000000..d974eb6 --- /dev/null +++ b/src/components/ImageCropper.vue @@ -0,0 +1,54 @@ + + + + + \ No newline at end of file diff --git a/src/components/liy-select/liy-select.vue b/src/components/liy-select/liy-select.vue new file mode 100644 index 0000000..3a482e8 --- /dev/null +++ b/src/components/liy-select/liy-select.vue @@ -0,0 +1,299 @@ + + + + + \ No newline at end of file diff --git a/src/env.d.ts b/src/env.d.ts new file mode 100644 index 0000000..d27eb5a --- /dev/null +++ b/src/env.d.ts @@ -0,0 +1,8 @@ +/// + +declare module '*.vue' { + import { DefineComponent } from 'vue' + // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/ban-types + const component: DefineComponent<{}, {}, any> + export default component +} diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..4bb0a18 --- /dev/null +++ b/src/main.ts @@ -0,0 +1,13 @@ +import { createSSRApp } from "vue"; +import App from "./App.vue"; + +import uviewPlus from 'uview-plus' + +export function createApp() { + const app = createSSRApp(App); + App.mpType = 'app'; + app.use(uviewPlus) + return { + app, + }; +} \ No newline at end of file diff --git a/src/manifest.json b/src/manifest.json new file mode 100644 index 0000000..c8e4634 --- /dev/null +++ b/src/manifest.json @@ -0,0 +1,152 @@ +{ + "name" : "确菜农骑手端", + "appid" : "__UNI__6EE9F39", + "description" : "", + "versionName" : "1.1.6", + "versionCode" : 116, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {}, + "Push" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 30, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "push" : { + "unipush" : { + "offline" : false + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/src/package.json b/src/package.json new file mode 100644 index 0000000..122bdc3 --- /dev/null +++ b/src/package.json @@ -0,0 +1,16 @@ +{ + "id": "liy-select", + "name": "可搜索的下拉选择框", + "displayName": "可搜索的下拉选择框", + "version": "1.0.0", + "description": "通过搜索关键字可以进行 下拉筛选", + "keywords": [ + "uni-ui|select" + ], + "dcloudext": { + "category": [ + "前端组件", + "通用组件" + ] + } +} \ No newline at end of file diff --git a/src/pages.json b/src/pages.json new file mode 100644 index 0000000..99a5cff --- /dev/null +++ b/src/pages.json @@ -0,0 +1,255 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path" : "pages/index/upApp", + "style" : + { + "navigationBarTitleText" : "版本更新" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [{ + "root": "pages/order", + "pages": [{ + "path": "orderDetail", + "style": { + "navigationBarTitleText": "订单详情" + } + }, + { + "path": "navigation", + "style": { + "navigationBarTitleText": "导航", + "navigationStyle": "custom" + } + }, + { + "path": "abnormal", + "style": { + "navigationBarTitleText": "上报异常" + } + }, + { + "path": "grabOrder", + "style": { + "navigationBarTitleText": "订单详情" + } + }, + { + "path": "incomeDetail", + "style": { + "navigationBarTitleText": "收入详情", + "navigationStyle": "custom" + } + }, + { + "path": "withdraw", + "style": { + "navigationBarTitleText": "提现申请" + } + }, + { + "path": "finish", + "style": { + "navigationBarTitleText": "订单完成" + } + }, + { + "path": "upAbnormal", + "style": { + "navigationBarTitleText": "异常上报" + } + }, + { + "path": "orderMap", + "style": { + "navigationBarTitleText": "订单地图" + } + }, + { + "path": "orderChat", + "style": { + "navigationBarTitleText": "联系客户" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path": "edit", + "style": { + "navigationBarTitleText": "编辑资料" + } + }, + { + "path": "statusContro", + "style": { + "navigationBarTitleText": "上线管理" + } + }, + { + "path": "myKF", + "style": { + "navigationBarTitleText": "联系客服" + } + }, + { + "path": "AbnormalList", + "style": { + "navigationBarTitleText": "异常订单" + } + }, + { + "path": "check", + "style": { + "navigationBarTitleText": "签到奖励" + } + }, + { + "path": "abnormalDetail", + "style": { + "navigationBarTitleText": "异常详情" + } + }, + { + "path": "security", + "style": { + "navigationBarTitleText": "账号与安全" + } + }, + { + "path": "authentication", + "style": { + "navigationBarTitleText": "实名认证" + } + }, + { + "path": "login", + "style": { + "navigationBarTitleText": "登录", + "navigationStyle": "custom" + } + }, + { + "path": "noticeList", + "style": { + "navigationBarTitleText": "消息通知", + "navigationStyle": "custom" + } + }, + { + "path": "setConnect", + "style": { + "navigationBarTitleText": "紧急联系人" + } + }, + { + "path": "evaluate", + "style": { + "navigationBarTitleText": "评价中心" + } + }, + { + "path": "completeData", + "style": { + "navigationBarTitleText": "完善信息" + } + }, + { + "path": "withDrowList", + "style": { + "navigationBarTitleText": "提现列表" + } + }, + { + "path" : "editPasssword", + "style" : + { + "navigationBarTitleText" : "修改密码" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/src/pages/index/income.vue b/src/pages/index/income.vue new file mode 100644 index 0000000..f696981 --- /dev/null +++ b/src/pages/index/income.vue @@ -0,0 +1,548 @@ + + + + + \ No newline at end of file diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue new file mode 100644 index 0000000..6c0345a --- /dev/null +++ b/src/pages/index/index.vue @@ -0,0 +1,844 @@ + + + + + \ No newline at end of file diff --git a/src/pages/index/task.vue b/src/pages/index/task.vue new file mode 100644 index 0000000..d5d51e4 --- /dev/null +++ b/src/pages/index/task.vue @@ -0,0 +1,494 @@ + + + + + \ No newline at end of file diff --git a/src/pages/index/upApp.vue b/src/pages/index/upApp.vue new file mode 100644 index 0000000..5d57724 --- /dev/null +++ b/src/pages/index/upApp.vue @@ -0,0 +1,254 @@ + + + + + \ No newline at end of file diff --git a/src/pages/index/user.vue b/src/pages/index/user.vue new file mode 100644 index 0000000..c16fa04 --- /dev/null +++ b/src/pages/index/user.vue @@ -0,0 +1,341 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/AbnormalList.vue b/src/pages/my/AbnormalList.vue new file mode 100644 index 0000000..545ea4f --- /dev/null +++ b/src/pages/my/AbnormalList.vue @@ -0,0 +1,450 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/abnormalDetail.vue b/src/pages/my/abnormalDetail.vue new file mode 100644 index 0000000..e112dd7 --- /dev/null +++ b/src/pages/my/abnormalDetail.vue @@ -0,0 +1,488 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/authentication.vue b/src/pages/my/authentication.vue new file mode 100644 index 0000000..2f0ecdc --- /dev/null +++ b/src/pages/my/authentication.vue @@ -0,0 +1,528 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/check.vue b/src/pages/my/check.vue new file mode 100644 index 0000000..b0c6ae3 --- /dev/null +++ b/src/pages/my/check.vue @@ -0,0 +1,213 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/completeData.vue b/src/pages/my/completeData.vue new file mode 100644 index 0000000..3ab3ecb --- /dev/null +++ b/src/pages/my/completeData.vue @@ -0,0 +1,661 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/edit.vue b/src/pages/my/edit.vue new file mode 100644 index 0000000..aae5004 --- /dev/null +++ b/src/pages/my/edit.vue @@ -0,0 +1,291 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/editPasssword.vue b/src/pages/my/editPasssword.vue new file mode 100644 index 0000000..267a5a5 --- /dev/null +++ b/src/pages/my/editPasssword.vue @@ -0,0 +1,136 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/evaluate.vue b/src/pages/my/evaluate.vue new file mode 100644 index 0000000..0c54580 --- /dev/null +++ b/src/pages/my/evaluate.vue @@ -0,0 +1,335 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/login.vue b/src/pages/my/login.vue new file mode 100644 index 0000000..9ad4899 --- /dev/null +++ b/src/pages/my/login.vue @@ -0,0 +1,218 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/myKF.vue b/src/pages/my/myKF.vue new file mode 100644 index 0000000..3e58196 --- /dev/null +++ b/src/pages/my/myKF.vue @@ -0,0 +1,196 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/noticeList.vue b/src/pages/my/noticeList.vue new file mode 100644 index 0000000..ed9300c --- /dev/null +++ b/src/pages/my/noticeList.vue @@ -0,0 +1,357 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/security.vue b/src/pages/my/security.vue new file mode 100644 index 0000000..5ed55ec --- /dev/null +++ b/src/pages/my/security.vue @@ -0,0 +1,361 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/setConnect.vue b/src/pages/my/setConnect.vue new file mode 100644 index 0000000..c4e856e --- /dev/null +++ b/src/pages/my/setConnect.vue @@ -0,0 +1,186 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/statusContro.vue b/src/pages/my/statusContro.vue new file mode 100644 index 0000000..233dccb --- /dev/null +++ b/src/pages/my/statusContro.vue @@ -0,0 +1,450 @@ + + + + + \ No newline at end of file diff --git a/src/pages/my/withDrowList.vue b/src/pages/my/withDrowList.vue new file mode 100644 index 0000000..9435f16 --- /dev/null +++ b/src/pages/my/withDrowList.vue @@ -0,0 +1,249 @@ + + + + + \ No newline at end of file diff --git a/src/pages/order/abnormal.vue b/src/pages/order/abnormal.vue new file mode 100644 index 0000000..0b02249 --- /dev/null +++ b/src/pages/order/abnormal.vue @@ -0,0 +1,557 @@ + + + + + \ No newline at end of file diff --git a/src/pages/order/finish.vue b/src/pages/order/finish.vue new file mode 100644 index 0000000..d61cc05 --- /dev/null +++ b/src/pages/order/finish.vue @@ -0,0 +1,436 @@ + + + + + \ No newline at end of file diff --git a/src/pages/order/grabOrder.vue b/src/pages/order/grabOrder.vue new file mode 100644 index 0000000..fba64ad --- /dev/null +++ b/src/pages/order/grabOrder.vue @@ -0,0 +1,443 @@ + + + + + \ No newline at end of file diff --git a/src/pages/order/incomeDetail.vue b/src/pages/order/incomeDetail.vue new file mode 100644 index 0000000..1f31dcb --- /dev/null +++ b/src/pages/order/incomeDetail.vue @@ -0,0 +1,714 @@ + + + + + \ No newline at end of file diff --git a/src/pages/order/navigation.vue b/src/pages/order/navigation.vue new file mode 100644 index 0000000..fded171 --- /dev/null +++ b/src/pages/order/navigation.vue @@ -0,0 +1,36 @@ + + + + + \ No newline at end of file diff --git a/src/pages/order/orderChat.vue b/src/pages/order/orderChat.vue new file mode 100644 index 0000000..81415da --- /dev/null +++ b/src/pages/order/orderChat.vue @@ -0,0 +1,464 @@ + + + + + \ No newline at end of file diff --git a/src/pages/order/orderDetail.vue b/src/pages/order/orderDetail.vue new file mode 100644 index 0000000..b9eda26 --- /dev/null +++ b/src/pages/order/orderDetail.vue @@ -0,0 +1,685 @@ + + + + + \ No newline at end of file diff --git a/src/pages/order/orderMap.vue b/src/pages/order/orderMap.vue new file mode 100644 index 0000000..8586473 --- /dev/null +++ b/src/pages/order/orderMap.vue @@ -0,0 +1,177 @@ + + + + + \ No newline at end of file diff --git a/src/pages/order/upAbnormal.vue b/src/pages/order/upAbnormal.vue new file mode 100644 index 0000000..bd6002a --- /dev/null +++ b/src/pages/order/upAbnormal.vue @@ -0,0 +1,315 @@ + + + + + \ No newline at end of file diff --git a/src/pages/order/withdraw.vue b/src/pages/order/withdraw.vue new file mode 100644 index 0000000..a916816 --- /dev/null +++ b/src/pages/order/withdraw.vue @@ -0,0 +1,600 @@ + + + + + \ No newline at end of file diff --git a/src/shime-uni.d.ts b/src/shime-uni.d.ts new file mode 100644 index 0000000..5ecbb26 --- /dev/null +++ b/src/shime-uni.d.ts @@ -0,0 +1,6 @@ +export {} + +declare module "vue" { + type Hooks = App.AppInstance & Page.PageInstance; + interface ComponentCustomOptions extends Hooks {} +} \ No newline at end of file diff --git a/src/static/dele/home/general.jpg b/src/static/dele/home/general.jpg new file mode 100644 index 0000000000000000000000000000000000000000..24d44e3c62defc04ce4c06b38bd8e966967df32b GIT binary patch literal 7616 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 literal 0 HcmV?d00001 diff --git a/src/static/dele/logo.png b/src/static/dele/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..0200b9118bc88d3541275e30dab3d197be8eff2d GIT binary patch literal 17637 zcmV)GK)%0;P)skEJrHKS*aXZ%66OrX)$_bIJJbUCAwX98Vto=!40pKKXF+ zkq2%~?mf0Qxn=)ka_j!lf3AY@(iC_Her?5$neuBghW55^^9h~qpA7gY;-xK$&#?;eGonB0**Qed> z4~|`3>*=0;NHAEv<6B$uJ$u~u{NIrLLCLat@WumQIez@c8U8yTP5IA%LWC=23%M`b zz`x>I?;m)cEm_~g2p}slMz2bYd4JHZ6?f+Q7Ej`yGuBWkm&xV@V35WWh{lgFL4XZX zcu|@tt$PC2SWCOpqEXwT*{IQMHbF>y=3|d=+f9eCf(~_%=;*{qVMY+(F8+)pKrD1( zz1!EZ+e>H*#FoSz{{+0)Sd8@~I(i<~^YA3T?-QonxKh7i!|at0J#^m})#P9JWB
    @A+5(H4tM!VkPeA#DS9Z`^3FA*7QLDMN-D!__beTxRAr@`}^&qydBL%!%d)v4E1vcAUv}WwJKG zm+2b;(C@VAh>87ngO1F3xRm98{;L8p7g0_H6w@KaOh{hGyuN26pG^3^!qPfMfhQMY z@hlhvH~|tT`jv>CR$v7|Kqv)85_b%JLuic%0D;CM4iI_}T4oZGryu(pzj9nn{Fxv7 zv)?}Z%b%SY8ZLgTR4U927c%S;;~WDgHGy5_3{#~HlkO#T}m;UHWX}^ zoY$iqCX8x=lfy+OCZ`5wYQ%;?UmAQOmi9YM`t>c^)m7THs^+L!YEr#!msWj;dUc(~ z+7j&@-4o*X+X}%mid3k8J3ZbD|Ckl43fbnD!*<(4C8IMLk!L1dA6<>7IPdHDhwFbRz zOivEX7{g~i^Yh$t?1)S(##bM@L{IHC6lHf>J+_-Y>g^8gPM2<9?+L8F#IY`s75s_x zdOg~DuHI;~Rcq+B&^P z9b&^nkA9qe2M%K7r#f;8wRWGaR+p`Imqs@ca7amJAZ}d7vtp*j*BCsbvGT!3fu-B+ zQE#?b+p4i#ZLr>q>6(xzN|Dk$qrk%tEP60F15>u>qYi%C8q|qL zD1aP@p#annu)5*v6ODywi z*Q<0IReH5Gnrm}x&tIm#I7@Bi8Yf zem~M2`~d5D2#LWM5%U~lSF1IyuWz%k)23~_0TyYQbw+{8F*DSAu07AaYwT~KkNx5o zzgUv09!sQ2VMXZqq-B<&Z`HUE*J!M6ctXSfKs-BwDP`@5fo)M$4gjZgV+>Z~v+5W3(V!Be z@dg2@OqP79NWNGkt@b^!-VZ#ig|>Y0%H|eVSF6lzxv}^-YfOg`DG|!|Jw0bI#!2!U z&KKG!vY&MzINxB5(Sx4+SxDsB4<2+6qjThQEDk(_GZ7HkoD$WjE(mD%+dY^q6o^t8 zVrkY$5hjfAf{3KorM11m?3s5s`SwX>m#b2kM=Dp~*q!(A$+;Q7+ z?z{6ge(sSE@hgx06^`Eb0R7wqmzOuWdhr5{trZI80yC52bmSvt5b9nd6KKYBr#i>b zOAM_(l9-;pn;;NyIZ8vrlt)J>RVqa3G}iO5y5AL>SJpPTBGxZ$x0E;f__E4S%nd>x z&o>ArbwH`pv7fd2^56hKX~`M{U_e?A24Y*F3;L0@iix`K0O`s3c4d-I+<7bqjli>N z$V!cl0T}@j>-nAy2}@&msVs>Y*sLzGeC<3Ns~gO(*9cQ-?)vaUeDvoY#&oN^`Ro(C z@PqI0?(@i*}GD){5nUTaU@P_r-c6 zi!m7MODu_XBhkn-jznhd#_5)bt!AB;@=Lsg%5a6Tsa=#tM)2kH^df43cB{ku$|e^V zHdqme@(kz(#-Iizny>qk(uERXzJe#M_ciEkr6mhj=UCim(ZuH$KlgF^&1GKv z(GOU^c#+9$#AG>OVkphXP(dq!G?ikSiF`<og`?T-KDm*O;s%GDN+xMg_F}$6e>d)Utz-NdA-+c zc9~nNvangBBR_9FPc7)C=IXF=NXGsCEf$zD#$W|r7zP3^!1=#a;18IX5*s6(2Qo!> zJ<>4>Ec(IMV6EQujMcftwc&Y|Ouj^r%26nd2vmsc+qAY;scmeswAx^^Z}|lk2^P=1 z&9VZ;P|7ksnj_NDMc;C9h@n!6u}Y5Np`zL;4OTOW{9UN^vR%EvdoTU~8-P)|^@)!> zz@3NptAAfUE<;u>Buu9<*3+aBxMm;*2G$gdQq5YO_0=`%^*W_;g;DwJbUp_fzn&UA zw_R_ru(6FxkBl*R0#P~;XT*3BsUP>17m}0)z37)Q?jeJ35&|_8_#W0U=sfUz0qc

    ko*1@8Qd^<5y1@2MgR|8-kACXsm^=9r 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 literal 0 HcmV?d00001 diff --git a/src/static/index/logo/logo.png b/src/static/index/logo/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..25d6672da8b75b6f3bcea9d225c21f4c65d18c85 GIT binary patch literal 28570 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 literal 0 HcmV?d00001 diff --git a/src/static/index/my/edit/photo.png b/src/static/index/my/edit/photo.png new file mode 100644 index 0000000000000000000000000000000000000000..5da2084e28d796ed2a8e16837959b3991c137d86 GIT binary patch literal 558 zcmV+}0@3}6P)8 z%TWSB5Phu&uU!1y)(kKLAp$i6i~xuLh+x+UFayW{GC(7Mn^0c3X;~%h>$bLPL1tD9 zIXN|Nrg!@DdV4+x*mL_Q1jngX&r+>z;wRNDEzxsmzXY zLPR_NqT+sq5?ZWEsugo|0tz)E7)*gBgLGGlTPW%fbOFo|ZpjhQ09#HF3{IPwC@$ws z>5<5Tn(Rao68|$g=L8f3-7==?Jkv>jnyds|f{`%L(&fMqC1A$Gd0S@64X0c!#7J1C zzUfxL7?BnwU}>JrmsxH*sP;sk)71QKj3gYO6b%xw^8QG%7=%Ka2Qp9=%a zmf5EWu5At>O2EwR4eCC(C4=IQLB`B@xZ-hLH07T6$Bt{l^%HuiW12-|5rD>X~3{D_+Q%fvqW1CsyTqR5{@qix! zCwK)O5V@7q{kB_hzaLJpY|E1Mz2HXHcg2T2D=oROOK4d+fe8jKj(5dNTOKV|jx~aO w@h|7S6MO;y0RR7pi-G9?000I_L_t&o0BDulF@QSKcK`qY07*qoM6N<$f}uI?NdN!< literal 0 HcmV?d00001 diff --git a/src/static/index/my/security/device.png b/src/static/index/my/security/device.png new file mode 100644 index 0000000000000000000000000000000000000000..088b30b60c92d87dc5304b2a07e2bc353d14b9c5 GIT binary patch literal 195 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`Gj6`n4RAr*{orXJ*NaNuAOpB+$N zwqWValYz5Te{A8-Nnky9zEb8%`RN&ybBXMUNm{nFV zUi_<9$@aatE9Fx0cb+}_zC=s5tl$b%HR-g!jr>mdKI;Vst0QDtATL1t6 literal 0 HcmV?d00001 diff --git a/src/static/index/my/security/mima.png b/src/static/index/my/security/mima.png new file mode 100644 index 0000000000000000000000000000000000000000..f85f2f73a17bad56dbf001751550399189ea000d GIT binary patch literal 478 zcmV<40U`d0P)Px$m`OxIR7gwBmfcapKoo_~#Rh!Q|#iY@^Gs(g^H;Qv#PCt~gbBwlzxPJ#pf`DL^l-B2WBEfJO>*qepo<3!qUKr8%9d zN17hJEI?dmWWP_Wl5hX8W|mA&0R z1=xlI)y7GHRMkebHpD}bHrfFKF4Mw?TBpdBUOr{50V*ghA_U{ZH0(gF0M~}M9f8@- zCV^ihtX2T^QpZQq!csOC{y)GnbXD1956w{#YzXJmlSQ4ViuP*(R=`)Cph>R>rvNBW zon%@#qvR{Y{>AQzJb|E3=!O`6d9vPJFMM#ep*CDUK>Q7au_u}7d(>Y=LssVaFJ_nj U8SA?er2qf`07*qoM6N<$f{jSX0RR91 literal 0 HcmV?d00001 diff --git a/src/static/index/my/security/password.png b/src/static/index/my/security/password.png new file mode 100644 index 0000000000000000000000000000000000000000..0ed263745239799cb43996f6e00af7375de97df8 GIT binary patch literal 465 zcmV;?0WSWDP)EDi@*+;7af|m&^D=%lv~+V9DFK zuJDPpTOBG_vG!P#9zcKI{2Axpo*}SD{;VAwyuw*GT4k zb6YHO-B2O$&4;38zJ`&OZvX%Q|Nq^dziR*h00v1!K~w_(onX(D3ZDh*00000NkvXX Hu0mjf=8(m8 literal 0 HcmV?d00001 diff --git a/src/static/index/my/security/phone.png b/src/static/index/my/security/phone.png new file mode 100644 index 0000000000000000000000000000000000000000..82eae9bcfe1ac45a92d93c0864a411d1e3ee0e7f GIT binary patch literal 325 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjzdT(WLn;{Ggq`L+WWZCK#^hI% zC)+4`gF%hKEJK|^EyKNm_r?P466T^c4;bz^K64cfTD^?-(IM4oy34Hv(62uZw=A(vaY~L^FBj z^v*Z)x-9qemsV>|GfOw@i5A-3etOw1POYAmG6lX%9yre4b@PV0e}2Vj#ai#*98nMA znHmq=-g;rt1*LrUJq;haoVxeOeqj3dxhv#jLZ;x`=(k6#@)tDx{qHtMt%#3dcid?c zb^*u27UwxE(_Q=)d35wE-1sKhJ+qLh(~{xFq8&?D<^w(d|G&A&W`4HOE@4AFjt VD?MEV{s2W7JYD@<);T3K0RYHmf|LLN literal 0 HcmV?d00001 diff --git a/src/static/index/my/security/security.png b/src/static/index/my/security/security.png new file mode 100644 index 0000000000000000000000000000000000000000..c27371423a7d40b27af28b51a07895a89abceca2 GIT binary patch literal 813 zcmV+|1JeA7P)}+@MXtX-PGq)!Zyp7$>MeM?-Xlf*A#jZur(Rtz?P7G5R#utfO zp2u!Lf6zp>mp~gmK;mX+h6jQU4Oqb8`qAM7fXoar3`>&D7$3fgT?c!bCtyH8z(m34 zRH}_000=l9{c?D{8rbzJvh;gocN)W?4a11UE%xJ6!(4kkM(h${g3S}K4++@!!N7!@ zd$cxz+N-|Zt|MDxr;#kv+Wo+~ily}oxTCeq&g$r7YvgwgigchA%on0VW^W*95zHX_!el z*vk(Gy%Qe5&+|VCFoQ&0G_zV~zZ&Z;IG~`-`%9Y0850%sZ4|u*s>H&w_ ze7+^%rj*W<`R!Lv!I$YX3?bCm|A@>#JWZ=6^^6P)5QhKd5{~ASa6;+89bi`gt{`y*kt&d>K4pXv{PimO8sLAnB!LA2&`^eR0GGT0R}fu5xCDIsvvAiIlhVBemJCUIo4bjn07>|(~0w%00GI>24oZJT?mvb4MNSEryhJY98Bf7LLcWci!PVZz^D*L)5OvBhJRyQ>IThK_D_U>(C2XUFPo;cCMI tJIFr(00960bYf5U00006Nkl0x$iEP)!9iv5!;-N(W&FRt1sn0W4NvsRAk$NU0!B1!M)J-lm~{nuZ}|Qi|Fic3In2f^HhR0y~+7+m7K1 zhB@V;6t%O{Sy;)25^W=EBzTvGvp0s7zzkR-U_|My$7Yhh0q@x#1q_zgjNJBehECWd^6kJ zB2n>MJED(#AMd0lAb2DL!W3Nf=q|B4ws)$sB}rlonHlCfzsj*DD8VCcIj$z#Xpw|~ z0ZFcQ;ZqdF(%3H#?=PxVm z1a^o_9fs;mdLQWkRqU5wae^{#ISd~;wqIo?;6jy3JStA$hyha`O#dVe^(FD~79WOq zNb|@7K2v+G33y5Jz_{6iOX3zgeh40ctEYKEtOd2#nm|47pequ!+eitXxet@1>+(|* zxDlZ3`E6FhQf4g2(Ntu^`3X~lUoH@wtM}Mf_B8XP)S&2RD)92IZfbeY2bF zZr<+Z;4GYY{S(v%yxD9nY6omukBH^N^WYwTFLHuzNsw_X5z)HrW!e{6{?zD4R_iqpVdaMUOtc>VUBxnJRmw=h2uNLF-! zL+21(f#e~GRiHB=_6bZFiPc{bV3DYxy~G!DQwKU~Ai!!GNy-G@!pmMtGWY&2qI)la zUPw&rWBbjcav^34&VjN1DLReRO);W8ZF@rE8r*Pl2kZ!y3)MS&;U8WV(AYs0g#n3` zIyQE>;P+Ac=&E|7S`!$22wW~nE$mMTYB!gglM{Rc00960?5HF400006Nkl002ovPDHLkV1j(7mF7_?iU>#vNbe<7Aql8J6e)@{DN#9!N(TW0 zfq;N?A|fC)5K4eRLTI6+{Bpj}AMw2TyqL9SX3xypYtOx}d$;Skm4%tGfV2Pr0K)&= zG`X^`hRX!yEx(0A?V&pP+9 zpWH%PQSmO^yxbyR#HzV6|Gf~~TYUe5P3$e33tx^q+;e{q$YfNGwboU7xJmV9d5pbQ z^&`+dzV*HIL@)or;19l1x5DUK)Aa`ogiRSms()*;nchs@MAmJV9;BqDb%HVHz|#^S zZPWH)P>7H5Dhd?1 zgxs)0e^qXPn22T3Fo|(6B_h(KU0aDr5*GslaS1Zy@wuRgwM`6cFBRs~jx5hh>zZYU zJL>?FQk+-!SmjNHnPbo5@-ueJ0>94+RcHe*OEnvI_UjvWVoc8pa!n`^Ge9&y=ODoD z3Zm8zSC8L{^Ag~4P$Dk=Qv%|O8=igYq}Lo?uIOT&tuQ^8a5&CJd4h(^5A=0u5L-tp z5t+^~z-}9H3e4)g4{5)zI72Gq0^+VL*f#z^bmq!(N0_!#qo%lA`uEn#3y^K|V(an& zJiKvNmS6sN8O;A(5p1{;&KGxuT;vo3QJ3Xr72JvgDnFHx#}DESc^!{}#CRSg{U(@G%;=nO989~z6kKPp7QnLG4Vgj z4ZJ(22qX%batR#*O!&D>)+&#>`;x&wJI!eETq=f&?{ccDP{>^tiYKWAatz?-N?6rb zCK6bV?HOvOt5Zi628SIQ7VKD_nh2L)1YaCCnM-=aCa$n=;Qa+osP#>83 zce07wtWzmfF8MD~o!B+l5p5@U107$+;k=P$}mBnsCC=eShUoK^6f>i`~FMznSTF>W!4L2w# z<;VdRVZV{;gO*2V5n07xXSe||vnk*r^7~m_2)unq6(m7Hec!^O>K!$hbjDu^vz_w~ zLq>Rj6GymiuM%P7zKp#F24knnD$P)W_QTI_(#rZyqJG~)_h`KD-*~vOXtQ|F*iGQhc zn>+3WN09Eojwo!}NSkA`0vrSZz`9C3_{f$?^n>4Qj%|k;NBXQA{(Z>}*l;wOS<5b) z#KD(twgt1T{H|kuY-3<4TLriRgWT&&0!5DV(NYg1$N5y(+UF3e$YNjK~K%~+)c_SASszUtw)c2ihFV^ z2!vf8A3GG+ZMbh_EqXxJf$!rsF}l0}U?<{X)MAN%wu|DzSxB}m5?dgszH0Uqq zvBtp{rB9ChU6>u@{`*|ZiM%p>i5W)CnP%#IQA`Xnxc468l!~|?cl_5|Wk4QAL-zL==?$rS1o^*?IgVEunE7%A!RMG%Nf{9RjmhqIC@bsbCC2eJ%kW&{HB- zZz{2NZ;R}5xp@4Cy%lSQD_Q0s9BXKkeSpRk4Ih@APD2|UOkT(_fs0>|5Lz7IdSKC9 zsC)9=BDYolTe%}TaEEpr5)iM1=x97a}#alWajC(ib-8M?!XM1KT*j@&=YSSR>#Y$3#fyS3ji-39#foolLBHd7CVT-%UK6r z4=ZBp1`L{P1RPO>1ON7Ert+412)7jQ*>^Z8PGvZcZ@;fI2>!Kz1aZJjt)pYTUDN1( z^xC;+TrMBW#>LVTkcf?`0MJYHCJrPkKQ?yLi)kWKLN(KP}-dk&uv z?0L_oBZAsfYzL@RFEs{|8Qwm4eus@WO-$2AD)@=@b-*o68Oyed2i7%zM#5(Yt_r_< z{YvIYSK*Fsv88N7#%ZMG)KS_e&55tfRUCb5mAI+dx~S)g0k~vXmi?y`a>yR-Ed88IGi1#RnmBptS;fkh1OSE=rV__3OS zaVE40C*0^Is#navsBt2_n6=={FgVECcvbz0p99ZIO?vO-BiK!(hia}9ujfI9(wo7}*aBV2&h8!-Sd`TtH@s(S(oz0l(Wae#|Q*?!S8d#UL3dn185 z`bPHilRq%7rI`TKY(5^+$pdPn*CsqI4odmH zL*(pGb>Z9uq*J>DB@nqo#riE~C~dNtbE3wag``v%(?RA}x8;26GRBPq{wCPD7pNM` zyj>1Hua9LXmx+fIPw5oYaVJ}`?6HC@%$Bg!+oR^`X2NJHY6Y-|<)Q{=5& zs!l?zjG(NwYUkd;rV(tF)Cks+sEK22po2n=5)Y|Bm&T?bE)!po#*bf56~9wUo*AJU zPqMDHx3)Q3$Bl_`OG=G8#S*3CCXepYaL=Pw_ns4aeV#@_kI|;<^LM-GC;cacVK2aK zNva9JP|caRSLqW#P{U5US?J6!8ka)D4I^lC@$lK*1bNP`y>Rn-pl)9p3Hm&0X{@en zy<-%d8fIom+IqGm=yEC!6ikr>GUrqcEU{m;t5y$O~mz1cfy9=VG`LO-xY>0#`Yoz$$5#reHQwLrku28Jy zMQ_JbZ6s`8A^ktpMI)nDR8bfag%SzGYO<=;9S=MUMPP=tmm4?-#T8!RdihLt2d}U` z-mHa&Wad%*+xD!xaqOi{5Syt9A{EMow5Fnl>gt@4g+b{`hfDz=^(?QtMztb7lWD(8 z;u*CRVv{N$^!^7IcHK8(+>6liKwsaFYo_-e9K)`!MrgPW989e6RqnpzRev2?(Bl7? z1@xiCfEMh69S4$^$bUqq%g7OX#&isOyFqH;kn0{l7m$Bni=u0gE$Cn4V$0t1riZg| z49(641@*};uk*BgVlTmg059-L*^(!3j=HVUH}T~%ey;H!&+-DnPyGMXGjg)UNE~%dRPA>Gxq743`-X({83*n2vhF8-spcuw`TH)k zY+kDt5|EO7d0a(K5qMYWpI$SIfAY{i$?ey!yl)WzcWaW3>DnOZgob@6G&4+{I+*CX zE+?H8ui%HAKk~sLk-IhLb)+De7dWoDv@M?+#dPsw&{zGq6l7R#b49S05tjzVhw5E- zpN~2RrLcFb!4^}$Q&p%utvQ47(I9T%#gYu$e-{dGy7EC$(wdY`+KaW1Bbc2jlz-LijjLEaD~4U z=C1R2*y0Z7$D8CozU6S=`>jjFGhpOd>(}}BnLSLio#4Yb?QfrbqM(~IkPKUuiXd1z zM*Y0)Su@;Mdv%u+J$?!@45!8kGYhWLk5{YqYF5eO8qHX3V(A*ltMKY2jhVLvxneC} zBUb;m$GVDu7R5h3H9ON>h|N4t+?_@un5KZ_c!fSTDY`P;$EbZI@cKQLuC}_xPlB@|EG@anV^*&O**vgb2l9}aDdwyZ~uin5#3M17eZhb z601u;uB8eDgX`5zA3z)lqBPOEOKZu0W8T5tSD>kd=8(x8?ab_m`oSkR_6#sJg{qw5tY!vuYGMs4H<)k-?wWzctm=tX1>A18FRn}YCs0GBUUna` zxS+*A$LAi=mEQPKQl|MT-oWfoHMb&1pHn1SHD88cZeq-(qUpTuPHo95oxg$YQjQuz z`BhV&f!k^Xr0yzvRXJdr?fZ8VcW+~VwHJ(@ND(MiYtFRdcQNs}fh<#gSY0f$gV*iH zXfcLP+FaFIrcbCf;EnhSWyy(q5*o<2gtK%NDs|-IeE%82-1)~`b^?2a{U0Fs=1D^} z4`8XHsw({0=xD<~Z1(q)IvFCzrJF4t+%q)O^>|Is%a`j)>q$PG06Z|B=HLGc#W($a z{Cf_jV*6HklP~i}gUta(Ey~Iks~2{PjdY%D+wMq<(C(fzNoTW~%jtz|#Pspd>o(JO zlAd-s20e^+8+c24s!=>K@ypHd=cKQ@4vVlD`&<4c zAa7!O80v;GIzt$;w=NRpe|l2is4+586g*CV7sei)o!>v%`(AX_vguDbGauaL#LLOB zR2mV8i$hV)DCVVqhsMW}TGPY(N>E*v;0_aq-^h>66#54R59ATI>YVQ3FegFqqd4AN{*L)oSoG5kmIz_omKOy$3(cFgu(YuH>K8crAVOq2Z#?cr<*W zhq=l-KSyW^dURaX=*KI!-eUq9rSnbR$oh31s{C-oK0lXAo@^qSoar@pHSZ8|EFBta z(Vj;*9@32g1sSS6B8{yjeydWZXliK<#z+-%FX8B6r1YS*$6C>Cc`8Btc-&FidJTxc z$!1%<8p@s@ObGkcY0RvyiFiug5%o{gIk=zvItLf)AUXnIv6VpjsD;*w)Q8Qt4V--S zHa;b4D0j`Ju*@k4SCOx)Ut4E2H&sUvB1-XwUUy^ZOZisAD*f>724JJsd-A?-6d@IZ zLg1%pWG|7CU((t@*!^yPN~O%7!Pi8b3YdjzB@Q|Li5|iPn~@iwl|@eJxdVJ9ltwvr zXgL=0E5N$%?vvP6DSk@qIpVTYnZ~SRV2jj)Q12_sxeLGCKFSCuyI~zBcjlAJv<*hj z$Hn42iV*vCD8Yf$-NM`8^5#l&`=-J5pq!jds6{lSD^Uko&e)TSF(lF?lnNhLImJYu zTs;2chM9rqYo(NE+%i?~1joK#5FKm^REHOt2V5a& z$7v(Cl`iTAeJG{uR}BjO`}FQNCMZo`A_PCT21}$)a#aN#5lrwfJ7u;SdiCEMV(KSb zKJ?zt-JFSOIM(YN1K&^7AW0L#!wiVYFBaLDOXTFv4eCTj4VV&B zedy`fYClE7Vj-AP6&Ug;RcL-I?mCy}YieGz*e`#X7AzvPN110^ul(hA+6!^sjjI!t zh;L>eG;-!q9oyMv*oD_SFarC2yMg65yslIB(4pieB{0=S_rzeDPU&`8vnjXTW#$+7 z*e>bN+vK>7QR}9*^2xD_lwN$=_oe)ZjE4aZ%lrGQx?y|EdgGU`vmV!Je-zSV^53)w z-_rKXS!v2@1P%{b)$r%R@em{5!>iQBGsF)k%SLf;i{DkdPQw(4tg}j#D0O0d@q_@o zLr%(WbS<^ZPlIYXW^Z3&c1(~<*<|TWpda{?I|&r3`4oriLc<98)XQ2eyXH zb>A=tl$EC8=6R1M>Uw0@-TOvQnh%WI*XZ@H;#IP~1%XPEMWA_bgZNrW-aCBiL1T0M z?`xXdsdpA`!7lwyu{CAWK}lG>|CxW56*RMPBtH+0@nBtBYDV?4_oQSs*5MM>+chyIY=lj9R zH4DeDU)*^cuuxMp^-suC9(xh<(i7?zDkJ9C*)x+bM#pbX%t}2jkA{29?G%mHZ)@p# zxPz9ThrT^kZ@Os6#_d0D*Om|DimiHb4T1J*@M&&+G;MSBp4Zhl?Ug9eL3_p>aZvgmH$$yGQkrGkw;h zKl9x^Ive))nD1>4EUO6yJl9gc!RMz`!$=Jv*I-Yk>+R@%I3szD+~L2yfyf!+iKhJU zb;Qky-?MY(vp>d(|LI)7neUY32ga9ulX zRPUlJ^nqtP0TD^NAiU_8HLKbyO*-c^Enz!UF2|`($Ig)=nt7(u*%aon5{BE`n$680 z-9MEjTHQb5gn&KIQJ&mJA#O~UTI8L1eM$n|ICgmgmM4b_q+b`2@`_s;mG!TC;9{dQ zvZjky&u(Im-ESnD0U7|7^f1Y?-|T@^Uv+mhq}M9=fM@NBU8#Dy(ie=(d4lW8@dI|b^{{o!K%(|ZM&0IeGCiXN4TGITWf=vjzkQ&b}C2IB|iT+ zoD}bO(SJx)3d`E?1Bn_8Nxv9NjE{xac;yc1@4fXBJ(c`Z$l~lDKgUbVU+nV0S%RZQ z6PZ*E2{z)Ccx!E5yVK^wvl}BcE|ZpSjT~R9XR0R3Zg(%o%Z3}US5cbvwOSE>N)Nhl z^78mZ2>O}qk1jdrry|*-1M`n+=}XZ?PD|2EERAl!y3Wbc-$WWQtqX|R6+z|m_#fbC z70R$g-4DaDb*~!(bfb?eh$43@R+w#jcJt5!O|Opcn9>uda$47@jv0@J(EMdi%kf?XS9=jf3rzwT{ZcKlw9do#|gD zIy>cK%5A=^5WX`Fdsfc}u2{tMR%i;jzo=68h+e4t9Uq85B5hmF;sy>w2;YWmXvyVR z52TQ%$TsQ4R_h+qtKL=J)VjIQzGSwrQz@{yMpe4+u!o_+8|(vELxsGQPEFpKu1czg zvwn0D-UL|@VZeT>>0ev$PqU#t-%KZAOj?jWzVND5SJZEx;RHgn7m1_CPzXipPjOz2 zD1QTwg^Jej&eW7N5>M~5P-@27rwp&lUQ{=$?;m7Boky>n({;>8Z}RDWJa}x4%W^5m z>xtby6thtz|5JW-3^K{x^3H$t)sATa<>nv)p$jc4&C1lyxQ$Qd1bC>Di{3%lewl}s z!K(SQ(Cdj!D$#F^GVR^Zkt9itAHP84;a2q6n38|9Hv6L2q)+Ccm8QHMQ$H-CddXAZ z{%*ZMPbFxQBkG`)>~Mt>@;MdtmQ=LSNKhZMV`?3Lu7wpFE-sOEr+nTk>k2dm#>NuO z`hK2{k;kMfLcGFj4$!IJ*rV zy_e7DyzCu9uPT_4Hx}Q-Q)vEQIfjamws5p|lqQ=2=C-V|OP)9>=JuL@IukGHP+( zJFBUfju0k4!1-E(<1Ta$W_X#^7m93 z2BWF9qEQZsFnsL4l8D$H-COJ$%wp;Gl7c6)M!KM(7VW1=wE-Sdy!$3+68A>yVyW)o zt)&rJnTPp?B9f!7K5WKsoOx3#xIY+Q8{9Nt3ptdHr%k_4#NiSpHn3j14c=yYN7g@) z$8S#iLf&E2%>m%}hyP{)vLaM_eByBoUq9-8&(~yC=%(;gLjfnFF5vAAKirys<62nC zeS%wmveGeH5#B6z^F4}cC`Dr^TNB>w&vqIf_n+3OG7qTq2x#-h-`;`kF!6=LjKTMX zOc`O;;2e8${bq}Qko2Bs*Q+vE|VZ7OkXQ@UU77DaBE5Sgc4zUFkQv%!ykOwtPvngaE1lb>o*H(QwwF;V8q zzXA?*$5ZkLGb+NHoyW$Q1a#VW@~e?W)y&zoCd>l`>fUW;a}JC@r{|sT*n6$mjonR< zC}h-BFmzl&qSu{AH#&1QSS`}(MTF5o1L4&#_Vj)r$RXyNCPP6mnlXh;6;>S}$57e~ z;t{RR1i>Z9qLK`aVSn&5)~~(}93-M^7B=8>Y@(sM7`<#I8t=O2+;=`c$l&)U{*AX2 z2KbY_no`ceZ(S7#B~0+_T~Vs$a{ZLt=(_w{o!d%C1E;c-y%iD*HqGAeow!(_DsZ(- zK=(u;pC}WphDR0;_-`+?)R=c^DNH>1cvZ&z?v0kp>+sdU4*#sKSWcaLP9a8>=_E8K@w9H799j}VC9R~%86Zp$ zgk8~#j6h3PuzJpN?uxt-M3w+)7M{X?YcA=^Ni%@{$!9NBBHG5xd7Hn2ZFMR%mW(5dNjdeTSg6F+ngW_uIP9lWr&dF^9dC zrU3WAizbPSMWST*7_Hw(DVq6!m@@TaX4zCI>+7*e`ue8sQvHYsa%(8+_TUnI!|)aT zsS00#AbUF0$Dt(;pE1o|*?#We5Z>zFne~t`vQQi0TYpBSIQhWO_kB>&X<@F66w$JD z{2?vfuv|Tnjh~r*M+%X(C&ndTip%P<-ZW}Uubh@#k!3yBxxb}dZ|-F21%r4D3McGj z?$r4gN}gHcxi-zH3%8Nbq~$ew>AJgR8D(Nn%f0k(cfULK>7l=d!>-8oC7Ep;c1YB| z!<#S*yS2aEJexOmC&f*E>yUD&E`s)ESv1s`3d@_@h{#aLZH0y6sK2b>IfTb z*WLWVTFK^^+meKwo-~~fz3ijAHMBI={D1khdd_PHZMF}_Lzv5Y+4c|JBqY?`#nv`R z&rD>4JXwr6*e(|sot;x#nsttSiPjMoyL9QTn348p#1+r!mvs?>Yt^HL@)&MN(h`jS z6Xc$@%+~dVcJsB-M4F@rT(ZmUo~F>2gFv>D&{m?%X17vAo3$r-)I8r>Bl=lT&zI&| zK>ge9&eASzV*8BtPA?5c7kpQ9!As--inMPxA=Sks{zR^IZ|iWH`+Bk7Y>h+l&RQ%u z307I?KVf|7JI0PCrard&Zx{hTB)YRC_x9X}A@=^v`#JhwT*x5l>p*jrd|nP3FURqhr-KK@~lg}KtvP)PMjo%N&57l4DuNzsQe78h4nYS%`p19SuQ=%p^N|o!y*IWu! zoN-UIX72u**K*%a0BqrC9X!c~h1|QA7_Z`!H+&e!a%nFRt=qhzaT8zMY+w!{p_4*9 zDj-QrwaH5%3fTv@g)x;|_`u}dA5H;}UA_ni_M2+4Fu(M9yblju_liseJ+YDCj@u*q z3C*Wmpz9+^RVY5Rk9DAO^xVUMjl{RsNn>+Ja-LH8_}IWpY7+AbYkU66o1q|Nh=WW> zFK9LMcUr8M*wnPD6`>*e!$4>7A*doCu;TYGb@`LPM(~Fq$auu+eAvXj;akxDeP^UN zrD4_lzw(Homv9=Q75x(}Gy?tJSaz%{gWv2r?pPVbJnSIrdBW-q;CQw$ixn8AP)}X_ zO42VQ2O;_B^32oa-w+B(cWRQ*Ch&`dv6X$&4cz3VZ{`(f`z2Av zeul%u<<`&urF>;YK<7GiPqThuG4M(0!Yl3S)nWa{k~JN>zR(6`Rgx8~Bv^})T|h`B z4#1gXyIyHHs;>ET9lvHbSt)G}$7DTl^!^wj+GorUcwW}Ok=~S7+^E#CX_cwpp*{-2 z8g~5ip{TT?zp#yAU#@34-*=1|n!`5t`nFQY#GH{vh+j}%oDPjFna>>xNO}-FIOBc; zQ1^p_3T01sh4W&-S7Wr*n#b#8MS9|K_v@i86bK15hu^S~IDDs_?UQs1r%MUDm#KE>cKCXG|m1RBEQ~`G% z#ydLZ*g!Oo&p-OYU^1uT4d7F(gvt1QxyJ*8bkYfbYEL+c0hjw7zA`d0hj(SF%ofD# z)`y$eB;J-FuhqzM5~7Fk_{qVDh0>^-;@oi^8jjW45D_^a8v~fJLh-Q;C7x@E38Rg$ zeHh=5R?6l~AFJrB+_{m8-|{k7D?dY;f`@+jB(|BIB#rLHdY+x=EARe0Jhu{zBlZ1i;0_Jd*G2SKi(Gm)A=@r4TUY zor{u;nu>2$mH7@K37p{`S6%a+_T)9mbqDHm&X`H>vBS>*K#~g%PtBL!?P*dKa}P)r z;=gUe55$39`?-a_TCGv52OCN8her0_h#b1}e}X?15>c#S&d|zVk<*V?6FP*sZveo{ z&&>$~$BxKHeLcx6a1fA>y-HkY5)|d-h)TKPeg#TAx+dvGJoZ2Jl0!T|<$K>2|C4|* zehTCO_kwu+N#!(^W@fxN|2|uLBFl-RfXxL7LC@zD{hGNw+ws&VrB~A9-^riM`I0HY z4Y;Iqy`IE$tiSS_0RJF4`;bn|V@~pY%Fz(x$b@@F3@ms0e4mLLOo*RoUcZ%R+NFvz zOXbW}RDN3c*3wFOS3Y&1R5*2lwhjw0i08~)B)FHLU1x@yI6A$#viOlN?k&eI=WcPd z`0&4z{~6(bE8%}$@INp3pBMbk3;yQ?|NnZy=VhzJxGCpY4j&;XF;1fCKN^Cv6t~&5UCW zka)5v;CD}JpF?XYxa70TmI2W&RpoN+~f=f7NT_8{(G#a1Vl3c(eAK~ z%$@mj*mI-UMWAw#F&+${d?I*a^}&cv4&TD>CpBX2AmofC->{C!k&FD$sK|x+)L~IWr zR`XfxyEfSHcmHVsC~4z-n?9W@w{~ZUD}(81%+Q|T<8pCd&}xA`M_KkQat$n$#zCH= zN;s^V#ur9Fi?<|ooK)f^11w5&{}u$%Zi7OMBm`2UXk zK%~esy^S5o1_01YY)0)CmDAa~vFz4_#5h+eeh&GE`Vv*rF!wytxP1rpcgcVYfQ5c{ u_)EVRIZox7x{idRP-n#%_f6Z`e6J!JuMz@2a)uxQ;2#qUDSPo`*JGj>uy#&p8}2@G0aRuVY9`w>WxY zx#=AOt*kft*j7t4kl>hpAxS_%Bb}8#mwUNt`SmnEZ8e&a`UcS{WEPs`I5|(#SN5EL zatS|Ia)VIpLfuTUn|9wGdBk?!NON60Mz4d)z@x?L)9btA;JlaTHeSiAhK;Veth`bf zV0Oy#$&vKME_ij;UdHy#u!3mu-(!DjOSk{=n0{ADW`}rdyXw4$lS21I(BIkVi9M@A zP2(M|7ns>9!YP->>AmaUjQ(2vJo|YUD}bKTHFZpq8N~ZsZFBwWCYQ$ckb&2QbgFsq zW(|br3P=j542A_<0qxg~Hx@Q*WC01(yiwNSmzZ9GPmaw;mDjv;+xqN26Nrui5B=bl z&*=;^NXmKbw@cEB?adlrBMwiDr9#M{4_Gv?Oh7@ILK=vy5kM9}8Zn*?NLIDq;2-ey zCuCvU5#icWW>@a<=cboj9P&xv-YMe@g%88)F@LVp`8~f41msH0dR+dV8bG;*IHgrT zV+e}1ED}Q0KtUCql#<3io}ITy8D^deA_lv~F6B$5*LCwT+6G4MP4Lup#{>K4FZmb- z|M{HM697LquJlgi624ybj1-Po17JE&_1BFc9j@B{&L+(i*2W7CKLM2lQo*$FvIUl( zLU&z|nGsnzqB#?`XCVyBOy&9ARz|0K@8%nAj$GZ##ry}hoH4G{nStZ@BI5ab4H8}E z>$I#9QoAzg4T-=zts`J5O8SIBBaQMsjh-DGAUC;|mXST!p(=VZ88m@kBpdpr4dGe- zK*s9TzusZ^K-F#Sdo}GMczaCHaTUX`2xa|sK+yy!Eyuu3N_EyzO)s zEr5w8pVQ7|qxE*k@BWVNWEA&ht|(8IG-CmPhleoI*jkU;(uUAh?03eG9N7Vc&QUS- zt?F-pjv=A8=?8!kfZgyS%Ex+e7=6yq*toAm`L$MR@z|s;F}rrbMsBh?48-+OY`sLX zn|q&SN<&mgi9IKnevX~f^lQUHAm)`Bdz2ue5~gxuJzFZs;EJ`th`RN8tJjH*x;VVI z!03LSF<)~W-{t5TocHc#-GI*8?7(vUIG49zSm%2~t{GU*_w=?eNvqp7hxvuNS2dbz z%1q!KR339I`e*ma%yE7NP9K&AQlG2NSKjM=Q@PhnIro45>vH^*e7bf};%1WWHA8ZGwzY()Iy2JJ4JW*Y_U84* zsFpLxknM%w$^6?MqAe$in{Yk$RSZ;cK~&7-6JurfR#q<>#kKoSEkfrBr?){EJTp}0$GUfw{TqBrdseJKk^&|ANzqGR7y20@W_aErP z7H-!ad~EebRIlR2O|AV6uVVA@Y2#+(6BlKrw*)(dcRUNZZS}c)yAZw*s zVXp=V$j+{gm%XW2m|}UKqF8rG2xuz9_X!E2>u5VSNH)nV`0!N*2bGw=-)%1Q^uqvr z&*qD&k3P83L3}mk4i4x&ZyO{6C^qWIjibFPqnkW-(6RlBXD?{>+5$S+WR5)G;NDhuV>6Bx8&8C=Uy>=LAA=z zb4qPvtNFTq@mlLqTT#x1t!7yhH;Bp%kmj951Fur--?{naynv)H0n4KgbM(Y__Rif~ zv5YWt^Khqnt^IJDoy!d#R<>Sj1o+RvA%a$YhG5x2f+ut()> zH={?!;JjmYCutZ4)>3mAM64$2$0#vd3zjUs+`4LApL=^G8QbT39S1X4OV-Kt+SJ^( zota|(^SP3>vli88fqfdic1^oUA53%8bg_S;=u1-Yo@_DBe#ntR6C!Vv572GtUu8-f zug5O~wKQR@TECwd!f-e9FJk+c|NBg*)qW8!aF0dOUbXIB@7l-1w}IfoP6vo-1~HXL zUZs9UpnswRGo1jJSL0dg*7Q%NXiuss+=L)Z{VxSOU_V_+`^_Qmuy2{W$BaMUgp~Ih z*(&d=WDd^)znwq`j9`$km!QKi4E)`84rg4Z(|n9Vc(ZWy`@x?S;aju0(dE&|rf?gI zrlV~6*`5%C%bsHoo?DUoxdSnHdu7(_0Xhk~pwidm?~F5c)K`_|=l;A*k*9K{<9oVx zZNl(%KjDNQcJ)}g4dpC&`;d8`ySA^@`*HX|%=+E>r{ufD;G`n4-u9vKpVvyyiRfXj z$33ib|B2bwdh7WX{&w%(e5y{x;@=xk!iteTWe5#=27!dgx{LKz$Yq$LX9k@&x${K+ zmsWZs?*Q@>QeW90*n8t%d>PYrU5eecd%l3|i4TW=099E*1m?KfUCZI`uCVc3!T z+cUFIndx?>uLSTX?*HS+W6^d}HPtR`_O3>@!2e@_bqlJ%;IGd?W2bH*+_ z##I*0$-0f6`y-fmGG#ibtv-}Ca*a_Sop)*_Yb%0+Z~2>HvwuD7Npn%xT1Ch79=W1_ntZJoa-ea}Mpk`!6Y2j77enn7EV9f9c5oJG~iYO++rh=-y zZM4Im&$J^`{!x0Lzmu>_rB_~ZAOCrE1iv_g2JH3A*f9j_wpWn?EiIGMse*G!hP(eL zz_!?PTHEXL-p-oSc|T0K8~dGS`?mJB>u4Rcl@INuXAivRW}F@aW@jhw<#^%)?+916 zC`>oFq8+DYbjOn*gU4T7kdC^Jk~J*llp?inaumu0uQc&m4p&TBibJZK)8 zuD98L4~vd8V`TB)b-xV<92a*3F{KL&97=Hp`jh0+2&}Nm%*YrSTcZWhuooo!gHm$+ zSA&QNe8MLOB=M$@V&wAl3!*v*D*UtJ4irQT2K+!X-D^ZWW9oswgu!Dy|0gDtRMGS5oCKwzg8JBJh<#SLfc;VdqZn)NY%{fM-;J&Wvc1) zT-O~r;Z`%SlMILujC8(TmXp04Gwx1e&g(_RX z9M`a2Z~o_8H$H^GshqYPs)Yq3A{Kod`s?sz#Hv^k13qbkQTjpo$S?MkZp5sKHJEvn zF5wtX4!$!8Se`m{g90jFL1W8w1$yDUj_Bq%?>sZ!-5zt?ErjPiuDNcG|4aX3Jv?=_ zBz^tX?LM}0Pkg#V?yfeU+ZGzX4azhTokNBeC0VO`4nMX(Hwg*;irGs&d%lmd0Zev< z1N8hXb~-DLU+nQ92q4NsSX@C-=xTb3wz?l0z?9;$R<5o#^L>@Io z=*%O(jR46&$LK9Y#mhTf^j-cWDN{gyfNjrEcux6SO^Xsl#*JJ7E-RH-MtXTJo zXJ`L;W?v>KDT-GPY0sqiD4kQ6``hJ z;0RcI1PLh$4p@aWLlsS~g;0k-@4md(%yOR&rj5W} z&v+Um@5CJitrGs_kzA=9j>XWS!Z;i(e&{WH5qZJOSP!4KouID`DaT+y5zV}qN2wjp zl$;`;I$1UW>X&#Ne+ZFvPzl7?a|)0$Ds2LgV)&XfJ}|LQ2K@_O@9)14y%9Fv$IzJf zpMkWY3om3p1wV%3+g#^(=OUuk@A>Xm%9pT@;`eq16xrzZ3sE-e*d4s@<7OIvCR+vzS zh#UkK$ONsmZtzrSUL6nlh?&94`7Asrt&tG3jQPPz8A0foow#0oxV1bot*EDns&^5+ zV&win&c1{FdYH1S*+xhJ^S#|iP>s*7$$C@5PHTGr(=+6q{@H04kg6s&VKX3!iYVv#D1nhx&bNeNNhwUr4U6Nw z$zY|`Ye2JHPV^L!Chah<7h!T+C_PPTB0HhszSs$jWSi z@7xOBG|%Je1(N=&KUKjjst7Ef{D)fHJ~t?7ls#g4iTnfnV@#vtgH%}vc$Q6>3Rs%b{T7a9q(+Z3MlT`hwJ=0zBsE4!QE+mrS|(`*fuD-kY|Ng zXKtj5tU%49?3+y?Zrpa>U6o}yRkrG@VFmO8;)G^?O>4OE<(VivHkPpiGnWO{W0z^7 zW(**K@v(>o9orYpbH3z|V43f{+Uwx@BIW5;8?-RRMKN?ki7lh~OVo&gpb3M*zJ?4Q zqafKJ_6ubX%6%4pjr6{jnk~#+v6e3X$L$s~X7tL~jp6zObfUZoF&+Q5C7xQ-H6^!S z=3kzEcfDVk^gf66zK7RfLt=G}s>VVBN5xPH9!pJkb)rqb$g@isXgO3Y-i zri>hKf9vYze&?;6Hr?Bxp7BM@Fn|^pG|17%lWUB~ z)^at=rDj$$NxQyNQ~+> zSYFtp5F(^VKLwHH2~@f(4DF3J4*>(pS)>LB!ix=%0vCK63W4}I+ZQlxD#sb2RdFF# zh=Hm42rr*h@SA;{$!Z6l7Lfk zkeCl_mtBIP@dleC?}wBM?R(6;5;q6i?OF>T?#!0Y_;yO>h#skK*kp?9oF7w+bGwZe z9e(WQYVUI%)-r;>_SFbap(8C~^s&H>6$eP6Z}(V1vV`pa`#TNXK!x>M1=i9LBu>B= z9hn2NqQZd|TWT?osvwdG=C7AN3{xCXyfmm`{}gD#BIQMbRiIqkU(UKquhL(cqA%}M z*G|%G`F_sO@jwQe;>BmkFxeB;HwB5U334DsR@M<&9vNgk9c)oHAgC3F5H*2>1VCY9 z0{878tnx!|+B4J`_61>bpbN0xS?~LxHNEOZjM;q7^Xm(2_N3Zz*tyvhaKUXON|FSq zf?}>YvrKH!85RXO6G(kC8FU|25O%=z?^oC{PvJn`6T-M(K?9B{GVCrwie(L^{!#zL zN8{sHnvCN!(ToLHN8U?T==owt+V#5itGs&eXeKO!IxT3ZfuO;DIr)}PpmW*aY*OP_Z4C)#Ua~9ZKpM_dIX2+Lh!nNkLRK=Doa%KG# z&jf6|P}VvS&56X@nFG;%PV-5*0!Ch7cebi8qU2>AC?|WYS&2i*$%MTklRx-30>1aW zl!qSCn_r;j3+sxS%aC-%{)8`~`Vq-w;V68@8UhLoS zAh$T6^k^rOD}$8HY`%^bHrf#_u)mfaDft*_k>kB>#QZ;Ra7SNh5 zqz?pq1s0t#nJ1hFWf+R1pbe*Xfq9Kmu_Tcqd2K)h1dCoM@d#QI56T6pd|C*uy}tmw zs92KO2~uKfK-;{o3L972l}=UFImf%4pTa-0$B}(~`qNu+y&G${pD*OTr=(21@t2~x zVwCZeRSdGLwy8qG((jlmm7U|~p< zUqF@(=6_O~wSDG8pbIC|jCefI`yg$wV%S?gdoCZY5O&ScuB zWj8Y%KGrs!@Qiv^Fds}6bJB+&Ryi`#@pN5ILuQ`{j#!tBSr-BgarDtrWuloUZDrMT z7wVB0t+386Ll~b}X4G@^Wojsw(yzi)mQHbTooj=t8KcUj&r|C9P$`(Ff~-MP@)3`*FH+ z;YQsE@gSxX2@(Yq=*NTg?LC9-DC)C*iu{sn6?c1e*n^qy!Yym3`xkZH_3=^@z3_bb zQ@?$VbrbQVCT|Yqdl@q_Mdf@Ch+K;Tvz@`e*J~5`OHxAV_d3Qna5FI zyIgnEA788NhMl~~acp;d!V(QVp{5-ai7datfd{JzTN4BC(FqflG=S$Vo0R3xezKB| z&dXR<&*I;u*WJbLFrmZ6bByxgjT#FVg2>Ww`$p>h9#JR4!Vh2qK&edz67mJV3KyQV z-wpd)71lekS3Ms4r@+jgcBp}7 zEvpqjHNUrg?s}7`_VxHbc5}vWZ}r}$9?x^T9R7CKcHUJv5q^#guG90g@V}QbX!d>; zrnlcM#mULr)L~;SMX!IUHbRbd>gLXx+% zmIo?oYJi2aY=_XBAmkq(lgo_CpgLIgd5mQIQy*keqSR;gih zd7D^_N}4X%f=Zx%m!Qfnz1RD?Hk*Uy;K5SzXY5$}>N~P^7iTl^emW_Qi^}YGdcPAj z{C(dqzcB1~>vjEmsntD?g^7)mot?eqAhg!!GN;#l#cP@8_27!Gcx!J{J=KY(LPl1&c3QDXrmZ4yD~A}aGqTp_SncC1Q!mP!EyRoMo5C@j zhs|085)tlddJ{m^K$Zg8@EfoRl{D+g)RUgLh{B=-0y7G+fdgWPw~_0ww-$94;FYl4 z4kkK(i%gkl)TSR<0%!>rQctd-P!67NRrw<+3zUzRUWjL$4^6(PBZZt%W&jll!Xg}s z4N}&|Z`@7*L&)OyI?aFmlc|{hW72&4z5_ij+aO~mP?0L%Q?4$cLN&}xAlXVQ*AYToNOS2fO=P5h&hLGmw$+ZcVMpUGv)r1UH4w|-;X@bEXF2gR$=b-=g;9tkR(WLr;5iY zo)w*<%%i46xs@iB5>9TttLin^>%|YAkdt53 z!>Xr3UI}fPn$*h|>zRuR4LZvidUSNOzNICObShlHI|2fKGon2IC(GTR-NW=db-%lE zd4(fvi=3S-pB+#_eLwh}ORwi17Ng&oJqL#j-(xh-o8PgKyuP11J8KFou#JzPWgbpg zETQ?B?~H7{_|#;P0?;YRQ60SW@R&ml!BZr^NVvdj{kvdURRd}$XGP&y83ii9WhZC) zFSh7*oa9MN9I!f!BZa(|;Q)?bB}n{==<&335E?VYb=vgH5F*|nPtZwy_m5PCVk zlMzsDvgn}sGO^&N+H_&juxF83mn2lkXh?Yg=~){>&}52oX(7o?)tnbJ0OHcip(m%N z2W%I2SzR-OOZ>9cDz_A=zRaT&qti3;9WB)Gu zxBao9-s?VkvfX{oZf$q=H)xm@@Q6p={aNPTh^3NBl&KXh{FG$>L9GH}8L0tX-9C?) zz~hXPCt={P(kZG~&P3#lJX0m%khY%YaYtWwMx=3IDhb8}ChCZU=`TUgIS`=*=?q)t z$0)#;l%QKjcWrBI6ANRN5RzHws}NLTrcak+_d9>shq#ISgW!}XCi`%5je%arXYj)* zd*S&dxb?1F@zPwrgoj-w7c@1WU+cNaXdpG}5QgIW1tbw1~N#I3f+t=x~% zjmfG6DvXeK==vegok8+%PH+yhSAeeLlC^Y_c>>Q8k?FNOJoh|uM>1+aCW@!D$qMRu&<{B_=oVIB`>)7blZ+PuGhy{U9d z;f4RAK)HzpI++~Xt_eD9E!T#ELajuljC?7s)DvBS3M4E!tO6XF%tAc5A^bK}XIw#f zd!YvC-VXx=f)~+3@S^3CQI_I2AgH{KY-s^ux4Skc8TCd##yxhPN(fUCUwvWtt z62uk$!aNEeb#YQ+|CZ7Ov4o1<4MY-Z(tJyPs^Iqf7SSLnwZi>z6rAagA1`73J`LLb zJU!~H89%yHSg=T#3}`@QLFy|EMxYkn0^C~l-dP$uw%5IMA(fa+I%qiew3#EN3+4Nu zc>t}u0zCA=Itf<;%Y(eSQeHQT)q9S85cxBAbJ`!5KQ2J^JSOY2OiVgsUp4W)M*ad^ zbi&)DJsZYOi)fPlOCzs~-jws>6GB*ki{w?(^&>#gSn)fE&RZ1@Wb?po&hOLy`NAqi zZi0y7LxoFPS|Hh2lZDRudm~dmf~q*O_M>Rwgerg?9nelIY?=|L(FY{i1`?yFtLh_6 z!+hq$fhWI>p5)~RQ2;!@#@v_U_`j@2%DtxU|EuKQz9WypzGqkKzD!M*0bVUvo9$K( zEgC4CAo$>A$~meq4yb${a2*vp>a{&Mpi!98kLnwhf5LQaZ+|rmv5-uV*5pT_vsk)J z{^Zr1w)f>T;!5AcM3d9c5Sgvbg_}**m5=;;nFvHN{`+)ir?XOS98Z%JP;i%;ozTwb zf;liID)id*I;=?b5Cd~cQ+Spm%-~h)iVPrL>4iLI!!VUDsgQiDJxy7(UgBq*y+nep z5Js7+4p8ht;R!Tj?C5A(QYPgC7;H^*+Th#*U|q_96sde}IWWt>rx9%inN3hTF<~D) zeh_)0_sB_{#cdJO$D+DW=|5Q58UwQ;)7r5;D^|7bpUbG8z}b5-Udwr7&(*X8&w7X{ z-DrIf_Eli+iX)ya%Ob{A(ME^D+tp7)L%WhRNq?MeDX$Y!?G35Z)j74k>@mptw}VHgeq_1?xaxS;A; z%LOr)tNB9CZNR22Op(L2=33m2Im1~kbO6nTCcOjC#OD?a51x>5HU2?OR4TMW9KVygL%%MkrZClDVwW0Dx64HEb8-pHhuLE-i zUXadCPuuma^wz9O3Bk6GKi;;gjnH4z|pQ znO$b?$YvK#3;heSEM{^9_h&yP7%u#ek`L7|EPBS2F8&hY>z#n%8=*+~VtD$3HEM;` zn}xxrGMT^Ao1W88xPZH)8maci=6H+wYf)wY`NxTpkG<9}8BHG5Nc~Ux6@xATmeGH+ ztRPKN*a7cligPlW7Y-G@2=13j;%zpuW?5MZu-vj4$bdv{*>8n62p~^AwDiQC>48IX z=ic&bM&#so(Y271=%j;m60axH#jHh|NLC#3kYBK#0$fw9s(_Ga#yLev&H15II@UTm zg=k-dQr^G;jM_MJfhO*_(7@~!((6CUG(>5{K`3{DA4}s+-@P|_kgw!yUAcXC*u6Q( zXc5>Dd~8(IUmX8(=Eg}Q)ZMMTi<(vqy}d(Z0DSYoOw`6!$XH@^*fXl`ATVrbHn)^F ze9+M-Duz#(%~T%VEeoQr=>YuR(o0stD3rWP%*R0^zhK0b2AZNqZH0VtHeOj zTS**zhW>GZq(W-Ay;1}m$l75;+`bBx4ERN4e4B;Hk;(6HPWQ)qnR;BHO9{{~#H@cn z;;<6sdfah9-td(TG9Yw)mQu#h?i9v)`&3sM<=w#n`-AGzh<9J(u0UwPSqG>nvCb+ ztv+-DV92-rsFNZceIT*n|5acc%tpFOwHavc2_)tZv(UW>+J?WZ+!Ag5JG#^&RtgG+ zY|}VFzL300T4zZN5eoE5y#DsTM=Yy+w(}%c;i0C4afLEr79e)qLyJI+z~C5mG^d3K z^FuY%Z6gX{_$`ziQz%vp(($P+C8M&ZlE^lXzk zsAf(P3roPZj^Xv;kLsWGoftZSL!!D62f#Y$(E^C{-WMzzq2;pBU$%hU>rQhPZ5f$q z14C<^jtaq$(62AiI$TyoTAB=GY6Vd}v|%B7L9iJdvi3u~(1Ks$lkq}MGN7_Ef_i!k zJ8Xb8xAtNi4u8b0q4dp7z)y%N@8WLot3yZ;=f*V25ADhmE$Zh;YdK7wdy%SxD&t0Q;($bZ>@FdIws)gzlMRm& z7P+<#Z8~`~awL#!40Koo#ZUOT^0(v5=d<_(bA(_dJ|s!;%S&T%Z7S zw~acJP%~2`E*aS{fd`VlLyBmTZTR~bI^@Gt(B6hXi5*#N6Y=i$4?Qme9B;2Ho@C-X zW)6Sp?1si#kilX}9)dv7%8kqP#f-B}IIcfn>#XY#GfV=1W1x{Zn=U(>x6?xWp~Lhm zEGh@4n(u-Jn>MJ^$C%Uu>H_bp1%*}ChsU+1CxM+F6=a%&NU;j@ekvn}P5EWt1>~~c z|1il@GWw%Svw(X-ESM`Bbig+-iACTs2v8dX4--@!XGnmiun|@_K$2c$F-UmgQGd~9 z`-__9ey58i2<}k~(6j5cpu||gZ>3Qg*#%l1H!5DW)zZO0s zta)S+zp`RL5l>DE8=#{5siy^HV+8Rf0@5Ybvj9YNAyfzz3J{gqctrV#h|h%@6yh}j zP%E(|rPmv%*(ya&OCraY<=x-d5p#C>gYvwI7k;>uQlaM7M?*+S9dBSO5r2e~x?P9Z zqBUfs+hW+ghLTVM?K8=le0z%Y#OIXBw=nXpyZ8prlftaw$PG%4G{EUZGc}HrG*~4= zoX;0|G__C)d@~K-Pdw*c8?ua}pt}{1FPg5qNyLM{2oAHQ>gGweV+Gj_JDbT?@5j#V z&w1sERqbFH89>BNB%0o>bvK}TM;fiH86Ar zaUB%)y9UZ|#jg?PV#iqV!4Mc5AXe)j7f7g@HFh9pCjb!#k(-Y~QH8H?a=**TG@yb% z0Hd5R$6#s-@1Q5Hrwt%ZA&r+o4k4gC@Fdk}LVHaTKs}Zvg*XMTqp(W*Hy5RyFaN;W zXb9nHAQy}T!$ng;6j_+p{G|?{49W1e9@_agbL1}Ge0t4Y1D(6|BSrz|*YbQ)l>>v9qcsXHNvHYc%S|^8a%e~mC_U=hPA*XN4oUA z>oZ46M#1L55(36T;LLg8=&0!z6@0yn7S)VGk9A5*(L40HmrYlxg&R!P&)g%&0Y_*N zAV;5f^Y0IF-cqlb$v8JimKKWLJ8>k}yakJe1zf>gLbol&%cVX3?-kUy1=3!48TU^5 zzJU#{4KInoB>9WLVSFMXXwbj`QRly*@VN1Fbmqx)BP<~_QHH;FN+MLYe|d)f>03PN zH?xBen%cfwUBhT_nX&9?J$uDcTcYK4$n- zEL?aQi-hiXP^#mkVPy)+*MpT>LNnL2HK zwT8ZZnMj!3?@Wq+O-fRpX6UCohf@(7$w5i%DHtkD1Era?qPfkfj1~wx`ZX;g(b+f{ zemC31g7r!eG}Hq#TDo--bU%jwu^TFH`z}uT*WnM(Pwb3&dv%wq+bXHZF?{5v2`qGA z;lNGx)f5W@jfDSJ4R$v!i>oQY?Hng*j0ziC6Yb_hS{~Y`P(I}aD}Xv;s=^%iRRzWWyhG;W zmp3Xj+9|haJ(Pdpu~WZxZr6LK#4XdjS`?M#P~@PySppMnSD1j}={YDR>u(+-$;JF_ zF)n`WSLW761UpwOQ)+P0`*>a}?KV7U2rMUz2ySQ zoE@7{>#i{2EQE29)ybQ>*riLNMhSY=*CsIV6xbe7O}X~ZTJL1|Yi~C=Kkx0|G@Q!M z&DPz!X`$vMK8u=oqF=4U*P8xFI;jWrx5EE6?Fs~A1@EBvGKQo%MfVixjz>;<9Y^9^ z{UDu^=ao-dR;OzRT;}@wxiB5;xk5yQ~RgiYjH5B4%H2hEB6dLy=oX z_KC0?@bdl)ig1wbLcsaiVeas|B2>r$?_ZJGSDLu@faXS0LeuW=956s3#E6K2;4K9g zoGZA1O4SEHAhqw9Q?gz8pYjpBJ)9QgM4+*rqDH1B&#I!u6||Y_ySjltmUqwwWB|>Y zKbg0Pe0I-TiC1xoB4ZYE>Cldls4vYz5ydt5En;RA9KRg7KD&eb{d8REUNGWQNmkR6{ zd=Oz~aMSJ$EJcT1{7V2_ae~ddTZ~f@{h9BdZW{Di0;!bowkZp`u7WRC2Z}6)fpFG=QeRvzANW3={qknZ4g>Lo*iyKBGO0O9q;3N`5pXTN{8)tjkFb_j02Ku7l&LR=8ogHn8X9rQOc|#dEJ2-y>!RSkD8Wl!Fa0JSp?12j=)xzL zF$z?3zF$u9RM6T=x?v+Dj42?o>!p&D0;K3)P|{Zfw?!N&8c5uJ0EI-(CRS*yUUxpa z9f&>&t59T)fs!kEKyDuwO_%T@gWdgG9+5)_O^cZr+%}Dz7SGQh<;f>{3-ebsBCMWN z_o{&BV;ZFs^|_pQ>;brc?Fm*&h|8+cr7BxI=9fm*_5FQ z3ksOh-LG#-T;Ge$=<9U_FxaDik1BL|;h~aJc|`k2^lZ?UbQV%4->FF3d(vEj0yzqE zTreT$t7p_-XrOw|zlT)zF`7w&+V~P-2Y!U%baxKc-8GkBybZXQo+BI&WY%@FNufiu zTn2+JEe4kEvhze;n+2FL?gji2Eo19((K{BX76rDUZ+%77zm}OpR7lDY0m zx^N;zD~u3YEsSh!A(}P8bEIqN^Mg7opw#iY6@r&mAj#Cxb{38|WE8_^Dj+uVzO9Hq;si8;pON`kDpy^O z*$p7>2gt<9)5vg@V9}_;u$Gd@ODc?E1j@z#uyO2FW>ZC?o4sSL75vKmO@x5sR0rpD z+T`qmWGm5-J6Dr`3xn}nAuJ>RwwC$kmj^Y0h3~}%@~!PTODO4+5m;ySY|Q}yug&u} zPaD(ZO8~sxD}&zizp_O9ZQN`C!%8VAvG3yET$Wco);}V%aVLCfU3K+3F;mBG4%3L%e zKhZ(iPGa&|gk+q|ekT9G&B<6kkhcJ(vtZXZNCC*Uk%!Nre#+QxMgb8w}l(h$0*5*E#}J= z(R0Q^fJ%S8CvKK@^ci<0FB1to9eJnCcuDg4 zhIFUdhot{-^A|aG?HwpOm-%4N2aA(=l*HF{cJcm_*o;Jq;;LGJ7754GBvqJmX(}J! zI4;`O>GDSbxlzOrU!2wmkLEQxh()54{AEyZn4H>4mZk^RW5vi})yJ&fciJmQ$`PMMf>#Z2 zmOt7`MA(Qdfw`$r_8mTAJIMCxOQT7|fRV1zKr}d&2acaZAaUR{7D|3uqSyg1aZ|0k z9ZX)`s90@+}J2zrP~hKT-0IilG@Mmb|JdbuqWsTwZ{j13$)A0v*=C2E+$)Lv!( zclw>Bp zXJl!-yYX-FmSH(Lid-5{BF%HAgZu&ZRvYFJKJEN|irwM4tK-%D$OxbpwC!&}e+GcB z{yy7uonW9w6wWZlp?Q%Z!fZ`D*V$Iw@VJPIG^KuPlpp@y6|$~-1RL3!ZnUrX8)(Zv zRG}K68IiWU)$zFw^Pt4#@^~a^Bg?gNe>I`jBy;UOEVZ>#4eQwcPGvc}2*C#Q>R$2h zIB$51W{P9+Y1!2$l0~>`2@y*wPVsHsHWI$xyc`tH#B-P_{Uno1Ma@kHzBf z-qq0!I-);YWl$h2JB8z*w+<4e5T_xkYM^F*GqT3zuiVHWEUEkDXzs9m*E?XdYvs zm00tmxV?^fK6wKuZ6Ub`$X@jJUldI`LFpelceb}jL+50@*HF@t%Q9i&3hzGSsC>wy z*u4D6f+;*9qMdt5_4rMRveG3Rl26s}7yo|F>Vl@?9k13l7PnekU=r8K#_A|(Tdo|6 zp~UicLb(@ECc&9=bq%PNnXnmJnqstTtF;XoJ8_mfpW zJ9|r8edv%~L=aZbA>_tM8X630Jd1K_i<@ zpcZ;8E)qFZ8rCEZm35eMkj0>)zG;GR$p#i<)i%sQ%H1IPElElrQ6m{XR_%gWlSH~5 z-lFJ5Y7v$x2ZAMk{mDP`5+EI-P1!DM)sZBo#`%QI3>`zus3B^Orubmb_V1wQPgDRJ zWMYGzkOJoOkdVvX!zB`y;dk(mwfF_2p{-%Jm<jlQj z7m3LNr*dG?_4F#ZBBibpvRc@RiJ?U|9>}k`?f<6*hcN}WMLR$fT9!Hr1H2x0&Z9tO0-+{j35b`S* z5{5dtegZFr!+Uf*^b-${KT5udq}xVe2+3SCH2j%^%`%g4x-QEAK=?V^B7G}PSwpns_N?l(>8)FCUcteti z)pDI_IhTfs3ql#Hg-@Z7m`Lj-=O@fI6J9U4Tol|9Z-2R9+R|r*xEF)0ShbN*5FfA- z52J%O_EU@$dhO3_xm+amp{+4!rRj=rG68CI>W8|W2&1F^#rPRg&-NIBNYp=4)7`pX zzNZ!WlZ>+o$0phoV*EJx`~ZR-CBSG3^Xfwfa@e{z3kM7b#z)}#9#W|k`b#AkR$6q3 zj1(7Mcp)xY;X|$eNH9bJi1hjdD9TJZ(LoczL8NCU)~O4#g5udCzaeijOdqmgEvX{E z`cTX`X>vSI!ImFpan}!O@L@nz$<0QC!l<}Z$ihTiG>Otwy|00b)~9jiiUQJU6Q*T| zs1?JMZaL(mC?i~?D~pC~?6=Eav9>?<1wJxTMed0xi%&#E+TO9SFLab`(?5l}#0c_|%JfL5D0B764Je*3HhCmY%kR-q z)@Y=0&z1qy8Wu{niVKT1q*Ff1JcDoEpG5;{OqmS(4(vs9t_(}jpo1Ku4Xj$bTI5h9 zzreR$<)be>E3J-d*pkqYA{n9#=WA1h2(eHmP@qH#LcdS3&z=vb!m%*Xgj#gayJ3GT z0-Y5{WTVv`e+-!Ybs2;e|CCK+VQ&KiGrX{5Gu0kE2N9vq4O;<<3Jjo<$lp0@Z9u z)_JCaSHetNkoW>IK8oCXtLF zd5*S8sR_55q;0E17)g4dgxsh@CwUYLn1HSb=~`<`61I+zxHf%bQqR)q1`+8L#X~wD zE??3)F6|?eGf{*dITy=aOb^n<0@(aGt{Wc5 z;v&Q0Y98O+mKB+`XAKpHMh+nZ6@_dLhN6mi;!HLRXyh&v;H_6Qu(((c!}cUgBp{UI zOwl1B9LA(swG;aO=K3LwPSe_jdpqMrRgEHk9q?44Hakwt4`0;!{6spZaWg2AOv)1|) z!;t_yK^Q}38~Xs!FB1logs3f66g_W!4_KkScwgIL9xuI6+zAipm=v__tCkTimYD>K zMiNazU)`bG@9zIFp9w#7Wg8~7z^WyZwfvXbW!mV*$Py|kd8C96b0vlhC*dy;qeB}5 z3`35hb4`luAzMxQC?v!DqGv}LY9iH9ONx$>D{gB-2Xh3lL_{_Q*pQ9IQf+ zyu?Q-r(mp>!A)D!@DvR*fsfsz`=NRPidI_GL@t#|B2JgGsgO9`0 zj$o(+isXcywlc!E&~ph4X%kawGU=W}B0u9zTyky-i~7?@r&C8|iezM=tliZGAEjkW zgwG}EHm4pvi0|LD6MgCg`mi61a~wT64nuRGY5{bUiMr4}6|XWgKxuK92;wMn7ajxh z;0@Wj7>s180@?o7qL*$v(U-3=sOR*6r6u6T(-|MoH0YsDI~GGaC`BYmL}dsP3nt6jZ10{%8EqRjnCH7)RRnY68Y$K`jygd?aIv&nP+O5!l2&i;?cF z^%jY5Nky>)#VE!)S}sY96_&e5{EQ+bVl3)}yrc22qg>PJb)L|l##hG+DS3a4zlnsp zEp%(wg+?1F^6TqB$TlC$a4h42OeV}|XPiIz!65FtH;-nT%9XlM>WA?sugD`~=x|`- z+gsC^Y*-?)gM0$#%L^i-bs?XReG+LyzifRCmo9J0urv{W+&Zc_myXw}M!5$iYn186 z=o(F=@fSs&L_~`X<~70G0CVF$>J<-lR>9hr&xygh<3B9i@xwVVimeuzY>4F z7@fs;zVr}Q^bVmwS#`Jv1P!EE6=`K2Cac2KD$tc#sD=v^N>GU@lK8DsB3^0DmhszE ztEM9dW(1Vc8WGHqGLc781N}dme=c;D>IFSuS_q0q@#_`QLor~6Yc5`TA$Y}QHaet` zcFb!@O-V=Y_#kijGoH@-p9P1m=2Az}20O`vts|jj=oXV8LM^wIqluG=LsIPhgta*# z21I^+N1u$NKO_2WQm{=BLGfqtyu<}DV|)hNcI!=vs2jnO;#J;uqDL>0zL25rO)86G zmxq?ycTzjlu9J+ISnQyEw9X~Tp&$@)E~1u=@9)7)pUa}`SFjMwDvfbUM|Q7-=PYpvw2dWxwCPqmKGqOf9MaTFAiY}PLF?F~Jr^!)69cR9xg7Tz>kGy{d)g}Qf zW#b{uCY2&JL_S23>Wjp55!u2KP&%=|7YSyw85@_K*NdJ~1d4`m%Ml@dVg5uCpFJml zZ)IQ>@}P{^nq?rUd${QK=Yv*l;tMOlPGGsNS!N#hDSO@KbL}jZcZ31 z;{_Wp!pMuE1KFO%e_QK3N?I(#3uDSp?Ff~V-TmJ_po|}SSxCMlak`Z-1`DqajRhIM3)>CgkVfo6x=P&_M) z^Ny{+VKu!r-C@%Cwe9)I2X;gVMEc4OlF^5xEvK; z#~ClH1R;S;JWJqBnYWiNR&e22C6o#&q|*kB z(9mLL8{2FfuMutEVUlBy`;b zYXtCWR5+GH(E}ltizpe*15-m9u(%iMnbO@SKEykJ?$}$Bc9N1;vd$276Ka>_qB`=) zN6I%5ckS+fF|@&O*lWs%rLUZ zhR`gXfTL40vKA*}FB251Q~EsuZIcVFGi*t=TRbAEHVC6dVsSUw=A_8cYGSBP3&s6N zc^+xeTMF5hvb)W?od{h#!Z|e3==T78*Xe%y4LGAZnB7EQ-qwS#hL}-~pzmYq-LEl+y;%g(8%IV<}m# zgE?Gs<|LLaBEyC%>m>_U8V7;rLh%FG6$kSZ9FFIs95k``0v{jytNoa%2QbJlFiQU= z>NXppf1ykYOTCn!=n2ueRWADx5ExW5a(eFOIRsDwRqq2}v-T2}J<~K@dg7 z*o`fAgXmKqiWAx*D(J)K1ZwMpZWWa2AtD3_Bmpv#u`*UwYOcC<=jqJTp1RlijeDOH z{OA4gnpF5)>JI1Zz0dEre&02H*II`bB~iekVs3<8G0_ih7GcFlP^lqsU8GUuLK|F> zfiq-LvZNx`>QC{5)$eurrx1QsS}J~$%2632u_n)Y!lgc6wran0{#hw8b@bw^tlX>x zIGSuK%h|qFf+Avl_B*rD@P`DtcrrwD5KTZW!nd+wY9>gjKu^UYEuLSWvJ|GHB1Q`l zQt==wyB!NW_iJxyQ4h2TBh=2z? zL;~)S8H5W>IN2UeW#Tac+&W9u?#j=ovdMyf=<8?Y*@1jwMYD*djUMiNrhu(V3cY+; zG?h&zus2^oDr{rVjz+YHEBDDag+X5;LpwdLxaj6Ie9symD<9|Ib#;>h(I@rR6B*B1uKAKvaKLd64^Tk#Do}?}QhBK!&`cMz!sRs%i=&1B3j`ew0(L zp#A=S)7_x0Nt+lq(Fm7%B55wk$aVbM7OeOABlc%9##(Hr`Ed-dYhd0*a|HX{Srrb@ zpVM}GV;`O`!-++u=dD&@ahJ(j@;k-RBE=I^+FGP|B7K^+@1V4Er(n%cr-@1%!OCeQl1m6( z7pOOZS{qKME9ce_+(#_G+w8#V0KmS{Hx*_CEhkxcF*eDe6qFebBX0uEG|U z;2;=r&Q848dt-0BedZ$sQ|Ggc#iC;Kq=*A^HV>sL$WNT}<^D`C`bX_e8*@MGbQ&HE<)EbWc35tz!PZ?0fjC+yXP`9NrUOz;m<>S8Rn|S(k4JoI9WLU&l zwuo%X#ld|(uDQBEls;2CO-Tp2Zv?6vR94tYGALfyY~W*`KMuze-E1f+lcwYf0V9tS zpo$XF5SA)iJl}`!_t5M0&?NFTn)tz&&0~6^$e@_Z3qa%{Rn$%$~-Hpl}>&?YiwkcD3wMe>I-a7xrf&5~AY zoUIaGElUx|w0G8cGq%@a8jr+Ij8xL%OvK~TDtK>sNa6tp3}uU+K4q|Iki2yMHSjs% z;t$56Xr^Apkfvf9DWWsQ#u&>;0<4S`^3|-plVOj@j29yYwpy}F1!D|r!*39g6uy^f z6rpA_N1I2evb`5bJ4c4vONh}Wd2+pMvr&<`ZKWBpGG+a$73#c2Y$= zhH}fSPys6fW$26F2b)6(?n?ts9iii)+1$qB+Bz1iU9`LeGPx|KCMGa9RlrC&jZ`iz zI_8kKEIVRzR#Ivia-Vy>0GnGK9KF!MO2tL!B{5b^;Lx5DcJIm~QOIzjg{UfA?<`5) z6qokB1lAWD2)q=>6whxp@bS+dMbHx+Y=|gLaYV8d2@vT^fjGI6=s9-hCT&?r)KvedYuZyT^=$O0QD}fPX1{)$ zoqs1-e4Q{1VrHE9(Nx+hqd8(U$@dsbOCkg(Tdc+r3KcE>oqCUng$>b&y;C0IOOK$TbZxgXMORm&Iu zOj?uJu_{wisP=@O*}pK3@Nvo@cTlNb#EFFq*u*qCnIWv!U7WA9@ch|zY*#v%8%yKX zD@O6Em(F2+s*FTN%w^GJZQ4iKAhz8WJq*^#Dzj63CW>eE+zxlisW%%q zG+)B4H%wz_xPW3obloN^QG+7Udr}EBD-C2aBS_6niY6A6@Yvcw=${acU8x4K>mq1~ z(m%2m9hYQQwHgy)1~Q>TYSNo7ApOb`oUx9!0V5=P8z(HPKt!&Do1>easC|o^KV@=C zn{?25i`kNv{15VM%Jttgxy^i|#+bo0IY}toU9(B`TRSm;2Mvv}i z$jtnRt7)9U*q%gWAua^cIkUpq@@C4_h?}@C$VpV-Y8Nb9rk_@ga=?!aR;!Pu8J7fj zJb%Mj)apCkCy^}&Q7XpC7rhj8zv#NC_nO)Q%V}1?sRR8s(mQaUn}PHECVan!=g&Ne zorkZ%(A*9J1Oip4`CW&oAT1Q;WEKGK<^4Z!hL&%L0_BeU=1gId%lD zE9Q%kB}i?yQq(IjLo-^EY*;B^)vLFWSo9#MC_JAdx=IjiJAIk;j=46W5p??<*ylC05xV{lwwuoyM7Hj9< z((@6yRlgUH{NgKVs-mafkj=zZ40S!LAB7SxX=s454Ga9+@MI3M$?m`vtS~r zA~o(b@;Rd_NCe`Q5hCeAGO!^IW>n;({4{w)LI>_Q$AIM;wztp2Da37ppnkz9l zhA0QQC)hQlprM0qJH*LT>o|Gh3|_iBk2wNSit9;GpctDPDn)xjphGSy_bDV`Lk)y;4k18ml9Td^= zGVsC_Txv4g>7m_i;0*-ayM|Gun&%uffiUqzRrkze5hz*I^U*!Kj_mX_oRJX(jRhdJ zCKFq-2AE9Wt_yTr&O)P2NKOft0vv~^OdT$>BW2 z-Ul&Wo`^Lm;EPfcj0-)09j(s#fYKu6Rw_x-d~Ms+R&#(0MZ2XmqI{WUJ|U>?YD&Q+i0E(gh*hUVx>ik6}EQ#?bI6 z0xo4snU31*{!`qLk{MLNL0=LaB`B(rKSqtf!TM?sttNHp4$*ac*sirPd1VpBu^#^U z!_VT_Qx`acT*wl&Cc{-JxpWbUM3!CVTD6UOD~-BK7NCzGf6YNmOq5Wh=CV2JiX&Qu ziHa8CMl(^J?(c^PYb|)^H<8)92Vr^xNHv7Ma^z@Hs!OIM3ngY~K6TeaNJPa>5{_3A zZZxHnJI^8B5xmqWBm`=+gP;(=GSY36_3TW1X#Oq)jJNy2dS3?qGzotz*J=g>TFQ zmZ&-C6*izMv)yp)E&J4xl|lZsc;=YN?k0Ghd}x>>xN22;3Zk`Y@ap&0QuUN`NroGmr@&r0+#1mxQc<5J@R< zeWq;l6e$`6pGSA4g0l}kgnj$=Ax$IhxO26n?(p~m0#=$~BFCHZ=upaP%h$0U5wCYV zn%C^1+Z78%T*GR!jqSxIPM?Cb``SFg`kg zm)~{;Mn}rX=d;LWlSp&RuQWHBoM`uQXAI(DLM zt2-h9;t%3b$4zy8lC4mptp#IR(Y{F}4rs1xw5kQK3WKDX8K=%F364{CbW$(!+55}! zBD4jvp6qN}>?3OM`*#H;+K)(o1UnX_*V$B0i(^G?^{GN)7-5ITih8;%$6=BWjj*RUEHc-@sT6&TOI7)y-U>a@`wV_aa-^jzA|bEY_0POx<@p0g4ViFg3=dn4_CR*vTX8){yi=_!DKMZt03HL2`eDMB7R% z4r(!&l%XZ1?#12@Bx}ignD^`GkhUe`m0DJ^g+HIVGTp@tRyB@_3cW<^pBMG{cY>v# zh)|JLiCt8g>7yvNj(1Vg8`U0IF+8zx2K@Ror(MRUfl$UTZMLYTkM%WVEQhtB6=c>1 zqJDpW{IFkx+p*DjoYXc3;&Dk83yNpV?E-$aPD;Nk8`vgODz2yH9$9Xgu?*C+$ezy4 z5`qotSr{NpOCBNt5%v6IKqLXDn4mhY)PO)vpVJ8%8l@+u?r{g^L>7)y0JdvrUs%TR zho8h%R~QR#dT0Z>k8jd~mB+9u0cI}>% z)9@@SkqO`wPZR^@*&U_kv=S86Ocb~4;QT@lNuK;iL~sx7P8W@fb+j(lu-;ohI_Dyj zr*c1X{|S7lx+RTljtJptctMC}w~b1phLO=ZjEs(=Tr41y&u~nU8^flO0u(diI22DSlV9Vuo}cXt4%ONJygLC%U%$Nl)ekfjthJGLmkw+P>TpW{V-{=?)d5 zMh}h9BukBeiaOO~xf=^7MM(T_=X;aH=E5wML#zAPH5G(6U{84eQ_1Tkr$LMtx2hwuJW3nX9ApO#6(s=3o z>t&?naf0RlU=so&W)o8mm#52QlJk1WnB=#dq=DGy1dt@3yID zCJov~VkBl_RS_tWFajHWj)-+B%}E_CPzIz-Q)!Jmz;)4qN1a+0cUJC|6m=`+V@^t+ z9MidM=MbKwI_3ajhTK)@0@5>*b(l&b$dfZSp_;JpseYm1@uYIqV8v&A@0 zJ|t`{0uE(fn{Ct=*YN1QPvhEa_hV#i1POM>$pV#h7g;hWfLX;D<@fa3go9Sg!I`ry z&OAHt;q^M`);n-oA#&>>R(tDc1{-iP)a#HeJVL7sPXZLpYmH$HGL6NU7r?{#ba04o|>I8;lIm`73eIzJ@tp@P9 zWjM_g&TkB1;(I)lcdW~5Dz&#_Da{NWi8chpCKzr>x>32dyJnvSAwG%&8*|CzmCX6D zKTRxB88K8<)IA={j7r{%_53^G@>^_Tly(X1DmDcq3{x6yWDHIMqF7G3@_GZJseS`E zR{YL-ErW(EX){71z|pR)8K{A6rjDgql~HGF)Tm{q9zZ?2xKKnqVvGn){*9<<(?r6= zH>J?&_-Zsxq%CLLZ&nX%eMl;+^G;=uB+D*OGf*h8p}e&K0sWjW0=Xi)(LAcw>mqbJ zJkpaJz4Ad92cN?2+P+nDhzS(^5DvxBT5WVUt2pxDvnUmEICN+qgOkWY3yYCmQ0hd@ z)|bpaONtHw8og$HwS&hVe4gnn%~l7Kvy-^y2j-Dm9mm=|C$UstK|S1rmukZy3y%gx zIn=yDByRXRR29>6;f4-|r*{cZ%o=VL>xF8578dF#gS!9u|tD8 z9vVq&N8>_$4-t(wDzJ+fe+n1})PF{-PV0;q#bQ7*^06Wa?!aBh0^2<#X%;70gsL?c zO@gED+1ZS=5K|0!G<=?{Lmmgf2U;F%K6Z3ytj*S-D4My_+!m+Pfmf^J=+mdLaC!r; zc=`3*j!PsbgayZRABttlPSfIh0gfWhn8ez}Dvmw;D6**zyX(VKW7zfbtC8>Q#q#H$ z$8u!_HGdP`M1x7-NK@4fx&G2!Cu@;FkvN1%p*%f{!mzLuvw5m}PI3bXZUm9ZFlUix zz0mW~|9SzORvlqj6W5pSy&BaT(PY2gymn{9j$IhWkNm<2auaKP*lLoBaU_#Bvwv-b%?hvBI2)(j$e;USMg3GVoph1+Fv>it z{V$z=LrW5&+LfOb$3oL+`Xh6?j3~bSs>Dr?j}kA45~!n@Ed6)Y6+CoOTzcOFeOuLDd3!C`**N)-fz8PF|aE~>xNzz%^GL%^q0&0rqQRf@7 z9#ctpwI=-aMTCBp#}j}WJB&TL9 zB$=?GMOL2oUaqI;P$cITh9Qog0sid)7jJ*(OE7ZTLM$Gx7TBWB$a52gqG;Gg{H zRXE8w*A~LrGl49pM$>+@lJ9S(Vl!Vao&V_hcfytbELK_9{tmL!`{Nxd_B)8BV{f;D zNo_91srS0TFgjpLqHBK(|2Q4UigVg=m%h@u0cBBrpCK04iMksx?HZY$X7y+6vl|A} zGL(59Un~0%1ho``=bG#`bM3OM8lje8deWY9yCj#Gf{jj+y4~cE2&pMUhe467K+%vR z`k$tZawgj6j4fOO#Wt#IHQaaKaWtF28((=fk{qwI=q#LtrlgPT(I{PL1&ZD3HoWx< zaL|F{cM-U4xKnc|m2N@h{^M9{Y@_Pd(F|+or6{9L&z*%Y`j`nXmpar04zl@C6oyBU z8_sYw3wPVj5+#QkL5S?L4T`+C)EUQX0Nysj9yQ!0Ymw+dvS*|PiXz)6z)-|qNnxld zd?GV1{^sE9LWsMc?BVub*^AOdL&O53xfCtF8Y1;Z4=BNl?TIaS>Q5pZWNBSXR<*G? zkV$4WOztyStQ%iC|0c>2uDneZtQb8NJ^yCqVy(YaWLU4Ke4mC@IkL3xa@MX#T8!Cd zK7ZfO6N(FrO2CNv?Y?lMMVE+5p7JF5S*@g=U3O}WSPQx$Zxn*68)sE85KT1Tx zBg<--66)8~+~KH)L_0ttM^!7b)|ibJX(=*wP*xi;3J@(vl+95Fmqq~)C=&lp#K%O3 z9?@Q2&L&VmNfstkPzV%za5^nCHX8WmBd74x@lE{94}Ay9Wg>VdxHGnJp(Q9XfmqZ(1E@WA5*y7Ls(uqqzXF#g;}NYWkwK71D+W3P zyB{P_C`}+&E+bdYAW!ZycgCT3qNtb7(f}-uDH7K)!MH}mZTNLK$rgfoOBhh3T$o@k zUFnEeNKjO};fz-=WUt?Oy9>a!HJ2^Uer5sqQhHL;wf zD8W|8>)G8mgncc$@=R!Ow!Yz~upUL<@bSh0ecH|ts^uPjs@>SR1 zz^+k_$x$3rRfJGA3s<-(iVzdIDbAUMTdM=x%Wy&>I=7GrJovNo2sieievAfJHBs|h zXa*H{X(FBrP^1w6;`u1KL9TETh4KWlEm=M98d+) z#L@H+v^&hX)D=H+?RXh9*-*$1tq^qvQsBZZ(|FbkvCxZf4o)L6Bj#5}vyuu5)nDSS zYYa7GNF?5^Yf{8_D(<6Yj7;Qg(Fsw^5hhDb9UrxhqKbtoLPUoeo+SW>hP`v$b2M$F5@CE~*)lR!9NY|{ z(}G)T!hv10c++?9;~1u(%*cW842H(F=PY!J2<9mU#h|*1WJp=?4%b_| zW4nRXX;jZ&K&9PAE$E;XRyol^U3nN3L8NV^q!SE``Qd4#Daley%Z}S*AyRpt9BWFT zNNvo>#b@vmpa`!5hd_~t+3gMzROP~PM-zl&`%qckCif&13j>e@9o8E(qM!t4|0JB9 z+p08_9C3<%F zCH$*M=|V(y`#*s!`&HF4{~MowCtUpnW1bD5E%mLT(l(YVvNZ=E)o6LN(0w+G#>!x8 z7el`>%E_{R9l3_txF|#`w2Ba`<(_Mxv}r&Vutq@K<~{0%l)-Qvo3m5#F$=(gaczXe z9#z4uNaomLCQv(QIS6V=c-t+GtM#falu8*SvlJ5(Kqt-`{XZA=3Z5dlQe4JIR2Es8 z!JA@^kSULpDu@#@f~y#M!cwG}#V1Z~;PdyLMAOUS*WY-Ut4zp6C5w@*Mka4d-Xepy z!}OOhEkMz)t|CF8$kw8dpm+e@*%T_(HPm`8T45LMunv!~hTUfxR+W+m(gF8<3=+r< zPa{L1SW0u(?>zAmnY1lxpUG0Bj@$ff3KTmYoM4-KB67&U^$>JiQBFwDX#-(I?MlRq zB%$OU1vxBkvi$Gj6;Ju1AkW87LE2H=%)HKI13YRnSPLR$(x zb}jRM`Q4@SFWDMvzi2?wat-a+TExZVGh`D2b?5ru}11FCi} zbY{h_7d6jgQxM{Awu!|U%^ZEb5L=-GB3v2)^4i@uXs>2v_qjlFV3z)za-DUfLR~4N zF08y9@maRl0{qDzJc@7JcLK#y8Z#4F?3^6I#7F@n#U!$niOr>v%q5Y}CNP}IqD)N{ zXlyA}iUa{t6oX48k>$B44%Z{6Xy`n3jY)>&cq2s<{X!3c*MrmTz;Cs2{(KEzy6*%Y zIMKqN{mhLRDvLSI0u*TssRT%lFFIn9AAMy~=+ztWD#CqEz~vG{r?&&GjSMQC8X9hh zZrDK=Ex1esci45N&ftOuLmA&BlE@%a9!IWRK%Oi`nP_29%p|#87|njB=C?fGg;i$1UFq7iFG{$R(v``l=Qh&nta zm*T~C{+)2`m&Fom@KKhUZ3RV_C9a_qm7q`a$PE%r3FJN0W^k~-KP9ZMA-}P&DL}`% zd;B$)uxJBH38Vy29i!34*$cF6(h@6^DG|zpvhl1CfNdFC0;lj#B#kUvB3Abwu?#G_ z&dLQBzxUgZ;Omc_Lf0ea9FeSrU#DC(`e;7QP08kPXwPo=ZV#bNFyLN> zv*S~!G;3I^ZX=ZpQOaacF6J?}V-i|$xLg*zWQi7y?g z;axv`7>9QcBbi8vCJ)pAf`LesgK}qY35vv>bQ?AFDoaR&JtQ0g+b)7y8O_EJ8a%c6D?@ca-PRp8;H75v>DPh+LxVXRoj z>`)o+d(Uf8mcf23aij060S-8zkx9?&seL*51ib65EpK1}TjpO})PO#DJJ!R8d7s=OS)uj9L(X z4#VSn0RXZw(&{dwHq(fLpOunYJ|2gV9!#NZOJ|#Fj54&b|V7uKy ztJA^7)n$~jDNIbwVE<+NklR?r4I^y~Q(VpoF_ceYes>N-lUY3Q%msY@v31;fcpg7_ z%N&y2frqlt4wB@uGF3=+_NMRCNg$g+uUSQ>vV>$v;|N?XJ8W0-XtlE82NG@g+fYzVm8ZjVu+(iBMHcbCgL`^&;+OqifwY2 zm*C{YY7szCWhA6`y-DtH(=C@YTMHPcZ#d1Iz#Gc+Ll5CpQWT%FGHowb&Hx3gIT>n${^6~ zkW_;SD-bU4t-F3JeaK~CbneORlbSB(j;Pz(Afhpl1u||0OBl7~I|hJC0+rs@aIJkX z8Bhtt-OBAz&=EkjSzqEo~Lo-7nD-;gc0fnP-P)!6e`XBJ)fZt`laFMgf`P5b{GgPO{{QqsXno zL^TV!(L~GPBn#b}%JHaNvF#%0E^*}`uPs?{K3R`GSKkB_m-SMpwga47uH)=#8;_md z#EG+2tZsMEK^o=qFm{fOU_6tD?*~|^ZsOe529H1e`PaM(uln&>?7X(epI;ptdmsC) z3+p$M%&&?4>ewjvf@N7zu5_M8s#7a1XjR)P%^Gp1W7W7y2`dBj()o{B_2JsP6n{ku zj>uD*mRNCpXOU0&(8tD^O5szkiO_0;`;rMfvbpsJt(9tL(ySWhqq^}#xPb!VR6Vc4 z8j&%S@Mq&szq+)fRJlJYClMoNiU6Yy0%LV-g90CU)t{0Sz(>F(a`alV zFiYhj_W@g(M-w7rQvoOXjPYxLJ!G++Wj}MxmiZbpM>iq(e@kg&|#Vp zS&1~Xiic!TqJ%>NwDkmvMWl;F$5Eh|VNgtGq@`$sVls(<+lEoMpDsdg4Pjb!bPx?5 zPM&Sz!Q?50Io;v@)HgU#UeLuXwx8f8vWUA!|QaBOr{v1a!wL1 z%^C@PwxFm1tLOWuwOd?MoXO?j$GP$<|N`MYCWF@)wt|faZD*0QrN^h^!w;qQaHbrfoaRN{!DfT(SF9*_wnnV zJJrRzf9p}Kx5?TIIe|iMBmo=6&bX%7m4lT$AB}Dce%EDS%4Tzb=VJf#EUuj0jj?hG zDaS#>?O?55L#^J#)921$VS5{U_RVAGp4})`>Ns-zD74uN7iNpVGL zmO+_y!BGsUZCIm;WU|8aC9Z1@Lp*<>i#Pt^z1V1W(dl$~H*)zLMu&$v+;G|WBqmF= zZq%2D8dHdvUXpq{%Fg0RCxK@c7BD`O!N)%JI;7HS_KC$;v}MdL8;QtXpOX@i4kJq@ z3>8(%mVgeBu|Am{a1I8ECf~O&J|Cqi>St4wjc=#(AFThDSOd9W+Op!GO`I;icw)h$ zoTwMtgvdr(E<_}C5>G_)?JcIh9u;Xj3dS~zG?36{q~egtF{So{*w3z>NmbNX3u5?= zDyCynH}=Ep};vgpS zWi&3F#gWB}Jdfn2=`>z(U|g>Z_wfUPB2j95eCBu!Z@qaJzWX3mwg^yUS`UFES&FK+ zV#;AqJhtNEbN8J@!Xby48Z?>iCY(f%OBT68hFo=`(hwH1l}Ia^LIPO? zeir#s8Re4bj-y7QQpQ;guA;C4fg*=7=)G=$u+b8rNHbiex_jVMhi?!B)f6F|y zOdzp2miaD0Q@f;UN3@qJGi~a1d=JZ+mAkECe-R#`+*FhJvCTIHimJPdi8*S@i*l2# zXVOxud>|vjCPpY@gSyGA<)h0*lJQYxPfBsKLIP^Z`1KZ2a%R#7U-q&T`C7d2iEq~N zo4TlICNu2-3 z7S1jAupphm+r(5Uo*yiAgDn^id^R;eW@(8obZ=R62**X35wEv4kTxihjH}+ zgsmnL&bA=1a}i?_e|yg+KK!*sY^s~5*X*JxOyZ3o-=5sQ;wEL}X6RCxh^S;>JjW7&hvwcbPFZ4DOuCPUp}yc+i%{Dw_HDsgakrj-*6T>MZhTA zh!LntQ2guzr;ubgqB`t0uD|vW@;TxZl7&cp5{b$p*M)B<2-~7j4YfbZpi%X>k7B7v zvsr}uOoVNAov9f_D$M}xOJX`L9<>b%TQvYxz39y@@Rq+kf~U^anCD1TrCd6L+2IlF zot#FIVu;j-lGy<^g*)yCNNO)ayy+LOz)Nl!5q3q~HMYz=+u{=sWF_Vz-^c%EU0E9# zCa$Qj8|fxt%US=O&6C=}qf6(X#gCJF8^5d4ztIzGarw-$O0B7nOvIo!Ak&wJq1Tzn zal|FC@h=v~u;6nbk5XL6%52BI(-)}1(;qa3y%EvZWOLieA0S}b?NEeQbzrRbMQXHd zK{QML+>t7N^W6`i#o1S~5JQe5`c5c7k*q`t*ts49BgJf+REkFyWxI(32QEi4)51T0 z^wr$rkpF8Z@XS9paq)Z`HP6Le&mYCvZWmL#cVdjjdDd!p`r<{Nf6{PWxLyyh+Ly;o zJBOq(qi&ZEesd}JLT zQzI#S-!0c5lNQ8pk)Ys6B6sqkWQVZQL-;&mlp5z|(P=p-50z0WQparqLuDmOV5F=& zjW$&uoF?wkXwyaoiBwI5fkNQuLKAOz|AQ!&#u0dJjExLq|E@h4b3L0D<3#yHn&ONKY#p9F~pcz3^T|jK|m(tc! zl|+K*GWM!QQc0J^ESdaH7xBkQ=w!Ah@S#6>2LE>VIrv1jro;+SY6uv34!scNWauDC z@kAa-<)i6&7%CLGMc3hLUV;l-r||jD{3!Km)zqPtX9GO(iEV7OTlnOW$B>+w#KhtH%QT=+!e!2xoVltWzZM)ba-Y+cy{Svp4U=FTHFJ z(ut6*Md3atkRsAFbra)8vowDyg*#8S@xia2z|^pVD`tzhX5TR8ca*gS%H?>xUi9U$ zTS{ME;KTF8z^Gowf#(-7JUoOVwG5*Pelp3T_=#z%$EL2`1hn+YeFDV*eq$4fR6{5G zKk(_3_~2L0VAsSB45tF@*mnTanG%w$7F7px`gis~89(=X*C3G; z^M#C;WLts)YE99DytZ`N6i-5jf0)N(Wvlr|Q`@X8O$CyAB(FMX+HF>VDSbb_tp%c1 z!w2JqDbRiKo_{CUe6OG`=>?4*+Bg@_rUYn)p;nJE)63Q(s>;oHy?oQCW{kq8%78{< zd@=LUu3_#g35l1I#4x$f?(6e^l<7H$s-tWQ)8?r^_b5Nlp!-_)+TQT-%kQ`w3zZ&c zT`7(zk}G6ji#BOYdm%uiwu3Z=*rjF)9`=pRpiv^sU|u^ zV#tLy$fSVW28~XZP&dNkDWS+FFy4cgK)ju#azzATdtqsT4-9n zOd`pE@lTH~;Gv6k{Nzg~@vAT2i?oa-a+4gg7P+MuHQuJCvw)LHjv<90Xkg*=P?FFYA#DX6jcR_XatdB zo+Krc7!>KDiMZV*3wj++zKJkHJsDGY#|Iw6S07$RIiKfjb+J&um6LNA&Suc+v@ul7 z@pw~8{G=(-B?qYqIqh#!N1!+|mBl;We?9UgHA&2ZtcdGj%XZvmlqHCEqZHd_h&blT zKQis{G?Lqi(U^ClFJbFC*p)CV3Ajxbt80j7Zy{WmE9k=kVIS_=Fa z#9pW@P+m;yDn;y8vvnK!Pl(!T;sCByn)s^+m)N!ck;7%Y^LyrzC3iWMWEYwMn|O;nN|~%$ zN+#!0_}X#-Ppzks3DWaf{_U^R@Llp#J!T1yE4?G4OMJ8)tDtb)wo*`I|1Uyh!si>4kem6=@V@t zs~*nI*JzO)B$$!&Xn(eE^Yb5WzE9g;QN^aP(!?*KAfq&v**630019Zht75#cb|G5<(VmrX0w=VH*opvJj(eJ z+++fu`1(Cqs&DhqdB^ebx&vj*6q6`s5?liJrDry=)NC%=05RH%0BuLO`^>rP+gG=xTzROr)}$K;b@+4%JJC$oHz) zHRPjIDj=K7AWa>C*nK7oF~P&CQfZNB;qK)0AN5RZhuonji5?c4S^UYpRL0jryH?{0 zmCL3kks`&@?&93W8hW0G$?^!&`5e3;z^+mWtJ|CS>d|L8p1Y$sgqK}@5JRMNSPn#N zZFH)P|M;G(P$((SK^Yy zYFm{kyj`)fCZ)r4%+YeoRaYFXP3_)=nqY0mN0qop0o3jLEuhpgYpVKn%*Uc^*zPo6 zl|QnvDCrK}W`K9T?aO%XVwLijpq8j@mMJQ#RAZNxUlZWxfBdJIl2d8a@aZpp z9>4mwpGUph!BVqIMS8i=Cl^hfW;F`BoDnJEkz)adGw77$!%?;kzC(AEPT6Ue6=G`c?AQ1ogfEA|an}*)Uma?gpHLp%DE8~iUn?u zMl>4EJZFS;NG>!_@#D-l!DtAgB|7Z@?)D-Y-2}dPs)V&(iKy7fI1W0!4qELFD}i>q zg<8GNwdJ*H72C}kf}V?g6B9VNa~>am=su3|?id=ut@{t6NHx}Kh?NuKmN)LhO|PGh z4QrDEV!JbT6%+s7xD|$|X1$LEUA?AX@hclqqMrFNX057%2R$}J%fE`9TOlI3Nh+MC zLXa=E^Y4V4e=Jc@W{2cH*rvBKyT4Vf?;uKx28DR+Pzs9yikRzaRRBb2G|HT}y89}8 z)#akfK7X}%893=omR5*VAbK8Bk~Edh;x)H^55|inY*n`LsXOn$PrUYrksB?cE1N;I zTPv~8~ z1&3^b#if4^CBA!j%XMRT^EG8;k_1W#LEffkkm77D2QdHy_{VCLe150i`ZCN;-m1cONjZ~8y4!M+=YO^!s%jX@_ZddBM%c9`8w&Sq>xMO043Qd~!)ocS6S z{Z)ye4%ElWT5al+;^YY>O*g-E{uM9U2{%6=LT%OoxAsmqk>S596eDw7x|w2QqP^M# z9*Ha3*EP*rjpj4=vhNzP{S1yo9xR4_8ez=`>C>;$?6Sju(YxA_XX!*J!`O1?6(~m6 z&Gz@DewG8GjJ6ij;A~)g>Y)w1>s@!CN$w=mQREm?NyFiRc{H$;XeJyk3otr5hOtr! zm(T5H%jlkmAH>+iByPItW~58Q=ysY2I~~k)Jv@E!Jf7NE#@O@@jJh6XL*Ve`huHpX zH<~C-jpNIYK8zzLkFo1ce8o=BV_Qg+Bnv^? zX35GGXDlqF;ZSvp2s{eIN9H3$mQ7G`d@o=t)bDv{ce-e|x~Ml=*jU*{W?~N}=I4BI6xzEC4}L)9V$UL3fEPgLOXoideonacC(Ng}B5_9j zsPwRgHq$Q5?5Jsj74dQvLtIk;;tVMxI`OEa9k+|Xs^#w5n;mf_B3VLZE(&-yPO|lT z%bga#6Mjx5gHr4|RvA?YU;Tg2;{W=yuc2*$qRd#xx?2H? zDXuV~%&dod9+z+;bM@qfj?Zn^C?>^*P@?M4kjr;X{hkIx=?1j%v^ zBdILPu7}HKc3@_D2fWZhr`5#h)Fi(2&4=*h>E{`s+OE&k9F7;NK}k*s*Yj|2D8TRB zHizjF^kWrUJH=EaOyM~wW^@clWCbq;PL~9@Zqn15rsk?vxPF|hV$?{9%g4p z@V58ghTzXYk>9E!OXKTPKBB^51yvysCi_kDEb0ktuY6GaD z3|%_^20>V6!>vD+!7~-ZuivjMtuK6te{;!i?;$e(#~HkxrygE|q|68uvbN1dU!BuX)9*(aMvn7-Dg4 z3FnU=$40e={bLizQ77(97JGN^!Q|`?w#Yio7RIM0@o)Ei9VZsfBcQA{ciwT4Ol8El z0k%#(wmyIJwmE$F40WY(Bq);mEG$W;c-%Hdi9a)?48!AMaP84yLiGXW#f zaN0c|jaCnp?G9R9A2V0ZqdYyqpqQp{rVNT=NEKO(3K)6Bs*L}_cX-_Mr|wvX7o<7C zlg?(5%+gF1hhw*7ag!VfgHhC&6CddO@ssGbsJo6B<3b;5`m)RL_g}sPqs1aF-!X;X zc;EN&-0gfJiSe17@rq;_t9Daumq5oCrD~Q83}rD!JvE!tDCK&9I2xZlRxl7z*amFH zcgj;yCW7V8X`-c_M|km_e<$4jb5@kv*^MPN6#m%dl9p9&;3-bCiTkBm2xOB7EhHu} zEU{1Ky&_&_JT(^i*|@WE+Z8|#;(gf)Sy^!s!EASf53;$fiJO zZhEXz=tJ*)2%o+48MxekKv*wYOUa3O9NK4K3^86P;iqoA6^&j8#L}Len!-o!{5*E< z--~PK_G3E?P)Mioz|&9Q-0})W%0syJzyVyhYbVY4TUeJl6d=dWB9Ha>Yo@QP4Pocwg}J`m?V-Xs^&o$ z;Yyi`)n!Hz#qp>Ct{kI4E&qL=tkD3yZisf9z5;YZA7ck+kRKaDrj+L<3>-tGBuhHM zE;NH8br~n}xK6Yr;MRQn^+%5*ksrp)wZF6(#eF7sfG8gQeOYW%Vo7 z7mX&`W}F5+wOLUxv`MMbtC26%R+&hNTYdi3^VwNsC7iKnwt6m!@*+E}YM&L0HC6~M zh1;yb3w>vsur?waZERsDufw1I=DqmhH;!=?2lo&p&|o8x%`Q$}aGeGbqr(uF%}(P- zuDTIh)a)Rc#Qxp$c>HcJ4fDHk%T+JIGpEmB ztJlJ12M^-psZ*F78Rd@L|MHbPP;WE<-^EL=*p2B_0jEwaqS9$IXOfnRo+FnC@y0`C z+&Y&+mWEwXa)ryCW!zCFh*ZUgo>{`C69oZ;E@Mz+!ZwXc;AY|MI=j69J(q~vRNn1# zHBWwK7|CKz#1qL~=fsKtMV)=7-io;llIaXj5u`l5+XVjVAC98Z4RHCvgAAx#S1rd7 zi07cjvOcy0mmeb2Y~$j_D!Nls7~ZTRtX7fE7tkmaaOXGg$7HFD+pgb--~5yBMS=zn zN*RpSu80y$VRXsvOp%DAW%)@SVkGX~7YB^?X0(G&h6EJ#Uit0T|v z{Pyc`+xPCnxhFUA#NB6c{OBT9Rw~@Lu^YHdulcT-6n=1j4wFU7z*4V40g61ITGtR8 z(}%L@${pcYA^{qH@sWWI=AGLOIe^cif_I~W-sXNx+M&WbWbie++t#RPLgH+vlf6i(RM z#CExa62&VotZ>)yp^0%kv$=(5PoKag}6UW;OY4YL1#JO55l z`D?C#6m4Qu`y4CLpf*DBpVemTPh~1Mv;h~{ZR>|vT*Uk(`UhP;$Y5>Ev)2PSMbXG5PcnoR>wfZ z?TDD3V0YDJcNyro0lKb>PRB#b^-%8xSZo3psxDUBKH6T0m+hIxm190ys9F%l^DZE?pZ|L^O@o#K$I$AGCcH(zR0qq_1W&V;Z_?6 z8Z~T%z=64)sI9GW-^!W!d3@rV52D*{VX~0NJAd<)xcL=(bP#)x-1UpUIa{^?60r~? zO;juaRRYV4sk}C6$5FpZxxpg2$#3H-N@{RgDU(~JW=g&W%eTAMC5&epMb zVjZjJs;DlmAsy7QU3XDwcR8jgMyh(~1wOig$Jt)4XZAz%e9Hb(ZFdNls&k~}NUpTU zq9Eo-vm!teyM`P1uRm7CS01Th_v|FD*b9^=3h=``T8#oaZVI_V3p3Lm(tZMAC4<$) zG2H!Z9VfQhNM)$3P>fhm?mNSajA=H!9yS|w%+d(eOcKpZ3VUZ}v9+|!+4tg}UHHhC z?!ZXCfc+Drc<%>akC|OXsr35Kg$6nn155B!_E?Tw(Bc&}0Tzu{-Xa#z zkGO6EOe3VZ*s+axcaclIIM2TmRR2~^^D`!tSPGkLtFS4?6t(9?NDxxG%+OL|E~rL5 zYgD7YtZhhJrkU1|Rv1wsuND9^Z&%FSRf;v{%If*nN?0t?5B*JZSmlK+a23C?D@~QC zS;Avy+@&e0*3*V{bzJ`OFCN7|fBYe|Ii^T)HW5SOr{at*Rg4f&2s>If z!LbV$@gv`PBjzV2(M=}MC3i2ALq46sX1#*)=qSd9Mp5@2ENpKe$Y(J+HGwn7o@ege z!p0K*^^0GC*Xgp;=L&G@l_wbD;9>;j0fSa$~k9Yss_am8( z(Yxdt#lc64i_nECnIeV2K4VNKg~|pF96pTGXHO&9_AoX% zj{6>Z0FNJe0&qO!6DfS)13!lAZrWij`Jk|dT0o1*rM5#+l89#GhG^G3G}hZ#U#ek! zt%lXbDwY>EuvKZG+UTH7Zga;)r`O~0p)_?+c#BluEk-c>r)#Tt<82|TGqWhJuOT;D zMmV+u$Yc>#YjAT3WX49pS($DNVQU-re4~snJ`$qZ>EZmwIx3AOriO<s51|}uh;XrL(cdU zpTl@~4*s59NUkj+H8u$hPrym0(OXzVdVUVbQ$>k~u-k&usp2D_3-OuzduX{lGY}~! zg?yNRlS$ymfBI#(=Fl9rmh1TX9mlY|Sw*AKM64<55%{Np5LOUFw z0G5p%sqqypgMSqFw7e~>FE;QSZ~G)JtZj;xVN^(=*nQMsfviLgiek#$i_%`Kt~f=PHT)^4EMX(8bUm?#b5hJ#n361o^0o5Vlg z@i{TOCY{0eea~V1+<*NZZmerUGsYG)N<0=@*T#0#AmF95SY;Ytm2seHaEh31SA;2< zx7~OJ)I$D^5>{wO3S0FelijAGzPk2q#MzFz^e?9K?*!HVp(7Kl+3msewyPRR{YGOM z+M=?qWL!nLadvTxj9Es_Q)S~xYtw?;XknaG(lH}a9JTm!DG)MEJk@I=iqghM7FKyR zI~%Vwu|_l%5|H4p`zl+`lD@798$^{z2)7&JkACU1c<{(6bON7A%nB5F$!Rb>5tL=} zg-+y^SIps0Klo$F71Y3C@yx5|d$|9Ob(~wRVt#BC$y^4lLIHbs?!vkA=ecp}_~;mp zT{we(`Ru3BX?Kta0?dw<@xlM`7EJ9Z2`it^kFflVGZ%|9tEJYaxwZC+$)K&5s2i>g zYYDg<#fs576+m|W~L&N%`c;Wwz0>g8KSYc zfi#6d=fav87t^_sY_GDhgbY}2gih{=--%h%MsURIZHhviuAs=_CW>j?#8}2oL#`2{ z!JIJt2$64WH;NC5j62ecKL6hz$AACuJz`D@#nvSGmvM<>iLy18tQa9a%X@$ScHHuP zJNcjx_ju{)7M_2wf=VaAa^Rxjb}=_Qivv6NFd@0w?eO@{&1Mas`qU?}v~-aV8qs`y z_O0KG+yC>8;=so(<9^Yw`tqr@?k`I-i8cclaj#n^CM*wvU!!Ct04o1_4|40@L@(na z->oAtG6j^&H1HL*lV>n=yi}lglHiNybPfiW|%uS6y* zl#sUfEo(}hi%8ooTLRQ)vUP`A+xX|VRlfobUFq zl?HZ9PGN3*1`Aso=)uMA(J9ouHva8Pci_2ap5bdaL4bX86ZpUX_NOp5Sv0QrfP>rr zIgJ%A6q1Di`jDG<^|_qNca-nbIZqYeCa~`TpZV*@5o|q+`Rpl7W?YPp4x=4qL|_kLa&Epw~dvmhqwLZ29~QH0w%vxt#%4&%0hF(DuMkoGq~=mtFgMcgp+O? z`{w4k$KrH(1ZU5kL%mzWCXIdVbg^@E7{B(%Z@|7QCoJB9@~BK4H8P`IT4Kg4FlQ)A z%ZjwuGz+LKLR~Qv3CwHXSXrJ?HLPP2c0SN{#$^;lyD^b7f9d?QrT8(KXfb_x4Sirh z21f6M30yD~DRW-BLe_DJww%#^l5Myf%8vpu7AUL3hw>dPMxqsyQ8X3_J0|dFHfh}4G_gSK3)!F`TuVdAP$%8i>~W+qRx6db{q=8u8Fzi-8MNFkdR`zZ zE)-~ULsn{yCCmP(se$L=2VedQeCKu7A<^^TyFE0zJtT5@42_JU>G!a-wSjWBi0QF$ zYj#8ehvRi9YdWgT^n&8krxIu%#e1Ugj- zB^9aFtwR|1)-KAdzxJOMor>r*wHEGr@8|H~>5Hg4K9ZRXhDWlP9m`<6;K8q~V|;Q5 zV~1ahog)E8Ht)dlb{B8`vvsVu=mUw0AZi=NU40S`SHRHczieg~Zoc{&E)VomDO8&s zJoMaCxVXFo>ZzMgrZJXI;!SV91+RbWjU3z6YoyCzWBfpEM_Lp%%}=yMQOZiBZ&ZZG zDB)DDr;sMA{567xwnb=}`Mj=Hj8-WvbwoQ<{{YaB+ zENKIQkYdXu(1d^`0mdKL*0(HK(*IrGd(LytbI!f5;%q|#(qA(kOaK4-{(kp&?>WzT z&U4PaKh-*{`I&iqPdntA4lGVIIu^4&z2<%7MB~Yds$qiw)g&s}V-igV?fg%xC1wRdYDJ9D~RyjYLymX~$CY|)bP1Gla% zANra1lxwbAtkwrUiy{f>%4wU@2i#r*{JIQ!{wLQA5mFIo4V=^B%AIrHm&(W9-qC0}=lD|N2n*_y6{DhhP~v7x-?)vsyW*Q(S z&wt?y$ex$a*1Uq1H!a^ovks9+ycIXOg_XQ7sV1j>ehNb8L7<;h)#G%TJbti%ykikC*bHpFdHaI8k@gT#~LCV~cwJA{|^&cha)Ua?|Us^EFMR%o-4qHW-Y64LY0$I+#gL%nT`!kw|L;H)FF}8|`)E zfpOKGWca$y`@b0RWP0*ndN*{YeAphuIw2Dz21Oy;GO*`eMR`BZ^2kW_t zwfd~uVkJj)^{UQTljC~&SWU6ly!OWOp}XE&*1YisfwV4hNxd}8+$b0Zozb!!Id9Uk z4qROQK@%%(-mo#yMwPBG$~r%KotkB;-I>1WXNbAB55t}Jf5`}@r~Wm(l^oY?!HN|$ zVOTh$-WK$@Bb%Mx>n|3su=}BDS^C+*h3zF(dVnV%$ArYxM1FuJ6)^dJ+-nuulG_Zp zp<5I+$q0R2)aBj2lPIz^)e>s+t{-+V4&3mPX(@m3`Nzx0{?RX&Z$9%}dx_M!c68SQ z0k^vUxu$=5%r!H{_I_y9N$W{~tt#E#9WC!dY3IGp&6StGYeWsJ<5y#n&P!fw=INo>rkI z&D8^D>+%1~%1x^lmm8M8P|EYqmebFjDo>w%MY(Y8_mv<0%S+02mwu<5Ja(!4;bddk zx9^Y2SHJqTa{Ts&~zExjpwRl0f?Y~%8w*C+ADzAL~ z^(tfg_EEDpEAWwqZMH|97$H4i8&Av`Y?5qBrbdj%B=T%?p(5J14ag2Nzj){`MWD71 zWSW|E{;SCUCv&HM1zmX*5_N)FC{{wXD4DwbQcth81PW@?&MexfA8-Z(J&qANpHm>GiKJ zzwt|-Eua2>9xmT_=DBkE!o_m2p43x!Pu7ERarD?^QkE`USZ-YTvhuF?{DtzD|K<;r z6)TroPaxx(fePCc$5RthQd@&D<@f@7Yu=8YH);W4bM+IgNN4vor>(Y~4@DaZ$z2HW zSGWI9rl8O@*AXAkLp#oYx@0fMD5%Tpv3xuLE3C@pw zX|tbl0vLieffq(*r{dsuwr!NlEUE;EPkTQojO~-@W}b{s`vg_dBvM`}9}J zq0jtbIeO&D^6ZIIt!J?wIhs2ZYsCF^$q21?|O5&dCe+$^B}C0QhI+T^smys z(NPqlwy&mcP%VpzVFad8sFoRyP5r}EF`!Sj-a6Ust6I&|N+ru3vY%GmT?AnNx5dK(!J?aL*n?%K2SmVuBhdwYYB=d2|ne?p&_j=hlveg%U(RVZ4JE&KdU%F|yv zUjE(350>BF|7dyY%$aib;>G&<5jkN7dZM*|A`5S+CLs|9m zT2!%)z)0@{*r771{fFkcw5}lnxh(A!c}>HufJM76EHDxjYUHc`J9pxA`Hhb}P>!8{ zs=V=gC*}Ip%gWs11?9O@3(DbdUMNp}YhhWsU}<^X4J*nE*Zsxv1K<0#@|wx#%Gqx{ zUq18cX<7ecKVDw(#x=e>t1`rkbLG^r=gX;Yoi4|pIo)RAhF7gDH@s?fS-e~;(qum_ z+sFyqGQVmNNn{LpO4wotu0h{(<5i-7Ep_By<|}A1 zf8PJC?QeSO|MvYu2rDC4sjTQ=YlHBi3nJmlZk$3j%E0b~dp_eKz6DP~Lix*nENxg47z*P$`bvkPCrJe(L-STV7 zUwGS_%BKJJ?PcAYZ*KabNeAKF4c39J2IYw}v|pwDa%cx-cuEz0SxMYCb_7uH>-!o< zURmeksn313Ec^1mDJ!nORLaYil!c3~DP`H>GF`l&Oczed*)x~Q!@qyAeCp83^7c2s zro7|(zFDScA1{x6=}h^`msXUw{^XCB)wk5seo%O$mMyS+6sSldu!0m5E=yDVK~XvP zu+Ha(Q0Ah29ZVVnmorUA86Bm=u&-d^7Th`T>UZtA5bNM0H0Nr(VslPNqE>F>Fpniu`q?CCdtg-hkw-hWzFmamls*DPtL)l8QzD`m-&GFi5yOqW#Y zpcY~-l~d^ogzIOi*S zY8oh!(m-ypNQQ3Q!cz(Vl02K8Wv6%&)^)|kB^Xl^d z$=sR$&`#ctJ!8aVpi@vk6}8-XDwV5OWOkAz$i#{x@yQ+7b{9)@3H{G!{LM7cuLs@pc98RZqKAP za&Y%QE8lbK_sT17T3i+_UtG$vr7d-?n&M=!?CP1;R|qa#RHh5-YyVD`1?Ml6FFtan zeDmn)@`Hc>$I9xpuX4b%TdUz%bF1%P4y80#GD195>(v?r^DhJ!psWO9(;3MYU5dF<&9d(`9+7t2-Yq%b<95FWQwNqx~ zNBWS;PWp9V)u_(X-cyU_BZ8{GHN%|FdDXjoslF3K_X4P*+l^H0ycKZ__Xwr0Mb!!(sg1(js_Q}X3oeKs;ktw zqC-SE%?LH>Sl;lyA1UAS zSKjW$E42u_1+QZOET15Rjm~zP&HI{ivpOf)SkW91LNJJ=Qi(H8bdqm&V@`p`1p!wc zoxg$wvz165BD-8rfRxm2-v3pWLQ}`|^lwh-x4hL+QW6;eS=*w&=!Il|pIOe9y zoT9l8D)S+qCA!p7EO~*FJB$YepT}Rp84`)W#N*AWl06adcf|&`krTD zhznZ_lDucSUUSj(Vwu!^-HVo%jX(Vl%8DCTX>lb!y^lU?bTO2>4NwNtOf#Mkg!Od@ z(}%V6*N?3W?N_D}@i^QHBP3>;;XV?_$yOwmGltf5pVnJgU)DD7|3*e?*qA%>5Xc$n zgV4wbSpwT|W0&}uD|NguY@Aq>c(E8&DP6bfv$xl@8wRpqaRX!ZU*Ty?SY+kJy;>7Jd&>^7t42s2u*CN6T|Zj+V2}9xn@~ zb7k?8MYUJG?NhEps-U=VQa3bSYP)q_yWt(>E&tsnd1D_yf$rf)(&h6)VT%OP3gq^F z9@8P=7rtCF%?OvyGsPUqZmHKhzuU!L_@+_DTeTc$&10CHBfdEaSMp+Eaz^$^#959%z;kz&(Vrg-cVbN*%O_45Ys_(`7F$L0gig+ax$*#GHOjU zgCV<)q(pzw)54ghWFYCN7J)7iC~wECvm=$?t{7$g2l(mPnGANIaXdcb+%l1{%pB);Xx$= z{yPOK+L;t~En&XGc+~Q_%?uMC-nA1ZZ-!_T*OPT0#Xhod7U}(cSgeQ3*2p+MCH!g^ z2#ze*M6%-gKjt0t&8$7MOrRwi$!U$RQ2(Dy&;GxYb_!D(*Oz{hl3C(%{11Q(8gFQgj*a8;7JkxO&DBm&v1nG5#%-u-*;qOiDC!1 z4=Kd=rZ#F>><1qRNx0q2V$8dX8O;EJCgvVgEOjxrn|D0-lk zDp#>M`J_jaK;@K=$#t7UXiyZnLzuvQT3i%=V4)~(OLd@(a?{ve*v@4=QjP<*6RaZ-#fyGethdj&XyB$NbJ6WU!1wvmF^*U}RF32(jZ?wY?q|WBA~4U)i%N@tD0S~JBR1?H6_CA z#RD)z4O}uT`K0q8IxIndLzqY3VCjWs!)%@bhr7eG1{k{>h6jl}001BWNklY8|l~tPE@ZQ&Wt6&5{#}nqrzZVwJI+*pibw2ToT!FSbBZ#wyn1Lnxj?73+ z548t4EP$XDUl{1!RQ*L-J|<%@NIM`Wj9Q7$*h68p} zuu(g%gaRC)3O$w-+T>2*F|5EwFoog^=7@VCdH!MBX#46RENX;NZIUsQjkdqr@X3ht zb@{pQyQ|p$C)4MD+bIrDmeK2+D(S?B?sz}&01im|9$e4Dl2Ld7sz6o0HeP7j7AwC} zp_Mfg(+h`2up@HFr`wqeO1_o)6r`~A|x+Gv)RHgnNCZIX1fhBh! zZQm!Rr>F`SwkkRMZTk!%nFSFCY``=+0CM(dq6NL=-V;4sM@A957ASk5(~>ad=CrDf zu@if}D7FmsATANaSfEhQpwHPkg3OZQM=U}_cAnaxEcnshW~O9pb2RM|eaMiaWEi^` z0+MANl12FRy9j}SW_Cq>wC0=CVx7T$cndf3s?!AfCiEAurFR{f?1fGZ@L;vn-0t@s z?*EhN^S?t>hiDTW4C?rhjZYR{z7^8}k z>DfvMu=U<{Mkw<>nk=wgvM1hS;I%j`cQFPtJjS6GFP+z&prP+g|$AcMi@xmL?PU@XNCpAT7p?xH0B*J2UE86bG`Snjk$q= z_sqH%8`%K3EtTQIgCCEU#}8wZ*>dHZ&FLIlSUQZgFiPeM_q!?bq7%4ayLt$OJ-itO82q0q>VhU?( zX8K~(Rat{Z8qDE7hxicl>Ddf;lI|QO1`QlJg|?6~Fc_Yg%dR;EN@_QAp3u?bIOS$r z+1Fs7GLtdb!#&9^%nq&$|DVjA`;RT)#rRkkYJr`K;hCJ$Zrvr~K;TBl5_K#(_Av763pB_Eg4{ITCus?Gm(;g^)4? z^ETO@W$&MAE2OgvIAFnaEoUxrK=5q>Yrp&(?uHHPY9@8Im05 zNDC#Svlb%*yGVJhrbiN`O|NRGz*WFZAWsQgOfqO6_7LYVB7<{)j`kZrr(GM}p63+b zZNT-7WNJIOY;-_p?TM?1P1L4;`F@rcx)5g_A$@p9pX|KI}VULp3?7*joXpy4X6iy1a zLWDYk$&Gq+nr`oskIDT+x6!|c1Dd>zXw+iV(9g2!z99nuD+Q*(&Yv)OtXpvv1?@%t zeOqD$WY&Ch&6GjjX>M2`0Sp|zs*dgBr49ldCSd{3EGdX&mWuK~4JbI}fS!m0aCHq7 z<(%W_>KIDkT_@b|j)Cj5vDTU9+0WP{>JC8Fck@_eBmJ9GCDt$HtGvFX4+V{sw&XE& zG2sva7F`HROL&?Q+0<^8lfV>Jr6A&PmHYo>dhU>{RnX>C_e&A9PtRb2VqBcI$XB~u zgF>gGvl^D-7TFMWM@QV#2(F9|W7PZkky%9QEXWh(?@k%?80(_H?@WWQYNbX1tJ$$% z6Um0NN9c{-nqi=yG*}xVu!q=Lc>KUdV#|k#`$q2~+Zjxw&1C~g0ucG90ti(ieHRXb zp00i9&C>&I?GW9l>zTc^C1e{Spkt?3z(WYaT)DgxfdO|z3e*5CSCbgXt?Z8V#@sHQ;x1UkU+2NDdT=ayB~pKaw;=Yhte)x%$G^N07I}siVjf@HAtnPB*FE` zMbaq4To8T$`co@L8_P^RF!tniVAaJE{XuBK@O+EEFQ66mT=ZbN1~)kQi0ikxeTBABw%t7Gk<(}<$m zDK`i&~k7y0Ksv8DJNZ!-7 z-VwVA&SWoUr?v$Pxy~M&u!?(OJD?R&kd_$4cug+%@}Wfuz(xno%D3b30b;i@r?K?~ z&cSUxYVM3i#(cO}fL2fs5$#W)k*5jTR(rm6(Vz#WoJp?q8 zM{K*B1Odh>t2k5Lg{#wj5s0W@06Dc$G`)lUw&xIJ;$B#JSmLf$y<<%{eMaYpriRiJ ztR4G`20h$I7Q>GBqO4vlCv>l;@2agfIfvUMNyya8%iVlBtmui?4P5R1KbfBUl5^)| z1Fon*yv2?QO+4VxA-K6ELU*%`_-1It4p@uKoG#@AJ*P^VT5kVPM+!!&60D-r|NQ zmYdrU;4Sc;gv)K!6@_dL(C@7B!Khj*m*G+C-|a{AJ1tu9nvB*RD`7)53S56u|64%& zinAuD50)?7=2%}`X13^JOt2HXga>pK(Bx@z+gX5E1uoKXaB!1um7=I2TJc7Y9cIcabpx>b%#{k5u?vMf|64N-qvol4-`dGk2P-}rF?La{>o_CN? zQ9jEiJimsi^<6l6zy`pr{d?4Nn+nl+S-d*|Yv*CpHWUu7(QyL{DMG>~<9k&%7g$-{BuxcbvCTSKhEG8OU^pO3}dNbQC z;fDlx#SINbTA$Fg54y(2O1YH#ORA{lnDgZ*kRZoDiq!8&LQY$J1VfllP1P`Ztj6xcM z#|SXwcjUFU_9>&JfCfmnphUW!ofH#7xQ{rj_~^cbpFzh2tM916sKq6$VmOK0ZA!)z z3LV_CmHn&>JOnZU^f@Qyw-n|DrQl+1V>sQ34#BdX|@?CHHlb2$#(MB&h-3&~R7k=zz}l$P*Det(CGH9x4q=hiOcUUV3! zgCbKq?|H*9^p+;h(gI2BavXNg6r59qk$ZsD&poi@QgGxSCQ;OrpN!3L2c=w4o=cxD z1qK5ln;_CS!*(y?Rs&*L&Ochp^Pej1{}-PuWqNwRMgEk2G`Y5vg*TV7?AB72zq?Eq zznZYPC@ingAENm4*P%~pb}%%80b9oH6i`h=aGG!D2CMXu7*nE$bTJ@BK0tUVBOCE1yP)2*giOLb08LSE;jQ*gZ7T+leh2wRwzS-z>P8ODI!FZeb-#|)ci7kJV`U6W zvX#^Wq7ehooBa_%^x2*Ff0?5f9&0O$!&AGR4sG&-3-KHp%d;0w5ynK7Ok=mTVQ>{B zgjezaF%GMVD#ahk=7`C8wTD{J&{gYQ7ARx&qB&*h^l<-3=(*$iW@YezCFqbE5@oUiM#UOsKWXh*PycEuryeNfx(}AJ^6z~6K=6;d z@`+z8<>W7va^03vmjBgQ*HI9_8Oq73QVl4{5FD&y{Om?#!A{pH_KRZ`3Gm34+|D{$ z*T#oziW|io+fYDZW{R%Vh@Y_4Fp7EqS05DrpG;pkqTxlF0maX4^M2BMhccBDaBCW2~1sz)PbrB*XzV%(eArdwqRmNUZ7B2(ktQev+% zZutYE!u^|E$cY6O@gwRw=QF>J__)@7HT(Z$df{t2%d=BA!YYYcy1w4bOLCQw53ZC& z%F^^4FeKFpZLvLsg?=^ouX$D=ul}xKHyA*Nnh#wU&+}5!MSoV#jvUb8D=^oEF&D9HShj6BP=2X%glxK2gfIK2*vp zfB8ED5b-z-7~fZ>H~w6iEV?f+{!>Utv`n`8tawr|C8y3Z-55GTnTGZSDfGd zOI2V5Ed;Q9ID^e;zrOm_`U_22vnE1Kwtb7+?DmyRM+Ue4lQ9;qcH^7%XW?}=l5!af zbB^LWHj?KA0AwvH1qE<|n2N=g3$Jvt<{BUKCC|ekct`}3wXz3)<{y-D&Fz1_Df6tA ztf};we^bgU{X3o*EI1Ni_@uzo)7pp@Hby0XXLCq#|5x|arK;-0p3!` z+rr|VSRZ9Vlb(Inx?hFw6N+7;#gSV%lGCbe4lGvEFSg`A12K8G5 z5cVKFdY?2g6F&6SnxMhSq0TZf8nF4Us>zgG=j_5CmGaC_mGau(o*iJG`n#oEe7uxb z{!1^oRIsYWksCiE-+SV}DdpnV<27EsQ$BO%*GqZzugdT0zw7nt_m;iQzq|ae%m(G7 zZ!YDApDktS_p3}mnWwIjT!>hD`=`Df9w!u`bu8BJW6=*mLsJjyrWh7KqD^1~*3zT# z$2?IDSTbCGu^XsrZkNLKO}LVd4Puq?bfajCS@oXnC0u>DviyHCz3_zAEkeh!m0E6B(^%XF0yvW$AVT$il}jEi2-&6->G7KrNr$g$39xh;x}BLC04*Y_nA^w-C4@&J7tQF-77z< z8f5+R^&gTd^@?}-6jsoy73HTtSjw8;7eGDruSWT4)_iYPj?#E0iH&?Hj7|6m|AC<_?)^r+SoL%5 zf1y=~?3_O9*$eB5TyCM%kK5s{X8)gFd63q}lpB7glx1)2V;xUi0yH%XMcJcq;fl`;SVw z>0bnGumy)%J5-tjsBPxCA|v-%w)#|%PRz!`l6xRZ*drkgl?BlDcfht-^Kc43c*!4^ndiBLRBV5jDVLG>lpBFkB6-W4`g;_Y!;K zW{66m*wh7>_|X*5%su>7CzVmoRfmbnS#wC%<89x!fMXz3^>>eNEakPIxqKgD1;xq& zU-)7vOTMp^nih{hu`P z$N06kmGYW{Au#&KaRRueneD&}dD0o?s?v*IVOG<=|2hzEh$;-IKCdZY^4W)G^E4_& zU1=ecw_3Vr!x9iB4V>Y*RVj$ZHP)~&Jeb0=rz_b1Cv%scm5!0l9HMD>8wi-&Xd>OD zI2(YOnGtYaqAe?E5s4D@>^1^#KET4mFvO94^nnP=Leu^Ib8MIn^9CQJ2Wl+#({0q9 zm`PhT*)k;Fi4*7Bzn8-j{5hu2QqAG

    Ou(vbP8t47rXLNe$ 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 literal 0 HcmV?d00001 diff --git a/src/static/index/user/check.png b/src/static/index/user/check.png new file mode 100644 index 0000000000000000000000000000000000000000..12762e0445a69c92ebdd2ca6fa2593fb54b5400d GIT binary patch literal 643 zcmV-}0(||6P)e*mIMxyHZY(gu1?`Pkw}Cjs^%v-a zmltqUWvr5LHQhEKNkTv(s=a^$55t^2?cvGl+rEH9il0Eu?eBX6^nTF<&%g%2GK^Io zV%6;1l|6x7>w$p#lknW%L3VN+^S*K(&s(M+%C`lcwogx{C86SLGu$I`eOq9Y+h zIgyG_mN2%}&?d^?BPzgU>$r}?%feho*Pm+JvbsF7v4wrXucJ-K#(BS$^Afu-_{Vv7v>@Wa9 zI~Ljp#YC#UuMh+l8W@&MqUAcbQhuvl{<2M*sT7I{KgTz`xdo0FK!>6JA8ZF#pcVAq zwShPQRC*}ZwSWSigaMD|C6_*FiBw$T6oN&HAyuxX)gO)X_pEyb00960&`Hoi00006 dNklgb3V?0E}SQ2rvW50F3}LfSaHP_ofHS_Pr^W z#bRpS&ad~qo|&HBz>3TI2}G$!d#Rrsrd~TpJv++$?lAL?#`6wi;SLrM^|uW#n}#k7 zE#i`-#{nEuFlN6{rvf6B0ljGv1tK$CIdB5t-W|z@;{uM#D7M|l*iMJBRkQ{}gKeQs z1$GP_Go)NSBUz8g;HVQ75*VSjK1wWmN~}FhY(U$u>Uc09!b}MQ`>CIkP#$Xen1<&> z3~rm~b4UIiXcxRc$h@mN5|I!D_?eIo=<#(K(6MNPrx7t2rUL2&II7%wvkd55RU%tJ z4J>q?-*F{z@m$CA%QO=XiRizAfF}ML>o36Q>JYy4Oa94Gk@Spq0vM)x)tD`%j_3{O z@iO%&bH45y%qgV=^2Bnb3Z)Fa?m7G@B`}Y0cJ6-!c#gT0d1*?$>i!xN4(7JN8Fugr z+y)Wm5E?YgfYHPx$lu1NER7gwhmBCTMKp2JJ9}ix`LCKL0#160mu>!CH*$Tu8mQ)ZrP%98BkPgsW z(1Y>D#XPfXHWMm;N?0Z1>w@`X`lN9%{k|(E8 z0NNAY3eX2oY&HcE@CEQmsFjk5`Q8Eo%^m~~DRJ?l8M4-PKNvjMPLJ-9x z+4)Wa%?&MA!9Sq5hT1JU((E1pN!fDdol$yKvT%y|IX_l1%MG*r4uX&a5L5HP2XSfy zt&rf+3KM5WFwpEku&lgm1}KSHD;qIq=L+;PRx+*KB3ng@XIHu{Kja`y@m`*l{G1r^ z+AZ2?(Ej!utcg~lB-y1!ZA}w6+Qp8I3SZMd6fCneU1YAAR{$nmXXSZt0Z9)hlEQ|X zTNGRgZDbFNurm+Fa-JYEaa#d&a-ZMCO2)bOqYT<3kO;6@F)?2QBiD&q=^2E)1~DcP zir_p48sFRL{b|(#tbBD7n5a Q5&!@I07*qoM6N<$g6|f_%K!iX literal 0 HcmV?d00001 diff --git a/src/static/index/user/phone.png b/src/static/index/user/phone.png new file mode 100644 index 0000000000000000000000000000000000000000..408b8663ecc1d653782de665a1d6eb4269b147a3 GIT binary patch literal 714 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 Y0Ve2IDD({eAOHXW07*qoM6N<$f*!ClKmY&$ literal 0 HcmV?d00001 diff --git a/src/static/liy-select/images/check_mark.png b/src/static/liy-select/images/check_mark.png new file mode 100644 index 0000000000000000000000000000000000000000..5bc90962c1b7d6bac2d83df7c547e51cf30dfc02 GIT binary patch literal 34093 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

  • b|RE8<1dAudUtH{O>J$9}0R_bkNfIH1^mobI3pPy(WK#z3a6KYb(x;dbw3Du^Lem z;!_q5po+awEspXl`NJ(urb7*JlYhAYU;-g2=lW;P2e@QmFJ!Id1!;n2S)a0UiP5-N(IJ2;6K=+Scw;$)ViB9k-@FPzmXy_6gb*WW?zxlyFaxf^b!@xJx}wSmppS zjg3ZNQL{y^WLIV2v|9p8Z#n4m9pQi1Iu~f=2(UqU>D_9Z_jkX`(Oy*#g%^n|6>s9c0qY2Qch*^kT-X7EkbB1{qu0%eo<}=^Zg%3@LpMk z8eh}~%EFq5c6Z&;{r7D@5db*f(3>T5ZZNdjpE;AY&?=4W=bX&AyavW`@ioWh`5Gnc zig@FC757pa-Tzf}-SJeu?>{H?ITdw|d6IdIBAe`09wRc!ii}WJsjOs=(2<>FWF8|k zNhlc=p&XkO86iYgk|_MHr}6oIe*M*}JdgXi@9VzC`x@_m6}G+rhzU%N@IHCdZZZ+f zs@ln!B~xG@jQ0Pnj=Rd4W0s$A?Q8Yxfzp}s*%j}n|NjNM;RRrX*q~tV)MBUdwarC8 zU?3EwoqE3u=@o2YPDom-1zkKO|6e3Rj9N~FwI+ddHC(KQLv?f5Yw>5gKhI%R_|TZQ zyihF4=XR1ElTirMi=cu;V^w7AKV&zZkXKoCA<8{Dq~GwfX<28EiX~PMSyv?3$9f@E3eB=CCjyV;id zvfPx?31s1r)=A3G=OD7nIHQy1|9SrVy=R3+MRxZso_>=e3cNmUAY?Zzj}6YSPTaKE zM%$uZhu6L%m<%lHl<7S+wnytk=b*IZCzQ4{{D0ZVg405$?~xgD3pu2lQq69A-!z0x z*ZHgtKGk9T6>L!be-|zq>^^^l#l3`0aByABq||6Kt87a?^?ZK|6US=NT4_ z1yA*v?6(z;dO}TuCJ26O>s)4iDEwcXg_fEirt4=)=`QYMiKRaMW*~v$YaYz+wQu8T z;k<3+6Yd3s^mmXnMCNEsZhUgbp<_a6EVq-bNCu^23&5QF-T2Yp_R+MPMz@(6)cZzG zL0UutdUnqS=brsDSrVMtLuh9?I=hOmX2M&^P%a)0nno)3FN(XwR!qO7wEgobkIT{{{=uz z8Yvx`Vv42w1~9t;|AecQngkiGKUUTku*_dtC(g$})@a4umhw-8p@FH>(e1Zf@BPV! zxq4gnY>FN^vQmtWQn+h^X+%pGe{cN;1JsuQj=4eE&)vU@OzaSAvTjkQ?hO38SOKN< zkh+Ju(dB|dZwOG`_9mm={PHOFf8pi&A@E7u3|Gux*kp{O^j$3@jz(BDe5gqW#`w8PdvOCwse>D!+# zY5)=XtI@;Ozxo%>;{;l9vj9gdUx1>ubc0u}QGW+Rq1Frb@i=l>sJq*6C8n_22PPC5 z#LWoU3OT5V4;+D*k2IYW`Qkj|}p(OriI_(XB0tl%pe+W6z_O1IY8S@!ezw{W$6Tv!T~SZt4#{ zOiq@3Yjad2(}xk4Uzs#d`P_Y5AUKBe^+&EROt{#@z?;FroFa~NxK9$V+J7!g^$Iav z%6j^4=$))Y{hIHW_zCF<`@p; zO`yIkZ@1_l7&;7HLGNtaQ)Lf3&0*)ZgaR=+R3_JFtNX>4Pts0T-w{@A5RIPx{JEy! zj&A4wK#*R8%+k^hRs!L1dh)&!`}&n>Z6w;Abt-XXdXHb`Hpl5BXyZjy#iK_*)03+% zPpcSRwH%hQuXY}+FM7zYizd;3%RDW95r`p)Deq$2FU-2fIS=0Jd$Ysrveq_F6&81k z$M=1~Wqd)7}c zSYZySuw3JX=j9}@cIXF6exHHmc@yQx&l?PfYDw=UMMbY5!ijr|E=BJAEAlFtJE=OBhqV#l zJ9atZ-b2bG5;bI^-E6t#G%~j6RH(W~4<6AF z!pdVu_I*1v8_TT(nO3pEqeqDY#IdZy`{&ohY@0qS0)WeykQ(XsN2tI9o}?bD?$?l= zpS?J^**NL?Y<2c9h<05%by3O6-8ncZ>CaIc8ygx^u1~rr zbsJazmFs6snDi+qdesIq6JDL`b&L0DI#k>rN+jNsi7uDC zzr-c{_bp`lLrf88{yBO@j}qXyc57T_BuaM&x3liH9W9d~#7%!ay^e3mCno)gDJ)B! z340F$8T)xt<@`rf?SI`WPA||?x@RY?@Lj`V?ejK+mE~g5A_-Zrf)9_1KF%T&m+aU% z8Ws&Tx$u5Xm2*WlEF3TXf<&1?nBVuNH+$TvKISw#@k>NdP>`O@%cAc(`*z2EZ+o>) z+8z2L3-bB5NRdflr^RW;2?~1qd)^&Iy8uDe2JPI1vJ`vFwWpnQ!rIxn>rI zkq-Dco!+-4sk7Yh?&7zyu&BW33rs3hrzEUxyMlVXGDlH zf8U{*^bFvnrYJUfV^XC(8@Au6v!oH!k>BB*p~whqF)A&aOR|Y33)Evo)JCO%d>e^&puJ?nl1Y)u)l( zYa@d%Wj+TcD_=H!6JyKDeeAC^oRxsv?W~GGeeMt2XpbQ0L91}DNbF^9DhAFJi@k8z zF`QUK{6nKiRc5^GJC{`L|2{pcL;dAgC#5G~tY0=nnMl&kCtyTINk^aYZp z2X4&#QhlL2KV;Yqek0P3A*4Sd)Vqfv;w9U4PW>2*IVQKr8(>cTMj>ly+^nD*Qnd@# z&SJ%sJ|&CXj`7(|{G!wBQpdC^gXj2d={egl5F);NDcNQP#8kHPi~WGX&&|wu^G~`E zYozfiROGeX57qP1NoyBryBD1YE02)qx&8odrw-~LVi;x%%kutQs5tp*HKIi+dR*ba zvJ8Is3^sGy@n;`Dcv*_z+iv;@5M9Ha2g{R9$Jh^#{n_svH4wVma803#AC*Z{HR3c4 z8(`Vkqr6hFmnFbYpt}-2;VPS5TWc{_yTni1{e%qWQ`zlF>VPQrU&l*_0UUt_qN{{N z%w-!w0!^(hviB@0?dGJz9)~5h>_xjy(kSv7Jc1j63-`fSDnVp0#=HB$0tcNlE+gVZC-MTVl>%3_Q5S@$ zl&UeISLPjZ;;dK6O~MN&9O)Hqw! zlmAid_q@+(Vg2FEYfpp^TO>rpv^oze#U-nG1~k@t!PU7dtwq_NJ~gLrC09K)R-F7$SHwFb;`*TzTPu>PaQ%a|Aaln)b~ zsuthCSubo8dFbquuD(R%W40qloi;v4|X*3Ow(@0mld9SXx%1Lls82om8g<5R&c2 zMd{0HKY8pnc_kLIjYg4uDS5KociWV*P2Xex5LfC~1TOrrk7$uDy!7_x&VvJ$ex}O} zD%37GIMo}bq~kO&;el1z|L1pL!OBbuF?1ws@sP(a4jTKUj{aE!k8WmFmFF06E9#M^ zac#HGXdoGl9S&`FCC@*Qw>gSFxHQBZ@lp)1-N9-J$q0+2wHlbM;475a8k+Jl`pTaj zy(|D9Qb+tELF{(?sFl#63^qImY&g{k5o#%rvEbPcTf0bDpY;9)iUrG;_m%<)(F^nQ z?46=lLuh`(AlK3Yr@X9)regPKZeq<_S6DP zg=VTCX-3$Ch-@P2AL|jqfE%gtCQIXNj{PqUIUiwingm_^=#ean1lg25Rx29w{PF>_5c?dUC!)BIiy0C?!VdyKXC>}U4`q?W#JP$hTOAVHKMiO%Y{Y~nvYdL zhuaaFw&=PprQ~^6IuFX#Nfh!|ZCYn<>k8P*-S)??1yc4rHMuJrJD(0nwuy|!6|V=8 z5B@UugxbK#7<0fm!5K}AvD_xqb0`qQ6IE_$+x{^@wl^%4qol0J?ubduIkpR?Z&cfM zZyWz*ZdIyxxCcz!B)!3PiM>55I@G`9P_98GZuaDM)#1yh^Eby_YVsIn;)>mX9I2!A zqbskDo66hY3OWnq_(ufE%*NB6w!wr8DvGVaP8U1=#6Eom2auvbRlN`R$kq_|uqH1B z0QSSdr;l+;-G1zM>_JP-BxELezoKI0n2z-N5a&-B2@Y%1H$5z|+>J?~7s5X^PBQ>W zjuivG!i1D%@czI{xfhfX^D>*4Rac~up8d$Lh1dwk20mri`ff>->#m#&XiPou;iWlP zSIR-n#KqS>p}^K!*~vSp)3^o|2pJ7SxF~yE7P{-C>y&QVQAP`iNlLf_Df}ya&8MkMw@pDL(NN+mqkk76I|p!kx{o30-5=KT5_-1Xjld+Yl*XJSf;{m#;e^&NOwme$XF zXZdVXFuP-ubWfam@x>21wIWFQYRjp>S0Z`o{o_&;pG=#4!U>Jmu&epmpb|9byLgda z%jQdW`}*dDgoGsQI?^{>%Q4R$zhYLQy7g1`l6Tme@1|;)wRu8dVo$=ycto0HUBWm`r8SNXfY1#OcA3nk@22Pynb7zRAydc!iLD59L-$Yq*2?G1nhujwx>C?>?VB_T?zc zZ%wh23jg6)mZ%BR&P(34i>ew@hdSY$rEv-MT{(yuzwcG7!2Q6Nj3xRMzd6aOgbnJF2Rx zPB-4}KYkJ)cUL_5gs0S9KS6$3u6^j1I5O%V*c}bX;6@?_ZGoL~; zHnFF{zg5x#Qequ#{aa2eO_!@GD*P(4vsLFVz(?tT67Dwir>QGb@hY&auxj}l@+v<; zt@j7l>0wc8`UrOjcPFsd(yNL{fE52|2M6c^oMuqc_^^lLD?vh~0$V(HvN8Eub z85h?>pEOcJ@hv=W8lZXhk|x?K5O@cpsHk}6y!if=^yb8h6Qd>9{bjJh`ypfOClK_6 zi#G}l^Ax;}?;Y|OYDijhB|2%JPR}CwmgeSute>JJXIoM?{>sZ@bZ{*nU6WtMACw1j zVPeYL5FCqQ&KZFO-C5Wbr>`p09GE`T;W4I}(%^gG{;8WE(ih4^@^#_?NpjHZr|p)H zFAY_P0;jvxfvyLH-`0f$Y`J<7Eii4~2Ll6w5!7R_z__Vu?Se4sR&4kQCl;sigCnbb z&Mp;8JxSD)YYO-@N7FaClwwP|KMSL!yJE4rK{1C`i6agqJ5L{oR2zk$BDQC7oVxsEzmL@XwQR2OT=Xa~~;>bv2JsGM>`EYS-{E^vWtq-{`_vVL!>&KehrNzW*-LwuchqZm7tvJ=0x)A5e58*DjP7Vl zlV4rMM}~5ti{a7w>jRmP9E9;vI)<*LdXxVUZRDfN1)j?iE2v?okB{c$aq*6o%LBpViHs$=)TDpd}>{a3o86=8{5k zJrf$Kc}XcsM4pJ}1Lf-|k@CVdSL3e%rP& z=p09m8oJ5y5Y-w)+aVR8EaVocfI3PSanrN27rZ{@ChFqx9?j!({IP3?B{=NC2jFi3 zifI+Fl)L$4b@(3cQ>d=yn;Kk8-`l0CZU>o+S;w5FiXT= zmRFWr2MS`&12k61`_^sO@V=QSiS9)?1Zk-@d#0)1~%?#WvJaQnwoRYWZ{5kk;*nW*@oMs(5Z@KyYnW{^bB;RDxRW1LfSqU1F!zot+I{q0xkOj0I}194j4{4ku{2aGTl1XQ-qw%z z@F0||4&Vs;zzk<6vtJ@ykn@3K(4(Kn!q)VjsCeZTYll0mGMvmeI&~jlY4eK? zNn}%vLR{zRv!A+i4WR0-mz|vn@0{x*&=*!`EX1$u^<`qg-Q7K3o>PW1)&aIDJl&FK zRUK4b-EqV|SAVivl!n<8u=QIn-p7fHUZCaAaOc0@rKG%Wg#K-CzO zrXJG@S4VO>B-It--CKE_K@yhIS-$ahQJ^Go+m|pEza6emQpL`{zMcJA zt+@+1_r{aj+51d0Wvb+K+1QyU=J#`Sda(=`S~L&CdD^`w1N;NM3w-fwa`=Lk$>!0<#o%B@ky@%+*`#XT_$7H(7*h%5;7Z? z>ARQ>9wQTX+wOTsj*8>gl&+fTz2}Vy;na^)xqNw{5y}iYZdhL2cO1idT`02qkJ=~>HT>-udnv~N&BNFcH zM~mNhTRF$UC#A}>Gl*gL_qwemQ5qQA%7#dCg;L+uUTe;CZ0`WGGy=dsaMuA16u8lJ zocg(eW~~svxsj%Mh~kA8)5ChUjw8xOp6Y_F)z_1GX^(SjV0n(iIV!d;c%%ld%1J50 zT)jYRg4IL8+50?gimpK_3}BprgCS0Wt$FSEFE5US#ugJ31W`xKM;)5JOEU}FW|utL zr>u$9FC^PC03JU$`(C;l&`5QzU+^od9wI@S9?za8>gZVVkyD)qwYzUix`wK7qlm#V zM!!5=73A%54Mh2F$zF-QRE8Og97(2%c^_bPH z`*}4>nOzv8Kj7|nL3{z(cBD{V^YZm!NUfzFK~rm=cvU8G`SqZU*YA=wu=?O(8$;e$ z)&iNtcQJ7moF2W5eBIL^dY=ub?sK0$^~oQ*BLisVHJx8sVpi5vT|^^M`5Q*h2x9`( z9O?iDWfVDu#zPD2O%yh442kCyl|w65boaBfZ*thBhaOojk}`}@eE*u#kMHUO1k}o7 zpTjn|H~DQ;H*VaB5nyI@%7}J8b=$x8RPAA!1~gmQ%dUZb^iH^2jyS>UP)MUeOp%u7 zn0}Zzv-A&ZHvKh2({!&C+sWm@fq^?$-Q8*Ko!S0Q zHPZ`?;_YMNxE50atGQoLwyxVhKHzzh)B@&YAASg0Su9W|Im;zG%N~2t60mO2R=~l{ zi7!w-#`<8*SjP4?1`1-eWF)WuEA7Y5-Uj4`LzpPbK+L8tzW+`Faj&Y@rlWp7G&eUF zGpcxNW}C~^j~J)&Za_@zanwH!go%O2I27e+JiNV~H8)T|p*=&=vHKTbL%XKH7&G3SigH>6e*|$}8k3?wHw~A=l0PI1;=snB9V`sU8zF4aK$lq}g zL57C(V~jq8E|Koj;k~pN*(;r`Si53T$2i^4CI*q73{k)1(kgfi+K7^se_?jtm|=_L0t zm*~?vsb)G;9mv;w0j(FJ=37qyFW6OMLRaKfc!;o4*YuLvs^$WYx`*VDLONkH zNLG?{ubg7Q1d+`5L+=%w?uH-3b{i<9%v1tlm>DNoa^eaCz3UX>Us0IiyeKt(IoE9; zIPKUxhUk%6;%CaO33{-01cJ@tf#@s#emekLo`-Va>&c$lO4{l!YZ9vXJ68|p9^79HRsy6T>wjPmEwGfUzg#^j4Qsc2xq2U8}N0UWq`nsQW z!291rNw3?`(9m{Aq(GzHDSYq*U%4M4tWag-C^Fnmk*DjrN_==gV&PPbOQ(iAX6B`9 zgD6vpS%uRYn!?hM7FUOK>kJAa43nq#VRRrW2`F{t5`TJ}>+IVmY<~TsQY&RUk*u^% z+d!acxbjRiGU!ynqs?+i6G+*8|Nhm?pSnzlrr}kX^$Di9SCrzbJ1?79C3@}}2_hMG z1!?4tNqAJKyI!{@D5j;Q)#q1mKLX5aj0+qu_T|7sochuz?@hh)=eK2P#BLpA@J)%W zd(QR1fw>K%6)s|_`0{$G^iP;w-yj-!1a|M6qDM5TSdwPks7KPu;)(0WB8U-9wCVak zo(4jV$3j)_U5hxel`z}yOiJF91XBJ-hbo&%p}u~icsi-lda{4x#}^;n*$#Um`~XffPDMCTB2PEX8-bQ5(ei5fTgOkXYeFjrDe+mY(~+VRe9PGv zrHa@&(9kspfm^7>$KrTwGzv2lY6%$|wTGu)GxtNL4i^_#J?K*4n4%=L7^%tHpu!o3 zMxiqN*j<>DyYqGW!3RE#Oo}d-A-!}TzZ0NVLNoN)9MTH``Tc1K$hFj(G=VtpngQx$ zpq8Yc+S|wH;NE@vGKz1}0HmDc8 zB6%R+utl9HTjX5MUaDPyNZzHth9JV+`xX@ zMk`Y@7-O_lQAw}BY0#tVx(Bm(ZRpi( zaGlztJMe4C)`Whj47hHY#SL5xDkktr)$OcfVS!Dc7U!V^MvO?_O;_KwH6?tt zF(!-jzLnBX*HuyJyro+-jTeOd!NOzVN$NaQRDL^PTAPgji;!J65+dTV!}BdhF5+aV zZTJ@jBt{Mq`zs$kGXGuXvY$5?^vNl1xZXz$q7W`z0M*K{W|sc70H~Z2U(Q0@x8b9r z0wzc}Oc@;(nNT8DCnsN?Sy-t5NB&l`lRu7z`jiMfypjlI{WzY|BaSd%^E(1;5W&N`xU2&BcJ6EM8|df%IW!6q-wDq}&iI zH=9`2Ww>F@=Kpd5M2*SjGPom@b4NL+A#Nfs&N^`E?7{pbg7(%q>RIZUx7ka zR#r^H9y+7jH5nwz&V3Q{T)2wB0q383g`*IZv_qs$EXgOG>C2AUY!~Nk3 z<)JB+=c17tY7^OrWEx2+#8WdxNeFw^9aE2w^GRAWLEP^-4{i}Gq#e-Nn4JFb?3naH z5`;bZ@qq)$e%(38duSToCMK`)5?9KY@#kkGsjGva^lxUq$rjWMOTAUCLi($7?Co~t z+!a?NzoFkShQizTC9Xe)C4^z~nFoPMy1XMS7(onO9%`%ZRK17$zJ+lbSFYICyg~83 zObA<*jV|A<{|mc8!(pBBD06U6bs$k*6-DyRH^1%s!1o^YkGN6q0wWbgsodRBKdy5= z9+7PG5p10)tuR3KIcMfmP-;W=xFxu}wD^{(WqGmXVM+}L-cJR|6I;F=MiZtR&$)Pu zq~JtoQbpXQC6s$nz?g?8jP)1vbOzL0ty&jUO#lqKa?9rl&I_{eTtuIIFxz{HEb(s} zcfQn*BD;(#hT<>%C}f7>t#U^NRUyX?^t$7|Yv9`vU36yn}N z(}8e+@xq<_n38ArqMixZK_)q!k9;tE8k~2N2GMk=^8A@CWy%TDz_!6eX1HJDuZ}vv z#TKXTmFI)ub2cfH!l*reN+JoIFw7z=HSuyAI6wSeULAi@SlrNM$(<0UcV0aC9xNvF z?~76Zbn9{-!%4vxu|g<+Pkgz(@X*P_t_k(S;iNpeE*|25u4ppvgVZt99ik6yOaQ9(_S6^|PA{w!oVv^ce{=v#wcXn;8wFtc|Xf*_G<5 z=-0-R@yj8r(hA-$SbSRkW*jdpv z>_j}}V^Pcymq4lcQ0_fq)6idfv!%5#334oJ4hf>adrA?0{SFTClTA@D+w9l*pdto; zr3F3iAmjKq_4)h%s?pu@n8f|3`+OU?@F=EMDY8aoXFj`Sz1{J-^aNP literal 0 HcmV?d00001 diff --git a/src/static/liy-select/images/loading.png b/src/static/liy-select/images/loading.png new file mode 100644 index 0000000000000000000000000000000000000000..5f4e8a6f107ee6207c141a6123cf13d49c1c17e3 GIT binary patch literal 24454 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�B5$-P%#kdTqY(tn@>OC^?fH;G-cW&wN4 z5*j5i^FEI8=n6O1Hts;3)9@=aKJ2`V#lm!Xx5unM=+q!M0FY#O?bZxUs5oTUh{fD# z@7$U?`9e5chO1PL&3kX(O>iyvx{w-U6cE5YX1>}XqS5Qq6qV-D`;bp1O(i32xYFV-L5H9>w4hmX^miTt!3q*2~8G*SyBpaeVCHqxY4!$TZ^M@i^=S-UUHv9jPVIz|=n5#nu7Rl&vMLi{5?4LPwp$gPE*H7u%Fk|BVQ%)T3p zPo057b8OeWT3Eoyq%}QROT9u_tm?x{;jAO;*CJzoo{2(}c{57h&)rd-c~ml=QtwIq za%@m9B0_YPv_9_I*+qks{ju3G{8{4VW09%LKRPDwm37OF>p}m<8XYZw3zB6x;W|G$ zSYFsOu?=h6!Fi zh*C8&U1Ay8R1no`18`6UH6(`$_KmC+^s_ZJ#G{iWYP-5Z1}E!JQ-yB)JlLA2E-S*j zX@RtqquPjrp5vxWCkhS_;>7?t6~mewz#85f;ko@l=xoBJUEFJvL^bhtTXZN_s-xB1 z;CZdn>67PbbSGg8Ie#1PFaO4sn|2+AreSVx@BCgTxNCQNWVqkH(AlMQ0A5Wfu$fn9 zfgpEGRW82fACC6QR1vn!L87?y5lPokRJ0&=MZ9)0g}p2}$I-BBwDp(?uGwh-;o^?D zN@ka}xSUeVtm+T*)0lsETa5{)8C_P{T1RXD>HdAovkE?p)nW6~$mV2g*4)OW4BW8` z;g<8Pk4oBs?@S2K=};hYgpu?NihfSY-ZZEI<_aKjT@~J0QD&fY`@ZSVAqEcJ-x64R zPQ*XlE*nVEn6;2*GwFVax8$9vm1Uj^%HFmYfB$}jVGDG3+MDnJmEMV8@O~e?`4)(7 zbs}s;2&H|nX{bAA)0TAy2toL&=lijHkbhqsYpdzg}W7$M|$8nK(iGJ7B6mYs*s z8E3^Vn(M_)T%;KLUf242SH$L|c5PrdE??Hynb0T%>|Z=RBow7Zg91j7@W-Ntab$AH z3B>JRZCi1cW+Axdt~MoW)EnGh;Kws!Sr^{ko(vbg)wD2DDH~gwG5va0uZ4#a<-vF& z*JJzxIQLD-u?rpaltxplnaQG)TCl0QTXQwIPDvKO^G~&We~rj2Y6PcNru})ZAW}mX zLQ;SvzJC8zX=2?O=4wf<(t_;ia7MSLCL~!cTf~{?PW65Doc(6D|D@%60+C~;Esor- zL_f`>NTVMdj@hZ$8y+{f%!;)gAwIbFAehRoE?GNb7ykXg@y9*>-W2cXvl$J)|H4Ul zs3>-3`FhSb*id?T<@T&L$r4L25Yl(mSKMepw&M$`jqzdofgf>M8Pnfh6gGFJA|cO` zJ?!lKr92vqB;`-Ct}=eDg}d8h2A7G6iFb`Aa_L$CUw6N(a`7{FwPdj*@2&^eZ`ikr zOlLwOe=?=swbiKA^W8Q*IIQSiu}-TN<{4DO&h!qyIpGqDlEg>a=@%6hO-K1e*K30K z2;HiQ2yMdJwq1>C)_IL0Mc)5RFDhcVsGWHHRk}1}5vJN-E%OI+N;@WhmSinD$m{ub z`G&ZTFCloo&YoXFwhzMDUV4fOkvM{}17yFYjo9sH&R}PzztP$BuG17bKC*GHY;0_# zTa_(yyACJm>p!1|i?rsZxjTGmVpR$xr414Mcd7$WVYl+>O)?XA@puoXtgC}mJ|&%^ zHz6HCbh`Fh8@Z5@lf*o(Ku9M&vhC)5)L5R~&l0oSGqXJwnXk0yfNOO9j<@HLqdtG) z*Z@Cv^Qel<%M^UGu!=E>q?gRR>3H4NlT>9)Rsgfy5Ah@oJP%|GB>Vk&D~baxH5IIA z-KA8DJVi7Nv$7q&lX497i*JB-z2PA(=V5O@msU6y?SGb6_8Qw~jj!YGe3N3KylEN_ z)72%{YfbC#_bk;={jk-(OF?u+=jIxEkh&b2eC%W0?G+bI+$OFFZ#;fH5UIK{&at9U z;>cW@cAAa`_hh-~zYdONhakjrNH-Qxf`1N^@sA(|b*~<_`Cs?&E9CCJz8Jdv=L8A| z%!3db_}A4xUTulZKVjIy@&4O5hz|KD4FBH4$o8$~G zyR^myJ+5qr&?S^wI0U3a6qp7g@@txb&K8Pm)swYxd>aCZYX$i(Q>NONL<(IWT)J@} zgPT|jhRq~0X%0K%8?gLEdYSaSN9komkNf(Hw#?FdjY3Dcg(AeVT?UhNxk5(6yQ~D= zDxqP(BDkrjxEA)EzMB7l%T(f-GZ7wUi%!KSjX6+N$J5th-;2q{@^QTjxhKaZXr=F^ z-tD|mUY@)-Q=$#5yVVLN>GFA(PzvHYhC|MCEmlH}e(kiPjJq7kYexE4A;v4uU?$8? zm0t05m)e!MlHp1d$%>&T$zNvr#`eiBRs&@1wR`wBq&Id*t)-mwCYYeu*|pc2WS$j? z^G+F@e;Cbcm|c`V{UWl?ekak8HX85YI`t++ZsQDgY({+7>}T^>{8V-05b5pASrsT9 z?Ii(LB!WmmR7SUk#F2BK4(F+Sim?<8Z7emEl-VrrsK1RP#v&;oS1U!&)7z|!B9g|A zAg}Ukn zL3uepagzP21XsqpchjY8dp1dSIjy8_i9$6r;d?_vpQHBb%1j$9n6X6rUd=0*FGw zDVAMuL(P)PrZALYtH>fg9nMfj63I3wPMVw6hAW&+Vjg;m`VCjuH#Iv%4;;Em7ine) znHf_d-dz$#V{Z@YbB8(q{PO&6T4{Ck#VjsfLOcf?x1tS3eF>uIK!Cg5*9l$=Y^m_6 zpQMUEKz#u~xZRR_C0Pz~oLfpM@og3!mqGDC@>n_J8Xx1UGx7PN+;QB8DulFmiOM9W zNyaF|UjSI|d2Pi(pSueqXH>7ye%nQCgn2beyp%)T#XMdf8kiH4Ok{n_73*crbD;y* z@Dz!D(DGKCVH3*O^zooZFkRFSkhF2v7rL{?j>JbFtGdMm6S)oXGMh=?`RBG1J^xni z+;tT8-O4}k)ZW6pLyO@ny)K0Z5lXBXQIykMff$5nm?0V87%`;idd3I*D!3mCzz z+~ytdE6Z8t3GoD?p>IfWspsyQN06|LI~1yU20$P>KRR4&1D&t%`L{W}V$h094Es;| zJHCJbFww#M;o-Udjrz+v%VrC&V+irwsH(L5etcLI|K>5?I?*B%o|n^9<{<=aSXb@Y zaYlg)@e+L|^`cewm%>>LFAF5*V#E$0n8iocGj}R!nw>I!kE0Cy`g)K~KE9x=WAU>} zQnY9B)1F(Nt9-?#kg?`zNp?gLJ!x*IB4M=BBG6?sc)u2i4h|MH0L4yIAS$~Bh8j6Eex zZb9J#IBXzG-{$GewyINx4cQ|jYn1^{EfWkY*h+japy#ECJa86L zXn(O6^Yc7mxt%|{4XI7@{Z*TGs}KPp$O8zWyy`ayf#){}A?suTI|T)|0CFz?aB2&X z5DaJo>Ep9#s364fcyva_Qa|{GWLA^019SzV>U>xk zhnk_^B?o8=W`I;}H3A69Hp8@Un0cto8vF1lTebHlfJw5>%|aC*&?ygeq6+}LR`5tW zf)E6ts-UOAyoY&VzKS)+4-)S{nDI{d^WCUbECYTqVVDzz;7y@K>~ATVI0nNlj*|i^ zruTo^k5m(a`cbpW!88kG381x*$<0jAI<0XTc09R~=0rZ^QML7LV1WN2 zlsc`#v38%5d1s%jB-L-E@TmmrOVkv`PJ&9F7!2dnGAg-bC|4Usl6&Xy-D}KH9SY>4 zq3F;qS1XoJ)4NQ#Zy*)IC8&<~2`rB1PiyER3Q*d$!OJilz#zNnd(^^=)Bp$eI*Wt5 z+ML`BKrpYoMoB|!gR)X;1TBk7fVEQ2vHrMtxi@?o0Xd(iA7;P|LchEJwV79^c@8cB8=IAQ21OgwN3PenL8D>1sy)P%i8f5j61*40R{sSbXa*jCxDl@<4#I=0}tD zikP|}{}tO}Iw6T$MGTD;Z}_MmfLQOHnGG_`g|%Gt^lR?wSgd>g*rYJ%ncb(&!h-zi z^p01F%EbU-ERI#@`%{GJmI*?enX*^kgkL>6f3&je{gTQjC1JXyd+d0(UT!%A3D>j* zYXrO(vL#?1I6lLYZ#A$-zI4`T7V7qNUJhhtx2lVE+*+$v9xf-?hqH=b>(ES}f4IzfNT~rWf zEROBr#w4d~+b1tTP<{afWt+tR6J%>?f0jG1z(2zE5K{<)37N{cT{G$ zVt>7Ur3durHM@X%bc#nx9yC~5nvUNMjTKS^t;pDl{bdt0~Ce_S}ZpV7}i? zPXYtIM=t)N7pw}osQAi)$S-hWSNsXE-3^tr?yI1o|oV>p%q%QIU3|If$Ak!LYPX1!8&+u6?U~ z3yc1$>YL!NFzHFwUwCu0AK>D4x|JsV0Z=P}=b-fVBvT#_;LX|4eu(quly~6I>k4>X z@m8J>@aBJEW9{o;u2#>@sdFQoym=}FDT6@!0eS{7u?OD#MrK!l6jY=tDr~(}23R`+ zEA0&Np3dYJC(Xm&8*9p)A3uZidjfcI%hCK18>k1iBb*oC0?&V1hz)POY=D>XZI=0e z2L-XfTdUP?^-Bi0>AaW!0jMe5f`eCpKvkrx`fR-fc&Rr6FYWj|+pe|)@rWn#`` z%%d>(PHX>2@(znX%sguU~? zcH#z}4@o=3@%6_ocq?qRX@@p|L3JVU46j&dd6kaE^$pk?a_ zmbbqlp)`1*+s$i1iN1Kb|Gtw|*nbsKLHZ0Y$y;1wG!@-*S;}h|Ju!tI1=YHl z<(9;|dF}iDmTB2gzjf-RfU?TU*QBq4rIK1}36Z*tc%*2n6lU*9(pVCwE*ch3m)vY> z>zscSJ^Ro?CCTX7;I_@Y&H78?N;Y|X8M!Xwdj*HI^UhD+PgzzQg)1}Oa}%|>RSERcR`1EP9)5!|#VV!+R+EBNy-ozJ zkwT!V*XE+7Yg}0a7_aA6%`!olpX<^Ov!z$YtD6edlXj$?5==AHE%>Pr#B47Bm%zAF znp5jO`#^Kks+im@k=S)#tGoE{fgSi*oBZKzD#0A@tuwZFuz@S(V9MJHS3|f8O*3$I=G~I-S*dPIE z7>0HzLwhHB96UpKt_1T&N(%rMqYXdPqnad;mI%h(&8vVPD)>sErAL#?!>vd?>{uwb zJPi?CJdEkl9ovnx1Q+RLXe$(qtKXns3#m--M*j!Ej_`lSnrHV zgO-0?Q-rLoq_kK%tn4J*l+S{RAi$twGVfyRsVIm0Sh2Tm^zupEv3B8A4#j^;r z7?}TmT}?z-0a{k18vzFJNA(K8PfRD2efI|<(|n0SA=Mi<;h_VR68^q$rQr$0KAsd6 zAhhNItyAk!v2eKy@EbW8A^e7mW*T`)8sURcE#QupkrnjtKpO}pO{uAS|1L+R7=SBd z;`v}&NO%;QLE%^9!uDolQBT04+D>&fLl+oIBrpK86M&G;RDpnpBHfT-0D1j={|y`)#^eo&f8T%ej{*NA;D5FSkSn?(2BVGIl!OEm`9-;7<+_xtkn5QU@p>SBdR~Bq z!8JUCEX0!#^&{&+B5c)1*1M7T5mKiLyU3f62RkZn;|;Q9k3pG_w&(ds^`0L}+gy&i zG>kv5>2CXf>+pApqqCxZyB$+p@shTYL)(4P66ZV!Uu>!O|Juj}j8KWYP#HZJlB>VD z1rKbuQybdKJTd@{p-N`R-D(Da`^3|p1EqOaZt z{G%&-PV<(|ISOjv=+X-zXp(*4*8J$0y=c)Yzo#58SF71Kj#7J)o8f%@`oNs>6Hesj zu73EuU;E`r_*_ghBiFH_E%E(lZk517u?v%ciyY>19IQUJIouy9$KU19)T1atdyZ=aXw9}M6m)^;gU2Y({wt1P+tx#>ndlJ$dr zkl--IRzw-dDWEzo;Z))o*}oe*qp-VvLjyo-&k)es#TkxtSV`|PZ`e_k!c77|4&tLs z1d>iaG{hn|zu4P-?Dx`|i1-5d&8>*^ALzwo?JB8~sYI%poEIvqzQ-QUii!dv#&Cem%e)b^uyN*^hH? zz291_zu{(t)~yf!b@Y!%|K#Z37Wtz!{x?=5)0=rlRbmtr6qt`|g_YYck5hc1`lH$i z24$45Mc@9{I`UEO7&O~??vI{>!vqyaD7l>cAB}l}@fIPtk^wnI{8ESiI$`+7lmD5V b5GlhM-Xwe6JXQnpNpVU^T`^7G_|E?YJDG~P literal 0 HcmV?d00001 diff --git a/src/static/liy-select/images/search.png b/src/static/liy-select/images/search.png new file mode 100644 index 0000000000000000000000000000000000000000..48ff045b527ed0c02385f2f3fb3b0227f605be97 GIT binary patch literal 40266 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�O~bWm)WG%JLg`JFVvyf zpVu)z``?i&pc7nL8VKl|cM1W=<_IeBr!{66j&kAUqYCSm>hFc;pO@%(GXOV4{90M!sp>|lL z`1iM3@H5}KX8&>km$)34?(`NtjBWV+OY<3Sblf5!b$W#OXC^>guLZnzMj*$@U26EZ z*+5{Zka8*UKNCYmq6@N<`H2ub(EgZX@DLCiQRUpW`X{FNC_Vre#sAYFU|8M&&)1k6 zeS82DFMUWjaQ#S%$btW8B?$s)&i|42*P8qv*Zxn|{;Jjg4;nggbehrN>Z3fq^yjC* OKjm8*H$N%dfBHX&n_H3q literal 0 HcmV?d00001 diff --git a/src/static/liy-select/images/void.png b/src/static/liy-select/images/void.png new file mode 100644 index 0000000000000000000000000000000000000000..8d8ab05543617fcd4dcaba4093deb28bb9b27d45 GIT binary patch literal 53985 zcmd42^K+f=_dT4(R%5#{Pi#Altu}TVr?DHH*tSn>qp@u@wyh`a>+_!Z{t3?yXEJl< zUidM*1q94%x`wi?s?pK&;9-il=W+a{3I-diV8Uo1#aN3Ye&OdJ3%Y^$~XC> z4!T9kHmn4%hr$2|l~n{^wSl|ISvhAZAN>M_HsJWqXf9w>#d1gT|~pkQiu>Ljf-t~(fB<9_l!L__V- z`zdE4_U{;pgnmp}nav7GyJZRfN#;m8p@wU8RN4jc^E{SagIqVcXg7$(CsAQ%tN3=@ zRgWVh9nnYtKh!hmmc<&?k0)q8!+IXkMcFO!EqNoE-_nAKFPFbkYGkv6)zH0a1Sq>9 zzN@Q`b897lMN`V(L_oXgAouw+eLF9doELB?>jWoVo$G`q^CKaFg$0KowLdSBW%8$g zM*`gn^w#cS>so+;E|^k-4^fw6F@5LZQx;zPu5HOI&7KYMPrlb1?tI@+D48jke!rLZ zpjzjSj-D?50xr_z;0O!u?@Pk`2i6>PU74Qwh^csCq@XHV5lnr#J3Du=9z$0Tx1V8_ z^w|y(Q1(h31WU^U4S>paecz z*_0a+%5#I;x<%(nyZcBaufxT_VwX(!kV4}%Kj-Pn%Ob1@XAK$LR^&+mTKC_x zxWQS(k?DKN#m6=n@vXmx)o>ow6vbUDqV-{-a*f?vqchy;J!R<&=Gq^fgy9b10B`Wf z5*bh(J}*QqG+U!yxE8kMYJobgF*X3>JzKcl_2~XK1X+12iLoE0iL%Cul582>n4R%4zjf9JBcctIpwrme78|d{vvPlBY z&*N+gRI*lk4pvZEicV}9FD0Qc=EM+jgpl0?Z#kz(jr2q7J7_lbsPm3lpWzW#9njpi z-#>CU;&QH@bTJt^qmc>Wey0ufB($Sg_{$>gE!?b4<`}{CCjASVs#Wq#!BZYxRK3sp zWKOsIa+wz>$X??ae(>dA>S#iq`B*=NfNiP~ML*7dmDDEac7LYlUzI6&pR=ytSWZcM z6$jm3uOjks(3KAfkTgN4uP--9r>QzX9p%)FzO8kyfhHJVOB21tNLLF6R3$L}<+C{? z5tom*$CAZsit?nt@+X{;QWNs+l{y(~04vp|w#gL1zTjbD$jG8R{cK@*{LtuJ0oCqe z9Z8vO+o7-^bmO%JHHpf;&@o~Dpyh7D8TE4#LRO&W^HHqx^<(m(`7Iy>T(66lk$>5H zrr4@gq)F6=AwS?BX2?c$y++Bu+e06P$WBI^zz?J6h06<|JZGp2bo^?Hm0}a^ncedV zrq@D5H;xSS!aou{H8*EHvs_731F>GWvLpaY;1d860b= zm_7|fvBTqaM786y5;pQDE`bxe)QoL!lV@xFb^KvWq^nA8v}AD~$FQb`teYQ$nHX=c zpZ(doWCNDxcnOpTI_LlL(aNss9`us?RFH3*P{mWxix6Nw02~{n1`N~T^b50Tx@hJU{HgdY9LGLL& zv8wRouwe#XC!V=G2m z<^ko-P4(?}Rb*Agr1JaBn~jkxO#x4y6Wa$^P0yif{RJygGW(;;rAAArxL_XZU=%1e zEs?r&d1q>sUH?}n9sHW}ee+pJ6(vQC8qmgU*Rrv^M-lb)C>br6aJN)(4wi$q*8FW5?k7Rw~(ihhAn6BeQb5UUQi$Am(X3;WIVq~0ih zfUt`TdVGs4{IV$=i*Z7KQx-}uD-`VMFtr0$AgM*dhX-T?~ zCd?n-;~mx{9E}VmO4=_dk!EDw(I++@J^g{{dKT6;@2j@r;@s-bl!2|w8bW*6e`5~p z5;fb`hr{*!ygPIEDBa*3EboF+#(p9NB;LLa`=Oh+cZD~?7rzutYXn)#k;>}8v%6DR zpMb<&qdj;S&tj2>7~%9Jaw!4 z%hdjO7B(j+ZZKGm>>nb504!*Wg636^hB+Euol88WX$29PtiC;)B}+z7Sv~1|!JTME zI{ovOUj~ia<3SrFj#>RjnHXWU)^znRb$LYxn+;WD>-fE4hc&j;)<8L21N-ugyc=p!5 za0$(4Au)w{u2bl1okM2K1ZKFJBlC(`ri~`olQoH{>6XjEg68v45)W^+Q+UB{jGee6 z6Q@i&W+6>SwFw&`Lq}VdRhsWhT>jj;bjuH2K)wR zI&=np6Pz4q%N#{X6X&MeP6>7LBX;heq#NAGgR-aN6399|_V-@AWJ=B)HU>nRMu1fj zO#cNduZW3X9CL}--#;yP<8(G+L_^K$rf`YL9-5I!k-o%mZ^S{arWz23|H))-DY$gmLjN9Jbmj2UTBo)Da#j}wL)oP-fA74 zdI^UUaw-Fs4$GHXO~K`ST9%ZThmsDRWm0f;Pumcfd#8b9?orvn8bo-|*9NC+ltx>% z5$ymiSXcR1j9*oMI|UA8q`*&iVyByol;O;Bq0d+E3z91!!>*jW?mQ;)W)CGHp##%iTow$)YFU-V(2H z5)_tAS1!sKQxXI_L!SG**q$;4)4Ajm0rA8yvz4ZM1*VAodbHn7qvis&8x=tMy(dFM zP$|LU7d@5LOk?3X|F*ibqYjCRV)5t=QjFtqfSEj?(Ju0c$7p>te#mfY1}BKH-?Z?> zHgD-+o5AR)W4FmY$UX@|4Oita`vdp$m^c_~VY^O)zj38k&ju{iqJyly46@GQSnV)u z&#;#iYC7h=$dQi-8iJaNy<_jR-r)gJ0&7Gi>Z^?7jC`ps!`v*PJx$ zP!Q8s5~f($WFj)Yp;Q>Kym}QxZ2Xa-nQ*YOj?E*6-i4hXQg;Yvr@g1d5Fo&)vB~y* z;&KsPU@Mt{SBlt&$JEjNJcwJG=tizwKaniOcI?wq=3C_JS5WxO)fxFI+rF!JPL!`9 zP1t=-^0VA$E>N|#)Z837%QP#DN>EVsy0wO0ijk-gKn6=<132M7oxX?F^{c9wMUbqm&P0VRBrouIV={-;oR zWykLu7rPRLXSO>>;Z$9)7X8IQn$2n-Z1%6yzvLsBEn_&IDUo7J?+31?Slr;ARUqq- zoWjULX}X504JUtF*z(!#73uj^IV7OWvhFLko|2N+7hMA)DV4r9CwekywXzQg7*>pE z+umE%OwX-%R!^-|PVF$I4a85_WLS3il-PQG5PT8k{=ZBwMriZ5QHI^5_$6;bG6A_B z9u#}j;I$34VXGO~sXANU;GVEP`*-7P!3|r$+qh}AcAA+;hZdX(w(7jlSoHq6BCk~k zC1@hXg`J}$)^$5K6ln>MAyIR3IgIX;)bAjH?k{3WwNB(SC9IK{E%T-X$_bv#8hrwp zsAYl^PdrQMpcU4ZeY^2azN#=mYp&7By)5VT4#)4`rNfLqrs}KRXpX;tW{S#nc`$lz z>C1ZrS%_*ZbD1M$jL3=1l&OG!du|cJ0h-lhTPYM;IWQ}$Z2pvshZ$jEet(xuj4tWj zoMQ5h@AKSiC!h^*{4)_)DTTmDGU7lzvcnYRy4Q9p9lVV1T~oso=}a&;0&`>{%awH> z?%6XW#7IQzWonNiO#x%T*?zx$&kDZS_i!n1=vG0sJgvsY^cPU$pQAHa<{64uMkJs43)~tx}}x(Bk6W zq5^%}kq?Ay*ovAo7W&)R<4D~!@y&p1G`O@!o}l4W0C7g1cZF{K(g5}t>Pe+mNQxlW z#?JA`RyaaHn5T5P6E3}kKTXU;4dx_`c?A(bT>%k>@1so zf}&O7HQLCVvMl+jLWxRK!6qyqcNNvLNs0}`01p?!9q+ePcITKM{nly}DmA2sN?Wa@ zV`a>KYbe@{?T|n?;cx(Ll0-!f@2Q?$b&$)PZ<0yf!}4=trMaP*660+t@*6^nRoT~94jX0O>7O29Ek_W#sJjbZWETIBzX2WEA-sqZnXmk}_UU)n}ai)|#4sd8{ zO(=z8BC47OG@c1P8dr1fE8R*P*o0~IO1FZA$C5zpH0`0K_GH)rgDoD1K`TOW0|FC8AZmZ%f{3)ZbQFTTGr$kCS}E# z&pZLAF!5ozVuw{*dwNFH6hnX6?9}laGzyA9AH{*7Jy|1ssWgiUV1RL1OcBIQXS(m< zvRI4E9W&4%^%M%O-Q}@u$uS2clW&@(3A;ZljJ@~7S2b=Ew=~CP+B7F_2Oe(G>1G~b zsIaPiDp1eJ7@M5_x^_-@GsiJw!GAu4`l8Q<%eO|;l8wsf^QlPZkCbWCPA&W@V{KE- z?L})iD}A@j$h3Fm=!B&_j+?$8t6}&ur=u9wk=|l@;&i+*z**MTJ#G0#r>`?n(=2kc z(Q~P5o=WAl;O5j1E2epu3Fu>6iL>S)G5fdnZqn##3y~7mfY-O$OT?iiOO=2K7AgGr zff%#SyT!uLng@7QigzJLdpUXuj@x3a04KS3?uqjh%aRGEn+jsYi=arx*MGZj&F_#3 z2C1#`Nf)$bk*V@4bj}nqDzt-#1!BcFvV=BQXDZ*~{-7pYwh^6(1dQEzz<_1jcz5RM zsy}Iok0sabJyeE%Y|ba^a*zZi<>k~w<9H*w=K)x_qnKSznPskkT2Brn9&l_;WAIXH z92!W4Am9AloUA|8Sj?rTekLFl3*X?j()Yn(;(J8U|4|FS`BYdkR)__0Xq6j#5&$--oKZ9PY8ziqqeh+GntWUX zaOHRN;GERn@4<{{CVoE1ZHHvKk6Bj2l2Mqe!kLAQd){qA#Lkm+HHhrX-vAl*p>cUh zpATg}A1Tg9b7*o>EeFc$@kF83nAM>&eKAkkUQy2RjBs#v8C5jH!5h=nGdpHYHY@~# zMx(YF+jn89qCW<2savs6x(X6Cs3m3SqfH}Ni#5AWRje4CE#JCShd>8sKFaF%)baL{ z^2o=?Jo>TD!QjubVN%hs;9h|bwRk|L@ayt9Oafmv5#y~mE>DBNIqP9hzfBvrgTouY zU+2+)!ATT?boKF!lKb!U_Ay%+Y22_mPrbURAa2ZKaPa;Kj1933NiR+oFaVqJ_v(Jh zSMVt&)va})-^+I9p10mvu#dgvg`C2I$rPJHNzXGS0PZTpaVFUj*l|i^f9{901uyZm zTXkC_rW1|=?)uC#grT=2<3wmRHTQQuutHizOeHGX;5#bs^Vor5)N;VgH?X``Gd)|^ z$?z5)j_mcgNFbaA3n(lOB91;aH;?ggVZ|}og}^}EM+@y;{N5j3_(SDnCGxqYFK3#m zy-<%e?)kRG(~wi(tuLwXZk7Atx!q%KH^`Ib15y1`Z~n45HQ~+Cg7HRbsIS+%59R3o zPziD=f{lXo-W;8Ks@61Qyz`9OkcrH*F0#CZb-0c!f{_VC4mfty&hn}TNvFUv_E?C- zxO{$RU|w`2&YxXv+ON2*&*#hh9@Q00(1BXcNh}psMsAwyS1)T?$TQ;DWqexQ+}!i1 za<_jlHTwdP$$#XAHh&9EijoD`w(bW9W?QLATxb3odSPcUQmHS24Z3!#q0c_Rt7J;> zH8$G(c_FUcx4-%j2^(%3-FVl(vm*bN2CKx zqzOS-{^{?KQ%YjLr@Y?>Wo?JkY(mcHy zFTuGIIB_ox)_%e8?ESeip5XR7iV-j6-8sn{t#1937i0voWui(p_k)3`lwj|>B$w)%pKzof{Y$2+@ zNR27F*@OAY2O3#PkBYT?VOBFDE!F zkIg40vziR;#cx^8#RH|bbT5EO6HF;akKd2@DyN8D-{(tzO%N@>4qu7Xh<33XOe<8cRx#}vF#Fh6@S4ELK12Cb#POV+H+a{(XM7`f z9`Wi&jNsi<9H%=|jc!y^Ul*c~_R}fm4goG%kS$ZJn^G)Y3#U;Tv12)%EJQ(^KDFFw z_sV6O(8~v{I6W^VAo1%wGiBwRCG*-%tL=@u${*D~9u<1MnUpQiZ?K;-T!WD1x}s%Gfpllz4MbOza$wVZ!i<*45CAZQ_xa%! zTXJjPrRK#d-h2d4H0ZP-2^po=kr(WaRK9;_V&!In*=URQiZCvbYJQ}&4Do= zv#|1V<2Py3wdz>WmS(itBGE`-Hlt@T4S(-bHbQ#n61ngHV1)@;NGYlxycR30D}no! ze$de16d5ooJ_zA*(N3z-d7BO_2RRb%6Rk8veev+-0xA2E!JIn+_iMFy`FWykLGN#qAJTa(0* z8ubQkB_E&v0@9T}5QUD%6q523^0}I|l(I+|C!=%6sPbiH^{#<&2}FLAX4tcyU#J+E z$ciRIX<{{MI{1E1-}8iz8$CJWuBCHAJQOyH!aSpVWQ5S}8f1?hmVWd3Ke&sLyqVpz zx!}{07#`dN_kA!BbzrFB`kxk{igY>=HVI~i`OrhWxp4cEC5OIJ4ZcvW7%078Fm|{` zb*t1;B(KxsvfSXf0_Jj}-z0S2HjcnRM26&-_`9PmK>;)QYCKSaN2E z9?v76us#4;T;b{O#8FCSzZ=%kG6kmcXR0&xE+dCj5$R^D#c1$T2KC&GYg&^3kBCSc z+YLIXIBm>@zC*^vV6t>s;!EA2A!v^jRb2XfKR<&UwO_F=fpYt8We4=O z4(tguu!r^-amG&<&?Z70=0Gvo3MSjwBpn9;H$J+Ef{p4lw6Wjl@i#~^4hOAXAp%A8;YNzxc` zr#J#fn+F4P4kX_nf{KxzGXl=otI?$6YdPLhmU~QaSVQ8!wJ2S`PA0moX+PC}HG!+4 za?m6@4~aTY8yvOg2gUz1WZ`W4*d|QIb^NzYFt@SPl=~yFuP)D0EiOx+y)ka{6VK3- zfGP~U!qxEt$vu~qAgIzfzYA-{{;gjIiK=&zJJxmT)TI?DVN^KNZRRJ2KyI^Y>8&>Q z*(9v)>&kiz+W=)W{vVTl3y!ge*-Wd_(BNT!T!nC~wKbpZ$`{JCAq719{GnwSKV*GT zyD*ZaqhB+iBJ2_#t){)xy=^>KV&H4IOvz#2>Q`AWHbx1o!@o;t|E^R~LsQeee)^F@ zsf%nn2~%s=Z}llQkUJ6H z6Pi2>5N?XBu+vIR>hJHD6MOisFVYk){PhX`<3PcZLRLUykM?UcUhmDW-x$&zM(dH+ z;`SE7E*Z#Z9NWy}N%=;s%6)M(25Kc#9ZoU4Y5bqXj_v93@hwtN9b+N^=*2s9cdc8Wir0VjLVXzJ%iOfPh3x01# z1^e63t6@h+4~~~@l7Clyt25gU?`#Zd<6a))+{df#U)&%F;Wn>7F&{E?baWbj1NJ-b zzohO-VPTApm<}Lhjk(#TGiM&^)S}~)Ab}Eb<3^5?05EQN2Bv)4u?f6w_m0gh56QNV z4b8ZSQQvgD$1}c0P5pr1qiXx}rc325KT2>%mbg0_ba{FCjQye4^7&X_3Mut}=xshO zEq&+ljLIq;SCD7XM3|I|w{*WQK9m{Ak|iQ?J>I0UwKKQrk-P|!UWw2 z=Ovah9Fn0;jE&JqRvn5;>ut2ubD9Y5R$I(a>A(g=qKM!T^zICJcV8g$GNl#g22FhV&F6T?4Ymt7g#X5>e10p$ zy7BT#L>+vpGxJ7TFxyOtGk{1M*s3Zu%=H)kx6mfFiK}9!A-;9j0OdTAh5?HEl-7U| z<(x$OMJS|%?={)Nr5VBA(O|x^G9@rc=H4H6Ln`-w?4Cb#W>&RdyFbSs!HGh!@gkJ2 zRZKJzx>T8vF*8Eb+SWIB_YSwLo|>7NskN>ViKzofH##Tv{Cev9H@g3A@Een8+IY@l#lEw7+NuTtfzHK%Z*^;|AIncz<+^^y7XU zr&ZyVThEHaJT7E5j`?DN)>(lS)q{kV;_G#j>A!b~kbbveA34COzG!;wbnNZwfp(e= zsk>0Y$YoyQeeDrL&uMZ!l7cmd6OZUozdhgq%(w&LBghX()rFVF@Ev%ys&1n2WYzt% z^h1MSSii;)+Hm}m`qJ2htyD-6z*X2WJ^OWdqNwwpMjGWAcfT?&)L_HO>-AS^<1WSU z!eM^}uYqJ$3H=!xR-F*&?vI02eLLi0v;nwQ-9OvtLVe{4myNHT3E{@Ejc3E7xx43~ zDCaVWIovEd?%MZG#UtCfiWO8&oh^=jwN==(cvCFP(#hAg&%PzJof|X$OFa$%xb`s% znEg9*i0kBnCj}SrBO(vVe%NE3R#9jn-V<}a;0DC+DhDGEiY45aqWGT9vODy+t5RX6 z&j^3@a;T_PN@Gn*NPFjhTv}{p^&f&KhA=wYf|H9tnw#Mx*An1oV7FPP81sz}>D_bpFIPdQt`Qg6MMo%nrqz5VDay6OKh ziu&VPe2YlHv+2j&*u+m7^9LfR3#6frI3gU-r}!H7DvSGHD0IHA#qCBu4tdJ8qNLP7 zsQ;v(kba*~HL(Ld&f8m%(oDTOW}k}Um3hHySs|zSnJ!dKHsHMUX>JWFyB;^1ZO-+l ze!?{Q<%j;u8~-jt*mC!t_WRia?2__J`~t@N?RhzUJGCZxm6n;${yq0x6()L<+Wfio zZ@X!C@@8i&>`cnFsynun(E-9FE0C+tiCp+Y1E&Oar&53t) z47;G$TIL=01+`_p<@HS^tzzZm@&$crXkI(cB^QyS40ZEdcL}#R3(^-m6)CA%ELZ^8%T8SghT=PYuAZG)D(i-f#(>jk z-KJbNR0t1JvD|NE5$Qw$CK(A<+hw(|8esq1&io%_7|y}oFB)mwH4eXM01hheQ@@xi zVzSvQY9A8TXJebqY(~$S5|Cg~ttEN=iZ={KaJ`!L;EV)+nC;dx5-g8Tjnk3-3kiRH zuL%oYCemcU?{z4ymH1u?ovfN2jm;lAPm_Px<5sT1^mGCvfhX9<-%cM-i!0)DvHT%` ztVNA3i29!gtNsLf{FyrR`4s(1yraRsTy$IgGf34+S#e0UTpl_~us=#CXo0S^|B9ea zyT1=F%0tlZ;xRVT8Z?i`3e~ddy}>LvmiAg?<?(>13L|OpJE4QI8lz z%=};lqh`3CJ4muPLaw?C>omhMmCdy!DqscW0Dg?rI~EmF(sDxEZOKKKERoF!x~(-_ zK8HYQFaN9R4|$q3qU*8Y8FlL0uS#weSZYlmodH2rn za*|0`jcT;tJf*fZ8`1;rt)4OsgVi)K#n_@*nx93~D-J##bx8*KOm?n6qikwO`$0+X z-KAsy=-Dm=`N0J7;{4M~jXzbu|DCv;4pLpLm*2VJIX3sCgI4y+7-?*YK$~xW9lx~R z=6GC1$6EZcvCZxPJFBwQ(zD}+FH10?74o5LZe^vjq2dfuE8_pkqlT>NB(SXBR=~~n zY%KehBW`*dJjZ$&>1!6{T%vM76MR^f^{9$XLGe?u$=NUGiWRq6RFIs_HpZs?=#VjW zI$8N1Uagryv&OI>&H*{wVkD&bzU#r$p zHL-f;w9TS)&-k=lHxIKno3*WoQzCYP#fJTE2IMFlyl4=t19no`{9U#;xg`&9=1#ts zF^>W49dN8r*050ngjuC#1=7&f2xKLx}<=n ziQXe#!|zz~a#%xeyJM<(-+|mZOCU#}#eUhp_kB{Uh6eS~J)@KJ1t_)AAicZk73vz$ z%$vY(8SZ_6KH7H3C(|91k(O$QHLX{)fuoi9FOLw!45eZ3M|aPnlEi;Fihmwu)l()7 z|71`?wEA^|z+Or;zjxTL&;($Rgm6@*`Zkr3hUdf56gaK?AJ7=KlQTo&&Wrxo6WMQ; z>2ADj$eG6dYUu2}n3}6tn8Zk`vT7#_sk{G`eZZ+i$b{#%_wH(>1yij*FD!P{ARS$h z({zS<3WrLq(Q_qI{?uds8HwWf9~lus#X`{r;$xjlUcIZu%bpskJnWOoXim?U zamXXHiP>k5#_70rTIl^WI#iKFPzXGo*vPZMnem)vjZX>#KVee0z_Jdk{_r;d!QllMdhg9(dzhDA~uMo3^uIMiXzv)}+ zfF%o@F}X0?FkIq^jApBv4iMu-!Oo5*93tL-VRlYve_Xr^g$cvJ59}KqmH6Yn1144Da_xy`uPSvwEQnqa4`NF*F54V2qj}P?8^bc{I(oc z%H@l~j>Oq7%=*=LN*jPxuo<`}OBk7)h}3;L(gw5>K?;k_{4`pop`fUDhKgUSdbD-A z4HU$?`7Xu#KdZvK{Ne8X=Xr0P9^ogL;2!hm7p99V2lX=hqvvxc0P3FQwgjBeN)FD5 zuFa+DC*U%Jac2H4Z^Cm_?iUFjOXduhT=g_EV7q&lC-?EnY{&Olu?Zg=j(>E=zpDq% zRbnGQyNxX)pBg@4zuCp-(cQb88tkg8T`Z%VNvPuS(R;gv`_CJfw=Lk@esz3Eexbo} zc|o!KR1h}$@aHAl-LcRjWE3+No>OnV=DZxWk%m<@~aX=0n z;n;OA1UVo;#nXn!VN2B!UKQ<)(ch3`E+EFNfb7N=9|R=-HmGUjkV6A-H;DZ2O zPd<;{_QuGsR>urP+vCukwBs|@r3@qnJJlq6tGjS^rj*r$R9vd0)jJQr1n3OJ$9wB` zZjfrF{Hq5D(kjEAb^!0QG4=Hd!xpRP4}#}e*)TlH8O~EzMnWbVomXq%pxEMG0`K{3G27ZLY)l|Y@L8*_8fG6@deUW%J z%Ug-Bmg{&FJL2_njN@RAkT$&>WbKscTD9M<&?z?iU8-zWq|#^IQ;)6Ynz#*q_5y{< z<5nrG|APW%CU69*)$9EUJ39qi?@wHvWog5;@wdAUX!L$~v45;3V0r|uoI7SHOsEm9 z4%Bvi-H&1MU( z6ImnB@469ea7OFJ)XUY{P8ARhnaxZSU7uEGr3Lgad~EJdB4Sh;bPRo{P^w$9U^e#M zMX|+`;GHHvixdFkMsCEVuPf#}14h*z|2S%Mo)Hpj48XLY{}+T0TCPW4Mg7r9q9&Zi zTs&RUE5OZh#uCi2q^omq_0X4CrT8tDjViwC@d_yL1Q+xzS09f<;r4EeG_I%tp@&w? z!JNh@JdwV6)xY){`5i8rcMZhHPDdU;;ZubFH#iAFVu?3#4b;uU;Oi|ee4@yEm=n7) zfoH5CZRp*u_rXWfTY#2yK3zk!6<`bDkMcPdkhB5uS@^`)&J?f%@R3f}uUW=cZTVlp zY{5qLgDVx}OG04Ukf;B9Nk`Z)gS^VTN8I3Sm4HAQzMoE$U08I$qLWZGL@MKL&f4<8 zDPGW4;0ylxygnGOIzV8`wsvWjPyo6iN5vaNXl-W9LWaa;M)3<;sM*5TDZK`6e<1$p zil@`n*qz+BYioO806F5c^=)Tro@I&J2$J#Fua5y%*l;Q^+{g-~17`14G-Ck)2;HPd z5gtHes3roWq3w?gOV+2#+Y~oJYzlm4a*d}{Y=vCeNdL1PbNHs2JRax;U4a;;H3omck@+rp`=b6mT zWt;0zW7zHaq3x(|ye~pmb*@7WBi>9Ycf&y)NmY!HW1H=FT+LcFX6Rf64g30cK}#A+!!5jXnFHZC(>@t~_mv5| zYc$@i_&qv`7y-l;C$PsS{)w&6#s+qG<0+COk6XVSo;x=VlaMY6IZ45{G>VeY(j=O< zSGvgo)`VNviUg6v<3IsUIW{NAkDmTBH>LgUNUWFr3*sjg@)N6dE1t+@rqcGa+E!Mv zNn7Ms`-&Q-1nmuo>?qp7uNZ7I_p1)44WAt-|HkzjEIq=OgAyQyssHW|vWsm;ys?$^ zeNG5iMN62s=Fc1FWt$e{g$~v;QFSi7`KYwWubnElOxEE#^iF}s*e)|R@%rbl(@OzB zbX&TF4$Qh1!uX#&=3dctsx8i-r3K3jb+3Zfs7S5S-<|z(C*25CyT9z&tdvbDteWPi z>%^M&yb9A{xx$q^kV+t8c+u+S0zw-O)0MF?yWl{#EVI8z1D;i5h%@*-&K7e-TbXR) zt>}(1AhG=aGGURxSONboZIR83j{xrZ@!F;yx|~;e&+7=6tO)fgd}ntko-WI@K73U8 z+^zmvwMuLynOk}0Cffc6w~~&spjdai!edY|7XfNc*-jNm&kSlcCXEVHJ7 zKs3+Z1-BoH?7U)3QSy)ZS);>Y+mG5Oe_DMo%TbWOSwdxSS%$HMjBUN9AI$~Uex%sUJuEa zYFDU9%oo{>l{jSLnjq>s?Nba0pYt^>(vG~<{u?%%ZywZvQHuJ#1xOz9c6EFI92?}O z=Phrn#E**Flb|Dtdf?Z!HIcYNC#hnpM^{$)e55$GsgKjrD@|lnHESt-jh7O$Q_Oi z76p^WKD>DZx+KW$Gqm16isc04n`*<{J$ z_wUu4n*5`&5v6p$xu2ri(R21`u8&S6$3D*6xE*zP4VPoumPOgLVU`@r^+leNuj5?u zJPp?n&w1rcM0ta`#q>k~MO~G@lfTCA@ETu=BeH z>|Gn{h$taH-fudz{6#+!*|p_Cl#*&0wWe{QmH-p`<1WWCg9I8!0K}i<}Pxad&YzfF?vh(R$yqly1lBEvua8I zRBo~WmG)(gkC(B(I2lP`s}xwl^8wjKwZ{Yjj#V8BruaQF=xW7DOF%841zJeu(^>Yn zSZ>Wv@g^A62(@}h23|K|KQ}KexV*k0Gmc#W(?blN-RJ^}blY(=-R3Y36ENUT3>eMB z*nqX4KbOREucX)!ZfSq76P5$yQtIciJFZlyu`K0B4w5U;lQABRu-YAccEPin%+-rX zM(S`dn%7LyGDxL|jBkcP$1gt(7#mcuL-1%4hzAb}_eK=@P-sW`PfMyL5@w|M8AYuw zB!Uz7Zj??N;eI5x9<-v#V1oEZF11#+ZWre2tm~T|sq0yWVX0TKJ*bzNelr4Z$R(R< z`K3bv*y;XCAc&GB=q{Yo&@x-eucLjDj^EHbtJ#ZP{A+N*DtMR=l7v!O9YvglS45(R zzp4F|Cr;4nS#jL|^^<%0MaUR5?!D71Q>rG+wHrF5og=ka&+V zxonP|=6$kWW+QH|e{1#GNS@TU@2PV5j<0>T@02n%@Dq99+)VX>GOV#fxAYF4$tQ(% zPpf2ElY9fqmHyYNfN2A_3;(Cd_7NRxi`;}>PNHQv9ja7{NVbxiX<+xLC3!OFamhXu zDV3)w@0BO59$#*z`%ng1v+Ro1wVc6gE1=#wm9giKgHwPJH(%<*N>Ez2mo4h04t1yr z+*+{yB^iO-p=qqD+{zCg%zCF&y>@z!h^OGky!(e}5u?ZAN<6u9T6Kbmh<-eQ9tW8FBPRDvm`v*1+gj^Gqe4x_iJqZ zJnsX{%1ML!^!;Q5%`&JbYCY^O8M;X9%A@hG--YvQIxSu#5aW~!0gNJ}Z-Kq<=)4j{ex ze#+LD!t8I_ta*bbBU_~Xv;@^gPaKH{O@&9t!;su3Y=J;xM~%^n&{lsfqAGWpoa2Fj zu9F#rjEfRATW?PFco7pjaCoSJ5N2mMjC3%hfnoGB0r$FBsuJFIG@qbEm$8wzfSS5L z!{*1Benu$r?^W|pl2u(D(@)vpO_;+DOjyEKg$An_)r|rk+yB!7tf&dTIto?_-b_W6 z4B5bJ>e)SK{XCDPF){_R>lzsYVybj|cg3mwrMaW=h@N|HIJAq&cP zgMy9*c=DcVVEaM}_||#xWZ(tya+%c*k<9}4IJW`m;c_0#`Fb^S%dTNVE*}CV!hMRB z=PADjobx}B#Jtv$m9?Hd-;$gtdA|xd51Am~w(VbTF!_A4R8N?Cie=4j55{r2)EYk$ z+5hv;I*nVuvyNy!BO4u?Ms1}S=Ci$y0K+d7ZAlSlv0np|ZNu%wuTq@pc^E`d40@bN z#u#X}1w5G7nD?~VG5%wqo%l=)&n0K+z|;Tj5kVCxyvr8(1uEQ-E2A@wcKMC}>SM2{E_63=@dXy^a_($D$HSbi|;;=AIQ zyab)+KxHSot!Iw{wd|zHp|V3V@j~!@lkRf%Q1Xx*a1+J*h5F@=xDDIXbWCEj%50xw zvD!-(Qs2W8-bLRB0x&R;M4(C$ht2PfeX@$-()ryv(F+5OpSB5>0x1qO3Mt=QgjAL_ zWeOA1%qhmv+NN`!WAf?uIPE5uxwCDq(*8>QX>;V!bG1VhKw_}bnYCpT5Z5_!6|4s` zOPe{i62$-B_roT`9J+(j6<@4Rp{e?$*Vi4LT9#~49|i0GW9lrU;%tI#4Z(v34{pKT z32p&`1&2X{ySuvw3GNcy0}Sr&?hNkkL$Kk_ch)-V++Xu|R=?e~cU4zC4X3A`edV_? z%;q1jK0*Y;Vx=lBhOA{D4Q-OnMPln#3i8gG^ED^B+R@afB+k+z2&pszB~efwGwrI| zkDq83lxy~D*Y4u(3#$dr9YIyZwStgo<8E3JYk_jx19$3ZXMcvF zbh}KW0$>))ihy3a`^sI~Rq(zqW_ok1%0>|LBcEEmXSkg=CZ znZ%O@$BM5#SNZ85NRjD6qLG&g;QmVUwCJ>LeRafM=d;5n7?B-WFY!pJd0yImt(JFJ zJQq9s-1kMHL9FRTo^qpj$a^D>F0|dA?ZT1;4OP>2+P#x{e4)7@HOWGq6d7gccj&Au z>E7>5gzLlR4m|&hUk(wzTX(RyhZP?{-u(tEYv(-?5Xf}C&(o(LI6g+s?=A&aJo7^1 z+lF1Y#5*Z$esPrgN-fZSjAjR4%#J+=kqdF_W?jcOo|kY$78~yEo(pA!*LL;Vqs&DE<>lz7E9w^l9 zCKM_iOmyOnQ)(ervy|s!0Q~dpS$9MX@=8*oL{#SDR*8YJ5$6^8LB%nVfga4lg&Xsl zu7@^#li_eu?KKBxsFCMedN4>?q*}Ef_vqw;^W(6oHB!rp9}zbPTeq&B z7xCSMYb?xp$LZp|1aZPJqW{*m;_I{{-Omt@kERDL0_~C%SAgXRx!zo|OSl!>&W2W2iYR&7TCiAJtsD z^{Pk~Bd##GK}R@``hhpjQC+N|)it~J*U!o{xx46T0+718)kgB@$ykpHx_z`pd3G(y zWb@kHTpCW3g!$~^M*-Dkk(#}cn!beUwFjk?Ppig1e#J=9;*>tIaQU=yA}p6FY`wvW z!Wwqek*mARC0!7|Ka6kVkU!ga?q&I7=5t^?1v&5@IZf!+Y+}sM&tLyrMNR);{48|V zWV54X_@=r7v>WpkaRFn$Zrg03m68cuap;yo*TE9nOTS&Ne7E=Wp^WY#D^&8OWV=lt zCy*Gw#dt(2VXi(`r$rqLAwwT;*)b|# z2boI|=YBqvaO32M$7<2FHahRdM6PVhlR){0o7Mp9?+DXPfFjgiYHFOhXPf&-M?C3`AF-X=~_l z*%APMZFZ>Ls9n;uE<$$HrRW2k*qJeKHQb@dNR6q+zc#=MAM!J~B6jw*>Vk#l8yheLUOcJ)qW03jym+rX_J{VbWhD!> zbH@$9?4KV$C&Vw(W2huMv#7xKthyX+7jHdEUe|SzE$sVqElIV*M%1k8M6nJvexljr ziqGR4(0v5Ny0`m{!@sVK=b|fjdIdyAgG0CnAihu_%pL_TIy4%Hwfme z2B3_BBA;TlzJpclnh7gVh}NWQ<7MjFf@;@Kf+xrM1&XYOaa3*rPV{}72g4*Jc>!Q* zba@kJ?NBJQL*w#dOM#|`lJ_>UTh^afo~zm>_$sl+kR z11eBN)2iiLwW?zhllf0)JB}Y?ht`=}td$RopX|TP$T6g6<%H$^%g76h-{6B=ZKCtK zz#4UTp1|uY>syZTblMEjx(d7b3!X_AeLq?5$Mhd2Wf$0_s?M&D?1WoDu;EECaxr5x zR%!dR>h^>P1Ch5Jj-m!uuGQhVm)J}k$`piVDF$IOgH=>1uoFuk=Z6x<-ML_WVRi-2 z^AD|g7V*%{iHKe`j(f<>>x@&Ps_0%{8z{%aC9Msh6OoyiW%+JKmuk)IuorK#0LBh8GA~j@(x|tXjD9bJl5hBD&8q9A8+FwAT_nl8CD7 z5}7P{BTa?9>W$dx%%!RzM(i8m5f~Alm=JeIa=b$IeM+NL!&qiE?8_5k|IS1(Rca@v zJJ|5LvkS6RXUchc`PJTSV8i7oqx!S|S`xX}=xfri;Sjld1x>!t`upTZ70tHEKx$2R?j;WBiD@)u&C7Xf*^Xp)=v9*I=L4M(2x%U49sKF`U%JQyGo^(O zhAOuwJ^b=Ui{C=J|Iud)czCVi$E=;iG3prSg)dQLq|*1npa$OYW8s!!jt`r{WXkfBgc zxt#jsqR44URD3Rb21ouX^Y28fd-EJ)-`Qz+IP;p|{YJ*<-G0qzd-ve;zobXsk0MXX zk8DqUwQIo7{<{a$VZ=2BFx4aQXhy#ECe_(Z%YTp}zKd{F4`w9yFV_?v)NfZ9xzh$P z2EhDPT6wkxT<#2gSh+~OPLZ*onC>Z}-Dx2xX?GU|e~GZ!Kp#;Y7T$c}(G7Mxm{_^0 zY&$Ed913$?-q_#(1&2CD^veU5DXvdmSVcPncLOTX!2Dh8RwAhwAkBJEp1eTIfO69u zu2W>Q;Cd8y&sEn!{7!e*3;cu?<4%iJA^Q6b&lbwGKj)(QVXd<7j{m>;NB@tkdVtra z;>m9qTW^Ky+tSnRgP9SZRRD+5zXu!1AFq4lH~^S0+ngT!t6vG~vVyp^v?N+1h9+#m z_mU1w9vmdIvA(afpG}m=Y#1e5ehG19ebvjpv=2Srl@72-nu`OAJiH(e_o^4b`uo_jIkU>`%2^)d$HMP`TF zeB98jZnlRe#NW)s6aO0e{9`784EW7h^K573y-BUKrZ~Ht862@G_UCmS&0mjFqb|EU zw0ntm?5m`ObNg9{2xJ~E$*;$4TK}6{3iz-dDs?#c$ zLjyf|VO?>gqUa9qXUhGf5z`n#1D6+B+j#*mq{*iyhF04+WW1Sn#5}rN6&9c6hN5Om zK6XxyE^%cgF#l}?e#A0aFFP`_cP}|SX~phxH(#<y6KJcMH5{nremJ zt?WjsXDn6+qJ@iMPEsmPItPQ`rP1s8n$dHWVyAW;DDQ0-?piD2y`1evDVAp^D-W7V zG!T$*9#FG1OZ%(ohK(kiO9?*uJR(w6JvM~@^)CJAiFR%@P+Z`xdc6vmT)CjS@*S&6 zA4+Ncpd=Fah1yS*g&G7(PkusO*U!eEyKo69_G)nh*x&1(Qe`ppb^v^d`07P@?ylv- zTnS!*21%r0j?4RIy7~p8uLpNqB`}aQRrYUE;s-GL-k47gOzYJRIf znC%e{sixK|4QmT)&9C%k;kE2k>b$^XH+yRn@8vbt%VpW_ZP2J6GZ^;xH~TLAj+$3tD0$8$K}zlJ&<4a)-9;YD5# zVz$uRe0@^OL1x`X-1SFtbLNU|@jfklf*)?ajumx2O`_^u5Yk$#j)e{ zMR9!Bi#CYoHmKg|A6%8+@;;uql)sg1fc(dYd|&n))%=&pmN%@p7mzd(>@P3TRlR6l z{X2pLYVL!w?O@S#mu436+(9^6I?hg0>fBZw5D;!?`nff?nv(O!{6sVMP0p~q$sdWd zmjY~L!_6)hgwm4rr2O|PowZ8y8wp82-CAupHxlxPEP zrKyiARwyhUo;WwukB>iuFdZ}gp!;4eTFcX+>I=vu^2}P03rCBtFzWhsLJ*Ou+ z)tnieggG@wa10sS)Z(VDQmy z*=mNvOLMZ(vukn0XyW`IPH-wHU2Z$O`W(8J<&keft{OeTIEF6OJiKdXL8Xv*B_(f`w4*S`^hxJ zNL+H;zYf;LqiB~j5jMcZP&*Ks3T^Tj-s0`mh$X4*Etj!^Vqf|#K7*>nNIz&8REjBT zINK|Jk)biAA#C{McLDYt5Tlfhl+Co)q0x`+ISA#P=o6~-!eNiOH!In6XW|MyLurb0 zjUx5I;(Umm9NHhMTu=ianir0DSxMr@+-bEv&&H6N-1Gk2LfOGaU8g^wL?&o2i1IF> zE*k%k2Qs@i|EaYSwy5H-&hQ{GbNyGf|8GZ*-{n35VED2_O^#@W-EhWjO%vH8$6!T8 zXNf>r(U40}Yctd0Ks@l=Jn&Yt7#Fg>us(LK(j z)J&p|#IG=8J%>~ih+j20KASKbmMl0`Ka>JBWz-SLLxxsnv)n6?`1m#JUqz77UI%e- z5rT@Pw&m#_Fh*)fLOI*78>fINFniWfP5y~^)3+JD6-=&Fl$n6MYZ7NorTQCwjF=iaO9i9ZTHPiYY{ z(QZJ`sP8iK@GZ1-98YntfS%jI-`M_T5(ci^A5vZEC@MAN{>YrXlCH2$gjq*m> z!g=_h6n+;4G!Z6%&vFG=!%r!l5hR;A@mZTSPG%$O2Yba6F)x}?AnpK)|47T&-)9(m zl#~AoIe1R=BzdCn%ILJ5gfuqxV}83@O03ITo*rymqL5!K(yQ&o&bW135EfHsRQy|Z zILzj@19Dx?irxTTW3AqxUxcgcr8kDkuftbg7Fza2Y9 z%GrqLNB3NB35ly0omAuii);J%DwJKEej=d0w->1(;;Fq!t9fTMo5G$dB z4-P-G3_bW=I5cKEAfD6^8Uk-Sng$tKEa(4BJlF8+*eh;=%@* zM{Q;#Qk?@MZW#VvHxlbIvvq=+tqjV7H7xu^Nx{c3oT&?BHVAXn`5G%3qrr0zaEvXA zI{7lsN++v4l+CR#|MgIAfnQ@IPNd22SA1%c(BpTl!v_;x@|r9Knk9ty_Z4j7W+6Qt^UD`S+q831iUCb9xWOzUx)AU7`O5kew!zJ(8&^$SH$W8Mx<7B zEeVValMrgGjAWL*TWh%ontmREwcM%CI({$PLo}h2N9>u8C*P#T<~--_vqKYX6c<3l zS=JLg2TU(kEoE|4t4dk-B;WEUPU8?_C+1YuIt4K{5gWz#cdHKbSk}aAI<2cMR3(yxvJ67c#_R-~o9{FgXISe#LIui|eVYk9ju>Fq z5{%c-E_~3Y^mAsx)81MW^Wn7MiSoplVPwEWXkjLV`s zNdCLJwmr_|cu3Jtbmt?A+#%cvg+9q*4s_1Z1iNHahgE^a1ZWI(N;=el9_E7@LKOJj z{PLCa@p|3Zs@LJpDWUA9za9P0zsJnE`$Aiwp3ChEw!l-#GcC5GESH2RRVM$u_b3lA z)oY=_FP=dqUcX2YKASJKwmhvh+q9(Cb)$dGH0!${E6}`U=GS?STsm^9Z|(R`Y=d)j zR-*sm?_j`E>a`L;iDKL=^i+-NF?(pI9ZkYiE*Vs^4jGtfI9e&maLmAgiO9T>$rO$K z*+t%Ef;-2+&op79zBAHas-ciZt!P?p<3%SLizt7LCh>re1RZt@LUV#e{g4?SojZrF_&k{ z7V$H}b$LoTxftoblwb{I8qaw7WSFB1tR-0iX}8)r{q+_Z?4gXA276(K(q0)AEcFfV zIpp)qjo^O(c1!DV{?z&3wQuZvomiLbmU8R<$Rm8pm+^^WFeqAQw~jj20m_K)W+Q_a zW{9-L<$Ud$lk;!fphoW`3xg0fQZE-(-mV=Q`(@l+*&pD-k`hN=Il~W47l(HJWMnfD z?QXs>=pJNuH?kmhCi+mU%a6gGQ>D<^ry~N-YGyW8-=Ath)=gP1dRVem2K~Q)>M;_T zA;ifWWTBRP;<9j+zk8}9BYpOt>dUp!_n#Hj}vc`JK?LtUgi(97Y zkJ7eDe0urp#7(6l=|^lHd#MKJ=9Vo4ZiKRGS4yJ6kYO zo1mta`mCcC!TSSuJJzLlTc(XCi&Fm=mTJD8+qX< zr3HsCk5}$VlG^3~N!A;cYfBaB$uhe&03u4MetjYmv*Z@js%=W-DxweN;kpE#`*?yw zag;2P3T<8LQkd^0>rBhbdby=b^=t_{jcZcvW@9BL_qnjDLG(InNgJijUok2_>Jzvw z%3~P5780QdFHZejHRNy*$u61rJlaIP8Qb)g;K{=$wdlTrwJEYY*Q!;ncHjDk6R`66 zzF2V&z0*x-xHIJFeX};1w-wRe_GYIhD5mk7RQ7vJ^EZ4d;~G17+5U@7yJ$}B2Fn~o zZFwW+KKk1|@OXfmMl{P`DL~`J@^t*fLH=W00bxp8&jD;Ra@DfqN!!vT{6gt<7;#Lk z&Ahg~HA5+^@wodDn*3USlOb;}6Q<>F{6-1w+DEHU$K@A11M0H|qRXGn%{D*o)4jOq z3k%4iny-6E13>^`3yt7ORsj__PO-c_j>c-yPF(8 z8>(U^S__#8vesxhuRBjk>K*8B3tL!v@_$8@$8XS^(#yC+u^t@Ou&3XeS`8|`(ha6_ z)4Em_g_GdxX>UIIaf^ZDJ?#JO1>ku|F#*)12AIxHU+z$Rc_Z4gm9}|=SV11D65YBQ zDM~o^8kuT#;s$bno|I5+iZ6&2gATTh<*;KT53Jt_C~}yi31uSw80?bAFV0RtH!R|M zU&338M9GoHp$n3&LQeJLM@Gxa1paBQ*1LOloWG|lv3i`F*h31oCOvg4*r^F#g#tTi z{Hd10pgZ7fm$T+gdgZ%X#0@2T&8<2PcM785;v)5>cnfHGOtwJK40{9e8{`WjKl^Lgt!bujcmXlefL6AmlGGF{bom+i5YLoatX6vJ-c*8@Qgbhk2fQxU;5|uGjaBbP5UzXrt zCzGQ188G$$DCZF`<%!mhRV7N^=U>b67;WA~{!1jLp(t=WFic%x^9n3M#1*wy?58<3 z3YC|o3DP~$Q|WR(mv^tD*s=fYhVFqE1zb*3w0cO*$s!hQ``Hy+KVv2dEn%+arvyca zQ%v<2=T3>PGifu-frY%lvyNwLMTb`S><8oAnhGnpZ&=H|B@v(Q7VQLr05{ZO3yc8utE`FQ9t3>~N0 zH{Xin4{OIW9!H)+%;RMr1FoRzgB!@$CNH zW$<;Nevk# zLq!vB!<&nlwm_{){i#v}7oIlS>GT^8rsP=})HqXTueM&R?B}9p1#a$d3?8WMPFJ#e zPYB3=`}_?kK?r)(C#o_3y;nd;9VGTH1bV8JeOTAx~tNQ=>@O(Z7UH7s} z_<`U+Lav)W0z7j29Pn7=nAJ?w?&#~^`-d{>J8dqEQ`b{6bjY?NDbgw?-^98kB448M z%g%Gy0?y@9RQRS)E)ykar%O$urGMv3wGZ`wi!%&e90##@szrhXqio|}^-DFGMc9j( z(Kwus`zsA)2%oH^Z5ksr3X|s}!ZLe`={L%icRms^t|-~u`Br<@KwK{nk!&#*9Gew+ z-7FRq$Czw6bFWaLw*=%8&i+53UlmFE`x*<=hre?6V0w5? z6v+txXNoMKn&Sk(nrGJ8PR8NJK-`^GSp;b+jRm3U8>s*{>+<@QB>oI9mhJM!roY%D zjVR9h9hzyGwCobHqOTz8Xbi!M_3?$N=BCZXN%nsE^#Z-AWNL;k$&b<OL#6;}wN1n1H-;Ff zpg4qJT{?QoooymVhX2owF={?)Z|~CkDT@-_s9+!@A^6Tx*|;!YI`*1f-kNUH<4092 zaD&sT;a8dx5ppaZ#N}Q;t}+;^-|*zC7|Jy{Tm@(U@nt5M=yGY4HWO-GGHdama?i|2B@|E@jyg2@7y|c%A-^YS(|0r9|Ep=rsZ08eP{e+!guKM zi`#L$$JLhXV#x+9Oom~-UvvIogW%4YAKq>zq(zF7Npvds1?r{s{y#6RlFZ3=p`BJa zHWEI@r3sX`S3LkYspkp&JdY%KgLz1t#=8JUq^`HS7EyyMnliu~CD(18{$9_&*E#6t zW}f=t0x3aJ;n?UNExHEC9{e3eZVvy&uS;nBn#*UnysBC@Wyz45;8O-9(9xG5M9lT4 zygB~)Q6cpQt>{>x<-zCY)e1z?AisXAq4y)Kqr1A$gn^qG`kuzR=zU9WGZ^UQ9@5VXmuYn?93 zdt3_REZnix!|3ysIVH#p-XjE^B~;g?cUu1x5@p>(Zui-y!y;q@v$6?v>fhp2p`;H` zD0(V+IjB$i+eA=Sm4{CnIo+hpGvCHd^U|1rofAM2X=*$$QZwN{9Fd!nJW*%PUW$te@@ zRg?A;UQ)O&+0t5u;F+3k3xdFL9#1>U>KAo|Zj|vQ2Ue^la+_MYMpt9=8Y#x*LqtIw zSK%E*MV?<17$J)pG0@T)qY})we$r{JTt_X4J7DfJlunI1g)W?qW$*k%?&*8z$fU)V zZFx{82-2F+^BrokTc5H!ZZ}21cTgOQ@S}uy(s@J5X`w{%v#&~-aegNbGh&s8TD8A8 zHMo{)Uj9WPt>t1`7!h;bk1_F@{Oz%&$?Q_U+$(hlABwp` z{K0peAkhNuBNz4eW!~~#OvCNz6@pvgUb=1$Mf4m$ycvqOpYbu3PTk=8zFHr*{Qa}l zP4kJpcnLAz({nHu%1(*tvdg$oi2!0VYqt#ZI70NLbc?uVGtlTEs89Y{u2 zPMTp4?Ax%R+Vv<2T768J^&g^I#Z2z46zXhwHFtUsKnF~v#hjabWJy5_sJHB~?e zNO?RYa6K^h*80hyj^}VUlI9H94(Q`)ty;+N{(_f#J|_Vi<$332zNk2{#sgW*ed?cz z7{^Z>`($->cv*Q!^rFqM7PxtIN}ISc9|}M-nJqLE#Ce`{vHq! zh{Xy+60kqF`E7|GBP)W1$^oAQNbP!boY9I3!}_wt>W_GqF$wX1Jj(%A8*N) zB=iR1E!#BFuiAmBFKI^TI89iW^}Yvu`}yNTyfMd+k4nt)@b5dxfs4+^cG zA~{$AE0BH^(SyKznl-W`JzlBGnK4IZHUS8+#my!;F3e!0vo5sn;2q(Wq1cyY%E}!!5Tt z9k1vxF>ckOQD4bnw=BdgW%BiNt9Q=Wg*$vr63{}}B2{%@4GOk6-_!(jnjM)(?PwEv z&&5#J?Vvmcam|w>{Fqj9h#7T9RE*87@Up5FbvwKtJ(AzQo%73pyn{CpSDN-2F?Bm1 zMUEgH9$WF|o3EBdvzSD0AAX0}{)`|TP5C&aiHG7eMi~W%q15`@8CybtLnE*^T>Xoa zfKtV+WO1E1Ee#=#E`uc6r?5~JIc>C0^>7kIR;Gsmhm$Ywt&boV@a4iOQ1kJ0vvXSH zX!B*W{jpPo$Kg`I=W+TJ*!FS;^nN()eQ{jH6~O&R6_~$dfD|ky^-^&oVvi|C9jNPn zE<2xJCva8VF`!oitDm-azoP-8RgK?qqANYi80b?60dRvtZmRcBUABV|K?H1*5L+bh zku#}@51_Yk6s|_zVVl66H!GmhwW8l;8?|;tEk4)2+r)U=B1Chn;+YuZ`#LdBIf1O z1tR!zkgTSPLTNkJB=+efLYV;l@tV3b+3`dB`z$hgJS>j|SpXu;W-^nLiz+Nc7s4Uh z)u8cyJ^RBoAoX@s*}vZFUVrOVYNIDMISWG8S@X?7*;qkxHI5ar z$K8k?_)Mz^6k|KEGBGB2eQ7u&)v1gQ_c5*V-A45`f_;3FZy<-Q6aBgX$4dmKtA^sw z0a8ZmdCcCl76DT{7HxS!z&NEP*QU*Z&0=<&7%&bTO+KiBPhU~5%Q#993F>E!UTK`A zxm>dc1Dzaa7D_}KHf-5l>(c7Wq(=o7V_UWK#?&xPYt=tWR1k;wau5*?XQw3Rn`{rq zI>9q2`#HR8v6}xVvA#gK09rPcvfZf0Jv{tdNqXGdl~UB0oVH!A6i_&-39HB?fiz~y9hi_c9T^MK-`CS`?o^;wV`OiwIp4s0^{7+ObF|-88 zh^!2|_R8M|t<*FG*B?^dfo=upE<4!5(L=p2z*Ih4R$A`yU^{jDZQc|fTg}uBqqP34 zV6NG}eb3^01@tinV#q_^dPJ*wZF)%8j#8|%#wMn1`P^+(6@B~|j9zli%su|Z35vb> z{ygFXulX?&z3_k<@pHNGyKI?Wkc=wXLc%OAie66JQ37A_;*neZ?E^{lQPo zX;B;)SNv3tsI|=IccR{q*QIXlVjGI>JW=3H6jN>Ibwqs9-XhnMJ+r|^fCa*Z5A4Kx zCC28a2DlS1y%bq}QD!4Ijeixalkc!5zd5#Xnl#33p~RyLOD~Y>_`&tfZye^{8?zay zrD_K}QIq(@d-Dxkw}J#=CatN`*rQ<*i{}Qz63uZ_fBNg}%AK+*+P<+eDL0rJs^M)T z$EE9fx8A@?ytb%gg{EVr{oMRD(4v5AS^}Zl;_Hi9`cijud%DOYWO$;wZxSgB4wGcN z%hl~YYpu!0TjAW3>R18W&RU18v*3_^yl6jT{QzFjAmg#Txp@8riKGqbG><=A0bFv(La>1Q- ze(sV+XM=v;Tp-h@RNSS6xZX@vcyGp)ZdGiY3zcpaamIRcQ-nz0bdCAh^?p1PmBPfw z#;Gp^BrQ#Hz>vR%3_;fnC33o-gDo0_auycPC(P~mN;Nt>iExhLApYIJmuB!9^Y(W` zx*0d2_#qi?d}bkwUPvy-;W*5-blK_F`UR`#9b}k{N$fT7{_pJQo&R3{T^d*f6NX&7 zSf4P(qBH(&v6L^%;XRTgrofj?ukDT2rqV*mZYj&MiFe6&>*V4&K)W_~QB~LGjIFcn z(G-1yPrIzE7p4O#)(=zrj)ri3gv`(t50fAV2r2HAraLvskXbhn{%EBSWf+uKm|L_9 zkY+jT{ZjNT<yTU8PSxZqZ`*;h z+@Ii3mXsq#6A=f&7isoIf+IZNo6dOKLP?7!kOhfnKFnhn)614!`(>$C%Fb#v(PEoM z(w!~(``(oMT^^d5H{|x*qGv5YnN$!UruJTWb_rX0AbJiirt?!Q0`&f&YM0*pU0?{LK%C*3fIK7M5y&i zKn<2#aWQ+<-rYM+7RAyta84V01NIGStnl&|oi@ymOv=l{&Z9R;xS1<|Tev)(z}>I?qfy zGXLZFne%*h%XsH9p+QIQt^8yk%wfo_|0uYWZgF1d=iS_@)3}4PiMK43l(Y`;AfA~r zG2|K&YO-cR>=TT$;5%fyuw8mr%lsh&jE*DK@iZd`zh76(R$}R0OkE%gOVOq2232K(y`2(mPnQYGJ1jA)8B50?aPO&cIu#=7DSvl3uRZB)duDJv- zEm4hqvwAD&yrR+UphG$^?hM^R!Gl~s!d|H;!+O#i8SU+^<3wwmk^YkLI7}oddv+7( z){|BY;{niWw`j6%=O}N|!jhNkBUv$YZCGyrmxSo@VT2D$3e`w_^)+~6`7CZOJa&J4 zXVbAz36yqe1cE(aCax$5w<_#k{W;|FvTM8xVF}>0vIX?}r@q}i4rxPPi#xkvVFJ9E zbNmCm{|xOho|z^#qMDq`C_5U^_l+-QpA-BbE zrI}4Hw5a$&50XoLYMu+>hn~)BSV!ohS9jVa0-2?-*^C`Jn##}EdFgY~UdYZJCXrwD zB^?IN7@WuoJUB00GIk1@Nsu=b)fC-%&s;tbDMZ1w=RWafWEm%&{_b48SM>;+@ViJU z;1$39p=Ft6NLbY&nx)4&E$v0rqBPlUu#GD1sC2jF8a+XmvTBCThuPAqu_EsMUM~a< z_0%O^-9VrA25>m@^UP@qSnjXtfJVD?1y0!bA5HZ&NBnsGBj%vJ=waYA&7R&b6+V02 zx@&1vFsjkSyuR)mSdctV#3a@#J{{eox`nAd=Bmr;%+T+y$?K*@!#j=fD^@1x%UY_Y z)Ag%+FVqx|~#ERcN3!QrwLghc)L~=LM)rcRSdbBvA zSs$_DV7+bMlew3VtL!@zCmO>t5{YmLi^Mq)zuLFyy)>($nf^?(=Lt}bLzsonOHclD z*YC96p`%l5#pv<^(lp^KSuFnxdFkoaLJfK9yWHG#sFm+N2-)wdt-KT`D!)yRULuH^ zFNn=^q|F(=>*0@?oV}cR?Dzg)QdwGGmwpcQ|Un&azHEXHXU%V@g zv}pb|Sqgo9&~53riA>B=UtvRCcYb#aMvab*$DmZ@8&~5huZRR`I8b4<R~~tz!aQ1qYjHOB_L@^%o9=ANHe=aD=RP%f(0tYdaWFnsqu9kKg(QQCyZlLn znfb{{Sd&0?0l`Z8d#P&(v)0-&P0|5uh_Pw#)CX@+U>6-1+xNx=^;Dtbm@h_z$#iaR zXUrMN%C&;{Wc&9oG4>uF-R<~nN0z<=dulofmM4d+_(HD?G9999^L61C&;IIrA6O?OW*qOx*I%!j)*&Z_} z1J-$5s^2ldUDHJv6LjkN*kIV# zYSH6nkdDtN(aIyBI<_CQW&2P+y^km?XzVB<+O+7xSAkPX*Skw{8QoNIgi=m7|-EPk4V+d5G-A!0A&$E00H`RmXBN76?x9A(sTiXxFX31eY;yy z1?u`Zh2QDEvi}h(<#k-7V!O&;ul^0KI#he3(VLw&a@2K7cn+I= z5U+Og=+-@-Y^PnE;C#IJu40D-=CLXG!$F2WZu<${d0yUV?GGN(vNk0d#oP;`RkCc_ zg_S|g#&XI``Wy)hz2!^Hck4+=yLPTmb({O7ud)0u4oishc6+x^WaBP7Qh-@y$C znK(Z_p3qx#z(jujboFH^RG6M!MQENLMN6hs)OLk}Rc( z3|o(xk4q|3oOF%MBmvdH7faPmL)S~~gqAru^0*-rPJHTS7hzr;|Lf=RtO9Qf@2kFl zeE6)ofz!c3(*PU)y>c18Zg0Lp@ay7gH%j#zLKP16>rQGG&=I&+vGohTuU&3Dr|N6~ z*4{hd;$-r9PtlBI`$JD*&6&e$E)fCeP1v|kz%1ZjR0t;)X~~R}b&m47PI~iB-n_X+ zizp@xe*WC!1?>_ID*IVgCw&)wCSqRWQTZ%!21zCVQejd(vJ21cv$G3g18!eYBS$jX zF4aLLn!2LC-EvAfqX}(FP*gelNY@}e3FOc9Zx|)WR(l`?tPEsT5Pu+Sf1+{L?O{z% z$aKkIm%BIxm$b%tM2Ku^2YY9nWLVYVk`moVRf})Ro^Ruu$yCjJDS2ok^xWHB_`x-P7%qVkNk<-4yQ=gUNd@YVR*KThp;hwN!`D zN)I6m!?dk2uXOHBneWF+i+;`H!cKveKwZ^u!&6291DgOjd&qpxQ-# z^XAxapz7hD?uDtt+ie2=AfG^eZOe$i)fOTKg*%+F>1U)XOfx!gc!0cTirw(9T}Scd zv5Va~imjaKh-xj)Bnoajgx%1dOnArbPTHES*&z2&#u}~z;#9in1bnS7A;<1sK*g3{ zk$+D7&mr}p1z$2paw@vzE0f(f5Kg z-Eb?0jievWL@xJChvKfXY7C9KQy~*3N{{+{m;8zjR9YtTW5>S|LHwz=mrws9YFF_6 z(PQ6|J0ZLC%EAu|=kz_%4tA1E`^)lPqfQfp0}EH1AZ`zhJ(1|9gE4-Uz?avQr)G(I z@^*o8(Jp}-BG%?v$m!w+__4Ro@GIJ$Bjjrq%2gzQ`K!Q=taRO^wDtEtb1hH3Vleu* zw;E;rr+|9x%PK!oW>E6$rdmpTbR3XPc&I;p+b_$RwC8A4!TQOIb#1~7(>z>ZZeK%I zHXt=I9``^u|3p(akMb{vhFv}fp2Dy48DMqLM_QhAlupx|qE$VX5d}Hh znokED*y4qHbPRQ8z^-gH!gPyN^SV>PH^6@ynUTXL!M6 zM(O+zHsauyyY+J8Q0<40_DaOurrhy%b1_}(jrea+zI|&w=xMZ3F(aW3Rc)DENSMcv zU&-&1qA{DW$M0tBT(E7*U&zi>EyGZ#^E2FKb?1^*Uc}Q(SEb9L6X1MgqT4{@J9U(# z%wa?oEN2{n>;LuwXgB8gZ4%CV)lKQq1VR>$%?@bcg9YE$C;66$yx3Gw4l=mK(!`U1 z7~Zq-yeS5jKTu%C1OnVvgR)N+2`FTX7(r7dO`j=Fw8a$IY)pcO~Xa>wV1dUHHBEW`4 z-+e495quqGv~3LiuSRIEyQ|ehHZ6D3NX?EOhcM)@tK0ih0P5;EzeXhYuV#KU8eh@| z4K&?pEG{KoaN`*N5+G{13cRmQ*|mZ7)P(Q& z=0iOeu^ipLV@d%JeF!daI@iEjeF3e!)#naaPn)sd6(9Jyj``FAJS}WGeTJ7mJ#5JO zP{DY}wwoco-L_sF_QTXgQMkL*>YuhGbK>0@5#ZJ-ZngU@2@ZZiZ(N;R!1b6cZaQO~ z&BgZX~%;hGG9O zZCdLtJO0oZhM;<7`6D^}`{)X| zG}Sism2F2aZ_!!)JEAKNMo#Sg(25`ec zBjv5QtpWm9hh+!%k^I{w<@^1V=3Q;oLT#K?p&-H+nKh7^)~Sw7o`{F_EqhI>`5lJ) z(cW71lIh#$(fyfh5?nWVAezG2ou4fD4s0^uE7yA~7YprXIgcT)6%<+mnPEaXe>Y)%Z)=`Af$R zaSiRgt~X5>pVxwSh+%12QF{o{@BS?jLDYZ_>Pd&UQbs~eVqTrUpEsfmBe$~<)!bWD z*}+pg47M*vm0%}-n6_3=p{-9)G79Q*^Ab?PSR-sm@3QE?=E6XRMMR+bXJ{7$0V zry>a&QBPFNA+^ro-y?W&w(-ZK$3-;)Pbn)1+<1ET>W2w!)5miwsO&eg$9(-GyeN@m z&E{?YN90Jrq}?OXHEuwj0)cT-vXm;YjaruL$4~Ne0L^E&N#OXNt<41%`g9RT(sTp@ z6eLxuFJO`OagI6gK|mso65%vG&tW+XnqJ$C{NQwrb#+cd*S$_(bb-)h{|462Pr{}4 z#sbdGc-kryE28b9DEJhHHX_YvC{LzibFKhF$_)G0%?mik$}N>z?fMDr30^u*94$Bg z@0N|lNE(YuW_`r$1nJ+>=KeJ!eEpQKh=yX0#TnIet z^E1iMYh{YcuEX%Q>!HHt8N2PN0+QL05s5!!KRX>K^{UwpcE+<^GEcy8Kldsk0 zM@721pBL!{4Fyl{S10QM6Z}mC37?oSG4^$sYg7~GT4-=zby&xLy*Rz73W^%jyHRwC z)1K;$w601YsA1BZ?gRNbET3+Qw;Cy@NQ^w6XZLdys<_2I$Diw{^^-UWp$+b%Zmi~4G+hvX zy1+YqsQ=k$V8wERdd9@{{E~IvYSYqc(~jC(-aL=*7Wc14%9rFkQIc1mn6@+|yc6_9 z*uv7^@9tfxw>a~Es(~uhXW`_S3U9xBG~D@+xAb>;`@K#H|Er2e>bb4wVVAen-)Y=@ z&~w8VlCIw6@pVhH6KX?BJ^nrIEPa)<%fRa-LuoL1`2%yn-b&!vURB|x*o3B5T2xVM zsEWEWI;)Ivoo4~K4jD@QTbJGaGx&K#i@)#C%E~D|xl=sb|6C%A2a4id>+AIU!YJ)% zt8mKAHD8mGvhAnV>|v@n&Lc+2jANFc%&?pPgEGcZHXyWSsRG1p*(H|R**1j6OhNo< z%EApc`@Gs5?>#Vm+mBgoWeIQeg0%{dD;hWhP_di?;Ktr1Z6_k+=@$&j@g+OTkhYYS zZ^DU+9?3Yqu0qlMnMM+fkDJ&s&QFI5NjjTP8!rT>fBQGf zZ%e+XEskpObZE0-bVC+>&y5XjbE&J9$L{)Qi_iaPiJ{xMI!F2UI&iSpW@g;Nol z=Tqr*R|zf-seqp}rO{6(f~s?U-`@sFX0ow(4a?s9HC5~pftfrdxLV-a@H9>nbSN!o zmc*UCqi}31yW$tkKuOcji{K*i7`SX+1Ql;8*4t90)+IvWHwsE>=MM);g2F^YXUo{h zvz)OUH-ioZD=ouqf1m66-iqbAN%^pp;tBi#%Y)u0U&Mr8wVe^Y(7S9L&)AsAn^#zp z)@@GOI~}I``Lu_TdgoBg{_M1}!?ZK5ce$5WH^#Qw;9mD);h$ZzyI-A6S&?weQ~BJI z{=vkI8=k>3oQp&^ofvwo=C!g5H0Xn%x2aKjlKxnjC6@5i#WA9&TiV|-TyL@+*0Mvq zEz~Po#i*6*-dCd_Q+7BuH2#`e>Svk4^yWrSTdfAEQ;_ zXMA$IZ}@ub@QdJQs#m5e;|K!q39JBM9~m7-Y3-gR^J>)NW!cqKt!A4j`=%Tb4d{{% zC1mOAm5HwPVMp^=`!Jbc!;+|CNqhu$U+q}c zsT;z@>Qq%68XSdiWV`(32|Pg&C|<2B9L4*}D<;^c)@|7L@1sk5C6U>=r_ z48;&-#!fT-23*BBArZUkn5iVuRQ?A0BK{f8lU$*;vcxE$82iC=#Y`^MDHV)Mm@rdS zmfi49W%@5PeyG(7qV@XGK3`XPUw+)ZnEy00VmS8Mcv@>mf@7N=u_hj2w)Be@v8vBf z*Dm1W{i}1KT+Dc3-f@J)_=P{GI|+Pjnd9g4qfRye3SU5VC|!LN)3cvd&>;0?C1*DE z>5}pRiho@^AaSwR z6A3h<N<34)q$z1YqTT^BZ^UdRjdVVxw2rl7pp2O-W!Ij8B<8hrMG=mu zh~O7zk7Gd(nWDkh#iGrvNpi)=)yO^|*OxQA6t>NLB*ziM*scM+lC;)%v;EPxZ_V%! zC+|j~hEVrg(igd76YejF_umU!=SsSj9tJ^Lhdro6Vg*vQ9=?*&Tugo$*B1UB1i}O1 zE|m_T+H{onyw8m~AZ@>86x<^JjWWls7o41Hy_0LeQa1n@Ky;EJ+=o$ox@$K`q zA-tT~N7XvN9umolkt9K7S~igU+_%6qTdPPnkraVA#t_$IA z;D4`!ayE_tRY=^#E#~~j@|#0BDeu~7OY4)#_-<)dlHq1_bLTUgew5c>h~(x55;MAw zP&4PD-WE)!EDN<>!U_6AT3pDrwlY*JVZYfg*KDmF&=liLek`tiv@5FgWif2!`-{$e zBZ&P>@LoF(uqIX}n{+bKXDoEDmP} zb$8fWfn2Wd2YS)p>s5l?%^=VFldgGvkcPdap#{kGp1@D|c3T*=jp03&Qx2pNA=~Qp zl%u72Yhrgwh-vZFkbH)PcB>lDPG)C`%N1NGT=W7ugfUeWLp!dWg z8FVj!mQMam^>g6lA8XvRrdKq?0vHaT>P5Q}9nIJqo+TbC$g;rGKImXA;sp1+vy_b{ zQ6^P>_tS4zY>w`cH)||%)#KqVso4G;QRM9+N<_}KZQR<=?sI<4n4E)$Rkd40-5L%n zf$TqUB41Fq=&zh;;EK;OYW2PiNARf|!_s5~_E)SnzGL_zD6p)hW&R0G=P7ASL*h1B zKuH{oXD^#{myLR+&3P^^)Ufwd5rE%}`uc+5_@y~NPH=tq-}9Dh{Sw7bE_o%J^eF3} zrS5x;8&EiP>?$Wza+)qpvJtovHE;_5bf@4}XVnaRz!7@%^KAS8RdF$3bMh{$VGFQU2CxFVV4wUQcsN%HRZLg;* zqZvQF@fX5GnOvPJY3}3T7zk@>xN~3bysfMg*sB1CLqb}mJ^<~+F)N;p*I@&D+R<1_ z+RRozqxA|S8>V1qc2!wxCF8IVj1AScI=x5h$PDF4sbB}}>c$L>q)xKB43uh<4hOwY zuM#sF>-0VO(!Z#FA_f^zx{T?0*3@0pqSq-Fec3nf0o{#pnfN6N$3=VI$%x@~rb;e$ zi0c5^O#Gn4GPM!8qa`{d z!c0O6$uzwt-pPrlAb;V&G1&k|Dfi1mwm2!*nP6shnA{Hj!N|^`8!u+-3fqX6OX#`P z{)^!pE5=y{VV0Q`i#TA8_FL6(*ziMtln{WVbKc#llT4skHYcjDW6qTES<9A zw31V}xzTzx`&3j<>L6+90OojK(ExGYzB@5H2V5@>+o3L^60U1@_`1@go0|%@*rlm<#IYQnZOJ6Pao24RoJvhdibv&SGfh*-rbh(+0uM-J z(;|10MQRhyT`m!yDC{OxV;r} zMsN#h0MbqLea-zi!137$}2Tpqw%fUOR?XnE<7HbtR0`lG!J>)3g0A+d)2c|!3P7lbBv9dx5|9s5(i!TzTE-ze1OzH?MM_N9891@IRbFud&XL3s zbK^jc472leE%TK&H8>JT;dPIAXd<5ZF$x{U;9Ebs12xR+VINRRC%{(I5v&iNoA43C z2{8_>@4tF%xyYi<>*<4CeG%hJcyQ_!LgF=xzf4;;*y%d0)~y% z&r_B?j?aVe__5!&0J-mJ8O`AdHeIIO-H%2+!)`jwI9WTXLg`TV%d3h!y?ErmEfI8T zYr7lja!uiO{VVq*9Nkai=Dt0u5G)9ApxTD8_!`8J7Ouy~iSly&C`X@p z)N12n9Lgw+8^Qs_IbT;w=lT^eO#JoAbkFXvVkFU?=k}s5y59BF-BE>&-Ph40xZ%SO zkM(Ov_C})b=mg_dCaNj%LBH{Oy6c` zMMp`1)nYnuAtTF2%{VcZ!&dx-%75hrku&Dy(1Z0~iJ^((M_}U-Yq!-TzR%Zh#sLFa zah-3*`;MrNHf7+Kf-G0X+1zuo!w>uD)GZ}_^M1*foYTs}2ujz)pvU5D!F8CiEPAUf zR_? z+aM+7RN{g@&f<+ThX#85=UP9*`#{zzZhIDY{j(N$v!rRcX{0)q<6qc$|2U0Qu2!_# z1beoC*q2_8o`yRZgzkNaxL+n@=bF1_7e2iHLITe4Nz6pQj({b=D?HcEDbJF>oOfvN z8216m5&c$h0Tc)rcN*db2eo+XY>07p_#OuP#u$zu6j7e4CE_~O7PBaV<}ibP6LUh^0NhR!uTqrnrIs`}>E)01H^kB`|&;c(7#bbqMQQhi{;Q zQt@$`ji1t2GqaZws3;G8E3J}PG+1am75QibFU~|dSHj-Lue2<5#`MP@IA8CUC5NJ> zkqroYP^k;F;}1-y84>oN?>vVe7QQ(CX#f7N($>?Ef(+M}c_{|(=y^8KXrJdDi9_B; zX`ts`|bfqolb9JQzaxVU#!gZz6rdT=Pyn+d5F8wA9_rZN8~RZ1F&g zG%Kcqc~i>UnaH?qZbka#qKS%Oqw9h^@zu9BV}Q5FF09O9^z9eLj|B}j$G`2qIVpl| z)x3HGh6>*py&C^QGwGPD7E^U;V?0x9f6_HDrk4kfC=Vi?ilqnkhtUJmv4dmu)dtl2UCO)9^JBnzG=P+>)N2>7{xLqA)Xx$&bwH5RR`9tps^&b`6}hJ0r8PXEip zp^?_Dh1dU&gs?r~vhYyvUF%OxBmaf!S2gCgcy2qwRV9Z1T3(K=_TB|Rju=vI_UJK} zeALxC>}V0mUVYAa=(t8pG%}sY#KOX6|MpudvQj#Gw15p$ee08mig_}Dp9=$ON*N_u zSq>`En>p8;f92{c`4w=_b`vrE7O#QJVK&H+>XC>AJ8#cWpX8kh;?a)E$F#~Bw#rCW`d5zN225X0Ex$zZf(EV zDLS_=hnl@$GiKH|#K+YHOa%iHfDy%a!B0wYKv9ma1*UBYiIl@)3mE>WS-RrAE4=BB zp7$DZ_b@j0uc(cCqaAh?gU zB#ojHCSg(8a~F;8Hr+kGK2|u7+IfYA2|Tb8tV}SXB;w~k)JYI;ELbn`DfQ9o?_E;} zXHcsw@pCX7uM6X`28c=!w1RO8N)wSUF#=ns3*m|}adj}*f^5@r#&2rc38LICsb+jv za6`D^HmSFJRormZBbeg`{Yv)p!gdTN=4ukkJ)fPb$2=(zT(@fG;CA#|GL|I5u!w|x zmh8B}Nc@2FTA*ki8r%*zjXaKZ6@Me65uJ-dp`@sgftMxM$sdW|7qC$@e0MYXX96Hw z=IrrzE{1T$u6Iy+y2xh2{$#SqlL?x_oGxuYQW^Wvx*uiS&9~j4k!@$Eww(I^3wWQk zFh}M0+qmK92q-Oz(W!&7-$9fkZ=lCjG}_tpoXVP~1%gw%!7Jxj!!Xq4MEEUz_T$FW z1=5B8icQ7wnM;qO`=h%J>taj6?-rG%ICFi@Jt_72)Uf9`16h2rc?)^+Lt|#+>7wZi zm+)gH`(2BYHBY=#S8Tk3sE3^?m(0Ba_FO}jiv1)z+H3AY_FYbIey?kQ3})VzyJ>VY zi0Gf2@0Fo>##HfkDhV`%WAj1de|bjqUd;a*62RGhk#q=r>crpU6emMpA+0(CR@K~f z2Qyqr1Am6}+ohy5D5Ogh)@q@KX_M~D2vaAr+r&5w>$EwaD_f~WonQK$cpt8vjwvJDE6>@{ zS5m4*B)-qywaF9{^1Oz-%W4b4?dIco*o8!c>DB79C@&2|;@s2C^VR>BR>htg3) zyibbEkVX0vvR=U0)8vDe#bokVSqoXA-X9j9?t~SSNLc&)!1lNc*`mks$s`Xw4?Hz| zk(f=Z5Nkj2C$XP9eMB=^X|B8kS)D1(^6iM zi3Q;j_mWmkRz*CJNjVPav!-;94AUU$f=I+>&340^FkAgTprEQZWDL=lx=$mt3QOhM zd}&MKWZd5PFx}^l2tFnv792NgC8NnI_&h^r)qZk8jvA`iJ!3-L&ooGuZ+B=HJrS!PDAM*PuU5;#GTYcy{VEYS+I(GwC6wI)aPe0j_P~u#O>L)^ zHQVwa`1&d2fq;C>m}YpUwO&ZL*(fAF(mmZ>HK$d4Jdh}5|Cp%TwLIz3I?l$mhsl@& z3r$vPrv7buh$_+R7-+s%Y~yQ}uRi;EK0+@bhT>tAXQBAyl%)*C-uVO-DAzsXqUkZtg>m&Y4!OxXhzG2YisJio1yvD%y-a zKpaa_AwHt*LvYI04*@Tx>~u-y4o!)Szqf!6$u952l#)VYu1W`h(7)kp$(QGgYJHF+ za=M>GgQ*DI4l7zAo@X6=C(hMIN4=4K2_}1&JxwcNT+5ji&p6jfk!YR~l()>a@kWWm zrKOo+B-h0jhwJGy@{pgfyXm%GNv)DOh2r9v=$B=x7Kapbl4XGvf86`4#>gA<`J*Ot zw$0LI3&TWloPFrKN=9pNy6Y^i*pWema~l$g;6?zxh)%#9OH1ud=7anqH+E+2>VTvj zFs_vzmk_JWl2BeDaLazIaHiB{My=nqYMM+xNj*`lP@UHRWmtSptl|iO+4qZG0YNE$ z0k7N}YsXrZtGl7je-tB_{n#siqDB_J02Np-*-OOgmoq?G4(3&@q?a_=WjgeE-PR zY3Dbf8SEX%oO=AkeR7>YV0`_hQE7@j=v@eWHf{+lwo0%urn!^zGe7Z?Hu=cpB>56( zx{q*hce{E)<75osLJ(4Sc>MT*MZ2>`o%9-W$*|*96yI4}O~>05p8-g^11#f)+6)t)Q!XPV++bI_#7AAX% znPU+!r|e{}r%L@GhtuDb*p(os0`HbnxHX}8ihH3Qp#wxjarwKSQf-ImfJFcHo1XWc z6s&%)F6kNZ9yXUx4&(lWYeyrIivI$%AuZE(4jM)hRAOT){Tks@^AJK~&aw6rGLD>( z`eQ{Ek($Vau>rfBeN(p}<3IK2m|7Ok`f$VNso*~Z4bG>Md8`-6E|tXjUi`iNS3t+@ z;Cl7ojx6uizh$0 zz?|s0<(0NkP4Urm1Z^GF+_;WeMGXdmMG)1;@mpQjv!Y)NP=0^Az8M&L7!Ohtl3%Q3 z!=d|EZVz^LL#3a>iK?ei&h#>r9Q?>@vyZg9E^|<=%FG45@R7U59*?u!OjFHYin|gy zD3JQIGWXCzVqSXgXLu{|MT8k??#e%Gj z!9q`84@NwuL1mnxV>WgL_LItDn+b;h%o}`7b5_?ok2p^u1K`ztdm6qzW-VNupdl zep~-3^^>a1Q5Gh_`DlcdsbCf$EwLEvSMoW1daAY!FXlCuvVuzz_s5vTTv2%d0Jjxy zUoBGBOHE`a*jo4*r|bal)tu}T)m3r2v$r3A)+Aqyt6}SjlR$2s)W-{-U+%XL+wqr1 z{7)J(mjd)gq)?GP+`%tyi{`ZNEK-GvrL92!A}Vl|hywYoCYHN2dEGf^u$) z>EJhtk)^uUhBPTw`CC>BUf-oxM3`xRubx~P_3{vl+o~~hk`Rvfd+G+>8^#+JncB3H zjA?SPZIo&~t?1#mRq}kpP3p-j&$waqh6+q05o+t?|01hI6oi!pL6 zuqW{nqcLP-*GRPLr-cYlUJ0&!;~L%Xga=a0szO;0?trQ(_mXFh>y3>lBTlP0M03(_ ztp?C+Ee#;X_vpXN{qzg&;SYdfV1WJx96Lf@UtaFQsaq>TeyhfX;Nss^o+??e?7Q_q z-8$Yc?&bM#?9io5F7I!7`46jgmUn$z4_6_M4O52rwBgNn%KK&lJ@Vg}Q3f0CXj;Fb zPh#>QO0S7W(e~5V$X4`f9i2fdmbqI_XF76@k?a^#@jUTjuxNP$@KJv|D_K9-LhPJJ zpZ4G!6hkn;+EOCFv+F3paup-G5&>&a9=IRnhR-gTz0f~V`@i=Ha}S8woZ>Kw5I#q5 zZ8846_VnC2=0z$)8;P@O;dy)Xd|qF4PF_D}~{CNFlZG zPT>rfhEW{wzw11_-@pwAqiOB|ErU?b@I9!NGK&%-N8&yR~`z4ru&#K;14ER_M;4;K<$WN^KZ)I5jmY zyS4E}tpBv%d>vY^W?(Ht*(+aMn}2*?p!!{JE6KL(qH~($`ormDT%;H)lYd9&iISxu@MkUm*p~pjo z$gWnxaJZ72VeZuG|Dr@)`#|UP)`o|FsMi6!?h4q{Gg!)|qZNT9D7Gl@WmyHE7+RJ< zOFuSsak{F=f|)VOH{sT~uF~sn1}u3|N5sP2<^Kvvj_?@ly*W?kfo=d->O}GWn29s- zs_z-RY7504P#15?pRa7lb44wzI(*l#$}bX!LMK}Wavp(k68F&q&g%c+jTUhHg~lb= zIm-P}#WOxfhmU@%(*0T)FEPM{+l%#j_sEo`S4=kjVNqW<3)ez|joJ9>*x7XzHM@i+ zXDw^=^x*E@4ajY6?1oL>lJlDeQ_RN4onz@_p6OEeS}(rMK-Qp~!b9SiJVA9|aThUL zaNN~bz)!-8DH3gpw6cV|2XF4(cv82&VufMQOfUW8${$ZJdJpIH&v>3q{hv0u0RVlm;jo$B@@GW$ZDgVP!iUesDU z;g0cee$~iUqC2D;B$$$n-y`A|O46dRw?bgv>qAcAa%z}@DFe6e+VHCnX9|Y_3|O`$ ztYm4Al?GRYlR=S)9=+neQ?YCWc+MND^+X$ZI#y7o6>s0`(T62B70#cTNEbp?%*mA* z-X~+FIccXh79ET|*~=VmkUwxc?<+kzEc8kZoV!!qSJb*tr?u-g6He+fAr5u$5T-mH z-j;Ss)u^@iPQ+#;TO`|etN_NWauG9P2<0WuAPp+ zHMsT%xOu=CTS>&pLPWnz+g~_*oM!LUPC^c@Y>oOj@5<>tk7fKRq3O09GYS(f-&{a* zjLiP$7yL1cv2e9p^!js??&NugXDF>S@1!|RkmU_1NpRecQDpP!4Xt*rNobA?d}iN8 zbmX#p01^qz#vXpqPB2JAJn^)bWQ==NgS@82TmQ96kTT|%hzm-fD^pkWT7Sf)b?4o> z_E=gh9nBm}xUVsbcHbs0{-`NqK8oR3;*$5}GC_0(J*n8d9hB zAFlkP@}jePTYDeOQ~6w1bu!a_7flQt?v3>!I^#j(uZ67sbOKjU0YnqnO-*?S_!khX)SHTr~R_{B&;&tZ^%V*1kStNf6sY!onQ}1=|KeX8iJ%0BL z3Bh0yPTdBDxsh{xkLe~;Iluf$OJuvvV@0P-5Squ=DdhVqqtJj#*!4{x&|ultKYW?V z6&XIo(F?sySopBl~4g;#U<;nDgKLbuQ+~TzVE+aR=0IBI5K&7tMvr49s+4 zhaB~vCG4qwsO*5~_v}cW`-a>k$52IbSXqXb=6|&QlPNjEPc-6mJSKx1zU!oftRbQ6 zC)$XE6`||dS56fTdq)*_<5Cu52@HQWHakB1(!aRwke?sv$wteXr_i4pyRk9!CWk?Z zHtgQXB?%#x1NcDOVw&L!RX% zun)9iaKg!}s-kLXC`0f=>@1fvCSmDYw>tA2QAN8&>Ym4~hR^@{k*Dp2P z8ZB`vAg3pNP#h?$P&ipT4yeON0v)c@AV)YX;E(FpN~*3`eQL~KI671zKyYkJOzl{^ zw{>4bD)u0*4ldV=Y#UqBk)r5D0M@2L}wYcTTnd4W>LxdDG*wp~VXx4yG}_r}TkaP2$pJ9=D$b{-)Y-S&3)$yevk;skc4 z*^f85Y@0zwGjg?bUSECOZZ1v#AycO@=h1(xK+gUjZp5|$2bVA48aVHu>UZ~>OCTAI zqaDPR0WNMpGE1MqQM>IfxVCZoDD11BN9>u4b`RHeT@@yaN$Z>Uw|89%mL0))dj83j zlj~hkO?LV(Z@wiNeV9RM><#*TA?;}5^klGRZ6}STL{J=lCrRn;Rs>LN@ln%+y$Jif zWxY$#Zf8Uc73m~}4jX*?FMqn3!`QBYK)B<61n_ENtnd7>u%{;kO;&+Oh1fm)-K% zB4O%8elcBcp9~=ZDn9T+V0`=KS7BxLfNOd6FSzjuWSI}g-lqCEy#u$m^;=4@z*3QH za%yE14AgLIy3xA+2&!2L*b0{O>S9BfL?$2^!ya#(i^1T%P-vD}#~9a4ZO$#fLO*(7zH z=|0YUx3qIdEYHvR;ywk3^2ejkDoJw6z{++a9T&+q7Kvo$ZlMuK3~pMyYbF= za_)>m^;W8KKQk9761aLk^dKRA4YWEPz0SBDr!*t6L*-y-cOA@5``NVq8YK#U|GMg}!>-Gjw}MAACY7xO zFG<7oW6pra$(xx5b`3Y&hZKo3L(gbc{lElBMD`k<-6RiVkMB zvRSYBTG7W3;rfpUtOsl|1vpIMylQQs?H9R^sg}m=irq%wo`?wt7Rq6|?0=0{bsZ8c zDYp4HH;&j{R49A$1qGLR`b^=qH@Qr z^}Ey8c_#LLG|H#PNnI#WE`<`~8SEyJw=(c-dl`5uW|UiI4P37eK^B5{-5!bPcH$hf zLp_1}T&i+rE>fZEk9fWFZ}xq<%Mjst-gXrT@cD`tdp8CM&h#7!jv>k&_KKn0bh_=x z)iAPA6xyodC;Ho6G3@puqM(nrIyg^*x>5c)lxy}4elmDlbdjfe=zi8$dC0@7M}}WO zKB)H6Ix(MKxOyzw4qW@>H_-Cqy)#bugE}(7R$+eU)*60LwIYWb_94Qu5Xb;L{WxuA zY0m!e0+oZrX?Ur>ZS_t+Dxi<}z_Hgx*)=0OB51@)f-CZeOx!<%>|A|x!5Cnbso^7x z#qmxqu1!Sih@QgRjhhixLwW9JaPM%e>-+*ODL%sO2>RLH?G~r^%V=--Sg*P=l%ZSe z;i!?9=-J@w%vZy&g=ampVrIH0T4)R6F#|n@J2`iDdq`9Q*+9V7X|EyZsX5tmh#s}qn($N0wkX`4zI8A9&Um*4 z$nW0ex=~Qh0y(`i#4*8FfycjWp)2VfUX*8by^;Th)gC5itwK+3Wv2S1pF(8l`bAFj)fwXB5GBjEl>`e{2S z@s;nc1v!Gz6{)dkvYdWYcl@-sB>W@71|Pjy$G^e-cn%G2k=jK13hnL(P*ZPTtJU2i=}4z*c1t?p*N4mr&hwQtgWZ+c2#*rw5j`BC zXMIAlX-Pa~*Bo}?NOT@&y=d;IqTX9A{u)9u>HJnbwaEd0UCGfcGd8rbA{I%9cFZZ>k(`UCL6fB3JyVVf92x}hW+%cZ8Z$A8a^ z)<|utfE4%PS*8Uh8Dx6nbrG=yRKB-yQJQ#4#!H?RFM`bpzJF>1*OICGTFbqbO`FKC zkc23peU6oGEs zzi4M+>q}>8b;}9kl-p(u6;UlAb53qiZEbC;9HoP_QqmPGyxXX$j@iEwY92WtVQC6> z+mV;Ezn<@x{wQjj2jK@Wt$Iq|zO?Of)7yL$lbVgkv4CW+l6!`G{F-?zV+b@LannbSaOyNC zM?AmDwSXP7{y1NRLH-rrI@(iS!=xwUsrvkTd1my5o6VsnI&|JlUXo1$iqP< z)kr?oKq)S{-WGrq@)qj;$3Nle^#P(Oy20vq&=m`q)!vt=w^`tN!1mBSjn__G#_yM}EKB8{X%Ed& zP)Ax;_~OYF7b_N$PwBV-fTZx5|!n_b(|w{BCjDpA-g&tW;y@ zGx{NAM>8bo3iat4Z#dEn3&PKbrhH_&GS2e-PYETf)$!2vU?j`3z22#*-knm6Vk{hK zHd8C*-H)ox0`XbQUR?>OYBGHKR5c*TR>0rJV7YBg%I!A(Yq-_C*tEmpSo%$PiB^VL z2>;gf{*r;1c?fbj%k-g6Tksn|*x^#iD>zW9PqCZb_9pRM+DEhK7(KN$&gGBvDzgKi z&02YNL!Ofwu3k9FeOVBB$!zZ!2c*CUcs0+`1NpBn8pprojGgACT&^G6O=>vR_Crce zjs-IIuw%$vJ^&h|>vjxZ7|?a-J@r&9Zuu%t|C}hGss~?)KoF@#9@AAyCyJWiO2xE~ zoYJ7+Nt5&^w!Zpi+tLh*ACqVs>%`(h=`am>i_a(>o7^paDvF?Z(Dx91Z%;`Jp!Ksz zTwGE2Fy1H*k>d!E+ihD!rfr~dK;jgsAVXeAuV0=9?Dx}1jY?WVUIGhjtjkDX{dw!| z?hcz(X*5K|c^;LN`76)$==1ZvMx&qN>WpTa^;@D>M2Bs=^0Iz_4%d#4IWIe`qh>#Y ze>hR22$pb`br!Fvk!+F*x9iQ9GFDjEavAj^_MGChTlz6EGVs?`;jrhGj_0~apdKjY zl6L&_@d$zpQoZ;uCkxG|myD;G$IJSUGFCIAKP&H##8RP-wpNn00m7 zc#4>|q%`U)?)2=v2*7&mbux-XC84vcr*a%$ryK7cm%UI$Ou%qcC%cks?3==}x@W`wy!~mg<{WO5x5Q*pzA-9uu z*-PbPNRddlyA23xk;07$Z`Rp#^V2e z>p^;Viy2CE$_&@M9{0+{*NLkuCxSiSnO?*prQ=m8gZb<08sC!W5lMZ&$PxGV59h7W z-NlN*l(8HE?SB7D6|e+}KWkK*!)f;@+L|tEW^M-@TY7G)k7G$DX0FKLhZMi|J-I>( zH|J=|uqw&sx2nV}DCJ}|3w0^g$kuOPIek~^2ZCh|-fiPreL{N^K=Y=i@Rj^p?~S_1 zDnOQJjxc+W-(|#ZbXqb+_1N0D{ztlZoX(RNt{9xj55FPE>pQaI`o9XykPJlGm{GQ) za=Y_f>aYivoHqNt4r=8a`wDP%o4)=CLJuDkU$H>|Yk(froTeM8P2(oYxI2IjgaCg%&jn{cJ{(4CaTXT2QR zrQGGg8=F%|E_nZ2${D2%n0Y*}K0tuLo9BX~n{qQ`AK)5`#!ghAmay;6e`7GC#V&9Q z9x%SWrUx#)VB21gS>cA4VN@!iWQ(atvTg~@`Iq_MkHE!24e4Fz#kA}w6crsDWbG8* zAvwHGe*}7lT61Ux7wnwI-A&j6=(3#ThvL!P9$Rh7XNr$|uBf6)IiT#jSkNUgm8F7V zA{x20!yy)S+2Uz?cOUh%l*{f0nWbtpRk88pm-LgnbaZ}EWkd6~d)5;$<}3VXgW<;i znps!8kukoKXX()pMpxK!Yk*=?Rj14T7`5-8f39m{2j_&S%~+nQ+G4mYxf(UK-&@F^#pEKNjY1X?yH4%JJjSj4yW9ffAI3r9(}!S2te7 zBPu$@FNl*PgaI_jiX$2d>}>DH%g7=dDo@YyU5`n}pgQrG0?MVw*WIo>rKlP%kJmOp_->dDv(>$qT64o_$xs+iCC| z5}gJrz`PkbQs{PL(B(f>cq?uB;3lFw_9toEFlJuvdobPb0Y&LBXLVwAIBbyMOGM*; zT>15~lJs?F>2*gI6`~@@?o&XDDk{i5vFV|Fsj<6AWYWKk60w9F8xeQe>&iC-dnS&7 zV;K&31=ccf_f|hWxACqift)PW)~saeUT1J8VU&93TLZbAUY@G+YUiRV_l=3NEOBSF z^ZAbTuuyQGI${Vnv*$%k?T}~K7P9G8V_tg?1qRPZkJD~OsrK_)pDw5L>oJhTG0%%6 z$lS{MFdR*}19r8K?)E$@F`+g4yp}n}BNs+m@x{oR35kJ2!0z$=kRVGnzKbP{4#j(V zon8~EyY@*Zm&lIlxF(0rphF@W9>N7(Hj-DMmx>S6HDm$wTq26Xh798Q_}zpmCRh4p zhKKQEcKDg;BP$Hfsm?Y7b0LMo6pNGLol|1RUcxOu6W4&w46eI3iNef<&;mcxw<%c; zEkhI^D~v@KypPbl8eiiF1;z~;X2b*z3fgA4^AoDF%I53frS}bfmuK+Ve~f^cF*f{9 zLb1UGFz5$jI{7MCZY%bsuCVjSh6Q;PmOmkVxlz_D#QbG#{jo8A2phAF{3$+aNry7x zE@Xe4w)1{v<9IaG=*87^@JzXV8;n`tO}WA8X2_{TtpZaA9shgDMo_e$s~i#h>avjukZBpCLnBUFo~D%>ZX2-1 zd-f)0`V*A$$4SOEa&z@&>SjYgP_33b(58;Z`QN(k9N%-aODBlx=kvZPKcyXdvp2OK zq-l!$iNiw{k<^Nj@=MD{Sy8f%k4650*Z0x*$B=^EY<6{TZ{zi|XW{Be+?!n$vmXe+ z)y!}=6#+an1$fBJF@)s2qW2U0&o1V3(@Z87=5ykW|BiYg>R}2C+&kPyCH-u{>t$-i!?DG@wxx5n8VF+X&r|ZuLAGsZNy)ZRYI$8KV^xn1CADMo32Okw8+26 zzl{I8GX8BhnOxlfxC8)K?iZ7BZ<eQ`I5gy{w%kY=Xtpn`AbJE<3Eh~;qh;~ z4zABP;L7RyXkT^=WcB+88gMhu^L+9U7rucMQ+xn-cM>(vVhYO|hf z1Jfc}qcm>CGC|fk`lAl1+uR3B$7i2UtOKE8ksP>APls!_Xs%(+K>X%OAmSaB>n#EO zdW-yv{LA=1J<_ z3UE~1d~PO_i2&_rM@g|r0ca1S({~8$Sl1{`87fxF!$2krfR*{70C0!_VoFwvlHU3t z=BrS_ijFw0U1wj+Z%eaLx=Yc~es_KF^_{He2PiX2oMopVDHf z#vv1UZndMIX?lCJWs$${3Pt`8#Q5I_Xgh#wn*ey%?DhNE@o5EI9ZXUHcTMhDYqtU5 z>}&>SHa1{OXV==_n#INn9Gg|wEkoCTKw9(-OY2s@R{C}5%cVuI7n8Ze%>(jmEu!^0 zD^uT5(Qwdmiu~6cIK~H+^-<<4fO`mTqSMv&>u~1G8Ru|? z|LOs7h?L?Kq*>b>JHd&zpgR_{gjl+%nk)hlZwpe1|3XvoH}@2vpzG6Hp>IWTI`en_9knw5A=TQL7<}m?m@UVkjGk!8t={wV8;M#PuZzzpVLptL1!t? zRa(IBcr(NPKERZ&XmI)Ew|ed=@_FzH7v}QP3(7C4L%C6lG!4E^e@lcfmT!%aqC*i# z7k*T|?zg6mn$!E(ec?|`+fu$IeDZCSI&$?UZ5-|e`vCh>xgjHxMK6!klfEeOCyo^P zpSbalW9b$E+(3{mTI}J$q5$sUd6-8IYpaU@+uH!A8-UXr0Gkom377^j7JTfNm(Jw; zTX0k|Bmm>U3qf8$%zfVnGo8{i{mua-r_DSU(05w621U#i(UH&^us#NA2SP(gn4ob= z59UKK_X~%Fm$}sgwpkV{nr2P=GFm+iIo>DFQho@nIeDcEtZZj0@(&9!?l(pL$+$}v z#JRCNHvVyOJq6fhkVP%_R@sX^T7W2kd$jx7` z1aSLc7$iL4rGv+V7Xzmd;_?cpb9uTBucl`52{1Fjd6T!$tn2W!#u{owuTQVi2wJEEISF9i+JlogO1r0$-^ohdKJ4OvL!0CgGNgEaEOWR>#9r9&xJ z;$tGWmCH`$UF7d9H$#0TeV58+o&L14j0XC$t~(vaE0=vR`6HO328+&4?q31eRXKh% z=?dT;4Id9(3dVZ|GCSiw@b(N~3$GdEJzPJT4DAzY?QsZLSKhY_TD69A zX3|@-x9PO|!!mEc;(DlJb(w?olSXcbcycHLw8cHvj-uiCzZAC9gff8t&$ zWB%>>+I=Jc8Q6^t2ddblJ@^XjnWtRy%IBDKpaAYM7tku?S!)qn1cdSXhJdi2h43Lx z_&h8(Ho(r*5hVswn!GhS5|H}|OAy@yPXZ(Y>OH!-0uAsfAZCC|K-tlXbZDCW>Vh+B zngrdkoo*u5prmN-wMWg`zCO(}0^J@RQQgeH1n50)MGh$d>-KXIeK6Iiq2wg>%fi6R zP_0^u{CUxLg5;0#+y!?>>}(D&J5QQx0oPR~#$%YK0PZmq%2AMHEqeIF^u`U?+}VN2 z-X3ghZbBo#mDa)98-Wvpn@S_vfd?-I8U#KxiFqJmu<=FY>h<8sAmRX+%Nd}f#~KBs zT8ruJ3uo%mv|_p0JZU=wyamWTNHP#71p3H5Y5Vzis*!2_%R8YfmO*X-LfU@Rj)8jn zZB_Ia`I8h^87oIAe+w|*B&`)K;rMq}%)&=88y=rB3g8|eS=@0-*fSafGodz&e-V^7 zW&pKJ)Ean)KzV2)TGoJri!jv;T1;w2~Sc0_k;`ZD9C3Zb{aAN z!+V19JKcA$_Qr>7r(2Q8FfvK`of94d^9|j!Ocn?t1~&LwAc4TR;Ka6DztqPdFb{ zLeNERSTthydk>&SH5os9djOmAuSCCxJC95z3f?M(N&tOs2Fc=a3t zsRmc~y+mocFNf-(8dU)IQ0#kfGqYBV;Hv>ye&c<@cdTz65pWzxcz3JrqpasB%SxEG zlBfBB7`-IZ9c)joR%{~zXbP8WTU$>Bc7e^u7PR=7hbp9!+bm+~k?v12CHdmsl*J%X@1x-^SXWiYL`d zSI&>^!_Ves9C&{X9uCSu5qU4=uL0G8r~=p47*lS<85`{7{mL9DfV(oQO2VV$fVCFE z7eiTUAjW66`vIi^(Y5*DQlDi1#m}MR1(}P4)7kb24)0c0c89xzwxj1<#jL7 z&Ngosz-%2L?Bwn)n5`}E<+>^@I-UQXl$8RZ`>oS3&G@)?>?chtg$>lv;|Zrr%l4p* zu>;rS*Q&fpX~DJ$kmBDIRQ>O=hkCC@ZmD;O0|jtP-?%S0z~HO_SO9tGFZTVFFN?Sn zOiDoA0nn-dsOVW4xP}%H2VGofo*b|YdkdgDMWE^bUAY4G{CTI9>gVov0nt0r6HA$Q zivtC4?-r*^J;#y*?EHn}Kmb?(TAs=CWxw^iW7*ClAWF1m{G0xhE8Xy~yz5>Cu#XaG zidO2s7vMYsiIgHv90v;Eo;Z;ef{!x?Skp!lMSGSprhjYmw>A~$#-rrZW@5d+nl&GD zq57Q$%+xe2Ac@ZfJSDyRT>$bp_qsycN#Vf%544+w(t7|#vH$=807*qoM6N<$g222A ALjV8( literal 0 HcmV?d00001 diff --git a/src/static/order.mp3 b/src/static/order.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..fb2b472a46184943714fc5db5c00356cc6a6857e GIT binary patch literal 87713 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 LNkvXXu0mjfvBrIF literal 0 HcmV?d00001 diff --git a/src/static/tab/incomed.png b/src/static/tab/incomed.png new file mode 100644 index 0000000000000000000000000000000000000000..7db51fc5dc2a4414eb3c7b3d5f9352980c3eb551 GIT binary patch literal 1851 zcmV-B2gLY^P)ybZJu(5G^G z3hIAN%!I^}Em?{^@%8aNHkNcHf4{D*5Zie}vb2hT2+}G!h(r((q-6wJ)*Oit5u{}V zTGkwi5D}zh1X|V{i4YN_WdxR*vp3N_*x>y{kFXstY=CWlDO=RtI1v)H$@QHBaPOCi z{+NMJ_4IwJKf~@w(KT$U6iu)_UDy=c%e_=zqudPEtKR~%hpiTb;hDg{QFNYxCmJZC z1K1APmmY*UhOsbXdshF{tq^2qqIUql&pjTNqPM^Fcn|R9G!>m9VlKJf^2}~IzAHf( zz|RwX0Qfx4rwj$~@7^im;pUQiJnRI$y-JUFBekBp|D&SdqO?+wRq!8DeGd574F0X6 z&lom%oIe4hKH!%PHOLlcMcoHz(|JhmjS5l~ye9fcL_LbUpq_hFafNM4n$9vKx+43M z4VCsR)l)Yn2!@$#N{Q_ly?qK>>+t}wG4SZ!Uw~<*H6>4)J^}vz?MUt3jMNdf$xWih znc;6vLte8mxTbLDLY~@da6tgvI;A8u9<3h0Hqzrw;J=R4A>a>h6P5m%s0+ZKqfLb? zry=hVe5FMhaD3+-(TD;pwFKb{EM_$$^!8VC`6x4+@{?ttGxX-OzN`xPN|2{G zQWX7)wA!neAc%tT2Yi^~3oK?e6SSi0Tpn3#uX7A-7cd^@hoosAy;s3_J4A0Dm-YBs zE#PZQv4ehyVarJnjtE4u6IAokQYZ%0?QJr>4xvPMBrs1K7hJb^wsyOFI?5R8)& z9pS~uJYwW2yasWiQ4n0Hf8q>VZw;IvI(y+Yh?`;*gcFMl7y1!C)a{E=DT9nv5k$)| zXF=2x{f!TGb1_xQfLU4C7bZCiQs_kv1|uMX1Vb6dkq8ooV=ylwNHCOP9El)dI0o|~ zf&@bu#*qjThGQ@~s|ezaE>1xaBo0?^uOf&yx;ON=M?d^Yp)<{@IxZV5>f`A-$YJ|rm*Zu+&7BOv46dn zYQCK(sxTtRLJ&m2jKSmURolG;{Y;pNmZxwR+@fp{6&wM_m7Oa(g@92+u|`Pc27bpG z8LWPOhSBXTo<-@q6)Ml&X+a=H4@1ytIVM96h+;_bKHOm_vd2yf0+_W0S%w*6zte&sLijPeS{xy2 zZ6C`G=(HfD>Gx$AKKqYE{8TQ5S~@KVdiO;rxuO5(>gN`#aE+H|rAvT5Qa^@$)QfHs{hf^3?2 zNqr(n37}0UZ;c?E1{bS75hNB_Pro9FC%9O}M37iyJ^hLxp5S5?6G38;_4F%(c!G;n zOazHV*3+*D;t4KRF%cvdSx>+2f+#xPOEtgpv;$V}JPE8^b#WJjh;L9H5Rq6p17<}o zi%}4zsqhy7T%1c@BLU+#k48cMA)0yK9z(L23E=yB{;u9#kn9#0O=o7;lHx@`5&zhj z@$MF5gm7hF6UBF046$!?fHYYv5a7t*Uy!&xQP!L5tb%Yod>6*e^X)N5q=|p?Nz9!C z{}kUY|27sgwOOekd0_~11>@g*5=)dT1LHL#=bLXU3z8R*ZCnB(NL;?o-bD~+Wc3T! zJcuARIt`?WAPqpbRVjkl=roWff;0f#R;37Hqtif|2+{y_Ta_Y+jZOn;B1i+!ZB_mc p00960qfMq100006Nkl`2(002ovPDHLkV1l|2O4$Ga literal 0 HcmV?d00001 diff --git a/src/static/tab/task.png b/src/static/tab/task.png new file mode 100644 index 0000000000000000000000000000000000000000..e20b70445435d1151880ba40cbfdd4d211e5650a GIT binary patch literal 632 zcmV-;0*C#HP)aKvh4>>{22}1U%>+afs6e<;(9pnV`2F(#z zRNa6*oo^NMaWOF@qyOwb_RKub|1_p8au1qQS*9zf4*29VB%tQfsZh zOK^zfX7J-{&}CvD2Fb3$A(BfV?=ZR!Iwr~bhHhSS?Pp>ufi^TrAlYzIEyaRE=vEwP?FdC`6zgbtc2>;9SplL1BWTK^ZtQZBv5Zi-qpOnUv+!mipfp1e{1= zq<`3yK>wPfdGwMQm+9%GPpBOsMbOmCxy<4(00030|4ifFA^-pY21!IgR09B+sYJPk SD(4Hzzb|%V19sanBw9iR8ci_ zi?!G_-nB5Owo4;v)UB09qaG5=ZsFNp;lmmRDN~aKNM6G5kN7LN;gFd23-50d=@bxw z$c=>N_&?9=yKs})jsg9ThVhre_q#+o1wI)HGyEaJr~<3%GYkRDdWKUig!bC6A@EiE zT>8~s1qb%wxR_^lFwbpe}J~GF$chebH1S}b%Cnuxw;32+@`bV zo)^}P3;NB)G`6qq)hV#ZZNZ4i!x`ut)*-h^op9Ce6j*iMru{Ag3e&dx@MZx;AMeXl z_u+HlKUV+pO#&ik#EeO*2prw!c1gSOZ7r}$u0UuoSB+MI-O^7P`&WUea$Z)Uk9mmg zu<|x?j-yqe=eVH503-^8Z0HL%`)Ch{Q5QMK+Xb$3Q;OD=A1p;)OWrA!rHBJ%>dG}wND`2vM3k3gzXr(ysiaKtJ9XbE za0gr(9~eG5(-8lq*I%h*+w{a5Vup0RR6L?28=$ g000I_L_t&o0P9p9Y)tGqmjD0&07*qoM6N<$f*@=YB>(^b literal 0 HcmV?d00001 diff --git a/src/static/tab/user.png b/src/static/tab/user.png new file mode 100644 index 0000000000000000000000000000000000000000..3fd0cf7342a66703088a3f0dd2312f2f3a145f1a GIT binary patch literal 3068 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 KMNUMnLSTaW;j>8q literal 0 HcmV?d00001 diff --git a/src/static/tab/usered.png b/src/static/tab/usered.png new file mode 100644 index 0000000000000000000000000000000000000000..fe8940e2b3b59dc17d9330f27b942b80a71eb4e3 GIT binary patch literal 2943 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 p00960O{fx+00006Nkl { + listener.call(this, e); + }); + } + off(type, listener) { + const __events = this.__events; + const events = __events[type]; + if (!events || !events.length) { + return; + } + if (!listener) { + delete __events[type]; + return; + } + for (let i = 0, len = events.length; i < len; i++) { + if (events[i] === listener) { + events.splice(i, 1); + i--; + } + } + } +} +class Image { + constructor() { + this.currentSrc = null + this.naturalHeight = 0 + this.naturalWidth = 0 + this.width = 0 + this.height = 0 + this.tagName = 'IMG' + } + set src(src) { + this.currentSrc = src + uni.getImageInfo({ + src, + success: (res) => { + this.naturalWidth = this.width = res.width + this.naturalHeight = this.height = res.height + this.onload() + }, + fail: () => { + this.onerror() + } + }) + } + get src() { + return this.currentSrc + } +} +class OffscreenCanvas { + constructor(ctx, com, canvasId) { + this.tagName = 'canvas' + this.com = com + this.canvasId = canvasId + this.ctx = ctx + } + set width(w) { + this.com.offscreenWidth = w + } + set height(h) { + this.com.offscreenHeight = h + } + get width() { + return this.com.offscreenWidth || 0 + } + get height() { + return this.com.offscreenHeight || 0 + } + getContext(type) { + return this.ctx + } + getImageData() { + return new Promise((resolve, reject) => { + this.com.$nextTick(() => { + uni.canvasGetImageData({ + x:0, + y:0, + width: this.com.offscreenWidth, + height: this.com.offscreenHeight, + canvasId: this.canvasId, + success: (res) => { + resolve(res) + }, + fail: (err) => { + reject(err) + }, + }, this.com) + }) + }) + } +} +export class Canvas { + constructor(ctx, com, isNew, canvasNode={}) { + cacheChart[com.canvasId] = {ctx} + this.canvasId = com.canvasId; + this.chart = null; + this.isNew = isNew + this.tagName = 'canvas' + this.canvasNode = canvasNode; + this.com = com; + if (!isNew) {this._initStyle(ctx)} + this._initEvent(); + this._ee = new EventEmit() + } + getContext(type) { + if (type === '2d') { + return this.ctx; + } + } + setChart(chart) { + this.chart = chart; + } + createOffscreenCanvas(param){ + if(!this.children) { + this.com.isOffscreenCanvas = true + this.com.offscreenWidth = param.width||300 + this.com.offscreenHeight = param.height||300 + const com = this.com + const canvasId = this.com.offscreenCanvasId + const context = uni.createCanvasContext(canvasId, this.com) + this._initStyle(context) + this.children = new OffscreenCanvas(context, com, canvasId) + } + return this.children + } + appendChild(child) { + console.log('child', child) + } + dispatchEvent(type, e) { + if(typeof type == 'object') { + this._ee.emit(type.type, type); + } else { + this._ee.emit(type, e); + } + return true + } + attachEvent() { + } + detachEvent() { + } + addEventListener(type, listener) { + this._ee.on(type, listener) + } + removeEventListener(type, listener) { + this._ee.off(type, listener) + } + _initCanvas(zrender, ctx) { + zrender.util.getContext = function() { + return ctx; + }; + zrender.util.$override('measureText', function(text, font) { + ctx.font = font || '12px sans-serif'; + return ctx.measureText(text, font); + }); + } + _initStyle(ctx, child) { + const styles = [ + 'fillStyle', + 'strokeStyle', + 'fontSize', + 'globalAlpha', + 'opacity', + 'textAlign', + 'textBaseline', + 'shadow', + 'lineWidth', + 'lineCap', + 'lineJoin', + 'lineDash', + 'miterLimit', + 'font' + ]; + const colorReg = /#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])\b/g; + styles.forEach(style => { + Object.defineProperty(ctx, style, { + set: value => { + if (style === 'font' && fontSizeReg.test(value)) { + const match = fontSizeReg.exec(value); + ctx.setFontSize(match[1]); + return; + } + if (style === 'opacity') { + ctx.setGlobalAlpha(value) + return; + } + if (style !== 'fillStyle' && style !== 'strokeStyle' || value !== 'none' && value !== null) { + // #ifdef H5 || APP-PLUS || MP-BAIDU + if(typeof value == 'object') { + if (value.hasOwnProperty('colorStop') || value.hasOwnProperty('colors')) { + ctx['set' + style.charAt(0).toUpperCase() + style.slice(1)](value); + } + return + } + // #endif + // #ifdef MP-TOUTIAO + if(colorReg.test(value)) { + value = value.replace(colorReg, '#$1$1$2$2$3$3') + } + // #endif + ctx['set' + style.charAt(0).toUpperCase() + style.slice(1)](value); + } + } + }); + }); + if(!this.isNew && !child) { + ctx.uniDrawImage = ctx.drawImage + ctx.drawImage = (...a) => { + a[0] = a[0].src + ctx.uniDrawImage(...a) + } + } + if(!ctx.createRadialGradient) { + ctx.createRadialGradient = function() { + return ctx.createCircularGradient(...[...arguments].slice(-3)) + }; + } + // 字节不支持 + if (!ctx.strokeText) { + ctx.strokeText = (...a) => { + ctx.fillText(...a) + } + } + // 钉钉不支持 + if (!ctx.measureText) { + const strLen = (str) => { + let len = 0; + for (let i = 0; i < str.length; i++) { + if (str.charCodeAt(i) > 0 && str.charCodeAt(i) < 128) { + len++; + } else { + len += 2; + } + } + return len; + } + ctx.measureText = (text, font) => { + let fontSize = 12; + if (font) { + fontSize = parseInt(font.match(/([\d\.]+)px/)[1]) + } + fontSize /= 2; + return { + width: strLen(text) * fontSize + }; + } + } + } + + _initEvent(e) { + this.event = {}; + const eventNames = [{ + wxName: 'touchStart', + ecName: 'mousedown' + }, { + wxName: 'touchMove', + ecName: 'mousemove' + }, { + wxName: 'touchEnd', + ecName: 'mouseup' + }, { + wxName: 'touchEnd', + ecName: 'click' + }]; + + eventNames.forEach(name => { + this.event[name.wxName] = e => { + const touch = e.touches[0]; + this.chart.getZr().handler.dispatch(name.ecName, { + zrX: name.wxName === 'tap' ? touch.clientX : touch.x, + zrY: name.wxName === 'tap' ? touch.clientY : touch.y + }); + }; + }); + } + + set width(w) { + this.canvasNode.width = w + } + set height(h) { + this.canvasNode.height = h + } + + get width() { + return this.canvasNode.width || 0 + } + get height() { + return this.canvasNode.height || 0 + } + get ctx() { + return cacheChart[this.canvasId]['ctx'] || null + } + set chart(chart) { + cacheChart[this.canvasId]['chart'] = chart + } + get chart() { + return cacheChart[this.canvasId]['chart'] || null + } +} + +export function dispatch(name, {x,y, wheelDelta}) { + this.dispatch(name, { + zrX: x, + zrY: y, + zrDelta: wheelDelta, + preventDefault: () => {}, + stopPropagation: () =>{} + }); +} +export function setCanvasCreator(echarts, {canvas, node}) { + // echarts.setCanvasCreator(() => canvas); + echarts.registerPreprocessor(option => { + if (option && option.series) { + if (option.series.length > 0) { + option.series.forEach(series => { + series.progressive = 0; + }); + } else if (typeof option.series === 'object') { + option.series.progressive = 0; + } + } + }); + function loadImage(src, onload, onerror) { + let img = null + if(node && node.createImage) { + img = node.createImage() + img.onload = onload.bind(img); + img.onerror = onerror.bind(img); + img.src = src; + return img + } else { + img = new Image() + img.onload = onload.bind(img) + img.onerror = onerror.bind(img); + img.src = src + return img + } + } + if(echarts.setPlatformAPI) { + echarts.setPlatformAPI({ + loadImage: canvas.setChart ? loadImage : null, + createCanvas(){ + return canvas + } + }) + } +} \ No newline at end of file diff --git a/src/uni_modules/lime-echart/components/l-echart/l-echart.vue b/src/uni_modules/lime-echart/components/l-echart/l-echart.vue new file mode 100644 index 0000000..1258d22 --- /dev/null +++ b/src/uni_modules/lime-echart/components/l-echart/l-echart.vue @@ -0,0 +1,517 @@ + + + + diff --git a/src/uni_modules/lime-echart/components/l-echart/utils.js b/src/uni_modules/lime-echart/components/l-echart/utils.js new file mode 100644 index 0000000..5ff66c5 --- /dev/null +++ b/src/uni_modules/lime-echart/components/l-echart/utils.js @@ -0,0 +1,74 @@ +// #ifndef APP-NVUE +// 计算版本 +export function compareVersion(v1, v2) { + v1 = v1.split('.') + v2 = v2.split('.') + const len = Math.max(v1.length, v2.length) + while (v1.length < len) { + v1.push('0') + } + while (v2.length < len) { + v2.push('0') + } + for (let i = 0; i < len; i++) { + const num1 = parseInt(v1[i], 10) + const num2 = parseInt(v2[i], 10) + + if (num1 > num2) { + return 1 + } else if (num1 < num2) { + return -1 + } + } + return 0 +} + +export function wrapTouch(event) { + for (let i = 0; i < event.touches.length; ++i) { + const touch = event.touches[i]; + touch.offsetX = touch.x; + touch.offsetY = touch.y; + } + return event; +} +export const devicePixelRatio = wx.getSystemInfoSync().pixelRatio +// #endif +// #ifdef APP-NVUE +export function base64ToPath(base64) { + return new Promise((resolve, reject) => { + const [, format, bodyData] = /data:image\/(\w+);base64,(.*)/.exec(base64) || []; + const bitmap = new plus.nativeObj.Bitmap('bitmap' + Date.now()) + bitmap.loadBase64Data(base64, () => { + if (!format) { + reject(new Error('ERROR_BASE64SRC_PARSE')) + } + const time = new Date().getTime(); + const filePath = `_doc/uniapp_temp/${time}.${format}` + + bitmap.save(filePath, {}, + () => { + bitmap.clear() + resolve(filePath) + }, + (error) => { + bitmap.clear() + console.error(`${JSON.stringify(error)}`) + reject(error) + }) + }, (error) => { + bitmap.clear() + console.error(`${JSON.stringify(error)}`) + reject(error) + }) + }) +} +// #endif + + +export function sleep(time) { + return new Promise((resolve) => { + setTimeout(() => { + resolve(true) + },time) + }) +} \ No newline at end of file diff --git a/src/uni_modules/lime-echart/components/lime-echart/index.vue b/src/uni_modules/lime-echart/components/lime-echart/index.vue new file mode 100644 index 0000000..e69de29 diff --git a/src/uni_modules/piaoyi-cityPicker/changelog.md b/src/uni_modules/piaoyi-cityPicker/changelog.md new file mode 100644 index 0000000..7554b0a --- /dev/null +++ b/src/uni_modules/piaoyi-cityPicker/changelog.md @@ -0,0 +1,22 @@ +## 1.1.7(2024-10-29) +修复底部露出部分组件bug +## 1.1.6(2024-08-20) +更新本地数据源为最新数据源 +## 1.1.5(2024-06-12) +使用说明文档优化 +## 1.1.4(2024-06-12) +增加问题反馈描述 +## 1.1.3(2024-02-29) +更新使用文档 +## 1.1.2(2024-01-16) +解决Vue3项目导入导出报错问题 +## 1.1.1(2023-12-06) +defaultValue可以传入defaultValue:['河北省','唐山市','丰南区']数组类型以及defaultValue: '420103'地区编码字符串类型 +## 1.1.0(2023-12-05) +即默认值传入地区编码,也支持传入中文省市区数组 +## 1.0.9(2023-12-04) +优化 +## 1.0.8(2023-10-24) +修复东菀市和中山市下各镇的行政编码错误问题 +## 1.0.4(2023-09-15) +改为uni_modules规范 \ No newline at end of file diff --git a/src/uni_modules/piaoyi-cityPicker/components/piaoyi-cityPicker/cityData.js b/src/uni_modules/piaoyi-cityPicker/components/piaoyi-cityPicker/cityData.js new file mode 100644 index 0000000..cc05c11 --- /dev/null +++ b/src/uni_modules/piaoyi-cityPicker/components/piaoyi-cityPicker/cityData.js @@ -0,0 +1,10661 @@ +export const addressList = [{ + "code": "11", + "name": "北京市", + "children": [{ + "code": "1101", + "name": "市辖区", + "children": [{ + "code": "110101", + "name": "东城区" + }, { + "code": "110102", + "name": "西城区" + }, { + "code": "110105", + "name": "朝阳区" + }, { + "code": "110106", + "name": "丰台区" + }, { + "code": "110107", + "name": "石景山区" + }, { + "code": "110108", + "name": "海淀区" + }, { + "code": "110109", + "name": "门头沟区" + }, { + "code": "110111", + "name": "房山区" + }, { + "code": "110112", + "name": "通州区" + }, { + "code": "110113", + "name": "顺义区" + }, { + "code": "110114", + "name": "昌平区" + }, { + "code": "110115", + "name": "大兴区" + }, { + "code": "110116", + "name": "怀柔区" + }, { + "code": "110117", + "name": "平谷区" + }, { + "code": "110118", + "name": "密云区" + }, { + "code": "110119", + "name": "延庆区" + }] + }] +}, { + "code": "12", + "name": "天津市", + "children": [{ + "code": "1201", + "name": "市辖区", + "children": [{ + "code": "120101", + "name": "和平区" + }, { + "code": "120102", + "name": "河东区" + }, { + "code": "120103", + "name": "河西区" + }, { + "code": "120104", + "name": "南开区" + }, { + "code": "120105", + "name": "河北区" + }, { + "code": "120106", + "name": "红桥区" + }, { + "code": "120110", + "name": "东丽区" + }, { + "code": "120111", + "name": "西青区" + }, { + "code": "120112", + "name": "津南区" + }, { + "code": "120113", + "name": "北辰区" + }, { + "code": "120114", + "name": "武清区" + }, { + "code": "120115", + "name": "宝坻区" + }, { + "code": "120116", + "name": "滨海新区" + }, { + "code": "120117", + "name": "宁河区" + }, { + "code": "120118", + "name": "静海区" + }, { + "code": "120119", + "name": "蓟州区" + }] + }] +}, { + "code": "13", + "name": "河北省", + "children": [{ + "code": "1301", + "name": "石家庄市", + "children": [{ + "code": "130102", + "name": "长安区" + }, { + "code": "130104", + "name": "桥西区" + }, { + "code": "130105", + "name": "新华区" + }, { + "code": "130107", + "name": "井陉矿区" + }, { + "code": "130108", + "name": "裕华区" + }, { + "code": "130109", + "name": "藁城区" + }, { + "code": "130110", + "name": "鹿泉区" + }, { + "code": "130111", + "name": "栾城区" + }, { + "code": "130121", + "name": "井陉县" + }, { + "code": "130123", + "name": "正定县" + }, { + "code": "130125", + "name": "行唐县" + }, { + "code": "130126", + "name": "灵寿县" + }, { + "code": "130127", + "name": "高邑县" + }, { + "code": "130128", + "name": "深泽县" + }, { + "code": "130129", + "name": "赞皇县" + }, { + "code": "130130", + "name": "无极县" + }, { + "code": "130131", + "name": "平山县" + }, { + "code": "130132", + "name": "元氏县" + }, { + "code": "130133", + "name": "赵县" + }, { + "code": "130171", + "name": "石家庄高新技术产业开发区" + }, { + "code": "130172", + "name": "石家庄循环化工园区" + }, { + "code": "130181", + "name": "辛集市" + }, { + "code": "130183", + "name": "晋州市" + }, { + "code": "130184", + "name": "新乐市" + }] + }, { + "code": "1302", + "name": "唐山市", + "children": [{ + "code": "130202", + "name": "路南区" + }, { + "code": "130203", + "name": "路北区" + }, { + "code": "130204", + "name": "古冶区" + }, { + "code": "130205", + "name": "开平区" + }, { + "code": "130207", + "name": "丰南区" + }, { + "code": "130208", + "name": "丰润区" + }, { + "code": "130209", + "name": "曹妃甸区" + }, { + "code": "130224", + "name": "滦南县" + }, { + "code": "130225", + "name": "乐亭县" + }, { + "code": "130227", + "name": "迁西县" + }, { + "code": "130229", + "name": "玉田县" + }, { + "code": "130271", + "name": "河北唐山芦台经济开发区" + }, { + "code": "130272", + "name": "唐山市汉沽管理区" + }, { + "code": "130273", + "name": "唐山高新技术产业开发区" + }, { + "code": "130274", + "name": "河北唐山海港经济开发区" + }, { + "code": "130281", + "name": "遵化市" + }, { + "code": "130283", + "name": "迁安市" + }, { + "code": "130284", + "name": "滦州市" + }] + }, { + "code": "1303", + "name": "秦皇岛市", + "children": [{ + "code": "130302", + "name": "海港区" + }, { + "code": "130303", + "name": "山海关区" + }, { + "code": "130304", + "name": "北戴河区" + }, { + "code": "130306", + "name": "抚宁区" + }, { + "code": "130321", + "name": "青龙满族自治县" + }, { + "code": "130322", + "name": "昌黎县" + }, { + "code": "130324", + "name": "卢龙县" + }, { + "code": "130371", + "name": "秦皇岛市经济技术开发区" + }, { + "code": "130372", + "name": "北戴河新区" + }] + }, { + "code": "1304", + "name": "邯郸市", + "children": [{ + "code": "130402", + "name": "邯山区" + }, { + "code": "130403", + "name": "丛台区" + }, { + "code": "130404", + "name": "复兴区" + }, { + "code": "130406", + "name": "峰峰矿区" + }, { + "code": "130407", + "name": "肥乡区" + }, { + "code": "130408", + "name": "永年区" + }, { + "code": "130423", + "name": "临漳县" + }, { + "code": "130424", + "name": "成安县" + }, { + "code": "130425", + "name": "大名县" + }, { + "code": "130426", + "name": "涉县" + }, { + "code": "130427", + "name": "磁县" + }, { + "code": "130430", + "name": "邱县" + }, { + "code": "130431", + "name": "鸡泽县" + }, { + "code": "130432", + "name": "广平县" + }, { + "code": "130433", + "name": "馆陶县" + }, { + "code": "130434", + "name": "魏县" + }, { + "code": "130435", + "name": "曲周县" + }, { + "code": "130471", + "name": "邯郸经济技术开发区" + }, { + "code": "130473", + "name": "邯郸冀南新区" + }, { + "code": "130481", + "name": "武安市" + }] + }, { + "code": "1305", + "name": "邢台市", + "children": [{ + "code": "130502", + "name": "襄都区" + }, { + "code": "130503", + "name": "信都区" + }, { + "code": "130505", + "name": "任泽区" + }, { + "code": "130506", + "name": "南和区" + }, { + "code": "130522", + "name": "临城县" + }, { + "code": "130523", + "name": "内丘县" + }, { + "code": "130524", + "name": "柏乡县" + }, { + "code": "130525", + "name": "隆尧县" + }, { + "code": "130528", + "name": "宁晋县" + }, { + "code": "130529", + "name": "巨鹿县" + }, { + "code": "130530", + "name": "新河县" + }, { + "code": "130531", + "name": "广宗县" + }, { + "code": "130532", + "name": "平乡县" + }, { + "code": "130533", + "name": "威县" + }, { + "code": "130534", + "name": "清河县" + }, { + "code": "130535", + "name": "临西县" + }, { + "code": "130571", + "name": "河北邢台经济开发区" + }, { + "code": "130581", + "name": "南宫市" + }, { + "code": "130582", + "name": "沙河市" + }] + }, { + "code": "1306", + "name": "保定市", + "children": [{ + "code": "130602", + "name": "竞秀区" + }, { + "code": "130606", + "name": "莲池区" + }, { + "code": "130607", + "name": "满城区" + }, { + "code": "130608", + "name": "清苑区" + }, { + "code": "130609", + "name": "徐水区" + }, { + "code": "130623", + "name": "涞水县" + }, { + "code": "130624", + "name": "阜平县" + }, { + "code": "130626", + "name": "定兴县" + }, { + "code": "130627", + "name": "唐县" + }, { + "code": "130628", + "name": "高阳县" + }, { + "code": "130629", + "name": "容城县" + }, { + "code": "130630", + "name": "涞源县" + }, { + "code": "130631", + "name": "望都县" + }, { + "code": "130632", + "name": "安新县" + }, { + "code": "130633", + "name": "易县" + }, { + "code": "130634", + "name": "曲阳县" + }, { + "code": "130635", + "name": "蠡县" + }, { + "code": "130636", + "name": "顺平县" + }, { + "code": "130637", + "name": "博野县" + }, { + "code": "130638", + "name": "雄县" + }, { + "code": "130671", + "name": "保定高新技术产业开发区" + }, { + "code": "130672", + "name": "保定白沟新城" + }, { + "code": "130681", + "name": "涿州市" + }, { + "code": "130682", + "name": "定州市" + }, { + "code": "130683", + "name": "安国市" + }, { + "code": "130684", + "name": "高碑店市" + }] + }, { + "code": "1307", + "name": "张家口市", + "children": [{ + "code": "130702", + "name": "桥东区" + }, { + "code": "130703", + "name": "桥西区" + }, { + "code": "130705", + "name": "宣化区" + }, { + "code": "130706", + "name": "下花园区" + }, { + "code": "130708", + "name": "万全区" + }, { + "code": "130709", + "name": "崇礼区" + }, { + "code": "130722", + "name": "张北县" + }, { + "code": "130723", + "name": "康保县" + }, { + "code": "130724", + "name": "沽源县" + }, { + "code": "130725", + "name": "尚义县" + }, { + "code": "130726", + "name": "蔚县" + }, { + "code": "130727", + "name": "阳原县" + }, { + "code": "130728", + "name": "怀安县" + }, { + "code": "130730", + "name": "怀来县" + }, { + "code": "130731", + "name": "涿鹿县" + }, { + "code": "130732", + "name": "赤城县" + }, { + "code": "130771", + "name": "张家口经济开发区" + }, { + "code": "130772", + "name": "张家口市察北管理区" + }, { + "code": "130773", + "name": "张家口市塞北管理区" + }] + }, { + "code": "1308", + "name": "承德市", + "children": [{ + "code": "130802", + "name": "双桥区" + }, { + "code": "130803", + "name": "双滦区" + }, { + "code": "130804", + "name": "鹰手营子矿区" + }, { + "code": "130821", + "name": "承德县" + }, { + "code": "130822", + "name": "兴隆县" + }, { + "code": "130824", + "name": "滦平县" + }, { + "code": "130825", + "name": "隆化县" + }, { + "code": "130826", + "name": "丰宁满族自治县" + }, { + "code": "130827", + "name": "宽城满族自治县" + }, { + "code": "130828", + "name": "围场满族蒙古族自治县" + }, { + "code": "130871", + "name": "承德高新技术产业开发区" + }, { + "code": "130881", + "name": "平泉市" + }] + }, { + "code": "1309", + "name": "沧州市", + "children": [{ + "code": "130902", + "name": "新华区" + }, { + "code": "130903", + "name": "运河区" + }, { + "code": "130921", + "name": "沧县" + }, { + "code": "130922", + "name": "青县" + }, { + "code": "130923", + "name": "东光县" + }, { + "code": "130924", + "name": "海兴县" + }, { + "code": "130925", + "name": "盐山县" + }, { + "code": "130926", + "name": "肃宁县" + }, { + "code": "130927", + "name": "南皮县" + }, { + "code": "130928", + "name": "吴桥县" + }, { + "code": "130929", + "name": "献县" + }, { + "code": "130930", + "name": "孟村回族自治县" + }, { + "code": "130971", + "name": "河北沧州经济开发区" + }, { + "code": "130972", + "name": "沧州高新技术产业开发区" + }, { + "code": "130973", + "name": "沧州渤海新区" + }, { + "code": "130981", + "name": "泊头市" + }, { + "code": "130982", + "name": "任丘市" + }, { + "code": "130983", + "name": "黄骅市" + }, { + "code": "130984", + "name": "河间市" + }] + }, { + "code": "1310", + "name": "廊坊市", + "children": [{ + "code": "131002", + "name": "安次区" + }, { + "code": "131003", + "name": "广阳区" + }, { + "code": "131022", + "name": "固安县" + }, { + "code": "131023", + "name": "永清县" + }, { + "code": "131024", + "name": "香河县" + }, { + "code": "131025", + "name": "大城县" + }, { + "code": "131026", + "name": "文安县" + }, { + "code": "131028", + "name": "大厂回族自治县" + }, { + "code": "131071", + "name": "廊坊经济技术开发区" + }, { + "code": "131081", + "name": "霸州市" + }, { + "code": "131082", + "name": "三河市" + }] + }, { + "code": "1311", + "name": "衡水市", + "children": [{ + "code": "131102", + "name": "桃城区" + }, { + "code": "131103", + "name": "冀州区" + }, { + "code": "131121", + "name": "枣强县" + }, { + "code": "131122", + "name": "武邑县" + }, { + "code": "131123", + "name": "武强县" + }, { + "code": "131124", + "name": "饶阳县" + }, { + "code": "131125", + "name": "安平县" + }, { + "code": "131126", + "name": "故城县" + }, { + "code": "131127", + "name": "景县" + }, { + "code": "131128", + "name": "阜城县" + }, { + "code": "131171", + "name": "河北衡水高新技术产业开发区" + }, { + "code": "131172", + "name": "衡水滨湖新区" + }, { + "code": "131182", + "name": "深州市" + }] + }] +}, { + "code": "14", + "name": "山西省", + "children": [{ + "code": "1401", + "name": "太原市", + "children": [{ + "code": "140105", + "name": "小店区" + }, { + "code": "140106", + "name": "迎泽区" + }, { + "code": "140107", + "name": "杏花岭区" + }, { + "code": "140108", + "name": "尖草坪区" + }, { + "code": "140109", + "name": "万柏林区" + }, { + "code": "140110", + "name": "晋源区" + }, { + "code": "140121", + "name": "清徐县" + }, { + "code": "140122", + "name": "阳曲县" + }, { + "code": "140123", + "name": "娄烦县" + }, { + "code": "140171", + "name": "山西转型综合改革示范区" + }, { + "code": "140181", + "name": "古交市" + }] + }, { + "code": "1402", + "name": "大同市", + "children": [{ + "code": "140212", + "name": "新荣区" + }, { + "code": "140213", + "name": "平城区" + }, { + "code": "140214", + "name": "云冈区" + }, { + "code": "140215", + "name": "云州区" + }, { + "code": "140221", + "name": "阳高县" + }, { + "code": "140222", + "name": "天镇县" + }, { + "code": "140223", + "name": "广灵县" + }, { + "code": "140224", + "name": "灵丘县" + }, { + "code": "140225", + "name": "浑源县" + }, { + "code": "140226", + "name": "左云县" + }, { + "code": "140271", + "name": "山西大同经济开发区" + }] + }, { + "code": "1403", + "name": "阳泉市", + "children": [{ + "code": "140302", + "name": "城区" + }, { + "code": "140303", + "name": "矿区" + }, { + "code": "140311", + "name": "郊区" + }, { + "code": "140321", + "name": "平定县" + }, { + "code": "140322", + "name": "盂县" + }] + }, { + "code": "1404", + "name": "长治市", + "children": [{ + "code": "140403", + "name": "潞州区" + }, { + "code": "140404", + "name": "上党区" + }, { + "code": "140405", + "name": "屯留区" + }, { + "code": "140406", + "name": "潞城区" + }, { + "code": "140423", + "name": "襄垣县" + }, { + "code": "140425", + "name": "平顺县" + }, { + "code": "140426", + "name": "黎城县" + }, { + "code": "140427", + "name": "壶关县" + }, { + "code": "140428", + "name": "长子县" + }, { + "code": "140429", + "name": "武乡县" + }, { + "code": "140430", + "name": "沁县" + }, { + "code": "140431", + "name": "沁源县" + }] + }, { + "code": "1405", + "name": "晋城市", + "children": [{ + "code": "140502", + "name": "城区" + }, { + "code": "140521", + "name": "沁水县" + }, { + "code": "140522", + "name": "阳城县" + }, { + "code": "140524", + "name": "陵川县" + }, { + "code": "140525", + "name": "泽州县" + }, { + "code": "140581", + "name": "高平市" + }] + }, { + "code": "1406", + "name": "朔州市", + "children": [{ + "code": "140602", + "name": "朔城区" + }, { + "code": "140603", + "name": "平鲁区" + }, { + "code": "140621", + "name": "山阴县" + }, { + "code": "140622", + "name": "应县" + }, { + "code": "140623", + "name": "右玉县" + }, { + "code": "140671", + "name": "山西朔州经济开发区" + }, { + "code": "140681", + "name": "怀仁市" + }] + }, { + "code": "1407", + "name": "晋中市", + "children": [{ + "code": "140702", + "name": "榆次区" + }, { + "code": "140703", + "name": "太谷区" + }, { + "code": "140721", + "name": "榆社县" + }, { + "code": "140722", + "name": "左权县" + }, { + "code": "140723", + "name": "和顺县" + }, { + "code": "140724", + "name": "昔阳县" + }, { + "code": "140725", + "name": "寿阳县" + }, { + "code": "140727", + "name": "祁县" + }, { + "code": "140728", + "name": "平遥县" + }, { + "code": "140729", + "name": "灵石县" + }, { + "code": "140781", + "name": "介休市" + }] + }, { + "code": "1408", + "name": "运城市", + "children": [{ + "code": "140802", + "name": "盐湖区" + }, { + "code": "140821", + "name": "临猗县" + }, { + "code": "140822", + "name": "万荣县" + }, { + "code": "140823", + "name": "闻喜县" + }, { + "code": "140824", + "name": "稷山县" + }, { + "code": "140825", + "name": "新绛县" + }, { + "code": "140826", + "name": "绛县" + }, { + "code": "140827", + "name": "垣曲县" + }, { + "code": "140828", + "name": "夏县" + }, { + "code": "140829", + "name": "平陆县" + }, { + "code": "140830", + "name": "芮城县" + }, { + "code": "140881", + "name": "永济市" + }, { + "code": "140882", + "name": "河津市" + }] + }, { + "code": "1409", + "name": "忻州市", + "children": [{ + "code": "140902", + "name": "忻府区" + }, { + "code": "140921", + "name": "定襄县" + }, { + "code": "140922", + "name": "五台县" + }, { + "code": "140923", + "name": "代县" + }, { + "code": "140924", + "name": "繁峙县" + }, { + "code": "140925", + "name": "宁武县" + }, { + "code": "140926", + "name": "静乐县" + }, { + "code": "140927", + "name": "神池县" + }, { + "code": "140928", + "name": "五寨县" + }, { + "code": "140929", + "name": "岢岚县" + }, { + "code": "140930", + "name": "河曲县" + }, { + "code": "140931", + "name": "保德县" + }, { + "code": "140932", + "name": "偏关县" + }, { + "code": "140971", + "name": "五台山风景名胜区" + }, { + "code": "140981", + "name": "原平市" + }] + }, { + "code": "1410", + "name": "临汾市", + "children": [{ + "code": "141002", + "name": "尧都区" + }, { + "code": "141021", + "name": "曲沃县" + }, { + "code": "141022", + "name": "翼城县" + }, { + "code": "141023", + "name": "襄汾县" + }, { + "code": "141024", + "name": "洪洞县" + }, { + "code": "141025", + "name": "古县" + }, { + "code": "141026", + "name": "安泽县" + }, { + "code": "141027", + "name": "浮山县" + }, { + "code": "141028", + "name": "吉县" + }, { + "code": "141029", + "name": "乡宁县" + }, { + "code": "141030", + "name": "大宁县" + }, { + "code": "141031", + "name": "隰县" + }, { + "code": "141032", + "name": "永和县" + }, { + "code": "141033", + "name": "蒲县" + }, { + "code": "141034", + "name": "汾西县" + }, { + "code": "141081", + "name": "侯马市" + }, { + "code": "141082", + "name": "霍州市" + }] + }, { + "code": "1411", + "name": "吕梁市", + "children": [{ + "code": "141102", + "name": "离石区" + }, { + "code": "141121", + "name": "文水县" + }, { + "code": "141122", + "name": "交城县" + }, { + "code": "141123", + "name": "兴县" + }, { + "code": "141124", + "name": "临县" + }, { + "code": "141125", + "name": "柳林县" + }, { + "code": "141126", + "name": "石楼县" + }, { + "code": "141127", + "name": "岚县" + }, { + "code": "141128", + "name": "方山县" + }, { + "code": "141129", + "name": "中阳县" + }, { + "code": "141130", + "name": "交口县" + }, { + "code": "141181", + "name": "孝义市" + }, { + "code": "141182", + "name": "汾阳市" + }] + }] +}, { + "code": "15", + "name": "内蒙古自治区", + "children": [{ + "code": "1501", + "name": "呼和浩特市", + "children": [{ + "code": "150102", + "name": "新城区" + }, { + "code": "150103", + "name": "回民区" + }, { + "code": "150104", + "name": "玉泉区" + }, { + "code": "150105", + "name": "赛罕区" + }, { + "code": "150121", + "name": "土默特左旗" + }, { + "code": "150122", + "name": "托克托县" + }, { + "code": "150123", + "name": "和林格尔县" + }, { + "code": "150124", + "name": "清水河县" + }, { + "code": "150125", + "name": "武川县" + }, { + "code": "150172", + "name": "呼和浩特经济技术开发区" + }] + }, { + "code": "1502", + "name": "包头市", + "children": [{ + "code": "150202", + "name": "东河区" + }, { + "code": "150203", + "name": "昆都仑区" + }, { + "code": "150204", + "name": "青山区" + }, { + "code": "150205", + "name": "石拐区" + }, { + "code": "150206", + "name": "白云鄂博矿区" + }, { + "code": "150207", + "name": "九原区" + }, { + "code": "150221", + "name": "土默特右旗" + }, { + "code": "150222", + "name": "固阳县" + }, { + "code": "150223", + "name": "达尔罕茂明安联合旗" + }, { + "code": "150271", + "name": "包头稀土高新技术产业开发区" + }] + }, { + "code": "1503", + "name": "乌海市", + "children": [{ + "code": "150302", + "name": "海勃湾区" + }, { + "code": "150303", + "name": "海南区" + }, { + "code": "150304", + "name": "乌达区" + }] + }, { + "code": "1504", + "name": "赤峰市", + "children": [{ + "code": "150402", + "name": "红山区" + }, { + "code": "150403", + "name": "元宝山区" + }, { + "code": "150404", + "name": "松山区" + }, { + "code": "150421", + "name": "阿鲁科尔沁旗" + }, { + "code": "150422", + "name": "巴林左旗" + }, { + "code": "150423", + "name": "巴林右旗" + }, { + "code": "150424", + "name": "林西县" + }, { + "code": "150425", + "name": "克什克腾旗" + }, { + "code": "150426", + "name": "翁牛特旗" + }, { + "code": "150428", + "name": "喀喇沁旗" + }, { + "code": "150429", + "name": "宁城县" + }, { + "code": "150430", + "name": "敖汉旗" + }] + }, { + "code": "1505", + "name": "通辽市", + "children": [{ + "code": "150502", + "name": "科尔沁区" + }, { + "code": "150521", + "name": "科尔沁左翼中旗" + }, { + "code": "150522", + "name": "科尔沁左翼后旗" + }, { + "code": "150523", + "name": "开鲁县" + }, { + "code": "150524", + "name": "库伦旗" + }, { + "code": "150525", + "name": "奈曼旗" + }, { + "code": "150526", + "name": "扎鲁特旗" + }, { + "code": "150571", + "name": "通辽经济技术开发区" + }, { + "code": "150581", + "name": "霍林郭勒市" + }] + }, { + "code": "1506", + "name": "鄂尔多斯市", + "children": [{ + "code": "150602", + "name": "东胜区" + }, { + "code": "150603", + "name": "康巴什区" + }, { + "code": "150621", + "name": "达拉特旗" + }, { + "code": "150622", + "name": "准格尔旗" + }, { + "code": "150623", + "name": "鄂托克前旗" + }, { + "code": "150624", + "name": "鄂托克旗" + }, { + "code": "150625", + "name": "杭锦旗" + }, { + "code": "150626", + "name": "乌审旗" + }, { + "code": "150627", + "name": "伊金霍洛旗" + }] + }, { + "code": "1507", + "name": "呼伦贝尔市", + "children": [{ + "code": "150702", + "name": "海拉尔区" + }, { + "code": "150703", + "name": "扎赉诺尔区" + }, { + "code": "150721", + "name": "阿荣旗" + }, { + "code": "150722", + "name": "莫力达瓦达斡尔族自治旗" + }, { + "code": "150723", + "name": "鄂伦春自治旗" + }, { + "code": "150724", + "name": "鄂温克族自治旗" + }, { + "code": "150725", + "name": "陈巴尔虎旗" + }, { + "code": "150726", + "name": "新巴尔虎左旗" + }, { + "code": "150727", + "name": "新巴尔虎右旗" + }, { + "code": "150781", + "name": "满洲里市" + }, { + "code": "150782", + "name": "牙克石市" + }, { + "code": "150783", + "name": "扎兰屯市" + }, { + "code": "150784", + "name": "额尔古纳市" + }, { + "code": "150785", + "name": "根河市" + }] + }, { + "code": "1508", + "name": "巴彦淖尔市", + "children": [{ + "code": "150802", + "name": "临河区" + }, { + "code": "150821", + "name": "五原县" + }, { + "code": "150822", + "name": "磴口县" + }, { + "code": "150823", + "name": "乌拉特前旗" + }, { + "code": "150824", + "name": "乌拉特中旗" + }, { + "code": "150825", + "name": "乌拉特后旗" + }, { + "code": "150826", + "name": "杭锦后旗" + }] + }, { + "code": "1509", + "name": "乌兰察布市", + "children": [{ + "code": "150902", + "name": "集宁区" + }, { + "code": "150921", + "name": "卓资县" + }, { + "code": "150922", + "name": "化德县" + }, { + "code": "150923", + "name": "商都县" + }, { + "code": "150924", + "name": "兴和县" + }, { + "code": "150925", + "name": "凉城县" + }, { + "code": "150926", + "name": "察哈尔右翼前旗" + }, { + "code": "150927", + "name": "察哈尔右翼中旗" + }, { + "code": "150928", + "name": "察哈尔右翼后旗" + }, { + "code": "150929", + "name": "四子王旗" + }, { + "code": "150981", + "name": "丰镇市" + }] + }, { + "code": "1522", + "name": "兴安盟", + "children": [{ + "code": "152201", + "name": "乌兰浩特市" + }, { + "code": "152202", + "name": "阿尔山市" + }, { + "code": "152221", + "name": "科尔沁右翼前旗" + }, { + "code": "152222", + "name": "科尔沁右翼中旗" + }, { + "code": "152223", + "name": "扎赉特旗" + }, { + "code": "152224", + "name": "突泉县" + }] + }, { + "code": "1525", + "name": "锡林郭勒盟", + "children": [{ + "code": "152501", + "name": "二连浩特市" + }, { + "code": "152502", + "name": "锡林浩特市" + }, { + "code": "152522", + "name": "阿巴嘎旗" + }, { + "code": "152523", + "name": "苏尼特左旗" + }, { + "code": "152524", + "name": "苏尼特右旗" + }, { + "code": "152525", + "name": "东乌珠穆沁旗" + }, { + "code": "152526", + "name": "西乌珠穆沁旗" + }, { + "code": "152527", + "name": "太仆寺旗" + }, { + "code": "152528", + "name": "镶黄旗" + }, { + "code": "152529", + "name": "正镶白旗" + }, { + "code": "152530", + "name": "正蓝旗" + }, { + "code": "152531", + "name": "多伦县" + }, { + "code": "152571", + "name": "乌拉盖管理区管委会" + }] + }, { + "code": "1529", + "name": "阿拉善盟", + "children": [{ + "code": "152921", + "name": "阿拉善左旗" + }, { + "code": "152922", + "name": "阿拉善右旗" + }, { + "code": "152923", + "name": "额济纳旗" + }, { + "code": "152971", + "name": "内蒙古阿拉善高新技术产业开发区" + }] + }] +}, { + "code": "21", + "name": "辽宁省", + "children": [{ + "code": "2101", + "name": "沈阳市", + "children": [{ + "code": "210102", + "name": "和平区" + }, { + "code": "210103", + "name": "沈河区" + }, { + "code": "210104", + "name": "大东区" + }, { + "code": "210105", + "name": "皇姑区" + }, { + "code": "210106", + "name": "铁西区" + }, { + "code": "210111", + "name": "苏家屯区" + }, { + "code": "210112", + "name": "浑南区" + }, { + "code": "210113", + "name": "沈北新区" + }, { + "code": "210114", + "name": "于洪区" + }, { + "code": "210115", + "name": "辽中区" + }, { + "code": "210123", + "name": "康平县" + }, { + "code": "210124", + "name": "法库县" + }, { + "code": "210181", + "name": "新民市" + }] + }, { + "code": "2102", + "name": "大连市", + "children": [{ + "code": "210202", + "name": "中山区" + }, { + "code": "210203", + "name": "西岗区" + }, { + "code": "210204", + "name": "沙河口区" + }, { + "code": "210211", + "name": "甘井子区" + }, { + "code": "210212", + "name": "旅顺口区" + }, { + "code": "210213", + "name": "金州区" + }, { + "code": "210214", + "name": "普兰店区" + }, { + "code": "210224", + "name": "长海县" + }, { + "code": "210281", + "name": "瓦房店市" + }, { + "code": "210283", + "name": "庄河市" + }] + }, { + "code": "2103", + "name": "鞍山市", + "children": [{ + "code": "210302", + "name": "铁东区" + }, { + "code": "210303", + "name": "铁西区" + }, { + "code": "210304", + "name": "立山区" + }, { + "code": "210311", + "name": "千山区" + }, { + "code": "210321", + "name": "台安县" + }, { + "code": "210323", + "name": "岫岩满族自治县" + }, { + "code": "210381", + "name": "海城市" + }] + }, { + "code": "2104", + "name": "抚顺市", + "children": [{ + "code": "210402", + "name": "新抚区" + }, { + "code": "210403", + "name": "东洲区" + }, { + "code": "210404", + "name": "望花区" + }, { + "code": "210411", + "name": "顺城区" + }, { + "code": "210421", + "name": "抚顺县" + }, { + "code": "210422", + "name": "新宾满族自治县" + }, { + "code": "210423", + "name": "清原满族自治县" + }] + }, { + "code": "2105", + "name": "本溪市", + "children": [{ + "code": "210502", + "name": "平山区" + }, { + "code": "210503", + "name": "溪湖区" + }, { + "code": "210504", + "name": "明山区" + }, { + "code": "210505", + "name": "南芬区" + }, { + "code": "210521", + "name": "本溪满族自治县" + }, { + "code": "210522", + "name": "桓仁满族自治县" + }] + }, { + "code": "2106", + "name": "丹东市", + "children": [{ + "code": "210602", + "name": "元宝区" + }, { + "code": "210603", + "name": "振兴区" + }, { + "code": "210604", + "name": "振安区" + }, { + "code": "210624", + "name": "宽甸满族自治县" + }, { + "code": "210681", + "name": "东港市" + }, { + "code": "210682", + "name": "凤城市" + }] + }, { + "code": "2107", + "name": "锦州市", + "children": [{ + "code": "210702", + "name": "古塔区" + }, { + "code": "210703", + "name": "凌河区" + }, { + "code": "210711", + "name": "太和区" + }, { + "code": "210726", + "name": "黑山县" + }, { + "code": "210727", + "name": "义县" + }, { + "code": "210781", + "name": "凌海市" + }, { + "code": "210782", + "name": "北镇市" + }] + }, { + "code": "2108", + "name": "营口市", + "children": [{ + "code": "210802", + "name": "站前区" + }, { + "code": "210803", + "name": "西市区" + }, { + "code": "210804", + "name": "鲅鱼圈区" + }, { + "code": "210811", + "name": "老边区" + }, { + "code": "210881", + "name": "盖州市" + }, { + "code": "210882", + "name": "大石桥市" + }] + }, { + "code": "2109", + "name": "阜新市", + "children": [{ + "code": "210902", + "name": "海州区" + }, { + "code": "210903", + "name": "新邱区" + }, { + "code": "210904", + "name": "太平区" + }, { + "code": "210905", + "name": "清河门区" + }, { + "code": "210911", + "name": "细河区" + }, { + "code": "210921", + "name": "阜新蒙古族自治县" + }, { + "code": "210922", + "name": "彰武县" + }] + }, { + "code": "2110", + "name": "辽阳市", + "children": [{ + "code": "211002", + "name": "白塔区" + }, { + "code": "211003", + "name": "文圣区" + }, { + "code": "211004", + "name": "宏伟区" + }, { + "code": "211005", + "name": "弓长岭区" + }, { + "code": "211011", + "name": "太子河区" + }, { + "code": "211021", + "name": "辽阳县" + }, { + "code": "211081", + "name": "灯塔市" + }] + }, { + "code": "2111", + "name": "盘锦市", + "children": [{ + "code": "211102", + "name": "双台子区" + }, { + "code": "211103", + "name": "兴隆台区" + }, { + "code": "211104", + "name": "大洼区" + }, { + "code": "211122", + "name": "盘山县" + }] + }, { + "code": "2112", + "name": "铁岭市", + "children": [{ + "code": "211202", + "name": "银州区" + }, { + "code": "211204", + "name": "清河区" + }, { + "code": "211221", + "name": "铁岭县" + }, { + "code": "211223", + "name": "西丰县" + }, { + "code": "211224", + "name": "昌图县" + }, { + "code": "211281", + "name": "调兵山市" + }, { + "code": "211282", + "name": "开原市" + }] + }, { + "code": "2113", + "name": "朝阳市", + "children": [{ + "code": "211302", + "name": "双塔区" + }, { + "code": "211303", + "name": "龙城区" + }, { + "code": "211321", + "name": "朝阳县" + }, { + "code": "211322", + "name": "建平县" + }, { + "code": "211324", + "name": "喀喇沁左翼蒙古族自治县" + }, { + "code": "211381", + "name": "北票市" + }, { + "code": "211382", + "name": "凌源市" + }] + }, { + "code": "2114", + "name": "葫芦岛市", + "children": [{ + "code": "211402", + "name": "连山区" + }, { + "code": "211403", + "name": "龙港区" + }, { + "code": "211404", + "name": "南票区" + }, { + "code": "211421", + "name": "绥中县" + }, { + "code": "211422", + "name": "建昌县" + }, { + "code": "211481", + "name": "兴城市" + }] + }] +}, { + "code": "22", + "name": "吉林省", + "children": [{ + "code": "2201", + "name": "长春市", + "children": [{ + "code": "220102", + "name": "南关区" + }, { + "code": "220103", + "name": "宽城区" + }, { + "code": "220104", + "name": "朝阳区" + }, { + "code": "220105", + "name": "二道区" + }, { + "code": "220106", + "name": "绿园区" + }, { + "code": "220112", + "name": "双阳区" + }, { + "code": "220113", + "name": "九台区" + }, { + "code": "220122", + "name": "农安县" + }, { + "code": "220171", + "name": "长春经济技术开发区" + }, { + "code": "220172", + "name": "长春净月高新技术产业开发区" + }, { + "code": "220173", + "name": "长春高新技术产业开发区" + }, { + "code": "220174", + "name": "长春汽车经济技术开发区" + }, { + "code": "220182", + "name": "榆树市" + }, { + "code": "220183", + "name": "德惠市" + }, { + "code": "220184", + "name": "公主岭市" + }] + }, { + "code": "2202", + "name": "吉林市", + "children": [{ + "code": "220202", + "name": "昌邑区" + }, { + "code": "220203", + "name": "龙潭区" + }, { + "code": "220204", + "name": "船营区" + }, { + "code": "220211", + "name": "丰满区" + }, { + "code": "220221", + "name": "永吉县" + }, { + "code": "220271", + "name": "吉林经济开发区" + }, { + "code": "220272", + "name": "吉林高新技术产业开发区" + }, { + "code": "220273", + "name": "吉林中国新加坡食品区" + }, { + "code": "220281", + "name": "蛟河市" + }, { + "code": "220282", + "name": "桦甸市" + }, { + "code": "220283", + "name": "舒兰市" + }, { + "code": "220284", + "name": "磐石市" + }] + }, { + "code": "2203", + "name": "四平市", + "children": [{ + "code": "220302", + "name": "铁西区" + }, { + "code": "220303", + "name": "铁东区" + }, { + "code": "220322", + "name": "梨树县" + }, { + "code": "220323", + "name": "伊通满族自治县" + }, { + "code": "220382", + "name": "双辽市" + }] + }, { + "code": "2204", + "name": "辽源市", + "children": [{ + "code": "220402", + "name": "龙山区" + }, { + "code": "220403", + "name": "西安区" + }, { + "code": "220421", + "name": "东丰县" + }, { + "code": "220422", + "name": "东辽县" + }] + }, { + "code": "2205", + "name": "通化市", + "children": [{ + "code": "220502", + "name": "东昌区" + }, { + "code": "220503", + "name": "二道江区" + }, { + "code": "220521", + "name": "通化县" + }, { + "code": "220523", + "name": "辉南县" + }, { + "code": "220524", + "name": "柳河县" + }, { + "code": "220581", + "name": "梅河口市" + }, { + "code": "220582", + "name": "集安市" + }] + }, { + "code": "2206", + "name": "白山市", + "children": [{ + "code": "220602", + "name": "浑江区" + }, { + "code": "220605", + "name": "江源区" + }, { + "code": "220621", + "name": "抚松县" + }, { + "code": "220622", + "name": "靖宇县" + }, { + "code": "220623", + "name": "长白朝鲜族自治县" + }, { + "code": "220681", + "name": "临江市" + }] + }, { + "code": "2207", + "name": "松原市", + "children": [{ + "code": "220702", + "name": "宁江区" + }, { + "code": "220721", + "name": "前郭尔罗斯蒙古族自治县" + }, { + "code": "220722", + "name": "长岭县" + }, { + "code": "220723", + "name": "乾安县" + }, { + "code": "220771", + "name": "吉林松原经济开发区" + }, { + "code": "220781", + "name": "扶余市" + }] + }, { + "code": "2208", + "name": "白城市", + "children": [{ + "code": "220802", + "name": "洮北区" + }, { + "code": "220821", + "name": "镇赉县" + }, { + "code": "220822", + "name": "通榆县" + }, { + "code": "220871", + "name": "吉林白城经济开发区" + }, { + "code": "220881", + "name": "洮南市" + }, { + "code": "220882", + "name": "大安市" + }] + }, { + "code": "2224", + "name": "延边朝鲜族自治州", + "children": [{ + "code": "222401", + "name": "延吉市" + }, { + "code": "222402", + "name": "图们市" + }, { + "code": "222403", + "name": "敦化市" + }, { + "code": "222404", + "name": "珲春市" + }, { + "code": "222405", + "name": "龙井市" + }, { + "code": "222406", + "name": "和龙市" + }, { + "code": "222424", + "name": "汪清县" + }, { + "code": "222426", + "name": "安图县" + }] + }] +}, { + "code": "23", + "name": "黑龙江省", + "children": [{ + "code": "2301", + "name": "哈尔滨市", + "children": [{ + "code": "230102", + "name": "道里区" + }, { + "code": "230103", + "name": "南岗区" + }, { + "code": "230104", + "name": "道外区" + }, { + "code": "230108", + "name": "平房区" + }, { + "code": "230109", + "name": "松北区" + }, { + "code": "230110", + "name": "香坊区" + }, { + "code": "230111", + "name": "呼兰区" + }, { + "code": "230112", + "name": "阿城区" + }, { + "code": "230113", + "name": "双城区" + }, { + "code": "230123", + "name": "依兰县" + }, { + "code": "230124", + "name": "方正县" + }, { + "code": "230125", + "name": "宾县" + }, { + "code": "230126", + "name": "巴彦县" + }, { + "code": "230127", + "name": "木兰县" + }, { + "code": "230128", + "name": "通河县" + }, { + "code": "230129", + "name": "延寿县" + }, { + "code": "230183", + "name": "尚志市" + }, { + "code": "230184", + "name": "五常市" + }] + }, { + "code": "2302", + "name": "齐齐哈尔市", + "children": [{ + "code": "230202", + "name": "龙沙区" + }, { + "code": "230203", + "name": "建华区" + }, { + "code": "230204", + "name": "铁锋区" + }, { + "code": "230205", + "name": "昂昂溪区" + }, { + "code": "230206", + "name": "富拉尔基区" + }, { + "code": "230207", + "name": "碾子山区" + }, { + "code": "230208", + "name": "梅里斯达斡尔族区" + }, { + "code": "230221", + "name": "龙江县" + }, { + "code": "230223", + "name": "依安县" + }, { + "code": "230224", + "name": "泰来县" + }, { + "code": "230225", + "name": "甘南县" + }, { + "code": "230227", + "name": "富裕县" + }, { + "code": "230229", + "name": "克山县" + }, { + "code": "230230", + "name": "克东县" + }, { + "code": "230231", + "name": "拜泉县" + }, { + "code": "230281", + "name": "讷河市" + }] + }, { + "code": "2303", + "name": "鸡西市", + "children": [{ + "code": "230302", + "name": "鸡冠区" + }, { + "code": "230303", + "name": "恒山区" + }, { + "code": "230304", + "name": "滴道区" + }, { + "code": "230305", + "name": "梨树区" + }, { + "code": "230306", + "name": "城子河区" + }, { + "code": "230307", + "name": "麻山区" + }, { + "code": "230321", + "name": "鸡东县" + }, { + "code": "230381", + "name": "虎林市" + }, { + "code": "230382", + "name": "密山市" + }] + }, { + "code": "2304", + "name": "鹤岗市", + "children": [{ + "code": "230402", + "name": "向阳区" + }, { + "code": "230403", + "name": "工农区" + }, { + "code": "230404", + "name": "南山区" + }, { + "code": "230405", + "name": "兴安区" + }, { + "code": "230406", + "name": "东山区" + }, { + "code": "230407", + "name": "兴山区" + }, { + "code": "230421", + "name": "萝北县" + }, { + "code": "230422", + "name": "绥滨县" + }] + }, { + "code": "2305", + "name": "双鸭山市", + "children": [{ + "code": "230502", + "name": "尖山区" + }, { + "code": "230503", + "name": "岭东区" + }, { + "code": "230505", + "name": "四方台区" + }, { + "code": "230506", + "name": "宝山区" + }, { + "code": "230521", + "name": "集贤县" + }, { + "code": "230522", + "name": "友谊县" + }, { + "code": "230523", + "name": "宝清县" + }, { + "code": "230524", + "name": "饶河县" + }] + }, { + "code": "2306", + "name": "大庆市", + "children": [{ + "code": "230602", + "name": "萨尔图区" + }, { + "code": "230603", + "name": "龙凤区" + }, { + "code": "230604", + "name": "让胡路区" + }, { + "code": "230605", + "name": "红岗区" + }, { + "code": "230606", + "name": "大同区" + }, { + "code": "230621", + "name": "肇州县" + }, { + "code": "230622", + "name": "肇源县" + }, { + "code": "230623", + "name": "林甸县" + }, { + "code": "230624", + "name": "杜尔伯特蒙古族自治县" + }, { + "code": "230671", + "name": "大庆高新技术产业开发区" + }] + }, { + "code": "2307", + "name": "伊春市", + "children": [{ + "code": "230717", + "name": "伊美区" + }, { + "code": "230718", + "name": "乌翠区" + }, { + "code": "230719", + "name": "友好区" + }, { + "code": "230722", + "name": "嘉荫县" + }, { + "code": "230723", + "name": "汤旺县" + }, { + "code": "230724", + "name": "丰林县" + }, { + "code": "230725", + "name": "大箐山县" + }, { + "code": "230726", + "name": "南岔县" + }, { + "code": "230751", + "name": "金林区" + }, { + "code": "230781", + "name": "铁力市" + }] + }, { + "code": "2308", + "name": "佳木斯市", + "children": [{ + "code": "230803", + "name": "向阳区" + }, { + "code": "230804", + "name": "前进区" + }, { + "code": "230805", + "name": "东风区" + }, { + "code": "230811", + "name": "郊区" + }, { + "code": "230822", + "name": "桦南县" + }, { + "code": "230826", + "name": "桦川县" + }, { + "code": "230828", + "name": "汤原县" + }, { + "code": "230881", + "name": "同江市" + }, { + "code": "230882", + "name": "富锦市" + }, { + "code": "230883", + "name": "抚远市" + }] + }, { + "code": "2309", + "name": "七台河市", + "children": [{ + "code": "230902", + "name": "新兴区" + }, { + "code": "230903", + "name": "桃山区" + }, { + "code": "230904", + "name": "茄子河区" + }, { + "code": "230921", + "name": "勃利县" + }] + }, { + "code": "2310", + "name": "牡丹江市", + "children": [{ + "code": "231002", + "name": "东安区" + }, { + "code": "231003", + "name": "阳明区" + }, { + "code": "231004", + "name": "爱民区" + }, { + "code": "231005", + "name": "西安区" + }, { + "code": "231025", + "name": "林口县" + }, { + "code": "231081", + "name": "绥芬河市" + }, { + "code": "231083", + "name": "海林市" + }, { + "code": "231084", + "name": "宁安市" + }, { + "code": "231085", + "name": "穆棱市" + }, { + "code": "231086", + "name": "东宁市" + }] + }, { + "code": "2311", + "name": "黑河市", + "children": [{ + "code": "231102", + "name": "爱辉区" + }, { + "code": "231123", + "name": "逊克县" + }, { + "code": "231124", + "name": "孙吴县" + }, { + "code": "231181", + "name": "北安市" + }, { + "code": "231182", + "name": "五大连池市" + }, { + "code": "231183", + "name": "嫩江市" + }] + }, { + "code": "2312", + "name": "绥化市", + "children": [{ + "code": "231202", + "name": "北林区" + }, { + "code": "231221", + "name": "望奎县" + }, { + "code": "231222", + "name": "兰西县" + }, { + "code": "231223", + "name": "青冈县" + }, { + "code": "231224", + "name": "庆安县" + }, { + "code": "231225", + "name": "明水县" + }, { + "code": "231226", + "name": "绥棱县" + }, { + "code": "231281", + "name": "安达市" + }, { + "code": "231282", + "name": "肇东市" + }, { + "code": "231283", + "name": "海伦市" + }] + }, { + "code": "2327", + "name": "大兴安岭地区", + "children": [{ + "code": "232701", + "name": "漠河市" + }, { + "code": "232721", + "name": "呼玛县" + }, { + "code": "232722", + "name": "塔河县" + }, { + "code": "232761", + "name": "加格达奇区" + }, { + "code": "232762", + "name": "松岭区" + }, { + "code": "232763", + "name": "新林区" + }, { + "code": "232764", + "name": "呼中区" + }] + }] +}, { + "code": "31", + "name": "上海市", + "children": [{ + "code": "3101", + "name": "市辖区", + "children": [{ + "code": "310101", + "name": "黄浦区" + }, { + "code": "310104", + "name": "徐汇区" + }, { + "code": "310105", + "name": "长宁区" + }, { + "code": "310106", + "name": "静安区" + }, { + "code": "310107", + "name": "普陀区" + }, { + "code": "310109", + "name": "虹口区" + }, { + "code": "310110", + "name": "杨浦区" + }, { + "code": "310112", + "name": "闵行区" + }, { + "code": "310113", + "name": "宝山区" + }, { + "code": "310114", + "name": "嘉定区" + }, { + "code": "310115", + "name": "浦东新区" + }, { + "code": "310116", + "name": "金山区" + }, { + "code": "310117", + "name": "松江区" + }, { + "code": "310118", + "name": "青浦区" + }, { + "code": "310120", + "name": "奉贤区" + }, { + "code": "310151", + "name": "崇明区" + }] + }] +}, { + "code": "32", + "name": "江苏省", + "children": [{ + "code": "3201", + "name": "南京市", + "children": [{ + "code": "320102", + "name": "玄武区" + }, { + "code": "320104", + "name": "秦淮区" + }, { + "code": "320105", + "name": "建邺区" + }, { + "code": "320106", + "name": "鼓楼区" + }, { + "code": "320111", + "name": "浦口区" + }, { + "code": "320113", + "name": "栖霞区" + }, { + "code": "320114", + "name": "雨花台区" + }, { + "code": "320115", + "name": "江宁区" + }, { + "code": "320116", + "name": "六合区" + }, { + "code": "320117", + "name": "溧水区" + }, { + "code": "320118", + "name": "高淳区" + }] + }, { + "code": "3202", + "name": "无锡市", + "children": [{ + "code": "320205", + "name": "锡山区" + }, { + "code": "320206", + "name": "惠山区" + }, { + "code": "320211", + "name": "滨湖区" + }, { + "code": "320213", + "name": "梁溪区" + }, { + "code": "320214", + "name": "新吴区" + }, { + "code": "320281", + "name": "江阴市" + }, { + "code": "320282", + "name": "宜兴市" + }] + }, { + "code": "3203", + "name": "徐州市", + "children": [{ + "code": "320302", + "name": "鼓楼区" + }, { + "code": "320303", + "name": "云龙区" + }, { + "code": "320305", + "name": "贾汪区" + }, { + "code": "320311", + "name": "泉山区" + }, { + "code": "320312", + "name": "铜山区" + }, { + "code": "320321", + "name": "丰县" + }, { + "code": "320322", + "name": "沛县" + }, { + "code": "320324", + "name": "睢宁县" + }, { + "code": "320371", + "name": "徐州经济技术开发区" + }, { + "code": "320381", + "name": "新沂市" + }, { + "code": "320382", + "name": "邳州市" + }] + }, { + "code": "3204", + "name": "常州市", + "children": [{ + "code": "320402", + "name": "天宁区" + }, { + "code": "320404", + "name": "钟楼区" + }, { + "code": "320411", + "name": "新北区" + }, { + "code": "320412", + "name": "武进区" + }, { + "code": "320413", + "name": "金坛区" + }, { + "code": "320481", + "name": "溧阳市" + }] + }, { + "code": "3205", + "name": "苏州市", + "children": [{ + "code": "320505", + "name": "虎丘区" + }, { + "code": "320506", + "name": "吴中区" + }, { + "code": "320507", + "name": "相城区" + }, { + "code": "320508", + "name": "姑苏区" + }, { + "code": "320509", + "name": "吴江区" + }, { + "code": "320576", + "name": "苏州工业园区" + }, { + "code": "320581", + "name": "常熟市" + }, { + "code": "320582", + "name": "张家港市" + }, { + "code": "320583", + "name": "昆山市" + }, { + "code": "320585", + "name": "太仓市" + }] + }, { + "code": "3206", + "name": "南通市", + "children": [{ + "code": "320612", + "name": "通州区" + }, { + "code": "320613", + "name": "崇川区" + }, { + "code": "320614", + "name": "海门区" + }, { + "code": "320623", + "name": "如东县" + }, { + "code": "320671", + "name": "南通经济技术开发区" + }, { + "code": "320681", + "name": "启东市" + }, { + "code": "320682", + "name": "如皋市" + }, { + "code": "320685", + "name": "海安市" + }] + }, { + "code": "3207", + "name": "连云港市", + "children": [{ + "code": "320703", + "name": "连云区" + }, { + "code": "320706", + "name": "海州区" + }, { + "code": "320707", + "name": "赣榆区" + }, { + "code": "320722", + "name": "东海县" + }, { + "code": "320723", + "name": "灌云县" + }, { + "code": "320724", + "name": "灌南县" + }, { + "code": "320771", + "name": "连云港经济技术开发区" + }] + }, { + "code": "3208", + "name": "淮安市", + "children": [{ + "code": "320803", + "name": "淮安区" + }, { + "code": "320804", + "name": "淮阴区" + }, { + "code": "320812", + "name": "清江浦区" + }, { + "code": "320813", + "name": "洪泽区" + }, { + "code": "320826", + "name": "涟水县" + }, { + "code": "320830", + "name": "盱眙县" + }, { + "code": "320831", + "name": "金湖县" + }, { + "code": "320871", + "name": "淮安经济技术开发区" + }] + }, { + "code": "3209", + "name": "盐城市", + "children": [{ + "code": "320902", + "name": "亭湖区" + }, { + "code": "320903", + "name": "盐都区" + }, { + "code": "320904", + "name": "大丰区" + }, { + "code": "320921", + "name": "响水县" + }, { + "code": "320922", + "name": "滨海县" + }, { + "code": "320923", + "name": "阜宁县" + }, { + "code": "320924", + "name": "射阳县" + }, { + "code": "320925", + "name": "建湖县" + }, { + "code": "320971", + "name": "盐城经济技术开发区" + }, { + "code": "320981", + "name": "东台市" + }] + }, { + "code": "3210", + "name": "扬州市", + "children": [{ + "code": "321002", + "name": "广陵区" + }, { + "code": "321003", + "name": "邗江区" + }, { + "code": "321012", + "name": "江都区" + }, { + "code": "321023", + "name": "宝应县" + }, { + "code": "321071", + "name": "扬州经济技术开发区" + }, { + "code": "321081", + "name": "仪征市" + }, { + "code": "321084", + "name": "高邮市" + }] + }, { + "code": "3211", + "name": "镇江市", + "children": [{ + "code": "321102", + "name": "京口区" + }, { + "code": "321111", + "name": "润州区" + }, { + "code": "321112", + "name": "丹徒区" + }, { + "code": "321171", + "name": "镇江新区" + }, { + "code": "321181", + "name": "丹阳市" + }, { + "code": "321182", + "name": "扬中市" + }, { + "code": "321183", + "name": "句容市" + }] + }, { + "code": "3212", + "name": "泰州市", + "children": [{ + "code": "321202", + "name": "海陵区" + }, { + "code": "321203", + "name": "高港区" + }, { + "code": "321204", + "name": "姜堰区" + }, { + "code": "321281", + "name": "兴化市" + }, { + "code": "321282", + "name": "靖江市" + }, { + "code": "321283", + "name": "泰兴市" + }] + }, { + "code": "3213", + "name": "宿迁市", + "children": [{ + "code": "321302", + "name": "宿城区" + }, { + "code": "321311", + "name": "宿豫区" + }, { + "code": "321322", + "name": "沭阳县" + }, { + "code": "321323", + "name": "泗阳县" + }, { + "code": "321324", + "name": "泗洪县" + }, { + "code": "321371", + "name": "宿迁经济技术开发区" + }] + }] +}, { + "code": "33", + "name": "浙江省", + "children": [{ + "code": "3301", + "name": "杭州市", + "children": [{ + "code": "330102", + "name": "上城区" + }, { + "code": "330105", + "name": "拱墅区" + }, { + "code": "330106", + "name": "西湖区" + }, { + "code": "330108", + "name": "滨江区" + }, { + "code": "330109", + "name": "萧山区" + }, { + "code": "330110", + "name": "余杭区" + }, { + "code": "330111", + "name": "富阳区" + }, { + "code": "330112", + "name": "临安区" + }, { + "code": "330113", + "name": "临平区" + }, { + "code": "330114", + "name": "钱塘区" + }, { + "code": "330122", + "name": "桐庐县" + }, { + "code": "330127", + "name": "淳安县" + }, { + "code": "330182", + "name": "建德市" + }] + }, { + "code": "3302", + "name": "宁波市", + "children": [{ + "code": "330203", + "name": "海曙区" + }, { + "code": "330205", + "name": "江北区" + }, { + "code": "330206", + "name": "北仑区" + }, { + "code": "330211", + "name": "镇海区" + }, { + "code": "330212", + "name": "鄞州区" + }, { + "code": "330213", + "name": "奉化区" + }, { + "code": "330225", + "name": "象山县" + }, { + "code": "330226", + "name": "宁海县" + }, { + "code": "330281", + "name": "余姚市" + }, { + "code": "330282", + "name": "慈溪市" + }] + }, { + "code": "3303", + "name": "温州市", + "children": [{ + "code": "330302", + "name": "鹿城区" + }, { + "code": "330303", + "name": "龙湾区" + }, { + "code": "330304", + "name": "瓯海区" + }, { + "code": "330305", + "name": "洞头区" + }, { + "code": "330324", + "name": "永嘉县" + }, { + "code": "330326", + "name": "平阳县" + }, { + "code": "330327", + "name": "苍南县" + }, { + "code": "330328", + "name": "文成县" + }, { + "code": "330329", + "name": "泰顺县" + }, { + "code": "330381", + "name": "瑞安市" + }, { + "code": "330382", + "name": "乐清市" + }, { + "code": "330383", + "name": "龙港市" + }] + }, { + "code": "3304", + "name": "嘉兴市", + "children": [{ + "code": "330402", + "name": "南湖区" + }, { + "code": "330411", + "name": "秀洲区" + }, { + "code": "330421", + "name": "嘉善县" + }, { + "code": "330424", + "name": "海盐县" + }, { + "code": "330481", + "name": "海宁市" + }, { + "code": "330482", + "name": "平湖市" + }, { + "code": "330483", + "name": "桐乡市" + }] + }, { + "code": "3305", + "name": "湖州市", + "children": [{ + "code": "330502", + "name": "吴兴区" + }, { + "code": "330503", + "name": "南浔区" + }, { + "code": "330521", + "name": "德清县" + }, { + "code": "330522", + "name": "长兴县" + }, { + "code": "330523", + "name": "安吉县" + }] + }, { + "code": "3306", + "name": "绍兴市", + "children": [{ + "code": "330602", + "name": "越城区" + }, { + "code": "330603", + "name": "柯桥区" + }, { + "code": "330604", + "name": "上虞区" + }, { + "code": "330624", + "name": "新昌县" + }, { + "code": "330681", + "name": "诸暨市" + }, { + "code": "330683", + "name": "嵊州市" + }] + }, { + "code": "3307", + "name": "金华市", + "children": [{ + "code": "330702", + "name": "婺城区" + }, { + "code": "330703", + "name": "金东区" + }, { + "code": "330723", + "name": "武义县" + }, { + "code": "330726", + "name": "浦江县" + }, { + "code": "330727", + "name": "磐安县" + }, { + "code": "330781", + "name": "兰溪市" + }, { + "code": "330782", + "name": "义乌市" + }, { + "code": "330783", + "name": "东阳市" + }, { + "code": "330784", + "name": "永康市" + }] + }, { + "code": "3308", + "name": "衢州市", + "children": [{ + "code": "330802", + "name": "柯城区" + }, { + "code": "330803", + "name": "衢江区" + }, { + "code": "330822", + "name": "常山县" + }, { + "code": "330824", + "name": "开化县" + }, { + "code": "330825", + "name": "龙游县" + }, { + "code": "330881", + "name": "江山市" + }] + }, { + "code": "3309", + "name": "舟山市", + "children": [{ + "code": "330902", + "name": "定海区" + }, { + "code": "330903", + "name": "普陀区" + }, { + "code": "330921", + "name": "岱山县" + }, { + "code": "330922", + "name": "嵊泗县" + }] + }, { + "code": "3310", + "name": "台州市", + "children": [{ + "code": "331002", + "name": "椒江区" + }, { + "code": "331003", + "name": "黄岩区" + }, { + "code": "331004", + "name": "路桥区" + }, { + "code": "331022", + "name": "三门县" + }, { + "code": "331023", + "name": "天台县" + }, { + "code": "331024", + "name": "仙居县" + }, { + "code": "331081", + "name": "温岭市" + }, { + "code": "331082", + "name": "临海市" + }, { + "code": "331083", + "name": "玉环市" + }] + }, { + "code": "3311", + "name": "丽水市", + "children": [{ + "code": "331102", + "name": "莲都区" + }, { + "code": "331121", + "name": "青田县" + }, { + "code": "331122", + "name": "缙云县" + }, { + "code": "331123", + "name": "遂昌县" + }, { + "code": "331124", + "name": "松阳县" + }, { + "code": "331125", + "name": "云和县" + }, { + "code": "331126", + "name": "庆元县" + }, { + "code": "331127", + "name": "景宁畲族自治县" + }, { + "code": "331181", + "name": "龙泉市" + }] + }] +}, { + "code": "34", + "name": "安徽省", + "children": [{ + "code": "3401", + "name": "合肥市", + "children": [{ + "code": "340102", + "name": "瑶海区" + }, { + "code": "340103", + "name": "庐阳区" + }, { + "code": "340104", + "name": "蜀山区" + }, { + "code": "340111", + "name": "包河区" + }, { + "code": "340121", + "name": "长丰县" + }, { + "code": "340122", + "name": "肥东县" + }, { + "code": "340123", + "name": "肥西县" + }, { + "code": "340124", + "name": "庐江县" + }, { + "code": "340176", + "name": "合肥高新技术产业开发区" + }, { + "code": "340177", + "name": "合肥经济技术开发区" + }, { + "code": "340178", + "name": "合肥新站高新技术产业开发区" + }, { + "code": "340181", + "name": "巢湖市" + }] + }, { + "code": "3402", + "name": "芜湖市", + "children": [{ + "code": "340202", + "name": "镜湖区" + }, { + "code": "340207", + "name": "鸠江区" + }, { + "code": "340209", + "name": "弋江区" + }, { + "code": "340210", + "name": "湾沚区" + }, { + "code": "340212", + "name": "繁昌区" + }, { + "code": "340223", + "name": "南陵县" + }, { + "code": "340271", + "name": "芜湖经济技术开发区" + }, { + "code": "340272", + "name": "安徽芜湖三山经济开发区" + }, { + "code": "340281", + "name": "无为市" + }] + }, { + "code": "3403", + "name": "蚌埠市", + "children": [{ + "code": "340302", + "name": "龙子湖区" + }, { + "code": "340303", + "name": "蚌山区" + }, { + "code": "340304", + "name": "禹会区" + }, { + "code": "340311", + "name": "淮上区" + }, { + "code": "340321", + "name": "怀远县" + }, { + "code": "340322", + "name": "五河县" + }, { + "code": "340323", + "name": "固镇县" + }, { + "code": "340371", + "name": "蚌埠市高新技术开发区" + }, { + "code": "340372", + "name": "蚌埠市经济开发区" + }] + }, { + "code": "3404", + "name": "淮南市", + "children": [{ + "code": "340402", + "name": "大通区" + }, { + "code": "340403", + "name": "田家庵区" + }, { + "code": "340404", + "name": "谢家集区" + }, { + "code": "340405", + "name": "八公山区" + }, { + "code": "340406", + "name": "潘集区" + }, { + "code": "340421", + "name": "凤台县" + }, { + "code": "340422", + "name": "寿县" + }] + }, { + "code": "3405", + "name": "马鞍山市", + "children": [{ + "code": "340503", + "name": "花山区" + }, { + "code": "340504", + "name": "雨山区" + }, { + "code": "340506", + "name": "博望区" + }, { + "code": "340521", + "name": "当涂县" + }, { + "code": "340522", + "name": "含山县" + }, { + "code": "340523", + "name": "和县" + }] + }, { + "code": "3406", + "name": "淮北市", + "children": [{ + "code": "340602", + "name": "杜集区" + }, { + "code": "340603", + "name": "相山区" + }, { + "code": "340604", + "name": "烈山区" + }, { + "code": "340621", + "name": "濉溪县" + }] + }, { + "code": "3407", + "name": "铜陵市", + "children": [{ + "code": "340705", + "name": "铜官区" + }, { + "code": "340706", + "name": "义安区" + }, { + "code": "340711", + "name": "郊区" + }, { + "code": "340722", + "name": "枞阳县" + }] + }, { + "code": "3408", + "name": "安庆市", + "children": [{ + "code": "340802", + "name": "迎江区" + }, { + "code": "340803", + "name": "大观区" + }, { + "code": "340811", + "name": "宜秀区" + }, { + "code": "340822", + "name": "怀宁县" + }, { + "code": "340825", + "name": "太湖县" + }, { + "code": "340826", + "name": "宿松县" + }, { + "code": "340827", + "name": "望江县" + }, { + "code": "340828", + "name": "岳西县" + }, { + "code": "340871", + "name": "安徽安庆经济开发区" + }, { + "code": "340881", + "name": "桐城市" + }, { + "code": "340882", + "name": "潜山市" + }] + }, { + "code": "3410", + "name": "黄山市", + "children": [{ + "code": "341002", + "name": "屯溪区" + }, { + "code": "341003", + "name": "黄山区" + }, { + "code": "341004", + "name": "徽州区" + }, { + "code": "341021", + "name": "歙县" + }, { + "code": "341022", + "name": "休宁县" + }, { + "code": "341023", + "name": "黟县" + }, { + "code": "341024", + "name": "祁门县" + }] + }, { + "code": "3411", + "name": "滁州市", + "children": [{ + "code": "341102", + "name": "琅琊区" + }, { + "code": "341103", + "name": "南谯区" + }, { + "code": "341122", + "name": "来安县" + }, { + "code": "341124", + "name": "全椒县" + }, { + "code": "341125", + "name": "定远县" + }, { + "code": "341126", + "name": "凤阳县" + }, { + "code": "341171", + "name": "中新苏滁高新技术产业开发区" + }, { + "code": "341172", + "name": "滁州经济技术开发区" + }, { + "code": "341181", + "name": "天长市" + }, { + "code": "341182", + "name": "明光市" + }] + }, { + "code": "3412", + "name": "阜阳市", + "children": [{ + "code": "341202", + "name": "颍州区" + }, { + "code": "341203", + "name": "颍东区" + }, { + "code": "341204", + "name": "颍泉区" + }, { + "code": "341221", + "name": "临泉县" + }, { + "code": "341222", + "name": "太和县" + }, { + "code": "341225", + "name": "阜南县" + }, { + "code": "341226", + "name": "颍上县" + }, { + "code": "341271", + "name": "阜阳合肥现代产业园区" + }, { + "code": "341272", + "name": "阜阳经济技术开发区" + }, { + "code": "341282", + "name": "界首市" + }] + }, { + "code": "3413", + "name": "宿州市", + "children": [{ + "code": "341302", + "name": "埇桥区" + }, { + "code": "341321", + "name": "砀山县" + }, { + "code": "341322", + "name": "萧县" + }, { + "code": "341323", + "name": "灵璧县" + }, { + "code": "341324", + "name": "泗县" + }, { + "code": "341371", + "name": "宿州马鞍山现代产业园区" + }, { + "code": "341372", + "name": "宿州经济技术开发区" + }] + }, { + "code": "3415", + "name": "六安市", + "children": [{ + "code": "341502", + "name": "金安区" + }, { + "code": "341503", + "name": "裕安区" + }, { + "code": "341504", + "name": "叶集区" + }, { + "code": "341522", + "name": "霍邱县" + }, { + "code": "341523", + "name": "舒城县" + }, { + "code": "341524", + "name": "金寨县" + }, { + "code": "341525", + "name": "霍山县" + }] + }, { + "code": "3416", + "name": "亳州市", + "children": [{ + "code": "341602", + "name": "谯城区" + }, { + "code": "341621", + "name": "涡阳县" + }, { + "code": "341622", + "name": "蒙城县" + }, { + "code": "341623", + "name": "利辛县" + }] + }, { + "code": "3417", + "name": "池州市", + "children": [{ + "code": "341702", + "name": "贵池区" + }, { + "code": "341721", + "name": "东至县" + }, { + "code": "341722", + "name": "石台县" + }, { + "code": "341723", + "name": "青阳县" + }] + }, { + "code": "3418", + "name": "宣城市", + "children": [{ + "code": "341802", + "name": "宣州区" + }, { + "code": "341821", + "name": "郎溪县" + }, { + "code": "341823", + "name": "泾县" + }, { + "code": "341824", + "name": "绩溪县" + }, { + "code": "341825", + "name": "旌德县" + }, { + "code": "341871", + "name": "宣城市经济开发区" + }, { + "code": "341881", + "name": "宁国市" + }, { + "code": "341882", + "name": "广德市" + }] + }] +}, { + "code": "35", + "name": "福建省", + "children": [{ + "code": "3501", + "name": "福州市", + "children": [{ + "code": "350102", + "name": "鼓楼区" + }, { + "code": "350103", + "name": "台江区" + }, { + "code": "350104", + "name": "仓山区" + }, { + "code": "350105", + "name": "马尾区" + }, { + "code": "350111", + "name": "晋安区" + }, { + "code": "350112", + "name": "长乐区" + }, { + "code": "350121", + "name": "闽侯县" + }, { + "code": "350122", + "name": "连江县" + }, { + "code": "350123", + "name": "罗源县" + }, { + "code": "350124", + "name": "闽清县" + }, { + "code": "350125", + "name": "永泰县" + }, { + "code": "350128", + "name": "平潭县" + }, { + "code": "350181", + "name": "福清市" + }] + }, { + "code": "3502", + "name": "厦门市", + "children": [{ + "code": "350203", + "name": "思明区" + }, { + "code": "350205", + "name": "海沧区" + }, { + "code": "350206", + "name": "湖里区" + }, { + "code": "350211", + "name": "集美区" + }, { + "code": "350212", + "name": "同安区" + }, { + "code": "350213", + "name": "翔安区" + }] + }, { + "code": "3503", + "name": "莆田市", + "children": [{ + "code": "350302", + "name": "城厢区" + }, { + "code": "350303", + "name": "涵江区" + }, { + "code": "350304", + "name": "荔城区" + }, { + "code": "350305", + "name": "秀屿区" + }, { + "code": "350322", + "name": "仙游县" + }] + }, { + "code": "3504", + "name": "三明市", + "children": [{ + "code": "350404", + "name": "三元区" + }, { + "code": "350405", + "name": "沙县区" + }, { + "code": "350421", + "name": "明溪县" + }, { + "code": "350423", + "name": "清流县" + }, { + "code": "350424", + "name": "宁化县" + }, { + "code": "350425", + "name": "大田县" + }, { + "code": "350426", + "name": "尤溪县" + }, { + "code": "350428", + "name": "将乐县" + }, { + "code": "350429", + "name": "泰宁县" + }, { + "code": "350430", + "name": "建宁县" + }, { + "code": "350481", + "name": "永安市" + }] + }, { + "code": "3505", + "name": "泉州市", + "children": [{ + "code": "350502", + "name": "鲤城区" + }, { + "code": "350503", + "name": "丰泽区" + }, { + "code": "350504", + "name": "洛江区" + }, { + "code": "350505", + "name": "泉港区" + }, { + "code": "350521", + "name": "惠安县" + }, { + "code": "350524", + "name": "安溪县" + }, { + "code": "350525", + "name": "永春县" + }, { + "code": "350526", + "name": "德化县" + }, { + "code": "350527", + "name": "金门县" + }, { + "code": "350581", + "name": "石狮市" + }, { + "code": "350582", + "name": "晋江市" + }, { + "code": "350583", + "name": "南安市" + }] + }, { + "code": "3506", + "name": "漳州市", + "children": [{ + "code": "350602", + "name": "芗城区" + }, { + "code": "350603", + "name": "龙文区" + }, { + "code": "350604", + "name": "龙海区" + }, { + "code": "350605", + "name": "长泰区" + }, { + "code": "350622", + "name": "云霄县" + }, { + "code": "350623", + "name": "漳浦县" + }, { + "code": "350624", + "name": "诏安县" + }, { + "code": "350626", + "name": "东山县" + }, { + "code": "350627", + "name": "南靖县" + }, { + "code": "350628", + "name": "平和县" + }, { + "code": "350629", + "name": "华安县" + }] + }, { + "code": "3507", + "name": "南平市", + "children": [{ + "code": "350702", + "name": "延平区" + }, { + "code": "350703", + "name": "建阳区" + }, { + "code": "350721", + "name": "顺昌县" + }, { + "code": "350722", + "name": "浦城县" + }, { + "code": "350723", + "name": "光泽县" + }, { + "code": "350724", + "name": "松溪县" + }, { + "code": "350725", + "name": "政和县" + }, { + "code": "350781", + "name": "邵武市" + }, { + "code": "350782", + "name": "武夷山市" + }, { + "code": "350783", + "name": "建瓯市" + }] + }, { + "code": "3508", + "name": "龙岩市", + "children": [{ + "code": "350802", + "name": "新罗区" + }, { + "code": "350803", + "name": "永定区" + }, { + "code": "350821", + "name": "长汀县" + }, { + "code": "350823", + "name": "上杭县" + }, { + "code": "350824", + "name": "武平县" + }, { + "code": "350825", + "name": "连城县" + }, { + "code": "350881", + "name": "漳平市" + }] + }, { + "code": "3509", + "name": "宁德市", + "children": [{ + "code": "350902", + "name": "蕉城区" + }, { + "code": "350921", + "name": "霞浦县" + }, { + "code": "350922", + "name": "古田县" + }, { + "code": "350923", + "name": "屏南县" + }, { + "code": "350924", + "name": "寿宁县" + }, { + "code": "350925", + "name": "周宁县" + }, { + "code": "350926", + "name": "柘荣县" + }, { + "code": "350981", + "name": "福安市" + }, { + "code": "350982", + "name": "福鼎市" + }] + }] +}, { + "code": "36", + "name": "江西省", + "children": [{ + "code": "3601", + "name": "南昌市", + "children": [{ + "code": "360102", + "name": "东湖区" + }, { + "code": "360103", + "name": "西湖区" + }, { + "code": "360104", + "name": "青云谱区" + }, { + "code": "360111", + "name": "青山湖区" + }, { + "code": "360112", + "name": "新建区" + }, { + "code": "360113", + "name": "红谷滩区" + }, { + "code": "360121", + "name": "南昌县" + }, { + "code": "360123", + "name": "安义县" + }, { + "code": "360124", + "name": "进贤县" + }] + }, { + "code": "3602", + "name": "景德镇市", + "children": [{ + "code": "360202", + "name": "昌江区" + }, { + "code": "360203", + "name": "珠山区" + }, { + "code": "360222", + "name": "浮梁县" + }, { + "code": "360281", + "name": "乐平市" + }] + }, { + "code": "3603", + "name": "萍乡市", + "children": [{ + "code": "360302", + "name": "安源区" + }, { + "code": "360313", + "name": "湘东区" + }, { + "code": "360321", + "name": "莲花县" + }, { + "code": "360322", + "name": "上栗县" + }, { + "code": "360323", + "name": "芦溪县" + }] + }, { + "code": "3604", + "name": "九江市", + "children": [{ + "code": "360402", + "name": "濂溪区" + }, { + "code": "360403", + "name": "浔阳区" + }, { + "code": "360404", + "name": "柴桑区" + }, { + "code": "360423", + "name": "武宁县" + }, { + "code": "360424", + "name": "修水县" + }, { + "code": "360425", + "name": "永修县" + }, { + "code": "360426", + "name": "德安县" + }, { + "code": "360428", + "name": "都昌县" + }, { + "code": "360429", + "name": "湖口县" + }, { + "code": "360430", + "name": "彭泽县" + }, { + "code": "360481", + "name": "瑞昌市" + }, { + "code": "360482", + "name": "共青城市" + }, { + "code": "360483", + "name": "庐山市" + }] + }, { + "code": "3605", + "name": "新余市", + "children": [{ + "code": "360502", + "name": "渝水区" + }, { + "code": "360521", + "name": "分宜县" + }] + }, { + "code": "3606", + "name": "鹰潭市", + "children": [{ + "code": "360602", + "name": "月湖区" + }, { + "code": "360603", + "name": "余江区" + }, { + "code": "360681", + "name": "贵溪市" + }] + }, { + "code": "3607", + "name": "赣州市", + "children": [{ + "code": "360702", + "name": "章贡区" + }, { + "code": "360703", + "name": "南康区" + }, { + "code": "360704", + "name": "赣县区" + }, { + "code": "360722", + "name": "信丰县" + }, { + "code": "360723", + "name": "大余县" + }, { + "code": "360724", + "name": "上犹县" + }, { + "code": "360725", + "name": "崇义县" + }, { + "code": "360726", + "name": "安远县" + }, { + "code": "360728", + "name": "定南县" + }, { + "code": "360729", + "name": "全南县" + }, { + "code": "360730", + "name": "宁都县" + }, { + "code": "360731", + "name": "于都县" + }, { + "code": "360732", + "name": "兴国县" + }, { + "code": "360733", + "name": "会昌县" + }, { + "code": "360734", + "name": "寻乌县" + }, { + "code": "360735", + "name": "石城县" + }, { + "code": "360781", + "name": "瑞金市" + }, { + "code": "360783", + "name": "龙南市" + }] + }, { + "code": "3608", + "name": "吉安市", + "children": [{ + "code": "360802", + "name": "吉州区" + }, { + "code": "360803", + "name": "青原区" + }, { + "code": "360821", + "name": "吉安县" + }, { + "code": "360822", + "name": "吉水县" + }, { + "code": "360823", + "name": "峡江县" + }, { + "code": "360824", + "name": "新干县" + }, { + "code": "360825", + "name": "永丰县" + }, { + "code": "360826", + "name": "泰和县" + }, { + "code": "360827", + "name": "遂川县" + }, { + "code": "360828", + "name": "万安县" + }, { + "code": "360829", + "name": "安福县" + }, { + "code": "360830", + "name": "永新县" + }, { + "code": "360881", + "name": "井冈山市" + }] + }, { + "code": "3609", + "name": "宜春市", + "children": [{ + "code": "360902", + "name": "袁州区" + }, { + "code": "360921", + "name": "奉新县" + }, { + "code": "360922", + "name": "万载县" + }, { + "code": "360923", + "name": "上高县" + }, { + "code": "360924", + "name": "宜丰县" + }, { + "code": "360925", + "name": "靖安县" + }, { + "code": "360926", + "name": "铜鼓县" + }, { + "code": "360981", + "name": "丰城市" + }, { + "code": "360982", + "name": "樟树市" + }, { + "code": "360983", + "name": "高安市" + }] + }, { + "code": "3610", + "name": "抚州市", + "children": [{ + "code": "361002", + "name": "临川区" + }, { + "code": "361003", + "name": "东乡区" + }, { + "code": "361021", + "name": "南城县" + }, { + "code": "361022", + "name": "黎川县" + }, { + "code": "361023", + "name": "南丰县" + }, { + "code": "361024", + "name": "崇仁县" + }, { + "code": "361025", + "name": "乐安县" + }, { + "code": "361026", + "name": "宜黄县" + }, { + "code": "361027", + "name": "金溪县" + }, { + "code": "361028", + "name": "资溪县" + }, { + "code": "361030", + "name": "广昌县" + }] + }, { + "code": "3611", + "name": "上饶市", + "children": [{ + "code": "361102", + "name": "信州区" + }, { + "code": "361103", + "name": "广丰区" + }, { + "code": "361104", + "name": "广信区" + }, { + "code": "361123", + "name": "玉山县" + }, { + "code": "361124", + "name": "铅山县" + }, { + "code": "361125", + "name": "横峰县" + }, { + "code": "361126", + "name": "弋阳县" + }, { + "code": "361127", + "name": "余干县" + }, { + "code": "361128", + "name": "鄱阳县" + }, { + "code": "361129", + "name": "万年县" + }, { + "code": "361130", + "name": "婺源县" + }, { + "code": "361181", + "name": "德兴市" + }] + }] +}, { + "code": "37", + "name": "山东省", + "children": [{ + "code": "3701", + "name": "济南市", + "children": [{ + "code": "370102", + "name": "历下区" + }, { + "code": "370103", + "name": "市中区" + }, { + "code": "370104", + "name": "槐荫区" + }, { + "code": "370105", + "name": "天桥区" + }, { + "code": "370112", + "name": "历城区" + }, { + "code": "370113", + "name": "长清区" + }, { + "code": "370114", + "name": "章丘区" + }, { + "code": "370115", + "name": "济阳区" + }, { + "code": "370116", + "name": "莱芜区" + }, { + "code": "370117", + "name": "钢城区" + }, { + "code": "370124", + "name": "平阴县" + }, { + "code": "370126", + "name": "商河县" + }, { + "code": "370176", + "name": "济南高新技术产业开发区" + }] + }, { + "code": "3702", + "name": "青岛市", + "children": [{ + "code": "370202", + "name": "市南区" + }, { + "code": "370203", + "name": "市北区" + }, { + "code": "370211", + "name": "黄岛区" + }, { + "code": "370212", + "name": "崂山区" + }, { + "code": "370213", + "name": "李沧区" + }, { + "code": "370214", + "name": "城阳区" + }, { + "code": "370215", + "name": "即墨区" + }, { + "code": "370281", + "name": "胶州市" + }, { + "code": "370283", + "name": "平度市" + }, { + "code": "370285", + "name": "莱西市" + }] + }, { + "code": "3703", + "name": "淄博市", + "children": [{ + "code": "370302", + "name": "淄川区" + }, { + "code": "370303", + "name": "张店区" + }, { + "code": "370304", + "name": "博山区" + }, { + "code": "370305", + "name": "临淄区" + }, { + "code": "370306", + "name": "周村区" + }, { + "code": "370321", + "name": "桓台县" + }, { + "code": "370322", + "name": "高青县" + }, { + "code": "370323", + "name": "沂源县" + }] + }, { + "code": "3704", + "name": "枣庄市", + "children": [{ + "code": "370402", + "name": "市中区" + }, { + "code": "370403", + "name": "薛城区" + }, { + "code": "370404", + "name": "峄城区" + }, { + "code": "370405", + "name": "台儿庄区" + }, { + "code": "370406", + "name": "山亭区" + }, { + "code": "370481", + "name": "滕州市" + }] + }, { + "code": "3705", + "name": "东营市", + "children": [{ + "code": "370502", + "name": "东营区" + }, { + "code": "370503", + "name": "河口区" + }, { + "code": "370505", + "name": "垦利区" + }, { + "code": "370522", + "name": "利津县" + }, { + "code": "370523", + "name": "广饶县" + }, { + "code": "370571", + "name": "东营经济技术开发区" + }, { + "code": "370572", + "name": "东营港经济开发区" + }] + }, { + "code": "3706", + "name": "烟台市", + "children": [{ + "code": "370602", + "name": "芝罘区" + }, { + "code": "370611", + "name": "福山区" + }, { + "code": "370612", + "name": "牟平区" + }, { + "code": "370613", + "name": "莱山区" + }, { + "code": "370614", + "name": "蓬莱区" + }, { + "code": "370671", + "name": "烟台高新技术产业开发区" + }, { + "code": "370676", + "name": "烟台经济技术开发区" + }, { + "code": "370681", + "name": "龙口市" + }, { + "code": "370682", + "name": "莱阳市" + }, { + "code": "370683", + "name": "莱州市" + }, { + "code": "370685", + "name": "招远市" + }, { + "code": "370686", + "name": "栖霞市" + }, { + "code": "370687", + "name": "海阳市" + }] + }, { + "code": "3707", + "name": "潍坊市", + "children": [{ + "code": "370702", + "name": "潍城区" + }, { + "code": "370703", + "name": "寒亭区" + }, { + "code": "370704", + "name": "坊子区" + }, { + "code": "370705", + "name": "奎文区" + }, { + "code": "370724", + "name": "临朐县" + }, { + "code": "370725", + "name": "昌乐县" + }, { + "code": "370772", + "name": "潍坊滨海经济技术开发区" + }, { + "code": "370781", + "name": "青州市" + }, { + "code": "370782", + "name": "诸城市" + }, { + "code": "370783", + "name": "寿光市" + }, { + "code": "370784", + "name": "安丘市" + }, { + "code": "370785", + "name": "高密市" + }, { + "code": "370786", + "name": "昌邑市" + }] + }, { + "code": "3708", + "name": "济宁市", + "children": [{ + "code": "370811", + "name": "任城区" + }, { + "code": "370812", + "name": "兖州区" + }, { + "code": "370826", + "name": "微山县" + }, { + "code": "370827", + "name": "鱼台县" + }, { + "code": "370828", + "name": "金乡县" + }, { + "code": "370829", + "name": "嘉祥县" + }, { + "code": "370830", + "name": "汶上县" + }, { + "code": "370831", + "name": "泗水县" + }, { + "code": "370832", + "name": "梁山县" + }, { + "code": "370871", + "name": "济宁高新技术产业开发区" + }, { + "code": "370881", + "name": "曲阜市" + }, { + "code": "370883", + "name": "邹城市" + }] + }, { + "code": "3709", + "name": "泰安市", + "children": [{ + "code": "370902", + "name": "泰山区" + }, { + "code": "370911", + "name": "岱岳区" + }, { + "code": "370921", + "name": "宁阳县" + }, { + "code": "370923", + "name": "东平县" + }, { + "code": "370982", + "name": "新泰市" + }, { + "code": "370983", + "name": "肥城市" + }] + }, { + "code": "3710", + "name": "威海市", + "children": [{ + "code": "371002", + "name": "环翠区" + }, { + "code": "371003", + "name": "文登区" + }, { + "code": "371071", + "name": "威海火炬高技术产业开发区" + }, { + "code": "371072", + "name": "威海经济技术开发区" + }, { + "code": "371073", + "name": "威海临港经济技术开发区" + }, { + "code": "371082", + "name": "荣成市" + }, { + "code": "371083", + "name": "乳山市" + }] + }, { + "code": "3711", + "name": "日照市", + "children": [{ + "code": "371102", + "name": "东港区" + }, { + "code": "371103", + "name": "岚山区" + }, { + "code": "371121", + "name": "五莲县" + }, { + "code": "371122", + "name": "莒县" + }, { + "code": "371171", + "name": "日照经济技术开发区" + }] + }, { + "code": "3713", + "name": "临沂市", + "children": [{ + "code": "371302", + "name": "兰山区" + }, { + "code": "371311", + "name": "罗庄区" + }, { + "code": "371312", + "name": "河东区" + }, { + "code": "371321", + "name": "沂南县" + }, { + "code": "371322", + "name": "郯城县" + }, { + "code": "371323", + "name": "沂水县" + }, { + "code": "371324", + "name": "兰陵县" + }, { + "code": "371325", + "name": "费县" + }, { + "code": "371326", + "name": "平邑县" + }, { + "code": "371327", + "name": "莒南县" + }, { + "code": "371328", + "name": "蒙阴县" + }, { + "code": "371329", + "name": "临沭县" + }, { + "code": "371371", + "name": "临沂高新技术产业开发区" + }] + }, { + "code": "3714", + "name": "德州市", + "children": [{ + "code": "371402", + "name": "德城区" + }, { + "code": "371403", + "name": "陵城区" + }, { + "code": "371422", + "name": "宁津县" + }, { + "code": "371423", + "name": "庆云县" + }, { + "code": "371424", + "name": "临邑县" + }, { + "code": "371425", + "name": "齐河县" + }, { + "code": "371426", + "name": "平原县" + }, { + "code": "371427", + "name": "夏津县" + }, { + "code": "371428", + "name": "武城县" + }, { + "code": "371471", + "name": "德州天衢新区" + }, { + "code": "371481", + "name": "乐陵市" + }, { + "code": "371482", + "name": "禹城市" + }] + }, { + "code": "3715", + "name": "聊城市", + "children": [{ + "code": "371502", + "name": "东昌府区" + }, { + "code": "371503", + "name": "茌平区" + }, { + "code": "371521", + "name": "阳谷县" + }, { + "code": "371522", + "name": "莘县" + }, { + "code": "371524", + "name": "东阿县" + }, { + "code": "371525", + "name": "冠县" + }, { + "code": "371526", + "name": "高唐县" + }, { + "code": "371581", + "name": "临清市" + }] + }, { + "code": "3716", + "name": "滨州市", + "children": [{ + "code": "371602", + "name": "滨城区" + }, { + "code": "371603", + "name": "沾化区" + }, { + "code": "371621", + "name": "惠民县" + }, { + "code": "371622", + "name": "阳信县" + }, { + "code": "371623", + "name": "无棣县" + }, { + "code": "371625", + "name": "博兴县" + }, { + "code": "371681", + "name": "邹平市" + }] + }, { + "code": "3717", + "name": "菏泽市", + "children": [{ + "code": "371702", + "name": "牡丹区" + }, { + "code": "371703", + "name": "定陶区" + }, { + "code": "371721", + "name": "曹县" + }, { + "code": "371722", + "name": "单县" + }, { + "code": "371723", + "name": "成武县" + }, { + "code": "371724", + "name": "巨野县" + }, { + "code": "371725", + "name": "郓城县" + }, { + "code": "371726", + "name": "鄄城县" + }, { + "code": "371728", + "name": "东明县" + }, { + "code": "371771", + "name": "菏泽经济技术开发区" + }, { + "code": "371772", + "name": "菏泽高新技术开发区" + }] + }] +}, { + "code": "41", + "name": "河南省", + "children": [{ + "code": "4101", + "name": "郑州市", + "children": [{ + "code": "410102", + "name": "中原区" + }, { + "code": "410103", + "name": "二七区" + }, { + "code": "410104", + "name": "管城回族区" + }, { + "code": "410105", + "name": "金水区" + }, { + "code": "410106", + "name": "上街区" + }, { + "code": "410108", + "name": "惠济区" + }, { + "code": "410122", + "name": "中牟县" + }, { + "code": "410171", + "name": "郑州经济技术开发区" + }, { + "code": "410172", + "name": "郑州高新技术产业开发区" + }, { + "code": "410173", + "name": "郑州航空港经济综合实验区" + }, { + "code": "410181", + "name": "巩义市" + }, { + "code": "410182", + "name": "荥阳市" + }, { + "code": "410183", + "name": "新密市" + }, { + "code": "410184", + "name": "新郑市" + }, { + "code": "410185", + "name": "登封市" + }] + }, { + "code": "4102", + "name": "开封市", + "children": [{ + "code": "410202", + "name": "龙亭区" + }, { + "code": "410203", + "name": "顺河回族区" + }, { + "code": "410204", + "name": "鼓楼区" + }, { + "code": "410205", + "name": "禹王台区" + }, { + "code": "410212", + "name": "祥符区" + }, { + "code": "410221", + "name": "杞县" + }, { + "code": "410222", + "name": "通许县" + }, { + "code": "410223", + "name": "尉氏县" + }, { + "code": "410225", + "name": "兰考县" + }] + }, { + "code": "4103", + "name": "洛阳市", + "children": [{ + "code": "410302", + "name": "老城区" + }, { + "code": "410303", + "name": "西工区" + }, { + "code": "410304", + "name": "瀍河回族区" + }, { + "code": "410305", + "name": "涧西区" + }, { + "code": "410307", + "name": "偃师区" + }, { + "code": "410308", + "name": "孟津区" + }, { + "code": "410311", + "name": "洛龙区" + }, { + "code": "410323", + "name": "新安县" + }, { + "code": "410324", + "name": "栾川县" + }, { + "code": "410325", + "name": "嵩县" + }, { + "code": "410326", + "name": "汝阳县" + }, { + "code": "410327", + "name": "宜阳县" + }, { + "code": "410328", + "name": "洛宁县" + }, { + "code": "410329", + "name": "伊川县" + }, { + "code": "410371", + "name": "洛阳高新技术产业开发区" + }] + }, { + "code": "4104", + "name": "平顶山市", + "children": [{ + "code": "410402", + "name": "新华区" + }, { + "code": "410403", + "name": "卫东区" + }, { + "code": "410404", + "name": "石龙区" + }, { + "code": "410411", + "name": "湛河区" + }, { + "code": "410421", + "name": "宝丰县" + }, { + "code": "410422", + "name": "叶县" + }, { + "code": "410423", + "name": "鲁山县" + }, { + "code": "410425", + "name": "郏县" + }, { + "code": "410471", + "name": "平顶山高新技术产业开发区" + }, { + "code": "410472", + "name": "平顶山市城乡一体化示范区" + }, { + "code": "410481", + "name": "舞钢市" + }, { + "code": "410482", + "name": "汝州市" + }] + }, { + "code": "4105", + "name": "安阳市", + "children": [{ + "code": "410502", + "name": "文峰区" + }, { + "code": "410503", + "name": "北关区" + }, { + "code": "410505", + "name": "殷都区" + }, { + "code": "410506", + "name": "龙安区" + }, { + "code": "410522", + "name": "安阳县" + }, { + "code": "410523", + "name": "汤阴县" + }, { + "code": "410526", + "name": "滑县" + }, { + "code": "410527", + "name": "内黄县" + }, { + "code": "410571", + "name": "安阳高新技术产业开发区" + }, { + "code": "410581", + "name": "林州市" + }] + }, { + "code": "4106", + "name": "鹤壁市", + "children": [{ + "code": "410602", + "name": "鹤山区" + }, { + "code": "410603", + "name": "山城区" + }, { + "code": "410611", + "name": "淇滨区" + }, { + "code": "410621", + "name": "浚县" + }, { + "code": "410622", + "name": "淇县" + }, { + "code": "410671", + "name": "鹤壁经济技术开发区" + }] + }, { + "code": "4107", + "name": "新乡市", + "children": [{ + "code": "410702", + "name": "红旗区" + }, { + "code": "410703", + "name": "卫滨区" + }, { + "code": "410704", + "name": "凤泉区" + }, { + "code": "410711", + "name": "牧野区" + }, { + "code": "410721", + "name": "新乡县" + }, { + "code": "410724", + "name": "获嘉县" + }, { + "code": "410725", + "name": "原阳县" + }, { + "code": "410726", + "name": "延津县" + }, { + "code": "410727", + "name": "封丘县" + }, { + "code": "410771", + "name": "新乡高新技术产业开发区" + }, { + "code": "410772", + "name": "新乡经济技术开发区" + }, { + "code": "410773", + "name": "新乡市平原城乡一体化示范区" + }, { + "code": "410781", + "name": "卫辉市" + }, { + "code": "410782", + "name": "辉县市" + }, { + "code": "410783", + "name": "长垣市" + }] + }, { + "code": "4108", + "name": "焦作市", + "children": [{ + "code": "410802", + "name": "解放区" + }, { + "code": "410803", + "name": "中站区" + }, { + "code": "410804", + "name": "马村区" + }, { + "code": "410811", + "name": "山阳区" + }, { + "code": "410821", + "name": "修武县" + }, { + "code": "410822", + "name": "博爱县" + }, { + "code": "410823", + "name": "武陟县" + }, { + "code": "410825", + "name": "温县" + }, { + "code": "410871", + "name": "焦作城乡一体化示范区" + }, { + "code": "410882", + "name": "沁阳市" + }, { + "code": "410883", + "name": "孟州市" + }] + }, { + "code": "4109", + "name": "濮阳市", + "children": [{ + "code": "410902", + "name": "华龙区" + }, { + "code": "410922", + "name": "清丰县" + }, { + "code": "410923", + "name": "南乐县" + }, { + "code": "410926", + "name": "范县" + }, { + "code": "410927", + "name": "台前县" + }, { + "code": "410928", + "name": "濮阳县" + }, { + "code": "410971", + "name": "河南濮阳工业园区" + }, { + "code": "410972", + "name": "濮阳经济技术开发区" + }] + }, { + "code": "4110", + "name": "许昌市", + "children": [{ + "code": "411002", + "name": "魏都区" + }, { + "code": "411003", + "name": "建安区" + }, { + "code": "411024", + "name": "鄢陵县" + }, { + "code": "411025", + "name": "襄城县" + }, { + "code": "411071", + "name": "许昌经济技术开发区" + }, { + "code": "411081", + "name": "禹州市" + }, { + "code": "411082", + "name": "长葛市" + }] + }, { + "code": "4111", + "name": "漯河市", + "children": [{ + "code": "411102", + "name": "源汇区" + }, { + "code": "411103", + "name": "郾城区" + }, { + "code": "411104", + "name": "召陵区" + }, { + "code": "411121", + "name": "舞阳县" + }, { + "code": "411122", + "name": "临颍县" + }, { + "code": "411171", + "name": "漯河经济技术开发区" + }] + }, { + "code": "4112", + "name": "三门峡市", + "children": [{ + "code": "411202", + "name": "湖滨区" + }, { + "code": "411203", + "name": "陕州区" + }, { + "code": "411221", + "name": "渑池县" + }, { + "code": "411224", + "name": "卢氏县" + }, { + "code": "411271", + "name": "河南三门峡经济开发区" + }, { + "code": "411281", + "name": "义马市" + }, { + "code": "411282", + "name": "灵宝市" + }] + }, { + "code": "4113", + "name": "南阳市", + "children": [{ + "code": "411302", + "name": "宛城区" + }, { + "code": "411303", + "name": "卧龙区" + }, { + "code": "411321", + "name": "南召县" + }, { + "code": "411322", + "name": "方城县" + }, { + "code": "411323", + "name": "西峡县" + }, { + "code": "411324", + "name": "镇平县" + }, { + "code": "411325", + "name": "内乡县" + }, { + "code": "411326", + "name": "淅川县" + }, { + "code": "411327", + "name": "社旗县" + }, { + "code": "411328", + "name": "唐河县" + }, { + "code": "411329", + "name": "新野县" + }, { + "code": "411330", + "name": "桐柏县" + }, { + "code": "411371", + "name": "南阳高新技术产业开发区" + }, { + "code": "411372", + "name": "南阳市城乡一体化示范区" + }, { + "code": "411381", + "name": "邓州市" + }] + }, { + "code": "4114", + "name": "商丘市", + "children": [{ + "code": "411402", + "name": "梁园区" + }, { + "code": "411403", + "name": "睢阳区" + }, { + "code": "411421", + "name": "民权县" + }, { + "code": "411422", + "name": "睢县" + }, { + "code": "411423", + "name": "宁陵县" + }, { + "code": "411424", + "name": "柘城县" + }, { + "code": "411425", + "name": "虞城县" + }, { + "code": "411426", + "name": "夏邑县" + }, { + "code": "411471", + "name": "豫东综合物流产业聚集区" + }, { + "code": "411472", + "name": "河南商丘经济开发区" + }, { + "code": "411481", + "name": "永城市" + }] + }, { + "code": "4115", + "name": "信阳市", + "children": [{ + "code": "411502", + "name": "浉河区" + }, { + "code": "411503", + "name": "平桥区" + }, { + "code": "411521", + "name": "罗山县" + }, { + "code": "411522", + "name": "光山县" + }, { + "code": "411523", + "name": "新县" + }, { + "code": "411524", + "name": "商城县" + }, { + "code": "411525", + "name": "固始县" + }, { + "code": "411526", + "name": "潢川县" + }, { + "code": "411527", + "name": "淮滨县" + }, { + "code": "411528", + "name": "息县" + }, { + "code": "411571", + "name": "信阳高新技术产业开发区" + }] + }, { + "code": "4116", + "name": "周口市", + "children": [{ + "code": "411602", + "name": "川汇区" + }, { + "code": "411603", + "name": "淮阳区" + }, { + "code": "411621", + "name": "扶沟县" + }, { + "code": "411622", + "name": "西华县" + }, { + "code": "411623", + "name": "商水县" + }, { + "code": "411624", + "name": "沈丘县" + }, { + "code": "411625", + "name": "郸城县" + }, { + "code": "411627", + "name": "太康县" + }, { + "code": "411628", + "name": "鹿邑县" + }, { + "code": "411671", + "name": "周口临港开发区" + }, { + "code": "411681", + "name": "项城市" + }] + }, { + "code": "4117", + "name": "驻马店市", + "children": [{ + "code": "411702", + "name": "驿城区" + }, { + "code": "411721", + "name": "西平县" + }, { + "code": "411722", + "name": "上蔡县" + }, { + "code": "411723", + "name": "平舆县" + }, { + "code": "411724", + "name": "正阳县" + }, { + "code": "411725", + "name": "确山县" + }, { + "code": "411726", + "name": "泌阳县" + }, { + "code": "411727", + "name": "汝南县" + }, { + "code": "411728", + "name": "遂平县" + }, { + "code": "411729", + "name": "新蔡县" + }, { + "code": "411771", + "name": "河南驻马店经济开发区" + }] + }, { + "code": "4190", + "name": "省直辖县级行政区划", + "children": [{ + "code": "419001", + "name": "济源市" + }] + }] +}, { + "code": "42", + "name": "湖北省", + "children": [{ + "code": "4201", + "name": "武汉市", + "children": [{ + "code": "420102", + "name": "江岸区" + }, { + "code": "420103", + "name": "江汉区" + }, { + "code": "420104", + "name": "硚口区" + }, { + "code": "420105", + "name": "汉阳区" + }, { + "code": "420106", + "name": "武昌区" + }, { + "code": "420107", + "name": "青山区" + }, { + "code": "420111", + "name": "洪山区" + }, { + "code": "420112", + "name": "东西湖区" + }, { + "code": "420113", + "name": "汉南区" + }, { + "code": "420114", + "name": "蔡甸区" + }, { + "code": "420115", + "name": "江夏区" + }, { + "code": "420116", + "name": "黄陂区" + }, { + "code": "420117", + "name": "新洲区" + }] + }, { + "code": "4202", + "name": "黄石市", + "children": [{ + "code": "420202", + "name": "黄石港区" + }, { + "code": "420203", + "name": "西塞山区" + }, { + "code": "420204", + "name": "下陆区" + }, { + "code": "420205", + "name": "铁山区" + }, { + "code": "420222", + "name": "阳新县" + }, { + "code": "420281", + "name": "大冶市" + }] + }, { + "code": "4203", + "name": "十堰市", + "children": [{ + "code": "420302", + "name": "茅箭区" + }, { + "code": "420303", + "name": "张湾区" + }, { + "code": "420304", + "name": "郧阳区" + }, { + "code": "420322", + "name": "郧西县" + }, { + "code": "420323", + "name": "竹山县" + }, { + "code": "420324", + "name": "竹溪县" + }, { + "code": "420325", + "name": "房县" + }, { + "code": "420381", + "name": "丹江口市" + }] + }, { + "code": "4205", + "name": "宜昌市", + "children": [{ + "code": "420502", + "name": "西陵区" + }, { + "code": "420503", + "name": "伍家岗区" + }, { + "code": "420504", + "name": "点军区" + }, { + "code": "420505", + "name": "猇亭区" + }, { + "code": "420506", + "name": "夷陵区" + }, { + "code": "420525", + "name": "远安县" + }, { + "code": "420526", + "name": "兴山县" + }, { + "code": "420527", + "name": "秭归县" + }, { + "code": "420528", + "name": "长阳土家族自治县" + }, { + "code": "420529", + "name": "五峰土家族自治县" + }, { + "code": "420581", + "name": "宜都市" + }, { + "code": "420582", + "name": "当阳市" + }, { + "code": "420583", + "name": "枝江市" + }] + }, { + "code": "4206", + "name": "襄阳市", + "children": [{ + "code": "420602", + "name": "襄城区" + }, { + "code": "420606", + "name": "樊城区" + }, { + "code": "420607", + "name": "襄州区" + }, { + "code": "420624", + "name": "南漳县" + }, { + "code": "420625", + "name": "谷城县" + }, { + "code": "420626", + "name": "保康县" + }, { + "code": "420682", + "name": "老河口市" + }, { + "code": "420683", + "name": "枣阳市" + }, { + "code": "420684", + "name": "宜城市" + }] + }, { + "code": "4207", + "name": "鄂州市", + "children": [{ + "code": "420702", + "name": "梁子湖区" + }, { + "code": "420703", + "name": "华容区" + }, { + "code": "420704", + "name": "鄂城区" + }] + }, { + "code": "4208", + "name": "荆门市", + "children": [{ + "code": "420802", + "name": "东宝区" + }, { + "code": "420804", + "name": "掇刀区" + }, { + "code": "420822", + "name": "沙洋县" + }, { + "code": "420881", + "name": "钟祥市" + }, { + "code": "420882", + "name": "京山市" + }] + }, { + "code": "4209", + "name": "孝感市", + "children": [{ + "code": "420902", + "name": "孝南区" + }, { + "code": "420921", + "name": "孝昌县" + }, { + "code": "420922", + "name": "大悟县" + }, { + "code": "420923", + "name": "云梦县" + }, { + "code": "420981", + "name": "应城市" + }, { + "code": "420982", + "name": "安陆市" + }, { + "code": "420984", + "name": "汉川市" + }] + }, { + "code": "4210", + "name": "荆州市", + "children": [{ + "code": "421002", + "name": "沙市区" + }, { + "code": "421003", + "name": "荆州区" + }, { + "code": "421022", + "name": "公安县" + }, { + "code": "421024", + "name": "江陵县" + }, { + "code": "421071", + "name": "荆州经济技术开发区" + }, { + "code": "421081", + "name": "石首市" + }, { + "code": "421083", + "name": "洪湖市" + }, { + "code": "421087", + "name": "松滋市" + }, { + "code": "421088", + "name": "监利市" + }] + }, { + "code": "4211", + "name": "黄冈市", + "children": [{ + "code": "421102", + "name": "黄州区" + }, { + "code": "421121", + "name": "团风县" + }, { + "code": "421122", + "name": "红安县" + }, { + "code": "421123", + "name": "罗田县" + }, { + "code": "421124", + "name": "英山县" + }, { + "code": "421125", + "name": "浠水县" + }, { + "code": "421126", + "name": "蕲春县" + }, { + "code": "421127", + "name": "黄梅县" + }, { + "code": "421171", + "name": "龙感湖管理区" + }, { + "code": "421181", + "name": "麻城市" + }, { + "code": "421182", + "name": "武穴市" + }] + }, { + "code": "4212", + "name": "咸宁市", + "children": [{ + "code": "421202", + "name": "咸安区" + }, { + "code": "421221", + "name": "嘉鱼县" + }, { + "code": "421222", + "name": "通城县" + }, { + "code": "421223", + "name": "崇阳县" + }, { + "code": "421224", + "name": "通山县" + }, { + "code": "421281", + "name": "赤壁市" + }] + }, { + "code": "4213", + "name": "随州市", + "children": [{ + "code": "421303", + "name": "曾都区" + }, { + "code": "421321", + "name": "随县" + }, { + "code": "421381", + "name": "广水市" + }] + }, { + "code": "4228", + "name": "恩施土家族苗族自治州", + "children": [{ + "code": "422801", + "name": "恩施市" + }, { + "code": "422802", + "name": "利川市" + }, { + "code": "422822", + "name": "建始县" + }, { + "code": "422823", + "name": "巴东县" + }, { + "code": "422825", + "name": "宣恩县" + }, { + "code": "422826", + "name": "咸丰县" + }, { + "code": "422827", + "name": "来凤县" + }, { + "code": "422828", + "name": "鹤峰县" + }] + }, { + "code": "4290", + "name": "省直辖县级行政区划", + "children": [{ + "code": "429004", + "name": "仙桃市" + }, { + "code": "429005", + "name": "潜江市" + }, { + "code": "429006", + "name": "天门市" + }, { + "code": "429021", + "name": "神农架林区" + }] + }] +}, { + "code": "43", + "name": "湖南省", + "children": [{ + "code": "4301", + "name": "长沙市", + "children": [{ + "code": "430102", + "name": "芙蓉区" + }, { + "code": "430103", + "name": "天心区" + }, { + "code": "430104", + "name": "岳麓区" + }, { + "code": "430105", + "name": "开福区" + }, { + "code": "430111", + "name": "雨花区" + }, { + "code": "430112", + "name": "望城区" + }, { + "code": "430121", + "name": "长沙县" + }, { + "code": "430181", + "name": "浏阳市" + }, { + "code": "430182", + "name": "宁乡市" + }] + }, { + "code": "4302", + "name": "株洲市", + "children": [{ + "code": "430202", + "name": "荷塘区" + }, { + "code": "430203", + "name": "芦淞区" + }, { + "code": "430204", + "name": "石峰区" + }, { + "code": "430211", + "name": "天元区" + }, { + "code": "430212", + "name": "渌口区" + }, { + "code": "430223", + "name": "攸县" + }, { + "code": "430224", + "name": "茶陵县" + }, { + "code": "430225", + "name": "炎陵县" + }, { + "code": "430281", + "name": "醴陵市" + }] + }, { + "code": "4303", + "name": "湘潭市", + "children": [{ + "code": "430302", + "name": "雨湖区" + }, { + "code": "430304", + "name": "岳塘区" + }, { + "code": "430321", + "name": "湘潭县" + }, { + "code": "430371", + "name": "湖南湘潭高新技术产业园区" + }, { + "code": "430372", + "name": "湘潭昭山示范区" + }, { + "code": "430373", + "name": "湘潭九华示范区" + }, { + "code": "430381", + "name": "湘乡市" + }, { + "code": "430382", + "name": "韶山市" + }] + }, { + "code": "4304", + "name": "衡阳市", + "children": [{ + "code": "430405", + "name": "珠晖区" + }, { + "code": "430406", + "name": "雁峰区" + }, { + "code": "430407", + "name": "石鼓区" + }, { + "code": "430408", + "name": "蒸湘区" + }, { + "code": "430412", + "name": "南岳区" + }, { + "code": "430421", + "name": "衡阳县" + }, { + "code": "430422", + "name": "衡南县" + }, { + "code": "430423", + "name": "衡山县" + }, { + "code": "430424", + "name": "衡东县" + }, { + "code": "430426", + "name": "祁东县" + }, { + "code": "430473", + "name": "湖南衡阳松木经济开发区" + }, { + "code": "430476", + "name": "湖南衡阳高新技术产业园区" + }, { + "code": "430481", + "name": "耒阳市" + }, { + "code": "430482", + "name": "常宁市" + }] + }, { + "code": "4305", + "name": "邵阳市", + "children": [{ + "code": "430502", + "name": "双清区" + }, { + "code": "430503", + "name": "大祥区" + }, { + "code": "430511", + "name": "北塔区" + }, { + "code": "430522", + "name": "新邵县" + }, { + "code": "430523", + "name": "邵阳县" + }, { + "code": "430524", + "name": "隆回县" + }, { + "code": "430525", + "name": "洞口县" + }, { + "code": "430527", + "name": "绥宁县" + }, { + "code": "430528", + "name": "新宁县" + }, { + "code": "430529", + "name": "城步苗族自治县" + }, { + "code": "430581", + "name": "武冈市" + }, { + "code": "430582", + "name": "邵东市" + }] + }, { + "code": "4306", + "name": "岳阳市", + "children": [{ + "code": "430602", + "name": "岳阳楼区" + }, { + "code": "430603", + "name": "云溪区" + }, { + "code": "430611", + "name": "君山区" + }, { + "code": "430621", + "name": "岳阳县" + }, { + "code": "430623", + "name": "华容县" + }, { + "code": "430624", + "name": "湘阴县" + }, { + "code": "430626", + "name": "平江县" + }, { + "code": "430671", + "name": "岳阳市屈原管理区" + }, { + "code": "430681", + "name": "汨罗市" + }, { + "code": "430682", + "name": "临湘市" + }] + }, { + "code": "4307", + "name": "常德市", + "children": [{ + "code": "430702", + "name": "武陵区" + }, { + "code": "430703", + "name": "鼎城区" + }, { + "code": "430721", + "name": "安乡县" + }, { + "code": "430722", + "name": "汉寿县" + }, { + "code": "430723", + "name": "澧县" + }, { + "code": "430724", + "name": "临澧县" + }, { + "code": "430725", + "name": "桃源县" + }, { + "code": "430726", + "name": "石门县" + }, { + "code": "430771", + "name": "常德市西洞庭管理区" + }, { + "code": "430781", + "name": "津市市" + }] + }, { + "code": "4308", + "name": "张家界市", + "children": [{ + "code": "430802", + "name": "永定区" + }, { + "code": "430811", + "name": "武陵源区" + }, { + "code": "430821", + "name": "慈利县" + }, { + "code": "430822", + "name": "桑植县" + }] + }, { + "code": "4309", + "name": "益阳市", + "children": [{ + "code": "430902", + "name": "资阳区" + }, { + "code": "430903", + "name": "赫山区" + }, { + "code": "430921", + "name": "南县" + }, { + "code": "430922", + "name": "桃江县" + }, { + "code": "430923", + "name": "安化县" + }, { + "code": "430971", + "name": "益阳市大通湖管理区" + }, { + "code": "430972", + "name": "湖南益阳高新技术产业园区" + }, { + "code": "430981", + "name": "沅江市" + }] + }, { + "code": "4310", + "name": "郴州市", + "children": [{ + "code": "431002", + "name": "北湖区" + }, { + "code": "431003", + "name": "苏仙区" + }, { + "code": "431021", + "name": "桂阳县" + }, { + "code": "431022", + "name": "宜章县" + }, { + "code": "431023", + "name": "永兴县" + }, { + "code": "431024", + "name": "嘉禾县" + }, { + "code": "431025", + "name": "临武县" + }, { + "code": "431026", + "name": "汝城县" + }, { + "code": "431027", + "name": "桂东县" + }, { + "code": "431028", + "name": "安仁县" + }, { + "code": "431081", + "name": "资兴市" + }] + }, { + "code": "4311", + "name": "永州市", + "children": [{ + "code": "431102", + "name": "零陵区" + }, { + "code": "431103", + "name": "冷水滩区" + }, { + "code": "431122", + "name": "东安县" + }, { + "code": "431123", + "name": "双牌县" + }, { + "code": "431124", + "name": "道县" + }, { + "code": "431125", + "name": "江永县" + }, { + "code": "431126", + "name": "宁远县" + }, { + "code": "431127", + "name": "蓝山县" + }, { + "code": "431128", + "name": "新田县" + }, { + "code": "431129", + "name": "江华瑶族自治县" + }, { + "code": "431171", + "name": "永州经济技术开发区" + }, { + "code": "431173", + "name": "永州市回龙圩管理区" + }, { + "code": "431181", + "name": "祁阳市" + }] + }, { + "code": "4312", + "name": "怀化市", + "children": [{ + "code": "431202", + "name": "鹤城区" + }, { + "code": "431221", + "name": "中方县" + }, { + "code": "431222", + "name": "沅陵县" + }, { + "code": "431223", + "name": "辰溪县" + }, { + "code": "431224", + "name": "溆浦县" + }, { + "code": "431225", + "name": "会同县" + }, { + "code": "431226", + "name": "麻阳苗族自治县" + }, { + "code": "431227", + "name": "新晃侗族自治县" + }, { + "code": "431228", + "name": "芷江侗族自治县" + }, { + "code": "431229", + "name": "靖州苗族侗族自治县" + }, { + "code": "431230", + "name": "通道侗族自治县" + }, { + "code": "431271", + "name": "怀化市洪江管理区" + }, { + "code": "431281", + "name": "洪江市" + }] + }, { + "code": "4313", + "name": "娄底市", + "children": [{ + "code": "431302", + "name": "娄星区" + }, { + "code": "431321", + "name": "双峰县" + }, { + "code": "431322", + "name": "新化县" + }, { + "code": "431381", + "name": "冷水江市" + }, { + "code": "431382", + "name": "涟源市" + }] + }, { + "code": "4331", + "name": "湘西土家族苗族自治州", + "children": [{ + "code": "433101", + "name": "吉首市" + }, { + "code": "433122", + "name": "泸溪县" + }, { + "code": "433123", + "name": "凤凰县" + }, { + "code": "433124", + "name": "花垣县" + }, { + "code": "433125", + "name": "保靖县" + }, { + "code": "433126", + "name": "古丈县" + }, { + "code": "433127", + "name": "永顺县" + }, { + "code": "433130", + "name": "龙山县" + }] + }] +}, { + "code": "44", + "name": "广东省", + "children": [{ + "code": "4401", + "name": "广州市", + "children": [{ + "code": "440103", + "name": "荔湾区" + }, { + "code": "440104", + "name": "越秀区" + }, { + "code": "440105", + "name": "海珠区" + }, { + "code": "440106", + "name": "天河区" + }, { + "code": "440111", + "name": "白云区" + }, { + "code": "440112", + "name": "黄埔区" + }, { + "code": "440113", + "name": "番禺区" + }, { + "code": "440114", + "name": "花都区" + }, { + "code": "440115", + "name": "南沙区" + }, { + "code": "440117", + "name": "从化区" + }, { + "code": "440118", + "name": "增城区" + }] + }, { + "code": "4402", + "name": "韶关市", + "children": [{ + "code": "440203", + "name": "武江区" + }, { + "code": "440204", + "name": "浈江区" + }, { + "code": "440205", + "name": "曲江区" + }, { + "code": "440222", + "name": "始兴县" + }, { + "code": "440224", + "name": "仁化县" + }, { + "code": "440229", + "name": "翁源县" + }, { + "code": "440232", + "name": "乳源瑶族自治县" + }, { + "code": "440233", + "name": "新丰县" + }, { + "code": "440281", + "name": "乐昌市" + }, { + "code": "440282", + "name": "南雄市" + }] + }, { + "code": "4403", + "name": "深圳市", + "children": [{ + "code": "440303", + "name": "罗湖区" + }, { + "code": "440304", + "name": "福田区" + }, { + "code": "440305", + "name": "南山区" + }, { + "code": "440306", + "name": "宝安区" + }, { + "code": "440307", + "name": "龙岗区" + }, { + "code": "440308", + "name": "盐田区" + }, { + "code": "440309", + "name": "龙华区" + }, { + "code": "440310", + "name": "坪山区" + }, { + "code": "440311", + "name": "光明区" + }] + }, { + "code": "4404", + "name": "珠海市", + "children": [{ + "code": "440402", + "name": "香洲区" + }, { + "code": "440403", + "name": "斗门区" + }, { + "code": "440404", + "name": "金湾区" + }] + }, { + "code": "4405", + "name": "汕头市", + "children": [{ + "code": "440507", + "name": "龙湖区" + }, { + "code": "440511", + "name": "金平区" + }, { + "code": "440512", + "name": "濠江区" + }, { + "code": "440513", + "name": "潮阳区" + }, { + "code": "440514", + "name": "潮南区" + }, { + "code": "440515", + "name": "澄海区" + }, { + "code": "440523", + "name": "南澳县" + }] + }, { + "code": "4406", + "name": "佛山市", + "children": [{ + "code": "440604", + "name": "禅城区" + }, { + "code": "440605", + "name": "南海区" + }, { + "code": "440606", + "name": "顺德区" + }, { + "code": "440607", + "name": "三水区" + }, { + "code": "440608", + "name": "高明区" + }] + }, { + "code": "4407", + "name": "江门市", + "children": [{ + "code": "440703", + "name": "蓬江区" + }, { + "code": "440704", + "name": "江海区" + }, { + "code": "440705", + "name": "新会区" + }, { + "code": "440781", + "name": "台山市" + }, { + "code": "440783", + "name": "开平市" + }, { + "code": "440784", + "name": "鹤山市" + }, { + "code": "440785", + "name": "恩平市" + }] + }, { + "code": "4408", + "name": "湛江市", + "children": [{ + "code": "440802", + "name": "赤坎区" + }, { + "code": "440803", + "name": "霞山区" + }, { + "code": "440804", + "name": "坡头区" + }, { + "code": "440811", + "name": "麻章区" + }, { + "code": "440823", + "name": "遂溪县" + }, { + "code": "440825", + "name": "徐闻县" + }, { + "code": "440881", + "name": "廉江市" + }, { + "code": "440882", + "name": "雷州市" + }, { + "code": "440883", + "name": "吴川市" + }] + }, { + "code": "4409", + "name": "茂名市", + "children": [{ + "code": "440902", + "name": "茂南区" + }, { + "code": "440904", + "name": "电白区" + }, { + "code": "440981", + "name": "高州市" + }, { + "code": "440982", + "name": "化州市" + }, { + "code": "440983", + "name": "信宜市" + }] + }, { + "code": "4412", + "name": "肇庆市", + "children": [{ + "code": "441202", + "name": "端州区" + }, { + "code": "441203", + "name": "鼎湖区" + }, { + "code": "441204", + "name": "高要区" + }, { + "code": "441223", + "name": "广宁县" + }, { + "code": "441224", + "name": "怀集县" + }, { + "code": "441225", + "name": "封开县" + }, { + "code": "441226", + "name": "德庆县" + }, { + "code": "441284", + "name": "四会市" + }] + }, { + "code": "4413", + "name": "惠州市", + "children": [{ + "code": "441302", + "name": "惠城区" + }, { + "code": "441303", + "name": "惠阳区" + }, { + "code": "441322", + "name": "博罗县" + }, { + "code": "441323", + "name": "惠东县" + }, { + "code": "441324", + "name": "龙门县" + }] + }, { + "code": "4414", + "name": "梅州市", + "children": [{ + "code": "441402", + "name": "梅江区" + }, { + "code": "441403", + "name": "梅县区" + }, { + "code": "441422", + "name": "大埔县" + }, { + "code": "441423", + "name": "丰顺县" + }, { + "code": "441424", + "name": "五华县" + }, { + "code": "441426", + "name": "平远县" + }, { + "code": "441427", + "name": "蕉岭县" + }, { + "code": "441481", + "name": "兴宁市" + }] + }, { + "code": "4415", + "name": "汕尾市", + "children": [{ + "code": "441502", + "name": "城区" + }, { + "code": "441521", + "name": "海丰县" + }, { + "code": "441523", + "name": "陆河县" + }, { + "code": "441581", + "name": "陆丰市" + }] + }, { + "code": "4416", + "name": "河源市", + "children": [{ + "code": "441602", + "name": "源城区" + }, { + "code": "441621", + "name": "紫金县" + }, { + "code": "441622", + "name": "龙川县" + }, { + "code": "441623", + "name": "连平县" + }, { + "code": "441624", + "name": "和平县" + }, { + "code": "441625", + "name": "东源县" + }] + }, { + "code": "4417", + "name": "阳江市", + "children": [{ + "code": "441702", + "name": "江城区" + }, { + "code": "441704", + "name": "阳东区" + }, { + "code": "441721", + "name": "阳西县" + }, { + "code": "441781", + "name": "阳春市" + }] + }, { + "code": "4418", + "name": "清远市", + "children": [{ + "code": "441802", + "name": "清城区" + }, { + "code": "441803", + "name": "清新区" + }, { + "code": "441821", + "name": "佛冈县" + }, { + "code": "441823", + "name": "阳山县" + }, { + "code": "441825", + "name": "连山壮族瑶族自治县" + }, { + "code": "441826", + "name": "连南瑶族自治县" + }, { + "code": "441881", + "name": "英德市" + }, { + "code": "441882", + "name": "连州市" + }] + }, { + "code": "4419", + "name": "东莞市", + "children": [{ + "code": "441900003", + "name": "东城街道" + }, { + "code": "441900004", + "name": "南城街道" + }, { + "code": "441900005", + "name": "万江街道" + }, { + "code": "441900006", + "name": "莞城街道" + }, { + "code": "441900101", + "name": "石碣镇" + }, { + "code": "441900102", + "name": "石龙镇" + }, { + "code": "441900103", + "name": "茶山镇" + }, { + "code": "441900104", + "name": "石排镇" + }, { + "code": "441900105", + "name": "企石镇" + }, { + "code": "441900106", + "name": "横沥镇" + }, { + "code": "441900107", + "name": "桥头镇" + }, { + "code": "441900108", + "name": "谢岗镇" + }, { + "code": "441900109", + "name": "东坑镇" + }, { + "code": "441900110", + "name": "常平镇" + }, { + "code": "441900111", + "name": "寮步镇" + }, { + "code": "441900112", + "name": "樟木头镇" + }, { + "code": "441900113", + "name": "大朗镇" + }, { + "code": "441900114", + "name": "黄江镇" + }, { + "code": "441900115", + "name": "清溪镇" + }, { + "code": "441900116", + "name": "塘厦镇" + }, { + "code": "441900117", + "name": "凤岗镇" + }, { + "code": "441900118", + "name": "大岭山镇" + }, { + "code": "441900119", + "name": "长安镇" + }, { + "code": "441900121", + "name": "虎门镇" + }, { + "code": "441900122", + "name": "厚街镇" + }, { + "code": "441900123", + "name": "沙田镇" + }, { + "code": "441900124", + "name": "道滘镇" + }, { + "code": "441900125", + "name": "洪梅镇" + }, { + "code": "441900126", + "name": "麻涌镇" + }, { + "code": "441900127", + "name": "望牛墩镇" + }, { + "code": "441900128", + "name": "中堂镇" + }, { + "code": "441900129", + "name": "高埗镇" + }, { + "code": "441900401", + "name": "松山湖" + }, { + "code": "441900402", + "name": "东莞港" + }, { + "code": "441900403", + "name": "东莞生态园" + }, { + "code": "441900404", + "name": "东莞滨海湾新区" + }] + }, { + "code": "4420", + "name": "中山市", + "children": [{ + "code": "442000001", + "name": "石岐街道" + }, { + "code": "442000002", + "name": "东区街道" + }, { + "code": "442000003", + "name": "中山港街道" + }, { + "code": "442000004", + "name": "西区街道" + }, { + "code": "442000005", + "name": "南区街道" + }, { + "code": "442000006", + "name": "五桂山街道" + }, { + "code": "442000007", + "name": "民众街道" + }, { + "code": "442000008", + "name": "南朗街道" + }, { + "code": "442000101", + "name": "黄圃镇" + }, { + "code": "442000103", + "name": "东凤镇" + }, { + "code": "442000105", + "name": "古镇镇" + }, { + "code": "442000106", + "name": "沙溪镇" + }, { + "code": "442000107", + "name": "坦洲镇" + }, { + "code": "442000108", + "name": "港口镇" + }, { + "code": "442000109", + "name": "三角镇" + }, { + "code": "442000110", + "name": "横栏镇" + }, { + "code": "442000111", + "name": "南头镇" + }, { + "code": "442000112", + "name": "阜沙镇" + }, { + "code": "442000114", + "name": "三乡镇" + }, { + "code": "442000115", + "name": "板芙镇" + }, { + "code": "442000116", + "name": "大涌镇" + }, { + "code": "442000117", + "name": "神湾镇" + }, { + "code": "442000118", + "name": "小榄镇" + }] + }, { + "code": "4451", + "name": "潮州市", + "children": [{ + "code": "445102", + "name": "湘桥区" + }, { + "code": "445103", + "name": "潮安区" + }, { + "code": "445122", + "name": "饶平县" + }] + }, { + "code": "4452", + "name": "揭阳市", + "children": [{ + "code": "445202", + "name": "榕城区" + }, { + "code": "445203", + "name": "揭东区" + }, { + "code": "445222", + "name": "揭西县" + }, { + "code": "445224", + "name": "惠来县" + }, { + "code": "445281", + "name": "普宁市" + }] + }, { + "code": "4453", + "name": "云浮市", + "children": [{ + "code": "445302", + "name": "云城区" + }, { + "code": "445303", + "name": "云安区" + }, { + "code": "445321", + "name": "新兴县" + }, { + "code": "445322", + "name": "郁南县" + }, { + "code": "445381", + "name": "罗定市" + }] + }] +}, { + "code": "45", + "name": "广西壮族自治区", + "children": [{ + "code": "4501", + "name": "南宁市", + "children": [{ + "code": "450102", + "name": "兴宁区" + }, { + "code": "450103", + "name": "青秀区" + }, { + "code": "450105", + "name": "江南区" + }, { + "code": "450107", + "name": "西乡塘区" + }, { + "code": "450108", + "name": "良庆区" + }, { + "code": "450109", + "name": "邕宁区" + }, { + "code": "450110", + "name": "武鸣区" + }, { + "code": "450123", + "name": "隆安县" + }, { + "code": "450124", + "name": "马山县" + }, { + "code": "450125", + "name": "上林县" + }, { + "code": "450126", + "name": "宾阳县" + }, { + "code": "450181", + "name": "横州市" + }] + }, { + "code": "4502", + "name": "柳州市", + "children": [{ + "code": "450202", + "name": "城中区" + }, { + "code": "450203", + "name": "鱼峰区" + }, { + "code": "450204", + "name": "柳南区" + }, { + "code": "450205", + "name": "柳北区" + }, { + "code": "450206", + "name": "柳江区" + }, { + "code": "450222", + "name": "柳城县" + }, { + "code": "450223", + "name": "鹿寨县" + }, { + "code": "450224", + "name": "融安县" + }, { + "code": "450225", + "name": "融水苗族自治县" + }, { + "code": "450226", + "name": "三江侗族自治县" + }] + }, { + "code": "4503", + "name": "桂林市", + "children": [{ + "code": "450302", + "name": "秀峰区" + }, { + "code": "450303", + "name": "叠彩区" + }, { + "code": "450304", + "name": "象山区" + }, { + "code": "450305", + "name": "七星区" + }, { + "code": "450311", + "name": "雁山区" + }, { + "code": "450312", + "name": "临桂区" + }, { + "code": "450321", + "name": "阳朔县" + }, { + "code": "450323", + "name": "灵川县" + }, { + "code": "450324", + "name": "全州县" + }, { + "code": "450325", + "name": "兴安县" + }, { + "code": "450326", + "name": "永福县" + }, { + "code": "450327", + "name": "灌阳县" + }, { + "code": "450328", + "name": "龙胜各族自治县" + }, { + "code": "450329", + "name": "资源县" + }, { + "code": "450330", + "name": "平乐县" + }, { + "code": "450332", + "name": "恭城瑶族自治县" + }, { + "code": "450381", + "name": "荔浦市" + }] + }, { + "code": "4504", + "name": "梧州市", + "children": [{ + "code": "450403", + "name": "万秀区" + }, { + "code": "450405", + "name": "长洲区" + }, { + "code": "450406", + "name": "龙圩区" + }, { + "code": "450421", + "name": "苍梧县" + }, { + "code": "450422", + "name": "藤县" + }, { + "code": "450423", + "name": "蒙山县" + }, { + "code": "450481", + "name": "岑溪市" + }] + }, { + "code": "4505", + "name": "北海市", + "children": [{ + "code": "450502", + "name": "海城区" + }, { + "code": "450503", + "name": "银海区" + }, { + "code": "450512", + "name": "铁山港区" + }, { + "code": "450521", + "name": "合浦县" + }] + }, { + "code": "4506", + "name": "防城港市", + "children": [{ + "code": "450602", + "name": "港口区" + }, { + "code": "450603", + "name": "防城区" + }, { + "code": "450621", + "name": "上思县" + }, { + "code": "450681", + "name": "东兴市" + }] + }, { + "code": "4507", + "name": "钦州市", + "children": [{ + "code": "450702", + "name": "钦南区" + }, { + "code": "450703", + "name": "钦北区" + }, { + "code": "450721", + "name": "灵山县" + }, { + "code": "450722", + "name": "浦北县" + }] + }, { + "code": "4508", + "name": "贵港市", + "children": [{ + "code": "450802", + "name": "港北区" + }, { + "code": "450803", + "name": "港南区" + }, { + "code": "450804", + "name": "覃塘区" + }, { + "code": "450821", + "name": "平南县" + }, { + "code": "450881", + "name": "桂平市" + }] + }, { + "code": "4509", + "name": "玉林市", + "children": [{ + "code": "450902", + "name": "玉州区" + }, { + "code": "450903", + "name": "福绵区" + }, { + "code": "450921", + "name": "容县" + }, { + "code": "450922", + "name": "陆川县" + }, { + "code": "450923", + "name": "博白县" + }, { + "code": "450924", + "name": "兴业县" + }, { + "code": "450981", + "name": "北流市" + }] + }, { + "code": "4510", + "name": "百色市", + "children": [{ + "code": "451002", + "name": "右江区" + }, { + "code": "451003", + "name": "田阳区" + }, { + "code": "451022", + "name": "田东县" + }, { + "code": "451024", + "name": "德保县" + }, { + "code": "451026", + "name": "那坡县" + }, { + "code": "451027", + "name": "凌云县" + }, { + "code": "451028", + "name": "乐业县" + }, { + "code": "451029", + "name": "田林县" + }, { + "code": "451030", + "name": "西林县" + }, { + "code": "451031", + "name": "隆林各族自治县" + }, { + "code": "451081", + "name": "靖西市" + }, { + "code": "451082", + "name": "平果市" + }] + }, { + "code": "4511", + "name": "贺州市", + "children": [{ + "code": "451102", + "name": "八步区" + }, { + "code": "451103", + "name": "平桂区" + }, { + "code": "451121", + "name": "昭平县" + }, { + "code": "451122", + "name": "钟山县" + }, { + "code": "451123", + "name": "富川瑶族自治县" + }] + }, { + "code": "4512", + "name": "河池市", + "children": [{ + "code": "451202", + "name": "金城江区" + }, { + "code": "451203", + "name": "宜州区" + }, { + "code": "451221", + "name": "南丹县" + }, { + "code": "451222", + "name": "天峨县" + }, { + "code": "451223", + "name": "凤山县" + }, { + "code": "451224", + "name": "东兰县" + }, { + "code": "451225", + "name": "罗城仫佬族自治县" + }, { + "code": "451226", + "name": "环江毛南族自治县" + }, { + "code": "451227", + "name": "巴马瑶族自治县" + }, { + "code": "451228", + "name": "都安瑶族自治县" + }, { + "code": "451229", + "name": "大化瑶族自治县" + }] + }, { + "code": "4513", + "name": "来宾市", + "children": [{ + "code": "451302", + "name": "兴宾区" + }, { + "code": "451321", + "name": "忻城县" + }, { + "code": "451322", + "name": "象州县" + }, { + "code": "451323", + "name": "武宣县" + }, { + "code": "451324", + "name": "金秀瑶族自治县" + }, { + "code": "451381", + "name": "合山市" + }] + }, { + "code": "4514", + "name": "崇左市", + "children": [{ + "code": "451402", + "name": "江州区" + }, { + "code": "451421", + "name": "扶绥县" + }, { + "code": "451422", + "name": "宁明县" + }, { + "code": "451423", + "name": "龙州县" + }, { + "code": "451424", + "name": "大新县" + }, { + "code": "451425", + "name": "天等县" + }, { + "code": "451481", + "name": "凭祥市" + }] + }] +}, { + "code": "46", + "name": "海南省", + "children": [{ + "code": "4601", + "name": "海口市", + "children": [{ + "code": "460105", + "name": "秀英区" + }, { + "code": "460106", + "name": "龙华区" + }, { + "code": "460107", + "name": "琼山区" + }, { + "code": "460108", + "name": "美兰区" + }] + }, { + "code": "4602", + "name": "三亚市", + "children": [{ + "code": "460202", + "name": "海棠区" + }, { + "code": "460203", + "name": "吉阳区" + }, { + "code": "460204", + "name": "天涯区" + }, { + "code": "460205", + "name": "崖州区" + }] + }, { + "code": "4603", + "name": "三沙市", + "children": [{ + "code": "460321", + "name": "西沙群岛" + }, { + "code": "460322", + "name": "南沙群岛" + }, { + "code": "460323", + "name": "中沙群岛的岛礁及其海域" + }] + }, { + "code": "4604", + "name": "儋州市", + "children": [{ + "code": "460400100", + "name": "那大镇" + }, { + "code": "460400101", + "name": "和庆镇" + }, { + "code": "460400102", + "name": "南丰镇" + }, { + "code": "460400103", + "name": "大成镇" + }, { + "code": "460400104", + "name": "雅星镇" + }, { + "code": "460400105", + "name": "兰洋镇" + }, { + "code": "460400106", + "name": "光村镇" + }, { + "code": "460400107", + "name": "木棠镇" + }, { + "code": "460400108", + "name": "海头镇" + }, { + "code": "460400109", + "name": "峨蔓镇" + }, { + "code": "460400111", + "name": "王五镇" + }, { + "code": "460400112", + "name": "白马井镇" + }, { + "code": "460400113", + "name": "中和镇" + }, { + "code": "460400114", + "name": "排浦镇" + }, { + "code": "460400115", + "name": "东成镇" + }, { + "code": "460400116", + "name": "新州镇" + }, { + "code": "460400499", + "name": "洋浦经济开发区" + }, { + "code": "460400500", + "name": "华南热作学院" + }] + }, { + "code": "4690", + "name": "省直辖县级行政区划", + "children": [{ + "code": "469001", + "name": "五指山市" + }, { + "code": "469002", + "name": "琼海市" + }, { + "code": "469005", + "name": "文昌市" + }, { + "code": "469006", + "name": "万宁市" + }, { + "code": "469007", + "name": "东方市" + }, { + "code": "469021", + "name": "定安县" + }, { + "code": "469022", + "name": "屯昌县" + }, { + "code": "469023", + "name": "澄迈县" + }, { + "code": "469024", + "name": "临高县" + }, { + "code": "469025", + "name": "白沙黎族自治县" + }, { + "code": "469026", + "name": "昌江黎族自治县" + }, { + "code": "469027", + "name": "乐东黎族自治县" + }, { + "code": "469028", + "name": "陵水黎族自治县" + }, { + "code": "469029", + "name": "保亭黎族苗族自治县" + }, { + "code": "469030", + "name": "琼中黎族苗族自治县" + }] + }] +}, { + "code": "50", + "name": "重庆市", + "children": [{ + "code": "5001", + "name": "市辖区", + "children": [{ + "code": "500101", + "name": "万州区" + }, { + "code": "500102", + "name": "涪陵区" + }, { + "code": "500103", + "name": "渝中区" + }, { + "code": "500104", + "name": "大渡口区" + }, { + "code": "500105", + "name": "江北区" + }, { + "code": "500106", + "name": "沙坪坝区" + }, { + "code": "500107", + "name": "九龙坡区" + }, { + "code": "500108", + "name": "南岸区" + }, { + "code": "500109", + "name": "北碚区" + }, { + "code": "500110", + "name": "綦江区" + }, { + "code": "500111", + "name": "大足区" + }, { + "code": "500112", + "name": "渝北区" + }, { + "code": "500113", + "name": "巴南区" + }, { + "code": "500114", + "name": "黔江区" + }, { + "code": "500115", + "name": "长寿区" + }, { + "code": "500116", + "name": "江津区" + }, { + "code": "500117", + "name": "合川区" + }, { + "code": "500118", + "name": "永川区" + }, { + "code": "500119", + "name": "南川区" + }, { + "code": "500120", + "name": "璧山区" + }, { + "code": "500151", + "name": "铜梁区" + }, { + "code": "500152", + "name": "潼南区" + }, { + "code": "500153", + "name": "荣昌区" + }, { + "code": "500154", + "name": "开州区" + }, { + "code": "500155", + "name": "梁平区" + }, { + "code": "500156", + "name": "武隆区" + }] + }, { + "code": "5002", + "name": "县", + "children": [{ + "code": "500229", + "name": "城口县" + }, { + "code": "500230", + "name": "丰都县" + }, { + "code": "500231", + "name": "垫江县" + }, { + "code": "500233", + "name": "忠县" + }, { + "code": "500235", + "name": "云阳县" + }, { + "code": "500236", + "name": "奉节县" + }, { + "code": "500237", + "name": "巫山县" + }, { + "code": "500238", + "name": "巫溪县" + }, { + "code": "500240", + "name": "石柱土家族自治县" + }, { + "code": "500241", + "name": "秀山土家族苗族自治县" + }, { + "code": "500242", + "name": "酉阳土家族苗族自治县" + }, { + "code": "500243", + "name": "彭水苗族土家族自治县" + }] + }] +}, { + "code": "51", + "name": "四川省", + "children": [{ + "code": "5101", + "name": "成都市", + "children": [{ + "code": "510104", + "name": "锦江区" + }, { + "code": "510105", + "name": "青羊区" + }, { + "code": "510106", + "name": "金牛区" + }, { + "code": "510107", + "name": "武侯区" + }, { + "code": "510108", + "name": "成华区" + }, { + "code": "510112", + "name": "龙泉驿区" + }, { + "code": "510113", + "name": "青白江区" + }, { + "code": "510114", + "name": "新都区" + }, { + "code": "510115", + "name": "温江区" + }, { + "code": "510116", + "name": "双流区" + }, { + "code": "510117", + "name": "郫都区" + }, { + "code": "510118", + "name": "新津区" + }, { + "code": "510121", + "name": "金堂县" + }, { + "code": "510129", + "name": "大邑县" + }, { + "code": "510131", + "name": "蒲江县" + }, { + "code": "510181", + "name": "都江堰市" + }, { + "code": "510182", + "name": "彭州市" + }, { + "code": "510183", + "name": "邛崃市" + }, { + "code": "510184", + "name": "崇州市" + }, { + "code": "510185", + "name": "简阳市" + }] + }, { + "code": "5103", + "name": "自贡市", + "children": [{ + "code": "510302", + "name": "自流井区" + }, { + "code": "510303", + "name": "贡井区" + }, { + "code": "510304", + "name": "大安区" + }, { + "code": "510311", + "name": "沿滩区" + }, { + "code": "510321", + "name": "荣县" + }, { + "code": "510322", + "name": "富顺县" + }] + }, { + "code": "5104", + "name": "攀枝花市", + "children": [{ + "code": "510402", + "name": "东区" + }, { + "code": "510403", + "name": "西区" + }, { + "code": "510411", + "name": "仁和区" + }, { + "code": "510421", + "name": "米易县" + }, { + "code": "510422", + "name": "盐边县" + }] + }, { + "code": "5105", + "name": "泸州市", + "children": [{ + "code": "510502", + "name": "江阳区" + }, { + "code": "510503", + "name": "纳溪区" + }, { + "code": "510504", + "name": "龙马潭区" + }, { + "code": "510521", + "name": "泸县" + }, { + "code": "510522", + "name": "合江县" + }, { + "code": "510524", + "name": "叙永县" + }, { + "code": "510525", + "name": "古蔺县" + }] + }, { + "code": "5106", + "name": "德阳市", + "children": [{ + "code": "510603", + "name": "旌阳区" + }, { + "code": "510604", + "name": "罗江区" + }, { + "code": "510623", + "name": "中江县" + }, { + "code": "510681", + "name": "广汉市" + }, { + "code": "510682", + "name": "什邡市" + }, { + "code": "510683", + "name": "绵竹市" + }] + }, { + "code": "5107", + "name": "绵阳市", + "children": [{ + "code": "510703", + "name": "涪城区" + }, { + "code": "510704", + "name": "游仙区" + }, { + "code": "510705", + "name": "安州区" + }, { + "code": "510722", + "name": "三台县" + }, { + "code": "510723", + "name": "盐亭县" + }, { + "code": "510725", + "name": "梓潼县" + }, { + "code": "510726", + "name": "北川羌族自治县" + }, { + "code": "510727", + "name": "平武县" + }, { + "code": "510781", + "name": "江油市" + }] + }, { + "code": "5108", + "name": "广元市", + "children": [{ + "code": "510802", + "name": "利州区" + }, { + "code": "510811", + "name": "昭化区" + }, { + "code": "510812", + "name": "朝天区" + }, { + "code": "510821", + "name": "旺苍县" + }, { + "code": "510822", + "name": "青川县" + }, { + "code": "510823", + "name": "剑阁县" + }, { + "code": "510824", + "name": "苍溪县" + }] + }, { + "code": "5109", + "name": "遂宁市", + "children": [{ + "code": "510903", + "name": "船山区" + }, { + "code": "510904", + "name": "安居区" + }, { + "code": "510921", + "name": "蓬溪县" + }, { + "code": "510923", + "name": "大英县" + }, { + "code": "510981", + "name": "射洪市" + }] + }, { + "code": "5110", + "name": "内江市", + "children": [{ + "code": "511002", + "name": "市中区" + }, { + "code": "511011", + "name": "东兴区" + }, { + "code": "511024", + "name": "威远县" + }, { + "code": "511025", + "name": "资中县" + }, { + "code": "511083", + "name": "隆昌市" + }] + }, { + "code": "5111", + "name": "乐山市", + "children": [{ + "code": "511102", + "name": "市中区" + }, { + "code": "511111", + "name": "沙湾区" + }, { + "code": "511112", + "name": "五通桥区" + }, { + "code": "511113", + "name": "金口河区" + }, { + "code": "511123", + "name": "犍为县" + }, { + "code": "511124", + "name": "井研县" + }, { + "code": "511126", + "name": "夹江县" + }, { + "code": "511129", + "name": "沐川县" + }, { + "code": "511132", + "name": "峨边彝族自治县" + }, { + "code": "511133", + "name": "马边彝族自治县" + }, { + "code": "511181", + "name": "峨眉山市" + }] + }, { + "code": "5113", + "name": "南充市", + "children": [{ + "code": "511302", + "name": "顺庆区" + }, { + "code": "511303", + "name": "高坪区" + }, { + "code": "511304", + "name": "嘉陵区" + }, { + "code": "511321", + "name": "南部县" + }, { + "code": "511322", + "name": "营山县" + }, { + "code": "511323", + "name": "蓬安县" + }, { + "code": "511324", + "name": "仪陇县" + }, { + "code": "511325", + "name": "西充县" + }, { + "code": "511381", + "name": "阆中市" + }] + }, { + "code": "5114", + "name": "眉山市", + "children": [{ + "code": "511402", + "name": "东坡区" + }, { + "code": "511403", + "name": "彭山区" + }, { + "code": "511421", + "name": "仁寿县" + }, { + "code": "511423", + "name": "洪雅县" + }, { + "code": "511424", + "name": "丹棱县" + }, { + "code": "511425", + "name": "青神县" + }] + }, { + "code": "5115", + "name": "宜宾市", + "children": [{ + "code": "511502", + "name": "翠屏区" + }, { + "code": "511503", + "name": "南溪区" + }, { + "code": "511504", + "name": "叙州区" + }, { + "code": "511523", + "name": "江安县" + }, { + "code": "511524", + "name": "长宁县" + }, { + "code": "511525", + "name": "高县" + }, { + "code": "511526", + "name": "珙县" + }, { + "code": "511527", + "name": "筠连县" + }, { + "code": "511528", + "name": "兴文县" + }, { + "code": "511529", + "name": "屏山县" + }] + }, { + "code": "5116", + "name": "广安市", + "children": [{ + "code": "511602", + "name": "广安区" + }, { + "code": "511603", + "name": "前锋区" + }, { + "code": "511621", + "name": "岳池县" + }, { + "code": "511622", + "name": "武胜县" + }, { + "code": "511623", + "name": "邻水县" + }, { + "code": "511681", + "name": "华蓥市" + }] + }, { + "code": "5117", + "name": "达州市", + "children": [{ + "code": "511702", + "name": "通川区" + }, { + "code": "511703", + "name": "达川区" + }, { + "code": "511722", + "name": "宣汉县" + }, { + "code": "511723", + "name": "开江县" + }, { + "code": "511724", + "name": "大竹县" + }, { + "code": "511725", + "name": "渠县" + }, { + "code": "511781", + "name": "万源市" + }] + }, { + "code": "5118", + "name": "雅安市", + "children": [{ + "code": "511802", + "name": "雨城区" + }, { + "code": "511803", + "name": "名山区" + }, { + "code": "511822", + "name": "荥经县" + }, { + "code": "511823", + "name": "汉源县" + }, { + "code": "511824", + "name": "石棉县" + }, { + "code": "511825", + "name": "天全县" + }, { + "code": "511826", + "name": "芦山县" + }, { + "code": "511827", + "name": "宝兴县" + }] + }, { + "code": "5119", + "name": "巴中市", + "children": [{ + "code": "511902", + "name": "巴州区" + }, { + "code": "511903", + "name": "恩阳区" + }, { + "code": "511921", + "name": "通江县" + }, { + "code": "511922", + "name": "南江县" + }, { + "code": "511923", + "name": "平昌县" + }] + }, { + "code": "5120", + "name": "资阳市", + "children": [{ + "code": "512002", + "name": "雁江区" + }, { + "code": "512021", + "name": "安岳县" + }, { + "code": "512022", + "name": "乐至县" + }] + }, { + "code": "5132", + "name": "阿坝藏族羌族自治州", + "children": [{ + "code": "513201", + "name": "马尔康市" + }, { + "code": "513221", + "name": "汶川县" + }, { + "code": "513222", + "name": "理县" + }, { + "code": "513223", + "name": "茂县" + }, { + "code": "513224", + "name": "松潘县" + }, { + "code": "513225", + "name": "九寨沟县" + }, { + "code": "513226", + "name": "金川县" + }, { + "code": "513227", + "name": "小金县" + }, { + "code": "513228", + "name": "黑水县" + }, { + "code": "513230", + "name": "壤塘县" + }, { + "code": "513231", + "name": "阿坝县" + }, { + "code": "513232", + "name": "若尔盖县" + }, { + "code": "513233", + "name": "红原县" + }] + }, { + "code": "5133", + "name": "甘孜藏族自治州", + "children": [{ + "code": "513301", + "name": "康定市" + }, { + "code": "513322", + "name": "泸定县" + }, { + "code": "513323", + "name": "丹巴县" + }, { + "code": "513324", + "name": "九龙县" + }, { + "code": "513325", + "name": "雅江县" + }, { + "code": "513326", + "name": "道孚县" + }, { + "code": "513327", + "name": "炉霍县" + }, { + "code": "513328", + "name": "甘孜县" + }, { + "code": "513329", + "name": "新龙县" + }, { + "code": "513330", + "name": "德格县" + }, { + "code": "513331", + "name": "白玉县" + }, { + "code": "513332", + "name": "石渠县" + }, { + "code": "513333", + "name": "色达县" + }, { + "code": "513334", + "name": "理塘县" + }, { + "code": "513335", + "name": "巴塘县" + }, { + "code": "513336", + "name": "乡城县" + }, { + "code": "513337", + "name": "稻城县" + }, { + "code": "513338", + "name": "得荣县" + }] + }, { + "code": "5134", + "name": "凉山彝族自治州", + "children": [{ + "code": "513401", + "name": "西昌市" + }, { + "code": "513402", + "name": "会理市" + }, { + "code": "513422", + "name": "木里藏族自治县" + }, { + "code": "513423", + "name": "盐源县" + }, { + "code": "513424", + "name": "德昌县" + }, { + "code": "513426", + "name": "会东县" + }, { + "code": "513427", + "name": "宁南县" + }, { + "code": "513428", + "name": "普格县" + }, { + "code": "513429", + "name": "布拖县" + }, { + "code": "513430", + "name": "金阳县" + }, { + "code": "513431", + "name": "昭觉县" + }, { + "code": "513432", + "name": "喜德县" + }, { + "code": "513433", + "name": "冕宁县" + }, { + "code": "513434", + "name": "越西县" + }, { + "code": "513435", + "name": "甘洛县" + }, { + "code": "513436", + "name": "美姑县" + }, { + "code": "513437", + "name": "雷波县" + }] + }] +}, { + "code": "52", + "name": "贵州省", + "children": [{ + "code": "5201", + "name": "贵阳市", + "children": [{ + "code": "520102", + "name": "南明区" + }, { + "code": "520103", + "name": "云岩区" + }, { + "code": "520111", + "name": "花溪区" + }, { + "code": "520112", + "name": "乌当区" + }, { + "code": "520113", + "name": "白云区" + }, { + "code": "520115", + "name": "观山湖区" + }, { + "code": "520121", + "name": "开阳县" + }, { + "code": "520122", + "name": "息烽县" + }, { + "code": "520123", + "name": "修文县" + }, { + "code": "520181", + "name": "清镇市" + }] + }, { + "code": "5202", + "name": "六盘水市", + "children": [{ + "code": "520201", + "name": "钟山区" + }, { + "code": "520203", + "name": "六枝特区" + }, { + "code": "520204", + "name": "水城区" + }, { + "code": "520281", + "name": "盘州市" + }] + }, { + "code": "5203", + "name": "遵义市", + "children": [{ + "code": "520302", + "name": "红花岗区" + }, { + "code": "520303", + "name": "汇川区" + }, { + "code": "520304", + "name": "播州区" + }, { + "code": "520322", + "name": "桐梓县" + }, { + "code": "520323", + "name": "绥阳县" + }, { + "code": "520324", + "name": "正安县" + }, { + "code": "520325", + "name": "道真仡佬族苗族自治县" + }, { + "code": "520326", + "name": "务川仡佬族苗族自治县" + }, { + "code": "520327", + "name": "凤冈县" + }, { + "code": "520328", + "name": "湄潭县" + }, { + "code": "520329", + "name": "余庆县" + }, { + "code": "520330", + "name": "习水县" + }, { + "code": "520381", + "name": "赤水市" + }, { + "code": "520382", + "name": "仁怀市" + }] + }, { + "code": "5204", + "name": "安顺市", + "children": [{ + "code": "520402", + "name": "西秀区" + }, { + "code": "520403", + "name": "平坝区" + }, { + "code": "520422", + "name": "普定县" + }, { + "code": "520423", + "name": "镇宁布依族苗族自治县" + }, { + "code": "520424", + "name": "关岭布依族苗族自治县" + }, { + "code": "520425", + "name": "紫云苗族布依族自治县" + }] + }, { + "code": "5205", + "name": "毕节市", + "children": [{ + "code": "520502", + "name": "七星关区" + }, { + "code": "520521", + "name": "大方县" + }, { + "code": "520523", + "name": "金沙县" + }, { + "code": "520524", + "name": "织金县" + }, { + "code": "520525", + "name": "纳雍县" + }, { + "code": "520526", + "name": "威宁彝族回族苗族自治县" + }, { + "code": "520527", + "name": "赫章县" + }, { + "code": "520581", + "name": "黔西市" + }] + }, { + "code": "5206", + "name": "铜仁市", + "children": [{ + "code": "520602", + "name": "碧江区" + }, { + "code": "520603", + "name": "万山区" + }, { + "code": "520621", + "name": "江口县" + }, { + "code": "520622", + "name": "玉屏侗族自治县" + }, { + "code": "520623", + "name": "石阡县" + }, { + "code": "520624", + "name": "思南县" + }, { + "code": "520625", + "name": "印江土家族苗族自治县" + }, { + "code": "520626", + "name": "德江县" + }, { + "code": "520627", + "name": "沿河土家族自治县" + }, { + "code": "520628", + "name": "松桃苗族自治县" + }] + }, { + "code": "5223", + "name": "黔西南布依族苗族自治州", + "children": [{ + "code": "522301", + "name": "兴义市" + }, { + "code": "522302", + "name": "兴仁市" + }, { + "code": "522323", + "name": "普安县" + }, { + "code": "522324", + "name": "晴隆县" + }, { + "code": "522325", + "name": "贞丰县" + }, { + "code": "522326", + "name": "望谟县" + }, { + "code": "522327", + "name": "册亨县" + }, { + "code": "522328", + "name": "安龙县" + }] + }, { + "code": "5226", + "name": "黔东南苗族侗族自治州", + "children": [{ + "code": "522601", + "name": "凯里市" + }, { + "code": "522622", + "name": "黄平县" + }, { + "code": "522623", + "name": "施秉县" + }, { + "code": "522624", + "name": "三穗县" + }, { + "code": "522625", + "name": "镇远县" + }, { + "code": "522626", + "name": "岑巩县" + }, { + "code": "522627", + "name": "天柱县" + }, { + "code": "522628", + "name": "锦屏县" + }, { + "code": "522629", + "name": "剑河县" + }, { + "code": "522630", + "name": "台江县" + }, { + "code": "522631", + "name": "黎平县" + }, { + "code": "522632", + "name": "榕江县" + }, { + "code": "522633", + "name": "从江县" + }, { + "code": "522634", + "name": "雷山县" + }, { + "code": "522635", + "name": "麻江县" + }, { + "code": "522636", + "name": "丹寨县" + }] + }, { + "code": "5227", + "name": "黔南布依族苗族自治州", + "children": [{ + "code": "522701", + "name": "都匀市" + }, { + "code": "522702", + "name": "福泉市" + }, { + "code": "522722", + "name": "荔波县" + }, { + "code": "522723", + "name": "贵定县" + }, { + "code": "522725", + "name": "瓮安县" + }, { + "code": "522726", + "name": "独山县" + }, { + "code": "522727", + "name": "平塘县" + }, { + "code": "522728", + "name": "罗甸县" + }, { + "code": "522729", + "name": "长顺县" + }, { + "code": "522730", + "name": "龙里县" + }, { + "code": "522731", + "name": "惠水县" + }, { + "code": "522732", + "name": "三都水族自治县" + }] + }] +}, { + "code": "53", + "name": "云南省", + "children": [{ + "code": "5301", + "name": "昆明市", + "children": [{ + "code": "530102", + "name": "五华区" + }, { + "code": "530103", + "name": "盘龙区" + }, { + "code": "530111", + "name": "官渡区" + }, { + "code": "530112", + "name": "西山区" + }, { + "code": "530113", + "name": "东川区" + }, { + "code": "530114", + "name": "呈贡区" + }, { + "code": "530115", + "name": "晋宁区" + }, { + "code": "530124", + "name": "富民县" + }, { + "code": "530125", + "name": "宜良县" + }, { + "code": "530126", + "name": "石林彝族自治县" + }, { + "code": "530127", + "name": "嵩明县" + }, { + "code": "530128", + "name": "禄劝彝族苗族自治县" + }, { + "code": "530129", + "name": "寻甸回族彝族自治县" + }, { + "code": "530181", + "name": "安宁市" + }] + }, { + "code": "5303", + "name": "曲靖市", + "children": [{ + "code": "530302", + "name": "麒麟区" + }, { + "code": "530303", + "name": "沾益区" + }, { + "code": "530304", + "name": "马龙区" + }, { + "code": "530322", + "name": "陆良县" + }, { + "code": "530323", + "name": "师宗县" + }, { + "code": "530324", + "name": "罗平县" + }, { + "code": "530325", + "name": "富源县" + }, { + "code": "530326", + "name": "会泽县" + }, { + "code": "530381", + "name": "宣威市" + }] + }, { + "code": "5304", + "name": "玉溪市", + "children": [{ + "code": "530402", + "name": "红塔区" + }, { + "code": "530403", + "name": "江川区" + }, { + "code": "530423", + "name": "通海县" + }, { + "code": "530424", + "name": "华宁县" + }, { + "code": "530425", + "name": "易门县" + }, { + "code": "530426", + "name": "峨山彝族自治县" + }, { + "code": "530427", + "name": "新平彝族傣族自治县" + }, { + "code": "530428", + "name": "元江哈尼族彝族傣族自治县" + }, { + "code": "530481", + "name": "澄江市" + }] + }, { + "code": "5305", + "name": "保山市", + "children": [{ + "code": "530502", + "name": "隆阳区" + }, { + "code": "530521", + "name": "施甸县" + }, { + "code": "530523", + "name": "龙陵县" + }, { + "code": "530524", + "name": "昌宁县" + }, { + "code": "530581", + "name": "腾冲市" + }] + }, { + "code": "5306", + "name": "昭通市", + "children": [{ + "code": "530602", + "name": "昭阳区" + }, { + "code": "530621", + "name": "鲁甸县" + }, { + "code": "530622", + "name": "巧家县" + }, { + "code": "530623", + "name": "盐津县" + }, { + "code": "530624", + "name": "大关县" + }, { + "code": "530625", + "name": "永善县" + }, { + "code": "530626", + "name": "绥江县" + }, { + "code": "530627", + "name": "镇雄县" + }, { + "code": "530628", + "name": "彝良县" + }, { + "code": "530629", + "name": "威信县" + }, { + "code": "530681", + "name": "水富市" + }] + }, { + "code": "5307", + "name": "丽江市", + "children": [{ + "code": "530702", + "name": "古城区" + }, { + "code": "530721", + "name": "玉龙纳西族自治县" + }, { + "code": "530722", + "name": "永胜县" + }, { + "code": "530723", + "name": "华坪县" + }, { + "code": "530724", + "name": "宁蒗彝族自治县" + }] + }, { + "code": "5308", + "name": "普洱市", + "children": [{ + "code": "530802", + "name": "思茅区" + }, { + "code": "530821", + "name": "宁洱哈尼族彝族自治县" + }, { + "code": "530822", + "name": "墨江哈尼族自治县" + }, { + "code": "530823", + "name": "景东彝族自治县" + }, { + "code": "530824", + "name": "景谷傣族彝族自治县" + }, { + "code": "530825", + "name": "镇沅彝族哈尼族拉祜族自治县" + }, { + "code": "530826", + "name": "江城哈尼族彝族自治县" + }, { + "code": "530827", + "name": "孟连傣族拉祜族佤族自治县" + }, { + "code": "530828", + "name": "澜沧拉祜族自治县" + }, { + "code": "530829", + "name": "西盟佤族自治县" + }] + }, { + "code": "5309", + "name": "临沧市", + "children": [{ + "code": "530902", + "name": "临翔区" + }, { + "code": "530921", + "name": "凤庆县" + }, { + "code": "530922", + "name": "云县" + }, { + "code": "530923", + "name": "永德县" + }, { + "code": "530924", + "name": "镇康县" + }, { + "code": "530925", + "name": "双江拉祜族佤族布朗族傣族自治县" + }, { + "code": "530926", + "name": "耿马傣族佤族自治县" + }, { + "code": "530927", + "name": "沧源佤族自治县" + }] + }, { + "code": "5323", + "name": "楚雄彝族自治州", + "children": [{ + "code": "532301", + "name": "楚雄市" + }, { + "code": "532302", + "name": "禄丰市" + }, { + "code": "532322", + "name": "双柏县" + }, { + "code": "532323", + "name": "牟定县" + }, { + "code": "532324", + "name": "南华县" + }, { + "code": "532325", + "name": "姚安县" + }, { + "code": "532326", + "name": "大姚县" + }, { + "code": "532327", + "name": "永仁县" + }, { + "code": "532328", + "name": "元谋县" + }, { + "code": "532329", + "name": "武定县" + }] + }, { + "code": "5325", + "name": "红河哈尼族彝族自治州", + "children": [{ + "code": "532501", + "name": "个旧市" + }, { + "code": "532502", + "name": "开远市" + }, { + "code": "532503", + "name": "蒙自市" + }, { + "code": "532504", + "name": "弥勒市" + }, { + "code": "532523", + "name": "屏边苗族自治县" + }, { + "code": "532524", + "name": "建水县" + }, { + "code": "532525", + "name": "石屏县" + }, { + "code": "532527", + "name": "泸西县" + }, { + "code": "532528", + "name": "元阳县" + }, { + "code": "532529", + "name": "红河县" + }, { + "code": "532530", + "name": "金平苗族瑶族傣族自治县" + }, { + "code": "532531", + "name": "绿春县" + }, { + "code": "532532", + "name": "河口瑶族自治县" + }] + }, { + "code": "5326", + "name": "文山壮族苗族自治州", + "children": [{ + "code": "532601", + "name": "文山市" + }, { + "code": "532622", + "name": "砚山县" + }, { + "code": "532623", + "name": "西畴县" + }, { + "code": "532624", + "name": "麻栗坡县" + }, { + "code": "532625", + "name": "马关县" + }, { + "code": "532626", + "name": "丘北县" + }, { + "code": "532627", + "name": "广南县" + }, { + "code": "532628", + "name": "富宁县" + }] + }, { + "code": "5328", + "name": "西双版纳傣族自治州", + "children": [{ + "code": "532801", + "name": "景洪市" + }, { + "code": "532822", + "name": "勐海县" + }, { + "code": "532823", + "name": "勐腊县" + }] + }, { + "code": "5329", + "name": "大理白族自治州", + "children": [{ + "code": "532901", + "name": "大理市" + }, { + "code": "532922", + "name": "漾濞彝族自治县" + }, { + "code": "532923", + "name": "祥云县" + }, { + "code": "532924", + "name": "宾川县" + }, { + "code": "532925", + "name": "弥渡县" + }, { + "code": "532926", + "name": "南涧彝族自治县" + }, { + "code": "532927", + "name": "巍山彝族回族自治县" + }, { + "code": "532928", + "name": "永平县" + }, { + "code": "532929", + "name": "云龙县" + }, { + "code": "532930", + "name": "洱源县" + }, { + "code": "532931", + "name": "剑川县" + }, { + "code": "532932", + "name": "鹤庆县" + }] + }, { + "code": "5331", + "name": "德宏傣族景颇族自治州", + "children": [{ + "code": "533102", + "name": "瑞丽市" + }, { + "code": "533103", + "name": "芒市" + }, { + "code": "533122", + "name": "梁河县" + }, { + "code": "533123", + "name": "盈江县" + }, { + "code": "533124", + "name": "陇川县" + }] + }, { + "code": "5333", + "name": "怒江傈僳族自治州", + "children": [{ + "code": "533301", + "name": "泸水市" + }, { + "code": "533323", + "name": "福贡县" + }, { + "code": "533324", + "name": "贡山独龙族怒族自治县" + }, { + "code": "533325", + "name": "兰坪白族普米族自治县" + }] + }, { + "code": "5334", + "name": "迪庆藏族自治州", + "children": [{ + "code": "533401", + "name": "香格里拉市" + }, { + "code": "533422", + "name": "德钦县" + }, { + "code": "533423", + "name": "维西傈僳族自治县" + }] + }] +}, { + "code": "54", + "name": "西藏自治区", + "children": [{ + "code": "5401", + "name": "拉萨市", + "children": [{ + "code": "540102", + "name": "城关区" + }, { + "code": "540103", + "name": "堆龙德庆区" + }, { + "code": "540104", + "name": "达孜区" + }, { + "code": "540121", + "name": "林周县" + }, { + "code": "540122", + "name": "当雄县" + }, { + "code": "540123", + "name": "尼木县" + }, { + "code": "540124", + "name": "曲水县" + }, { + "code": "540127", + "name": "墨竹工卡县" + }, { + "code": "540171", + "name": "格尔木藏青工业园区" + }, { + "code": "540172", + "name": "拉萨经济技术开发区" + }, { + "code": "540173", + "name": "西藏文化旅游创意园区" + }, { + "code": "540174", + "name": "达孜工业园区" + }] + }, { + "code": "5402", + "name": "日喀则市", + "children": [{ + "code": "540202", + "name": "桑珠孜区" + }, { + "code": "540221", + "name": "南木林县" + }, { + "code": "540222", + "name": "江孜县" + }, { + "code": "540223", + "name": "定日县" + }, { + "code": "540224", + "name": "萨迦县" + }, { + "code": "540225", + "name": "拉孜县" + }, { + "code": "540226", + "name": "昂仁县" + }, { + "code": "540227", + "name": "谢通门县" + }, { + "code": "540228", + "name": "白朗县" + }, { + "code": "540229", + "name": "仁布县" + }, { + "code": "540230", + "name": "康马县" + }, { + "code": "540231", + "name": "定结县" + }, { + "code": "540232", + "name": "仲巴县" + }, { + "code": "540233", + "name": "亚东县" + }, { + "code": "540234", + "name": "吉隆县" + }, { + "code": "540235", + "name": "聂拉木县" + }, { + "code": "540236", + "name": "萨嘎县" + }, { + "code": "540237", + "name": "岗巴县" + }] + }, { + "code": "5403", + "name": "昌都市", + "children": [{ + "code": "540302", + "name": "卡若区" + }, { + "code": "540321", + "name": "江达县" + }, { + "code": "540322", + "name": "贡觉县" + }, { + "code": "540323", + "name": "类乌齐县" + }, { + "code": "540324", + "name": "丁青县" + }, { + "code": "540325", + "name": "察雅县" + }, { + "code": "540326", + "name": "八宿县" + }, { + "code": "540327", + "name": "左贡县" + }, { + "code": "540328", + "name": "芒康县" + }, { + "code": "540329", + "name": "洛隆县" + }, { + "code": "540330", + "name": "边坝县" + }] + }, { + "code": "5404", + "name": "林芝市", + "children": [{ + "code": "540402", + "name": "巴宜区" + }, { + "code": "540421", + "name": "工布江达县" + }, { + "code": "540423", + "name": "墨脱县" + }, { + "code": "540424", + "name": "波密县" + }, { + "code": "540425", + "name": "察隅县" + }, { + "code": "540426", + "name": "朗县" + }, { + "code": "540481", + "name": "米林市" + }] + }, { + "code": "5405", + "name": "山南市", + "children": [{ + "code": "540502", + "name": "乃东区" + }, { + "code": "540521", + "name": "扎囊县" + }, { + "code": "540522", + "name": "贡嘎县" + }, { + "code": "540523", + "name": "桑日县" + }, { + "code": "540524", + "name": "琼结县" + }, { + "code": "540525", + "name": "曲松县" + }, { + "code": "540526", + "name": "措美县" + }, { + "code": "540527", + "name": "洛扎县" + }, { + "code": "540528", + "name": "加查县" + }, { + "code": "540529", + "name": "隆子县" + }, { + "code": "540531", + "name": "浪卡子县" + }, { + "code": "540581", + "name": "错那市" + }] + }, { + "code": "5406", + "name": "那曲市", + "children": [{ + "code": "540602", + "name": "色尼区" + }, { + "code": "540621", + "name": "嘉黎县" + }, { + "code": "540622", + "name": "比如县" + }, { + "code": "540623", + "name": "聂荣县" + }, { + "code": "540624", + "name": "安多县" + }, { + "code": "540625", + "name": "申扎县" + }, { + "code": "540626", + "name": "索县" + }, { + "code": "540627", + "name": "班戈县" + }, { + "code": "540628", + "name": "巴青县" + }, { + "code": "540629", + "name": "尼玛县" + }, { + "code": "540630", + "name": "双湖县" + }] + }, { + "code": "5425", + "name": "阿里地区", + "children": [{ + "code": "542521", + "name": "普兰县" + }, { + "code": "542522", + "name": "札达县" + }, { + "code": "542523", + "name": "噶尔县" + }, { + "code": "542524", + "name": "日土县" + }, { + "code": "542525", + "name": "革吉县" + }, { + "code": "542526", + "name": "改则县" + }, { + "code": "542527", + "name": "措勤县" + }] + }] +}, { + "code": "61", + "name": "陕西省", + "children": [{ + "code": "6101", + "name": "西安市", + "children": [{ + "code": "610102", + "name": "新城区" + }, { + "code": "610103", + "name": "碑林区" + }, { + "code": "610104", + "name": "莲湖区" + }, { + "code": "610111", + "name": "灞桥区" + }, { + "code": "610112", + "name": "未央区" + }, { + "code": "610113", + "name": "雁塔区" + }, { + "code": "610114", + "name": "阎良区" + }, { + "code": "610115", + "name": "临潼区" + }, { + "code": "610116", + "name": "长安区" + }, { + "code": "610117", + "name": "高陵区" + }, { + "code": "610118", + "name": "鄠邑区" + }, { + "code": "610122", + "name": "蓝田县" + }, { + "code": "610124", + "name": "周至县" + }] + }, { + "code": "6102", + "name": "铜川市", + "children": [{ + "code": "610202", + "name": "王益区" + }, { + "code": "610203", + "name": "印台区" + }, { + "code": "610204", + "name": "耀州区" + }, { + "code": "610222", + "name": "宜君县" + }] + }, { + "code": "6103", + "name": "宝鸡市", + "children": [{ + "code": "610302", + "name": "渭滨区" + }, { + "code": "610303", + "name": "金台区" + }, { + "code": "610304", + "name": "陈仓区" + }, { + "code": "610305", + "name": "凤翔区" + }, { + "code": "610323", + "name": "岐山县" + }, { + "code": "610324", + "name": "扶风县" + }, { + "code": "610326", + "name": "眉县" + }, { + "code": "610327", + "name": "陇县" + }, { + "code": "610328", + "name": "千阳县" + }, { + "code": "610329", + "name": "麟游县" + }, { + "code": "610330", + "name": "凤县" + }, { + "code": "610331", + "name": "太白县" + }] + }, { + "code": "6104", + "name": "咸阳市", + "children": [{ + "code": "610402", + "name": "秦都区" + }, { + "code": "610403", + "name": "杨陵区" + }, { + "code": "610404", + "name": "渭城区" + }, { + "code": "610422", + "name": "三原县" + }, { + "code": "610423", + "name": "泾阳县" + }, { + "code": "610424", + "name": "乾县" + }, { + "code": "610425", + "name": "礼泉县" + }, { + "code": "610426", + "name": "永寿县" + }, { + "code": "610428", + "name": "长武县" + }, { + "code": "610429", + "name": "旬邑县" + }, { + "code": "610430", + "name": "淳化县" + }, { + "code": "610431", + "name": "武功县" + }, { + "code": "610481", + "name": "兴平市" + }, { + "code": "610482", + "name": "彬州市" + }] + }, { + "code": "6105", + "name": "渭南市", + "children": [{ + "code": "610502", + "name": "临渭区" + }, { + "code": "610503", + "name": "华州区" + }, { + "code": "610522", + "name": "潼关县" + }, { + "code": "610523", + "name": "大荔县" + }, { + "code": "610524", + "name": "合阳县" + }, { + "code": "610525", + "name": "澄城县" + }, { + "code": "610526", + "name": "蒲城县" + }, { + "code": "610527", + "name": "白水县" + }, { + "code": "610528", + "name": "富平县" + }, { + "code": "610581", + "name": "韩城市" + }, { + "code": "610582", + "name": "华阴市" + }] + }, { + "code": "6106", + "name": "延安市", + "children": [{ + "code": "610602", + "name": "宝塔区" + }, { + "code": "610603", + "name": "安塞区" + }, { + "code": "610621", + "name": "延长县" + }, { + "code": "610622", + "name": "延川县" + }, { + "code": "610625", + "name": "志丹县" + }, { + "code": "610626", + "name": "吴起县" + }, { + "code": "610627", + "name": "甘泉县" + }, { + "code": "610628", + "name": "富县" + }, { + "code": "610629", + "name": "洛川县" + }, { + "code": "610630", + "name": "宜川县" + }, { + "code": "610631", + "name": "黄龙县" + }, { + "code": "610632", + "name": "黄陵县" + }, { + "code": "610681", + "name": "子长市" + }] + }, { + "code": "6107", + "name": "汉中市", + "children": [{ + "code": "610702", + "name": "汉台区" + }, { + "code": "610703", + "name": "南郑区" + }, { + "code": "610722", + "name": "城固县" + }, { + "code": "610723", + "name": "洋县" + }, { + "code": "610724", + "name": "西乡县" + }, { + "code": "610725", + "name": "勉县" + }, { + "code": "610726", + "name": "宁强县" + }, { + "code": "610727", + "name": "略阳县" + }, { + "code": "610728", + "name": "镇巴县" + }, { + "code": "610729", + "name": "留坝县" + }, { + "code": "610730", + "name": "佛坪县" + }] + }, { + "code": "6108", + "name": "榆林市", + "children": [{ + "code": "610802", + "name": "榆阳区" + }, { + "code": "610803", + "name": "横山区" + }, { + "code": "610822", + "name": "府谷县" + }, { + "code": "610824", + "name": "靖边县" + }, { + "code": "610825", + "name": "定边县" + }, { + "code": "610826", + "name": "绥德县" + }, { + "code": "610827", + "name": "米脂县" + }, { + "code": "610828", + "name": "佳县" + }, { + "code": "610829", + "name": "吴堡县" + }, { + "code": "610830", + "name": "清涧县" + }, { + "code": "610831", + "name": "子洲县" + }, { + "code": "610881", + "name": "神木市" + }] + }, { + "code": "6109", + "name": "安康市", + "children": [{ + "code": "610902", + "name": "汉滨区" + }, { + "code": "610921", + "name": "汉阴县" + }, { + "code": "610922", + "name": "石泉县" + }, { + "code": "610923", + "name": "宁陕县" + }, { + "code": "610924", + "name": "紫阳县" + }, { + "code": "610925", + "name": "岚皋县" + }, { + "code": "610926", + "name": "平利县" + }, { + "code": "610927", + "name": "镇坪县" + }, { + "code": "610929", + "name": "白河县" + }, { + "code": "610981", + "name": "旬阳市" + }] + }, { + "code": "6110", + "name": "商洛市", + "children": [{ + "code": "611002", + "name": "商州区" + }, { + "code": "611021", + "name": "洛南县" + }, { + "code": "611022", + "name": "丹凤县" + }, { + "code": "611023", + "name": "商南县" + }, { + "code": "611024", + "name": "山阳县" + }, { + "code": "611025", + "name": "镇安县" + }, { + "code": "611026", + "name": "柞水县" + }] + }] +}, { + "code": "62", + "name": "甘肃省", + "children": [{ + "code": "6201", + "name": "兰州市", + "children": [{ + "code": "620102", + "name": "城关区" + }, { + "code": "620103", + "name": "七里河区" + }, { + "code": "620104", + "name": "西固区" + }, { + "code": "620105", + "name": "安宁区" + }, { + "code": "620111", + "name": "红古区" + }, { + "code": "620121", + "name": "永登县" + }, { + "code": "620122", + "name": "皋兰县" + }, { + "code": "620123", + "name": "榆中县" + }, { + "code": "620171", + "name": "兰州新区" + }] + }, { + "code": "6202", + "name": "嘉峪关市", + "children": [{ + "code": "620201001", + "name": "雄关街道" + }, { + "code": "620201002", + "name": "钢城街道" + }, { + "code": "620201100", + "name": "新城镇" + }, { + "code": "620201101", + "name": "峪泉镇" + }, { + "code": "620201102", + "name": "文殊镇" + }] + }, { + "code": "6203", + "name": "金昌市", + "children": [{ + "code": "620302", + "name": "金川区" + }, { + "code": "620321", + "name": "永昌县" + }] + }, { + "code": "6204", + "name": "白银市", + "children": [{ + "code": "620402", + "name": "白银区" + }, { + "code": "620403", + "name": "平川区" + }, { + "code": "620421", + "name": "靖远县" + }, { + "code": "620422", + "name": "会宁县" + }, { + "code": "620423", + "name": "景泰县" + }] + }, { + "code": "6205", + "name": "天水市", + "children": [{ + "code": "620502", + "name": "秦州区" + }, { + "code": "620503", + "name": "麦积区" + }, { + "code": "620521", + "name": "清水县" + }, { + "code": "620522", + "name": "秦安县" + }, { + "code": "620523", + "name": "甘谷县" + }, { + "code": "620524", + "name": "武山县" + }, { + "code": "620525", + "name": "张家川回族自治县" + }] + }, { + "code": "6206", + "name": "武威市", + "children": [{ + "code": "620602", + "name": "凉州区" + }, { + "code": "620621", + "name": "民勤县" + }, { + "code": "620622", + "name": "古浪县" + }, { + "code": "620623", + "name": "天祝藏族自治县" + }] + }, { + "code": "6207", + "name": "张掖市", + "children": [{ + "code": "620702", + "name": "甘州区" + }, { + "code": "620721", + "name": "肃南裕固族自治县" + }, { + "code": "620722", + "name": "民乐县" + }, { + "code": "620723", + "name": "临泽县" + }, { + "code": "620724", + "name": "高台县" + }, { + "code": "620725", + "name": "山丹县" + }] + }, { + "code": "6208", + "name": "平凉市", + "children": [{ + "code": "620802", + "name": "崆峒区" + }, { + "code": "620821", + "name": "泾川县" + }, { + "code": "620822", + "name": "灵台县" + }, { + "code": "620823", + "name": "崇信县" + }, { + "code": "620825", + "name": "庄浪县" + }, { + "code": "620826", + "name": "静宁县" + }, { + "code": "620881", + "name": "华亭市" + }] + }, { + "code": "6209", + "name": "酒泉市", + "children": [{ + "code": "620902", + "name": "肃州区" + }, { + "code": "620921", + "name": "金塔县" + }, { + "code": "620922", + "name": "瓜州县" + }, { + "code": "620923", + "name": "肃北蒙古族自治县" + }, { + "code": "620924", + "name": "阿克塞哈萨克族自治县" + }, { + "code": "620981", + "name": "玉门市" + }, { + "code": "620982", + "name": "敦煌市" + }] + }, { + "code": "6210", + "name": "庆阳市", + "children": [{ + "code": "621002", + "name": "西峰区" + }, { + "code": "621021", + "name": "庆城县" + }, { + "code": "621022", + "name": "环县" + }, { + "code": "621023", + "name": "华池县" + }, { + "code": "621024", + "name": "合水县" + }, { + "code": "621025", + "name": "正宁县" + }, { + "code": "621026", + "name": "宁县" + }, { + "code": "621027", + "name": "镇原县" + }] + }, { + "code": "6211", + "name": "定西市", + "children": [{ + "code": "621102", + "name": "安定区" + }, { + "code": "621121", + "name": "通渭县" + }, { + "code": "621122", + "name": "陇西县" + }, { + "code": "621123", + "name": "渭源县" + }, { + "code": "621124", + "name": "临洮县" + }, { + "code": "621125", + "name": "漳县" + }, { + "code": "621126", + "name": "岷县" + }] + }, { + "code": "6212", + "name": "陇南市", + "children": [{ + "code": "621202", + "name": "武都区" + }, { + "code": "621221", + "name": "成县" + }, { + "code": "621222", + "name": "文县" + }, { + "code": "621223", + "name": "宕昌县" + }, { + "code": "621224", + "name": "康县" + }, { + "code": "621225", + "name": "西和县" + }, { + "code": "621226", + "name": "礼县" + }, { + "code": "621227", + "name": "徽县" + }, { + "code": "621228", + "name": "两当县" + }] + }, { + "code": "6229", + "name": "临夏回族自治州", + "children": [{ + "code": "622901", + "name": "临夏市" + }, { + "code": "622921", + "name": "临夏县" + }, { + "code": "622922", + "name": "康乐县" + }, { + "code": "622923", + "name": "永靖县" + }, { + "code": "622924", + "name": "广河县" + }, { + "code": "622925", + "name": "和政县" + }, { + "code": "622926", + "name": "东乡族自治县" + }, { + "code": "622927", + "name": "积石山保安族东乡族撒拉族自治县" + }] + }, { + "code": "6230", + "name": "甘南藏族自治州", + "children": [{ + "code": "623001", + "name": "合作市" + }, { + "code": "623021", + "name": "临潭县" + }, { + "code": "623022", + "name": "卓尼县" + }, { + "code": "623023", + "name": "舟曲县" + }, { + "code": "623024", + "name": "迭部县" + }, { + "code": "623025", + "name": "玛曲县" + }, { + "code": "623026", + "name": "碌曲县" + }, { + "code": "623027", + "name": "夏河县" + }] + }] +}, { + "code": "63", + "name": "青海省", + "children": [{ + "code": "6301", + "name": "西宁市", + "children": [{ + "code": "630102", + "name": "城东区" + }, { + "code": "630103", + "name": "城中区" + }, { + "code": "630104", + "name": "城西区" + }, { + "code": "630105", + "name": "城北区" + }, { + "code": "630106", + "name": "湟中区" + }, { + "code": "630121", + "name": "大通回族土族自治县" + }, { + "code": "630123", + "name": "湟源县" + }] + }, { + "code": "6302", + "name": "海东市", + "children": [{ + "code": "630202", + "name": "乐都区" + }, { + "code": "630203", + "name": "平安区" + }, { + "code": "630222", + "name": "民和回族土族自治县" + }, { + "code": "630223", + "name": "互助土族自治县" + }, { + "code": "630224", + "name": "化隆回族自治县" + }, { + "code": "630225", + "name": "循化撒拉族自治县" + }] + }, { + "code": "6322", + "name": "海北藏族自治州", + "children": [{ + "code": "632221", + "name": "门源回族自治县" + }, { + "code": "632222", + "name": "祁连县" + }, { + "code": "632223", + "name": "海晏县" + }, { + "code": "632224", + "name": "刚察县" + }] + }, { + "code": "6323", + "name": "黄南藏族自治州", + "children": [{ + "code": "632301", + "name": "同仁市" + }, { + "code": "632322", + "name": "尖扎县" + }, { + "code": "632323", + "name": "泽库县" + }, { + "code": "632324", + "name": "河南蒙古族自治县" + }] + }, { + "code": "6325", + "name": "海南藏族自治州", + "children": [{ + "code": "632521", + "name": "共和县" + }, { + "code": "632522", + "name": "同德县" + }, { + "code": "632523", + "name": "贵德县" + }, { + "code": "632524", + "name": "兴海县" + }, { + "code": "632525", + "name": "贵南县" + }] + }, { + "code": "6326", + "name": "果洛藏族自治州", + "children": [{ + "code": "632621", + "name": "玛沁县" + }, { + "code": "632622", + "name": "班玛县" + }, { + "code": "632623", + "name": "甘德县" + }, { + "code": "632624", + "name": "达日县" + }, { + "code": "632625", + "name": "久治县" + }, { + "code": "632626", + "name": "玛多县" + }] + }, { + "code": "6327", + "name": "玉树藏族自治州", + "children": [{ + "code": "632701", + "name": "玉树市" + }, { + "code": "632722", + "name": "杂多县" + }, { + "code": "632723", + "name": "称多县" + }, { + "code": "632724", + "name": "治多县" + }, { + "code": "632725", + "name": "囊谦县" + }, { + "code": "632726", + "name": "曲麻莱县" + }] + }, { + "code": "6328", + "name": "海西蒙古族藏族自治州", + "children": [{ + "code": "632801", + "name": "格尔木市" + }, { + "code": "632802", + "name": "德令哈市" + }, { + "code": "632803", + "name": "茫崖市" + }, { + "code": "632821", + "name": "乌兰县" + }, { + "code": "632822", + "name": "都兰县" + }, { + "code": "632823", + "name": "天峻县" + }, { + "code": "632857", + "name": "大柴旦行政委员会" + }] + }] +}, { + "code": "64", + "name": "宁夏回族自治区", + "children": [{ + "code": "6401", + "name": "银川市", + "children": [{ + "code": "640104", + "name": "兴庆区" + }, { + "code": "640105", + "name": "西夏区" + }, { + "code": "640106", + "name": "金凤区" + }, { + "code": "640121", + "name": "永宁县" + }, { + "code": "640122", + "name": "贺兰县" + }, { + "code": "640181", + "name": "灵武市" + }] + }, { + "code": "6402", + "name": "石嘴山市", + "children": [{ + "code": "640202", + "name": "大武口区" + }, { + "code": "640205", + "name": "惠农区" + }, { + "code": "640221", + "name": "平罗县" + }] + }, { + "code": "6403", + "name": "吴忠市", + "children": [{ + "code": "640302", + "name": "利通区" + }, { + "code": "640303", + "name": "红寺堡区" + }, { + "code": "640323", + "name": "盐池县" + }, { + "code": "640324", + "name": "同心县" + }, { + "code": "640381", + "name": "青铜峡市" + }] + }, { + "code": "6404", + "name": "固原市", + "children": [{ + "code": "640402", + "name": "原州区" + }, { + "code": "640422", + "name": "西吉县" + }, { + "code": "640423", + "name": "隆德县" + }, { + "code": "640424", + "name": "泾源县" + }, { + "code": "640425", + "name": "彭阳县" + }] + }, { + "code": "6405", + "name": "中卫市", + "children": [{ + "code": "640502", + "name": "沙坡头区" + }, { + "code": "640521", + "name": "中宁县" + }, { + "code": "640522", + "name": "海原县" + }] + }] +}, { + "code": "65", + "name": "新疆维吾尔自治区", + "children": [{ + "code": "6501", + "name": "乌鲁木齐市", + "children": [{ + "code": "650102", + "name": "天山区" + }, { + "code": "650103", + "name": "沙依巴克区" + }, { + "code": "650104", + "name": "新市区" + }, { + "code": "650105", + "name": "水磨沟区" + }, { + "code": "650106", + "name": "头屯河区" + }, { + "code": "650107", + "name": "达坂城区" + }, { + "code": "650109", + "name": "米东区" + }, { + "code": "650121", + "name": "乌鲁木齐县" + }] + }, { + "code": "6502", + "name": "克拉玛依市", + "children": [{ + "code": "650202", + "name": "独山子区" + }, { + "code": "650203", + "name": "克拉玛依区" + }, { + "code": "650204", + "name": "白碱滩区" + }, { + "code": "650205", + "name": "乌尔禾区" + }] + }, { + "code": "6504", + "name": "吐鲁番市", + "children": [{ + "code": "650402", + "name": "高昌区" + }, { + "code": "650421", + "name": "鄯善县" + }, { + "code": "650422", + "name": "托克逊县" + }] + }, { + "code": "6505", + "name": "哈密市", + "children": [{ + "code": "650502", + "name": "伊州区" + }, { + "code": "650521", + "name": "巴里坤哈萨克自治县" + }, { + "code": "650522", + "name": "伊吾县" + }] + }, { + "code": "6523", + "name": "昌吉回族自治州", + "children": [{ + "code": "652301", + "name": "昌吉市" + }, { + "code": "652302", + "name": "阜康市" + }, { + "code": "652323", + "name": "呼图壁县" + }, { + "code": "652324", + "name": "玛纳斯县" + }, { + "code": "652325", + "name": "奇台县" + }, { + "code": "652327", + "name": "吉木萨尔县" + }, { + "code": "652328", + "name": "木垒哈萨克自治县" + }] + }, { + "code": "6527", + "name": "博尔塔拉蒙古自治州", + "children": [{ + "code": "652701", + "name": "博乐市" + }, { + "code": "652702", + "name": "阿拉山口市" + }, { + "code": "652722", + "name": "精河县" + }, { + "code": "652723", + "name": "温泉县" + }] + }, { + "code": "6528", + "name": "巴音郭楞蒙古自治州", + "children": [{ + "code": "652801", + "name": "库尔勒市" + }, { + "code": "652822", + "name": "轮台县" + }, { + "code": "652823", + "name": "尉犁县" + }, { + "code": "652824", + "name": "若羌县" + }, { + "code": "652825", + "name": "且末县" + }, { + "code": "652826", + "name": "焉耆回族自治县" + }, { + "code": "652827", + "name": "和静县" + }, { + "code": "652828", + "name": "和硕县" + }, { + "code": "652829", + "name": "博湖县" + }] + }, { + "code": "6529", + "name": "阿克苏地区", + "children": [{ + "code": "652901", + "name": "阿克苏市" + }, { + "code": "652902", + "name": "库车市" + }, { + "code": "652922", + "name": "温宿县" + }, { + "code": "652924", + "name": "沙雅县" + }, { + "code": "652925", + "name": "新和县" + }, { + "code": "652926", + "name": "拜城县" + }, { + "code": "652927", + "name": "乌什县" + }, { + "code": "652928", + "name": "阿瓦提县" + }, { + "code": "652929", + "name": "柯坪县" + }] + }, { + "code": "6530", + "name": "克孜勒苏柯尔克孜自治州", + "children": [{ + "code": "653001", + "name": "阿图什市" + }, { + "code": "653022", + "name": "阿克陶县" + }, { + "code": "653023", + "name": "阿合奇县" + }, { + "code": "653024", + "name": "乌恰县" + }] + }, { + "code": "6531", + "name": "喀什地区", + "children": [{ + "code": "653101", + "name": "喀什市" + }, { + "code": "653121", + "name": "疏附县" + }, { + "code": "653122", + "name": "疏勒县" + }, { + "code": "653123", + "name": "英吉沙县" + }, { + "code": "653124", + "name": "泽普县" + }, { + "code": "653125", + "name": "莎车县" + }, { + "code": "653126", + "name": "叶城县" + }, { + "code": "653127", + "name": "麦盖提县" + }, { + "code": "653128", + "name": "岳普湖县" + }, { + "code": "653129", + "name": "伽师县" + }, { + "code": "653130", + "name": "巴楚县" + }, { + "code": "653131", + "name": "塔什库尔干塔吉克自治县" + }] + }, { + "code": "6532", + "name": "和田地区", + "children": [{ + "code": "653201", + "name": "和田市" + }, { + "code": "653221", + "name": "和田县" + }, { + "code": "653222", + "name": "墨玉县" + }, { + "code": "653223", + "name": "皮山县" + }, { + "code": "653224", + "name": "洛浦县" + }, { + "code": "653225", + "name": "策勒县" + }, { + "code": "653226", + "name": "于田县" + }, { + "code": "653227", + "name": "民丰县" + }] + }, { + "code": "6540", + "name": "伊犁哈萨克自治州", + "children": [{ + "code": "654002", + "name": "伊宁市" + }, { + "code": "654003", + "name": "奎屯市" + }, { + "code": "654004", + "name": "霍尔果斯市" + }, { + "code": "654021", + "name": "伊宁县" + }, { + "code": "654022", + "name": "察布查尔锡伯自治县" + }, { + "code": "654023", + "name": "霍城县" + }, { + "code": "654024", + "name": "巩留县" + }, { + "code": "654025", + "name": "新源县" + }, { + "code": "654026", + "name": "昭苏县" + }, { + "code": "654027", + "name": "特克斯县" + }, { + "code": "654028", + "name": "尼勒克县" + }] + }, { + "code": "6542", + "name": "塔城地区", + "children": [{ + "code": "654201", + "name": "塔城市" + }, { + "code": "654202", + "name": "乌苏市" + }, { + "code": "654203", + "name": "沙湾市" + }, { + "code": "654221", + "name": "额敏县" + }, { + "code": "654224", + "name": "托里县" + }, { + "code": "654225", + "name": "裕民县" + }, { + "code": "654226", + "name": "和布克赛尔蒙古自治县" + }] + }, { + "code": "6543", + "name": "阿勒泰地区", + "children": [{ + "code": "654301", + "name": "阿勒泰市" + }, { + "code": "654321", + "name": "布尔津县" + }, { + "code": "654322", + "name": "富蕴县" + }, { + "code": "654323", + "name": "福海县" + }, { + "code": "654324", + "name": "哈巴河县" + }, { + "code": "654325", + "name": "青河县" + }, { + "code": "654326", + "name": "吉木乃县" + }] + }, { + "code": "6590", + "name": "自治区直辖县级行政区划", + "children": [{ + "code": "659001", + "name": "石河子市" + }, { + "code": "659002", + "name": "阿拉尔市" + }, { + "code": "659003", + "name": "图木舒克市" + }, { + "code": "659004", + "name": "五家渠市" + }, { + "code": "659005", + "name": "北屯市" + }, { + "code": "659006", + "name": "铁门关市" + }, { + "code": "659007", + "name": "双河市" + }, { + "code": "659008", + "name": "可克达拉市" + }, { + "code": "659009", + "name": "昆玉市" + }, { + "code": "659010", + "name": "胡杨河市" + }, { + "code": "659011", + "name": "新星市" + }, { + "code": "659012", + "name": "白杨市" + }] + }] +}] \ No newline at end of file diff --git a/src/uni_modules/piaoyi-cityPicker/components/piaoyi-cityPicker/piaoyi-cityPicker.vue b/src/uni_modules/piaoyi-cityPicker/components/piaoyi-cityPicker/piaoyi-cityPicker.vue new file mode 100644 index 0000000..20faead --- /dev/null +++ b/src/uni_modules/piaoyi-cityPicker/components/piaoyi-cityPicker/piaoyi-cityPicker.vue @@ -0,0 +1,281 @@ + + + + + diff --git a/src/uni_modules/piaoyi-cityPicker/package.json b/src/uni_modules/piaoyi-cityPicker/package.json new file mode 100644 index 0000000..7165c44 --- /dev/null +++ b/src/uni_modules/piaoyi-cityPicker/package.json @@ -0,0 +1,17 @@ +{ + "id": "piaoyi-cityPicker", + "name": " data-cityPicker省市区地址选择器", + "displayName": " data-cityPicker省市区地址选择器(兼容vue3)", + "version": "1.1.7", + "description": "常用省市区选择器,可反选,自定义模态框、兼容vue3", + "keywords": [ + "省市区", + "选择器", + "可反选", + "自定义模态框和弹框", + "兼容vue3" + ], + "dcloudext": { + "type": "component-vue" + } +} \ No newline at end of file diff --git a/src/uni_modules/piaoyi-cityPicker/readme.md b/src/uni_modules/piaoyi-cityPicker/readme.md new file mode 100644 index 0000000..445a149 --- /dev/null +++ b/src/uni_modules/piaoyi-cityPicker/readme.md @@ -0,0 +1,106 @@ +## 1.0.7(2023-09-15) +改为uni_modules规范 +### cityPicker 省市区选择器(兼容vue3) + +**使用方法:** + +``` + + + + + + +``` + +### 注:近期收到使用用户反馈,存在以下一个问题(如有好的建议,期待私信,谢谢) + +1、之前只支持默认值传入地区编码,已更新可以支持传入中文省市区数组 + +defaultValue可以传入defaultValue:['河北省','唐山市','丰南区']数组类型以及defaultValue: '420103'地区编码字符串类型 + +可以使用const reg =/([\u4e00-\u9fa5]+省|自治区|[\u4e00-\u9fa5]+市|[\u4e00-\u9fa5]+区)/g;将自己的省市区数据进行处理为数组再传入 + +2、有些用户反馈vue3下watch监听有问题 + +我自己创建一个vue项目,导入插件后,按照示例原封不动进行测试,没有发现问题; 发现有问题的朋友可以提供一下可以复现的demo给我,我这边看看具体什么情况 + +3、有些用户返回无法关闭弹框 + +不要把插件放到scroll-view里面,请务必放到最外层进行使用 + +#### 事件说明 + +| 事件名 | 返回值 | 描述 | +| :---------: | :----: | :------------: | +| @confirm | 对象(code,完整地区名称) | 点击确定的回调 | +| @cancel | 无 | 点击取消的回调 | + +#### Prop + +| 参数名称 | 描述 | +| -------- | ------------------------------ | +| visible | 控制选择器显示和隐藏 | +| column | 可选值2和3,2是省市两列选择;3是省市区三列选择 | +| maskCloseAble | 点击模态框是否关闭弹框 | +| defaultValue | 初始地区编码(例:420102或者['河北省','唐山市','丰南区']) | + +### 数据来源:[点击查看省市区数据来源](https://github.com/modood/Administrative-divisions-of-China/blob/master/dist/pca-code.json) +### 可接定制化组件开发 +### 右侧有本人代表作小程序二维码,可以扫码体验 +### 如使用过程中有问题或有一些好的建议,欢迎加QQ群互相学习交流:120594820 \ No newline at end of file diff --git a/src/uni_modules/qf-image-cropper/changelog.md b/src/uni_modules/qf-image-cropper/changelog.md new file mode 100644 index 0000000..0fa6898 --- /dev/null +++ b/src/uni_modules/qf-image-cropper/changelog.md @@ -0,0 +1,72 @@ +## 2.2.5(2024-07-30) +* 修复 当 checkRange=true 时,拖动四个伸缩角放大图片时还可能会超出或未到边界的问题 +* 修复 当 checkRange=false 时,图片旋转时会放大图片适应裁剪尺寸的问题 +* 修复 当 checkRange=true 时,图片旋转 90° 或 270° 进行缩放可能会无法拖动图片的问题 +## 2.2.4(2024-06-21) +* 新增 reverseRotatable 属性,是否支持逆向翻转 +* 修复 `2.1.7` 版本导致旋转后图片没有自动适配裁剪框的问题 + +## 2.2.3(2024-06-21) +* 新增 gpu 属性,是否开启硬件加速,图片缩放过程中如果出现元素的“留影”或“重影”效果,可通过该方式解决或减轻这一问题 +* 修复 组件使用 `v-if` 并设置 `src` 属性时可能会出现图片渲染位置存在偏差的问题 + +## 2.2.2(2024-06-21) +* 优化 组件实例 chooseImage 方法支持传参 +* 修复 组件使用 `v-if` 时组件无非正常渲染的问题 + +## 2.2.1(2024-06-15) +* 修复 H5平台不支持手势拖动图片的问题 + +## 2.2.0(2024-05-31) +* 修复 APP平台 `vue2` 项目因 `2.1.9` 版本修复 `vue3` 项目bug而引发的问题 + +## 2.1.9(2024-05-29) +* 修复 APP平台 `vue3` 项目因 uniapp `renderjs` 中未支持条件编译,导致运行了H5平台代码报错的问题 + +## 2.1.8(2024-05-29) +* 新增 zIndex 属性,调整组件层级 +* 新增 组件内容插槽 +* 优化 微信小程序平台动态修改元素style时的多余内容 + +## 2.1.7(2024-05-28) +* 新增 checkRange 属性,当 checkRange=false 时允许图片位置超出裁剪边界 +* 新增 minScale 属性,图片最小缩放倍数,当 minScale<0 时可使图片宽高不再受裁剪区域宽高限制 +* 新增 backgroundColor 属性,生成图片背景色,如果裁剪区域没有完全包含在图片中时,不设置该属性生成图片存在一定的透明块 +* 优化 动态修改图片宽高但没有传入src时,尺寸适应问题 +* 修复 APP平台通过 `this.$ownerInstance` 获取组件实例时机过早,其值为 `undefined` 导致报错界面没有正常渲染的问题 + +## 2.1.6(2023-04-16) +* 修复 组件使用 v-show 指令会导致选择图片后初始位置严重偏位的问题 + +## 2.1.5(2023-04-15) +* 新增 兼容APP平台 + +## 2.1.4(2023-03-13) +* 新增 fileType 属性,用于指定生成文件的类型,只支持 'jpg' 或 'png',默认为 'png' +* 新增 delay 属性,微信小程序平台使用 `Canvas 2D` 绘制时控制图片从绘制到生成所需时间 +* 优化 当生成图片的尺寸宽/高超过 Canvas 2D 最大限制(1365*1365)则将画布尺寸缩放在限制范围内绘制完成后输出目标尺寸 +* 优化 旋转图标指示方向与实际旋转方向不符 + +## 2.1.3(2023-02-06) +* 优化 vue3支持 + +## 2.1.2(2023-02-03) +* 新增 navigation 属性,H5平台当 showAngle 为 true 时,使用插件的页面在 `page.json` 中配置了 "navigationStyle": "custom" 时,必须将此值设为 false ,否则四个可拉伸角的触发位置会有偏差 +* 修复 H5平台部分设备(已知iPhone11以下机型)拍照的图片缩放时会闪动的问题 + +## 2.1.1(2022-12-06) +* 修复 横屏适配问题 + +## 2.1.0(2022-12-06) +* 新增 兼容H5平台,使用 renderjs 响应手势事件 + +## 2.0.0(2022-12-05) +* 重构 插件,使用 WXS 响应手势事件 +* 新增 图片翻转 +* 新增 拉伸裁剪框放大图片 +* 新增 监听PC鼠标滚轮触发缩放 +* 新增 圆形、圆角矩形的图片裁剪 +* 优化 图片缩放,移动端以双指触摸中心点为缩放中心点,PC端以鼠标所在点为缩放中心点 +* 优化 裁剪框样式 +* 优化 图片位置拖动 支持边界回弹效果(滑动时可滑出边界,释放时回弹到边界) +* 优化 生成图片使用新版 Canvas 2D 接口 diff --git a/src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.render.js b/src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.render.js new file mode 100644 index 0000000..becac19 --- /dev/null +++ b/src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.render.js @@ -0,0 +1,855 @@ +/** + * 图片编辑器-手势监听 + * 1. 支持编译到app-vue(uni-app 2.5.5及以上版本)、H5上 + */ +/** 图片偏移量 */ +var offset = { x: 0, y: 0 }; +/** 图片缩放比例 */ +var scale = 1; +/** 图片最小缩放比例 */ +var minScale = 1; +/** 图片旋转角度 */ +var rotate = 0; +/** 触摸点 */ +var touches = []; +/** 图片布局信息 */ +var img = {}; +/** 系统信息 */ +var sys = {}; +/** 裁剪区域布局信息 */ +var area = {}; +/** 触摸行为类型 */ +var touchType = ''; +/** 操作角的位置 */ +var activeAngle = 0; +/** 裁剪区域布局信息偏移量 */ +var areaOffset = { left: 0, right: 0, top: 0, bottom: 0 }; +/** 元素ID */ +var elIds = { + 'imageStyles': 'crop-image', + 'maskStylesList': 'crop-mask-block', + 'borderStyles': 'crop-border', + 'circleBoxStyles': 'crop-circle-box', + 'circleStyles': 'crop-circle', + 'gridStylesList': 'crop-grid', + 'angleStylesList': 'crop-angle', +} +/** 记录上次初始化时间戳,排除APP重复更新 */ +var timestamp = 0; +/** vue3 renderjs 条件编译无效,以此方式区别 APP 和 H5 */ +// #ifdef H5 +var platform = 'H5'; +// #endif +// #ifdef APP +var platform = 'APP'; +// #endif +/** 容错值 */ +var fault = 0.000001; +/** + * 获取a、b两数中的最小正数 + * @param a + * @param b + */ +function minimum(a, b) { + if (a > 0 && b < 0) return a; + if (a < 0 && b > 0) return b; + if (a > 0 && b > 0) return Math.min(a, b); + return 0; +} +/** + * 在容错访问内获取n近似值 + * @param n + */ +function num(n) { + var m = parseFloat((n).toFixed(6)); + return m === fault || m === -fault ? 0 : m; +} +/** + * 比较a值在容错值范围内是否等于b值 + * @param a + * @param b + */ +function equalsByFault(a, b) { + return Math.abs(a - b) <= fault; +} +/** + * 比较a值在容错值范围内是否小于b值 + * @param a + * @param b + */ +function lessThanByFault(a, b) { + var c = a - b; + return c < 0 ? c < -fault : c < fault; +} +/** + * 验证并获取有效最大值 + * @param v + * @param max + * @param isInclude + * @param x + * @param y + * @param rate + * @returns + */ +function validMax(v, max, isInclude, x, y, rate) { + if(typeof max === 'number') { + if(isInclude && equalsByFault(max, y)) { // 宽高不等时,x轴用y轴值要做等比例转换 + var n = num(max * rate); + if (n <= x) return n; // 转化后值在x轴最大值范围内 + return x; // 转化后值超出x轴最大值范围则用最大值 + } + return max; + } + return v; +} +/** + * 样式对象转字符串 + * @param {Object} style 样式对象 + */ +function styleToString(style) { + if(typeof style === 'string') return style; + var str = ''; + for (let k in style) { + str += k + ':' + style[k] + ';'; + } + return str; +} +/** + * + * @param {Object} instance 页面实例对象 + * @param {Object} key 要修改样式的key + * @param {Object|Array} style 样式 + */ +function setStyle(instance, key, style) { + // console.log('setStyle', instance, key, JSON.stringify(style)) + // #ifdef APP-PLUS + if(platform === 'APP') { + if(Object.prototype.toString.call(style) === '[object Array]') { + for (var i = 0, len = style.length; i < len; i++) { + var el = window.document.getElementById(elIds[key] + '-' + (i + 1)); + el && (el.style = styleToString(style[i])); + } + } else { + var el = window.document.getElementById(elIds[key]); + el && (el.style = styleToString(style)); + } + } + // #endif + // #ifdef H5 + if(platform === 'H5') instance[key] = style; + // #endif +} +/** + * 触发页面实例指定方法 + * @param {Object} instance 页面实例对象 + * @param {Object} name 方法名称 + * @param {Object} obj 传递参数 + */ +function callMethod(instance, name, obj) { + // #ifdef APP-PLUS + if(platform === 'APP') instance.callMethod(name, obj); + // #endif + // #ifdef H5 + if(platform === 'H5') instance[name](obj); + // #endif +} +/** + * 计算两点间距 + * @param {Object} touches 触摸点信息 + */ +function getDistanceByTouches(touches) { + // 根据勾股定理求两点间距离 + var a = touches[1].pageX - touches[0].pageX; + var b = touches[1].pageY - touches[0].pageY; + var c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2)); + // 求两点间的中点坐标 + // 1. a、b可能为负值 + // 2. 在求a、b时,如用touches[1]减touches[0],则求中点坐标也得用touches[1]减a/2、b/2 + // 3. 同理,在求a、b时,也可用touches[0]减touches[1],则求中点坐标也得用touches[0]减a/2、b/2 + var x = touches[1].pageX - a / 2; + var y = touches[1].pageY - b / 2; + return { c, x, y }; +}; + +/** + * 修正取值 + * @param {Object} a + * @param {Object} b + * @param {Object} c + * @param {Object} reverse 是否反向 + */ +function correctValue(a, b, c, reverse) { + return num(reverse ? Math.max(Math.min(a, b), c) : Math.min(Math.max(a, b), c)); +} + +/** + * 旋转90°或270°时检查边界:限制 x、y 拖动范围,禁止滑出边界 + * @param {Object} e 点坐标 + * @param {Object} xReverse x是否反向 + * @param {Object} yReverse y是否反向 + */ +function checkRotateRange(e, xReverse, yReverse) { + var o = num((img.height - img.width) / 2); // 宽高差值一半 + return { + x: correctValue(e.x, -img.height + o + area.width + area.left, area.left + o, xReverse), + y: correctValue(e.y, -img.width - o + area.height + area.top, area.top - o, yReverse) + }; +} + +/** + * 检查边界:限制 x、y 拖动范围,禁止滑出边界 + * @param {Object} e 点坐标 + */ +function checkRange(e) { + var r = rotate / 90 % 2; + if(r === 1) { // 因图片宽高可能不等,翻转 90° 或 270° 后图片宽高需反着计算,且左右和上下边界要根据差值做偏移 + if (area.width === area.height) { + return checkRotateRange(e, img.height < area.height, img.width < area.width); + } + var isInclude = img.height < area.width && img.width < area.height; // 图片是否包含在裁剪区域内 + if (img.width < area.height || img.height < area.width) { + if (area.width < area.height && img.width < img.height) { + return isInclude + ? checkRotateRange(e, area.width < area.height, area.width < area.height) + : checkRotateRange(e, false, true); + } + if (area.height < area.width && img.height < img.width) { + return isInclude + ? checkRotateRange(e, area.height < area.width, area.height < area.width) + : checkRotateRange(e, true, false); + } + } + if (img.height >= area.width && img.width >= area.height) { + return checkRotateRange(e, false, false); + } + if (isInclude) { + return area.height < area.width + ? checkRotateRange(e, true, true) + : checkRotateRange(e, area.width < area.height, area.width < area.height); + } + if (img.height < area.width && !img.width < area.height) { + return checkRotateRange(e, true, false); + } + if (!img.height < area.width && img.width < area.height) { + return checkRotateRange(e, false, true); + } + return checkRotateRange(e, img.height < area.height, img.width < area.width); + } + return { + x: correctValue(e.x, -img.width + area.width + area.left, area.left, img.width < area.width), + y: correctValue(e.y, -img.height + area.height + area.top, area.top, img.height < area.height) + } +}; +/** + * 变更图片布局信息 + * @param {Object} e 布局信息 + */ +function changeImageRect(e) { + // console.log('changeImageRect', e) + offset.x += e.x || 0; + offset.y += e.y || 0; + if(e.check && area.checkRange) { // 检查边界 + var point = checkRange(offset); + if(offset.x !== point.x || offset.y !== point.y) { + offset = point; + } + } + + // 因频繁修改 width/height 会造成大量的内存消耗,改为scale + // e.instance.imageStyles = { + // width: img.width + 'px', + // height: img.height + 'px', + // transform: 'translate(' + (offset.x + ox) + 'px, ' + (offset.y + ox) + 'px) rotate(' + rotate +'deg)' + // }; + var ox = (img.width - img.oldWidth) / 2; + var oy = (img.height - img.oldHeight) / 2; + // e.instance.imageStyles = { + // width: img.oldWidth + 'px', + // height: img.oldHeight + 'px', + // transform: 'translate(' + (offset.x + ox) + 'px, ' + (offset.y + oy) + 'px) rotate(' + rotate +'deg) scale(' + scale + ')' + // }; + setStyle(e.instance, 'imageStyles', { + width: img.oldWidth + 'px', + height: img.oldHeight + 'px', + transform: (img.gpu ? 'translateZ(0) ' : '') + 'translate(' + (offset.x + ox) + 'px, ' + (offset.y + oy) + 'px' + ') rotate(' + rotate +'deg) scale(' + scale + ')' + }); + callMethod(e.instance, 'dataChange', { + width: img.width, + height: img.height, + x: offset.x, + y: offset.y, + rotate: rotate + }); +}; +/** + * 变更裁剪区域布局信息 + * @param {Object} e 布局信息 + */ +function changeAreaRect(e) { + // console.log('changeAreaRect', e) + // 变更蒙版样式 + setStyle(e.instance, 'maskStylesList', [ + { + left: 0, + width: (area.left + areaOffset.left) + 'px', + top: 0, + bottom: 0, + 'z-index': area.zIndex + 2 + }, + { + left: (area.right + areaOffset.right) + 'px', + right: 0, + top: 0, + bottom: 0, + 'z-index': area.zIndex + 2 + }, + { + left: (area.left + areaOffset.left) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + top: 0, + height: (area.top + areaOffset.top) + 'px', + 'z-index': area.zIndex + 2 + }, + { + left: (area.left + areaOffset.left) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + top: (area.bottom + areaOffset.bottom) + 'px', + // height: (area.top - areaOffset.bottom + sys.offsetBottom) + 'px', + bottom: 0, + 'z-index': area.zIndex + 2 + } + ]); + // 变更边框样式 + if(area.showBorder) { + setStyle(e.instance, 'borderStyles', { + left: (area.left + areaOffset.left) + 'px', + top: (area.top + areaOffset.top) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + }); + } + + // 变更参考线样式 + if(area.showGrid) { + setStyle(e.instance, 'gridStylesList', [ + { + 'border-width': '1px 0 0 0', + left: (area.left + areaOffset.left) + 'px', + right: (area.right + areaOffset.right) + 'px', + top: (area.top + areaOffset.top + (area.height + areaOffset.bottom - areaOffset.top) / 3 - 0.5) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '1px 0 0 0', + left: (area.left + areaOffset.left) + 'px', + right: (area.right + areaOffset.right) + 'px', + top: (area.top + areaOffset.top + (area.height + areaOffset.bottom - areaOffset.top) * 2 / 3 - 0.5) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 1px 0 0', + top: (area.top + areaOffset.top) + 'px', + bottom: (area.bottom + areaOffset.bottom) + 'px', + left: (area.left + areaOffset.left + (area.width + areaOffset.right - areaOffset.left) / 3 - 0.5) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 1px 0 0', + top: (area.top + areaOffset.top) + 'px', + bottom: (area.bottom + areaOffset.bottom) + 'px', + left: (area.left + areaOffset.left + (area.width + areaOffset.right - areaOffset.left) * 2 / 3 - 0.5) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + } + ]); + } + + // 变更四个伸缩角样式 + if(area.showAngle) { + setStyle(e.instance, 'angleStylesList', [ + { + 'border-width': area.angleBorderWidth + 'px 0 0 ' + area.angleBorderWidth + 'px', + left: (area.left + areaOffset.left - area.angleBorderWidth) + 'px', + top: (area.top + areaOffset.top - area.angleBorderWidth) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px 0 0', + left: (area.right + areaOffset.right - area.angleSize) + 'px', + top: (area.top + areaOffset.top - area.angleBorderWidth) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 0 ' + area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px', + left: (area.left + areaOffset.left - area.angleBorderWidth) + 'px', + top: (area.bottom + areaOffset.bottom - area.angleSize) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 ' + area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px 0', + left: (area.right + areaOffset.right - area.angleSize) + 'px', + top: (area.bottom + areaOffset.bottom - area.angleSize) + 'px', + 'z-index': area.zIndex + 3 + } + ]); + } + + // 变更圆角样式 + if(area.radius > 0) { + var radius = area.radius; + if(area.width === area.height && area.radius >= area.width / 2) { // 圆形 + radius = (area.width / 2); + } else { // 圆角矩形 + if(area.width !== area.height) { // 限制圆角半径不能超过短边的一半 + radius = Math.min(area.width / 2, area.height / 2, radius); + } + } + setStyle(e.instance, 'circleBoxStyles', { + left: (area.left + areaOffset.left) + 'px', + top: (area.top + areaOffset.top) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 2 + }); + setStyle(e.instance, 'circleStyles', { + 'box-shadow': '0 0 0 ' + Math.max(area.width, area.height) + 'px rgba(51, 51, 51, 0.8)', + 'border-radius': radius + 'px' + }); + } +}; +/** + * 缩放图片 + * @param {Object} e 布局信息 + */ +function scaleImage(e) { + // console.log('scaleImage', e) + var last = scale; + scale = Math.min(Math.max(e.scale + scale, minScale), img.maxScale); + if(last !== scale) { + img.width = num(img.oldWidth * scale); + img.height = num(img.oldHeight * scale); + // 参考问题:有一个长4000px、宽4000px的四方形ABCD,A点的坐标固定在(-2000,-2000), + // 该四边形上有一个点E,坐标为(-100,-300),将该四方形复制一份并缩小到90%后, + // 新四边形的A点坐标为多少时可使新四边形的E点与原四边形的E点重合? + // 预期效果:从图中选取某点(参照物)为中心点进行缩放,缩放时无论图像怎么变化,该点位置始终固定不变 + // 计算方法:以相同起点先计算缩放前后两点间的距离,再加上原图像偏移量即可 + e.x = num((e.x - offset.x) * (1 - scale / last)); + e.y = num((e.y - offset.y) * (1 - scale / last)); + changeImageRect(e); + return true; + } + return false; +}; +/** + * 获取触摸点在哪个角 + * @param {number} x 触摸点x轴坐标 + * @param {number} y 触摸点y轴坐标 + * @return {number} 角的位置:0=无;1=左上;2=右上;3=左下;4=右下; + */ +function getToucheAngle(x, y) { + // console.log('getToucheAngle', x, y, JSON.stringify(area)) + var o = area.angleBorderWidth; // 需扩大触发范围则把 o 值加大即可 + var oy = sys.navigation ? 0 : sys.windowTop; + if(y >= area.top - o + oy && y <= area.top + area.angleSize + o + oy) { + if(x >= area.left - o && x <= area.left + area.angleSize + o) { + return 1; // 左上角 + } else if(x >= area.right - area.angleSize - o && x <= area.right + o) { + return 2; // 右上角 + } + } else if(y >= area.bottom - area.angleSize - o + oy && y <= area.bottom + o + oy) { + if(x >= area.left - o && x <= area.left + area.angleSize + o) { + return 3; // 左下角 + } else if(x >= area.right - area.angleSize - o && x <= area.right + o) { + return 4; // 右下角 + } + } + return 0; // 无触摸到角 +}; +/** + * 重置数据 + */ +function resetData() { + offset = { x: 0, y: 0 }; + scale = 1; + minScale = img.minScale; + rotate = 0; +}; +function getTouchs(touches) { + var result = []; + var len = touches ? touches.length : 0 + for (var i = 0; i < len; i++) { + result[i] = { + pageX: touches[i].pageX, + // h5无标题栏时,窗口顶部距离仍为标题栏高度,且触摸点y轴坐标还是有标题栏的值,即减去标题栏高度的值 + pageY: touches[i].pageY + sys.windowTop + }; + } + return result; +}; +var mouseEvent = false; +export default { + data() { + return { + imageStyles: {}, + maskStylesList: [{}, {}, {}, {}], + borderStyles: {}, + gridStylesList: [{}, {}, {}, {}], + angleStylesList: [{}, {}, {}, {}], + circleBoxStyles: {}, + circleStyles: {} + } + }, + created() { + // 监听 PC 端鼠标滚轮 + // #ifdef H5 + platform === 'H5' && window.addEventListener('mousewheel', async (e) => { + var touchs = getTouchs([e]) + img.src && scaleImage({ + instance: await this.getInstance(), + check: true, + // 鼠标向上滚动时,deltaY 固定 -100,鼠标向下滚动时,deltaY 固定 100 + scale: e.deltaY > 0 ? -0.05 : 0.05, + x: touchs[0].pageX, + y: touchs[0].pageY + }); + }); + // #endif + }, + // #ifdef H5 + mounted() { + platform === 'H5' && this.initH5Events(); + }, + // #endif + setPlatform(p) { + platform = p; + }, + methods: { + // #ifdef H5 + getTouchEvent(e) { + e.touches = [ + { pageX: e.pageX, pageY: e.pageY } + ]; + return e; + }, + initH5Events() { + const preview = document.getElementById('pic-preview'); + preview?.addEventListener('mousedown', (e, ev) => { + mouseEvent = true; + this.touchstart(this.getTouchEvent(e)); + }); + preview?.addEventListener('mousemove', (e) => { + if (!mouseEvent) return; + this.touchmove(this.getTouchEvent(e)); + }); + preview?.addEventListener('mouseup', (e) => { + mouseEvent = false; + this.touchend(this.getTouchEvent(e)) + }); + preview?.addEventListener('mouseleave', (e) => { + mouseEvent = false; + this.touchend(this.getTouchEvent(e)) + }); + }, + // #endif + async getInstance() { + // #ifdef APP-PLUS + if(platform === 'APP') + return this.$ownerInstance + ? Promise.resolve(this.$ownerInstance) + : new Promise((resolve) => { + setTimeout(async () => { + resolve(await this.getInstance()); + }); + }); + // #endif + // #ifdef H5 + if(platform === 'H5') + return Promise.resolve(this); + // #endif + }, + /** + * 初始化:观察数据变更 + * @param {Object} newVal 新数据 + * @param {Object} oldVal 旧数据 + * @param {Object} o 组件实例对象 + */ + initObserver: async function(newVal, oldVal, o, i) { + // console.log('initObserver', newVal, oldVal, o, i) + if(newVal && (!img.src || timestamp !== newVal.timestamp)) { + timestamp = newVal.timestamp; + img = newVal.img; + sys = newVal.sys; + area = newVal.area; + minScale = img.minScale; + resetData(); + const instance = await this.getInstance() + img.src && changeImageRect({ + instance, + x: (sys.windowWidth - img.width) / 2, + y: (sys.windowHeight + sys.windowTop - sys.offsetBottom - img.height) / 2 + }); + changeAreaRect({ + instance + }); + } + }, + /** + * 鼠标滚轮滚动 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + mousewheel: function(e, o) { + // h5平台 wheel 事件无法判断滚轮滑动方向,需使用 mousewheel + }, + /** + * 触摸开始 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchstart: function(e, o) { + if(!img.src) return; + touches = getTouchs(e.touches); + activeAngle = area.showAngle ? getToucheAngle(touches[0].pageX, touches[0].pageY) : 0; + if(touches.length === 1 && activeAngle !== 0) { + touchType = 'stretch'; // 伸缩裁剪区域 + } else { + touchType = ''; + } + // console.log('touchstart', e, activeAngle) + }, + /** + * 触摸移动 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchmove: async function(e, o) { + if(!img.src) return; + // console.log('touchmove', e, o) + e.touches = getTouchs(e.touches); + if(touchType === 'stretch') { // 触摸四个角进行拉伸 + var point = e.touches[0]; + var start = touches[0]; + var x = point.pageX - start.pageX; + var y = point.pageY - start.pageY; + if(x !== 0 || y !== 0) { + var maxX = num(area.width * (1 - area.minScale)); + var maxY = num(area.height * (1 - area.minScale)); + // console.log(x, y, maxX, maxY, offset, area) + touches[0] = point; + var r = rotate / 90 % 2; + var m = r === 1 ? num((img.height - img.width) / 2) : 0; // 宽高差值一半 + var xCompare = r === 1 ? lessThanByFault(img.height, area.width) : lessThanByFault(img.width, area.width); + var yCompare = r === 1 ? lessThanByFault(img.width, area.height) : lessThanByFault(img.height, area.height) + var isInclude = xCompare && yCompare; + var isIntersect = area.checkRange && (xCompare || yCompare); // 图片是否包含在裁剪区域内 + var isReverse = !isInclude || num((offset.x - area.left) / area.width) <= num((offset.y - area.top) / area.height) || (area.width > area.height && img.width < img.height && r === 1); + switch(activeAngle) { + case 1: // 左上角 + x = num(x + areaOffset.left); + y = num(y + areaOffset.top); + if(x >= 0 && y >= 0) { // 有效滑动 + var t = num(offset.y + m - area.top); + var l = num(offset.x - m - area.left); + // && (offset.x + img.width < area.right || offset.y + img.height < area.bottom) + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(x > y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(x > maxX) x = maxX; + y = num(x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(y > maxY) y = maxY; + x = num(y * area.width / area.height); + } + areaOffset.left = x; + areaOffset.top = y; + } + break; + case 2: // 右上角 + x = num(x + areaOffset.right); + y = num(y + areaOffset.top); + if(x <= 0 && y >= 0) { // 有效滑动 + var w = (r === 1 ? img.height : img.width); + var t = num(offset.y + m - area.top); + var l = num(area.right + m - offset.x - w); + var max = isIntersect && ((t >= 0) || (l >= 0)) + ? minimum(t, l) + : false; + if(-x > y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(-x > maxX) x = -maxX; + y = num(-x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(y > maxY) y = maxY; + x = num(-y * area.width / area.height); + } + areaOffset.right = x; + areaOffset.top = y; + } + break; + case 3: // 左下角 + x += num(x + areaOffset.left); + y += num(y + areaOffset.bottom); + if(x >= 0 && y <= 0) { // 有效滑动 + var w = (r === 1 ? img.width : img.height); + var t = num(area.bottom - m - offset.y - w); + var l = num(offset.x - m - area.left); + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(x > -y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(x > maxX) x = maxX; + y = num(-x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(-y > maxY) y = -maxY; + x = num(-y * area.width / area.height); + } + areaOffset.left = x; + areaOffset.bottom = y; + } + break; + case 4: // 右下角 + x = num(x + areaOffset.right); + y = num(y + areaOffset.bottom); + if(x <= 0 && y <= 0) { // 有效滑动 + var w = (r === 1 ? img.height : img.width); + var h = (r === 1 ? img.width : img.height); + var t = num(area.bottom - offset.y - h - m); + var l = num(area.right + m - offset.x - w); + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(-x > -y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(-x > maxX) x = -maxX; + y = num(x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(-y > maxY) y = -maxY; + x = num(y * area.width / area.height); + } + areaOffset.right = x; + areaOffset.bottom = y; + } + break; + } + // console.log(x, y, JSON.stringify(areaOffset)) + changeAreaRect({ + instance: await this.getInstance(), + }); + // this.draw(); + } + } else if (e.touches.length == 2) { // 双点触摸缩放 + var start = getDistanceByTouches(touches); + var end = getDistanceByTouches(e.touches); + scaleImage({ + instance: await this.getInstance(), + check: !area.bounce, + scale: (end.c - start.c) / 100, + x: end.x, + y: end.y + }); + touchType = 'scale'; + } else if(touchType === 'scale') {// 从双点触摸变成单点触摸 / 从缩放变成拖动 + touchType = 'move'; + } else { + changeImageRect({ + instance: await this.getInstance(), + check: !area.bounce, + x: e.touches[0].pageX - touches[0].pageX, + y: e.touches[0].pageY - touches[0].pageY + }); + touchType = 'move'; + } + touches = e.touches; + }, + /** + * 触摸结束 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchend: async function(e, o) { + if(!img.src) return; + if(touchType === 'stretch') { // 拉伸裁剪区域的四个角缩放 + // 裁剪区域宽度被缩放到多少 + var left = areaOffset.left; + var right = areaOffset.right; + var top = areaOffset.top; + var bottom = areaOffset.bottom; + var w = area.width + right - left; + var h = area.height + bottom - top; + // 图像放大倍数 + var p = scale * (area.width / w) - scale; + // 复原裁剪区域 + areaOffset = { left: 0, right: 0, top: 0, bottom: 0 }; + changeAreaRect({ + instance: await this.getInstance(), + }); + scaleImage({ + instance: await this.getInstance(), + scale: p, + x: area.left + left + (1 === activeAngle || 3 === activeAngle ? w : 0), + y: area.top + top + (1 === activeAngle || 2 === activeAngle ? h : 0) + }); + } else if (area.bounce) { // 检查边界并矫正,实现拖动到边界时有回弹效果 + changeImageRect({ + instance: await this.getInstance(), + check: true + }); + } + }, + /** + * 顺时针翻转图片90° + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + rotateImage: async function(r) { + rotate = (rotate + (r || 90)) % 360; + + if(img.minScale >= 1 && area.checkRange) { + // 因图片宽高可能不等,翻转后图片宽高需足够填满裁剪区域 + minScale = 1; + if(img.width < area.height) { + minScale = area.height / img.oldWidth; + } else if(img.height < area.width) { + minScale = area.width / img.oldHeight; + } + if(minScale !== 1) { + scaleImage({ + instance: await this.getInstance(), + scale: minScale - scale, + x: sys.windowWidth / 2, + y: (sys.windowHeight - sys.offsetBottom) / 2 + }); + } + } + + // 由于拖动画布后会导致图片位置偏移,翻转时的旋转中心点需是图片区域+偏移区域的中心点 + // 翻转x轴中心点 = (超出裁剪区域右侧的图片宽度 - 超出裁剪区域左侧的图片宽度) / 2 + // 翻转y轴中心点 = (超出裁剪区域下方的图片宽度 - 超出裁剪区域上方的图片宽度) / 2 + var ox = ((offset.x + img.width - area.right) - (area.left - offset.x)) / 2; + var oy = ((offset.y + img.height - area.bottom) - (area.top - offset.y)) / 2; + changeImageRect({ + instance: await this.getInstance(), + check: true, + x: -ox - oy, + y: -oy + ox + }); + }, + rotateImage90: function() { + this.rotateImage(90) + }, + rotateImage270: function() { + this.rotateImage(270) + }, + } +} \ No newline at end of file diff --git a/src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.vue b/src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.vue new file mode 100644 index 0000000..bfb34fb --- /dev/null +++ b/src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.vue @@ -0,0 +1,743 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.wxs b/src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.wxs new file mode 100644 index 0000000..98a5116 --- /dev/null +++ b/src/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.wxs @@ -0,0 +1,727 @@ +/** + * 图片编辑器-手势监听 + * 1. wxs 暂不支持 es6 语法 + * 2. 支持编译到微信小程序、QQ小程序、app-vue、H5上(uni-app 2.2.5及以上版本) + */ +/** 图片偏移量 */ +var offset = { x: 0, y: 0 }; +/** 图片缩放比例 */ +var scale = 1; +/** 图片最小缩放比例 */ +var minScale = 1; +/** 图片旋转角度 */ +var rotate = 0; +/** 触摸点 */ +var touches = []; +/** 图片布局信息 */ +var img = {}; +/** 系统信息 */ +var sys = {}; +/** 裁剪区域布局信息 */ +var area = {}; +/** 触摸行为类型 */ +var touchType = ''; +/** 操作角的位置 */ +var activeAngle = 0; +/** 裁剪区域布局信息偏移量 */ +var areaOffset = { left: 0, right: 0, top: 0, bottom: 0 }; +/** 容错值 */ +var fault = 0.000001; +/** + * 获取a、b两数中的最小正数 + * @param a + * @param b + */ +function minimum(a, b) { + if (a > 0 && b < 0) return a; + if (a < 0 && b > 0) return b; + if (a > 0 && b > 0) return Math.min(a, b); + return 0; +} +/** + * 在容错访问内获取n近似值 + * @param n + */ +function num(n) { + var m = parseFloat((n).toFixed(6)); + return m === fault || m === -fault ? 0 : m; +} +/** + * 比较a值在容错值范围内是否等于b值 + * @param a + * @param b + */ +function equalsByFault(a, b) { + return Math.abs(a - b) <= fault; +} +/** + * 比较a值在容错值范围内是否小于b值 + * @param a + * @param b + */ +function lessThanByFault(a, b) { + var c = a - b; + return c < 0 ? c < -fault : c < fault; +} +/** + * 验证并获取有效最大值 + * @param v + * @param max + * @param isInclude + * @param x + * @param y + * @param rate + * @returns + */ +function validMax(v, max, isInclude, x, y, rate) { + if(typeof max === 'number') { + if(isInclude && equalsByFault(max, y)) { // 宽高不等时,x轴用y轴值要做等比例转换 + var n = num(max * rate); + if (n <= x) return n; // 转化后值在x轴最大值范围内 + return x; // 转化后值超出x轴最大值范围则用最大值 + } + return max; + } + return v; +} +/** + * 计算两点间距 + * @param {Object} touches 触摸点信息 + */ +function getDistanceByTouches(touches) { + // 根据勾股定理求两点间距离 + var a = touches[1].pageX - touches[0].pageX; + var b = touches[1].pageY - touches[0].pageY; + var c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2)); + // 求两点间的中点坐标 + // 1. a、b可能为负值 + // 2. 在求a、b时,如用touches[1]减touches[0],则求中点坐标也得用touches[1]减a/2、b/2 + // 3. 同理,在求a、b时,也可用touches[0]减touches[1],则求中点坐标也得用touches[0]减a/2、b/2 + var x = touches[1].pageX - a / 2; + var y = touches[1].pageY - b / 2; + return { c, x, y }; +}; +/** + * 修正取值 + * @param {Object} a + * @param {Object} b + * @param {Object} c + * @param {Object} reverse 是否反向 + */ +function correctValue(a, b, c, reverse) { + return num(reverse ? Math.max(Math.min(a, b), c) : Math.min(Math.max(a, b), c)); +} + +/** + * 旋转90°或270°时检查边界:限制 x、y 拖动范围,禁止滑出边界 + * @param {Object} e 点坐标 + * @param {Object} xReverse x是否反向 + * @param {Object} yReverse y是否反向 + */ +function checkRotateRange(e, xReverse, yReverse) { + var o = num((img.height - img.width) / 2); // 宽高差值一半 + return { + x: correctValue(e.x, -img.height + o + area.width + area.left, area.left + o, xReverse), + y: correctValue(e.y, -img.width - o + area.height + area.top, area.top - o, yReverse) + }; +} + +/** + * 检查边界:限制 x、y 拖动范围,禁止滑出边界 + * @param {Object} e 点坐标 + */ +function checkRange(e) { + var r = rotate / 90 % 2; + if(r === 1) { // 因图片宽高可能不等,翻转 90° 或 270° 后图片宽高需反着计算,且左右和上下边界要根据差值做偏移 + if (area.width === area.height) { + return checkRotateRange(e, img.height < area.height, img.width < area.width); + } + var isInclude = img.height < area.width && img.width < area.height; // 图片是否包含在裁剪区域内 + if (img.width < area.height || img.height < area.width) { + if (area.width < area.height && img.width < img.height) { + return isInclude + ? checkRotateRange(e, area.width < area.height, area.width < area.height) + : checkRotateRange(e, false, true); + } + if (area.height < area.width && img.height < img.width) { + return isInclude + ? checkRotateRange(e, area.height < area.width, area.height < area.width) + : checkRotateRange(e, true, false); + } + } + if (img.height >= area.width && img.width >= area.height) { + return checkRotateRange(e, false, false); + } + if (isInclude) { + return area.height < area.width + ? checkRotateRange(e, true, true) + : checkRotateRange(e, area.width < area.height, area.width < area.height); + } + if (img.height < area.width && !img.width < area.height) { + return checkRotateRange(e, true, false); + } + if (!img.height < area.width && img.width < area.height) { + return checkRotateRange(e, false, true); + } + return checkRotateRange(e, img.height < area.height, img.width < area.width); + } + return { + x: correctValue(e.x, -img.width + area.width + area.left, area.left, img.width < area.width), + y: correctValue(e.y, -img.height + area.height + area.top, area.top, img.height < area.height) + }; +}; +/** + * 变更图片布局信息 + * @param {Object} e 布局信息 + */ +function changeImageRect(e) { + offset.x += e.x || 0; + offset.y += e.y || 0; + var image = e.instance.selectComponent('.crop-image'); + if(e.check && area.checkRange) { // 检查边界 + var point = checkRange(offset); + if(offset.x !== point.x || offset.y !== point.y) { + offset = point; + } + } + // image.setStyle({ + // width: img.width + 'px', + // height: img.height + 'px', + // transform: 'translate(' + offset.x + 'px, ' + offset.y + 'px) rotate(' + rotate +'deg)' + // }); + var ox = (img.width - img.oldWidth) / 2; + var oy = (img.height - img.oldHeight) / 2; + image.setStyle({ + width: img.oldWidth + 'px', + height: img.oldHeight + 'px', + transform: (img.gpu ? 'translateZ(0) ' : '') + 'translate(' + (offset.x + ox) + 'px, ' + (offset.y + oy) + 'px) rotate(' + rotate +'deg) scale(' + scale + ')' + }); + + e.instance.callMethod('dataChange', { + width: img.width, + height: img.height, + x: offset.x, + y: offset.y, + rotate: rotate + }); +}; +/** + * 变更裁剪区域布局信息 + * @param {Object} e 布局信息 + */ +function changeAreaRect(e) { + // 变更蒙版样式 + var masks = e.instance.selectAllComponents('.crop-mask-block'); + var maskStyles = [ + { + left: 0, + width: (area.left + areaOffset.left) + 'px', + top: 0, + bottom: 0, + 'z-index': area.zIndex + 2 + }, + { + left: (area.right + areaOffset.right) + 'px', + right: 0, + top: 0, + bottom: 0, + 'z-index': area.zIndex + 2 + }, + { + left: (area.left + areaOffset.left) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + top: 0, + height: (area.top + areaOffset.top) + 'px', + 'z-index': area.zIndex + 2 + }, + { + left: (area.left + areaOffset.left) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + top: (area.bottom + areaOffset.bottom) + 'px', + // height: (area.top - areaOffset.bottom + sys.offsetBottom) + 'px', + bottom: 0, + 'z-index': area.zIndex + 2 + } + ]; + var len = masks.length; + for (var i = 0; i < len; i++) { + masks[i].setStyle(maskStyles[i]); + } + + // 变更边框样式 + if(area.showBorder) { + var border = e.instance.selectComponent('.crop-border'); + border.setStyle({ + left: (area.left + areaOffset.left) + 'px', + top: (area.top + areaOffset.top) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + }); + } + + // 变更参考线样式 + if(area.showGrid) { + var grids = e.instance.selectAllComponents('.crop-grid'); + var gridStyles = [ + { + 'border-width': '1px 0 0 0', + left: (area.left + areaOffset.left) + 'px', + right: (area.right + areaOffset.right) + 'px', + top: (area.top + areaOffset.top + (area.height + areaOffset.bottom - areaOffset.top) / 3 - 0.5) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '1px 0 0 0', + left: (area.left + areaOffset.left) + 'px', + right: (area.right + areaOffset.right) + 'px', + top: (area.top + areaOffset.top + (area.height + areaOffset.bottom - areaOffset.top) * 2 / 3 - 0.5) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 1px 0 0', + top: (area.top + areaOffset.top) + 'px', + bottom: (area.bottom + areaOffset.bottom) + 'px', + left: (area.left + areaOffset.left + (area.width + areaOffset.right - areaOffset.left) / 3 - 0.5) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 1px 0 0', + top: (area.top + areaOffset.top) + 'px', + bottom: (area.bottom + areaOffset.bottom) + 'px', + left: (area.left + areaOffset.left + (area.width + areaOffset.right - areaOffset.left) * 2 / 3 - 0.5) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 3 + } + ]; + var len = grids.length; + for (var i = 0; i < len; i++) { + grids[i].setStyle(gridStyles[i]); + } + } + + // 变更四个伸缩角样式 + if(area.showAngle) { + var angles = e.instance.selectAllComponents('.crop-angle'); + var angleStyles = [ + { + 'border-width': area.angleBorderWidth + 'px 0 0 ' + area.angleBorderWidth + 'px', + left: (area.left + areaOffset.left - area.angleBorderWidth) + 'px', + top: (area.top + areaOffset.top - area.angleBorderWidth) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px 0 0', + left: (area.right + areaOffset.right - area.angleSize) + 'px', + top: (area.top + areaOffset.top - area.angleBorderWidth) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 0 ' + area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px', + left: (area.left + areaOffset.left - area.angleBorderWidth) + 'px', + top: (area.bottom + areaOffset.bottom - area.angleSize) + 'px', + 'z-index': area.zIndex + 3 + }, + { + 'border-width': '0 ' + area.angleBorderWidth + 'px ' + area.angleBorderWidth + 'px 0', + left: (area.right + areaOffset.right - area.angleSize) + 'px', + top: (area.bottom + areaOffset.bottom - area.angleSize) + 'px', + 'z-index': area.zIndex + 3 + } + ]; + var len = angles.length; + for (var i = 0; i < len; i++) { + angles[i].setStyle(angleStyles[i]); + } + } + + // 变更圆角样式 + if(area.radius > 0) { + var circleBox = e.instance.selectComponent('.crop-circle-box'); + var circle = e.instance.selectComponent('.crop-circle'); + var radius = area.radius; + if(area.width === area.height && area.radius >= area.width / 2) { // 圆形 + radius = (area.width / 2); + } else { // 圆角矩形 + if(area.width !== area.height) { // 限制圆角半径不能超过短边的一半 + radius = Math.min(area.width / 2, area.height / 2, radius); + } + } + circleBox.setStyle({ + left: (area.left + areaOffset.left) + 'px', + top: (area.top + areaOffset.top) + 'px', + width: (area.width + areaOffset.right - areaOffset.left) + 'px', + height: (area.height + areaOffset.bottom - areaOffset.top) + 'px', + 'z-index': area.zIndex + 2 + }); + circle.setStyle({ + 'box-shadow': '0 0 0 ' + Math.max(area.width, area.height) + 'px rgba(51, 51, 51, 0.8)', + 'border-radius': radius + 'px' + }); + } +}; +/** + * 缩放图片 + * @param {Object} e 布局信息 + */ +function scaleImage(e) { + var last = scale; + scale = Math.min(Math.max(e.scale + scale, minScale), img.maxScale); + if(last !== scale) { + img.width = num(img.oldWidth * scale); + img.height = num(img.oldHeight * scale); + // 参考问题:有一个长4000px、宽4000px的四方形ABCD,A点的坐标固定在(-2000,-2000), + // 该四边形上有一个点E,坐标为(-100,-300),将该四方形复制一份并缩小到90%后, + // 新四边形的A点坐标为多少时可使新四边形的E点与原四边形的E点重合? + // 预期效果:从图中选取某点(参照物)为中心点进行缩放,缩放时无论图像怎么变化,该点位置始终固定不变 + // 计算方法:以相同起点先计算缩放前后两点间的距离,再加上原图像偏移量即可 + e.x = num((e.x - offset.x) * (1 - scale / last)); + e.y = num((e.y - offset.y) * (1 - scale / last)); + changeImageRect(e); + return true; + } + return false; +}; +/** + * 获取触摸点在哪个角 + * @param {number} x 触摸点x轴坐标 + * @param {number} y 触摸点y轴坐标 + * @return {number} 角的位置:0=无;1=左上;2=右上;3=左下;4=右下; + */ +function getToucheAngle(x, y) { + // console.log('getToucheAngle', x, y, JSON.stringify(area)) + var o = area.angleBorderWidth; // 需扩大触发范围则把 o 值加大即可 + if(y >= area.top - o && y <= area.top + area.angleSize + o) { + if(x >= area.left - o && x <= area.left + area.angleSize + o) { + return 1; // 左上角 + } else if(x >= area.right - area.angleSize - o && x <= area.right + o) { + return 2; // 右上角 + } + } else if(y >= area.bottom - area.angleSize - o && y <= area.bottom + o) { + if(x >= area.left - o && x <= area.left + area.angleSize + o) { + return 3; // 左下角 + } else if(x >= area.right - area.angleSize - o && x <= area.right + o) { + return 4; // 右下角 + } + } + return 0; // 无触摸到角 +}; +/** + * 重置数据 + */ +function resetData() { + offset = { x: 0, y: 0 }; + scale = 1; + minScale = img.minScale; + rotate = 0; +}; +/** +* 顺时针翻转图片90° +* @param {Object} e 事件对象 +* @param {Object} o 组件实例对象 +*/ +function rotateImage(e, o, r) { + rotate = (rotate + r) % 360; + if(img.minScale >= 1 && area.checkRange) { + // 因图片宽高可能不等,翻转后图片宽高需足够填满裁剪区域 + minScale = 1; + if(img.width < area.height) { + minScale = area.height / img.oldWidth; + } else if(img.height < area.width) { + minScale = area.width / img.oldHeight; + } + if(minScale !== 1) { + scaleImage({ + instance: o, + scale: minScale - scale, + x: sys.windowWidth / 2, + y: (sys.windowHeight - sys.offsetBottom) / 2 + }); + } + } + + // 由于拖动画布后会导致图片位置偏移,翻转时的旋转中心点需是图片区域+偏移区域的中心点 + // 翻转x轴中心点 = (超出裁剪区域右侧的图片宽度 - 超出裁剪区域左侧的图片宽度) / 2 + // 翻转y轴中心点 = (超出裁剪区域下方的图片宽度 - 超出裁剪区域上方的图片宽度) / 2 + var ox = ((offset.x + img.width - area.right) - (area.left - offset.x)) / 2; + var oy = ((offset.y + img.height - area.bottom) - (area.top - offset.y)) / 2; + changeImageRect({ + instance: o, + check: true, + x: -ox - oy, + y: -oy + ox + }); +}; +module.exports = { + /** + * 初始化:观察数据变更 + * @param {Object} newVal 新数据 + * @param {Object} oldVal 旧数据 + * @param {Object} o 组件实例对象 + */ + initObserver: function(newVal, oldVal, o, i) { + if(newVal) { + img = newVal.img; + sys = newVal.sys; + area = newVal.area; + minScale = img.minScale; + resetData(); + img.src && changeImageRect({ + instance: o, + x: (sys.windowWidth - img.width) / 2, + y: (sys.windowHeight - sys.offsetBottom - img.height) / 2 + }); + changeAreaRect({ + instance: o + }); + // console.log('initRect', JSON.stringify(newVal)) + } + }, + /** + * 鼠标滚轮滚动 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + mousewheel: function(e, o) { + if(!img.src) return; + scaleImage({ + instance: o, + check: true, + // 鼠标向上滚动时,deltaY 固定 -100,鼠标向下滚动时,deltaY 固定 100 + scale: e.detail.deltaY > 0 ? -0.05 : 0.05, + x: e.touches[0].pageX, + y: e.touches[0].pageY + }); + }, + /** + * 触摸开始 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchstart: function(e, o) { + if(!img.src) return; + touches = e.touches; + activeAngle = area.showAngle ? getToucheAngle(touches[0].pageX, touches[0].pageY) : 0; + if(touches.length === 1 && activeAngle !== 0) { + touchType = 'stretch'; // 伸缩裁剪区域 + } else { + touchType = ''; + } + // console.log('touchstart', JSON.stringify(e), activeAngle) + }, + /** + * 触摸移动 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchmove: function(e, o) { + if(!img.src) return; + // console.log('touchmove', JSON.stringify(e), JSON.stringify(o)) + if(touchType === 'stretch') { // 触摸四个角进行拉伸 + var point = e.touches[0]; + var start = touches[0]; + var x = point.pageX - start.pageX; + var y = point.pageY - start.pageY; + if(x !== 0 || y !== 0) { + var maxX = num(area.width * (1 - area.minScale)); + var maxY = num(area.height * (1 - area.minScale)); + // console.log(x, y, maxX, maxY, offset, area) + touches[0] = point; + var r = rotate / 90 % 2; + var m = r === 1 ? num((img.height - img.width) / 2) : 0; // 宽高差值一半 + var xCompare = r === 1 ? lessThanByFault(img.height, area.width) : lessThanByFault(img.width, area.width); + var yCompare = r === 1 ? lessThanByFault(img.width, area.height) : lessThanByFault(img.height, area.height) + var isInclude = xCompare && yCompare; + var isIntersect = area.checkRange && (xCompare || yCompare); // 图片是否包含在裁剪区域内 + var isReverse = !isInclude || num((offset.x - area.left) / area.width) <= num((offset.y - area.top) / area.height) || (area.width > area.height && img.width < img.height && r === 1); + switch(activeAngle) { + case 1: // 左上角 + x = num(x + areaOffset.left); + y = num(y + areaOffset.top); + if(x >= 0 && y >= 0) { // 有效滑动 + var t = num(offset.y + m - area.top); + var l = num(offset.x - m - area.left); + // && (offset.x + img.width < area.right || offset.y + img.height < area.bottom) + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(x > y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(x > maxX) x = maxX; + y = num(x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(y > maxY) y = maxY; + x = num(y * area.width / area.height); + } + areaOffset.left = x; + areaOffset.top = y; + } + break; + case 2: // 右上角 + x = num(x + areaOffset.right); + y = num(y + areaOffset.top); + if(x <= 0 && y >= 0) { // 有效滑动 + var w = (r === 1 ? img.height : img.width); + var t = num(offset.y + m - area.top); + var l = num(area.right + m - offset.x - w); + var max = isIntersect && ((t >= 0) || (l >= 0)) + ? minimum(t, l) + : false; + // var max = isInclude && ((offset.x > 0 && offset.x + img.width <= area.right) || (offset.y > 0 && offset.y >= area.top)) + // ? minimum(offset.y - area.top, area.right - offset.x - img.width) + // : false; + // console.log(offset.x, offset.y, img.width, img.height, area.top, area.right, m, max) + // console.log(offset.y + m - area.top, area.right + m - offset.x - w) + if(-x > y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(-x > maxX) x = -maxX; + y = num(-x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(y > maxY) y = maxY; + x = num(-y * area.width / area.height); + } + areaOffset.right = x; + areaOffset.top = y; + } + break; + case 3: // 左下角 + x += num(x + areaOffset.left); + y += num(y + areaOffset.bottom); + if(x >= 0 && y <= 0) { // 有效滑动 + var w = (r === 1 ? img.width : img.height); + var t = num(area.bottom - m - offset.y - w); + var l = num(offset.x - m - area.left); + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(x > -y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(x > maxX) x = maxX; + y = num(-x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(-y > maxY) y = -maxY; + x = num(-y * area.width / area.height); + } + areaOffset.left = x; + areaOffset.bottom = y; + } + break; + case 4: // 右下角 + x = num(x + areaOffset.right); + y = num(y + areaOffset.bottom); + if(x <= 0 && y <= 0) { // 有效滑动 + var w = (r === 1 ? img.height : img.width); + var h = (r === 1 ? img.width : img.height); + var t = num(area.bottom - offset.y - h - m); + var l = num(area.right + m - offset.x - w); + var max = isIntersect && ((l >= 0) || (t >= 0)) + ? minimum(t, l) + : false; + if(-x > -y && isReverse) { // 以x轴滑动距离为缩放基准 + maxX = validMax(maxX, max, isInclude, l, t, area.width / area.height); + if(-x > maxX) x = -maxX; + y = num(x * area.height / area.width); + } else { // 以y轴滑动距离为缩放基准 + maxY = validMax(maxY, max, isInclude, t, l, area.height / area.width); + if(-y > maxY) y = -maxY; + x = num(y * area.width / area.height); + } + areaOffset.right = x; + areaOffset.bottom = y; + } + break; + } + // console.log(x, y, JSON.stringify(areaOffset)) + changeAreaRect({ + instance: o, + }); + // this.draw(); + } + } else if (e.touches.length == 2) { // 双点触摸缩放 + var start = getDistanceByTouches(touches); + var end = getDistanceByTouches(e.touches); + scaleImage({ + instance: o, + check: !area.bounce, + scale: (end.c - start.c) / 100, + x: end.x, + y: end.y + }); + touchType = 'scale'; + } else if(touchType === 'scale') {// 从双点触摸变成单点触摸 / 从缩放变成拖动 + touchType = 'move'; + } else { + changeImageRect({ + instance: o, + check: !area.bounce, + x: e.touches[0].pageX - touches[0].pageX, + y: e.touches[0].pageY - touches[0].pageY + }); + touchType = 'move'; + } + touches = e.touches; + }, + /** + * 触摸结束 + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + touchend: function(e, o) { + if(!img.src) return; + if(touchType === 'stretch') { // 拉伸裁剪区域的四个角缩放 + // 裁剪区域宽度被缩放到多少 + var left = areaOffset.left; + var right = areaOffset.right; + var top = areaOffset.top; + var bottom = areaOffset.bottom; + var w = area.width + right - left; + var h = area.height + bottom - top; + // 图像放大倍数 + var p = scale * (area.width / w) - scale; + // 复原裁剪区域 + areaOffset = { left: 0, right: 0, top: 0, bottom: 0 }; + changeAreaRect({ + instance: o, + }); + scaleImage({ + instance: o, + scale: p, + x: area.left + left + (1 === activeAngle || 3 === activeAngle ? w : 0), + y: area.top + top + (1 === activeAngle || 2 === activeAngle ? h : 0) + }); + } else if (area.bounce) { // 检查边界并矫正,实现拖动到边界时有回弹效果 + changeImageRect({ + instance: o, + check: true + }); + } + }, + /** + * 顺时针翻转图片90° + * @param {Object} e 事件对象 + * @param {Object} o 组件实例对象 + */ + rotateImage: function(e, o) { + rotateImage(e, o, 90); + }, + rotateImage90: function(e, o) { + rotateImage(e, o, 90) + }, + rotateImage270: function(e, o) { + rotateImage(e, o, 270) + }, + // 此处只用于对齐其他平台端的样式参数,防止异常,无作用 + imageStyles: '', + maskStylesList: ['', '', '', ''], + borderStyles: '', + gridStylesList: ['', '', '', ''], + angleStylesList: ['', '', '', ''], + circleBoxStyles: '', + circleStyles: '', +} \ No newline at end of file diff --git a/src/uni_modules/qf-image-cropper/package.json b/src/uni_modules/qf-image-cropper/package.json new file mode 100644 index 0000000..f101c5b --- /dev/null +++ b/src/uni_modules/qf-image-cropper/package.json @@ -0,0 +1,81 @@ +{ + "id": "qf-image-cropper", + "displayName": "图片裁剪插件", + "version": "2.2.5", + "description": "图片裁剪插件,支持自定义尺寸、定点等比例缩放、拖动、图片翻转、剪切圆形/圆角图片、定制样式,功能多性能高体验好注释全。", + "keywords": [ + "qf-image-cropper", + "图片裁剪", + "图片编辑", + "头像裁剪", + "小程序" +], + "repository": "", + "engines": { + "HBuilderX": "^3.1.0" + }, +"dcloudext": { + "type": "component-vue", + "sale": { + "regular": { + "price": "0.00" + }, + "sourcecode": { + "price": "0.00" + } + }, + "contact": { + "qq": "" + }, + "declaration": { + "ads": "无", + "data": "插件不采集任何数据", + "permissions": "无" + }, + "npmurl": "" + }, + "uni_modules": { + "dependencies": [], + "encrypt": [], + "platforms": { + "client": { + "Vue": { + "vue2": "y", + "vue3": "y" + }, + "App": { + "app-vue": "y", + "app-nvue": "n" + }, + "H5-mobile": { + "Safari": "y", + "Android Browser": "y", + "微信浏览器(Android)": "y", + "QQ浏览器(Android)": "u" + }, + "H5-pc": { + "Chrome": "u", + "IE": "u", + "Edge": "u", + "Firefox": "u", + "Safari": "u" + }, + "小程序": { + "微信": "y", + "阿里": "n", + "百度": "n", + "字节跳动": "n", + "QQ": "u", + "钉钉": "n", + "快手": "n", + "飞书": "n", + "京东": "n" + }, + "快应用": { + "华为": "n", + "联盟": "n" + } + } + } + } +} \ No newline at end of file diff --git a/src/uni_modules/qf-image-cropper/readme.md b/src/uni_modules/qf-image-cropper/readme.md new file mode 100644 index 0000000..f39f645 --- /dev/null +++ b/src/uni_modules/qf-image-cropper/readme.md @@ -0,0 +1,97 @@ +# qf-image-cropper +## 图片裁剪插件 +uniapp微信小程序图片裁剪插件,支持自定义尺寸、定点等比例缩放、拖动、图片翻转、剪切圆形/圆角图片、定制样式,功能多性能高体验好注释全。 + +### 平台支持: +1. 支持微信小程序:移动端、PC端、开发者工具 +2. 支持H5平台(2.1.0版本起) +3. 支持APP平台(2.1.5版本起):Android、IOS +4. 其他平台暂未测试兼容性未知 + +### 支持功能: +1. 自定义裁剪尺寸 +2. 定点等比例缩放:移动端以双指触摸中心点为缩放中心点,PC端以鼠标所在点为缩放中心点 +3. 自由拖动:支持限制滑出边界,也支持回弹效果(滑动时可滑出边界,释放时回弹到边界) +4. 图片翻转:在裁剪尺寸非 1:1 的情况下,翻转时宽高无法铺满裁剪区域时,图片会自动放大到合适尺寸 +5. 裁剪生成新图片 +6. 本地选择图片 +7. 可定制样式:可自由选择是否渲染裁剪边框、可伸缩裁剪顶角、参考线 +8. 裁剪圆角图片:圆形、圆角矩形 + +### 属性说明 +| 属性名 | 类型 | 默认值 | 说明 | +|:---|:---|:---|:---| +| src | String | | 图片资源地址 | +| width | Number | 300 | 裁剪宽度 | +| height | Number | 300 | 裁剪高度 | +| showBorder | Boolean | true | 是否绘制裁剪区域边框 | +| showGrid | Boolean | true | 是否绘制裁剪区域网格参考线 | +| showAngle | Boolean | true | 是否展示四个支持伸缩的角 | +| areaScale | Number | 0.3 | 裁剪区域最小缩放倍数 | +| minScale | Number | 1 | 图片最小缩放倍数 | +| maxScale | Number | 5 | 图片最大缩放倍数 | +| checkRange | Boolean | true | 检查图片位置是否超出裁剪边界,如果超出则会矫正位置 | +| backgroundColor | String | | 生成图片背景色:如果裁剪区域没有完全包含在图片中时,不设置该属性则生成图片存在一定的透明块 | +| bounce | Boolean | true | 是否有回弹效果:当 checkRange 为 true 时有效,拖动时可以拖出边界,释放时会弹回边界 | +| rotatable | Boolean | true | 是否支持翻转 | +| reverseRotatable | Boolean | false | 是否支持逆向翻转 | +| choosable | Boolean | true | 是否支持从本地选择素材 | +| gpu | Boolean | false | 是否开启硬件加速,图片缩放过程中如果出现元素的“留影”或“重影”效果,可通过该方式解决或减轻这一问题 | +| angleSize | Number | 20 | 四个角尺寸,单位px | +| angleBorderWidth | Number | 2 | 四个角边框宽度,单位px | +| zIndex | Number/String | | 调整组件层级 | +| radius | Number | | 裁剪图片圆角半径,单位px | +| fileType | String | png | 生成文件的类型,只支持 'jpg' 或 'png'。默认为 'png' | +| delay | Number | 1000 | 图片从绘制到生成所需时间,单位ms
    微信小程序平台使用 `Canvas 2D` 绘制时有效
    如绘制大图或出现裁剪图片空白等情况应适当调大该值,因 `Canvas 2d` 采用同步绘制,需自己把控绘制完成时间 | +| navigation | Boolean | true | 页面是否是原生标题栏:
    H5平台当 showAngle 为 true 时,使用插件的页面在 `page.json` 中配置了 `"navigationStyle": "custom"` 时,必须将此值设为 false ,否则四个可拉伸角的触发位置会有偏差。
    注:因H5平台的窗口高度是包含标题栏的,而屏幕触摸点的坐标是不包含的 | +| @crop | EventHandle | | 剪裁完成后触发,event = { tempFilePath }。在H5平台下,tempFilePath 为 base64 | + +### 基本用法 +``` + + + +``` +通过ref组件实例可在进入页面后直接打开相册选择图片 +``` +mounted() { + this.$refs.qfImageCropper.chooseImage({ sourceType: ['album'] }); +} +``` +### 使用说明 +1.建议在`pages.json`中将引用插件的页面添加一下配置禁止下拉刷新和禁止页面滑动,防止出现性能或页面抖动等问题。 +``` +{ + "enablePullDownRefresh": false, + "disableScroll": true +} +``` +2.建议使用本插件不要设置过大宽高的目标图片尺寸,建议1365x1365以内,否则可能会导致如下问题: +``` +1.界面卡顿,内存占用过高 +2.生成图片失真(模糊) +3.确定裁剪后一直显示 `裁剪中...`,该问题是由 `uni.canvasToTempFilePath` 无法回调导致,不同平台不同设备限制可能有所不同。 +``` +3.如裁剪后的图片存在偏移的问题,请检查是否受自己项目中父组件或全局样式影响。 +4.src属性设置网络图片时,图片资源必须是能触发 `getImageInfo` API 的 success 回调才可用于插件裁剪。因此小程序平台获取网络图片信息需先配置download域名白名单才能生效。 +5.如果组件无法正常渲染且使用了 `v-if` 时,可尝试将 `v-if` 替换为 `v-show` +6.如果App端导入组件后无法正常渲染,请尝试重新运行 \ No newline at end of file diff --git a/src/uni_modules/uni-calendar/changelog.md b/src/uni_modules/uni-calendar/changelog.md new file mode 100644 index 0000000..30ca0df --- /dev/null +++ b/src/uni_modules/uni-calendar/changelog.md @@ -0,0 +1,30 @@ +## 1.4.12(2024-09-21) +- 修复 calendar在选择日期范围后重新选择日期需要点两次的Bug +## 1.4.11(2024-01-10) +- 修复 回到今天时,月份显示不一致问题 +## 1.4.10(2023-04-10) +- 修复 某些情况 monthSwitch 未触发的Bug +## 1.4.9(2023-02-02) +- 修复 某些情况切换月份错误的Bug +## 1.4.8(2023-01-30) +- 修复 某些情况切换月份错误的Bug [详情](https://ask.dcloud.net.cn/question/161964) +## 1.4.7(2022-09-16) +- 优化 支持使用 uni-scss 控制主题色 +## 1.4.6(2022-09-08) +- 修复 表头年月切换,导致改变当前日期为选择月1号,且未触发change事件的Bug +## 1.4.5(2022-02-25) +- 修复 条件编译 nvue 不支持的 css 样式的Bug +## 1.4.4(2022-02-25) +- 修复 条件编译 nvue 不支持的 css 样式的Bug +## 1.4.3(2021-09-22) +- 修复 startDate、 endDate 属性失效的Bug +## 1.4.2(2021-08-24) +- 新增 支持国际化 +## 1.4.1(2021-08-05) +- 修复 弹出层被 tabbar 遮盖的Bug +## 1.4.0(2021-07-30) +- 组件兼容 vue3,如何创建vue3项目,详见 [uni-app 项目支持 vue3 介绍](https://ask.dcloud.net.cn/article/37834) +## 1.3.16(2021-05-12) +- 新增 组件示例地址 +## 1.3.15(2021-02-04) +- 调整为uni_modules目录规范 diff --git a/src/uni_modules/uni-calendar/components/uni-calendar/calendar.js b/src/uni_modules/uni-calendar/components/uni-calendar/calendar.js new file mode 100644 index 0000000..55eed81 --- /dev/null +++ b/src/uni_modules/uni-calendar/components/uni-calendar/calendar.js @@ -0,0 +1,544 @@ +/** +* @1900-2100区间内的公历、农历互转 +* @charset UTF-8 +* @github https://github.com/jjonline/calendar.js +* @Author Jea杨(JJonline@JJonline.Cn) +* @Time 2014-7-21 +* @Time 2016-8-13 Fixed 2033hex、Attribution Annals +* @Time 2016-9-25 Fixed lunar LeapMonth Param Bug +* @Time 2017-7-24 Fixed use getTerm Func Param Error.use solar year,NOT lunar year +* @Version 1.0.3 +* @公历转农历:calendar.solar2lunar(1987,11,01); //[you can ignore params of prefix 0] +* @农历转公历:calendar.lunar2solar(1987,09,10); //[you can ignore params of prefix 0] +*/ +/* eslint-disable */ +var calendar = { + + /** + * 农历1900-2100的润大小信息表 + * @Array Of Property + * @return Hex + */ + lunarInfo: [0x04bd8, 0x04ae0, 0x0a570, 0x054d5, 0x0d260, 0x0d950, 0x16554, 0x056a0, 0x09ad0, 0x055d2, // 1900-1909 + 0x04ae0, 0x0a5b6, 0x0a4d0, 0x0d250, 0x1d255, 0x0b540, 0x0d6a0, 0x0ada2, 0x095b0, 0x14977, // 1910-1919 + 0x04970, 0x0a4b0, 0x0b4b5, 0x06a50, 0x06d40, 0x1ab54, 0x02b60, 0x09570, 0x052f2, 0x04970, // 1920-1929 + 0x06566, 0x0d4a0, 0x0ea50, 0x06e95, 0x05ad0, 0x02b60, 0x186e3, 0x092e0, 0x1c8d7, 0x0c950, // 1930-1939 + 0x0d4a0, 0x1d8a6, 0x0b550, 0x056a0, 0x1a5b4, 0x025d0, 0x092d0, 0x0d2b2, 0x0a950, 0x0b557, // 1940-1949 + 0x06ca0, 0x0b550, 0x15355, 0x04da0, 0x0a5b0, 0x14573, 0x052b0, 0x0a9a8, 0x0e950, 0x06aa0, // 1950-1959 + 0x0aea6, 0x0ab50, 0x04b60, 0x0aae4, 0x0a570, 0x05260, 0x0f263, 0x0d950, 0x05b57, 0x056a0, // 1960-1969 + 0x096d0, 0x04dd5, 0x04ad0, 0x0a4d0, 0x0d4d4, 0x0d250, 0x0d558, 0x0b540, 0x0b6a0, 0x195a6, // 1970-1979 + 0x095b0, 0x049b0, 0x0a974, 0x0a4b0, 0x0b27a, 0x06a50, 0x06d40, 0x0af46, 0x0ab60, 0x09570, // 1980-1989 + 0x04af5, 0x04970, 0x064b0, 0x074a3, 0x0ea50, 0x06b58, 0x05ac0, 0x0ab60, 0x096d5, 0x092e0, // 1990-1999 + 0x0c960, 0x0d954, 0x0d4a0, 0x0da50, 0x07552, 0x056a0, 0x0abb7, 0x025d0, 0x092d0, 0x0cab5, // 2000-2009 + 0x0a950, 0x0b4a0, 0x0baa4, 0x0ad50, 0x055d9, 0x04ba0, 0x0a5b0, 0x15176, 0x052b0, 0x0a930, // 2010-2019 + 0x07954, 0x06aa0, 0x0ad50, 0x05b52, 0x04b60, 0x0a6e6, 0x0a4e0, 0x0d260, 0x0ea65, 0x0d530, // 2020-2029 + 0x05aa0, 0x076a3, 0x096d0, 0x04afb, 0x04ad0, 0x0a4d0, 0x1d0b6, 0x0d250, 0x0d520, 0x0dd45, // 2030-2039 + 0x0b5a0, 0x056d0, 0x055b2, 0x049b0, 0x0a577, 0x0a4b0, 0x0aa50, 0x1b255, 0x06d20, 0x0ada0, // 2040-2049 + /** Add By JJonline@JJonline.Cn**/ + 0x14b63, 0x09370, 0x049f8, 0x04970, 0x064b0, 0x168a6, 0x0ea50, 0x06b20, 0x1a6c4, 0x0aae0, // 2050-2059 + 0x0a2e0, 0x0d2e3, 0x0c960, 0x0d557, 0x0d4a0, 0x0da50, 0x05d55, 0x056a0, 0x0a6d0, 0x055d4, // 2060-2069 + 0x052d0, 0x0a9b8, 0x0a950, 0x0b4a0, 0x0b6a6, 0x0ad50, 0x055a0, 0x0aba4, 0x0a5b0, 0x052b0, // 2070-2079 + 0x0b273, 0x06930, 0x07337, 0x06aa0, 0x0ad50, 0x14b55, 0x04b60, 0x0a570, 0x054e4, 0x0d160, // 2080-2089 + 0x0e968, 0x0d520, 0x0daa0, 0x16aa6, 0x056d0, 0x04ae0, 0x0a9d4, 0x0a2d0, 0x0d150, 0x0f252, // 2090-2099 + 0x0d520], // 2100 + + /** + * 公历每个月份的天数普通表 + * @Array Of Property + * @return Number + */ + solarMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31], + + /** + * 天干地支之天干速查表 + * @Array Of Property trans["甲","乙","丙","丁","戊","己","庚","辛","壬","癸"] + * @return Cn string + */ + Gan: ['\u7532', '\u4e59', '\u4e19', '\u4e01', '\u620a', '\u5df1', '\u5e9a', '\u8f9b', '\u58ec', '\u7678'], + + /** + * 天干地支之地支速查表 + * @Array Of Property + * @trans["子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"] + * @return Cn string + */ + Zhi: ['\u5b50', '\u4e11', '\u5bc5', '\u536f', '\u8fb0', '\u5df3', '\u5348', '\u672a', '\u7533', '\u9149', '\u620c', '\u4ea5'], + + /** + * 天干地支之地支速查表<=>生肖 + * @Array Of Property + * @trans["鼠","牛","虎","兔","龙","蛇","马","羊","猴","鸡","狗","猪"] + * @return Cn string + */ + Animals: ['\u9f20', '\u725b', '\u864e', '\u5154', '\u9f99', '\u86c7', '\u9a6c', '\u7f8a', '\u7334', '\u9e21', '\u72d7', '\u732a'], + + /** + * 24节气速查表 + * @Array Of Property + * @trans["小寒","大寒","立春","雨水","惊蛰","春分","清明","谷雨","立夏","小满","芒种","夏至","小暑","大暑","立秋","处暑","白露","秋分","寒露","霜降","立冬","小雪","大雪","冬至"] + * @return Cn string + */ + solarTerm: ['\u5c0f\u5bd2', '\u5927\u5bd2', '\u7acb\u6625', '\u96e8\u6c34', '\u60ca\u86f0', '\u6625\u5206', '\u6e05\u660e', '\u8c37\u96e8', '\u7acb\u590f', '\u5c0f\u6ee1', '\u8292\u79cd', '\u590f\u81f3', '\u5c0f\u6691', '\u5927\u6691', '\u7acb\u79cb', '\u5904\u6691', '\u767d\u9732', '\u79cb\u5206', '\u5bd2\u9732', '\u971c\u964d', '\u7acb\u51ac', '\u5c0f\u96ea', '\u5927\u96ea', '\u51ac\u81f3'], + + /** + * 1900-2100各年的24节气日期速查表 + * @Array Of Property + * @return 0x string For splice + */ + sTermInfo: ['9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf97c3598082c95f8c965cc920f', + '97bd0b06bdb0722c965ce1cfcc920f', 'b027097bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', + '97bcf97c359801ec95f8c965cc920f', '97bd0b06bdb0722c965ce1cfcc920f', 'b027097bd097c36b0b6fc9274c91aa', + '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f', '97bd0b06bdb0722c965ce1cfcc920f', + 'b027097bd097c36b0b6fc9274c91aa', '9778397bd19801ec9210c965cc920e', '97b6b97bd19801ec95f8c965cc920f', + '97bd09801d98082c95f8e1cfcc920f', '97bd097bd097c36b0b6fc9210c8dc2', '9778397bd197c36c9210c9274c91aa', + '97b6b97bd19801ec95f8c965cc920e', '97bd09801d98082c95f8e1cfcc920f', '97bd097bd097c36b0b6fc9210c8dc2', + '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec95f8c965cc920e', '97bcf97c3598082c95f8e1cfcc920f', + '97bd097bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec9210c965cc920e', + '97bcf97c3598082c95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b97bd19801ec9210c965cc920e', '97bcf97c3598082c95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722', + '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f', + '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', + '97bcf97c359801ec95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f', '97bd097bd07f595b0b6fc920fb0722', + '9778397bd097c36b0b6fc9210c8dc2', '9778397bd19801ec9210c9274c920e', '97b6b97bd19801ec95f8c965cc920f', + '97bd07f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c920e', + '97b6b97bd19801ec95f8c965cc920f', '97bd07f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2', + '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bd07f1487f595b0b0bc920fb0722', + '7f0e397bd097c36b0b6fc9210c8dc2', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', + '97bcf7f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b97bd19801ec9210c965cc920e', '97bcf7f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', + '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf7f1487f531b0b0bb0b6fb0722', + '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', + '97bcf7f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b97bd19801ec9210c9274c920e', '97bcf7f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', + '9778397bd097c36b0b6fc9210c91aa', '97b6b97bd197c36c9210c9274c920e', '97bcf7f0e47f531b0b0bb0b6fb0722', + '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c920e', + '97b6b7f0e47f531b0723b0b6fb0722', '7f0e37f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2', + '9778397bd097c36b0b70c9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', '7f0e37f1487f595b0b0bb0b6fb0722', + '7f0e397bd097c35b0b6fc9210c8dc2', '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', + '7f0e27f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', + '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', + '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', + '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9274c91aa', + '97b6b7f0e47f531b0723b0787b0721', '7f0e27f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', + '9778397bd097c36b0b6fc9210c91aa', '97b6b7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722', + '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9210c8dc2', '977837f0e37f149b0723b0787b0721', + '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f5307f595b0b0bc920fb0722', '7f0e397bd097c35b0b6fc9210c8dc2', + '977837f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e37f1487f595b0b0bb0b6fb0722', + '7f0e397bd097c35b0b6fc9210c8dc2', '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', + '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '977837f0e37f14998082b0787b06bd', + '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', + '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', + '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', + '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14998082b0787b06bd', + '7f07e7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', + '977837f0e37f14998082b0723b06bd', '7f07e7f0e37f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722', + '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b0721', + '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f1487f595b0b0bb0b6fb0722', '7f0e37f0e37f14898082b0723b02d5', + '7ec967f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f1487f531b0b0bb0b6fb0722', + '7f0e37f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', + '7f0e37f1487f531b0b0bb0b6fb0722', '7f0e37f0e37f14898082b072297c35', '7ec967f0e37f14998082b0787b06bd', + '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e37f0e37f14898082b072297c35', + '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', + '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f149b0723b0787b0721', + '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14998082b0723b06bd', + '7f07e7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722', '7f0e37f0e366aa89801eb072297c35', + '7ec967f0e37f14998082b0723b06bd', '7f07e7f0e37f14998083b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722', + '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14898082b0723b02d5', '7f07e7f0e37f14998082b0787b0721', + '7f07e7f0e47f531b0723b0b6fb0722', '7f0e36665b66aa89801e9808297c35', '665f67f0e37f14898082b0723b02d5', + '7ec967f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0722', '7f0e36665b66a449801e9808297c35', + '665f67f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', + '7f0e36665b66a449801e9808297c35', '665f67f0e37f14898082b072297c35', '7ec967f0e37f14998082b0787b06bd', + '7f07e7f0e47f531b0723b0b6fb0721', '7f0e26665b66a449801e9808297c35', '665f67f0e37f1489801eb072297c35', + '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722'], + + /** + * 数字转中文速查表 + * @Array Of Property + * @trans ['日','一','二','三','四','五','六','七','八','九','十'] + * @return Cn string + */ + nStr1: ['\u65e5', '\u4e00', '\u4e8c', '\u4e09', '\u56db', '\u4e94', '\u516d', '\u4e03', '\u516b', '\u4e5d', '\u5341'], + + /** + * 日期转农历称呼速查表 + * @Array Of Property + * @trans ['初','十','廿','卅'] + * @return Cn string + */ + nStr2: ['\u521d', '\u5341', '\u5eff', '\u5345'], + + /** + * 月份转农历称呼速查表 + * @Array Of Property + * @trans ['正','一','二','三','四','五','六','七','八','九','十','冬','腊'] + * @return Cn string + */ + nStr3: ['\u6b63', '\u4e8c', '\u4e09', '\u56db', '\u4e94', '\u516d', '\u4e03', '\u516b', '\u4e5d', '\u5341', '\u51ac', '\u814a'], + + /** + * 返回农历y年一整年的总天数 + * @param lunar Year + * @return Number + * @eg:var count = calendar.lYearDays(1987) ;//count=387 + */ + lYearDays: function (y) { + var i; var sum = 348 + for (i = 0x8000; i > 0x8; i >>= 1) { sum += (this.lunarInfo[y - 1900] & i) ? 1 : 0 } + return (sum + this.leapDays(y)) + }, + + /** + * 返回农历y年闰月是哪个月;若y年没有闰月 则返回0 + * @param lunar Year + * @return Number (0-12) + * @eg:var leapMonth = calendar.leapMonth(1987) ;//leapMonth=6 + */ + leapMonth: function (y) { // 闰字编码 \u95f0 + return (this.lunarInfo[y - 1900] & 0xf) + }, + + /** + * 返回农历y年闰月的天数 若该年没有闰月则返回0 + * @param lunar Year + * @return Number (0、29、30) + * @eg:var leapMonthDay = calendar.leapDays(1987) ;//leapMonthDay=29 + */ + leapDays: function (y) { + if (this.leapMonth(y)) { + return ((this.lunarInfo[y - 1900] & 0x10000) ? 30 : 29) + } + return (0) + }, + + /** + * 返回农历y年m月(非闰月)的总天数,计算m为闰月时的天数请使用leapDays方法 + * @param lunar Year + * @return Number (-1、29、30) + * @eg:var MonthDay = calendar.monthDays(1987,9) ;//MonthDay=29 + */ + monthDays: function (y, m) { + if (m > 12 || m < 1) { return -1 }// 月份参数从1至12,参数错误返回-1 + return ((this.lunarInfo[y - 1900] & (0x10000 >> m)) ? 30 : 29) + }, + + /** + * 返回公历(!)y年m月的天数 + * @param solar Year + * @return Number (-1、28、29、30、31) + * @eg:var solarMonthDay = calendar.leapDays(1987) ;//solarMonthDay=30 + */ + solarDays: function (y, m) { + if (m > 12 || m < 1) { return -1 } // 若参数错误 返回-1 + var ms = m - 1 + if (ms == 1) { // 2月份的闰平规律测算后确认返回28或29 + return (((y % 4 == 0) && (y % 100 != 0) || (y % 400 == 0)) ? 29 : 28) + } else { + return (this.solarMonth[ms]) + } + }, + + /** + * 农历年份转换为干支纪年 + * @param lYear 农历年的年份数 + * @return Cn string + */ + toGanZhiYear: function (lYear) { + var ganKey = (lYear - 3) % 10 + var zhiKey = (lYear - 3) % 12 + if (ganKey == 0) ganKey = 10// 如果余数为0则为最后一个天干 + if (zhiKey == 0) zhiKey = 12// 如果余数为0则为最后一个地支 + return this.Gan[ganKey - 1] + this.Zhi[zhiKey - 1] + }, + + /** + * 公历月、日判断所属星座 + * @param cMonth [description] + * @param cDay [description] + * @return Cn string + */ + toAstro: function (cMonth, cDay) { + var s = '\u9b54\u7faf\u6c34\u74f6\u53cc\u9c7c\u767d\u7f8a\u91d1\u725b\u53cc\u5b50\u5de8\u87f9\u72ee\u5b50\u5904\u5973\u5929\u79e4\u5929\u874e\u5c04\u624b\u9b54\u7faf' + var arr = [20, 19, 21, 21, 21, 22, 23, 23, 23, 23, 22, 22] + return s.substr(cMonth * 2 - (cDay < arr[cMonth - 1] ? 2 : 0), 2) + '\u5ea7'// 座 + }, + + /** + * 传入offset偏移量返回干支 + * @param offset 相对甲子的偏移量 + * @return Cn string + */ + toGanZhi: function (offset) { + return this.Gan[offset % 10] + this.Zhi[offset % 12] + }, + + /** + * 传入公历(!)y年获得该年第n个节气的公历日期 + * @param y公历年(1900-2100);n二十四节气中的第几个节气(1~24);从n=1(小寒)算起 + * @return day Number + * @eg:var _24 = calendar.getTerm(1987,3) ;//_24=4;意即1987年2月4日立春 + */ + getTerm: function (y, n) { + if (y < 1900 || y > 2100) { return -1 } + if (n < 1 || n > 24) { return -1 } + var _table = this.sTermInfo[y - 1900] + var _info = [ + parseInt('0x' + _table.substr(0, 5)).toString(), + parseInt('0x' + _table.substr(5, 5)).toString(), + parseInt('0x' + _table.substr(10, 5)).toString(), + parseInt('0x' + _table.substr(15, 5)).toString(), + parseInt('0x' + _table.substr(20, 5)).toString(), + parseInt('0x' + _table.substr(25, 5)).toString() + ] + var _calday = [ + _info[0].substr(0, 1), + _info[0].substr(1, 2), + _info[0].substr(3, 1), + _info[0].substr(4, 2), + + _info[1].substr(0, 1), + _info[1].substr(1, 2), + _info[1].substr(3, 1), + _info[1].substr(4, 2), + + _info[2].substr(0, 1), + _info[2].substr(1, 2), + _info[2].substr(3, 1), + _info[2].substr(4, 2), + + _info[3].substr(0, 1), + _info[3].substr(1, 2), + _info[3].substr(3, 1), + _info[3].substr(4, 2), + + _info[4].substr(0, 1), + _info[4].substr(1, 2), + _info[4].substr(3, 1), + _info[4].substr(4, 2), + + _info[5].substr(0, 1), + _info[5].substr(1, 2), + _info[5].substr(3, 1), + _info[5].substr(4, 2) + ] + return parseInt(_calday[n - 1]) + }, + + /** + * 传入农历数字月份返回汉语通俗表示法 + * @param lunar month + * @return Cn string + * @eg:var cnMonth = calendar.toChinaMonth(12) ;//cnMonth='腊月' + */ + toChinaMonth: function (m) { // 月 => \u6708 + if (m > 12 || m < 1) { return -1 } // 若参数错误 返回-1 + var s = this.nStr3[m - 1] + s += '\u6708'// 加上月字 + return s + }, + + /** + * 传入农历日期数字返回汉字表示法 + * @param lunar day + * @return Cn string + * @eg:var cnDay = calendar.toChinaDay(21) ;//cnMonth='廿一' + */ + toChinaDay: function (d) { // 日 => \u65e5 + var s + switch (d) { + case 10: + s = '\u521d\u5341'; break + case 20: + s = '\u4e8c\u5341'; break + case 30: + s = '\u4e09\u5341'; break + default : + s = this.nStr2[Math.floor(d / 10)] + s += this.nStr1[d % 10] + } + return (s) + }, + + /** + * 年份转生肖[!仅能大致转换] => 精确划分生肖分界线是“立春” + * @param y year + * @return Cn string + * @eg:var animal = calendar.getAnimal(1987) ;//animal='兔' + */ + getAnimal: function (y) { + return this.Animals[(y - 4) % 12] + }, + + /** + * 传入阳历年月日获得详细的公历、农历object信息 <=>JSON + * @param y solar year + * @param m solar month + * @param d solar day + * @return JSON object + * @eg:console.log(calendar.solar2lunar(1987,11,01)); + */ + solar2lunar: function (y, m, d) { // 参数区间1900.1.31~2100.12.31 + // 年份限定、上限 + if (y < 1900 || y > 2100) { + return -1// undefined转换为数字变为NaN + } + // 公历传参最下限 + if (y == 1900 && m == 1 && d < 31) { + return -1 + } + // 未传参 获得当天 + if (!y) { + var objDate = new Date() + } else { + var objDate = new Date(y, parseInt(m) - 1, d) + } + var i; var leap = 0; var temp = 0 + // 修正ymd参数 + var y = objDate.getFullYear() + var m = objDate.getMonth() + 1 + var d = objDate.getDate() + var offset = (Date.UTC(objDate.getFullYear(), objDate.getMonth(), objDate.getDate()) - Date.UTC(1900, 0, 31)) / 86400000 + for (i = 1900; i < 2101 && offset > 0; i++) { + temp = this.lYearDays(i) + offset -= temp + } + if (offset < 0) { + offset += temp; i-- + } + + // 是否今天 + var isTodayObj = new Date() + var isToday = false + if (isTodayObj.getFullYear() == y && isTodayObj.getMonth() + 1 == m && isTodayObj.getDate() == d) { + isToday = true + } + // 星期几 + var nWeek = objDate.getDay() + var cWeek = this.nStr1[nWeek] + // 数字表示周几顺应天朝周一开始的惯例 + if (nWeek == 0) { + nWeek = 7 + } + // 农历年 + var year = i + var leap = this.leapMonth(i) // 闰哪个月 + var isLeap = false + + // 效验闰月 + for (i = 1; i < 13 && offset > 0; i++) { + // 闰月 + if (leap > 0 && i == (leap + 1) && isLeap == false) { + --i + isLeap = true; temp = this.leapDays(year) // 计算农历闰月天数 + } else { + temp = this.monthDays(year, i)// 计算农历普通月天数 + } + // 解除闰月 + if (isLeap == true && i == (leap + 1)) { isLeap = false } + offset -= temp + } + // 闰月导致数组下标重叠取反 + if (offset == 0 && leap > 0 && i == leap + 1) { + if (isLeap) { + isLeap = false + } else { + isLeap = true; --i + } + } + if (offset < 0) { + offset += temp; --i + } + // 农历月 + var month = i + // 农历日 + var day = offset + 1 + // 天干地支处理 + var sm = m - 1 + var gzY = this.toGanZhiYear(year) + + // 当月的两个节气 + // bugfix-2017-7-24 11:03:38 use lunar Year Param `y` Not `year` + var firstNode = this.getTerm(y, (m * 2 - 1))// 返回当月「节」为几日开始 + var secondNode = this.getTerm(y, (m * 2))// 返回当月「节」为几日开始 + + // 依据12节气修正干支月 + var gzM = this.toGanZhi((y - 1900) * 12 + m + 11) + if (d >= firstNode) { + gzM = this.toGanZhi((y - 1900) * 12 + m + 12) + } + + // 传入的日期的节气与否 + var isTerm = false + var Term = null + if (firstNode == d) { + isTerm = true + Term = this.solarTerm[m * 2 - 2] + } + if (secondNode == d) { + isTerm = true + Term = this.solarTerm[m * 2 - 1] + } + // 日柱 当月一日与 1900/1/1 相差天数 + var dayCyclical = Date.UTC(y, sm, 1, 0, 0, 0, 0) / 86400000 + 25567 + 10 + var gzD = this.toGanZhi(dayCyclical + d - 1) + // 该日期所属的星座 + var astro = this.toAstro(m, d) + + return { 'lYear': year, 'lMonth': month, 'lDay': day, 'Animal': this.getAnimal(year), 'IMonthCn': (isLeap ? '\u95f0' : '') + this.toChinaMonth(month), 'IDayCn': this.toChinaDay(day), 'cYear': y, 'cMonth': m, 'cDay': d, 'gzYear': gzY, 'gzMonth': gzM, 'gzDay': gzD, 'isToday': isToday, 'isLeap': isLeap, 'nWeek': nWeek, 'ncWeek': '\u661f\u671f' + cWeek, 'isTerm': isTerm, 'Term': Term, 'astro': astro } + }, + + /** + * 传入农历年月日以及传入的月份是否闰月获得详细的公历、农历object信息 <=>JSON + * @param y lunar year + * @param m lunar month + * @param d lunar day + * @param isLeapMonth lunar month is leap or not.[如果是农历闰月第四个参数赋值true即可] + * @return JSON object + * @eg:console.log(calendar.lunar2solar(1987,9,10)); + */ + lunar2solar: function (y, m, d, isLeapMonth) { // 参数区间1900.1.31~2100.12.1 + var isLeapMonth = !!isLeapMonth + var leapOffset = 0 + var leapMonth = this.leapMonth(y) + var leapDay = this.leapDays(y) + if (isLeapMonth && (leapMonth != m)) { return -1 }// 传参要求计算该闰月公历 但该年得出的闰月与传参的月份并不同 + if (y == 2100 && m == 12 && d > 1 || y == 1900 && m == 1 && d < 31) { return -1 }// 超出了最大极限值 + var day = this.monthDays(y, m) + var _day = day + // bugFix 2016-9-25 + // if month is leap, _day use leapDays method + if (isLeapMonth) { + _day = this.leapDays(y, m) + } + if (y < 1900 || y > 2100 || d > _day) { return -1 }// 参数合法性效验 + + // 计算农历的时间差 + var offset = 0 + for (var i = 1900; i < y; i++) { + offset += this.lYearDays(i) + } + var leap = 0; var isAdd = false + for (var i = 1; i < m; i++) { + leap = this.leapMonth(y) + if (!isAdd) { // 处理闰月 + if (leap <= i && leap > 0) { + offset += this.leapDays(y); isAdd = true + } + } + offset += this.monthDays(y, i) + } + // 转换闰月农历 需补充该年闰月的前一个月的时差 + if (isLeapMonth) { offset += day } + // 1900年农历正月一日的公历时间为1900年1月30日0时0分0秒(该时间也是本农历的最开始起始点) + var stmap = Date.UTC(1900, 1, 30, 0, 0, 0) + var calObj = new Date((offset + d - 31) * 86400000 + stmap) + var cY = calObj.getUTCFullYear() + var cM = calObj.getUTCMonth() + 1 + var cD = calObj.getUTCDate() + + return this.solar2lunar(cY, cM, cD) + } +} + +export default calendar diff --git a/src/uni_modules/uni-calendar/components/uni-calendar/i18n/en.json b/src/uni_modules/uni-calendar/components/uni-calendar/i18n/en.json new file mode 100644 index 0000000..fcbd13c --- /dev/null +++ b/src/uni_modules/uni-calendar/components/uni-calendar/i18n/en.json @@ -0,0 +1,12 @@ +{ + "uni-calender.ok": "ok", + "uni-calender.cancel": "cancel", + "uni-calender.today": "today", + "uni-calender.MON": "MON", + "uni-calender.TUE": "TUE", + "uni-calender.WED": "WED", + "uni-calender.THU": "THU", + "uni-calender.FRI": "FRI", + "uni-calender.SAT": "SAT", + "uni-calender.SUN": "SUN" +} diff --git a/src/uni_modules/uni-calendar/components/uni-calendar/i18n/index.js b/src/uni_modules/uni-calendar/components/uni-calendar/i18n/index.js new file mode 100644 index 0000000..de7509c --- /dev/null +++ b/src/uni_modules/uni-calendar/components/uni-calendar/i18n/index.js @@ -0,0 +1,8 @@ +import en from './en.json' +import zhHans from './zh-Hans.json' +import zhHant from './zh-Hant.json' +export default { + en, + 'zh-Hans': zhHans, + 'zh-Hant': zhHant +} diff --git a/src/uni_modules/uni-calendar/components/uni-calendar/i18n/zh-Hans.json b/src/uni_modules/uni-calendar/components/uni-calendar/i18n/zh-Hans.json new file mode 100644 index 0000000..1ca43de --- /dev/null +++ b/src/uni_modules/uni-calendar/components/uni-calendar/i18n/zh-Hans.json @@ -0,0 +1,12 @@ +{ + "uni-calender.ok": "确定", + "uni-calender.cancel": "取消", + "uni-calender.today": "今日", + "uni-calender.SUN": "日", + "uni-calender.MON": "一", + "uni-calender.TUE": "二", + "uni-calender.WED": "三", + "uni-calender.THU": "四", + "uni-calender.FRI": "五", + "uni-calender.SAT": "六" +} diff --git a/src/uni_modules/uni-calendar/components/uni-calendar/i18n/zh-Hant.json b/src/uni_modules/uni-calendar/components/uni-calendar/i18n/zh-Hant.json new file mode 100644 index 0000000..e0fe33b --- /dev/null +++ b/src/uni_modules/uni-calendar/components/uni-calendar/i18n/zh-Hant.json @@ -0,0 +1,12 @@ +{ + "uni-calender.ok": "確定", + "uni-calender.cancel": "取消", + "uni-calender.today": "今日", + "uni-calender.SUN": "日", + "uni-calender.MON": "一", + "uni-calender.TUE": "二", + "uni-calender.WED": "三", + "uni-calender.THU": "四", + "uni-calender.FRI": "五", + "uni-calender.SAT": "六" +} diff --git a/src/uni_modules/uni-calendar/components/uni-calendar/uni-calendar-item.vue b/src/uni_modules/uni-calendar/components/uni-calendar/uni-calendar-item.vue new file mode 100644 index 0000000..a54135e --- /dev/null +++ b/src/uni_modules/uni-calendar/components/uni-calendar/uni-calendar-item.vue @@ -0,0 +1,187 @@ + + + + + diff --git a/src/uni_modules/uni-calendar/components/uni-calendar/uni-calendar.vue b/src/uni_modules/uni-calendar/components/uni-calendar/uni-calendar.vue new file mode 100644 index 0000000..0beebfb --- /dev/null +++ b/src/uni_modules/uni-calendar/components/uni-calendar/uni-calendar.vue @@ -0,0 +1,567 @@ + + + + + diff --git a/src/uni_modules/uni-calendar/components/uni-calendar/util.js b/src/uni_modules/uni-calendar/components/uni-calendar/util.js new file mode 100644 index 0000000..e0c5103 --- /dev/null +++ b/src/uni_modules/uni-calendar/components/uni-calendar/util.js @@ -0,0 +1,360 @@ +import CALENDAR from './calendar.js' + +class Calendar { + constructor({ + date, + selected, + startDate, + endDate, + range + } = {}) { + // 当前日期 + this.date = this.getDate(new Date()) // 当前初入日期 + // 打点信息 + this.selected = selected || []; + // 范围开始 + this.startDate = startDate + // 范围结束 + this.endDate = endDate + this.range = range + // 多选状态 + this.cleanMultipleStatus() + // 每周日期 + this.weeks = {} + // this._getWeek(this.date.fullDate) + } + /** + * 设置日期 + * @param {Object} date + */ + setDate(date) { + this.selectDate = this.getDate(date) + this._getWeek(this.selectDate.fullDate) + } + + /** + * 清理多选状态 + */ + cleanMultipleStatus() { + this.multipleStatus = { + before: '', + after: '', + data: [] + } + } + + /** + * 重置开始日期 + */ + resetSatrtDate(startDate) { + // 范围开始 + this.startDate = startDate + + } + + /** + * 重置结束日期 + */ + resetEndDate(endDate) { + // 范围结束 + this.endDate = endDate + } + + /** + * 获取任意时间 + */ + getDate(date, AddDayCount = 0, str = 'day') { + if (!date) { + date = new Date() + } + if (typeof date !== 'object') { + date = date.replace(/-/g, '/') + } + const dd = new Date(date) + switch (str) { + case 'day': + dd.setDate(dd.getDate() + AddDayCount) // 获取AddDayCount天后的日期 + break + case 'month': + if (dd.getDate() === 31 && AddDayCount>0) { + dd.setDate(dd.getDate() + AddDayCount) + } else { + const preMonth = dd.getMonth() + dd.setMonth(preMonth + AddDayCount) // 获取AddDayCount天后的日期 + const nextMonth = dd.getMonth() + // 处理 pre 切换月份目标月份为2月没有当前日(30 31) 切换错误问题 + if(AddDayCount<0 && preMonth!==0 && nextMonth-preMonth>AddDayCount){ + dd.setMonth(nextMonth+(nextMonth-preMonth+AddDayCount)) + } + // 处理 next 切换月份目标月份为2月没有当前日(30 31) 切换错误问题 + if(AddDayCount>0 && nextMonth-preMonth>AddDayCount){ + dd.setMonth(nextMonth-(nextMonth-preMonth-AddDayCount)) + } + } + break + case 'year': + dd.setFullYear(dd.getFullYear() + AddDayCount) // 获取AddDayCount天后的日期 + break + } + const y = dd.getFullYear() + const m = dd.getMonth() + 1 < 10 ? '0' + (dd.getMonth() + 1) : dd.getMonth() + 1 // 获取当前月份的日期,不足10补0 + const d = dd.getDate() < 10 ? '0' + dd.getDate() : dd.getDate() // 获取当前几号,不足10补0 + return { + fullDate: y + '-' + m + '-' + d, + year: y, + month: m, + date: d, + day: dd.getDay() + } + } + + + /** + * 获取上月剩余天数 + */ + _getLastMonthDays(firstDay, full) { + let dateArr = [] + for (let i = firstDay; i > 0; i--) { + const beforeDate = new Date(full.year, full.month - 1, -i + 1).getDate() + dateArr.push({ + date: beforeDate, + month: full.month - 1, + lunar: this.getlunar(full.year, full.month - 1, beforeDate), + disable: true + }) + } + return dateArr + } + /** + * 获取本月天数 + */ + _currentMonthDys(dateData, full) { + let dateArr = [] + let fullDate = this.date.fullDate + for (let i = 1; i <= dateData; i++) { + let nowDate = full.year + '-' + (full.month < 10 ? + full.month : full.month) + '-' + (i < 10 ? + '0' + i : i) + // 是否今天 + let isDay = fullDate === nowDate + // 获取打点信息 + let info = this.selected && this.selected.find((item) => { + if (this.dateEqual(nowDate, item.date)) { + return item + } + }) + + // 日期禁用 + let disableBefore = true + let disableAfter = true + if (this.startDate) { + // let dateCompBefore = this.dateCompare(this.startDate, fullDate) + // disableBefore = this.dateCompare(dateCompBefore ? this.startDate : fullDate, nowDate) + disableBefore = this.dateCompare(this.startDate, nowDate) + } + + if (this.endDate) { + // let dateCompAfter = this.dateCompare(fullDate, this.endDate) + // disableAfter = this.dateCompare(nowDate, dateCompAfter ? this.endDate : fullDate) + disableAfter = this.dateCompare(nowDate, this.endDate) + } + let multiples = this.multipleStatus.data + let checked = false + let multiplesStatus = -1 + if (this.range) { + if (multiples) { + multiplesStatus = multiples.findIndex((item) => { + return this.dateEqual(item, nowDate) + }) + } + if (multiplesStatus !== -1) { + checked = true + } + } + let data = { + fullDate: nowDate, + year: full.year, + date: i, + multiple: this.range ? checked : false, + beforeMultiple: this.dateEqual(this.multipleStatus.before, nowDate), + afterMultiple: this.dateEqual(this.multipleStatus.after, nowDate), + month: full.month, + lunar: this.getlunar(full.year, full.month, i), + disable: !(disableBefore && disableAfter), + isDay + } + if (info) { + data.extraInfo = info + } + + dateArr.push(data) + } + return dateArr + } + /** + * 获取下月天数 + */ + _getNextMonthDays(surplus, full) { + let dateArr = [] + for (let i = 1; i < surplus + 1; i++) { + dateArr.push({ + date: i, + month: Number(full.month) + 1, + lunar: this.getlunar(full.year, Number(full.month) + 1, i), + disable: true + }) + } + return dateArr + } + + /** + * 获取当前日期详情 + * @param {Object} date + */ + getInfo(date) { + if (!date) { + date = new Date() + } + const dateInfo = this.canlender.find(item => item.fullDate === this.getDate(date).fullDate) + return dateInfo + } + + /** + * 比较时间大小 + */ + dateCompare(startDate, endDate) { + // 计算截止时间 + startDate = new Date(startDate.replace('-', '/').replace('-', '/')) + // 计算详细项的截止时间 + endDate = new Date(endDate.replace('-', '/').replace('-', '/')) + if (startDate <= endDate) { + return true + } else { + return false + } + } + + /** + * 比较时间是否相等 + */ + dateEqual(before, after) { + // 计算截止时间 + before = new Date(before.replace('-', '/').replace('-', '/')) + // 计算详细项的截止时间 + after = new Date(after.replace('-', '/').replace('-', '/')) + if (before.getTime() - after.getTime() === 0) { + return true + } else { + return false + } + } + + + /** + * 获取日期范围内所有日期 + * @param {Object} begin + * @param {Object} end + */ + geDateAll(begin, end) { + var arr = [] + var ab = begin.split('-') + var ae = end.split('-') + var db = new Date() + db.setFullYear(ab[0], ab[1] - 1, ab[2]) + var de = new Date() + de.setFullYear(ae[0], ae[1] - 1, ae[2]) + var unixDb = db.getTime() - 24 * 60 * 60 * 1000 + var unixDe = de.getTime() - 24 * 60 * 60 * 1000 + for (var k = unixDb; k <= unixDe;) { + k = k + 24 * 60 * 60 * 1000 + arr.push(this.getDate(new Date(parseInt(k))).fullDate) + } + return arr + } + /** + * 计算阴历日期显示 + */ + getlunar(year, month, date) { + return CALENDAR.solar2lunar(year, month, date) + } + /** + * 设置打点 + */ + setSelectInfo(data, value) { + this.selected = value + this._getWeek(data) + } + + /** + * 获取多选状态 + */ + setMultiple(fullDate) { + let { + before, + after + } = this.multipleStatus + + if (!this.range) return + if (before && after) { + this.multipleStatus.before = fullDate + this.multipleStatus.after = '' + this.multipleStatus.data = [] + } else { + if (!before) { + this.multipleStatus.before = fullDate + } else { + this.multipleStatus.after = fullDate + if (this.dateCompare(this.multipleStatus.before, this.multipleStatus.after)) { + this.multipleStatus.data = this.geDateAll(this.multipleStatus.before, this.multipleStatus.after); + } else { + this.multipleStatus.data = this.geDateAll(this.multipleStatus.after, this.multipleStatus.before); + } + } + } + this._getWeek(fullDate) + } + + /** + * 获取每周数据 + * @param {Object} dateData + */ + _getWeek(dateData) { + const { + year, + month + } = this.getDate(dateData) + let firstDay = new Date(year, month - 1, 1).getDay() + let currentDay = new Date(year, month, 0).getDate() + let dates = { + lastMonthDays: this._getLastMonthDays(firstDay, this.getDate(dateData)), // 上个月末尾几天 + currentMonthDys: this._currentMonthDys(currentDay, this.getDate(dateData)), // 本月天数 + nextMonthDays: [], // 下个月开始几天 + weeks: [] + } + let canlender = [] + const surplus = 42 - (dates.lastMonthDays.length + dates.currentMonthDys.length) + dates.nextMonthDays = this._getNextMonthDays(surplus, this.getDate(dateData)) + canlender = canlender.concat(dates.lastMonthDays, dates.currentMonthDys, dates.nextMonthDays) + let weeks = {} + // 拼接数组 上个月开始几天 + 本月天数+ 下个月开始几天 + for (let i = 0; i < canlender.length; i++) { + if (i % 7 === 0) { + weeks[parseInt(i / 7)] = new Array(7) + } + weeks[parseInt(i / 7)][i % 7] = canlender[i] + } + this.canlender = canlender + this.weeks = weeks + } + + //静态方法 + // static init(date) { + // if (!this.instance) { + // this.instance = new Calendar(date); + // } + // return this.instance; + // } +} + + +export default Calendar diff --git a/src/uni_modules/uni-calendar/package.json b/src/uni_modules/uni-calendar/package.json new file mode 100644 index 0000000..ec924e9 --- /dev/null +++ b/src/uni_modules/uni-calendar/package.json @@ -0,0 +1,86 @@ +{ + "id": "uni-calendar", + "displayName": "uni-calendar 日历", + "version": "1.4.12", + "description": "日历组件", + "keywords": [ + "uni-ui", + "uniui", + "日历", + "", + "打卡", + "日历选择" +], + "repository": "https://github.com/dcloudio/uni-ui", + "engines": { + "HBuilderX": "" + }, + "directories": { + "example": "../../temps/example_temps" + }, +"dcloudext": { + "sale": { + "regular": { + "price": "0.00" + }, + "sourcecode": { + "price": "0.00" + } + }, + "contact": { + "qq": "" + }, + "declaration": { + "ads": "无", + "data": "无", + "permissions": "无" + }, + "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui", + "type": "component-vue" + }, + "uni_modules": { + "dependencies": [], + "encrypt": [], + "platforms": { + "cloud": { + "tcb": "y", + "aliyun": "y", + "alipay": "n" + }, + "client": { + "App": { + "app-vue": "y", + "app-nvue": "y" + }, + "H5-mobile": { + "Safari": "y", + "Android Browser": "y", + "微信浏览器(Android)": "y", + "QQ浏览器(Android)": "y" + }, + "H5-pc": { + "Chrome": "y", + "IE": "y", + "Edge": "y", + "Firefox": "y", + "Safari": "y" + }, + "小程序": { + "微信": "y", + "阿里": "y", + "百度": "y", + "字节跳动": "y", + "QQ": "y" + }, + "快应用": { + "华为": "u", + "联盟": "u" + }, + "Vue": { + "vue2": "y", + "vue3": "y" + } + } + } + } +} diff --git a/src/uni_modules/uni-calendar/readme.md b/src/uni_modules/uni-calendar/readme.md new file mode 100644 index 0000000..4e1748c --- /dev/null +++ b/src/uni_modules/uni-calendar/readme.md @@ -0,0 +1,103 @@ + + +## Calendar 日历 +> **组件名:uni-calendar** +> 代码块: `uCalendar` + + +日历组件 + +> **注意事项** +> 为了避免错误使用,给大家带来不好的开发体验,请在使用组件前仔细阅读下面的注意事项,可以帮你避免一些错误。 +> - 本组件农历转换使用的js是 [@1900-2100区间内的公历、农历互转](https://github.com/jjonline/calendar.js) +> - 仅支持自定义组件模式 +> - `date`属性传入的应该是一个 String ,如: 2019-06-27 ,而不是 new Date() +> - 通过 `insert` 属性来确定当前的事件是 @change 还是 @confirm 。理应合并为一个事件,但是为了区分模式,现使用两个事件,这里需要注意 +> - 弹窗模式下无法阻止后面的元素滚动,如有需要阻止,请在弹窗弹出后,手动设置滚动元素为不可滚动 + + +### 安装方式 + +本组件符合[easycom](https://uniapp.dcloud.io/collocation/pages?id=easycom)规范,`HBuilderX 2.5.5`起,只需将本组件导入项目,在页面`template`中即可直接使用,无需在页面中`import`和注册`components`。 + +如需通过`npm`方式使用`uni-ui`组件,另见文档:[https://ext.dcloud.net.cn/plugin?id=55](https://ext.dcloud.net.cn/plugin?id=55) + +### 基本用法 + +在 ``template`` 中使用组件 + +```html + + + +``` + +### 通过方法打开日历 + +需要设置 `insert` 为 `false` + +```html + + + + +``` + +```javascript + +export default { + data() { + return {}; + }, + methods: { + open(){ + this.$refs.calendar.open(); + }, + confirm(e) { + console.log(e); + } + } +}; + +``` + + +## API + +### Calendar Props + +| 属性名 | 类型 | 默认值| 说明 | +| - | - | - | - | +| date | String |- | 自定义当前时间,默认为今天 | +| lunar | Boolean | false | 显示农历 | +| startDate | String |- | 日期选择范围-开始日期 | +| endDate | String |- | 日期选择范围-结束日期 | +| range | Boolean | false | 范围选择 | +| insert | Boolean | false | 插入模式,可选值,ture:插入模式;false:弹窗模式;默认为插入模式 | +|clearDate |Boolean |true |弹窗模式是否清空上次选择内容 | +| selected | Array |- | 打点,期待格式[{date: '2019-06-27', info: '签到', data: { custom: '自定义信息', name: '自定义消息头',xxx:xxx... }}] | +|showMonth | Boolean | true | 是否显示月份为背景 | + +### Calendar Events + +| 事件名 | 说明 |返回值| +| - | - | - | +| open | 弹出日历组件,`insert :false` 时生效|- | + + + + + +## 组件示例 + +点击查看:[https://hellouniapp.dcloud.net.cn/pages/extUI/calendar/calendar](https://hellouniapp.dcloud.net.cn/pages/extUI/calendar/calendar) diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..11fffd2 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "@vue/tsconfig/tsconfig.json", + "compilerOptions": { + "sourceMap": true, + "baseUrl": ".", + "paths": { + "@/*": ["./src/*"] + }, + "lib": ["esnext", "dom"], + "types": ["@dcloudio/types"] + }, + "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"] +} diff --git a/unpackage/res/icons/1024x1024.png b/unpackage/res/icons/1024x1024.png new file mode 100644 index 0000000000000000000000000000000000000000..79ca32267ac5bc8b780426b556741f9b5a70afbb GIT binary patch literal 210169 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%0D{G@qJ>(h+1 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

  • ko*1@8Qd^<5y1@2MgR|8-kACXsm^=9r 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/e0/e02793c7a6efb2c1e7a5c00d1144459f0cedcd05.svn-base b/.svn/pristine/e0/e02793c7a6efb2c1e7a5c00d1144459f0cedcd05.svn-base new file mode 100644 index 0000000..979652d --- /dev/null +++ b/.svn/pristine/e0/e02793c7a6efb2c1e7a5c00d1144459f0cedcd05.svn-base @@ -0,0 +1,511 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/e0/e06270e352ed92d147bf3879a7c1fe0c5d4eccf0.svn-base b/.svn/pristine/e0/e06270e352ed92d147bf3879a7c1fe0c5d4eccf0.svn-base new file mode 100644 index 0000000..01a51cc --- /dev/null +++ b/.svn/pristine/e0/e06270e352ed92d147bf3879a7c1fe0c5d4eccf0.svn-base @@ -0,0 +1,341 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/e0/e08f21dbec983012ec1c88d40eaa2365fe19af11.svn-base b/.svn/pristine/e0/e08f21dbec983012ec1c88d40eaa2365fe19af11.svn-base new file mode 100644 index 0000000..11b3dab --- /dev/null +++ b/.svn/pristine/e0/e08f21dbec983012ec1c88d40eaa2365fe19af11.svn-base @@ -0,0 +1,361 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/e0/e0b7f8da46357ae3944a006b6be1abdcfc0a8078.svn-base b/.svn/pristine/e0/e0b7f8da46357ae3944a006b6be1abdcfc0a8078.svn-base new file mode 100644 index 0000000..6fb369e --- /dev/null +++ b/.svn/pristine/e0/e0b7f8da46357ae3944a006b6be1abdcfc0a8078.svn-base @@ -0,0 +1,807 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/e1/e13d7812b409c48b4067f28bd8977017962f2f1b.svn-base b/.svn/pristine/e1/e13d7812b409c48b4067f28bd8977017962f2f1b.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..0ed263745239799cb43996f6e00af7375de97df8 GIT binary patch literal 465 zcmV;?0WSWDP)EDi@*+;7af|m&^D=%lv~+V9DFK zuJDPpTOBG_vG!P#9zcKI{2Axpo*}SD{;VAwyuw*GT4k zb6YHO-B2O$&4;38zJ`&OZvX%Q|Nq^dziR*h00v1!K~w_(onX(D3ZDh*00000NkvXX Hu0mjf=8(m8 literal 0 HcmV?d00001 diff --git a/.svn/pristine/e1/e1e979a2df5e6faf6a2f4f17ce7550119e3d1d8a.svn-base b/.svn/pristine/e1/e1e979a2df5e6faf6a2f4f17ce7550119e3d1d8a.svn-base new file mode 100644 index 0000000..0428b35 --- /dev/null +++ b/.svn/pristine/e1/e1e979a2df5e6faf6a2f4f17ce7550119e3d1d8a.svn-base @@ -0,0 +1,203 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [ + { + "root": "pages/order", + "pages": [ + { + "path": "orderDetail", + "style": { + "navigationBarTitleText": "项目中心", + "navigationStyle": "custom" + } + }, + { + "path" : "navigation", + "style" : + { + "navigationBarTitleText" : "导航", + "navigationStyle": "custom" + } + }, + { + "path" : "abnormal", + "style" : + { + "navigationBarTitleText" : "上报异常", + "navigationStyle": "custom" + } + }, + { + "path" : "grabOrder", + "style" : + { + "navigationBarTitleText" : "订单详情" + } + }, + { + "path" : "incomeDetail", + "style" : + { + "navigationBarTitleText" : "收入详情", + "navigationStyle": "custom" + } + }, + { + "path" : "withdraw", + "style" : + { + "navigationBarTitleText" : "提现申请" + } + }, + { + "path" : "finish", + "style" : + { + "navigationBarTitleText" : "订单完成" + } + }, + { + "path" : "upAbnormal", + "style" : + { + "navigationBarTitleText" : "异常上报" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path" : "edit", + "style" : + { + "navigationBarTitleText" : "编辑资料" + } + }, + { + "path" : "statusContro", + "style" : + { + "navigationBarTitleText" : "上线管理" + } + }, + { + "path" : "myKF", + "style" : + { + "navigationBarTitleText" : "联系客服", + "navigationStyle": "custom" + } + }, + { + "path" : "AbnormalList", + "style" : + { + "navigationBarTitleText" : "异常订单" + } + }, + { + "path" : "check", + "style" : + { + "navigationBarTitleText" : "签到奖励" + } + }, + { + "path" : "abnormalDetail", + "style" : + { + "navigationBarTitleText" : "异常详情" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/task", + "iconPath": "static/tab/task.png", + "selectedIconPath": "static/tab/tasked.png", + "text": "任务" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/e2/e251f0a83157231ab6a043ad9c7c511e05515a92.svn-base b/.svn/pristine/e2/e251f0a83157231ab6a043ad9c7c511e05515a92.svn-base new file mode 100644 index 0000000..b3a6bcc --- /dev/null +++ b/.svn/pristine/e2/e251f0a83157231ab6a043ad9c7c511e05515a92.svn-base @@ -0,0 +1,332 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/e2/e2cfa4af150c64903852af71300ffaf4696eded1.svn-base b/.svn/pristine/e2/e2cfa4af150c64903852af71300ffaf4696eded1.svn-base new file mode 100644 index 0000000..4029251 --- /dev/null +++ b/.svn/pristine/e2/e2cfa4af150c64903852af71300ffaf4696eded1.svn-base @@ -0,0 +1,241 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [ + { + "root": "pages/order", + "pages": [ + { + "path": "orderDetail", + "style": { + "navigationBarTitleText": "项目中心", + "navigationStyle": "custom" + } + }, + { + "path" : "navigation", + "style" : + { + "navigationBarTitleText" : "导航", + "navigationStyle": "custom" + } + }, + { + "path" : "abnormal", + "style" : + { + "navigationBarTitleText" : "上报异常", + "navigationStyle": "custom" + } + }, + { + "path" : "grabOrder", + "style" : + { + "navigationBarTitleText" : "订单详情" + } + }, + { + "path" : "incomeDetail", + "style" : + { + "navigationBarTitleText" : "收入详情", + "navigationStyle": "custom" + } + }, + { + "path" : "withdraw", + "style" : + { + "navigationBarTitleText" : "提现申请" + } + }, + { + "path" : "finish", + "style" : + { + "navigationBarTitleText" : "订单完成" + } + }, + { + "path" : "upAbnormal", + "style" : + { + "navigationBarTitleText" : "异常上报" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path" : "edit", + "style" : + { + "navigationBarTitleText" : "编辑资料" + } + }, + { + "path" : "statusContro", + "style" : + { + "navigationBarTitleText" : "上线管理" + } + }, + { + "path" : "myKF", + "style" : + { + "navigationBarTitleText" : "联系客服", + "navigationStyle": "custom" + } + }, + { + "path" : "AbnormalList", + "style" : + { + "navigationBarTitleText" : "异常订单" + } + }, + { + "path" : "check", + "style" : + { + "navigationBarTitleText" : "签到奖励" + } + }, + { + "path" : "abnormalDetail", + "style" : + { + "navigationBarTitleText" : "异常详情" + } + }, + { + "path" : "security", + "style" : + { + "navigationBarTitleText" : "账号与安全" + } + }, + { + "path" : "authentication", + "style" : + { + "navigationBarTitleText" : "实名认证" + } + }, + { + "path" : "login", + "style" : + { + "navigationBarTitleText" : "登录", + "navigationStyle": "custom" + } + }, + { + "path" : "noticeList", + "style" : + { + "navigationBarTitleText" : "消息通知", + "navigationStyle": "custom" + } + }, + { + "path" : "setConnect", + "style" : + { + "navigationBarTitleText" : "紧急联系人" + } + }, + { + "path" : "evaluate", + "style" : + { + "navigationBarTitleText" : "评价中心" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/e3/e3825b19b25446f9d29711900b8e8f0c94913c30.svn-base b/.svn/pristine/e3/e3825b19b25446f9d29711900b8e8f0c94913c30.svn-base new file mode 100644 index 0000000..4ae6958 --- /dev/null +++ b/.svn/pristine/e3/e3825b19b25446f9d29711900b8e8f0c94913c30.svn-base @@ -0,0 +1,44 @@ +import { Service } from '@/Service/Service'; +/*****首页接口*****/ +class CNRiderDataService { + private static GetPubRiderInfoPath : string = '/Rider/GetRiderInfo'; + /*****个人信息*****/ + static GetRiderInfo() { + var result = Service.Request(this.GetPubRiderInfoPath, "GET", {}); + return result; + } + + private static CompleteRiderPath : string = '/Rider/CompleteRider'; + /*****完善信息接口*****/ + static CompleteRider(nick:string,headImg:string,idenNumber:string,sex:string,age:number,identityA:string,identityB:string,province:string,city:string,region:string,lat:number,lon:number) { + var result = Service.Request(this.CompleteRiderPath, "POST", {nick,headImg,idenNumber,sex,age,identityA,identityB,province,city,region,lat,lon}); + return result; + } + + private static GetAddressInfoPath : string = '/User/GetAddressInfo'; + /*****根据经纬度获取地址信息*****/ + static GetAddressInfo(lat:number,lon:number) { + var result = Service.Request(this.GetAddressInfoPath, "GET", {lat,lon}); + return result; + } + + private static GetRiderAccInfoPath : string = '/Rider/GetRiderAccInfo'; + /*****获取账户信息*****/ + static GetRiderAccInfo() { + var result = Service.Request(this.GetRiderAccInfoPath, "GET", {}); + return result; + } + + private static UpdateRiderUnitPath : string = '/Rider/UpdateRiderUnit'; + /*****修改基础信息*****/ + static UpdateRiderUnit(headImg:string,sex:string,age:number) { + var result = Service.Request(this.UpdateRiderUnitPath, "POST", {headImg,sex,age}); + return result; + } + + +} +export { + Service, + CNRiderDataService +} \ No newline at end of file diff --git a/.svn/pristine/e4/e4617cede7f666e6a2149feb793b6309388fd4ab.svn-base b/.svn/pristine/e4/e4617cede7f666e6a2149feb793b6309388fd4ab.svn-base new file mode 100644 index 0000000..a916c4b --- /dev/null +++ b/.svn/pristine/e4/e4617cede7f666e6a2149feb793b6309388fd4ab.svn-base @@ -0,0 +1,332 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/e4/e4752b7aa411752f3307a2e3a1182dc66f8f4943.svn-base b/.svn/pristine/e4/e4752b7aa411752f3307a2e3a1182dc66f8f4943.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..bb936974e4b7842b416779156553134b00115512 GIT binary patch literal 2193 zcmV;C2yXX@P)yd+dvA>t= z-T~pLIGpGi#6Pnsu9cjzj;%c9{JjD~7~d$l5GB7fii$c9o8F@x50_2mz03Ck2!bx!!YCCe zq0mN|x4t!HN?xw#`|RWJ$a9!aRj)e916hi7(J(SD5iJuon=7HmLmi_PJiL%l%|V2!(ls z6F3eF2UbBKuo2o?p;}<-qD?iovR5qo^uD*LwC-Rh2_Rj-D79*W!Y=?uWz>6#vhR@X z&Vk^ZG5AW!I|^eB0N?WKGu3#QvbAr5Vr#dH{G9?J44k0Poq;PE7(tztnhR+|X|Y}i zG+XGW#?FAWfbk}l6dy)vDgYeIUKe(D0t7I|5XNU@M1xU^hmrCIeMfyDSlW)U?H$Mx zhV?-nul4`aa%_Z)5n+uD+GZb0#Ccx{ENPn z0}9HHjL&z?I{(xg5EGc=5jVb#H+{hDnm} zj11>w1VlC$2w?=l&MsHu1AKuGb|@(9dhHAdVPIsqCL^Q)V@2TR?2fuQyH=0ha zi48G2JSwP>`Qkb%)fKe@LKvK-0Ye2+{R&5o!}X>2CfCG>SS*!{SWK*l*%mFeqGr_2R%bom3&{5q{ep(s!McHRANL?{je}*z1KBcW z#%>Fjno&DyXsffD-v|W9!2t~ZO2exS*FWQZ#^39C4`m0t(KvPm#V^KfyEV2F|HZi^fe-}5 zzYrzw)ygl%;p;WnCK+3>3Hvi7`%5--va2;YAV#Rgv?A;5$F0TU%^3PHeQj+lu7RY0 z7=a)ZLhR$)TVMoUaKL1Y&8Q3madzI8Avy}23yTQf~D)G zVFuETuEAC_kYMS$X_$dHb?v_}1L1l_B>^szNwi7MSV!78E$QKdYzq@`eO3p)*7TMYCLDTmZz9Z(J zq<(4r&jDKl`A6hZ*`Y{Y?iBbe()#~FX$|CN@w>aWDVdU&TLorIt!^`XKC}ixqo1_! z_Y_+XN45<}G5d*W%N5G}v*Uk+b2SVCV#sSbf#FU^3J#4|oM4T9qO7z4_b{8#u7^-9V%b%}}<|~|=(O=j- zfhH%RFknZ5fv_ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/e5/e5e923511b54df04fcc6045b1f78c2013faebb72.svn-base b/.svn/pristine/e5/e5e923511b54df04fcc6045b1f78c2013faebb72.svn-base new file mode 100644 index 0000000..31cc8ef --- /dev/null +++ b/.svn/pristine/e5/e5e923511b54df04fcc6045b1f78c2013faebb72.svn-base @@ -0,0 +1,43 @@ +import { Service } from '@/Service/Service'; +/*****登录接口*****/ +class CNRiderLoginService { + private static RiderLoginPath : string = '/Login/RiderLogin'; + /*****登录注册*****/ + static RiderLogin(login : any) { + var result = Service.Request(this.RiderLoginPath, "POST", login); + return result; + } + + private static GetKefuInfoPath : string = '/Home/GetKefuInfo'; + /*****获取客服电话*****/ + static GetKefuInfo() { + var result = Service.Request(this.GetKefuInfoPath, "GET", {}); + return result; + } + + + private static GetPrivacyPath : string = '/Home/GetPrivacy'; + /*****用户协议*****/ + static GetPrivacy(type : number) { + var result = Service.Request(this.GetPrivacyPath, "GET", { type }); + return result; + } + + private static SendUserSmsPath : string = '/Login/SendUserSms'; + /*****发送验证码*****/ + static SendUserSms(phone : string, code : string) { + var result = Service.Request(this.SendUserSmsPath, "POST", { phone, code }); + return result; + } + + private static GetAppVersionPath : string = '/Login/GetAppVersion'; + /*****版本更新*****/ + static GetAppVersion(version : number, type : string) { + var result = Service.Request(this.GetAppVersionPath, "GET", { version, type }); + return result; + } +} +export { + Service, + CNRiderLoginService +} \ No newline at end of file diff --git a/.svn/pristine/e6/e6164dc28e9fff99c06fed10909ad1c760f8e885.svn-base b/.svn/pristine/e6/e6164dc28e9fff99c06fed10909ad1c760f8e885.svn-base new file mode 100644 index 0000000..5fd212c --- /dev/null +++ b/.svn/pristine/e6/e6164dc28e9fff99c06fed10909ad1c760f8e885.svn-base @@ -0,0 +1,782 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/e6/e660d31798457155df12511588ebd4bf89126167.svn-base b/.svn/pristine/e6/e660d31798457155df12511588ebd4bf89126167.svn-base new file mode 100644 index 0000000..0655874 --- /dev/null +++ b/.svn/pristine/e6/e660d31798457155df12511588ebd4bf89126167.svn-base @@ -0,0 +1,592 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/e6/e660e0aa382866e564305f202104d73d4c3229a6.svn-base b/.svn/pristine/e6/e660e0aa382866e564305f202104d73d4c3229a6.svn-base new file mode 100644 index 0000000..14d8d35 --- /dev/null +++ b/.svn/pristine/e6/e660e0aa382866e564305f202104d73d4c3229a6.svn-base @@ -0,0 +1,218 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/e9/e97e6b77f4f381473458a35ba71aed6efbee6f42.svn-base b/.svn/pristine/e9/e97e6b77f4f381473458a35ba71aed6efbee6f42.svn-base new file mode 100644 index 0000000..701684e --- /dev/null +++ b/.svn/pristine/e9/e97e6b77f4f381473458a35ba71aed6efbee6f42.svn-base @@ -0,0 +1,111 @@ +import { Service } from '@/Service/Service'; +/*****订单接口*****/ +class CNRiderOrderService { + private static GetRiderOrderListPath : string = '/Rider/GetRiderOrderList'; + /*****首页新订单*****/ + static GetRiderOrderList(page : number) { + var result = Service.Request(this.GetRiderOrderListPath, "GET", {page}); + return result; + } + + private static RiderTakeOrderPath : string = '/Rider/RiderTakeOrder'; + /*****骑手接单*****/ + static RiderTakeOrder(orderId : string) { + var result = Service.Request(this.RiderTakeOrderPath, "POST", {orderId}); + return result; + } + + private static GetRiderTakeOrderListPath : string = '/Rider/GetRiderTakeOrderList'; + /*****首页 待取餐/配送中*****/ + static GetRiderTakeOrderList(status: number,page : number) { + var result = Service.Request(this.GetRiderTakeOrderListPath, "GET", {status,page}); + return result; + } + + + private static GetUnitOrderInfoPath : string = '/Order/GetUnitOrderInfo'; + /*****获取订单详情*****/ + static GetUnitOrderInfo(orderId: string) { + var result = Service.Request(this.GetUnitOrderInfoPath, "GET", {orderId}); + return result; + } + + private static UpdateRiderOrderTakePath : string = '/Rider/UpdateRiderOrderTake'; + /*****取餐*****/ + static UpdateRiderOrderTake(orderId: string,status:number) { + var result = Service.Request(this.UpdateRiderOrderTakePath, "POST", {orderId,status}); + return result; + } + + private static GetRiderAccLogPath : string = '/Rider/GetRiderAccLog'; + /*****收入列表*****/ + static GetRiderAccLog(time: string,page:number) { + var result = Service.Request(this.GetRiderAccLogPath, "GET", {time,page}); + return result; + } + + private static AddRiderWithPath : string = '/Rider/AddRiderWith'; + /*****骑手提现*****/ + static AddRiderWith(amount: number,payway:string,name:string,account:string) { + var result = Service.Request(this.AddRiderWithPath, "POST", {amount,payway,name,account}); + return result; + } + + + private static GetRiderWithListPath : string = '/Rider/GetRiderWithList'; + /*****骑手提现列表*****/ + static GetRiderWithList(page:number) { + var result = Service.Request(this.GetRiderWithListPath, "GET", {page}); + return result; + } + + private static ApplyOrderServicePath : string = '/Rider/ApplyOrderService'; + /*****上报异常订单*****/ + static ApplyOrderService(orderId:string,type:string,remark:string,img:string) { + var result = Service.Request(this.ApplyOrderServicePath, "POST", {orderId,type,remark,img}); + return result; + } + + + private static GetRiderOrderServiceListPath : string = '/Rider/GetRiderOrderServiceList'; + /*****上报异常订单列表*****/ + static GetRiderOrderServiceList(type:number,page:number) { + var result = Service.Request(this.GetRiderOrderServiceListPath, "GET", {type,page}); + return result; + } + + + private static GetOrderServiceInfoPath : string = '/Order/GetOrderServiceInfo'; + /*****上报异常订单详情*****/ + static GetOrderServiceInfo(orderId:string) { + var result = Service.Request(this.GetOrderServiceInfoPath, "GET", {orderId}); + return result; + } + + + + private static UpdateRiderLocationPath : string = '/Rider/UpdateRiderLocation'; + /*****骑手上报位置*****/ + static UpdateRiderLocation(lon:number,lat:number) { + var result = Service.Request(this.UpdateRiderLocationPath, "POST", {lon,lat}); + return result; + } + + + private static GetLoginOrderInfoPath : string = '/Login/GetLoginOrderInfo'; + /*****获取信息*****/ + static GetLoginOrderInfo(orderId:string) { + var result = Service.Request(this.GetLoginOrderInfoPath, "GET", {orderId}); + return result; + } + + + + + + +} +export { + Service, + CNRiderOrderService +} \ No newline at end of file diff --git a/.svn/pristine/ea/ea6c80359761d40addb8fb09f4ac2953d55b7f91.svn-base b/.svn/pristine/ea/ea6c80359761d40addb8fb09f4ac2953d55b7f91.svn-base new file mode 100644 index 0000000..6c0345a --- /dev/null +++ b/.svn/pristine/ea/ea6c80359761d40addb8fb09f4ac2953d55b7f91.svn-base @@ -0,0 +1,844 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/ea/ea812aa6ff52fbfe8c1be98042fbc4df0566f6b9.svn-base b/.svn/pristine/ea/ea812aa6ff52fbfe8c1be98042fbc4df0566f6b9.svn-base new file mode 100644 index 0000000..1e580a7 --- /dev/null +++ b/.svn/pristine/ea/ea812aa6ff52fbfe8c1be98042fbc4df0566f6b9.svn-base @@ -0,0 +1,15 @@ +import { Service } from '@/Service/Service'; +/*****登录接口*****/ +class CNRiderLoginService { + private static RiderLoginPath : string = '/Login/RiderLogin'; + /*****登录注册*****/ + static RiderLogin(login : any) { + var result = Service.Request(this.RiderLoginPath, "POST", login); + return result; + } + +} +export { + Service, + CNRiderLoginService +} \ No newline at end of file diff --git a/.svn/pristine/ea/ea9bf770180ba5f5900a471918ec11ec33e6f116.svn-base b/.svn/pristine/ea/ea9bf770180ba5f5900a471918ec11ec33e6f116.svn-base new file mode 100644 index 0000000..d55676a --- /dev/null +++ b/.svn/pristine/ea/ea9bf770180ba5f5900a471918ec11ec33e6f116.svn-base @@ -0,0 +1,803 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/ea/eab48a15ce34b4bc690fc9d28cc7f3a01b4c02a0.svn-base b/.svn/pristine/ea/eab48a15ce34b4bc690fc9d28cc7f3a01b4c02a0.svn-base new file mode 100644 index 0000000..a54135e --- /dev/null +++ b/.svn/pristine/ea/eab48a15ce34b4bc690fc9d28cc7f3a01b4c02a0.svn-base @@ -0,0 +1,187 @@ + + + + + diff --git a/.svn/pristine/eb/ebd6927d904bd0d1ef8056d04f48630395a1b2b7.svn-base b/.svn/pristine/eb/ebd6927d904bd0d1ef8056d04f48630395a1b2b7.svn-base new file mode 100644 index 0000000..6b37104 --- /dev/null +++ b/.svn/pristine/eb/ebd6927d904bd0d1ef8056d04f48630395a1b2b7.svn-base @@ -0,0 +1,494 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/eb/ebfa022f066a65e1c2ecdfc66b798655798c4e0c.svn-base b/.svn/pristine/eb/ebfa022f066a65e1c2ecdfc66b798655798c4e0c.svn-base new file mode 100644 index 0000000..9253564 --- /dev/null +++ b/.svn/pristine/eb/ebfa022f066a65e1c2ecdfc66b798655798c4e0c.svn-base @@ -0,0 +1,146 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__06C2D6A", + "description" : "", + "versionName" : "1.0.3", + "versionCode" : 103, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 25, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/ec/ecdff2b6fbbbc292875def10e29fd50c894bfcfb.svn-base b/.svn/pristine/ec/ecdff2b6fbbbc292875def10e29fd50c894bfcfb.svn-base new file mode 100644 index 0000000..6684040 --- /dev/null +++ b/.svn/pristine/ec/ecdff2b6fbbbc292875def10e29fd50c894bfcfb.svn-base @@ -0,0 +1,574 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/ed/edb53fbf588f8c2e0ac3763dce31065bc0f786be.svn-base b/.svn/pristine/ed/edb53fbf588f8c2e0ac3763dce31065bc0f786be.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..7c937dc4705143fa30c0c0bfbd980b9a3f049839 GIT binary patch literal 511 zcmVgb3V?0E}SQ2rvW50F3}LfSaHP_ofHS_Pr^W z#bRpS&ad~qo|&HBz>3TI2}G$!d#Rrsrd~TpJv++$?lAL?#`6wi;SLrM^|uW#n}#k7 zE#i`-#{nEuFlN6{rvf6B0ljGv1tK$CIdB5t-W|z@;{uM#D7M|l*iMJBRkQ{}gKeQs z1$GP_Go)NSBUz8g;HVQ75*VSjK1wWmN~}FhY(U$u>Uc09!b}MQ`>CIkP#$Xen1<&> z3~rm~b4UIiXcxRc$h@mN5|I!D_?eIo=<#(K(6MNPrx7t2rUL2&II7%wvkd55RU%tJ z4J>q?-*F{z@m$CA%QO=XiRizAfF}ML>o36Q>JYy4Oa94Gk@Spq0vM)x)tD`%j_3{O z@iO%&bH45y%qgV=^2Bnb3Z)Fa?m7G@B`}Y0cJ6-!c#gT0d1*?$>i!xN4(7JN8Fugr z+y)Wm5E?YgfYHP)5QhKd5{~ASa6;+89bi`gt{`y*kt&d>K4pXv{PimO8sLAnB!LA2&`^eR0GGT0R}fu5xCDIsvvAiIlhVBemJCUIo4bjn07>|(~0w%00GI>24oZJT?mvb4MNSEryhJY98Bf7LLcWci!PVZz^D*L)5OvBhJRyQ>IThK_D_U>(C2XUFPo;cCMI tJIFr(00960bYf5U00006Nkl + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 修改实名认证将重新审核,大约1~2工作日 + + + + + + + 身份信息 + + + + 姓名 + + + + + + 身份证号 + + + + + + + 身份证照片 + + + + + + + + 上传身份证正面 + + + + + + + + + + + + + + + 上传身份证反面 + + + + + + + + + + + + + + + + 我已阅读并同意 + + 《隐私政策》 + + + + + + 提交认证 + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/f0/f0328179ae08bda9a1342929a3a3ae366a3f5ade.svn-base b/.svn/pristine/f0/f0328179ae08bda9a1342929a3a3ae366a3f5ade.svn-base new file mode 100644 index 0000000..d399a09 --- /dev/null +++ b/.svn/pristine/f0/f0328179ae08bda9a1342929a3a3ae366a3f5ade.svn-base @@ -0,0 +1,218 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/f0/f0d95b2e3554944b1c7e7ac1b55a6555327bf895.svn-base b/.svn/pristine/f0/f0d95b2e3554944b1c7e7ac1b55a6555327bf895.svn-base new file mode 100644 index 0000000..05bf17d --- /dev/null +++ b/.svn/pristine/f0/f0d95b2e3554944b1c7e7ac1b55a6555327bf895.svn-base @@ -0,0 +1,680 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/f1/f17c41039fc0c9d604ee0d5c08448afaa85eb812.svn-base b/.svn/pristine/f1/f17c41039fc0c9d604ee0d5c08448afaa85eb812.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..d33d8b5b557a6c84eb9cd24963aefce898ef21fd GIT binary patch literal 2215 zcmV;Y2w3-tP)_66vyA|1}V~P$O*!nAaH`f4#AA%Xh6zt49rN`WjFzz6NIc2OlOzDBw-OeNLiR0 z3^~C#CkR=fNMqWS_u6jbwq51wuW}ix)J1pKSHJiFQQhsTvORFYDg_)6t8f4~AP$IS z3Rq^2>md$^WeQkk&RqA9wMunqYkTj_*3SM(6zO>5o9eP<8mBU6Zh>sR*gtx*=>G$V z-;>AHDAKVX`X8TB9-YtSHg`aJy<$H=55AKrE+}tndq0rn+nhdEKo|z~iWVTeoGL1n zq1)Jp3f@N&NCzYKK7yk9Z|3$1#$j9`%^m^y8J4DsvaIz$SS)|h zYmpbKo^eI_9BDUkTk%7$C4;iCu#o4?Y)RJcL`$Y5S`FkL21*4JAcBj=@j6HHRq-Il zWfc^#Bv=bX7e=#D-;K2-D11EEP^<)^0|QVT4Z}!4K|G4j$M=|~r?iC-Z{r96H&Al0 z4#);Qzkj!Pc>>y$603#@yJFitQ3t&1}(?b{r0>4e+5=a6I%tA}D$C9}$*BQ$g zB;Ybaws=W)9@}&g&|I&$p>1kOclOZ=Tkt z-lingK?91cs`2!h0$~_k=$Yp4 z7T~Q?^XktP0;JD1C@B~Pq6uTY*$A#n@^{c|v+?6KL0P8+ITVBywwcNp+l&EW$259| z5g4($Lr~gr+UTBbX4^;8%Q`m#gdJkX6i&25KU_7@Ge&J-C}Ah$o?-=*(t+?|1PvJL zm%jv3K}JO^`uy@dXzM_s>q^JhD6f#MR3N<2K(!cwJm8)&Qy64JwCO;J3YPq*G$0Iv z-uYFF5$u35B(M!o3J1cA5ePx!~!vt+uqxkQ7DA~*{D>PpDcPbVhf7No*s;=^FaPV4D1SQ zs}7VR7f<8{!Z2u-uLY`EJ`lkz^$d0p<}9$y7mZ^cW(nk`V>J6%#B!iqKy+d7Vgz;! z<~R_PT{6FPD4BtzfkBQuh|L6)OhB|?pr~=rcn~CpoM0$4@=zN}8ac#Vx3APdc>a6p zGlOAhtPFuU4Lti;7L-zXxMhDgVB*ibeY9(Z6M*;k31l#J9<{10iD8EFF zVFTGvcqD;+WuF!9F7Yy>G*GmF@ccLSdWIAR0-Upf@W=xDED+8?9wI2uU+h=pMecK^ z0$~{4Xk`dWVQ_Py=>E(5#~4w-v=6&WT@QZO`ErjE$UO{jp#TLC@MIbkDUhx0S8sYf zqX0`>69WYp3eTVp5=IUt0*NZ1ux5GXh|P0p2m;^-lHrEp#ErEcefvrPL4nhzTvx?i_pgbqyTl0! zi0iNu@<_3C0f+D)p?Lxby-&+tU9Fq{p5VQeNj%X-P^8O@s23$ZP9%YJAu+rRz2IQ< zbjbWy1x0{JEGAC?dH?J2d4I`%+{LbJpa0IRlHrOm6mkEl{sujGLnGpePLKe?Hu92v z8e)D*5h>2a{5RV@50RlXPmjMQU0K`D|9E%I5B-GcV?YwQ?!>qP4v2Bd)fcoHNTu@a z^49j={V&GFzZ{o!Pi+;k5J4?zzFaGT@D%aZ_I|6g*!c*EJcPqvL(3njEkE=>Qrm&8 zV5|eeFrq19X zKLjH%pdWC#v)~`~PpsI@0LWy&xpzVRaHuAGVv zNIAM@Zq)(FEL}Mj9T26i<})1-^O`HK=zu8YF`wyxnAco+MF&JFkNHdo#JuLpD;5UC zL+=azT6NawdHAK$(h@WI+F9-9dIH4LqRdMTL?Ft(cfE#yCt0HqFtgQzeC@1u_v?KH z6GB&X6nC9&fo*{@v~N4%fvkioJrfY_CH-F~D7mNL_2~DwRnAPy zYyMVedsE*=rnNhge?>4>S)-A3tf_n@*TU-?4;I?zeKS{xt zD=d=DtMpbBuY@nu-cW?=)c$%_80=(bAY7T_pN-(Uc~-BHA-jdfv-(jU$JjPm + + + + + + + 1.优化布局细节,优化购物体验,优化产品体验 + + + 2.修复已知问题,修复一些BUG + + + + + + + + {{sum}}% + + + + + + + + {{datacl(beg)}}/{{datacl(downlog)}} + + + + + + + + + + {{ isFinish?'下载完成':(! buttonContro?'开始更新':'下载中') }} + + + 暂不更新 + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/f2/f22fcfb55282f3dc23845f22e38e56b79bbaad8d.svn-base b/.svn/pristine/f2/f22fcfb55282f3dc23845f22e38e56b79bbaad8d.svn-base new file mode 100644 index 0000000..d361d72 --- /dev/null +++ b/.svn/pristine/f2/f22fcfb55282f3dc23845f22e38e56b79bbaad8d.svn-base @@ -0,0 +1,277 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/f2/f2427e310e266a3b225bf458b0f147e4c7ee6aad.svn-base b/.svn/pristine/f2/f2427e310e266a3b225bf458b0f147e4c7ee6aad.svn-base new file mode 100644 index 0000000..ecf0c7a --- /dev/null +++ b/.svn/pristine/f2/f2427e310e266a3b225bf458b0f147e4c7ee6aad.svn-base @@ -0,0 +1,89 @@ +import { Service } from '@/Service/Service'; +/*****首页接口*****/ +class CNRiderDataService { + private static GetPubRiderInfoPath : string = '/Rider/GetRiderInfo'; + /*****个人信息*****/ + static GetRiderInfo() { + var result = Service.Request(this.GetPubRiderInfoPath, "GET", {}); + return result; + } + + + private static GetRiderHomeInfoPath : string = '/Rider/GetRiderHomeInfo'; + /*****获取首页信息*****/ + static GetRiderHomeInfo() { + var result = Service.Request(this.GetRiderHomeInfoPath, "GET", {}); + return result; + } + + private static CompleteRiderPath : string = '/Rider/CompleteRider'; + /*****完善信息接口*****/ + static CompleteRider(nick:string,headImg:string,idenNumber:string,sex:string,age:number,identityA:string,identityB:string,province:string,city:string,region:string,lat:number,lon:number) { + var result = Service.Request(this.CompleteRiderPath, "POST", {nick,headImg,idenNumber,sex,age,identityA,identityB,province,city,region,lat,lon}); + return result; + } + + private static GetAddressInfoPath : string = '/User/GetAddressInfo'; + /*****根据经纬度获取地址信息*****/ + static GetAddressInfo(lat:number,lon:number) { + var result = Service.Request(this.GetAddressInfoPath, "GET", {lat,lon}); + return result; + } + + private static GetRiderAccInfoPath : string = '/Rider/GetRiderAccInfo'; + /*****获取账户信息*****/ + static GetRiderAccInfo() { + var result = Service.Request(this.GetRiderAccInfoPath, "GET", {}); + return result; + } + + private static UpdateRiderUnitPath : string = '/Rider/UpdateRiderUnit'; + /*****修改基础信息*****/ + static UpdateRiderUnit(headImg:string,sex:string,age:number) { + var result = Service.Request(this.UpdateRiderUnitPath, "POST", {headImg,sex,age}); + return result; + } + + + private static UpdateRiderIdentityPath : string = '/Rider/UpdateRiderIdentity'; + /*****修改实名认证*****/ + static UpdateRiderIdentity(nick:string,idenNumber:string,identityA:string,identityB:string) { + var result = Service.Request(this.UpdateRiderIdentityPath, "POST", {nick,idenNumber,identityA,identityB}); + return result; + } + + private static UpdateRiderOnlinePath : string = '/Rider/UpdateRiderOnline'; + /*****修改上下线*****/ + static UpdateRiderOnline() { + var result = Service.Request(this.UpdateRiderOnlinePath, "GET", {}); + return result; + } + + + private static GetRiderExigencyPath : string = '/Rider/GetRiderExigency'; + /*****紧急联系人详情*****/ + static GetRiderExigency() { + var result = Service.Request(this.GetRiderExigencyPath, "GET", {}); + return result; + } + + private static AddRiderExigencyPath : string = '/Rider/AddRiderExigency'; + /*****添加联系人*****/ + static AddRiderExigency(name:string,phone:string) { + var result = Service.Request(this.AddRiderExigencyPath, "POST", {name,phone}); + return result; + } + + private static GetRiderEvaluatePath : string = '/Rider/GetRiderEvaluate'; + /*****骑手评价列表*****/ + static GetRiderEvaluate(type:number,page:number) { + var result = Service.Request(this.GetRiderEvaluatePath, "GET", {type,page}); + return result; + } + + +} +export { + Service, + CNRiderDataService +} \ No newline at end of file diff --git a/.svn/pristine/f2/f2893c44ae9f89ad72d7dea38ed38222ca429b1e.svn-base b/.svn/pristine/f2/f2893c44ae9f89ad72d7dea38ed38222ca429b1e.svn-base new file mode 100644 index 0000000..ef5db10 --- /dev/null +++ b/.svn/pristine/f2/f2893c44ae9f89ad72d7dea38ed38222ca429b1e.svn-base @@ -0,0 +1,330 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/f2/f298b66eb753559c66791710356d9598fc281502.svn-base b/.svn/pristine/f2/f298b66eb753559c66791710356d9598fc281502.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..9d9ac77a18a4a454437371328445c668328bd3ca GIT binary patch literal 672 zcmV;R0$=@!P)GGv)Sx{Rin`;M2Cp8zW4mQja8N&*yV>zu)JP3s54ffLvfJ zqW3{Aolbv4zItPXB>hwbGBCyj)9JK4nM@MM2T;c5)7|0{V`HU9h!N7=7del|qc8au zA|J6|@BLRo4VgI&>C7dNMog$+T@Z8a2#S%-80(u8TjGLxcyF#&caaD<8A0B6W&q@|NP@+p&ZMMk~;}%qf%;dj*-JNC&ARx(FBD zF?7jnbwNXY1KXt~q`Iw2;scJ@O9zRV@n-lfmExhKB}7r{4vA09Wa-|HW$*=Ha6!O@ z%+VdqmScM8+E<6B6!-VY9Mh*ewcjJ4kjZ3TkdEP4%&JWFu7F;|W)rvD?SKZfpF_y< z;!sZ1p(6t`=|ij?tGJggMKGJqh5~x1B>9N5+dxitG#c3=@?8n_AyD;)B!7V&vh;gI zK1lz6u{lPG85My3<6q47tbbaoMA2v~B6+PD>yWD7@#+Y6zev`cG-LZuGfVC33vnU3 zE{*Wp8zW>UbB14rNWlSmk@=PdNOW;3);k;ydFHBl-`LP%gxDNoOfVjgtB~i>ec1#^ zec3=CdnnsI-Xy#ade8SC00030{|9@6Y5)KL21!IgR09BHo>(}q%kcsL0000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/f2/f2d55551a758c2998190b3b165163ec322b8b4f3.svn-base b/.svn/pristine/f2/f2d55551a758c2998190b3b165163ec322b8b4f3.svn-base new file mode 100644 index 0000000..efada76 --- /dev/null +++ b/.svn/pristine/f2/f2d55551a758c2998190b3b165163ec322b8b4f3.svn-base @@ -0,0 +1,10 @@ +export class BaseConfig { + // protected static servesUrl: string = "http://192.168.0.142:5085";//线下 + // protected static imgUrl: string = "http://192.168.0.142:5085"; + protected static servesUrl: string = "https://cnapi.hnzchl.cn"; + protected static imgUrl: string = "https://cnapi.hnzchl.cn"; + protected static mediaUrl: string = "http://byc1.xypays.cn/"; + protected static uploadUrl: string = "/TencentCos/GetUpLoadInfo"; + // protected static payuploadUrl: string = "http://192.168.0.142:5085"; + protected static payuploadUrl: string = "https://cnapi.hnzchl.cn"; +} \ No newline at end of file diff --git a/.svn/pristine/f4/f4b1d21e7c0fd6ddc324372fb05d37fd6dbf6a42.svn-base b/.svn/pristine/f4/f4b1d21e7c0fd6ddc324372fb05d37fd6dbf6a42.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..4f0395acf5fe281c7e2f55c107287b5bdc3612ff GIT binary patch literal 5508 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 Qz_BWDL(dphq2mz!Kf@|RrT_o{ literal 0 HcmV?d00001 diff --git a/.svn/pristine/f4/f4dbaa55a9901496b60b76c831a1da5fbcade1b6.svn-base b/.svn/pristine/f4/f4dbaa55a9901496b60b76c831a1da5fbcade1b6.svn-base new file mode 100644 index 0000000..2c60940 --- /dev/null +++ b/.svn/pristine/f4/f4dbaa55a9901496b60b76c831a1da5fbcade1b6.svn-base @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/f6/f648cddf065d5cdeeec0bb25766a251375867720.svn-base b/.svn/pristine/f6/f648cddf065d5cdeeec0bb25766a251375867720.svn-base new file mode 100644 index 0000000..549968e --- /dev/null +++ b/.svn/pristine/f6/f648cddf065d5cdeeec0bb25766a251375867720.svn-base @@ -0,0 +1,9 @@ +export class BaseConfig { + protected static servesUrl: string = "http://192.168.0.142:5085";//线下 + protected static imgUrl: string = "http://192.168.0.142:5085"; + // protected static servesUrl: string = "http://vp.xypays.cn"; + // protected static imgUrl: string = "http://vp.cloud.xypays.cn"; + protected static mediaUrl: string = "http://byc1.xypays.cn/"; + protected static uploadUrl: string = "/TencentCos/GetUpLoadInfo"; + protected static payuploadUrl: string = "http://pay.xypays.cn"; +} \ No newline at end of file diff --git a/.svn/pristine/f6/f65790b8061f2ab08218d4609667d42e53a140dd.svn-base b/.svn/pristine/f6/f65790b8061f2ab08218d4609667d42e53a140dd.svn-base new file mode 100644 index 0000000..7731eed --- /dev/null +++ b/.svn/pristine/f6/f65790b8061f2ab08218d4609667d42e53a140dd.svn-base @@ -0,0 +1,654 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/f6/f67518aa38e56fa50b421146ed1339afda1e2428.svn-base b/.svn/pristine/f6/f67518aa38e56fa50b421146ed1339afda1e2428.svn-base new file mode 100644 index 0000000..d73428d --- /dev/null +++ b/.svn/pristine/f6/f67518aa38e56fa50b421146ed1339afda1e2428.svn-base @@ -0,0 +1,323 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/f7/f7a305769127fa66462082b2dcf875e66d8012a7.svn-base b/.svn/pristine/f7/f7a305769127fa66462082b2dcf875e66d8012a7.svn-base new file mode 100644 index 0000000..59ab6a4 --- /dev/null +++ b/.svn/pristine/f7/f7a305769127fa66462082b2dcf875e66d8012a7.svn-base @@ -0,0 +1,98 @@ +export class StringAssist { + static NoHtml(html: string): string { + return html; + } + + + static PhoneToStr (e:string) { + return e.substring(0,3)+'****'+e.substring((e.length-2),(e.length)) + } + // 数量过万处理 + static NumToStr (sum:number) { + if(sum>=10000){ + return (sum/10000).toFixed('2')+'w' + }else{ + return sum + } + } + + + // 帖子距离现在多久 + static DiffTimeTostring(dateTime: string): string { + let result = 0; + let time = Date.parse(dateTime); + let timestamp = Date.parse(new Date().toString()); + if ((timestamp - time) / 1000 < 60) { + result = (timestamp - time) / 1000; + result = result < 0 ? 0 : result; + return result.toFixed(0) + '秒前'; + } else if ((timestamp - time) / 1000 / 60 < 60) { + return ((timestamp - time) / 1000 / 60).toFixed(0) + '分钟前'; + } else if ((timestamp - time) / 1000 / 60 / 60 < 24) { + return ((timestamp - time) / 1000 / 60 / 60).toFixed(0) + '小时前'; + } else if ((timestamp - time) / 1000 / 60 / 60 / 24 < 31) { + return ((timestamp - time) / 1000 / 60 / 60 / 24).toFixed(0) + '天前'; + } else { + return this.formatDate(time, 1); + } + } + + private static formatDate(time:any,type:number):string + { + const date = new Date(time); + const year = date.getFullYear(); + const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以加1,并用0填充 + const day = String(date.getDate()).padStart(2, '0'); // 用0填充 + const hours = String(date.getHours()).padStart(2, '0'); // 用0填充 + const minutes = String(date.getMinutes()).padStart(2, '0'); // 用0填充 + const seconds = String(date.getSeconds()).padStart(2, '0'); // 用0填充 + if(type==0) + { + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } + else if(type==1) + { + return `${year}-${month}-${day} ${hours}:${minutes}`; + }else if(type==2) + { + return `${year}-${month}-${day}`; + }else if(type==3){ + return `${month}-${day} ${hours}:${minutes}`; + } + + else{ + return `${hours}:${minutes}`; + } + } + + + + // 聊天时间显示 + static ChatTimeTostring(dateTime: string,upTime:string): string { + let time = Date.parse(dateTime); + let timestamp = Date.parse(upTime); + if (( time - timestamp) / 1000 / 60 < 10) { + return '0'; + } else{ + return this.formatDate(time, 3); + } + } + + + // 去除两侧的空格 + + static trim(str:string){ + const reg = /^\s+|\s+$/g; + return str.replace(reg,''); + } + + // 计算两个时分秒差值 + static timesfm(dateTime: string,upTime:string){ + + let time = Date.parse('2000-01-01 '+dateTime); + let timestamp = Date.parse('2000-01-01 '+upTime); + return ((timestamp - time) / 1000 / 60).toFixed(0) + '分钟'; + } + + +} diff --git a/.svn/pristine/f7/f7db5c84d1f68074151cb4b8aa3ad09ddc68ef53.svn-base b/.svn/pristine/f7/f7db5c84d1f68074151cb4b8aa3ad09ddc68ef53.svn-base new file mode 100644 index 0000000..c130f10 --- /dev/null +++ b/.svn/pristine/f7/f7db5c84d1f68074151cb4b8aa3ad09ddc68ef53.svn-base @@ -0,0 +1,43 @@ +import { Service } from '@/Service/Service'; +/*****公共接口*****/ +class NvpPubService { + private static GetIndexPath: string = '/Pub/GetIndex'; + /*****主页信息*****/ + static GetIndex() { + var result = Service.Request(this.GetIndexPath, "GET", ""); + return result; + } + + private static GetIndexDataPath: string = '/Pub/GetIndexData'; + /*****获取首页数据*****/ + static GetIndexData(lon: number, lat: number, city: string, county: string, sort: number, page: number) { + var result = Service.Request(this.GetIndexDataPath, "GET", { lon, lat, city, county, sort, page }); + return result; + } + + private static GetMenuDataPath: string = '/Pub/GetMenuData'; + /*****获取分类*****/ + static GetMenuData(type: string, parent: string) { + var result = Service.Request(this.GetMenuDataPath, "GET", { type, parent }); + return result; + } + + private static GetMerchDataPath: string = '/Pub/GetMerchData'; + /*****获取店铺*****/ + static GetMerchData(code: string, serch: string, assId: string, lon: number, lat: number, city: string, county: string, sort: number, page: number, limit: number) { + var result = Service.Request(this.GetMerchDataPath, "GET", { code, serch, assId, lon, lat, city, county, sort, page, limit }); + return result; + } + + private static GetRandomMerchPath: string = '/Pub/GetRandomMerch'; + /*****随机获取商家*****/ + static GetRandomMerch(count: number, lon: number, lat: number, city: string, county: string) { + var result = Service.Request(this.GetRandomMerchPath, "GET", { count, lon, lat, city, county }); + return result; + } + +} +export { + Service, + NvpPubService +} diff --git a/.svn/pristine/f8/f8b9484e6522dd1ba8a1d1422d29d73a5d5b9ef2.svn-base b/.svn/pristine/f8/f8b9484e6522dd1ba8a1d1422d29d73a5d5b9ef2.svn-base new file mode 100644 index 0000000..748c5f5 --- /dev/null +++ b/.svn/pristine/f8/f8b9484e6522dd1ba8a1d1422d29d73a5d5b9ef2.svn-base @@ -0,0 +1,225 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/f8/f8fdc6fa138c6044b29a6c02cd34f2062800429d.svn-base b/.svn/pristine/f8/f8fdc6fa138c6044b29a6c02cd34f2062800429d.svn-base new file mode 100644 index 0000000..75c4b96 --- /dev/null +++ b/.svn/pristine/f8/f8fdc6fa138c6044b29a6c02cd34f2062800429d.svn-base @@ -0,0 +1,331 @@ +import { HttpRequest, StoreAssist, UploadAssist, ResultData } from '@/common/Common'; +import { BaseConfig } from './BaseConfig'; +export class Service extends BaseConfig { + //获取API地址 + static ApiUrl(path : string) { + return `${this.servesUrl}${path}`; + } + + //获取图片地址 + static GetpayImg(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.payuploadUrl}${path}`; + } + } + + //获取图标地址 + static GetIconImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + + //获取图片地址 + static GetMateUrlByImg(path : string) { + return path + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.imgUrl}${path}`; + } + } + //获取音视频地址 + static GetMateUrlByMedia(path : string) { + if (path.startsWith('http') || path.startsWith('https')) { + return path; + } else { + return `${this.mediaUrl}${path}`; + } + } + //获取登录账号token + static GetUserToken() { + return Service.GetStorageCache('token'); + } + // 获取登录状态 + static GetUserIsLogin() { + var token = this.GetUserToken(); + if (token == null || token == '') { + return false; + } else { + return true; + } + } + //设置登录账户Token + static SetUserToken(token : string) { + this.SetStorageCache('token', token); + } + //清理登录账户Token + static OffUserToken() { + Service.DelStorageCache('token'); + uni.$emit('ImComOff', 'user'); + this.ClearUserStateData(); + } + //获取登录账号状态信息 + static GetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //设置当前登录账号状态信息 + static SetUserStateData() { + return Service.GetStorageCache('StateDomain'); + } + //清理当前登录账号状态信息 + static ClearUserStateData() { + Service.DelStorageCache('StateDomain'); + } + + //获取缓存 + static GetStorageCache(key : string) { + return StoreAssist.Get(key); + } + //删除缓存 + static DelStorageCache(key : string) { + StoreAssist.Delete(key); + } + //设置缓存 + static SetStorageCache(key : string, data : any) { + StoreAssist.Set(key, data); + } + + /*****以下是基础方法调用与拦截器*****/ + + static Request(url : string, method : 'GET' | 'POST' | 'PUT' | undefined, data : object | any) { + const token = Service.GetUserToken(); + + const _url = Service.ApiUrl(url); + var result = HttpRequest.RequestWithToken(_url, method, token, data).then((retResult : any) => { + if (retResult.statusCode == '200') { + var obj = retResult.data; + if (obj.code == 401) { + //过期 + this.OffUserToken(); + this.Msg('登录过期,请重新登录') + this.GoPage('/pages/my/login') + return Promise.reject(); + } else if (obj.code == 40101) { + //失效 + this.OffUserToken(); + this.GoPageDelse('/pages/mine/login/login'); + return Promise.reject(); + } else if (obj.code == 1004) { + //资源不存在 + this.GoPageDelse('/pages/AppSet/404/404'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 40188) { + //无权限 + + this.GoPageDelse('/pages/AppSet/40188/40188'); + return Promise.reject(); + // return new ResultData(-1, '', ''); + } else if (obj.code == 1008) { + //业务提示 + return new ResultData(obj.code, obj.msg, obj.data); + } else { + return new ResultData(obj.code, obj.msg, obj.data); + } + } else { + return new ResultData(-1, '', ''); + } + }); + return result; + } + /*****以下是腾讯云oss上传*****/ + static UpLoadMedia(code : string, fileName : string, desire : string, path : string) { + var result = this.Request(this.uploadUrl, 'GET', { code, fileName, desire }).then((retResult) => { + if (retResult.code == 0) { + var upOk = UploadAssist.Upload(retResult.data.url, path, retResult.data.cosData).then((upRet : any) => { + if (upRet.statusCode == 200) { + const retData : any = { code: retResult.data.code, file: retResult.data.file, cache: retResult.data.cache }; + return new ResultData(0, '上传成功!', retData); + } else { + this.Msg('上传失败!'); + return new ResultData(-1, '', ''); + } + }); + return upOk; + } else { + this.Msg('上传失败!'); + return new ResultData(-1, retResult.msg,retResult.data); + } + }); + return result; + } + + /***********消息操作**************/ + static Msg(message : any, icon ?: any) : void { + if (icon != null) { + uni.showToast({ + title: message, + icon: icon + }); + } else { + uni.showToast({ + title: message, + icon: 'none' + }); + } + } + + static Alert(msg : string, cb ?: any) { + uni.showModal({ + title: '提示', + content: msg, + showCancel: false, + cancelText: '取消', + confirmText: '确定', + success: res => { + if (res.confirm) { + cb && cb(); + } + } + }) + } + + static LoadIng(text : any) : void { + uni.showLoading({ + title: text, + icon: 'none' + }); + } + + static LoadClose() : void { + uni.hideLoading(); + } + + /**********跳转操作*********/ + + + static GoPageTab(path : string) : void { + uni.switchTab({ + url: path + }); + } + + /**********跳转操作*********/ + static GoPage(path : string) : void { + uni.navigateTo({ + url: path, //跳转的页面 + success: function (res) { + // 通过eventChannel向被打开页面传送数据 + } + }); + } + /**********跳转并删除当前页面操作*********/ + static GoPageDelse(path : string) : void { + uni.redirectTo({ + url: path //跳转的页面 + }); + } + + /**********返回上一页*********/ + static GoPageBack() : void { + uni.navigateBack({ delta: 1 }); + } + + /*****获取图片base64*****/ + static UpLoadMediaBase64(path : string) { + return new Promise(function (resolve, reject) { + uni.uploadFile({ + url: 'http://cloud.pccsh.com/DefUp/UploadFileImgBase64', //仅为示例,非真实的接口地址 + filePath: path, + name: 'file', + success: (uploadFileRes) => { + resolve(uploadFileRes); + }, + fail: (err) => { + reject(err); + } + }); + }); + } + /*****获取图片位置信息*****/ + //获取时间戳 + static GetTimeSpan(milliSecond : number) { + return Date.now() + milliSecond; + } + + // 时间戳处理 + static formatDate(time : any, type : number) : string { + const date = new Date(time); + const year = date.getFullYear(); + const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,所以加1,并用0填充 + const day = String(date.getDate()).padStart(2, '0'); // 用0填充 + const hours = String(date.getHours()).padStart(2, '0'); // 用0填充 + const minutes = String(date.getMinutes()).padStart(2, '0'); // 用0填充 + const seconds = String(date.getSeconds()).padStart(2, '0'); // 用0填充 + if (type == 0) { + return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; + } + else if (type == 1) { + return `${year}-${month}-${day} ${hours}:${minutes}`; + } else if (type == 2) { + return `${year}-${month}-${day}`; + } else if (type == 3) { + return `${hours}:${minutes}`; + } else if (type == 4) { + return `${year}${month}${day}`; + } + + else { + return `${hours}:${minutes}`; + } + } + + /*****节流*****/ + static throttle(fn: () => void, time: number) { + let canRun: boolean = true; + return function () { + if (!canRun) return; + canRun = false; + setTimeout(() => { + fn(); //可以不执行 + canRun = true; + }, time); + }; + } + /*****防抖*****/ + static debounce void>(fn: T, time: number): (...args: Parameters) => void { + let timerId: NodeJS.Timeout | null = null; + + return (...args: Parameters) => { + if (timerId) { + clearTimeout(timerId); + } + + timerId = setTimeout(() => { + fn(...args); // 执行传入的函数 + timerId = null; // 清除定时器ID + }, time); + }; + } + + + + + + // 普通图片上传 + static uploadH5(path, dic, callback) { + console.log(this.payuploadUrl,'xxx') + uni.uploadFile({ + url: this.payuploadUrl+'/Upload/Upload', + method: "POST", + header: { + 'Authorization': 'Bearer ' + Service.GetUserToken(), + }, + formData: { + "path": dic, + }, + filePath: path, + name: 'file', + success: (data) => { + let info = data.data + callback(info) + } + }) + } +} \ No newline at end of file diff --git a/.svn/pristine/f9/f9aa8d1312d2ac9739011da190a881b4b0baa1b4.svn-base b/.svn/pristine/f9/f9aa8d1312d2ac9739011da190a881b4b0baa1b4.svn-base new file mode 100644 index 0000000..4c0a058 --- /dev/null +++ b/.svn/pristine/f9/f9aa8d1312d2ac9739011da190a881b4b0baa1b4.svn-base @@ -0,0 +1,423 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/fb/fbe631ef161ce06615bd9bce9a08e1ae9e97cd68.svn-base b/.svn/pristine/fb/fbe631ef161ce06615bd9bce9a08e1ae9e97cd68.svn-base new file mode 100644 index 0000000..8586473 --- /dev/null +++ b/.svn/pristine/fb/fbe631ef161ce06615bd9bce9a08e1ae9e97cd68.svn-base @@ -0,0 +1,177 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/fc/fc67dfa669d07db9fa8d704dde01d06d1afbe50b.svn-base b/.svn/pristine/fc/fc67dfa669d07db9fa8d704dde01d06d1afbe50b.svn-base new file mode 100644 index 0000000..b8e58b4 --- /dev/null +++ b/.svn/pristine/fc/fc67dfa669d07db9fa8d704dde01d06d1afbe50b.svn-base @@ -0,0 +1,64 @@ +export class HttpRequest { + + /***普通请求方法***/ + static Request(url: string, method: "GET" | "POST" | "PUT" | undefined, data: object | any) { + return new Promise(function(resolve, reject) { + let header = { + 'content-type': method == 'POST' || method == 'PUT' ? 'application/x-www-form-urlencoded' : 'application/json; charset=utf-8', + 'Access-Control-Allow-Origin': '*' + }; + uni.request({ + url: url, + method: method, + data: data, + header: header, + success(res: any) { + if (res.statusCode == "200") { + resolve(res.data); + } + else + { + resolve(res); + } + }, + fail(err) { + //请求失败 + uni.showToast({ + title: '无法连接到服务器', + icon: 'none' + }) + reject(err) + } + }) + }) + }; + + /***带Token的请求方法***/ + static RequestWithToken(url: string, method: "GET" | "POST" | "PUT" | undefined, token: string, data: object | any) { + return new Promise(function(resolve, reject) { + let header = { + 'content-type': method == 'POST' || method == 'PUT' ? 'application/x-www-form-urlencoded' : 'application/json; charset=utf-8', + 'Authorization': 'Bearer ' + token,//token获取 + 'Access-Control-Allow-Origin': '*' + }; + uni.request({ + url: url, + method: method, + data: data, + header: header, + success(res: any) { + resolve(res); + }, + fail(err) { + //请求失败 + uni.showToast({ + title: '无法连接到服务器', + icon: 'none' + }) + reject(err) + } + }) + }) + + } +} diff --git a/.svn/pristine/fd/fd54fb56e595ce84da3b4babe18bedced8e855b3.svn-base b/.svn/pristine/fd/fd54fb56e595ce84da3b4babe18bedced8e855b3.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..79308f9535441fcb98b97d690d9c501ac8c4a768 GIT binary patch literal 6260 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 NwuS+sPTldv{{ruft7`xN literal 0 HcmV?d00001 diff --git a/.svn/pristine/fe/fe18e1574583c99af12ff1ef3be128ef4941509e.svn-base b/.svn/pristine/fe/fe18e1574583c99af12ff1ef3be128ef4941509e.svn-base new file mode 100644 index 0000000..4c090a4 --- /dev/null +++ b/.svn/pristine/fe/fe18e1574583c99af12ff1ef3be128ef4941509e.svn-base @@ -0,0 +1,281 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/fe/fe5c2cd756a548727334f58eaaff7b590a6479e1.svn-base b/.svn/pristine/fe/fe5c2cd756a548727334f58eaaff7b590a6479e1.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..cd9acb9e1dbc19f0105ac4db4fcd36339ca603a0 GIT binary patch literal 610 zcmV-o0-gPdP)5S>{QsZuZg1b+g5P`E|F!IhxuEf%!*^b111Am!YeIJX3d!Xa_E!6)zud;-Tv z(PlEUiiy`?15t9zXoelH-@Iq9cLxO@YmeznJbk_9s&4#?Q&Frv=1386sY)t+xXGB z;bKD`5BjGPi3pEp!lz09k#SSx3JCev17}JEJ}NjCVt6shpA-q{+LF9LR>MYtgq%@j ze){0{D(rD?`TbS@uiTSK2OaY!l4oO0Kt7y2IRg#(-5|W+e50Ft2(qinkYkpBkUIxz z%2D#?d0-G~XbH*GxB>zq-i%2N6%K;5iXApn{*R z0tEDp>t}bv5YxePa~70)oaXyhf!tDpCG22t7ubPZAfE!V3Wbqfq6P1alX|N|NpMT9 z6fjg0oQzV-SnE7l0_Fq~opMjH1GN0PaP6x<5%kt@T$}9(mVh~dqkcEe#)js1e;tn3 wa9o$|2+sfj0RR65so+-t000I_L_t&o0NGm^Kwt~BqyPW_07*qoM6N<$g6ZcMr~m)} literal 0 HcmV?d00001 diff --git a/.svn/pristine/fe/fe9cdccc285107e7b850106228d6b363d1e8992d.svn-base b/.svn/pristine/fe/fe9cdccc285107e7b850106228d6b363d1e8992d.svn-base new file mode 100644 index 0000000..0d128a3 --- /dev/null +++ b/.svn/pristine/fe/fe9cdccc285107e7b850106228d6b363d1e8992d.svn-base @@ -0,0 +1,36 @@ +import { Service } from '@/Service/Service'; +/*****登录接口*****/ +class NvpAddressService { + private static GetAddressListPath: string = '/Address/GetAddressList'; + /*****收货地址*****/ + static GetAddressList(page: number) { + var result = Service.Request(this.GetAddressListPath, "GET", { page }); + return result; + } + + private static DelUserAddressPath: string = '/Address/DelUserAddress'; + /*****删除地址*****/ + static DelUserAddress(uaId: string) { + var result = Service.Request(this.DelUserAddressPath, "POST", { uaId }); + return result; + } + + private static AddUserAddressPath: string = '/Address/AddUserAddress'; + /*****添加地址*****/ + static AddUserAddress(uaId: string, name: string, phone: string, province: string, city: string, county: string, address: string, isDefault: number) { + var result = Service.Request(this.AddUserAddressPath, "POST", { uaId, name, phone, province, city, county, address, isDefault }); + return result; + } + + private static UpdateUserAddressPath: string = '/Address/UpdateUserAddress'; + /*****修改默认地址*****/ + static UpdateUserAddress(uaId: string) { + var result = Service.Request(this.UpdateUserAddressPath, "POST", { uaId }); + return result; + } + +} +export { + Service, + NvpAddressService +} diff --git a/.svn/pristine/fe/fed0bc34009b38df0fa2d588cbfaba7e788f1775.svn-base b/.svn/pristine/fe/fed0bc34009b38df0fa2d588cbfaba7e788f1775.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..5351903003ebae9d565246cde423f78530604ea3 GIT binary patch literal 720 zcmV;>0x$iEP)!9iv5!;-N(W&FRt1sn0W4NvsRAk$NU0!B1!M)J-lm~{nuZ}|Qi|Fic3In2f^HhR0y~+7+m7K1 zhB@V;6t%O{Sy;)25^W=EBzTvGvp0s7zzkR-U_|My$7Yhh0q@x#1q_zgjNJBehECWd^6kJ zB2n>MJED(#AMd0lAb2DL!W3Nf=q|B4ws)$sB}rlonHlCfzsj*DD8VCcIj$z#Xpw|~ z0ZFcQ;ZqdF(%3H#?=PxVm z1a^o_9fs;mdLQWkRqU5wae^{#ISd~;wqIo?;6jy3JStA$hyha`O#dVe^(FD~79WOq zNb|@7K2v+G33y5Jz_{6iOX3zgeh40ctEYKEtOd2#nm|47pequ!+eitXxet@1>+(|* zxDlZ3`E6FhQf4g2(Ntu^`3X~lUoH@wtM}Mf_B8 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 今日收入 + ¥{{userData.dayAmount.toFixed(2)}} + + + 已完成 + {{userData.dayOrderCount}}单 + + + 配送中 + {{ userData.takeOrderCount }}单 + + + + + + {{ riderInfo.status==0?'审核中':(riderInfo.isOnline == 0 ? '已下线' : '已上线') }} + + + + + {{ tab }} + + + + + + + + + + + + {{activeTab==0? '新订单':(activeTab==1? '待取单':'配送中')}} + + + + 拨打商家 + + + + + + {{ orderItem.storeName }} + {{ distance(orderItem.distance) }} + + + + + + {{orderItem.address }} + + + + + + + + + 取件码: + A121 + + + 据您{{ distance(orderItem.distance) }} + + + + {{ orderItem.makeTime.split(' ').length==2?'预计'+orderItem.makeTime.split(' ')[1]+'送达':orderItem.makeTime }} + + + + + + + {{ activeTab==0?'立即接单':(activeTab==1?'我已取餐':'确认送达')}} + + + + {{activeTab==1?'导航取餐':'导航送餐'}} + + + + + + + + + + 信息审核中·暂时无法接单 + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/ff/ff2a1c80cef6ae1e7487d6e19b9af81408fd9a4f.svn-base b/.svn/pristine/ff/ff2a1c80cef6ae1e7487d6e19b9af81408fd9a4f.svn-base new file mode 100644 index 0000000..b631f76 --- /dev/null +++ b/.svn/pristine/ff/ff2a1c80cef6ae1e7487d6e19b9af81408fd9a4f.svn-base @@ -0,0 +1,529 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/ff/ff58c1dbbc02fc452cf0a392aa24a529d87496de.svn-base b/.svn/pristine/ff/ff58c1dbbc02fc452cf0a392aa24a529d87496de.svn-base new file mode 100644 index 0000000..bf743eb --- /dev/null +++ b/.svn/pristine/ff/ff58c1dbbc02fc452cf0a392aa24a529d87496de.svn-base @@ -0,0 +1,143 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__06C2D6A", + "description" : "", + "versionName" : "1.0.8", + "versionCode" : 108, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 25, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/ff/ff7cd620177a510a151dfc6784454eb2e40d0971.svn-base b/.svn/pristine/ff/ff7cd620177a510a151dfc6784454eb2e40d0971.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..5f4e8a6f107ee6207c141a6123cf13d49c1c17e3 GIT binary patch literal 24454 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�B5$-P%#kdTqY(tn@>OC^?fH;G-cW&wN4 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 b5GlhM-Xwe6JXQnpNpVU^T`^7G_|E?YJDG~P literal 0 HcmV?d00001 diff --git a/.svn/tmp/svn-691095F0 b/.svn/tmp/svn-691095F0 new file mode 100644 index 0000000..20e9c2c --- /dev/null +++ b/.svn/tmp/svn-691095F0 @@ -0,0 +1,146 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__06C2D6A", + "description" : "", + "versionName" : "1.0.6", + "versionCode" : 106, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 30, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/wc.db b/.svn/wc.db new file mode 100644 index 0000000000000000000000000000000000000000..70123334198a6ff5e9a8bf802aedc986b07aac20 GIT binary patch literal 294912 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

    Ou(vbP8t47rXLNe$ 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 z + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 大大怪将军 + + + 4.9 + + + + ID: MT007 + + + 已上线 · 接单中 + + + + + + + + + 我的服务 + + + + + + {{funcItem.name}} + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/79/79169f960fcfccc759786455d216f154e0bf9f2e.svn-base b/.svn/pristine/79/79169f960fcfccc759786455d216f154e0bf9f2e.svn-base new file mode 100644 index 0000000..0478c8d --- /dev/null +++ b/.svn/pristine/79/79169f960fcfccc759786455d216f154e0bf9f2e.svn-base @@ -0,0 +1,488 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/79/79a03624b4cc710b49266d1c4dd34da6353de281.svn-base b/.svn/pristine/79/79a03624b4cc710b49266d1c4dd34da6353de281.svn-base new file mode 100644 index 0000000..a8f10ba --- /dev/null +++ b/.svn/pristine/79/79a03624b4cc710b49266d1c4dd34da6353de281.svn-base @@ -0,0 +1,27 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/7d/7dbfacf2b73f4dfa1f7e6aeff9f0057847897ab8.svn-base b/.svn/pristine/7d/7dbfacf2b73f4dfa1f7e6aeff9f0057847897ab8.svn-base new file mode 100644 index 0000000..555cd64 --- /dev/null +++ b/.svn/pristine/7d/7dbfacf2b73f4dfa1f7e6aeff9f0057847897ab8.svn-base @@ -0,0 +1,177 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/7e/7e5eea0bd057b4a52d65bdaac436752e4f81f355.svn-base b/.svn/pristine/7e/7e5eea0bd057b4a52d65bdaac436752e4f81f355.svn-base new file mode 100644 index 0000000..5c99eb9 --- /dev/null +++ b/.svn/pristine/7e/7e5eea0bd057b4a52d65bdaac436752e4f81f355.svn-base @@ -0,0 +1,574 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/80/808d2a64fcd7dfa1e729341743474865bc8c5dd6.svn-base b/.svn/pristine/80/808d2a64fcd7dfa1e729341743474865bc8c5dd6.svn-base new file mode 100644 index 0000000..efeafee --- /dev/null +++ b/.svn/pristine/80/808d2a64fcd7dfa1e729341743474865bc8c5dd6.svn-base @@ -0,0 +1,161 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [ + { + "root": "pages/order", + "pages": [ + { + "path": "orderDetail", + "style": { + "navigationBarTitleText": "项目中心", + "navigationStyle": "custom" + } + }, + { + "path" : "navigation", + "style" : + { + "navigationBarTitleText" : "导航", + "navigationStyle": "custom" + } + }, + { + "path" : "abnormal", + "style" : + { + "navigationBarTitleText" : "上报异常", + "navigationStyle": "custom" + } + }, + { + "path" : "grabOrder", + "style" : + { + "navigationBarTitleText" : "订单详情" + } + }, + { + "path" : "incomeDetail", + "style" : + { + "navigationBarTitleText" : "收入详情", + "navigationStyle": "custom" + } + }, + { + "path" : "withdraw", + "style" : + { + "navigationBarTitleText" : "提现申请" + } + } + ] + }, + { + "root": "pages/my", + "pages": [{ + "path" : "edit", + "style" : + { + "navigationBarTitleText" : "编辑资料" + } + }, + { + "path" : "statusContro", + "style" : + { + "navigationBarTitleText" : "上线管理\r + \t\t" + } + } + + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/task", + "iconPath": "static/tab/task.png", + "selectedIconPath": "static/tab/tasked.png", + "text": "任务" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/80/80cfc8b279fefcfd09c81ca942ee146f9520b823.svn-base b/.svn/pristine/80/80cfc8b279fefcfd09c81ca942ee146f9520b823.svn-base new file mode 100644 index 0000000..e112dd7 --- /dev/null +++ b/.svn/pristine/80/80cfc8b279fefcfd09c81ca942ee146f9520b823.svn-base @@ -0,0 +1,488 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/80/80d77e0146f7970ab5d87d4dfb2670bf787b2b51.svn-base b/.svn/pristine/80/80d77e0146f7970ab5d87d4dfb2670bf787b2b51.svn-base new file mode 100644 index 0000000..227cf6e --- /dev/null +++ b/.svn/pristine/80/80d77e0146f7970ab5d87d4dfb2670bf787b2b51.svn-base @@ -0,0 +1,152 @@ +{ + "name" : "确菜农骑手端", + "appid" : "__UNI__6EE9F39", + "description" : "", + "versionName" : "1.1.3", + "versionCode" : 113, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {}, + "Push" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 30, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "push" : { + "unipush" : { + "offline" : false + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/82/82d277d17b4a5d451746a3613106e6e69658467c.svn-base b/.svn/pristine/82/82d277d17b4a5d451746a3613106e6e69658467c.svn-base new file mode 100644 index 0000000..7b7edbc --- /dev/null +++ b/.svn/pristine/82/82d277d17b4a5d451746a3613106e6e69658467c.svn-base @@ -0,0 +1,43 @@ +import { Service } from '@/Service/Service'; +/*****用户接口*****/ +class NvpUserService { + private static GetUserInfoPath: string = '/User/GetUserInfo'; + /*****用户基础信息*****/ + static GetUserInfo() { + var result = Service.Request(this.GetUserInfoPath, "GET", ""); + return result; + } + + private static UpdateUserInfoPath: string = '/User/UpdateUserInfo'; + /*****修改用户信息*****/ + static UpdateUserInfo(par: string, smsCode: string, type: number) { + var result = Service.Request(this.UpdateUserInfoPath, "POST", { par, smsCode, type }); + return result; + } + + private static GetUserAccLogPath: string = '/User/GetUserAccLog'; + /*****获取账户记录*****/ + static GetUserAccLog(code: string, accType: string, page: number) { + var result = Service.Request(this.GetUserAccLogPath, "GET", { code, accType, page }); + return result; + } + + private static GetUserCommissionInfoPath: string = '/User/GetUserCommissionInfo'; + /*****用户佣金账户*****/ + static GetUserCommissionInfo() { + var result = Service.Request(this.GetUserCommissionInfoPath, "GET", ""); + return result; + } + + private static GetUserCommissionLogPath: string = '/User/GetUserCommissionLog'; + /*****用户佣金记录*****/ + static GetUserCommissionLog(code: string, accType: string, page: number) { + var result = Service.Request(this.GetUserCommissionLogPath, "GET", { code, accType, page }); + return result; + } + +} +export { + Service, + NvpUserService +} diff --git a/.svn/pristine/84/84f68e67e7803d93b126583f75a9b3ee27efb19f.svn-base b/.svn/pristine/84/84f68e67e7803d93b126583f75a9b3ee27efb19f.svn-base new file mode 100644 index 0000000..ea3807d --- /dev/null +++ b/.svn/pristine/84/84f68e67e7803d93b126583f75a9b3ee27efb19f.svn-base @@ -0,0 +1,626 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/85/857bec072e0bcf2a4bcf3ff25b877b754ff03772.svn-base b/.svn/pristine/85/857bec072e0bcf2a4bcf3ff25b877b754ff03772.svn-base new file mode 100644 index 0000000..2f0ecdc --- /dev/null +++ b/.svn/pristine/85/857bec072e0bcf2a4bcf3ff25b877b754ff03772.svn-base @@ -0,0 +1,528 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/85/85cbc89f19d2c5990fa81b6a88e739273d8d8db8.svn-base b/.svn/pristine/85/85cbc89f19d2c5990fa81b6a88e739273d8d8db8.svn-base new file mode 100644 index 0000000..515e211 --- /dev/null +++ b/.svn/pristine/85/85cbc89f19d2c5990fa81b6a88e739273d8d8db8.svn-base @@ -0,0 +1,47 @@ + + \ No newline at end of file diff --git a/.svn/pristine/88/88e0c1ae01e18630b324903ea7e84524c0f9a87f.svn-base b/.svn/pristine/88/88e0c1ae01e18630b324903ea7e84524c0f9a87f.svn-base new file mode 100644 index 0000000..122bdc3 --- /dev/null +++ b/.svn/pristine/88/88e0c1ae01e18630b324903ea7e84524c0f9a87f.svn-base @@ -0,0 +1,16 @@ +{ + "id": "liy-select", + "name": "可搜索的下拉选择框", + "displayName": "可搜索的下拉选择框", + "version": "1.0.0", + "description": "通过搜索关键字可以进行 下拉筛选", + "keywords": [ + "uni-ui|select" + ], + "dcloudext": { + "category": [ + "前端组件", + "通用组件" + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/89/89099eb9145efaf10bdd202ceb2b935c528d1ac0.svn-base b/.svn/pristine/89/89099eb9145efaf10bdd202ceb2b935c528d1ac0.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..f85f2f73a17bad56dbf001751550399189ea000d GIT binary patch literal 478 zcmV<40U`d0P)Px$m`OxIR7gwBmfcapKoo_~#Rh!Q|#iY@^Gs(g^H;Qv#PCt~gbBwlzxPJ#pf`DL^l-B2WBEfJO>*qepo<3!qUKr8%9d zN17hJEI?dmWWP_Wl5hX8W|mA&0R z1=xlI)y7GHRMkebHpD}bHrfFKF4Mw?TBpdBUOr{50V*ghA_U{ZH0(gF0M~}M9f8@- zCV^ihtX2T^QpZQq!csOC{y)GnbXD1956w{#YzXJmlSQ4ViuP*(R=`)Cph>R>rvNBW zon%@#qvR{Y{>AQzJb|E3=!O`6d9vPJFMM#ep*CDUK>Q7au_u}7d(>Y=LssVaFJ_nj U8SA?er2qf`07*qoM6N<$f{jSX0RR91 literal 0 HcmV?d00001 diff --git a/.svn/pristine/89/89b41dedc9f303de5ba956d37ec6dbe983c3af81.svn-base b/.svn/pristine/89/89b41dedc9f303de5ba956d37ec6dbe983c3af81.svn-base new file mode 100644 index 0000000..a1473f0 --- /dev/null +++ b/.svn/pristine/89/89b41dedc9f303de5ba956d37ec6dbe983c3af81.svn-base @@ -0,0 +1,133 @@ +{ + "easycom": { + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + + { + + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "门店运营", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/task", + "style": { + "navigationBarTitleText": "任务", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/income", + "style": { + "navigationBarTitleText": "我的收入", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + }, + { + "path": "pages/index/user", + "style": { + "navigationBarTitleText": "我的", + "navigationBarBackgroundColor": "#36394D", + "navigationStyle": "custom", + "backgroundColor": "#F8F8F8" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "v派商家", + "navigationBarBackgroundColor": "#fff", + "backgroundColor": "#000" + }, + "subPackages": [ + { + "root": "pages/order", + "pages": [ + { + "path": "orderDetail", + "style": { + "navigationBarTitleText": "项目中心", + "navigationStyle": "custom" + } + }, + { + "path" : "navigation", + "style" : + { + "navigationBarTitleText" : "导航", + "navigationStyle": "custom" + } + }, + { + "path" : "abnormal", + "style" : + { + "navigationBarTitleText" : "上报异常", + "navigationStyle": "custom" + } + }, + { + "path" : "grabOrder", + "style" : + { + "navigationBarTitleText" : "订单详情" + } + }, + { + "path" : "incomeDetail", + "style" : + { + "navigationBarTitleText" : "收入详情" + } + } + ] + } + ], + + + + "tabBar": { + "color": "#000", + "selectedColor": "#000", + "backgroundColor": "#FFFFFF", + "list": [{ + "pagePath": "pages/index/index", + "iconPath": "static/tab/home.png", + "selectedIconPath": "/static/tab/homed.png", + "text": "主页" + }, + { + "pagePath": "pages/index/task", + "iconPath": "static/tab/task.png", + "selectedIconPath": "static/tab/tasked.png", + "text": "任务" + }, + { + "pagePath": "pages/index/income", + "iconPath": "static/tab/income.png", + "selectedIconPath": "static/tab/incomed.png", + "text": "收入" + }, + { + "pagePath": "pages/index/user", + "iconPath": "static/tab/user.png", + "selectedIconPath": "static/tab/usered.png", + "text": "我的" + } + ] + } +} \ No newline at end of file diff --git a/.svn/pristine/8b/8b798e3b3828de7454cbe53f8d93a2a0dce5bb0a.svn-base b/.svn/pristine/8b/8b798e3b3828de7454cbe53f8d93a2a0dce5bb0a.svn-base new file mode 100644 index 0000000..cf72c03 --- /dev/null +++ b/.svn/pristine/8b/8b798e3b3828de7454cbe53f8d93a2a0dce5bb0a.svn-base @@ -0,0 +1,281 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/8b/8bad7f57df97db3881c661d9be875918f3c85385.svn-base b/.svn/pristine/8b/8bad7f57df97db3881c661d9be875918f3c85385.svn-base new file mode 100644 index 0000000..89d69e8 --- /dev/null +++ b/.svn/pristine/8b/8bad7f57df97db3881c661d9be875918f3c85385.svn-base @@ -0,0 +1,557 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/8c/8c3cf514bd6649e778503f9c41b7fa6080911c46.svn-base b/.svn/pristine/8c/8c3cf514bd6649e778503f9c41b7fa6080911c46.svn-base new file mode 100644 index 0000000..b69dd2e --- /dev/null +++ b/.svn/pristine/8c/8c3cf514bd6649e778503f9c41b7fa6080911c46.svn-base @@ -0,0 +1,196 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/8d/8d0f3b48f2f6f6f8598ae36b7e989492130897c0.svn-base b/.svn/pristine/8d/8d0f3b48f2f6f6f8598ae36b7e989492130897c0.svn-base new file mode 100644 index 0000000..e0c5103 --- /dev/null +++ b/.svn/pristine/8d/8d0f3b48f2f6f6f8598ae36b7e989492130897c0.svn-base @@ -0,0 +1,360 @@ +import CALENDAR from './calendar.js' + +class Calendar { + constructor({ + date, + selected, + startDate, + endDate, + range + } = {}) { + // 当前日期 + this.date = this.getDate(new Date()) // 当前初入日期 + // 打点信息 + this.selected = selected || []; + // 范围开始 + this.startDate = startDate + // 范围结束 + this.endDate = endDate + this.range = range + // 多选状态 + this.cleanMultipleStatus() + // 每周日期 + this.weeks = {} + // this._getWeek(this.date.fullDate) + } + /** + * 设置日期 + * @param {Object} date + */ + setDate(date) { + this.selectDate = this.getDate(date) + this._getWeek(this.selectDate.fullDate) + } + + /** + * 清理多选状态 + */ + cleanMultipleStatus() { + this.multipleStatus = { + before: '', + after: '', + data: [] + } + } + + /** + * 重置开始日期 + */ + resetSatrtDate(startDate) { + // 范围开始 + this.startDate = startDate + + } + + /** + * 重置结束日期 + */ + resetEndDate(endDate) { + // 范围结束 + this.endDate = endDate + } + + /** + * 获取任意时间 + */ + getDate(date, AddDayCount = 0, str = 'day') { + if (!date) { + date = new Date() + } + if (typeof date !== 'object') { + date = date.replace(/-/g, '/') + } + const dd = new Date(date) + switch (str) { + case 'day': + dd.setDate(dd.getDate() + AddDayCount) // 获取AddDayCount天后的日期 + break + case 'month': + if (dd.getDate() === 31 && AddDayCount>0) { + dd.setDate(dd.getDate() + AddDayCount) + } else { + const preMonth = dd.getMonth() + dd.setMonth(preMonth + AddDayCount) // 获取AddDayCount天后的日期 + const nextMonth = dd.getMonth() + // 处理 pre 切换月份目标月份为2月没有当前日(30 31) 切换错误问题 + if(AddDayCount<0 && preMonth!==0 && nextMonth-preMonth>AddDayCount){ + dd.setMonth(nextMonth+(nextMonth-preMonth+AddDayCount)) + } + // 处理 next 切换月份目标月份为2月没有当前日(30 31) 切换错误问题 + if(AddDayCount>0 && nextMonth-preMonth>AddDayCount){ + dd.setMonth(nextMonth-(nextMonth-preMonth-AddDayCount)) + } + } + break + case 'year': + dd.setFullYear(dd.getFullYear() + AddDayCount) // 获取AddDayCount天后的日期 + break + } + const y = dd.getFullYear() + const m = dd.getMonth() + 1 < 10 ? '0' + (dd.getMonth() + 1) : dd.getMonth() + 1 // 获取当前月份的日期,不足10补0 + const d = dd.getDate() < 10 ? '0' + dd.getDate() : dd.getDate() // 获取当前几号,不足10补0 + return { + fullDate: y + '-' + m + '-' + d, + year: y, + month: m, + date: d, + day: dd.getDay() + } + } + + + /** + * 获取上月剩余天数 + */ + _getLastMonthDays(firstDay, full) { + let dateArr = [] + for (let i = firstDay; i > 0; i--) { + const beforeDate = new Date(full.year, full.month - 1, -i + 1).getDate() + dateArr.push({ + date: beforeDate, + month: full.month - 1, + lunar: this.getlunar(full.year, full.month - 1, beforeDate), + disable: true + }) + } + return dateArr + } + /** + * 获取本月天数 + */ + _currentMonthDys(dateData, full) { + let dateArr = [] + let fullDate = this.date.fullDate + for (let i = 1; i <= dateData; i++) { + let nowDate = full.year + '-' + (full.month < 10 ? + full.month : full.month) + '-' + (i < 10 ? + '0' + i : i) + // 是否今天 + let isDay = fullDate === nowDate + // 获取打点信息 + let info = this.selected && this.selected.find((item) => { + if (this.dateEqual(nowDate, item.date)) { + return item + } + }) + + // 日期禁用 + let disableBefore = true + let disableAfter = true + if (this.startDate) { + // let dateCompBefore = this.dateCompare(this.startDate, fullDate) + // disableBefore = this.dateCompare(dateCompBefore ? this.startDate : fullDate, nowDate) + disableBefore = this.dateCompare(this.startDate, nowDate) + } + + if (this.endDate) { + // let dateCompAfter = this.dateCompare(fullDate, this.endDate) + // disableAfter = this.dateCompare(nowDate, dateCompAfter ? this.endDate : fullDate) + disableAfter = this.dateCompare(nowDate, this.endDate) + } + let multiples = this.multipleStatus.data + let checked = false + let multiplesStatus = -1 + if (this.range) { + if (multiples) { + multiplesStatus = multiples.findIndex((item) => { + return this.dateEqual(item, nowDate) + }) + } + if (multiplesStatus !== -1) { + checked = true + } + } + let data = { + fullDate: nowDate, + year: full.year, + date: i, + multiple: this.range ? checked : false, + beforeMultiple: this.dateEqual(this.multipleStatus.before, nowDate), + afterMultiple: this.dateEqual(this.multipleStatus.after, nowDate), + month: full.month, + lunar: this.getlunar(full.year, full.month, i), + disable: !(disableBefore && disableAfter), + isDay + } + if (info) { + data.extraInfo = info + } + + dateArr.push(data) + } + return dateArr + } + /** + * 获取下月天数 + */ + _getNextMonthDays(surplus, full) { + let dateArr = [] + for (let i = 1; i < surplus + 1; i++) { + dateArr.push({ + date: i, + month: Number(full.month) + 1, + lunar: this.getlunar(full.year, Number(full.month) + 1, i), + disable: true + }) + } + return dateArr + } + + /** + * 获取当前日期详情 + * @param {Object} date + */ + getInfo(date) { + if (!date) { + date = new Date() + } + const dateInfo = this.canlender.find(item => item.fullDate === this.getDate(date).fullDate) + return dateInfo + } + + /** + * 比较时间大小 + */ + dateCompare(startDate, endDate) { + // 计算截止时间 + startDate = new Date(startDate.replace('-', '/').replace('-', '/')) + // 计算详细项的截止时间 + endDate = new Date(endDate.replace('-', '/').replace('-', '/')) + if (startDate <= endDate) { + return true + } else { + return false + } + } + + /** + * 比较时间是否相等 + */ + dateEqual(before, after) { + // 计算截止时间 + before = new Date(before.replace('-', '/').replace('-', '/')) + // 计算详细项的截止时间 + after = new Date(after.replace('-', '/').replace('-', '/')) + if (before.getTime() - after.getTime() === 0) { + return true + } else { + return false + } + } + + + /** + * 获取日期范围内所有日期 + * @param {Object} begin + * @param {Object} end + */ + geDateAll(begin, end) { + var arr = [] + var ab = begin.split('-') + var ae = end.split('-') + var db = new Date() + db.setFullYear(ab[0], ab[1] - 1, ab[2]) + var de = new Date() + de.setFullYear(ae[0], ae[1] - 1, ae[2]) + var unixDb = db.getTime() - 24 * 60 * 60 * 1000 + var unixDe = de.getTime() - 24 * 60 * 60 * 1000 + for (var k = unixDb; k <= unixDe;) { + k = k + 24 * 60 * 60 * 1000 + arr.push(this.getDate(new Date(parseInt(k))).fullDate) + } + return arr + } + /** + * 计算阴历日期显示 + */ + getlunar(year, month, date) { + return CALENDAR.solar2lunar(year, month, date) + } + /** + * 设置打点 + */ + setSelectInfo(data, value) { + this.selected = value + this._getWeek(data) + } + + /** + * 获取多选状态 + */ + setMultiple(fullDate) { + let { + before, + after + } = this.multipleStatus + + if (!this.range) return + if (before && after) { + this.multipleStatus.before = fullDate + this.multipleStatus.after = '' + this.multipleStatus.data = [] + } else { + if (!before) { + this.multipleStatus.before = fullDate + } else { + this.multipleStatus.after = fullDate + if (this.dateCompare(this.multipleStatus.before, this.multipleStatus.after)) { + this.multipleStatus.data = this.geDateAll(this.multipleStatus.before, this.multipleStatus.after); + } else { + this.multipleStatus.data = this.geDateAll(this.multipleStatus.after, this.multipleStatus.before); + } + } + } + this._getWeek(fullDate) + } + + /** + * 获取每周数据 + * @param {Object} dateData + */ + _getWeek(dateData) { + const { + year, + month + } = this.getDate(dateData) + let firstDay = new Date(year, month - 1, 1).getDay() + let currentDay = new Date(year, month, 0).getDate() + let dates = { + lastMonthDays: this._getLastMonthDays(firstDay, this.getDate(dateData)), // 上个月末尾几天 + currentMonthDys: this._currentMonthDys(currentDay, this.getDate(dateData)), // 本月天数 + nextMonthDays: [], // 下个月开始几天 + weeks: [] + } + let canlender = [] + const surplus = 42 - (dates.lastMonthDays.length + dates.currentMonthDys.length) + dates.nextMonthDays = this._getNextMonthDays(surplus, this.getDate(dateData)) + canlender = canlender.concat(dates.lastMonthDays, dates.currentMonthDys, dates.nextMonthDays) + let weeks = {} + // 拼接数组 上个月开始几天 + 本月天数+ 下个月开始几天 + for (let i = 0; i < canlender.length; i++) { + if (i % 7 === 0) { + weeks[parseInt(i / 7)] = new Array(7) + } + weeks[parseInt(i / 7)][i % 7] = canlender[i] + } + this.canlender = canlender + this.weeks = weeks + } + + //静态方法 + // static init(date) { + // if (!this.instance) { + // this.instance = new Calendar(date); + // } + // return this.instance; + // } +} + + +export default Calendar diff --git a/.svn/pristine/8d/8df84ae3cf98214ec22039515ac17184f220ec3d.svn-base b/.svn/pristine/8d/8df84ae3cf98214ec22039515ac17184f220ec3d.svn-base new file mode 100644 index 0000000..d1dc53c --- /dev/null +++ b/.svn/pristine/8d/8df84ae3cf98214ec22039515ac17184f220ec3d.svn-base @@ -0,0 +1,67 @@ +import {Service} from "@/Service/Service" +export class EventHandler { + //处理事件 + static Events(data: any) { + var result = JSON.parse(data.data); + // console.log('接收消息', result); + this.ChatEnent(result); + // if (result.code == 'Chat') { + // this.ChatEnent(result); + // } else if (result.code == 'System') { + // this.SystemEnent(result); + // } else if (result.code == 'User') { + // this.ChatUserEnent(result); + // } + } + + static ChatEnent(data: any) { + console.log(data,'xxx') + var eventName = `chat_${data.chanId}`; + uni.$emit(eventName, data); + } + + static ChatUserEnent(data: any) { + var eventUserName = `chatUser_${data.sendId}`; + uni.$emit('UpdatePrivateMsg', data); + uni.$emit(eventUserName, data); + this.plusPush(); + } + + static plusPush() { + //#ifdef APP-PLUS + if(!Service.getIsHede()){ + return + } + + let content = '您有一条新的消息~'; + let options = { + cover: false, + when: new Date(), + title: '通知消息' + }; + let body = { + id: 'id', + key: 'key' + }; + let payload = JSON.stringify(body); + plus.push.createMessage(content, payload, options); + //#endif + } + + static SystemEnent(data: any) { + let obj = JSON.parse(data.data); + if (obj.code == 'Like' || obj.code == 'Aite' || obj.code == 'Comment' || obj.code == 'Notice') { + uni.$emit('MegEvent', obj); + } else if (obj.code == 'Off') { + uni.$emit('ImComOff', 'user'); + } else if (obj.code == 'UpdateUserInfo') { + uni.$emit('UpdateUserInfo'); + } else if (obj.code == 'Friend') { + uni.$emit('Friend'); + } + } + + static ConnectBus() { + uni.$emit('UpdateChat'); + } +} diff --git a/.svn/pristine/91/912eb040a561d5f770674b7afd917a709efa3243.svn-base b/.svn/pristine/91/912eb040a561d5f770674b7afd917a709efa3243.svn-base new file mode 100644 index 0000000..16ed121 --- /dev/null +++ b/.svn/pristine/91/912eb040a561d5f770674b7afd917a709efa3243.svn-base @@ -0,0 +1,1226 @@ +@keyframes cuIcon-spin { + 0% { + -webkit-transform: rotate(0); + transform: rotate(0); + } + + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} + +.cuIconfont-spin { + -webkit-animation: cuIcon-spin 2s infinite linear; + animation: cuIcon-spin 2s infinite linear; + display: inline-block; +} + +.cuIconfont-pulse { + -webkit-animation: cuIcon-spin 1s infinite steps(8); + animation: cuIcon-spin 1s infinite steps(8); + display: inline-block; +} + +[class*="cuIcon-"] { + font-family: "cuIcon"; + font-size: inherit; + font-style: normal; +} + +@font-face { + font-family: "cuIcon"; + src: url('//at.alicdn.com/t/font_533566_yfq2d9wdij.eot?t=1545239985831'); + /* IE9*/ + src: url('//at.alicdn.com/t/font_533566_yfq2d9wdij.eot?t=1545239985831#iefix') format('embedded-opentype'), + /* IE6-IE8 */ + url('data:application/x-font-woff;charset=utf-8;base64,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') format('woff'), + url('//at.alicdn.com/t/font_533566_yfq2d9wdij.ttf?t=1545239985831') format('truetype'), + /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/ + url('//at.alicdn.com/t/font_533566_yfq2d9wdij.svg?t=1545239985831#cuIconfont') format('svg'); + /* iOS 4.1- */ +} + +.cuIcon-appreciate:before { + content: "\e644"; +} + +.cuIcon-check:before { + content: "\e645"; +} + +.cuIcon-close:before { + content: "\e646"; +} + +.cuIcon-edit:before { + content: "\e649"; +} + +.cuIcon-emoji:before { + content: "\e64a"; +} + +.cuIcon-favorfill:before { + content: "\e64b"; +} + +.cuIcon-favor:before { + content: "\e64c"; +} + +.cuIcon-loading:before { + content: "\e64f"; +} + +.cuIcon-locationfill:before { + content: "\e650"; +} + +.cuIcon-location:before { + content: "\e651"; +} + +.cuIcon-phone:before { + content: "\e652"; +} + +.cuIcon-roundcheckfill:before { + content: "\e656"; +} + +.cuIcon-roundcheck:before { + content: "\e657"; +} + +.cuIcon-roundclosefill:before { + content: "\e658"; +} + +.cuIcon-roundclose:before { + content: "\e659"; +} + +.cuIcon-roundrightfill:before { + content: "\e65a"; +} + +.cuIcon-roundright:before { + content: "\e65b"; +} + +.cuIcon-search:before { + content: "\e65c"; +} + +.cuIcon-taxi:before { + content: "\e65d"; +} + +.cuIcon-timefill:before { + content: "\e65e"; +} + +.cuIcon-time:before { + content: "\e65f"; +} + +.cuIcon-unfold:before { + content: "\e661"; +} + +.cuIcon-warnfill:before { + content: "\e662"; +} + +.cuIcon-warn:before { + content: "\e663"; +} + +.cuIcon-camerafill:before { + content: "\e664"; +} + +.cuIcon-camera:before { + content: "\e665"; +} + +.cuIcon-commentfill:before { + content: "\e666"; +} + +.cuIcon-comment:before { + content: "\e667"; +} + +.cuIcon-likefill:before { + content: "\e668"; +} + +.cuIcon-like:before { + content: "\e669"; +} + +.cuIcon-notificationfill:before { + content: "\e66a"; +} + +.cuIcon-notification:before { + content: "\e66b"; +} + +.cuIcon-order:before { + content: "\e66c"; +} + +.cuIcon-samefill:before { + content: "\e66d"; +} + +.cuIcon-same:before { + content: "\e66e"; +} + +.cuIcon-deliver:before { + content: "\e671"; +} + +.cuIcon-evaluate:before { + content: "\e672"; +} + +.cuIcon-pay:before { + content: "\e673"; +} + +.cuIcon-send:before { + content: "\e675"; +} + +.cuIcon-shop:before { + content: "\e676"; +} + +.cuIcon-ticket:before { + content: "\e677"; +} + +.cuIcon-back:before { + content: "\e679"; +} + +.cuIcon-cascades:before { + content: "\e67c"; +} + +.cuIcon-discover:before { + content: "\e67e"; +} + +.cuIcon-list:before { + content: "\e682"; +} + +.cuIcon-more:before { + content: "\e684"; +} + +.cuIcon-scan:before { + content: "\e689"; +} + +.cuIcon-settings:before { + content: "\e68a"; +} + +.cuIcon-questionfill:before { + content: "\e690"; +} + +.cuIcon-question:before { + content: "\e691"; +} + +.cuIcon-shopfill:before { + content: "\e697"; +} + +.cuIcon-form:before { + content: "\e699"; +} + +.cuIcon-pic:before { + content: "\e69b"; +} + +.cuIcon-filter:before { + content: "\e69c"; +} + +.cuIcon-footprint:before { + content: "\e69d"; +} + +.cuIcon-top:before { + content: "\e69e"; +} + +.cuIcon-pulldown:before { + content: "\e69f"; +} + +.cuIcon-pullup:before { + content: "\e6a0"; +} + +.cuIcon-right:before { + content: "\e6a3"; +} + +.cuIcon-refresh:before { + content: "\e6a4"; +} + +.cuIcon-moreandroid:before { + content: "\e6a5"; +} + +.cuIcon-deletefill:before { + content: "\e6a6"; +} + +.cuIcon-refund:before { + content: "\e6ac"; +} + +.cuIcon-cart:before { + content: "\e6af"; +} + +.cuIcon-qrcode:before { + content: "\e6b0"; +} + +.cuIcon-remind:before { + content: "\e6b2"; +} + +.cuIcon-delete:before { + content: "\e6b4"; +} + +.cuIcon-profile:before { + content: "\e6b7"; +} + +.cuIcon-home:before { + content: "\e6b8"; +} + +.cuIcon-cartfill:before { + content: "\e6b9"; +} + +.cuIcon-discoverfill:before { + content: "\e6ba"; +} + +.cuIcon-homefill:before { + content: "\e6bb"; +} + +.cuIcon-message:before { + content: "\e6bc"; +} + +.cuIcon-addressbook:before { + content: "\e6bd"; +} + +.cuIcon-link:before { + content: "\e6bf"; +} + +.cuIcon-lock:before { + content: "\e6c0"; +} + +.cuIcon-unlock:before { + content: "\e6c2"; +} + +.cuIcon-vip:before { + content: "\e6c3"; +} + +.cuIcon-weibo:before { + content: "\e6c4"; +} + +.cuIcon-activity:before { + content: "\e6c5"; +} + +.cuIcon-friendaddfill:before { + content: "\e6c9"; +} + +.cuIcon-friendadd:before { + content: "\e6ca"; +} + +.cuIcon-friendfamous:before { + content: "\e6cb"; +} + +.cuIcon-friend:before { + content: "\e6cc"; +} + +.cuIcon-goods:before { + content: "\e6cd"; +} + +.cuIcon-selection:before { + content: "\e6ce"; +} + +.cuIcon-explore:before { + content: "\e6d2"; +} + +.cuIcon-present:before { + content: "\e6d3"; +} + +.cuIcon-squarecheckfill:before { + content: "\e6d4"; +} + +.cuIcon-square:before { + content: "\e6d5"; +} + +.cuIcon-squarecheck:before { + content: "\e6d6"; +} + +.cuIcon-round:before { + content: "\e6d7"; +} + +.cuIcon-roundaddfill:before { + content: "\e6d8"; +} + +.cuIcon-roundadd:before { + content: "\e6d9"; +} + +.cuIcon-add:before { + content: "\e6da"; +} + +.cuIcon-notificationforbidfill:before { + content: "\e6db"; +} + +.cuIcon-explorefill:before { + content: "\e6dd"; +} + +.cuIcon-fold:before { + content: "\e6de"; +} + +.cuIcon-game:before { + content: "\e6df"; +} + +.cuIcon-redpacket:before { + content: "\e6e0"; +} + +.cuIcon-selectionfill:before { + content: "\e6e1"; +} + +.cuIcon-similar:before { + content: "\e6e2"; +} + +.cuIcon-appreciatefill:before { + content: "\e6e3"; +} + +.cuIcon-infofill:before { + content: "\e6e4"; +} + +.cuIcon-info:before { + content: "\e6e5"; +} + +.cuIcon-forwardfill:before { + content: "\e6ea"; +} + +.cuIcon-forward:before { + content: "\e6eb"; +} + +.cuIcon-rechargefill:before { + content: "\e6ec"; +} + +.cuIcon-recharge:before { + content: "\e6ed"; +} + +.cuIcon-vipcard:before { + content: "\e6ee"; +} + +.cuIcon-voice:before { + content: "\e6ef"; +} + +.cuIcon-voicefill:before { + content: "\e6f0"; +} + +.cuIcon-friendfavor:before { + content: "\e6f1"; +} + +.cuIcon-wifi:before { + content: "\e6f2"; +} + +.cuIcon-share:before { + content: "\e6f3"; +} + +.cuIcon-wefill:before { + content: "\e6f4"; +} + +.cuIcon-we:before { + content: "\e6f5"; +} + +.cuIcon-lightauto:before { + content: "\e6f6"; +} + +.cuIcon-lightforbid:before { + content: "\e6f7"; +} + +.cuIcon-lightfill:before { + content: "\e6f8"; +} + +.cuIcon-camerarotate:before { + content: "\e6f9"; +} + +.cuIcon-light:before { + content: "\e6fa"; +} + +.cuIcon-barcode:before { + content: "\e6fb"; +} + +.cuIcon-flashlightclose:before { + content: "\e6fc"; +} + +.cuIcon-flashlightopen:before { + content: "\e6fd"; +} + +.cuIcon-searchlist:before { + content: "\e6fe"; +} + +.cuIcon-service:before { + content: "\e6ff"; +} + +.cuIcon-sort:before { + content: "\e700"; +} + +.cuIcon-down:before { + content: "\e703"; +} + +.cuIcon-mobile:before { + content: "\e704"; +} + +.cuIcon-mobilefill:before { + content: "\e705"; +} + +.cuIcon-copy:before { + content: "\e706"; +} + +.cuIcon-countdownfill:before { + content: "\e707"; +} + +.cuIcon-countdown:before { + content: "\e708"; +} + +.cuIcon-noticefill:before { + content: "\e709"; +} + +.cuIcon-notice:before { + content: "\e70a"; +} + +.cuIcon-upstagefill:before { + content: "\e70e"; +} + +.cuIcon-upstage:before { + content: "\e70f"; +} + +.cuIcon-babyfill:before { + content: "\e710"; +} + +.cuIcon-baby:before { + content: "\e711"; +} + +.cuIcon-brandfill:before { + content: "\e712"; +} + +.cuIcon-brand:before { + content: "\e713"; +} + +.cuIcon-choicenessfill:before { + content: "\e714"; +} + +.cuIcon-choiceness:before { + content: "\e715"; +} + +.cuIcon-clothesfill:before { + content: "\e716"; +} + +.cuIcon-clothes:before { + content: "\e717"; +} + +.cuIcon-creativefill:before { + content: "\e718"; +} + +.cuIcon-creative:before { + content: "\e719"; +} + +.cuIcon-female:before { + content: "\e71a"; +} + +.cuIcon-keyboard:before { + content: "\e71b"; +} + +.cuIcon-male:before { + content: "\e71c"; +} + +.cuIcon-newfill:before { + content: "\e71d"; +} + +.cuIcon-new:before { + content: "\e71e"; +} + +.cuIcon-pullleft:before { + content: "\e71f"; +} + +.cuIcon-pullright:before { + content: "\e720"; +} + +.cuIcon-rankfill:before { + content: "\e721"; +} + +.cuIcon-rank:before { + content: "\e722"; +} + +.cuIcon-bad:before { + content: "\e723"; +} + +.cuIcon-cameraadd:before { + content: "\e724"; +} + +.cuIcon-focus:before { + content: "\e725"; +} + +.cuIcon-friendfill:before { + content: "\e726"; +} + +.cuIcon-cameraaddfill:before { + content: "\e727"; +} + +.cuIcon-apps:before { + content: "\e729"; +} + +.cuIcon-paintfill:before { + content: "\e72a"; +} + +.cuIcon-paint:before { + content: "\e72b"; +} + +.cuIcon-picfill:before { + content: "\e72c"; +} + +.cuIcon-refresharrow:before { + content: "\e72d"; +} + +.cuIcon-colorlens:before { + content: "\e6e6"; +} + +.cuIcon-markfill:before { + content: "\e730"; +} + +.cuIcon-mark:before { + content: "\e731"; +} + +.cuIcon-presentfill:before { + content: "\e732"; +} + +.cuIcon-repeal:before { + content: "\e733"; +} + +.cuIcon-album:before { + content: "\e734"; +} + +.cuIcon-peoplefill:before { + content: "\e735"; +} + +.cuIcon-people:before { + content: "\e736"; +} + +.cuIcon-servicefill:before { + content: "\e737"; +} + +.cuIcon-repair:before { + content: "\e738"; +} + +.cuIcon-file:before { + content: "\e739"; +} + +.cuIcon-repairfill:before { + content: "\e73a"; +} + +.cuIcon-taoxiaopu:before { + content: "\e73b"; +} + +.cuIcon-weixin:before { + content: "\e612"; +} + +.cuIcon-attentionfill:before { + content: "\e73c"; +} + +.cuIcon-attention:before { + content: "\e73d"; +} + +.cuIcon-commandfill:before { + content: "\e73e"; +} + +.cuIcon-command:before { + content: "\e73f"; +} + +.cuIcon-communityfill:before { + content: "\e740"; +} + +.cuIcon-community:before { + content: "\e741"; +} + +.cuIcon-read:before { + content: "\e742"; +} + +.cuIcon-calendar:before { + content: "\e74a"; +} + +.cuIcon-cut:before { + content: "\e74b"; +} + +.cuIcon-magic:before { + content: "\e74c"; +} + +.cuIcon-backwardfill:before { + content: "\e74d"; +} + +.cuIcon-playfill:before { + content: "\e74f"; +} + +.cuIcon-stop:before { + content: "\e750"; +} + +.cuIcon-tagfill:before { + content: "\e751"; +} + +.cuIcon-tag:before { + content: "\e752"; +} + +.cuIcon-group:before { + content: "\e753"; +} + +.cuIcon-all:before { + content: "\e755"; +} + +.cuIcon-backdelete:before { + content: "\e756"; +} + +.cuIcon-hotfill:before { + content: "\e757"; +} + +.cuIcon-hot:before { + content: "\e758"; +} + +.cuIcon-post:before { + content: "\e759"; +} + +.cuIcon-radiobox:before { + content: "\e75b"; +} + +.cuIcon-rounddown:before { + content: "\e75c"; +} + +.cuIcon-upload:before { + content: "\e75d"; +} + +.cuIcon-writefill:before { + content: "\e760"; +} + +.cuIcon-write:before { + content: "\e761"; +} + +.cuIcon-radioboxfill:before { + content: "\e763"; +} + +.cuIcon-punch:before { + content: "\e764"; +} + +.cuIcon-shake:before { + content: "\e765"; +} + +.cuIcon-move:before { + content: "\e768"; +} + +.cuIcon-safe:before { + content: "\e769"; +} + +.cuIcon-activityfill:before { + content: "\e775"; +} + +.cuIcon-crownfill:before { + content: "\e776"; +} + +.cuIcon-crown:before { + content: "\e777"; +} + +.cuIcon-goodsfill:before { + content: "\e778"; +} + +.cuIcon-messagefill:before { + content: "\e779"; +} + +.cuIcon-profilefill:before { + content: "\e77a"; +} + +.cuIcon-sound:before { + content: "\e77b"; +} + +.cuIcon-sponsorfill:before { + content: "\e77c"; +} + +.cuIcon-sponsor:before { + content: "\e77d"; +} + +.cuIcon-upblock:before { + content: "\e77e"; +} + +.cuIcon-weblock:before { + content: "\e77f"; +} + +.cuIcon-weunblock:before { + content: "\e780"; +} + +.cuIcon-my:before { + content: "\e78b"; +} + +.cuIcon-myfill:before { + content: "\e78c"; +} + +.cuIcon-emojifill:before { + content: "\e78d"; +} + +.cuIcon-emojiflashfill:before { + content: "\e78e"; +} + +.cuIcon-flashbuyfill:before { + content: "\e78f"; +} + +.cuIcon-text:before { + content: "\e791"; +} + +.cuIcon-goodsfavor:before { + content: "\e794"; +} + +.cuIcon-musicfill:before { + content: "\e795"; +} + +.cuIcon-musicforbidfill:before { + content: "\e796"; +} + +.cuIcon-card:before { + content: "\e624"; +} + +.cuIcon-triangledownfill:before { + content: "\e79b"; +} + +.cuIcon-triangleupfill:before { + content: "\e79c"; +} + +.cuIcon-roundleftfill-copy:before { + content: "\e79e"; +} + +.cuIcon-font:before { + content: "\e76a"; +} + +.cuIcon-title:before { + content: "\e82f"; +} + +.cuIcon-recordfill:before { + content: "\e7a4"; +} + +.cuIcon-record:before { + content: "\e7a6"; +} + +.cuIcon-cardboardfill:before { + content: "\e7a9"; +} + +.cuIcon-cardboard:before { + content: "\e7aa"; +} + +.cuIcon-formfill:before { + content: "\e7ab"; +} + +.cuIcon-coin:before { + content: "\e7ac"; +} + +.cuIcon-cardboardforbid:before { + content: "\e7af"; +} + +.cuIcon-circlefill:before { + content: "\e7b0"; +} + +.cuIcon-circle:before { + content: "\e7b1"; +} + +.cuIcon-attentionforbid:before { + content: "\e7b2"; +} + +.cuIcon-attentionforbidfill:before { + content: "\e7b3"; +} + +.cuIcon-attentionfavorfill:before { + content: "\e7b4"; +} + +.cuIcon-attentionfavor:before { + content: "\e7b5"; +} + +.cuIcon-titles:before { + content: "\e701"; +} + +.cuIcon-icloading:before { + content: "\e67a"; +} + +.cuIcon-full:before { + content: "\e7bc"; +} + +.cuIcon-mail:before { + content: "\e7bd"; +} + +.cuIcon-peoplelist:before { + content: "\e7be"; +} + +.cuIcon-goodsnewfill:before { + content: "\e7bf"; +} + +.cuIcon-goodsnew:before { + content: "\e7c0"; +} + +.cuIcon-medalfill:before { + content: "\e7c1"; +} + +.cuIcon-medal:before { + content: "\e7c2"; +} + +.cuIcon-newsfill:before { + content: "\e7c3"; +} + +.cuIcon-newshotfill:before { + content: "\e7c4"; +} + +.cuIcon-newshot:before { + content: "\e7c5"; +} + +.cuIcon-news:before { + content: "\e7c6"; +} + +.cuIcon-videofill:before { + content: "\e7c7"; +} + +.cuIcon-video:before { + content: "\e7c8"; +} + +.cuIcon-exit:before { + content: "\e7cb"; +} + +.cuIcon-skinfill:before { + content: "\e7cc"; +} + +.cuIcon-skin:before { + content: "\e7cd"; +} + +.cuIcon-moneybagfill:before { + content: "\e7ce"; +} + +.cuIcon-usefullfill:before { + content: "\e7cf"; +} + +.cuIcon-usefull:before { + content: "\e7d0"; +} + +.cuIcon-moneybag:before { + content: "\e7d1"; +} + +.cuIcon-redpacket_fill:before { + content: "\e7d3"; +} + +.cuIcon-subscription:before { + content: "\e7d4"; +} + +.cuIcon-loading1:before { + content: "\e633"; +} + +.cuIcon-github:before { + content: "\e692"; +} + +.cuIcon-global:before { + content: "\e7eb"; +} + +.cuIcon-settingsfill:before { + content: "\e6ab"; +} + +.cuIcon-back_android:before { + content: "\e7ed"; +} + +.cuIcon-expressman:before { + content: "\e7ef"; +} + +.cuIcon-evaluate_fill:before { + content: "\e7f0"; +} + +.cuIcon-group_fill:before { + content: "\e7f5"; +} + +.cuIcon-play_forward_fill:before { + content: "\e7f6"; +} + +.cuIcon-deliver_fill:before { + content: "\e7f7"; +} + +.cuIcon-notice_forbid_fill:before { + content: "\e7f8"; +} + +.cuIcon-fork:before { + content: "\e60c"; +} + +.cuIcon-pick:before { + content: "\e7fa"; +} + +.cuIcon-wenzi:before { + content: "\e6a7"; +} + +.cuIcon-ellipse:before { + content: "\e600"; +} + +.cuIcon-qr_code:before { + content: "\e61b"; +} + +.cuIcon-dianhua:before { + content: "\e64d"; +} + +.cuIcon-cuIcon:before { + content: "\e602"; +} + +.cuIcon-loading2:before { + content: "\e7f1"; +} + +.cuIcon-btn:before { + content: "\e601"; +} diff --git a/.svn/pristine/91/9144e2ee9d851a8eae995fa08c7b76c53d9d0f1c.svn-base b/.svn/pristine/91/9144e2ee9d851a8eae995fa08c7b76c53d9d0f1c.svn-base new file mode 100644 index 0000000..b45991b --- /dev/null +++ b/.svn/pristine/91/9144e2ee9d851a8eae995fa08c7b76c53d9d0f1c.svn-base @@ -0,0 +1,354 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/92/9259f6851889f2edf5b84781cc47669f79ad2d71.svn-base b/.svn/pristine/92/9259f6851889f2edf5b84781cc47669f79ad2d71.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..088b30b60c92d87dc5304b2a07e2bc353d14b9c5 GIT binary patch literal 195 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`Gj6`n4RAr*{orXJ*NaNuAOpB+$N zwqWValYz5Te{A8-Nnky9zEb8%`RN&ybBXMUNm{nFV zUi_<9$@aatE9Fx0cb+}_zC=s5tl$b%HR-g!jr>mdKI;Vst0QDtATL1t6 literal 0 HcmV?d00001 diff --git a/.svn/pristine/92/926d6e6d6cab08e563e35db54e6aceb8d1d20959.svn-base b/.svn/pristine/92/926d6e6d6cab08e563e35db54e6aceb8d1d20959.svn-base new file mode 100644 index 0000000..7ce6e50 --- /dev/null +++ b/.svn/pristine/92/926d6e6d6cab08e563e35db54e6aceb8d1d20959.svn-base @@ -0,0 +1,21 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +.DS_Store +dist +*.local + +# Editor directories and files +.idea +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? \ No newline at end of file diff --git a/.svn/pristine/92/9271663e3a74aa58271989abf24565430f29c0fe.svn-base b/.svn/pristine/92/9271663e3a74aa58271989abf24565430f29c0fe.svn-base new file mode 100644 index 0000000..2a2a97f --- /dev/null +++ b/.svn/pristine/92/9271663e3a74aa58271989abf24565430f29c0fe.svn-base @@ -0,0 +1,328 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/92/929ffbc90c58c9eefaa090632414c791d4c9b203.svn-base b/.svn/pristine/92/929ffbc90c58c9eefaa090632414c791d4c9b203.svn-base new file mode 100644 index 0000000..e2163b0 --- /dev/null +++ b/.svn/pristine/92/929ffbc90c58c9eefaa090632414c791d4c9b203.svn-base @@ -0,0 +1,218 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/94/942fb589ea5ac8a560952943f3720f734b12d38c.svn-base b/.svn/pristine/94/942fb589ea5ac8a560952943f3720f734b12d38c.svn-base new file mode 100644 index 0000000..7177736 --- /dev/null +++ b/.svn/pristine/94/942fb589ea5ac8a560952943f3720f734b12d38c.svn-base @@ -0,0 +1,562 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/94/94da867c75c228317b760ba4bfba9b7ab9604624.svn-base b/.svn/pristine/94/94da867c75c228317b760ba4bfba9b7ab9604624.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..18aa955dcb848e236cd11bbb5d4ef362a38426e6 GIT binary patch literal 569 zcmV-90>=G`P)oj4fJe5cCs1p3%8mA$YNOrlG!En5K|B81jN(k^ z+mi9u6Ko?Q$@Q~R_+5}+31lb%jx11tprZ3;)IGr+TMN_}nQmydfN;BvV-X zF3-(Nb7S_#X@8e^PVA9)3X%8pg|QZ3WEnSnw6Hb$8LadS%<+myCh0&4kH=?&-o<$` zx*R3*Kbfqx-#9N5h2aEV9L6oKRtYf5ideKD_9R3&3`^lPPi60etfFs5@s-vHD+|<% zSVzw9IV1Vt14dY8jj|R~PChsR{ZN?D)F)?yQy(y;b#j$&c7hIlQQ-1RF|WGeUvXO- z3%Gg&cw~F}0=zYu-Y~u$m-D*`@jAgl^qOx5HPCpykLWgrm%xwZaz;kQBG2)O-y6eA zU^+?`Y!lilb}!ERqYZX0cnR?T_m2M~z(=vrQ1)MSD(Zc(-}=oVfa7#0__@pza3M57 z)`+^NJ_t)erd(zxcQtVWS}cozJwz7T6@386+``mv+l~_eZIXVTjnlr~2%+~ueUc`6 zb;*iivvVsC{Ifp61M{xwegOag|NkQqSit}Q00v1!K~w_(Og~{jLajA000000NkvXX Hu0mjfz$ySH literal 0 HcmV?d00001 diff --git a/.svn/pristine/95/95419527fd5e71538983ac6a5b247b28b99f45bb.svn-base b/.svn/pristine/95/95419527fd5e71538983ac6a5b247b28b99f45bb.svn-base new file mode 100644 index 0000000..233dccb --- /dev/null +++ b/.svn/pristine/95/95419527fd5e71538983ac6a5b247b28b99f45bb.svn-base @@ -0,0 +1,450 @@ + + + + + \ No newline at end of file diff --git a/.svn/pristine/95/956b4c8b35d2be034e49d277d96f090b9e9e1275.svn-base b/.svn/pristine/95/956b4c8b35d2be034e49d277d96f090b9e9e1275.svn-base new file mode 100644 index 0000000..0beebfb --- /dev/null +++ b/.svn/pristine/95/956b4c8b35d2be034e49d277d96f090b9e9e1275.svn-base @@ -0,0 +1,567 @@ + + + + + diff --git a/.svn/pristine/95/958e8c25cf97442e5660c2ab6ddce0573def3545.svn-base b/.svn/pristine/95/958e8c25cf97442e5660c2ab6ddce0573def3545.svn-base new file mode 100644 index 0000000..466f54a --- /dev/null +++ b/.svn/pristine/95/958e8c25cf97442e5660c2ab6ddce0573def3545.svn-base @@ -0,0 +1,657 @@ + + + + + + + + \ No newline at end of file diff --git a/.svn/pristine/97/9717027e6ef7334759147ff8087706c31d4196e2.svn-base b/.svn/pristine/97/9717027e6ef7334759147ff8087706c31d4196e2.svn-base new file mode 100644 index 0000000..179fe2d --- /dev/null +++ b/.svn/pristine/97/9717027e6ef7334759147ff8087706c31d4196e2.svn-base @@ -0,0 +1,23 @@ +{ + // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/ + // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数 + "version" : "0.0", + "configurations" : [ + { + "app-plus" : { + "launchtype" : "local" + }, + "default" : { + "launchtype" : "local" + }, + "mp-weixin" : { + "launchtype" : "local" + }, + "type" : "uniCloud" + }, + { + "playground" : "custom", + "type" : "uni-app:app-android" + } + ] +} diff --git a/.svn/pristine/97/97414a4c9c72b50234d0b11195ac034cf5078516.svn-base b/.svn/pristine/97/97414a4c9c72b50234d0b11195ac034cf5078516.svn-base new file mode 100644 index 0000000..b318a23 --- /dev/null +++ b/.svn/pristine/97/97414a4c9c72b50234d0b11195ac034cf5078516.svn-base @@ -0,0 +1,146 @@ +{ + "name" : "骑手端", + "appid" : "__UNI__06C2D6A", + "description" : "", + "versionName" : "1.0.4", + "versionCode" : 104, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "compatible" : { + "ignoreVersion" : true //true表示忽略版本检查提示框,HBuilderX1.9.0及以上版本支持 + }, + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Barcode" : {}, + "Maps" : {}, + "Geolocation" : {}, + "Camera" : {}, + "Contacts" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "minSdkVersion" : 25, + "targetSdkVersion" : 25, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] + }, + /* ios打包配置 */ + "ios" : { + "idfa" : false, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "ad" : {}, + "maps" : { + "amap" : { + "name" : "amapZAvZjTHj", + "appkey_ios" : "3caf9e6f01b0085be1e75e0d0e281fe7", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + }, + "geolocation" : { + "amap" : { + "name" : "amapZAvZjTHj", + "__platform__" : [ "android" ], + "appkey_ios" : "", + "appkey_android" : "3caf9e6f01b0085be1e75e0d0e281fe7" + } + } + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "wx6ef5a6a74620a3e8", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "sdkConfigs" : { + "maps" : { + "qqmap" : { + "key" : "7DIBZ-K4HCJ-ZR2FE-FOOOP-SALFT-RLFYW" + } + } + } + } +} diff --git a/.svn/pristine/97/9764106c04de24f7943119fbbd28c023cb0f43da.svn-base b/.svn/pristine/97/9764106c04de24f7943119fbbd28c023cb0f43da.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..4c26cca97db16364d66466f7a30cc7b38fc52ba4 GIT binary patch literal 5737 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 literal 0 HcmV?d00001 diff --git a/.svn/pristine/99/99647caf69f48477d66f8b63c484a477f5428b2a.svn-base b/.svn/pristine/99/99647caf69f48477d66f8b63c484a477f5428b2a.svn-base new file mode 100644 index 0000000..c5baefe --- /dev/null +++ b/.svn/pristine/99/99647caf69f48477d66f8b63c484a477f5428b2a.svn-base @@ -0,0 +1,117 @@ + + \ No newline at end of file diff --git a/.svn/pristine/99/997992546c3917feff6c5208b46dfa66b913833d.svn-base b/.svn/pristine/99/997992546c3917feff6c5208b46dfa66b913833d.svn-base new file mode 100644 index 0000000..46e36fe --- /dev/null +++ b/.svn/pristine/99/997992546c3917feff6c5208b46dfa66b913833d.svn-base @@ -0,0 +1,7 @@ +import { defineConfig } from "vite"; +import uni from "@dcloudio/vite-plugin-uni"; + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [uni()], +}); diff --git a/.svn/pristine/9a/9aafe50aadf727d1cd8da3de9d6d6d7de3ce4c5a.svn-base b/.svn/pristine/9a/9aafe50aadf727d1cd8da3de9d6d6d7de3ce4c5a.svn-base new file mode 100644 index 0000000..dc079a7 --- /dev/null +++ b/.svn/pristine/9a/9aafe50aadf727d1cd8da3de9d6d6d7de3ce4c5a.svn-base @@ -0,0 +1,86 @@ +import { EventHandler } from '@/Service/Comm/EventHandler'; +import { Service, ImConnectService } from '@/Service/Im/ImConnectService'; +export class WebSocket { + private socketTask: any; + private heartbeat: number = 60000; + private heartbeatInterval: any; + public ConnectSocketInit() { + ImConnectService.GetConnect().then((res: any) => { + Service.SetUserClientId(res.data.websocketId); + this.socketTask = uni.connectSocket({ + url: res.data.server, + header: { + 'content-type': 'application/json' + }, + success: () => { + // console.log('============正准备建立websocket中================'); + } + }); + this.socketTask.onOpen((res: any) => { + console.log('==============WebSocket连接正常============='); + this.start(); + EventHandler.ConnectBus(); + // 只有连接正常打开中 ,才能正常收到消息 + this.socketTask.onMessage((data: any) => { + console.log('接收到消息') + EventHandler.Events(data); + }); + + }); + this.socketTask.onClose((e: any) => { + console.log('========已经被关闭了====================', e); + + // 加了flag判断是否为手动(用户主动关闭) + // e && e.reason == 'user' ? '' : this.reconnect(); + }); + }); + } + + private start() { + var data = { + code: 'Heart', + method: 'Heart' + }; + this.heartbeatInterval = setInterval(() => { + console.log('======start====开启心跳检测====', data); + this.send(JSON.stringify(data)); + }, this.heartbeat); + } + + //重新连接 + public reconnect() { + //停止发送心跳 + clearInterval(this.heartbeatInterval); + //如果不是人为关闭的话,进行重连 + uni.$emit('ImCom'); + } + // 关闭 WebSocket 连接 + public CloseSocket(reason: string) { + if(!this.socketTask.close){ + return + } + this.socketTask.close({ + code: 1000, + reason: reason, + success() { + clearInterval(this.heartbeatInterval); + console.log('===============关闭 WebSocket 成功==================='); + }, + fail() { + console.log('===================关闭 WebSocket 失败====================='); + } + }); + } + + //发送消息 + public send(value: any) { + // 连接正常打开时 ,才能正常成功发送消息 + this.socketTask.send({ + data: value, + success() {}, + fail() { + this.reconnect(); + } + }); + } +} diff --git a/.svn/pristine/9b/9b753153c0c3caffaf6bbb1cc52f85ce6514e108.svn-base b/.svn/pristine/9b/9b753153c0c3caffaf6bbb1cc52f85ce6514e108.svn-base new file mode 100644 index 0000000000000000000000000000000000000000..48ff045b527ed0c02385f2f3fb3b0227f605be97 GIT binary patch literal 40266 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